Trois exemples concrets d’algorithmes de Machine Learning
Découverte par affinité, la classification, le clustering sont autant de méthodes d’analyse des données qui s’adossent à des algorithmes de Machine Learning. Cet article en liste trois, ainsi que leur fonctionnement.
En matière de projets de Big Data, il existe une motivation première : la possibilité pour une entreprise de mettre en place un programme analytique avancé et d’améliorer l’opérationnel ou encore accroître les opportunités marketing et commerciales. Pour cela, les algorithmes de Machine Learning et l’automatisation sont arrivés sur le radar des entreprises pour justement les accompagner dans leurs analyses des Big Data.
Il faut dire que cet intérêt pour les techniques du Machine Learning est fortement lié à leur intégration dans les outils d’analytiques, facilitant au passage leur adoption et leur utilisation. Il est ainsi facile de se laisser porter par son enthousiasme sans vraiment comprendre ce que font ces algorithmes, pourquoi ils ont été conçus, sans parler des méthodes appliquées.
Voici 3 exemples de méthodes de Machine Learning qui décryptent les enjeux et la mécanique.
1 - La classification remet les données à leur place
Démarrons avec la classification. Son but premier est de formuler une prédiction en créant des classes distinctes dans un jeu de données. Les usages de cette méthode sont par exemple liés à la détection de spams, ou à l’analyse du risque dans le domaine de la santé. Pour le premier, après avoir scanné le texte d’un email, et tagguer certains mots et phrases, la « signature » du message peut être injectée dans un algorithme de classification pour déterminer si oui ou non il s’agit d’un spam. Dans le cas du second, les statistiques vitales d’un patient, son historique de santé, ces niveaux d’activités et les données démographiques peuvent être croisées pour attribuer une note (un niveau de risque) et évaluer la probabilité d’une maladie.
Une autre méthode de classification est l’arbre de décision. Cela est identique à un organigramme, qui fournit une séquence hiérarchisée de l’information. Des tests sont effectués sur plusieurs paramètres d’entités classées. Ces tests peuvent être un jeu de questions-réponses (oui-non) ou inclure un ensemble plus étendu de variables distinctes. A chaque étape d’un arbre de décision, ils sont appliqués aux données pour affiner la classification et ce, jusqu’à la racine de l’arbre, les entités étant enfin séparées dans différentes classes.
Un arbre de décision se construit en s’appuyant sur un algorithme de Machine Learning. Partant d’un ensemble pré-défini de classes, l’algorithme recherche de façon itérative les variables les plus différentes dans les entités classées. Une fois cela identifié, et les règnes de décision déterminées, le jeu de données est segmenté en plusieurs groupes selon ces règles. L’analyse de données est effectuée de façon récursive sur chaque sous-ensemble jusqu’à ce que toutes les règles clé de classification soient identifiées.
2 – Le clustering rassemble les données
Parmi les exemples de méthodes de ML, on peut aussi citer le clustering. L'objectif d'un algorithme d'analyse par cluster est de placer les entités dans un seul grand pool et de former des groupes plus petits qui partagent des caractéristiques similaires. Par exemple, une TV du câble qui veut déterminer la répartition démographique des téléspectateurs par réseaux peut le faire en créant des clusters à partir des données disponibles sur les abonnés et de ce qu'ils regardent. Une chaîne de restaurants peut quant à lui regrouper sa clientèle en fonction des menus choisis par emplacement géographique, puis modifier ses menus en conséquence.
En général, les algorithmes de clustering examinent un nombre défini de caractéristiques de données et mappent chaque entité de données à un point correspondant dans un graphique dimensionnel. Les algorithmes cherchent ensuite à regrouper les éléments en fonction de leur proximité relative les uns par rapport aux autres dans le graphique.
Un type couramment utilisé est l'algorithme de clustering k-moyennes (k-means en anglais). Ces algorithmes divisent un ensemble d'entités de données en groupes, k représentant le nombre de groupes créés. Les algorithmes affinent l'affectation d'entités à différents clusters en calculant itérativement le point médian ou centroïde moyen de chaque cluster. Les centroïdes deviennent les points focaux des itérations, qui affinent leurs emplacements dans le tracé et réassignent les entités de données pour les adapter aux nouveaux emplacements. Un algorithme se répète jusqu' à ce que les regroupements soient optimisés et que les centroïdes ne bougent plus.
3 – La recherche d’affinité pour nouer des relations
La recherche d’affinité est une autre approche pour découvrir et analyser des données où le Machine Learning joue un rôle. Cela permet d’établir des corrélations entre les attributs de données et traitement d’événements. Cela est par exemple utilisé par la grande distribution pour l’analyse de paniers. Il s’agit d’identifier les objets achetés dans le même panier ; un acteur du e-commerce pourrait utiliser ces résultats pour orienter le placement des produits sur son site.
La cyber-sécurité fait aussi usage de cette approche. Les transactions intervenues sur le réseau et qui précédent les attaques sont ainsi analysées pour identifier des patterns. Les événements qui y sont corrélés peuvent ensuite être utilisés pour créer des applications d’analyse prescriptive capables d’anticiper la même forme d’attaques.
L’un des principaux algorithmes utilisé pour l’analyse d’affinité est Apriori. Il recherche les corrélations – appelées règles d’association – parmi les attributs et leurs valeurs dans les enregistrements transactionnels des bases de données. Comme les autres algorithmes de cet article, Apriori fonctionne de façon itérative. A chaque étape, le nombre de variable augmente.
Pour découvrir des affinités, cet algorithme prend en compte 2 métriques : « support » qui divise le nombre d’enregistrements des bases de données avec certaines propriétés, par le nombre total d’enregistrements ; et « confiance » qui calcule la probabilité selon laquelle un enregistrement inclut l’une des propriétés définies s’il contient les autres.
Les corrélations avec ces deux mesures situées au-dessus d’un certain seuil sont identifiées comme des règles d’association : par exemple, « 95% du temps, quand un consommateur achète de la bière, il achète également des chips. » Une fois une itération finalisée, les enregistrements qui n’ont pas été pris en compte par les règles d’associations sont retirés, l’ensemble des variables est étendu et le processus reprend jusqu’à ce qu’aucune autre association ne soit détectée.
En plus de ces exemples, il existe de nombreux autres algorithmes qui peuvent être utilisés pour obtenir des résultats similaires. Ne vous arrêtez donc pas ici : la création d'un inventaire complet des algorithmes disponibles aidera vos Data Scientists et vos analystes à choisir les bonnes méthodes pour leurs applications analytiques.