Commencer en Data Science avec Python

Cet article est issu de la newsletter IA Comprise et reproduit ici par commodité. Recevez toutes les lettres dans votre boîte mail au fur et à mesure de leur publication en laissant votre adresse dans le cadre à droite !


Chère lectrice, cher lecteur,

C’était il y a tout juste un an : alors que l’on découvrait les « joies » du premier confinement, j’inaugurai cette newsletter avec une première lettre consacrée aux origines de l’IA [1].

Après avoir autant entendu parler de data science et de machine learning, peut-être cela vous a-t-il donné envie de vous y frotter pour de vrai : explorer des sets de données, tester des algorithmes, réaliser des analyses sur vos sujets préférés…

… mais comment faire ?

Amazon et Google regorgent de livres, de cours, de sites consacrés à la Data Science, allant des fondements mathématiques à la programmation d’algorithmes. De quoi être découragé avant même d’avoir commencé – d’ailleurs, faut-il vraiment ingurgiter des heures de théories avant d’y mettre un doigt ?

Pas forcément.

Je crois beaucoup à l’apprentissage par l’expérimentation dans ce domaine. On se jette dans le bain, on explore, on essaie de résoudre des problèmes très concrets et l’envie de creuser la théorie vient naturellement ensuite. Reste un problème extrêmement terre-à-terre, si rarement abordé qu’il décourage tant de bonnes volontés, mais pourtant si simple que je peux y répondre dans cette lettre :

Par où commencer, concrètement ?

C’est bien beau de voir tant de sites parler de lignes de codes, de bases de données, d’algorithmes divers, mais où, comment les lire et les écrire ? Où trouver le bout du fil dans la pelote, que l’on pourra ensuite dérouler au fur et à mesure en lisant des livres ou en faisant des recherches sur Google ?

Introduction à Python

Il existe de nombreux outils en data science, chacun présentant ses atouts et ses inconvénients. Je n’en ferai pas une liste ou un comparatif. À la place, je vous vais vous emmener directement vers une valeur sûre : le langage de programmation Python.

Ce n’est pas forcément l’outil le plus rapide ni le plus ergonomique et l’idée de programmer peut faire peur. Mais c’est le « couteau suisse » de la data science :

  • Il est complet : on peut tout faire en termes d’analyses, des plus simples aux plus complexes
  • Il est accessible : c’est un langage plutôt intuitif, facile à lire et à écrire
  • Il est gratuit !

C’est pour ces raisons que ce langage, pas forcément réservé à la data science, a immensément gagné en popularité ces dernières années [2] :

En quelques années, Python s’est hissé sur le podium des langages de programmation les plus populaires, notamment grâce à la popularisation de la data science

La popularité étant un cercle vertueux, plus il s’est trouvé de data scientists (amateurs ou non) pour utiliser Python, plus celui-ci s’est enrichi en fonctions, en documents et en communautés dans ce domaine. Bref, si l’on ne sait pas par où commencer, on ne peut pas se tromper avec Python.

Installer Python

Il existe de nombreuses distributions de Python, autrement dit, des logiciels permettant de programmer « clé en main » dans ce langage. Je recommande la distribution Anaconda : elle est gratuite et pratique d’utilisation. Vous pouvez télécharger la dernière version ici (a priori en 64 bits, sauf si votre ordinateur est très ancien) :

https://www.anaconda.com/products/individual#Downloads

Cette distribution inclut le programme Jupyter : c’est une version de Python accessible via votre navigateur préféré et très commode d’utilisation.

Pour commencer, lancez Jupyter et allez sur l’onglet du navigateur web qui vient de s’ouvrir. Vous pouvez choisir « New » puis « Python 3 » pour créer votre premier fichier :

Face à la ligne « Entrée », la boîte de saisie permet d’écrire les commandes que vous souhaitez en Python. Pour les exécuter, il suffit d’appuyer sur Maj+Entrée : le résultat de l’exécution s’affiche sur la ligne Out :

Vous voilà prêt à utiliser Python !

Installer des bibliothèques

Les bibliothèques (ou libraries en anglais) sont des groupes de fonctions disponibles « sur étagère » conçues par d’autres programmeurs. Il en existe une immensité. Quoi que vous cherchiez à faire, il existe probablement quelqu’un qui a conçu une bibliothèque avec une fonction pour faire précisément cela…

Anaconda vient avec un certain nombre de bibliothèques préinstallées, mais si vous souhaitez en installer d’autres, la démarche est très simple. Au lieu de lancer Jupyter, lancez le programme « Anaconda prompt », puis écrivez la commande « pip install [nom de la bibliothèque] » pour l’installer. Si tout va bien, le package va être automatiquement téléchargé et installé. Une série de lignes s’afficheront pour finir par « Successfully installed » ; vous pouvez alors fermer Anaconda prompt.

Pour pouvoir utiliser les fonctions dans Jupyter, pensez à ajouter au début du code la ligne « import [nom de la bibliothèque] » pour chacune des bibliothèques installées.

Mots-clés utiles

Python est installé, et maintenant ?

Cette lettre n’a pas pour but de constituer un tutoriel à l’utilisation de Python – il en existe beaucoup sur internet, à condition de savoir quoi chercher. Voici donc une petite liste de mots-clés couramment rencontrés pour vous aider à commencer :

  • Kaggle : Un site proposant des concours de data science (désormais propriété de Google), ainsi que de nombreux tutoriels et sources de données. Le challenge idéal pour commencer : construire un modèle prédisant le profil des passagers du Titanic qui ont survécu au naufrage ! [3]
  • Stack Overflow : Un vaste site de questions/réponses en lien avec la programmation. Quelle que soit la question que vous vous posez sur Python, vous pouvez être sûr que quelqu’un d’autre l’a posée (et qu’elle a reçu des réponses) !
  • Numpy et Pandas : Deux bibliothèques Python très utilisées pour tout ce qui concerne la manipulation de données.
  • Dataframe : Un « objet » issu de la bibliothèque Pandas couramment utilisé pour manipuler des données dans Python. Il s’agit d’une matrice dont chaque ligne et colonne peuvent porter un nom ; un exemple de dataframe pourrait être un tableau dans lequel chaque ligne est un élève, chaque colonne une matière et chaque case la note obtenue par chaque élève dans chaque matière.
  • Scikit Learn : Une bibliothèque Python dédiée au Machine Learning. Tous les algorithmes classiques y sont déjà programmés, il suffit de les exécuter sur un dataframe avec les paramètres souhaités !
  • Matplotlib et Seaborn : Deux bibliothèques Python dédiées à l’affichage de graphes. Matplotlib est conçue pour être très similaire à Matlab (pour celles et ceux familiers avec ce logiciel) ; Seaborn enrichit et améliore Matplotlib avec davantage de fonctions et des graphes par défaut plus esthétiques.

Maintenant que vous avez trouvé le bout du fil, à vous de dérouler la pelote !

Erwan


Inscrivez-vous gratuitement pour ne rater aucune lettre !


[1] https://www.iacomprise.net/aux-origines-du-mythe-de-lintelligence-artificielle/
[2] https://www.tiobe.com/tiobe-index/
[3] https://www.kaggle.com/c/titanic

Laisser un commentaire

Abonnez-moi à la newsletter