LES 3 TECHNIQUES DE L'INTELLIGENCE ARTIFICIELLE

MOTEURS DE RÉGLES

La première technique de l’IA n’est ni plus ni moins que les moteurs de règles tels que nous les connaissons ”Si… Alors … Sinon …”. Les moteurs de règles permettent de séparer les données et les traitements, de centraliser, tout en rendant accessible la gestion de connaissances afin d’établir des règles intelligibles et applicables pour l’Homme. Néanmoins le moteur de règles n’apprend pas de lui-même, il ne pourra ni générer ses propres règles, ni les adapter à son environnement. À l’instar de la programmation, son comportement est déterminé par un développeur qui établit les règles, on le dit déterministe.

LE MACHINE LEARNING

Avez-vous déjà réfléchi au fait d’associer les chaussures aux semelles rouges automatiquement à la marque Louboutin ? Pourtant d’autres marques de chaussures peuvent en commercialiser, mais instinctivement, vous pensez au Louboutin et en aucun cas vous ne pensez à un autre modèle de chaussure ? C’est tout simplement notre cerveau qui a créé son propre modèle statistique de chaussures à la semelle rouge après les avoir vues à plusieurs reprises en les associant à la marque Louboutin. Nous généralisons ce que nous avons observé ou appris lors de nos différentes expériences. Ce processus s’appelle “le raisonnement par analyse statistique”. Après avoir programmé la machine de façon dite “déterministe” au travers des moteurs de règles, nous pouvons fournir un nombre d’exemples à l’ordinateur. Il sera en capacité de nous proposer une compréhension statistique par le biais d’une fonction qu’il créera. Il sera en mesure de généraliser à l’instar de l’humain. C’est ce que nous appelons le Machine Learning. Autrement dit, c’est “une technique qui rend possible la généralisation d’un raisonnement à partir d’exemple sans qu’il soit nécessaire de s’appuyer sur une équation prédéterminée en tant que modèle.” Ces machines font appel à des processus créant leur propre fonction et étant en capacité de s’adapter, tout en s’enrichissant au fur et à mesure des données disponibles. 

Pour illustrer le machine learning, partons sur l’exemple d’un commercial chez un concessionnaire de voiture. Ayant acquis une certaine expérience, il est en mesure d’estimer une fourchette de prix pour une voiture avec des critères précis (consommation, marque, puissance, places assises) lors d’un échange avec un client. Intuitivement, il a établi un modèle à partir d’une base de données qu’il a acquis durant cet apprentissage. Une fonction s’est créée dans le cerveau du commercial, lui permettant d’estimer un prix du bien avec une faible marge d’erreur. Il a donc généralisé, à partir de sa base d’informations, afin d’en déduire un résultat avec des données d’entrées. Une fois cet apprentissage réalisé, nous obtenons un modèle qui est basé sur le raisonnement humain, soit le processus de l’IA.

Le paramètre le plus important et à ne pas négliger, est le taux d’erreur d’un modèle. Ce taux d’erreur dépend de la qualité des données d’entrée et du jeu d’apprentissage. Prenons l’exemple d’un enfant, il lui faut en moyenne avoir vu 4 fois un zèbre et un cheval pour pouvoir les différencier. Il en va de même pour les algorithmes du machine learning, plus le nombre de données est important et de qualité, moins le taux d’erreur sera élevé. « Il faut 1 million de photos de chats pour qu’un algorithme reconnaisse un chat avec un taux d’erreur de 3%  ». À cette notion de jeu d’apprentissage, s’ajoute la notion de biais des jeux d’apprentissage. Prenons l’exemple de l’accident de la voiture autonome ayant coûté la vie à une personne suite à un rail déformé en 2018. L’algorithme n’avait pas pris en compte qu’un rail pouvait effectivement être déformé. La base de données du modèle  n’avait pas répertorié toutes les possibilités pouvant être rencontrées lors d’un trajet en voiture.

LES DIFFÉRENTS tYPES D'APPRENTISSAGES DU MACHINE LEARNING

Une distinction est à faire en machine learning entre l’apprentissage supervisé et non supervisé. Pour comprendre la différence, supposons que nous avons une nouvelle base de photos à catégoriser et que nous disposons de données d’exemple (training set) pour entraîner le modèle. Lors de l’apprentissage supervisé, nous aurons nos données d’entrées (les photos) et en données de sortie (les catégories des photos). Nous allons récupérer des données dites annotées de leurs sorties afin d’entraîner le modèle. Autrement dit nous souhaitons que l’algorithme soit en capacité de catégoriser les nouvelles données non annotées dans leur classes cibles. En apprentissage non supervisé, les données d’entrées ne sont pas annotées. L’algorithme trouvera seul les similarités et les distinctions au sein des photos. Il devra regrouper ensemble, les photos partageant le plus de caractéristiques communes. Autrement dit l’algorithme doit comprendre par lui-même, la structure de la donnée en entrée (x) sans avoir de sortie (y) correspondante. Les algorithmes non supervisés se distinguent généralement en deux sous catégories : clustering (regrouper les données similaires par des ensembles) et association (création de règle regroupant les plus larges portions de données). L’apprentissage non-supervisé sera généralement utiliser pour mieux comprendre le dataset ou afin d’identifier des comportements intéressants. Il existe un autre type d’apprentissages utilisant plusieurs couches de réseau de neurones : l’apprentissage par renforcement. Il s’apparente à la psychologie comportementale. Elle est similaire à la façon dont un enfant apprend des nouvelles notions. La différence avec les autres typologies d’algorithmes, c’est qu’il ne reçoit aucune instruction et il doit trouver seul la solution. Lors des jeux d’apprentissage, l’algorithme recevra des récompenses si sa prédiction est juste à contrario, il recevra des pénalités si sa prédiction est fausse. Il apprendra donc de sa propre expérience pour affiner ses capacités de prédiction.

Le machine learning entraîne un algorithme et se base sur des exemples (phase d’apprentissage) avec comme but la construction du modèle prédictif. L’objectif est d’être en mesure de déterminer le lien entre les données en sortie (souhait) et en entrée (données du data set). Plus simplement, le machine learning est comparable à la fonction affine par exemple. Pour parvenir à l’objectif, l’algorithme va construire une fonction F(X) = aX. Par la phase d’apprentissage, il va faire varier “ a “ pour trouver sa bonne valeur. Supposons que a = 4, le modèle prédictif est en capacité de déterminer que si X = 3, F(3) = 12. 

Ces différents types d’apprentissages permettent au machine learning de posséder d’un large champ d’applications et de possibilités. Néanmoins, il existe une dérivée du machine learning, appelé communément l’apprentissage profond. 

LE DEEP LEARNING

Si aujourd’hui il est possible de parler à Siri pour lui demander de programmer votre prochaine réunion, demander un rappel sur une tâche, indiquer votre retard à une réunion, c’est en partie grâce au deep learning. Il est évident qu’un humain dans son métier, absorbe un certain nombre d’informations qu’il amène à son cerveau pour être traité dans le but d’apporter des solutions à une problématique. Ces informations ne peuvent pas rester intactes, sinon il n’y a aucun sens à lire un brief si nous ne comprenons pas le contenu. À partir d’une masse de données en entrée, le deep learning va permettre une compréhension de concepts complexes. En effet, l’enjeu majeur pour le deep learning reste la capacité à être convenablement entraîné et à avoir à disposition un nombre infini de données donc d’exemples pour parfaire le modèle devant être construit. Cette sous-catégorie du machine learning, est souvent comparée à ce terme très réducteur d’ “une représentation d’un réseau de neurones d’un cerveau humain”. Comme le dit Yann Le Cun, « c’est un abus de langage que de parler de neurones ! De la même façon qu’on parle d’aile pour un avion mais aussi pour un oiseau, le neurone artificiel est un modèle extrêmement simplifié de la réalité biologique, il en va de même pour un réseau de neurones humains et artificiels » . Le Deep Learning utilise un milliard de couches de neurones pour le déverrouillage de votre Iphone via la reconnaissance faciale. Il est composé de plusieurs couches de neurones artificiels qui vont au préalable, reconnaître la forme géométrique, puis une deuxième couche reconnaissant les composants de votre visage. La suivante permet d’identifier le sexe de la personne pour ainsi atteindre le résultat souhaité en prenant la décision de  déverrouiller, ou non votre Iphone. L’empilement de ces couches de neurones permet progressivement de faire évoluer le concept à partir de la donnée d’entrée par un apprentissage automatique approfondi. 

Pour résumer et illustrer ce qu’est un réseau de neurones et comment fonctionnent-ils, prenons un exemple concret et cherchons à créer un algorithme exprimant le temps qu’il fait dans une journée. Il faut lui fournir un certain nombre de données en entrée : pression atmosphérique, hygrométrie, température et la vitesse du vent. Pour modéliser ces relations complexes, il nous faut utiliser plusieurs couches de neurones. Le deep learning peut utiliser un nombre infini de couches de neurones afin de trouver par exemple des relations là où l’humain ne serait pas en capacité de le faire. Pour illustrer le fonctionnement d’un neurone et des couches de neurones, ce réseau de neurone n’aura que deux couches, il sera donc extrêmement simple.

Chacune des étapes est représentée pas une couche de neurone. Un neurone va recevoir plusieurs informations et chacune sera analysée, pondérée et le neurone renvoit une réponse binaire 0 ou 1. Autrement dit ici : chaud (1) et froid (0). Par la suite, cette réponse va alimenter le neurone suivant dans le réseau, qui lui-même transmettra une réponse binaire et ainsi de suite jusqu’au dernier neurone du réseau. Lors de l’apprentissage approfondi, à chacune des étapes, les mauvaises réponses sont éliminées et renvoyées vers les étapes en amont afin d’ajuster le modèle. Progressivement, le modèle réorganise les informations en blocs plus complexes. 

Nombreuses sont les applications possibles à partir du machine learning et du deep Learning pouvant être mises à profit des entreprises.

DÉFINITION DES OUTILS IA

Voici une brève explication de chacun des outils existants et fréquemment utilisés :

le Natural Language Processing (NLP) :  est un ensemble de solutions permettant d’interpréter les requêtes d’un utilisateur et d’activer la possibilité de répondre à sa demande. Pour construire un assistant conversationnel, la parole doit être traitée en utilisant des modélisations statistiques ou des combinaisons de règle. Le Natural Language Understanding (NLU) permet de prendre un texte en langage naturel et de le décrypter. Chaque phrase transmise par l’utilisateur sera étudiée selon différents processus permettant d’en extraire le sens, le concept afin d’y répondre.

Classification : modèle algorithmique de catégorisation de données

Clustering : méthode d’analyse statistique pouvant être utilisée afin d’organiser des données en des silos homogènes. Un milliard de données peut être regroupé selon des caractéristiques communes identifiées via l’algorithme. 

Régression : elle modélise la relation entre des variables cibles et des variables prédictives. Autrement dit une prédiction se fait sur une nouvelle observation. 

Computer Vision : la vision par ordinateur est utilisé dans le traitement d’image pour élaborer un modèle de reconnaissance d’image efficace.

SCHÉMA BILAN

Laisser un commentaire

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