Comment fonctionne l’intelligence artificielle et est-elle basée sur des algorithmes ?

Photo of author
Écrit par Mallory Lebel

Se sentir libre de concilier "vie privée" et "vie numérique" sans intrusion.

Ma page Facebook

L’intelligence artificielle (IA) et l’apprentissage machine sont deux des parties de l’informatique les plus difficiles à expliquer à quelqu’un qui n’a pas de connaissances préalables.

Tout d’abord, en ce qui concerne les algorithmes, il s’agit simplement de processus étape par étape. Une recette de pudding à la banane est un algorithme. Vous avez travaillé avec des algorithmes toute votre vie. On en parle souvent en mathématiques.

  • Vous souvenez-vous de l’addition en plusieurs colonnes ? C’est un algorithme.
  • La division longue ? Un algorithme.
  • En fait, il existe de nombreux algorithmes et de nombreuses variantes d’algorithmes pour produire le même résultat, tout comme il existe de nombreuses recettes de pudding à la banane.

Qu’est-ce qu’un algorithme ?

Supposons que vous ayez un singe capable d’additionner deux nombres quelconques. Comment pouvez-vous l’utiliser pour trouver un produit 5×11 ?

Bien sûr, nous supposons que vous ne pouvez qu’écrire les nombres et que vous ne faites aucun calcul vous-même. Vous savez que a×b=b+b+b…+b a fois. Vous confiez donc les tâches suivantes à votre singe :

  • Trouvez 11+11.
  • Prenez le résultat précédent et ajoutez-y 11 au résultat précédent.
  • Reprenez le résultat précédent et ajoutez-y 11 au résultat précédent.
  • Le dernier nombre est votre réponse.

La procédure ci-dessus est un algorithme. Il s’agit d’une séquence précise et finie d’opérations, donc d’un algorithme.

Nous disposons d’un algorithme pour la multiplication. Pouvons-nous créer un algorithme pour l’exponentiation ? Prenez l’ensemble de l’algorithme ci-dessus et appelez-le m-opération. De la même manière, nous pouvons créer un algorithme pour l’exponentiation dont l’opération élémentaire est une m-opération. Par conséquent, en « étendant » notre opération m à l’ensemble de l’algorithme de multiplication, vous pouvez également obtenir un algorithme d’exponentiation utilisant uniquement l’opération élémentaire d’addition.

Cela vous conduit à l’idée principale de tous les ordinateurs : la modularisation.

L’ordinateur sait comment opérer sur les bits 0,1. Nous créons donc des algorithmes qui n’utilisent que les opérations élémentaires sur les bits. Nous les regroupons sous forme de nouvelles opérations élémentaires : l’addition, la multiplication. Nous les transformons ensuite en opérations élémentaires plus complexes, et ainsi de suite.

En plus, il est très naturel de poser immédiatement la question suivante : comment résoudre le problème avec le nombre minimum d’opérations ? ou mieux encore, pouvons-nous résoudre le problème en n’utilisant que ces opérations élémentaires ? C’est plus ou moins l’objet de toute la théorie des algorithmes.

Pouvez-vous préparer un thé en utilisant uniquement le singe qui sait additionner deux nombres quelconques ?

Vous pouvez trouver 5×11 avec trois opérations effectuées par notre cher singe : ((11+11) + (11+11) )+ 11.

Un algorithme est donc une séquence précise et finie d’opérations élémentaires définies avec précision.

L’intelligence artificielle

L’IA est un domaine important de la science de l’information qui se divise en 3 parties.

  1. Le premier domaine est purement mathématique et logique et a produit quelques idées intéressantes, mais le problème est que l’intelligence naturelle, l’intelligence humaine, n’est pas particulièrement logique.
  2. Le deuxième domaine s’inspire de la cognition humaine, de la façon dont les êtres humains pensent, et il a permis d’approfondir l’informatique, la psychologie et les neurosciences. Il existe des programmes entiers appelés architectures cognitives (ACT-R et Soar sont les deux plus importants) qui utilisent des ordinateurs pour simuler le fonctionnement de l’esprit/du cerveau humain. Ils ont permis d’obtenir des résultats étonnants, mais il ne s’agit pas d’un outil que vous utilisez pour faire faire des choses géniales à votre smartphone. Il s’agit plutôt d’un outil de recherche.
  3. Le troisième domaine est celui de l’apprentissage machine. L’apprentissage automatique se divise en de nombreuses catégories, mais la plus courante dont vous entendrez parler aujourd’hui est celle des réseaux neuronaux (RN). Les réseaux neuronaux ont été inspirés par un modèle de neurones humains réels, mais ce modèle est dépassé et erroné.

Les réseaux neuronaux

Les réseaux neuronaux ne sont que des groupes de minuscules décideurs que l’on appelle des neurones. Chaque neurone examine un petit morceau de données (par exemple un tout petit morceau d’une image) ou d’autres neurones qui, quelque part dans le passé, ont examiné des données. À l’intérieur du neurone, il n’y a qu’un nombre. Pour apprendre au NN à faire quelque chose, nous lui fournissons des données d’entraînement, des données que nous connaissons parfaitement. Chaque neurone prend une décision, puis nous comparons cette décision à ce que le neurone aurait dû faire (puisque nous connaissons la vérité, puisqu’il s’agit de données d’entraînement), et nous demandons au neurone de se corriger. Au début de l’apprentissage, le neurone commet beaucoup d’erreurs et se corrige beaucoup, mais peu à peu, il cesse de se corriger et devient capable de juger ce qu’il est censé juger.

Pour simplifier encore, l’apprentissage machine est un programme qui contient de nombreuses petites parties distinctes connectées les unes aux autres. Nous apprenons à chacune de ces parties à prendre une décision en ne tenant compte que d’une petite partie des données, ou de décisions déjà prises par d’autres parties.

Nous devons procéder ainsi parce que le programme qui en résulte (et il s’agit bien d’un programme, d’un algorithme) est trop compliqué pour qu’un être humain puisse l’élaborer. Les ordinateurs examineront chaque détail d’un milliard de photos (oui, un milliard, ou plusieurs milliards) et verront les petites connexions que les humains ne voient pas.

reseaux neuronaux

L’apprentissage machine

La meilleure façon de comprendre l’apprentissage machine est peut-être d’étudier la façon dont nous le décomposons. Il existe tout un domaine de recherche appelé « adversarial AI » conçu pour tromper les systèmes de l’apprentissage machine.

Les ordinateurs ne comprennent rien. Ils décident qu’une image contient Donald Trump, une conque ou un panda en se basant sur des modèles qui ne nous intéressent pas. Nous savons à quoi ressemble Donald Trump et nous pouvons juger sur la base du contexte. Nous pouvons facilement créer des images qu’un modèle de ML ne peut pas classer correctement, mais nous pouvons aussi intentionnellement faire en sorte que le modèle pense la mauvaise chose.

Dans la première image, le modèle est assez bon ; il pense que le panda est un panda. Il ne sait pas ce qu’est un panda et ne peut donc pas comprendre qu’il suffit de regarder les yeux, le museau et la couleur générale. Quoi qu’il en soit, les chercheurs ont ajouté une petite quantité de données floues soigneusement construites, invisibles à l’œil humain, et le modèle est désormais absolument certain qu’il s’agit d’un gibbon. Aucun humain ne penserait jamais qu’il s’agit d’un gibbon.

De nombreux travaux de recherche tentent de créer des programmes qui expliquent clairement comment ces modèles d’apprentissage machine prennent leurs décisions. Cela nous permet de tromper potentiellement les modèles, car encore une fois, ils ne pensent pas et ne savent pas. Il s’agit simplement d’une multitude de petits décideurs qui examinent une petite quantité de données ou qui se regardent les uns les autres et qui prennent la meilleure décision que leurs mathématiques leur permettent.

Comprendre l’informatique à l’aide d’un exemple

Chaque fois que l’évêque de Rome (le pape de l’Église catholique) doit être choisi, un groupe de cardinaux (chefs religieux) se réunit au Vatican et prend part à une réunion à huis clos. Pendant ce temps, les fidèles et quelques curieux se rassemblent à l’extérieur, à la recherche de signaux.

Si les bulletins de vote des cardinaux n’aboutissent pas à une élection, ils brûleront des produits chimiques qui produiront une fumée noire (visible par tout le monde à l’extérieur) et si le pape est élu, ils brûleront d’autres produits chimiques qui produiront une fumée blanche. Ainsi, le monde extérieur cherchera le signal 0 ou 1, fumée noire ou blanche.

Améliorez votre anonymat en ligne

Pensez à l'utilisation d'un VPN : une application VPN va changer votre adresse IP pour simuler celle de n'importe quel pays. Vous pourrez accéder à n'importe quel contenu, même celui qui est géo-restreint. Ce logiciel chiffre aussi votre trafic internet pour éliminer les malwares et les risques de piratage.
Pensez à utiliser un gestionnaire de mots de passe

Utilisons ceci comme point de départ pour comprendre l’informatique.

Un ingénieur pourrait améliorer la conception en ajoutant un simple interrupteur :

  • si le pape est élu, il pourrait appuyer sur le bouton « on »
  • et s’il ne l’est pas, il pourrait appuyer sur le bouton « off ».

Maintenant, que se passerait-il si vous vouliez vous aussi savoir qui est le pape ? Supposons que vous connaissiez déjà tous les candidats ; vous pouvez avoir plusieurs lumières à l’extérieur. Les cardinaux peuvent appuyer sur le bon interrupteur à la fin de la sélection. Vous pouvez avoir quelqu’un à l’extérieur qui a des photos de tous les candidats. Après avoir vu une lumière particulière s’allumer, la personne extérieure peut déployer la photo du bon candidat.

Il s’agit là du principe fondamental de la transmission d’informations. En appuyant sur un bouton et en envoyant un signal, vous faites en sorte que la bonne photo soit déployée à l’extérieur. Pour ce faire, les cardinaux et la personne extérieure doivent se mettre d’accord sur un protocole [lumière 1 = Monsieur A…] L’interrupteur actionné est une donnée, sans signification pour les utilisateurs finaux, mais qui peut être traitée en une information significative [la photo du pape].

Étant donné que le courant électrique peut se déplacer sur des milliers de kilomètres avec des répéteurs, vous pouvez faire en sorte que les gens dans les églises du monde entier déploient simultanément la photo du bon candidat dès que les cardinaux appuient sur un bouton.

C’est ainsi que fonctionnent les ordinateurs. Nos programmes sont conçus pour prendre un modèle particulier et lorsque nous recevons ce modèle particulier par le biais des signaux électriques, nous entreprenons une activité particulière.

Cliquez pour lire :

Poussons l’analyse un peu plus loin en construisant le télégraphe

Au lieu d’envoyer un seul point de données (qui est le candidat), vous voulez envoyer plus d’informations. Il y a un homme assis avec un interrupteur au Vatican et un autre à Berlin. Celui du Vatican appuie sur le bouton toutes les secondes et celui de Berlin regarde l’ampoule toutes les secondes.

Pour envoyer le lieu de naissance du nouveau pape, ils se sont mis d’accord sur un code 100001 et chaque grande ville a un code [Rome est 000001, Londres est 011001, etc]. Pour envoyer le lieu de naissance, vous envoyez d’abord 100001, puis le code de la ville. Les deux parties disposent d’une table de référence pour comprendre le code.

Pour envoyer 100001, le citoyen du Vatican appuie sur l’interrupteur électrique pendant une seconde, attend 4 secondes en laissant les choses éteintes, puis appuie à nouveau sur l’interrupteur. Le gars de Berlin interprète cela comme un 1 suivi de 4 zéros puis d’un 1. Dès qu’il envoie cela, le gars de Berlin sait qu’il est question du lieu de naissance du candidat. Il écoute ensuite quel lieu [toujours selon la même méthode que celle utilisée par le Vatican]. Dès qu’il voit un 010011 [c’est-à-dire le code pour Berlin], il est ravi et imprime Berlin en grosses lettres grasses.

C’est ainsi que fonctionne votre HTML. Pour écrire une lettre particulière, j’envoie un code pour cette lettre et si elle doit être mise en gras, elle sera précédée d’un code particulier. Du côté de la réception, mon ordinateur comprendra ce format et demandera alors à l’écran de s’illuminer d’une manière particulière.

Au cours d’un siècle d’ingénierie des télécommunications, les ingénieurs ont construit des mécanismes permettant d’envoyer des données (appuyer sur un interrupteur) à des vitesses considérables (une pression toutes les nanosecondes et des milliers de données envoyées en parallèle), mais le concept est fondamentalement simple.

Comment une image est-elle envoyée ?

L’écran devant vous est une matrice de pixels, peut-être 1440 pixels horizontalement et 960 pixels verticalement. Ces millions de pixels sont chacun de minuscules ampoules qui peuvent briller dans une couleur particulière. Pour vous envoyer l’image d’une pieuvre, je dois vous donner le code de chaque pixel. Chaque carré en dessous brille d’une couleur particulière et chaque couleur a un code.

Je dois envoyer le code de ces millions de carrés et le code de chaque carré est composé de 8 1 et 0 [par exemple, 01110001 peut signifier blanc]. Ces 8 groupes d’interrupteurs sont appelés octets et si mon image contient 1 million de carrés, j’enverrai 1 million d’octets et l’image aura une taille de 1 MB.

Le récepteur parcourt ensuite ces millions d’octets un par un et fait briller une ampoule particulière de l’écran d’une couleur particulière (la magie des ingénieurs en électronique est à l’œuvre ici). Vos yeux sont alors amenés à croire que ces millions d’ampoules vous montrent une pieuvre. Si vous regardez d’assez près, vous ne verrez que des ampoules.

Si l’émetteur et le récepteur ne sont pas synchronisés avec le format envoyé, les données ne seront que des nombres aléatoires. L’informatique consiste à élaborer des protocoles (également appelés interfaces) qui permettent de formater les données.

Les ingénieurs informatiques passent beaucoup de temps à élaborer des formats et des codes d’information dans notre petit monde appelé « programmes ».

Maquillez votre adresse IP

Être anonyme sur internet

banniere abonner nordvpn

Laisser un commentaire