La période actuelle est passionnante pour la Data Science. De manière générale le domaine de la data a une croissante exponentielle. Les sociétés se retrouvent assises sur des mines d’or, mais n’exploitent pas encore toutes les données qu’elles possèdent. De ce fait, elles commencent à s’y intéresser et la demande pour les data scientists va dans le même sens – elle est énorme et va continuer à croître. Les salaires d’embauche sont très intéressants (aux USA et bientôt en Europe).
Forte demande + gros salaires = un grand nombre de personnes souhaitant se former à la Data Science.
Comme toute démarche d’apprentissage d’un nouveau skill, on commence par se poser la question suivante: « Comment puis-je apprendre la Data Science?«
Devenir data scientist…
La réponse à cette question devient finalement une longue liste de cours à suivre et de livres à lire, en commençant par l’algèbre linéaire ou les statistiques et de la programmation…super!
Je l’ai moi-même vécu il y a quelques années quand j’ai commencé à apprendre la Data Science.
Vous savez aussi bien que moi à quel point il est frustrant de recevoir une énorme liste de ressources sans aucun contexte. C’est comme si en début d’année universitaire, un prof vous remettait une pile de 50 livres en vous disant « lisez tout ça, on se retrouve à la fin du semestre… ».
Via cette méthode, j’aurai arrêté très vite mon apprentissage.
Alors oui, cette méthode est possible. Certaines personnes apprennent mieux avec une liste de livres (ça restera tout de même très théorique…). Personnellement j’apprends mieux en construisant quelque chose – aussi petit soit-il (qui devient de plus en plus grand et complexe au cours de l’apprentissage).
J’essaye, je me trompe, je ré-essaye et finalement j’y arrive, étape par étape.
Après ça, vous pouvez cocher immédiatement une compétence dans votre liste de skills (celle qu’on affiche fièrement sur son CV).
C’est pourquoi apprendre l’algèbre linéaire ou les statistiques, pourquoi pas, mais pas tout de suite. Pour commencer à se former à la Data Science, il serait bien d’apprendre tout d’abord à aimer la data. Lisez la suite pour voir comment vraiment apprendre la Data Science.
Un exemple d’utilisation de visualisation de données que l’on peut faire en Data Science (source: Hired)
Apprendre à aimer la data
La clé dans l’apprentissage c’est la motivation. La Data Science étant un domaine très vaste et parfois compliqué, vous n’irez pas loin sans cette motivation.
Vous avez besoin de quelque chose qui vous motivera à continuer quoiqu’il arrive, même minuit passé quand la fatigue commence à se faire sentir.
Vous avez besoin de quelque chose qui vous permettra de trouver les liens logiques entre les statistiques, l’algèbre linéaire et les réseaux de neurones. Quelque chose qui vous empêchera de vous poser la question « qu’est-ce que j’apprends ensuite? ».
J’ai commencé la Data Science sur un projet de prédiction du marché boursier. Les premiers résultats ne fonctionnaient pas très biens (ils n’utilisaient même pas de statistiques), mais ce n’était pas grave, j’avançais doucement et j’étais prêt à persévérer jour et nuit pour l’améliorer.
J’étais obsédé par l’amélioration de la performance de mon code et je devenais obsédé par le marché boursier. J’avais ainsi appris à aimer les données. Et parce que j’apprenais à aimer les données, cela me rendait extrêmement motivé pour apprendre tout ce dont j’avais besoin pour améliorer ma compréhension et mes programmes de code.
Trouver un sujet qui vous passionne
Tout le monde n’est pas obsédé par la prédiction du marché boursier, je le sais bien. En vérité je ne l’étais pas et je ne le suis plus, je recommande juste de choisir un sujet qui nous intéresse un minimum pour se donner l’envie d’apprendre (politique, sport, cinéma, finance…). Cela peut être par exemple la découverte de nouvelles choses sur votre ville, la cartographie de tous les dispositifs sur Internet (cf. carte ci-dessous), l’analyse de stats sur nos joueurs de sport préférés, ou même la cartographie des réfugiés par année.
Ce qui est génial avec la Data Science, c’est qu’on peut toujours trouver de nouveaux sujets à exploiter et explorer – en réalité il s’agit de se poser des questions et de trouver un moyen d’obtenir des réponses: la data.
S’il y a bien une chose à retenir « Prenez le contrôle de votre apprentissage en l’adaptant à ce que vous voulez faire, et non l’inverse ».
Cette carte réalisée par l’Américain John Matherly montre la densité des appareils connectés à internet dans le monde. (JOHN MATHERLY / SHODAN)
Apprendre en faisant
En savoir plus sur les réseaux de neurones, la reconnaissance d’image et faciale et d’autres techniques à la mode est important.
Mais la Data Science c’est surtout:
- 90% du travail d’un data scientist sera le nettoyage des données (data cleaning).
- Il vaut mieux maîtriser parfaitement quelques algorithmes plutôt que connaître tous les algorithmes de façon sommaire (sans savoir comment les utiliser et appliquer). Si vous connaissez bien la régression linéaire, le clustering k-means et la régression logistique, vous pouvez expliquer et interpréter leurs résultats et vous pouvez terminer un projet de A à Z.
- La plupart du temps, lorsque vous utilisez un algorithme, il sera issu d’une bibliothèque (il serait trop long d’écrire les algorithmes de zéro).
Travailler sur ses propres projets
Cela signifie que la meilleure façon d’apprendre est de travailler sur des projets. En travaillant sur des projets, vous acquérez des compétences immédiatement applicables et utiles. Par la même occasion, cela vous permet de construire un portfolio (ensemble de vos projets et travaux en data).
Une technique pour démarrer des projets est de trouver un dataset sur un sujet que vous aimez (par exemple les joueurs de NBA) puis d’essayer de répondre à une question intéressante sur ce sujet. Voici quelques liens pour dénicher de bons datasets:
Résoudre un problème perso par la pratique
Ma technique consiste donc à trouver un problème de fond, par exemple prédire le marché boursier, qui va pouvoir être décomposé en petites étapes. Je me suis d’abord connecté à l’API de Yahoo Finance pour y extraire les données des prix quotidiens. J’ai ensuite créé quelques indicateurs comme le prix moyen au cours des derniers jours, et les ai utilisés pour prédire l’évolution du marché (pas d’algorithmes juste de l’analyse). Cela ne fonctionnait pas très bien, j’ai donc appris des notions de statistique sur Khan Academy, puis j’ai utilisé la régression linéaire. Finalement, je me suis connecté à une autre API et j’ai stocké dans une base de données SQL les données minute par minute. Et ainsi de suite, jusqu’à ce que l’algorithme fonctionne bien.
L’idée ici c’est que j’avais un contexte d’apprentissage. Je ne me suis pas levé un matin en me disant « et si j’apprenais SQL ça pourrait être amusant ». J’ai appris la syntaxe SQL afin de stocker des données sur les prix dans des bases de données. Je n’ai donc pas seulement étudier la syntaxe SQL mais son application directe sur un projet concret. C’est cette démarche qui vous apprend réellement le travail d’un data scientist.
Apprendre à communiquer les résultats…
Les data scientists doivent présenter les résultats de leurs analyses aux autres expertises métier. La communication différenciera un bon et un excellent data scientist.
Une fois que le sujet et la théorie sont bien compris, il faut trouver un moyen d’organiser clairement les résultats. Enfin, il faut être capable d’expliquer l’ensemble de l’analyse.
Il n’est jamais facile de communiquer efficacement sur des concepts complexes, mais voici quelques astuces pour progresser en communication:
- Démarrer un blog afin de présenter vos résultats issus d’analyse de données.
- Essayez d’enseigner à vos amis et à votre famille moins techos les concepts de la Data Science. D’une part ça vous permet d’approfondir les concepts clés et d’autre part s’ils comprennent c’est un bon indicateur de votre niveau de compréhension – « Ce que l’on conçoit bien s’énonce clairement ».
- Essayez de parler lors de meetups spécialisés Data / Machine Learning / Intelligence Artificielle.
- Utilisez Github pour héberger toutes vos analyses –> Portfolio.
- Soyez actif sur des communautés comme Quora et le subreddit de Machine Learning.
Apprendre avec d’autres Data cientists
On apprend beaucoup au contact d’autres spécialistes, il faut poser les bonnes questions et écouter. En Data Science, le travail d’équipe fait progresser.
Quelques idées d’apprentissage:
- Rencontrer d’autres personnes travaillant ou étant passionnées par la data – via l’appli Shapr.
- Travailler avec des Data cientists.
- Contribuer aux librairies open source – reconnaissance de la communauté Python.
- Envoyez des messages aux personnes qui écrivent des blogs d’analyse de données intéressants pour voir si vous pouvez collaborer.
- Essayez Kaggle (un site de compétition de machine Learning) et voyez si vous pouvez travailler à plusieurs.
Toujours monter en compétence
Êtes-vous parfaitement à l’aise avec le projet sur lequel vous travaillez? Si la réponse est « OUI » cela signifie qu’il est temps de travailler sur quelque chose de plus difficile. Rappelez-vous la Data Science est un domaine très vaste dans lequel il faut toujours viser plus haut.
Si à un moment vous vous sentez faciles, voici quelques idées pour vous challenger:
- Travaillez avec un ensemble de données plus volumineux (explorer le Big Data).
- Améliorez la rapidité de vos algorithmes.
- Comment adapteriez-vous votre algorithme à plusieurs processeurs?
- Comprendre la théorie de l’algorithme que vous utilisez plus en détail. Est-ce que cela affine vos hypothèses?
- Essayez d’apprendre à un débutant à faire les mêmes choses que vous.
La bonne conduite dans tout ça…
La bonne conduite pour grandir dans le monde de la Data comprend l’ensemble des lignes directrices ci-dessus. Si vous les mettez en pratique, vous constaterez une évolution rapide dans le domaine de la Data Science.
Je pense sincèrement que chacun peut apprendre la Data Science en s’y prenant correctement, c’est à dire en abordant le sujet avec un bon état d’esprit.
Je suis également passé par tous ces points. J’enseigne maintenant la Data Science sur Mon Coach Data, un site qui vous aide à apprendre la Data Science et à construire un portfolio. J’essaie ainsi de créer la meilleure expérience d’apprentissage. Vous apprenez en analysant des datasets intéressants de tout type et en validant vos acquis à l’aide de projets complets. Aucun problème si vous ne savez pas coder – on y apprend Python de zéro. Python car c’est le langage le plus adapté à la Data Science (et l’Intelligence Artificielle).
Ressources utiles pour se former à la Data Science :
Comme j’ai travaillé sur de nombreux projets, voici des ressources qui m’ont aidé (ou qui valent le coup). Rappelez-vous que les ressources ne sont pas une fin en soi – c’est le contexte dans lequel vous allez les utiliser qui fera la différence:
- MonCoachData – Formations pour apprendre la Data Science, le Machine Learning et le Deep Learning.
- Openclassroom – Devenez data scientist avec un parcours clé en mains.
- Khan Academy — excellentes cours en statistiques et algèbre linéaire (version française)
- Introduction to Linear Algebra, 4th Edition — Super livre d’algèbre linéaire de Gilbert Strang.
- Elements of statistical learning — Livre de machine Learning.
- Coursera (Andrew Ng) — Cours vidéos du célèbre Andrew Ng sur le Machine Learning.