3.5.4 Les algorithmes utilisés en Machine
Learning
Les algorithmes sont les outils essentiels du Machine
Learning, ils sont basés sur des règles statistiques et
probabilistes. Un algorithme va analyser des données et extraire des
régularités qui les
31
caractérisent. C'est ce qui permettra l'apprentissage.
Dans le cas de la classification, le but est de séparer, identifier ou
discriminer des données par rapport à d'autres.
3.5.4.1 Spécialisation des algorithmes
Les algorithmes sont souvent dédiés à un
type d'apprentissage, en voici quelques exemples :
Algorithme
|
Mode d'apprentissage
|
Type de problème à traiter
|
Régression linéaire
|
Supervisé
|
Régression
|
Régression polynomiale
|
Supervisé
|
Régression
|
Naive Bayes
|
Supervisé
|
Classification
|
Régression logistique
|
Supervisé
|
Classification
|
Arbres de décision
|
Supervisé
|
Régression ou classification
|
Random forest
|
Supervisé
|
Régression ou classification
|
Gradient boosting
|
Supervisé
|
Régression ou classification
|
Support Vector Machine
|
Supervisé
|
Régression ou classification
|
Clustering
|
Non supervisé
|
-
|
|
Tableau 2 - Exemples d'algorithmes (Biernat & Lutz,
2015)
3.5.4.2 Que fait l'algorithme dans le cas de la
classification supervisée ?
Le programme recherche une fonction qui prendra, en
entrée, un vecteur (ligne du tableau) et fournira, en sortie, le nom
d'une classe (catégorie). Ce cheminement n'est pas automatique, il
nécessite un ajustement. Le but étant de sélectionner une
fonction qui décrit au mieux les données du jeu d'apprentissage,
on parle alors de minimisation du risque empirique. Les valeurs de la fonction
seront interprétées de façon différente selon la
famille de l'algorithme, il en est de même pour le seuil qui fixe
l'appartenance à telle ou telle classe (Ibekwe-Sanjuan, 2007).
3.5.4.3 Comment choisir l'algorithme ?
Un théorème mathématique prouve qu'il
n'existe pas de meilleure méthode que toutes les autres sur tous les
problèmes de Machine Learning possibles, c'est le « NO FREE LUNCH
» (Wolpert & Macready, 1997). En d'autres termes, si un algorithme de
Machine Learning fonctionne bien sur un type de tâche
particulière, il sera moins performant en moyenne sur d'autres types de
tâches. Il faut donc rechercher et tester l'algorithme qui sera le plus
adapté pour la tâche à accomplir.
Voici trois critères de choix qui permettent de faire une
première sélection :
· Type de tâche
Le tableau 2 nous montre que les algorithmes sont
spécialisés, seuls certains pourront répondre à
notre contexte.
· Type de données
Certains algorithmes seront plus performants que d'autres en
fonction des données, par exemple les documents textuels contiennent
beaucoup de dimensions, par conséquent il faut un algorithme assez
puissant pour traiter ce type de données.
· 32
Adaptabilité
Cette notion d'adaptabilité concerne le fait de
pouvoir mettre à jour le modèle construit, en effet certains
algorithmes peuvent être facilement mis à jour alors que d'autres
pas du tout. Ce critère est fonction de l'utilisation, par exemple un
modèle de classification de données en masse aura moins besoin
d'être mis à jour qu'un modèle de traitement de
données en continu.
Le choix de l'algorithme sera donc fait en fonction du
problème à résoudre.
|