L’intelligence artificielle

Lorsque l’on parle d’intelligence artificielle de nos jours, on évoque essentiellement deux notions : le « Machine Learning » et le « Deep Learning ».

Il existe une différence de positionnement notable entre le monde académique et le monde des affaires. Pour les universitaires le Machine Learning recouvre toutes les notions et inclut de fait le Deep Learning. Il s’agit pour eux de désigner le domaine des machines à apprentissage. Tandis que les industriels qui souhaitent se différencier les uns des autres considèrent que puisque le Deep Learning est « mieux » que le Machine Learning ils constituent deux domaines disjoints.

L’apprentissage supervisé

Le Machine Learning tel que définit plus haut regroupe essentiellement deux techniques : la catégorisation automatique ou classification, et la régression. Le plus souvent quand on parle de régression il s’agit de régression linéaire.

Dans les deux cas ce sont des techniques d’apprentissage supervisé. Le terme Machine Learning donne l’impression qu’il s’agit de techniques nouvelles mais il n’en est rien. Il y a plus de 40 ans étudiant dans les locaux de Centrale Marseille, je faisais déjà de la classification et de la régression. J’ai par exemple trié des milliers de plastiques selon leurs propriétés physiques et chimiques pour le compte de la smac via notre junior entreprise. La technique n’a pas changé, elle constitue toujours à annoter des données pour donner des exemples à la machine, laquelle les apprend, elle forme des catégories puis elle traite les données suivantes pour les placer dans les catégories identifiées par un calcul de proximité plus ou moins complexe. Bien sûr, les outils ont progressé, les algorithmes sont disponibles en ligne mais les principes demeurent.

L’apprentissage non supervisé

Il est apparu par opposition avec l’apprentissage supervisé pour désigner des techniques qui ne nécessitent pas d’annoter les données. L’annotation est un travail souvent très lourd, il est normal que l’on ait cherché à s’en dispenser.

Ces techniques sont basées essentiellement sur des heuristiques. Ces heuristiques sont le fruit d’observations ou d’analogies effectuées en observant la nature. Elles donnent lieu à la conception de modèles autonomes. Ces heuristiques sont par principe non démontrées, leur mise en œuvre repose donc sur la confiance qu’on apporte à leur conception et à la définition de leur domaine d’application. En résumé on constate que ça marche et on l’applique là où on a constaté que ça marchait.

De fait, lorsqu’une problématique apparait, il n’est pas certain que l’on trouve une heuristique pour la résoudre. Le fonctionnement est souvent inverse, nous disposons d’heuristiques avec lesquelles un certain nombre de problématiques pourront être résolues.

C’est notamment le cas avec la « cognitive automation » qui est apparue suite aux travaux menés chez IBM dans le projet « Watson ». Il s’agit d’une innovation basée sur des heuristiques qui matérialisent certaines techniques mise en œuvre par des êtres humains lors de l’interprétation d’un message en langage naturel.

La « cognitive automation » ouvre la porte à l’exploitation des heuristiques basés sur l’observation des êtres humains et de leurs raisonnements.

L’apprentissage profond

Le Deep Learning, ou apprentissage profond, est essentiellement basé sur les réseaux neuronaux. Un réseau de neurones est un ensemble de cellules effectuant des calculs simples en se basant sur les cellules voisines, il est ainsi possible de construire rapidement des transformations des données. Ces transformations peuvent etre non linéaires ce qui ouvre un champ d’investigation très important. Une fois transformées, les données subissent des techniques d’apprentissage plus traditionnelles.

Une fois encore la notion de Deep Learning fait croire à des techniques modernes, mais les réseaux neuronaux sont exploités depuis le milieu des années 80, notamment les réseaux bayésiens, les chaines de Markov, les cartes autodescriptives de Kohonen sont des techniques anciennes que nous manipulions déjà régulièrement il y a 35 ans.

Les progrès enregistrés plus récemment dans le domaine du Deep Learning consistent en l’introduction d’une couche composée de fonctions de convolution. La convolution permet d’augmenter la capacité discriminante des réseaux de neurones dits « CNN ». Bien sur les fonctions de convolution ont déjà près de deux siècles d’existence, mais leur application dans un réseau de neurone date de l’émergence des réseaux sociaux il y a 20 ans, lesquels ont nécessité plus de discrimination que ne pouvaient en apporter les réseaux neuronaux traditionnels.

La limitation de l’apprentissage

On le voit, la notion d’apprentissage, qu’il soit supervisé, non supervisé ou profond, n’a aucune commune mesure avec l’apprentissage tel que le pratique l’homme. En effet, l’enfant à l’école, l’étudiant à l’université, l’adulte dans son métier apprennent tous les jours en continu. A contrario, les systèmes d’intelligence artificielle apprennent dans une phase que l’on nomme « entrainement du modèle » puis ne font qu’appliquer ensuite le modèle appris, sans aucune évolution. Bien sûr il est possible de renouveler la phase d’entrainement sur de nouvelles données préparées pour l’occasion et ainsi reproduire un cycle, mais cela se fait avec une opération humaine.

L’apprentissage est souvent une phase lourde et couteuse.

En apprentissage supervisé il est nécessaire d’annoter les données. Cette activité consiste par exemple à disposer de données représentées par un tableau et de leur adjoindre, après les avoir soigneusement sélectionnées, une autre colonne avec une catégorie. Prenons pour exemple 5 catégories A, B, C, D et E. Une fois ces exemples fournis et suffisamment variés dans les différentes catégories, l’algorithme sera en mesure à la réception d’une nouvelle ligne de prédire la catégorie à laquelle elle appartient en faisant un simple calcul de distance avec le centre de gravité correspondant à chaque catégorie que l’on a donné à apprendre. Le nouveau point sera plus proche par exemple de D.

Mais la machine ne peut utiliser que ce qu’on lui a appris, de A à E, il n’y a aucun moyen pour qu’elle détecte une nouvelle catégorie F. Tout ce qui n’a pas été présenté avec suffisamment de richesse ne sera pas appris et donc ne sera pas proposé par la machine.

En apprentissage profond, pour qu’un réseau de neurone classifie automatiquement des photos de chats il faut lui préparer des millions de photos avec une annotation « chat » et « pas-chat ». Et ce n’est qu’à ce prix que l’algorithme sera performant. Il sera alors capable de produire toute une variété de catégories de chats mais attention, celles-ci n’ont rien à voir avec les catégories que ferait un humain, le réseau neuronal séparera les chats selon des critères qui ne nous sont pas familiers (pour simplifier disons les chats assis, debout et couchés par exemple).

En apprentissage non supervisé, l’intelligence communiquée à la machine se fait via l’heuristique choisi. Cela parait plus facile mais il aura été nécessaire de conduire des milliers d’heures d’observation des phénomènes et de modélisation pour créer une heuristique pour laquelle un niveau de confiance suffisant peut etre accordé.

L’intelligence de l’IA

En IA l’intelligence n’est pas dans l’IA mais dans le cerveau de son concepteur. Ici aussi existe un écart important entre la vision du grand public qui rapproche l’IA de l’intelligence humaine et les capacités réelles des machines dites intelligentes. La confusion trouve sa source une fois de plus dans la terminologie américaine. En effet « intelligence » se traduit par « renseignement ». Une IA est donc une machine capable de faire émerger des renseignements de façon automatique. C’est le cas pour l’apprentissage supervisé lorsqu’il s’agit de prédire une catégorie par exemple, pour l’apprentissage profond lorsqu’il s’agit de classifier une photo de chat. Mais ceci n’a rien en commun avec l’intelligence humaine, créative par nature.

Si l’on fait le tour des techniques que l’on incorpore sous le vocable IA, on trouve :

  • Les moteurs de règles. Les règles sont établies par le concepteur, le moteur les applique partout ou leur domaine d’application est couvert
  • Les arbres de décision qui servent à produire des bots, des agents conversationnels par exemple. Les arbres sont produits par un expert du métier et le bot les applique sans s’en écarter
  • Les classifieurs à la base du Machine Learning sont entrainés par des experts qui ont annotés des données de référence, là aussi l’intelligence est chez eux
  • Les réseaux de neurones qui sont entrainés avec des séries conséquentes de cas traités par des êtres humains pour les discriminer, l’intelligence ici encore est chez eux
  • Le cognitive automation qui repose principalement sur des heuristiques, l’intelligence réside chez les concepteurs des modèles heuristiques

Donc dans tous les cas, le curseur qui définit la part de l’intelligence de la machine et du concepteur est en faveur du concepteur. Mais si le terme d’intelligence tel que les latins l’emploient n’est pas pris en charge par la technologie, celle-ci reste néanmoins très performante et utile pour résoudre nombre de problématiques. Il faut seulement bien comprendre la problématique et savoir si la technologie peut à elle seule y répondre.

Les biais de l’IA

Nous avons vu que l’IA héritait des biais du big data à savoir l’absence ou la limitation de réflexions sur la représentativité des données et sur les incertitudes portées par les données. Mais d’autres biais sont liés à l’absence de réflexion sur la nature des problématiques à résoudre.

Pour les découvrir, il faut déjà faire un point sur les épistémologies. Une épistémologie regroupe un ensemble de concepts scientifiques présentant une certaine cohérence.

Parmi les problématiques que nous avons à résoudre en informatique, trois épistémologies sont concernées selon que la problématique relève de :

  • La technique : on choisira dans ce cas une épistémologie hypothético-déductive, souvent dite « cartésienne »
  • La nature ou la société : on aura recours à une épistémologie systémique
  • L’homme en tant qu’individu spécifique : on préférera l’épistémologie constructiviste

Derrière cette vision scientifique, se cache une réalité, qui si elle n’est pas prise en compte peut conduire à de véritables catastrophes.

Le cartésianisme

Le raisonnement cartésien repose sur la notion de relation de cause à effet. On dit par exemple :

  • Les mêmes causes produisent les mêmes effets
  • Si A est la cause de B et B la cause de A alors A = B.

Ce raisonnement cartésien est à la base des progrès scientifiques et techniques que nous avons connus depuis plusieurs siècles. Il est rigoureux et se base sur des principes démontrés et solides. On démontre un nouveau principe en s’appuyant sur des principes démontrés. Ainsi de proche en proche, on peut progresser avec certitude.

Toutefois Karl Popper l’a amendé pour tenir compte d’un fait très gênant. Prenons par exemple le principe copernicien expliquant la rotation des planètes autour du soleil. Ce principe a été démontré et accepté de tous, jusqu’au jour ou Newton a émis le principe de gravitation universelle. Avant on disait que Copernic avait raison puis après on disait qu’il avait tort. Tout ce qui a été démontré après Copernic et avant Newton était donc à revoir. Puis ce fut le tour de Newton de se faire détrôner par le principe de la relativité d’Einstein. Et ainsi de suite.

Karl Popper a résolu le problème dans son ouvrage « conjectures et réfutations » par le fait qu’un principe admis ne constitue selon lui qu’une conjecture que l’on cherchera à réfuter sous la forme d’une confrontation par ses pairs, et si elle résiste on l’adoptera jusqu’à ce qu’une nouvelle conjecture offrant un meilleur bénéfice vienne la réfuter.

De fait Karl Popper réfute Descartes. Et pourtant 50 ans plus tard nombre d’ingénieurs continuent à appliquer Descartes, à croire au cartésianisme. Qui emploie le terme de Popperisme ?

La systémique

La nature est systémique, la société est systémique, elles ne sont pas cartésiennes. A toute action, dans la nature ou dans la société, il y a réaction. La problématique ne peut pas etre extraite de son contexte. Oublier cela c’est créer une loi qui sera contournée dès son application, produire des sacs plastiques sans se soucier de leur impact sur l’environnement, mentir en croyant que personne ne s’en apercevra, etc. Malheureusement les médias n’emploient le terme systémique que pour décrire des catastrophes tel que l’effet systémique d’une crise financière, mais il y a autant d’effets positifs que d’effets négatifs. Par exemple un vaccin fait réagir le système immunitaire pour se protéger.

En systémique la relation de cause à effet n’existe pas. L’œuf implique la poule et la poule implique l’œuf mais l’œuf n’est pas égal à la poule. Une même poule produit des œufs semblables mais un peu différents les uns des autres.

L’homme est habitué à fonctionner dans un environnement systémique, il sait que l’environnement réagira à ses actions, il anticipe les réactions de l’environnement. On dit que gouverner c’est prévoir. En IA aussi la réponse de la machine produit une réaction que la machine doit anticiper si elle veut etre performante. Croire qu’il existe toujours une relation de cause à effet et faire abstraction des effets induits sont deux sources de déconvenues.

Le constructivisme

Lorsque l’on étudie l’homme sous l’angle de la psychologie cognitive, on s’aperçoit très vite que chaque être humain raisonne dans un référentiel qui lui est propre, que tous ces référentiels sont différents entre eux, qu’ils sont différents du notre. Lorsque nous nous adressons à quelqu’un, nous ajustons notre discours au référentiel de notre interlocuteur, nous nous adaptons à ses raisonnements soit pour les affirmer soit pour les contester, mais dans tous les cas nous devons les identifier et les prendre en compte.

Créer une machine capable de comprendre l’individu et d’opérer un diagnostic afin de le conseiller, l’orienter ou anticiper ses réactions nécessite d’intégrer les concepts du constructivisme et donc de produire un modèle décrivant le référentiel de chaque individu et non un modèle générique applicable au plus grand nombre.

Les biais de l’IA

Les informaticiens ont été formés essentiellement à la technique et ont évolué dans un milieu très cartésien. Très peu se sont formés à la systémique et encore moins au constructivisme. De fait leurs produits sont souvent construits à leur image et sont basés sur un modèle universel applicable au plus grand nombre. Ce modèle est acceptable si l’on doit traiter d’une problématique technique telle que la qualité des sons lors d’un enregistrement, ou le dépannage d’un téléviseur, mais pour des problématiques de santé, de transport, de fraude, d’enseignement, de recrutement, partout où la nature, la société ou l’individu interviennent ces techniques négligent de fait :

  • L’incertitude sur les données reçues
  • La non-représentativité et donc les limites de leur modèle
  • Les effets systémiques de la prise de décision effectuée par leurs IA
  • La personnalité de chaque individu confronté à leurs IA

Ces 4 biais font que bien des IA produisent des faux positifs qui malheureusement ne sont pas toujours détectés ou sont détectés trop tardivement.

Jean Pierre MALLE