Comment fonctionne l’IA ?

Maintenant que savez définir ce qu’est une Intelligence Artificielle il est temps de se pencher sur le fonctionnement de l’IA, nous ne rentrerons pas dans des détails trop techniques pas d’inquiètude.

Image avec écrit machine learning

Les ingénieurs et chercheurs en programmation se sont fortement inspirés du processus de mémorisation du cerveau humain pour concevoir les algorithmes.

 

De la même manière qu’ont été conçues les avions à partir des oiseaux. Malgré sa complexité apparente, l’IA n’est en réalité qu’une succession d’opérations mathématiques toutes simples : additions, multiplications et divisions. Car l’intelligence artificielle, ce n’est ni plus ni moins que l’automatisation de calculs de probabilités que nous pourrions faire à la main.

En effet, les premières applications utilisées par exemple pour la conception de jeux comme le morpion, ou les robots des jeux vidéos sont simplement des algorithmes entièrement conditionné par des programmeurs avec des conditions (if), mais leur utilisation est toutefois très limité.

 

C’est là qu’est apparu deux sous-domaines de l’IA : le Machine Learning et le Deep Learning qui ont une conception bien plus élaboré. Ne vous y trompez pas. On peut lire sur la toile énormément d’articles qui parlent d’IA en mélangeant ces deux concepts, qui sont pourtant bien différents.

Différence entre Machine Learning et Deep Learning

Machine learning :

 

L’apprentissage automatique, ou « machine learning » désigne le perfectionnement de l’apprentissage d’une machine dans ses tâches grâce à la répétition d’une expérience (à l’aide de données) . Entre autre un programme qui ne sait rien faire ou pas grand chose mais qui va apprendre et s’améliorer avec l’expérience.

 

Vous l’aurez compris pour répéter l’expérience, la machine a besoin d’énormément de données.

Lisez cet article pour connaître en détail

Sans rentrer dans des détails techniques pour que Le machine Learning fonctionne il lui faut 3 paramètres :

  • Des données d’entrée
  • Des exemples de la sortie que l’on souhaite obtenir
  • Un outil de mesure qui va servir à ajuster le fonctionnement de l’algorithme
Fonctionnement Machine Learning image
Fonctionnement de l'IA (Machine Learning)

Deep Learning:

 

Contrairement au machine learning où l’ingénieur extrait les caractéristiques de la donnée pour « aider » la machine à reconnaître un objet, il y a moins de présence humaine avec le deep larning.

 

On va fournir au programme l’accès à des données brutes (non triées), sans en avoir extrait les caractéristiques et qui va s’entraîner constamment par essais, sans intervention humaine ou reprogrammation logicielle.

 

Ce qui leur permet de s’améliorer progressivement, de manière autonome jusqu’à dépasser les fonctions initialement programmées.

L’IA se résume pas au machine learning et au deep learning, le vaste champ de l’IA comprend d’autres techniques, notamment autour de l’IA symbolique, de la programmation logique et des systèmes experts. Les meilleures solutions d’IA sont basés sur plusieurs techniques différentes notamment les voitures autonomes.

 

La révolution actuelle de l’intelligence artificielle a pu se produire grâce à 3 facteurs: la folle quantité de données ( Big Data), la puissance de calcul et des algorithmes performants.

La question que l’on se pose c’est comment un ordinateur qui ne sait faire que des calculs peut apprendre ?

Yann Lecun, considéré comme l’un des inventeurs du deep learning et directeur scientifique IA chez Facebook, différencie 3 types d’apprentissage, nous allons vous les exposer pour bien vous faire comprendre le fonctionnement de l’IA :

 

• L’apprentissage supervisé ou supervised learning : Ce mode d’apprentissage est le plus utilisé actuellement. Le procédé est simple : on va programmer une machine à réaliser une tache. Par exemple, faire la différence entre un oiseau et un avion. On va étiqueter un ensemble de données ( Des milliers de photos d’avions et d’oiseaux) afin de permettre au système de différencier celles qui sont des avions et celles qui sont des oiseaux.

 

Si en sortie la machine se trompe et nous indique qu’une photo est un oiseau alors qu’il s’agit d’un avion, on lui indique qu’elle a donné une mauvaise réponse et va réajuster son algorithme interne.

 

Pour faire simple, la machine va s’auto-ajuster pour ne plus faire la même erreur, c’est ce qu’on appelle la phase d’apprentissage. Au final si le système est bien construit on peut lui montrer n’importe quelle image d’avion elle saura faire la distinction avec un oiseau.

 

Ce type d’IA est utilisé pour identifier des contenus de vidéos, prédire le prix de vente d’une maison en fonction d’un historique, ou encore prédire des risques médicaux.

 

• L’apprentissage par renforcement (renforcement learning) : Cela permet à un système d’évoluer dans un environnement physique (on parle alors d’un robot) ou virtuel. Le système s’améliore à force de punitions et de récompenses.

 

C’est ainsi qu’un robot apprend à marcher seul, ou qu’un bot dans un jeu vidéo se perfectionne. Dans le cadre de l’apprentissage par renforcement, l’ensemble de données ne sont pas étiquetés, le système d’IA reçoit un retour négatif ou positif sans forcément lui donner la réponse exacte. Très utilisé dans les jeux vidéos, l’inconvénient est qu’il s’agit d’une technologie qui prend énormément de temps.

 

L’apprentissage nécessite 200 heures pour une application qu’un être humain appréhenderait en quelques minutes.

 

• L’apprentissage auto-supervisé (unsupervised learning): Cela consiste à comprendre comment le monde fonctionne par observation. Une machine pouvant prévoir les conséquences de ses actions. Ce type d’apprentissage est en cours de recherche.

Les langages de programmation informatique pour concevoir une IA

Exemple de la classification des images

Imaginez que vous souhaitez développer une IA capable de classer des images dans une galerie de photos. Vous souhaitez entrainer votre machine à reconnaître des lapins parmi toutes les photo de votre répertoire.

 

Dans ce cas de figure vous pourrez soit développer un algorithme de classification d’images, en entraînant un algorithme d’apprentissage supervisé (Machine Learning).

 

Soit développer un algorithme basé sur les réseaux de neurones convolutifs (CNN) ou encore les réseaux de neurones récurrents (RNN)  donc plus axé sur le Deep Learning.

 

Le choix de l’utilisation d’un Algorithme plutôt qu’un autre dépendra du degré de précision et de performance que l’on attend du résultat souhaité.

Pour bien comprendre le fonctionnement de l’IA je vous invite à consulter les deux articles suivant qui vont davantage dans le détail pour les plus courageux d’entre vous 🙂

Découvrez d’autres articles similaires