La data science est un domaine riche qui évolue rapidement et qui couvre beaucoup de compétences interprofessionnelles : maîtrise et optimisation de technologies informatiques, connaissance et expertise d’algorithmes et des modèles mathématiques, ainsi qu’une aisance en communication et divulgation des résultats.
Pour beaucoup de managers d’une équipe data, comprendre le vocabulaire utilisé par les membres de l’équipe est un vrai défi. S’ils maîtrisent bien l’aspect relationnel, ils sont souvent dans l’incapacité d’effectuer un suivi du projet efficace, à cause de la difficulté du vocabulaire.
Cet article vous montrera de façon claire et synthétique ce qui se cache derrière quelques mots appartenant au jargon des data scientists.
Terminologie générale
Classification supervisée et non supervisée
La classification automatique peut être de deux types :
- Supervisée, quand vous disposez des données déjà catégorisées qui peuvent être utilisées pour l’apprentissage de l’IA,
- Non supervisée, quand vos données ne sont pas catégorisées, et que vous laissez complètement l’IA faire ses regroupements (on parle dans ce dernier cas de « clustering »).
Apprentissage
Le machine learning a pour but d’entraîner une IA (Intelligence Artificielle) à réaliser une certaine tâche plus ou moins complexe (décision, classification, détection, etc.) Le processus à travers lequel l’IA devient de plus en plus pertinente dans ses résultats est appelé apprentissage (statistique, symbolique ou encore automatique, en fonction du type de modèle utilisé).
Surapprentissage ou overfitting
Il arrive que le modèle de machine learning subisse un « surapprentissage ». Cela arrive quand il a été entraîné avec un échantillon de données trop limitant, et que le processus d’apprentissage a été mal programmé. Un tel modèle est incapable de généraliser les résultats à d’autres données que les données d’apprentissage.
Validation
La validation croisée est une technique utilisée pour empêcher le surapprentissage. Lors de l’apprentissage, on soumet le modèle à des tests contenant des données n’appartenant pas à la base d’apprentissage.
Algorithme et modèle
- Un modèle est le noyau de l’IA, le moteur de l’intelligence. Il existe plusieurs familles de modèles, en fonction d’une multitude de paramètres, entre autres s’il s’agit d’une classification supervisée ou non.
- Un algorithme est la façon de modéliser le fonctionnement du modèle, pour le programmer sur l’ordinateur.
Apprentissage par renforcement
C’est un type d’apprentissage qui simule l’apprentissage naturel chez l’humain, à base de récompenses et de punitions.
Clustering
C’est un type d’apprentissage non supervisé, dont l’objectif est de catégoriser les données dans des groupes (clusters).
Données structurées et non structurées
Les données structurées sont les données formatées d’une manière documentée qui contiennent une information sur la donnée en elle-même (exemple : données issues de l’ordinateur d’un avion, données géographiques, etc.).
Elles sont souvent présentées sous forme de tableau avec plusieurs colonnes. Les données non structurées n’ont pas cette information (exemple : données textuelles).
Modèles d’apprentissage
Il s’agit du cœur du travail dans le machine learning, la manière dont le système est programmé pour apprendre à détecter un objet sur une image, filtrer un son, classifier des textes, etc. Vous pouvez trouver ci-dessous les modèles d’apprentissage les plus utilisés.
KNN
En anglais « K Nearest Neightbors » ou « plus proches voisins ». C’est un type de modèle de clustering qui regroupe vos données par ressemblance entre elles, obtenant des groupes (« clusters » dans le jargon) à partir d’une certaine mesure de distance.
Markov
La Chaîne de Markov est un modèle de type séquentiel, c’est-à-dire capable d’apprendre à partir de séries de données ayant une information temporaire.
SVM
Support Vector Machine, c’est l’un des modèles supervisés le plus courants, avec des très bonnes performances mais en revanche compliqué à comprendre. C’était un modèle très utilisé au début des années 2000 avant l’arrivée du deep learning.
Réseaux de neurones
Les réseaux de neurones sont un modèle d’apprentissage statistique qui simule le fonctionnement du cerveau humain, avec des couches de neurones et des connexions entre eux. Largement utilisés dans les années 80-90, ces réseaux reviennent dans le domaine de la data science avec l’introduction de l’apprentissage profond.
Deep Learning
L’apprentissage profond est une famille de modèles qui classifie les données utilisant une séquence de représentations abstraites de données. C’est un type de modèle parfaitement adapté au big data.
Technologies
Github
Il s’agit d’une plateforme pour héberger le code software et gérer les contributions des différents membres de l’équipe. C’est un outil essentiel pour tout data scientist.
Jupyter
C’est un environnement de développement online pour coder en Python les modèles de machine learning entre autres. L’intégration des librairies de machine learning ainsi que la facilité d’utilisation sans avoir à installer quoi que ça soit localement fait de Jupyter un outil, une application indispensable pour les data scientists.
Hadoop
C’est un ensemble d’outils, et une structure de données, permettant les calculs intensifs sur des masses de données de manière distribuée. C’est l’architecture sous-jacente utilisée souvent dans les projets big data.
Pandas
C’est une librairie Python permettant l’utilisation des structures de données multidimensionnelles, qui est très utile quand il s’agit de traiter les données d’apprentissage pour les modèles de machine learning.
Numpy
C’est une librairie Python qui contient les outils nécessaires pour travailler avec des matrices et les fonctions mathématiques qui vont avec.
Tensorflow
C’est une librairie de machine learning développée par Google et très utilisée par les data scientists.
Vous voila incollable sur le sujet du machine learning et son vocabulaire !