Facebook EmaiInACirclel
Cloud – big data

Démystifier le machine learning (1/3)

PentaGuy
PentaGuy
Blogger

L’idée de pondre ce petit papier m’est venue, comme souvent, de discussions à bâtons rompus à l’heure du déjeuner. Sans être un spécialiste de la question, je pratique le Machine Learning (apprentissage automatique dans la langue de Molière) et en manipule les outils.

Et il y a une chose que l’application opérationnelle du Machine Learning m’a appris : il n’y a pas grand-chose d’intelligent là-dedans et on a tort de considérer cette approche particulière comme de l’Intelligence Artificielle (IA). On pourrait éventuellement dire la même chose de toutes les approches quantitatives de manipulation des données, Data Mining, analyse statistique, etc.

Vous voulez implémenter un projet d’IA ? Contactez-nous

Quelle est la finalité du Machine Learning ? Obtenir des modèles. Qu’entend-on par « modèle » ?
Une description abstraite et imparfaite d’une réalité concrète mais suffisante au premier ordre pour faire des propositions sur cette réalité, que ces propositions soient des assertions (une propriété est vraie) ou des prédictions (une propriété sera vraie dans le futur).

On est loin de l’IA

L’analyse de données n’a jamais eu d’autre but, et comme le Machine Learning, n’en est qu’une technique parmi d’autres, il est faux et vain de penser qu’il puisse s’agir d’autre chose.
Mais alors, qu’en est-il de l’IA ? « Much ado for nothing » comme aurait dit le Barde.

Loin de sa version forte (émuler une conscience artificielle), ce que l’on considère comme de l’IA est l’émulation (ou l’imitation) de fonctions cognitives spécifiques et pas forcément celles réservées aux humains.

On peut aussi remarquer que le mot « intelligence » est polysémique en anglais. Il peut aussi bien dire « intelligence » au sens « d’entendement » comme en français mais il veut aussi dire « renseignement » comme dans Intelligence Service. Et c’est là que ma définition de modèle prend tout son sens puisque qu’est-ce que faire des assertions ou des prédictions à partir d’un modèle si ce n’est faire du « renseignement » : deviner des intentions à partir de faits épars en déterminant des liens et des connexions entre eux.

Ceci étant posé, nous allons donc abandonner l’hystérie et la hype autour de ce que tout le monde pense être l’Intelligence Artificielle et qui confine bien souvent au délire technologique pour se limiter à l’aide que peut apporter cette discipline pour la représentation et l’explication de la réalité et qui en fait donc une science (d’où croyez-vous que les Data Scientists tirent leur dénomination ?).

 Machine Learning

Quelle est la finalité du Machine Learning ? En quoi diffère-t’il des techniques d’analyse de données ? Contactez nos Data Scientists.

Je vais me restreindre dans cet article au fonctionnement général du Machine Learning (ML) en tant qu’approche technique et montrer en quoi il diffère d’autres techniques d’analyse des données. Dans un deuxième article, je vais traiter des algorithmes plus en détail et, enfin, dans une dernière partie à paraître également dans un article distinct, je vais parler des outils concrets que l’on peut employer pour les applications du ML.

Classification et regroupement

Le ML et, par extension, l’IA, beaucoup en parlent mais peu pratiquent et appliquent. Pourtant il s’agit d’une approche assez ancienne mais qui est demeurée une curiosité de laboratoire tant que, d’une, les ressources en calcul restaient insuffisantes (oui, les algorithmes sont gourmands) et, de deux, les données étaient rares, chères et peu disponibles. Bien évidemment, tout cela a changé et le ML a ressuscité et s’est développé.

A la base, le Machine Learning sert à deux choses et exclusivement à deux choses : classifier des observations ou regrouper des observations. Expliquons.

Une observation est un fait représenté par une ligne de données avec ses colonnes et des valeurs. C’est du jargon de statisticien mais il faut bien appeler un chat un chat.

Quand on a un certain nombre d’observations, on est tenté de voir si certaines sont plus ou moins similaires à d’autres ou s’il est possible de leur apposer des étiquettes.

Par exemple, considérons un message de courrier électronique, on peut lui apposer l’une ou l’autre de ces étiquettes : spam ou non-spam. Eh bien, le ML permet de le déterminer (et c’est d’ailleurs l’approche de base de tout logiciel anti-spam un peu sérieux). Dans des cas plus complexes, les étiquettes sont plus nombreuses et, plus complexe encore, chaque observation peut être étiquetée plusieurs fois. Ces problèmes sont des problèmes dits de « classification supervisée », supervisée car la liste des étiquettes possibles est une donnée d’entrée du problème. Le cas de « classification non-supervisée », appelée aussi « regroupement » ou « clustering » est différent. Cette fois-ci, on va chercher les différentes manières de regrouper les observations en séparant les plus semblables des autres (d’où le terme de clustering en anglais). Cela permet d’identifier des catégories potentielles pour préparer une classification supervisée ou d’identifier des observations aberrantes (outliers).

Second exemple, une approche ancienne de Data Mining (à l’époque où on appelait les choses par leur nom mais c’était déjà du ML) consiste à détecter les comportements frauduleux d’utilisateurs de services de téléphonie mobile (ou de services bancaires). Une fois les valeurs aberrantes détectées et correctement classifiées après enquête sur le terrain, il était possible d’obtenir un modèle de classification binaire : fraudeur, non-fraudeur.

L’exemple classique de classification est certainement la régression linéaire que n’importe quel étudiant dans une filière comportant des maths appliquées doit maîtriser. On part d’un ensemble d’observations caractérisées par des variables. On cherche à expliquer la valeur d’une de ces variables (variable à expliquer) en fonction de toutes les autres (variables explicatives) en se donnant pour hypothèse que la relation entre les variables est une fonction linéaire caractérisée simplement par autant de coefficients à déterminer que de variables observées plus un.

Il s’agit d’un problème d’algèbre linéaire très simple et plusieurs algorithmes existent qui possèdent un principe commun : ils cherchent à minimiser une certaine valeur pour laquelle l’écart entre la valeur de la fonction (la valeur prédite) et la variable à expliquer est le plus faible.

C’est un exemple de l’équivalence qui existe entre un problème de décision, quelles valeurs de coefficients conviennent le mieux et un problème d’optimisation (comment minimiser ou maximiser une quantité).

Cette dualité se retrouve dans toutes les applications du ML (et du Data Mining en général).

L’apprentissage du Machine Learning n’est qu’une métaphore

Mais pourquoi parle-t-on « d’entraînement » ? C’est avant tout une métaphore, comme le terme « d’apprentissage automatique » en est une également. L’idée est d’itérer un certain algorithme d’optimisation sur un jeu d’observations qui est l’ensemble d’entraînement de manière à produire le modèle. Dans le cas de l’exemple de la régression linéaire, le modèle est constitué par les coefficients de la fonction linéaire recherchée. Une fois cette étape accomplie, on vérifie l’adéquation du modèle par des tests de classification sur des observations d’un autre ensemble d’observations, le jeu d’essai. Naturellement, on ne teste pas le modèle avec les observations qui ont servi à l’entraîner car, que le modèle soit déterministe ou probabiliste, on est sûr que le modèle « collera » à ces observations puisqu’il en est issu !

Tout l’art de la démarche qui reste assez empirique à cette étape est de choisir des bons ensembles d’entraînement et de tests.

Une autre difficulté de la démarche du Data Scientist qui reste également empirique est le choix des algorithmes d’entraînement et d’optimisation, choix qui dépend du type des variables observées et expliquées, des caractéristiques statistiques de l’ensemble d’entraînement et du résultat à obtenir, aspects passionnants que j’évoquerai dans le deuxième article.

Vous avez une réflexion autour d’un projet d’Intelligence Artificielle ou un projet Big Data à démarrer, mais vous ne disposez pas des ressources nécessaires ? Contactez-nous

Consultez également :

Pas d’UE sans IA

L’Intelligence Artificielle appliquée

Le Deep Learning


Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *