Getty Images/iStockphoto
Machine Learning : les 9 types d’algorithmes les plus pertinents en entreprise
Le machine learning devient la priorité de bon nombre d’entreprises. Elles veulent modéliser d’importants volumes de données. Le choix du bon algorithme dépend des objectifs à atteindre et de la maturité de votre équipe de Data Science.
Pour certains, l’affirmation suivante apparaît comme une évidence : un seul algorithme ne pas répondre à toutes les problématiques. Suivant le type de données et les objectifs de votre organisation, certains modèles seront plus adaptés. Par exemple, un algorithme de régression linéaire est plus facile à entraîner et à déployer que d’autres, mais il ne sera sans doute pas le meilleur pour réaliser des prédictions complexes.
Les neuf algorithmes de machine learning présentés ci-dessous sont parmi les plus utilisés par les entreprises pour entraîner leurs modèles. Ceux-ci soutiennent non seulement plusieurs objectifs, mais dépendent également de différentes méthodes d’apprentissage : supervisée, non supervisée, semi-supervisée ou par renforcement. Au besoin ces techniques peuvent être combinées.
Les algorithmes d’apprentissage supervisé
Les modèles d’apprentissage supervisé demandent beaucoup de travail préparatoire aux data scientists. Les jeux de données en entrée doivent être étiquetés, tandis qu’il faut indiquer les paramètres de sortie, les résultats attendus. Il faut également ajuster la précision pendant le processus d’apprentissage.
Régression linéaire
Sans aucun doute possible, les algorithmes de régression linéaire sont les plus utilisés par les équipes de data science. Il s’agit d’effectuer des corrélations simples entre deux variables dans un jeu de données. Un ensemble d’entrées et les sorties correspondantes sont examinés et quantifiés pour montrer une relation, par exemple comment le changement d’une variable affecte une autre. Les régressions linéaires sont représentées sous forme de lignes sur un graphique.
La popularité de la régression linéaire s’explique par sa simplicité. L’algorithme est facilement explicable, relativement transparent et il y a peu de paramètres à configurer. Bien connu dans la pratique des statistiques, ce type d’algorithmes est souvent utilisé pour prévoir des ventes ou des risques.
La régression linéaire est la meilleure solution lorsque « vous cherchez à prédire votre valeur ou une classe », déclare Shekhar Vemuri, CTO de Clairvoyant, une société de conseil en analytique.
Machine à vecteurs de support (SVM)
Les machines à vecteurs de support ou SVM (Séparateurs à vastes marges) sont des algorithmes qui séparent les données en classes. Pendant l’entraînement, un SVM trouve une ligne qui sépare les données d’un jeu en classes spécifiques et maximise les marges (les distances entre les frontières de séparation et les échantillons les plus proches) de chaque classe. Après avoir appris les lignes de classification, le modèle peut ensuite les appliquer aux nouvelles données.
Les spécialistes placent le SVM dans la catégorie des « classificateurs linéaires » : l’algorithme est idéal pour identifier des classes simples qu’il sépare par des vecteurs nommés hyperplans. Il est également possible de programmer l’algorithme pour les données non linéaires, que l’on ne peut pas séparer clairement par des vecteurs. Mais, avec des données d’entraînement hypercomplexes – visages, traits de personnalité, génomes et matériel génétique – les systèmes de classes deviennent plus petits et plus difficiles à identifier et nécessitent un peu plus d’assistance humaine.
Les machines à vecteurs de support sont très utilisées dans la finance. Elles offrent une grande précision sur les données actuelles et futures. Les modèles associés peuvent servir à comparer virtuellement les performances financières relatives, la valeur et les retours sur investissement.
Les SVM dits non linéaires sont souvent mis à contribution pour classifier des images (vision par ordinateur) ou des mots, des phrases et des entités (NLP).
Arbre de décision
Un algorithme d’arbre de décision représente graphiquement les données en branches pour montrer les résultats possibles de diverses actions. Il classifie et prédit les variables de réponse en fonction des décisions passées.
Cette méthode visuelle a fait ses preuves. Les résultats des arbres de décision sont faciles à expliquer. Les citizen data scientists n’auront aucun mal à les interpréter. Les décisions et leurs impacts probables sur un résultat final sont aisément visibles, même lorsque les jeux de données en entrée s’avèrent incomplets.
Cependant, les arbres de décisions deviennent difficiles à lire quand ils sont associés à de gros volumes de données et à des variables complexes. C’est pourquoi ils sont utilisés pour les décisions à faibles enjeux, comme l’anticipation des variations de taux d’emprunt ou les réactions du marché si une entreprise modifie un élément important d’un de ses produits.
« Les arbres de décision restent populaires parce qu’ils peuvent décrire de multiples résultats sans faire intervenir de data scientists », déclare Jeff Fried, directeur de la gestion des produits chez InterSystems.
Les algorithmes d’apprentissage non supervisé
Les algorithmes dits non supervisés ne sont pas entraînés par le data scientist. Ils dépendent de méthodes d’apprentissage approfondi pour identifier des patterns en passant au peigne fin des ensembles de données d’entraînement non étiquetées, puis en observant les corrélations. Les modèles entraînés avec cette méthode ne sont pas dirigés pour trouver un résultat ou identifier des données en particulier.
Les algorithmes Apriori
Cet algorithme d’exploration de données cherche les affinités entre deux éléments d’un jeu de données afin d’identifier s’il y a une corrélation négative ou positive entre eux.
L’algorithme Apriori est très utilisé par les équipes commerciales qui cherchent à savoir quels produits un client va-t-il possiblement acquérir avec un autre. Si un pourcentage élevé de clients qui achètent du pain achètent aussi du beurre, alors l’algorithme peut conclure que l’achat du produit A (le pain) sera souvent suivi par celui du produit B (le beurre). Ces données peuvent être croisées dans des ensembles de données, des points de données et des ratios d’achat.
Un tel algorithme peut également déterminer que l’acquisition d’un élément A n’a de 10 % de changes de conduire de l’achat d’un produit C. Les équipes de marketing peuvent utiliser ces informations pour élaborer des stratégies d’agencement de produits dans un magasin, par exemple. Les algorithmes Apriori sont particulièrement appréciés par les géants du e-commerce tels qu’Amazon et Alibaba. Les éditeurs de moteur de recherche les utilisent pour prédire la prochaine requête d’un internaute, tandis que Netflix l’utilise comme un outil de recommandation du prochain contenu à regarder.
La répartition en K-moyennes (K-means)
L’algorithme K-means s’appuie sur une méthode itérative pour trier des points de données en groupes basés sur des caractéristiques similaires. Par exemple, un modèle de ce type classifierait les résultats Web du mot talisman en un groupe relatif à un objet disposant de vertus de protection et un autre au modèle de voiture produit par le groupe Renault, la berline Renault Talisman.
La répartition en K-moyennes a la réputation d’être précise, tout en étant capable de gérer des groupes de données en un laps de temps relativement court. Ce type d’algorithme est aussi bien utilisé par les éditeurs de moteur de recherche pour proposer des résultats pertinents ou par des entreprises qui veulent classifier les comportements des utilisateurs. Cette technique s’avère également efficace dans le contexte d’analyse de performances informatiques.
Les algorithmes d’apprentissage semi-supervisé
Les méthodes d’apprentissage semi-supervisé combinent données étiquetées et non étiquetées. Les algorithmes de ce type se nourrissent de certaines informations grâce à des catégories labélisées, des suggestions et des exemples. Ensuite, ils créent leurs propres labels en explorant les données par eux-mêmes, en suivant un schéma rudimentaire ou les indications de data scientists.
Réseaux antagonistes génératifs
Les réseaux antagonistes génératifs (generative adverserial networks ou GAN en anglais) sont des modèles qui imitent la distribution de données. Deux réseaux sont placés en compétition afin de déterminer la meilleure solution à un problème. Un des réseaux neuronaux, appelé générateur, se nourrit des données d’entrée pour générer une sortie passable, tandis que le second, le discriminateur, s’appuie sur la sortie du premier pour y repérer les défauts et l’améliorer. Ce processus est répété autant de fois que nécessaire pour trouver une réponse idéale à un problème.
Dans l’industrie, la fabrication de pièces est l’un des scénarios possibles, même si les informations en entrée sont limitées.
Un ingénieur indique les dimensions et les paramètres (ses données d’entrée) pour fabriquer la structure d’une pièce (le résultat) qu’il imprimera ensuite en trois dimensions. Ce procédé permet d’itérer jusqu’à trouver la forme, la structure ou encore les matériaux idéaux pour la mettre en production. Dans la production audiovisuelle (notamment dans l’industrie vidéoludique), cette technique permet de générer des visages, des objets ou des morceaux de musique.
Classificateur bayésien naïf
Le classificateur bayésien naïf (Naive Bayes) s’appuie sur le théorème de Bayes fondé sur les probabilités conditionnelles. Cet algorithme est utilisé par les chercheurs pour reconnaître des classes d’objets sur jeux de données étiquetés. Ensuite, l’algorithme est entraîné sur des données non étiquetées. Une fois ce cycle terminé, les chercheurs associent les étiquettes et relancent l’entraînement. Cette technique est particulièrement utilisée dans le cadre du traitement du langage naturel ou pour labéliser des jeux de données sans faire appel à des services comme Amazon Mechanical Turk. Certains éditeurs, dont TIBCO Software, utilisent la classification bayésienne naïve au sein de leurs produits (TIBCO Cloud Metadata).
Apprentissage par renforcement
Les algorithmes d’apprentissage par renforcement sont basés sur des systèmes de récompenses et de punitions. L’algorithme se voit assigner un objectif et cherche à s’en rapprocher pour obtenir une récompense maximale. Il se base sur des informations limitées et apprend de ses actions précédentes. Ces algorithmes peuvent dépendre d’un schéma (un modèle) ; ils doivent alors suivre des étapes prédéfinies et le nombre d’erreurs et d’essais est limité. D’autres ne se reposent pas sur un schéma et interprètent à chaque nouvel essai.
Q-Learning
Les algorithmes de Q-Learning cherchent à trouver la meilleure méthode (une politique optimale) pour atteindre un objectif défini en cherchant à obtenir un maximum de récompenses. Ils tentent le plus grand nombre d’actions possibles par état du système sans avoir de connaissance initiale de l’environnement. Un algorithme de ce type peut être construit pour obtenir rapidement des récompenses ou pour atteindre un objectif majeur.
Le Q-Learning est souvent associé à des modèles de Deep Learning dans le cadre de projets de recherche, dont ceux de Google DeepMind. Cette technique se décline ensuite en divers algorithmes, dont « deep deterministic policy gradient » (DDPG) ou « hindsight experience replay » (HER).
Algorithme basé sur un modèle (model-based)
À l’inverse du Q-Learning, les algorithmes basés sur un modèle ont une liberté limitée pour créer des états et des actions. Cela leur apporte néanmoins une efficacité statistique supérieure. Ils sont formés avec des données spécifiques et des actions de base en provenance de l’environnement via un entraînement supervisé. Cela permet en principe d’accélérer l’apprentissage. Un tel algorithme peut servir de référentiel dans le cadre du déploiement d’un jumeau numérique.
Il est possible de combiner cette méthode avec du Q Learning comme l’ont fait les chercheurs de DeepMind pour créer MuZero.