Qu’est-ce que le Machine Learning ?
Concentrons-nous à présent sur la définition du concept de Machine Learning. Traduit par
l’expression “apprentissage automatique” en français, le Machine Learning se définit
comme un programme informatique conçu pour donner la capacité aux ordinateurs
d’apprendre par eux-mêmes, sans avoir été programmés en amont. Cela passe par la mise
en place d'algorithmes et par l’utilisation de probabilités statistiques. La machine s'entraîne
alors à apprendre, à réagir lorsqu’elle se trouve face à un problème et à agir selon différents
scénarios, plutôt que de suivre une suite d’instructions de façon stricte.
L’objectif ultime ? Que les machines parviennent à imiter des fonctions cognitives associées
à l’intelligence humaine. La voiture autonome constitue un parfait exemple de cette
technologie. L’ordinateur tend à copier la conduite d’un individu : se repérer sur un parcours
donné, analyser son environnement, freiner s'il y a un danger… La machine ingère pour cela
des quantités de données en explorant des datasets. Et plus les données sont
nombreuses, plus les prédictions seront précises. D’où l'intérêt d’associer Machine Learning
et Big Data.
Le Machine Learning repose sur deux éléments indispensables : les data et l'algorithme
d’apprentissage. Si les données fournies à l'algorithme s’avèrent erronées, les prévisions
calculées seront forcément fausses elles aussi : c'est le concept du “garbage in garbage
out”. La qualité des données joue donc un rôle essentiel. Quant à l'algorithme
d'apprentissage, il permet de modéliser des tendances à partir d’exemples : dans le cas où
celui-ci s’appuie sur des données inexactes, le résultat n'apparaîtra pas, là non plus, comme
pertinent.
Data Science et Machine Learning : différences et lien
Pour bien comprendre la relation et les différences qui existent entre Machine Learning
et science des données, il est nécessaire de s'intéresser au processus employé en Data
Science.
Mener à bien un projet de Data Science implique de suivre les différentes étapes qui
composent son cycle de vie :
1. Définition d’un objectif principal : qu’il s’agisse d’augmenter les ventes, de simplifier
une procédure ou de détecter une anomalie, le projet doit répondre à une
problématique présente au sein de l'entreprise ;
2. Collecte des données : identifier les différentes sources de données pertinentes
selon le but à atteindre ;
3. Nettoyage : les données brutes sont transformées pour parvenir à un format
exploitable par les data scientists (scientifiques de la données) ;
4. Exploration des données : comprendre les liens entre data (patterns) ;
5. Modélisation des données : c’est ici qu’intervient le Machine Learning. Les datasets
d'entraînements sont manipulés pour tester les modèles ;
6. Déploiement et ajustement du modèle : le projet est appliqué dans le monde réel et
adapté au fil du temps.
Autrement dit, la Data Science facilite la prise de décisions stratégiques des
organisations à partir de données et, pour y arriver, elle s'appuie sur un ensemble de
techniques dont l’Intelligence Artificielle, le Machine Learning et le Deep Learning. Le
Machine Learning est donc considéré comme une technique au service de la Data
Science, car il est l’un maillon essentiel de l’étape de modélisation des données.
S'ils font partie de la même équipe au sein d’une entreprise, les data scientists possèdent
une vue globale sur le projet, tandis que les ingénieurs en Machine Learning se concentrent,
eux, sur une étape spécifique : sélectionner, entraîner et développer des modèles
d'apprentissage. L’apprentissage automatique permet à la science des données de
passer au niveau d’automatisation supérieur.
Un de leurs points communs ? Ils nécessitent tous deux des données fiables pour
fonctionner correctement
Le machine learning est une technique de programmation informatique qui utilise des
probabilités statistiques pour donner aux ordinateurs la capacité d'apprendre par eux-
mêmes sans programmation explicite. L’ objectif de base du machine learning est
"d’apprendre à apprendre" aux ordinateurs – et par la suite, à agir et réagir – comme le font
les humains, en améliorant leur mode d'apprentissage et leurs connaissances de façon
autonome sur la durée. L'objectif ultime serait que les ordinateurs agissent et réagissent
sans être explicitement programmés pour ces actions et réactions. Le machine learning
utilise des programmes de développement qui s'ajustent chaque fois qu'ils sont exposés à
différents types de données en entrée.
Saviez-vous que le Machine Learning faisait partie intégrante de la Data
Science ? Découvrez leur lien dans notre article “Quelles différences entre Data Science et
Machine Learning ?”
La réussite du machine learning réside dans l'entrée de volumes considérables de
données dans l'ordinateur-étudiant. Pour apprendre, la machine a besoin de consommer des
big data.
Un bon exemple de machine learning est la voiture autonome. Une voiture autonome est
équipée de plusieurs caméras, plusieurs radars et d'un capteur lidar. Ces différents
équipements assurent les fonctions suivantes :
Utiliser le GPS pour déterminer l'emplacement de la voiture en permanence et avec
précision
Analyser la section de route située en avant de la voiture
Détecter les objets mobiles ou fixes situés sur l'arrière ou les côtés de la voiture
Ces informations sont traitées en permanence par un ordinateur central également installé
dans la voiture. Cet ordinateur collecte et analyse en permanence des volumes
considérables de données et les classe de la même manière que les réseaux neuronaux
d'un cerveau humain. Pour guider la voiture dans son environnement, l'ordinateur prend des
milliers de décisions par seconde en fonction de probabilités mathématiques et de ses
observations : comment tourner le volant, quand freiner, accélérer, changer les vitesses, etc.
Trois catégories de machine learning
Le machine learning n'est pas une nouvelle technologie. Le premier réseau neuronal
artificiel, appelé « Perceptron », a été inventé en 1958 par le psychologue américain Frank
Rosenblatt.
Au départ, Perceptron devait être une machine, et non un algorithme. En 1960, il a été utilisé
pour le développement de la machine de reconnaissance d'images « Mark 1 Perceptron ».
Mark 1 Perceptron a été le premier ordinateur à utiliser des réseaux neuronaux artificiels
(ANN) pour simuler la réflexion humaine et apprendre par essais et erreurs.
En raison de l’apparition des bibliothèques et des frameworks open source et grâce à
l’augmentation de plusieurs milliards de fois de la puissance de traitement des ordinateurs
entre 1956 et 2021, le machine learning s’est largement démocratisé. Aujourd'hui, le
machine learning est partout : des transactions boursières à la protection contre les logiciels
malveillants en passant par la personnalisation du marketing. Quel que soit son degré de
complexité, le machine learning peut être classé en trois grandes catégories :
1. Machine learning supervisé
Le machine learning supervisé est une technologie élémentaire mais stricte. Les opérateurs
présentent à l'ordinateur des exemples d'entrées et les sorties souhaitées, et l'ordinateur
recherche des solutions pour obtenir ces sorties en fonction de ces entrées. Le but est que
l'ordinateur apprenne la règle générale qui mappe les entrées et les sorties.
Le machine learning supervisé peut être utilisé pour faire des prédictions sur des données
indisponibles ou futures (on parle alors de "modélisation prédictive"). L'algorithme essaie de
développer une fonction qui prédit avec précision la sortie à partir des variables d'entrée –
par exemple, prédire la valeur d'un bien immobilier (sortie) à partir d'entrées telles que le
nombre de pièces, l'année de construction, la surface du terrain, l'emplacement, etc.
Le machine learning supervisé peut se subdiviser en deux types :
Classification : la variable de sortie est une catégorie.
Régression : la variable de sortie est une valeur spécifique.
Les principaux algorithmes du machine learning supervisé sont les suivants : forêts
aléatoires, arbres de décision, algorithme K-NN (k-Nearest Neighbors), régression linéaire,
algorithme de Naïve Bayes, machine à vecteurs de support (SVM), régression logistique et
boosting de gradient.
2. Machine learning non supervisé
Dans le cadre du machine learning non supervisé, l'algorithme détermine lui-même la
structure de l'entrée (aucune étiquette n'est appliquée à l'algorithme). Cette approche peut
être un but en soi (qui permet de découvrir des structures enfouies dans les données) ou un
moyen d'atteindre un certain but. Cette approche est également appelée « apprentissage
des caractéristiques » (feature learning).
Un exemple de machine learning non supervisé est l'algorithme de reconnaissance faciale
prédictive de Facebook, qui identifie les personnes sur les photos publiées par les
utilisateurs.
Il existe deux types de machine learning non supervisé :
Clustering : l'objectif consiste à trouver des regroupements dans les données.
Association : l'objectif consiste à identifier les règles qui permettront de définir de
grands groupes de données.
Les principaux algorithmes du machine learning non supervisé sont les suivants : K-Means,
clustering/regroupement hiérarchique et réduction de la dimensionnalité.
3. Machine learning par renforcement
Dans le machine learning par renforcement, un programme informatique interagit avec un
environnement dynamique dans lequel il doit atteindre un certain but, par exemple conduire
un véhicule ou affronter un adversaire dans un jeu. Le programme-apprenti reçoit du
feedback sous forme de « récompenses » et de « punitions » pendant qu'il navigue dans
l'espace du problème et qu'il apprend à identifier le comportement le plus efficace dans le
contexte considéré.
En 2013, c'était déjà un algorithme de machine learning par renforcement (Q-learning)
qui s'était rendu célèbre en apprenant comment gagner dans six jeux vidéo Atari sans
aucune intervention d'un programmeur.
Il existe deux types de machine learning par renforcement :
Monte Carlo : le programme reçoit ses récompenses à la fin de l'état « terminal ».
Machine learning par différence temporelle (TD) : les récompenses sont évaluées
et accordées à chaque étape.
Les principaux algorithmes du machine learning par renforcement sont les suivants : Q-
learning, Deep Q Network (DQN) et SARSA (State-Action-Reward-State-Action).
Machine learning et probabilités
Au stade actuel, toutes les formes de machine learning s'appuient sur les probabilités, ou
plus précisément sur l'interprétation bayésienne de la probabilité que les événements ou
actions ont de se produire ou pas.
Dans cet exemple, une machine détermine si le soleil se lève chaque jour ou non.
Jour 1. Le soleil va-t-il se lever aujourd'hui ? La probabilité que le soleil se lève est de 0,5,
soit 50 %. Cette probabilité d'une sur deux (0,5) résulte du fait que seuls deux états sont
possibles.
Jour 2. Le soleil s'est levé le jour 1, donc la probabilité a évolué : la machine sait maintenant
que le soleil s'est levé une fois auparavant, mais elle n'a aucune garantie que cet événement
va se reproduire aujourd'hui. La probabilité est passée à deux sur trois, soit 0,66 (66 %).
Du jour 3 au jour 6. Comme le soleil se lève tous les jours, la probabilité positive continue à
augmenter.
Jour 7. À la fin de la semaine, la probabilité est d'environ 0,857, soit 85,7 %, que le soleil se
lève le lendemain.
Fin de l'année. Le soleil s'est levé tous les jours : la probabilité qu'il se lèvera le lendemain
est désormais de 0,997, soit plus de 99 %.
Il est important de noter que cette probabilité de lever du soleil ne peut jamais être de 1 % ou
100 % ; il existe toujours un risque infime que le soleil ne se lève pas le lendemain, même si
cette valeur tend vers l'infiniment petit au fur et à mesure que les matins se répètent.
Trois types d'algorithmes du machine learning
Un algorithme est une séquence d'actions qui s'exécutent pour résoudre un problème,
effectuer un réglage, etc. L'informatique utilise des algorithmes pour décrire les étapes
détaillées nécessaires à l'exécution d'une opération. Le machine learning utilise de
nombreux types d'algorithmes (en plus de ceux énumérés ci-dessus).
L'algorithme utilisé dépend de la complexité et du type de problème à résoudre ou d'action à
exécuter. Il peut, par exemple, s'agir de clustering (examiner les regroupements de données)
ou de régression (prédire une sortie sous forme de valeur réelle). Exemples d'algorithmes du
machine learning :
Arbre de décision
Un arbre de décision est un type d'algorithme qui peut être appliqué à de nombreux
contextes : grande distribution, finance, produits pharmaceutiques, etc. La machine se
contente d’établir l’arborescence de divers résultats qui peuvent ou ne peuvent pas se
produire, et suit chaque événement jusqu'à sa conclusion naturelle tout en calculant toutes
les probabilités des événements pouvant se produire.
Par exemple, une banque pourra utiliser des algorithmes d'arbre de décision pour décider si
elle finance tel ou tel emprunt. Les compagnies pharmaceutiques utilisent ces algorithmes
pendant leurs tests pour calculer la probabilité des effets secondaires et le coût moyen du
traitement.
Forêts aléatoires
La forêt aléatoire est un autre algorithme utilisé très couramment. Cet algorithme construit
plusieurs arbres de classification et de régression (CART, Classification and Regression
Tree), chaque arbre étant associé à différents scénarios et différentes variables initiales.
L'algorithme est randomisé, ce qui n'est pas le cas des données. Ce type d'algorithme est
utilisé pour la modélisation prédictive de classification et de régression.
Par exemple, vous disposez de 1 000 observations sur une population, avec 10 variables.
Pour construire le modèle CART à utiliser, l'algorithme de forêt aléatoire va prendre un
échantillon aléatoire de 100 observations et 5 variables au hasard. L'algorithme répète ce
processus à de nombreuses reprises, puis il fait une prédiction finale sur chaque
observation. La prédiction finale n'est qu'une fonction correspondant à la somme des
différentes prédictions.
Algorithmes K-Means
Les K-Means sont des algorithmes de machine learning sans supervision qui sont utilisés
pour résoudre des problèmes de clustering. Ils divisent et classent un ensemble de points de
données non affectés d'un label (sans classification externe) en un groupe appelé « cluster »
(sans rapport avec les clusters de serveurs). Chaque itération de l'algorithme assigne
chaque point à un groupe présentant des caractéristiques similaires. Les points de données
peuvent être suivis dans le temps pour détecter les changements qui se produisent dans les
clusters.
Les algorithmes K-Means peuvent confirmer des hypothèses sur les types de groupes qui
existent dans un dataset spécifique, ou être utilisés pour découvrir des clusters inconnus.
Parmi les cas d'usage commerciaux, citons le regroupement de l'inventaire par activité
commerciale et la détection d'anomalies dans des données – par exemple, les données
brutes collectées par un bot (robot logiciel).