Learn Statistics Through Practics LSTP Le Machine Learning: fondements et applications Qu’est ce que le Machine Learning ? Le "Machine Learning" (ou apprentissage automatique en français) est une science basée sur des méthodes statistiques et techniques informatiques qui consiste en la mise en place d’algorithmes en vue d’obtenir une analyse prédictive à partir de données. Même si le nom est en quelque sorte un "buzz word", le Machine Learning n’est pas une discipline nouvelle. Elle bénéficie surtout de la montée en puissance des Big Data qui lui donnent tout son sens. Quels changements de paradigme ? Avec cette nouvelle discipline, on s’intéresse davantage à la corrélation entre deux évènements plutôt qu’une causalité. L’idée est de "créer un programme qui crée un programme" au lieu de s’aventurer à définir des règles qui définissent avec certitude un événement. — l’évaluation qui permet de mesurer l’écart entre le modèle et la réalité des données de tests. — et l’optimisation qui vise à réduire cet écart Comme techniques et outils du Machine Learning, on distingue : Classification et Recherche (Clustering and Retrievel en anglais) Ces deux outils sont implémentés dans la plupart des applications et appareils que nous utilisons au quotidien. La recherche permet par exemple de fournir un ensemble de produits relatifs à un shopping ou encore de trouver une liste de personnes qui peuvent t’intéresser dans un réseau social. La classification, elle, peut aider à cette recherche, mais est plus utile pour la recherche automatique de groupes similaires d’un jeu de données. Ce sont des méthodes d’apprentissage non supervisé. Modèles utilisés :classification, plus proches voisins, Allocation de Dirichlet latente (Latent Dirichlet allocation (LDA)), etc. Algorithmes utilisés : K-means, KD-trees, Locality sensitive hashing (LSH), Expectation-maximization (EM), etc. Segmentation (classification en anglais) Les différentes techniques de Machine Learning L’implémentation d’une technique de Machine Learning se fait généralement en deux étapes : l’étape d’entraînement où l’on apprend sur une partie des données et l’étape de vérification où l’on teste sur l’autre partie restante. Plus spécifiquement, elle passe par trois phases : — la représentation qui consiste à trouver le modèle mathématique le plus adapté à la problématique Contrairement au Clustering, les classes d’appartenance des individus sont connues à priori. il s’agit donc de modéliser plusieurs groupes de données dans ces classes existantes et de trouver des règles de décision permettant d’affecter un nouveau individu statistique dans l’une de ces classes. Il s’agit d’une méthode d’apprentissage supervisé. Modèles utilisés : Classifieurs linéaires (regréssion logistique, Support vector machine (SVM), perceptron), arbres de décision, etc. Algorithmes utilisés : Algorithme du gradient stochastique, Boosting, etc. Le Machine Learning: fondements et applications — 2/3 Décomposition de matrice et modèle de réduction de dimension (matrix factorization and dimensionality reduction model en anglais) Ces techniques sont généralement utilisés par les sites de commerce (pour proposer aux clients les produits susceptibles de les intéresser) et par les réseaux sociaux (pour proposer aux utilisateurs de nouvelles relations). Dans le cas des systèmes de recommandation, on dispose de données sous la forme utilisateur × produit, avec potentiellement des millions d’utilisateurs et des centaines de milliers de produits. L’objet de ces techniques est de construire des matrices de factorisation et de mettre en place des modèles de facteurs latents pour la tâche de prédire de nouvelles relations utilisateur× produit. dernière est calculée en découpant d’abord les commentaires des clients en phrases, à regrouper les mots selon qu’ils soient positives ou non et en utilisant un classifieur linéaire pour attribuer des scores à chaque mot. La notation globale de ce restaurant sera la différence entre les scores positives et négatives, pondérés par les nombres de mots. A l’image de notre exemple, on suppose que seules deux appréciations sont données par les clients : affreux (awful) et génial (awsome). Modèles utilisés : Filtrage collaboratif(collaborative filtering) , décomposition de matrice (matrix factorization), analyse en composantes principales (ACP), etc. Algorithmes utilisés : Coordinate descent, décomposition en valeurs propres (Eigen decomposition), K-SVD, etc. Deep Learning Vous avez probablement entendu dire que le deep learning fait parler de lui à travers le monde comme l’une des techniques de machine learning les plus prometteuses. Beaucoup d’industries déploient maintenant leurs ressources afin de s’approprier du potentiel de cette technique, notamment pour la reconnaissance d’images, d’objets, la reconnaissance vocale, et de l’analyse textuelle. Cette technique innovante utilise les réseaux de neurones pour fournir des caractéristiques descriptives qui apportent d’impressionnantes performances à la classification et à la recherche d’objets. Elle requiert par contre un grand jeu de données pour avoir une meilleure précision. Une nouvelle approche "deep features" basée sur cette technique permet d’utiliser la technique du deep learning si l’on n’a pas beaucoup de données. Recherche documentaire Vous êtes en train de lire un article intéressant sur le sport et vous voulez trouver un article similaire à ce dernier. La similarité entre deux articles peut être mesurée de plusieurs façons : — en alignant les deux vecteurs contenant le nombre d’occurrences des mots présents dans chaque article et de faire la somme des produits des éléments des éléments de ce vecteur. Il faudra cependant normaliser les vecteurs avant pour se départir de l’effet taille des articles. Modèles utilisés : réseaux de neurones, etc. Quelques exemples d’application Analyse des sentiments Vous vous levez un beau jour et vous voulez aller manger des sushi dans un restaurant japonais. Vous vous dites d’un coup : "Tiens, qu’est ce que les clients disent sur les plats, sur l’ambiance ?". Vous regarderez sûrement la notation globale de ces caractéristiques. Cette — soit en priorisant juste les mots importants (mots très fréquents ou mots rares : arbitrage à faire). La représentation utilisée pour cette approche est appelée "TF-IDF (Term frequency – inverse document frequency) representation". Le Machine Learning: fondements et applications — 3/3 Utilisation du Machine Learning dans les grandes entreprises Le parcours sur l’ensemble des documents est effectué en utilisant un algorithme des plus proches voisins. On part de notre acticle sur le sport et on construit un indice de similarité pour chacune des articles de notre corpus documentaire. L’article le plus similaire à notre article de sport sera celui qui aura l’indice de similarité le plus grand. Recommandations de produits Vous achetez dans un site de vente en ligne une poussette pour votre bébé et on recommande à la fin de votre achat d’autres articles de bébé qui vont sûrement vous intéresser. Vous vous demandez ensuite : "Mais comment ils peuvent deviner mes préférences alors que je n’ai rien dit ?" Sachez juste que ces recommandations sont basées sur les paniers d’achats d’autres clients ayant acheté le même produit que vous. Le site de vente dispose , à travers les cookies, des historiques d’achats de tous les clients incluant le tien. Avec ces données on peut construire une matrice clients × produits dont les éléments sont les notes attribuées par les clients pour chaque produit. On se restreint aux clients qui ont acheté le même produit et on calcule des scores (notes pondérées par le nombre d’achats) pour les produits que ces clients ont acheté en même temps que la poussette et qu’ils ont apprécié. Les produits à recommander sont alors ceux ayant les scores les plus élevès. La plupart des entreprises innovantes se sont appropriées les techniques de machine learning et l’utilisent selon leur besoin : systèmes de recommandation pour les sites de vente en ligne et réseaux sociaux, reconnaissance vocale pour les géants de l’informatique et entreprises de téléphonie (Siri avec Apple, Cortana avec Microsoft), aide à la conduite assistée et autonome (ADAS) avec GeoHotz. Références [1] [2] www.coursera.org. Machine Learning, Université de Washinghton. www.coursera.org. Machine Learning, Université de Stanford.