Data science

15 astuces pour Google Colab

Vous le connaissez surement si vous utilisez des Notebook Python ou R, cet outil proposé par Google, et qui vous permet d’exécuter...

Écrit par Adib Habbou · 4 min lecture >
15 astuces pour Google Colab
15 astuces pour Google Colab

Vous le connaissez surement si vous utilisez des Notebook Python ou R, cet outil proposé par Google, et qui vous permet d’exécuter vos programmes sur des machines virtuelles tout en stockant vos Notebook sur Google Drive. Si comme nous vous utilisez Google colab souvent, alors les astuces figurant dans cet article vont surement vous faciliter la vie !

Et même si vous n’utilisez pas encore Colab, lisez l’article pour voir tout ce qu’on peut faire avec. Vous serez convaincu au bout de la 3ème astuce ahah !

1. Importer des fichiers sur google colab

Pour importer des fichiers présents sur votre ordinateur, au lieu d’utiliser l’interface graphique et le drag and drop qui peut s’avérer très lent si le nombre de fichiers à importer est grand, vous pouvez utiliser le code suivant directement dans le Notebook :

from google.colab import files
files.upload('path')

2. Télécharger des fichiers

Pour télécharger des fichiers depuis votre notebook sur votre ordinateur directement en local, sans passer encore une fois par du drag and drop une seule solution :

from google.colab import files
files.download('path')

3. Rester connecté à google colab même inactif

Vous est-t-il déjà arrivé de lancer l’exécution d’un programme sur Google Colab puis d’aller prendre une pause et de revenir ensuite, et trouver que l’exécution s’est arrêtée à cause de votre inactivité ? (C’est la pire chose qui peut arriver 😆)

Si oui, alors j’ai la solution pour vous !

15 astuces pour Google Colab

Appuyer sur ctrl + shift + i, puis allez sur la console de votre navigateur et copier coller le code JavaScript suivant. Il va simuler un clic sur le bouton de connexion chaque minute pour vous garder connecté :

function ConnectButton()
{
   console.log("Running...");
   document.querySelector("colab-connect-button#connect").click()
}
setInterval(ConnectButton, 60000)

4. Utiliser son GPU ou TPU

En allant dans Exécution, puis Modifier le type d’exécution, vous pouvez choisir un accélérateur matériel comme votre processeur graphique par exemple pour entraîner vos modèles en moins de temps.

Choix du matériel d'exécution
Choix du matériel d’exécution

5. Relier Google Colab à Google Drive

Vous souhaitez récupérer des fichiers depuis votre drive pour les utiliser dans votre notebook, mais aussi stocker vos notebook et vos données sur votre drive. Deux lignes suffisent pour faire tout ça :

from google.colab import drive
drive.mount('/content/drive')

6. Utiliser des commandes Bash

Vous êtes un habitué du terminal Linux et vous souhaitez continuer à utiliser des commandes en Bash ? Et bien c’est possible directement sur Google Colab avec le point d’exclamation « ! ».

Pour installer des librairies ou des packages :

!pip install library
!apt-get install library

Pour exécuter des scripts Python :

!python script.py

Pour accéder à des fichiers sur un Git :

!git clone repository

Pour ouvrir un terminal directement dans le notebook :

!bash ou !exec bash
Lancer un terminal sur colab
Lancer un terminal sur colab

7. Dataframes interactifs

Pour jeter rapidement un coup d’œil à votre data set, pour les trier et filtrer de manière dynamique et interactive (ça permettra de vous faire une rapide idée de ce à quoi ressemblent vos données), vous pouvez utiliser cette extension de Google Colab :

%load_ext google.colab.data_table # pour activer l'extension
%unload_ext google.colab.data_table # pour désactiver l'extension
Les data frame interactives dans google colab
Les data frame interactives dans google colab

8. Utiliser le sommaire

Cette astuce peut paraître farfelue étant donnée qu’on parle de code et non de rédaction de texte. Néanmoins, cette fonctionnalité peut s’avérer très utile pour structurer des gros projets qui contiennent plusieurs parties distinctes (récupération des données, entraînement du modèle, comparaison…).

Pour ce faire il suffit d’insérer des zones textes et de les numéroter en respectant l’utilisation des # pour définir si c’est un titre, sous-titre ou sous-sous-titre. De cette manière vous pourrez facilement vous déplacer dans votre notebook à l’aide du menu latéral gauche.

Pour remettre votre projet étudiant à un prof ça peut faire la différence !

utilisation du sommaire dans google colab
Utilisation du sommaire dans google colab

9. Utiliser les formulaires

Les formulaires permettent de paramétrer facilement le code pour ensuite facilement le modifier et le maintenir au fur et à mesure. Lorsque vous modifiez la valeur dans un formulaire, la valeur à laquelle elle correspond dans le code changera automatiquement.

Pour ce faire il suffit d’ajouter un commentaire à côté de la variable qui sera ensuite interprété par Google Colab comme la création d’un formulaire.

Voici quelques exemples :

text = 'value' #@param {type:"string"}
dropdown = '1st option' #@param ["1st option", "2nd option", "3rd option"]
date = '01-01-2030' #@param {type:"date"}

Si vous voulez voir plus d’exemples et manipuler les formulaires regarder le Google Colab ici !

paramètres dans les cellules google colab
Paramètrer ses variables dans les cellules google colab

10. Evaluer les ressources disponibles

Parfois il peut être utile de connaître les détails des ressources à votre disposition (nombre de cœurs, nombre de threads, nombre de giga de RAM…), afin de pouvoir paramétrer au mieux les fonctions d’entraînement de vos modèles.

Pour avoir plus d’informations sur le CPU à votre disposition :

!cat /proc/cpuinfo

Pour avoir plus d’informations sur le GPU à votre disposition :

!nvidia-smi

Pour connaitre exactement la capacité de RAM à votre disposition :

import psutil
print(psutil.virtual_memory().total / 1e9)

11. Exécuter du JavaScript

Parfois il peut être utile, surtout si l’on développe une interface graphique web pour présenter nos résultats par exemple, de pouvoir coder en JavaScript directement depuis un notebook Google Colab et récupérer les résultats de l’exécution sur la console de notre navigateur accessible avec ctrl + shift + i.

Pour ce faire il suffit de commencer notre bloc avec %%javascript :

%%javascript
console.log('La Revue IA')

12. Afficher le TensorBoard

TensorBoard est un le DashBoard de TensorFlow l’outil open source d’apprentissage automatique développé par Google. Il fournit les solutions de visualisation et les outils nécessaires aux tests de machine learning.

Google Colab comporte une extension qui permet d’utiliser TensorBoard.

%load_ext tensorboard
%tensorboard --logdir logs
tensorboard dans google colab

13. Aperçu d’un site web

La librairie Requests, dont on a parlé dans le dernier article sur le Web Scraping en Python, peut également être utilisée pour visualiser un aperçu d’un site web directement sur le notebook.

import requests
from IPython.display import HTML

url = "https://larevueia.fr"
response = requests.get(url)
display(HTML(response.text))
15 astuces pour Google Colab

14. Télécharger un fichier lourd

Parfois, on peut manipuler certains fichiers comportant beaucoup de données, qui peuvent être très volumineux. Il existe une librairie en Python, nommée gdown, qui permet de les télécharger depuis Google Drive directement ! Vous pouvez retrouver sa documentation ici.

import gdown
gdown.download("https://drive.google.com/...", output="file", quiet=True)

15. Utiliser les raccourcis

Cette dernière astuce peut paraître superflue mais croyez moi en utilisant les raccourcis comme par exemple le ctrl + entrée pour exécuter un bloc, ou ctrl + F9 pour exécuter tout le notebook vous gagnerez beaucoup de temps !

En voici une liste non exhaustive :

extensions google colab
Extensions sur google colab

J’espère que toutes ces astuces vous faciliteront la vie ! N’hésitez pas à demander en commentaire si vous avez besoin d’aide ou si vous souhaitez partager d’autres astuces 🙂

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.