• Projets00
  • AI Academy13
  • Veille07 entrées ces 7 derniers jours
  • Outils00
Profil
Déposer un projet
ProjetsAI AcademyVeilleOutilsProfilDéposer
Le cours
2/59
Démonstration2 minAccès libre

Programmer des règles, ou apprendre à partir d'exemples

Pourquoi on ne peut pas écrire la règle à la main, et ce que l'humain fournit encore.

Un développeur qui calcule une taxe lit la règle dans le code des impôts, il l'écrit, la machine l'applique, et la réponse tombe. Programmer, c'est cela : on donne les règles et les données, la machine rend les réponses.

Maintenant, demandez à ce développeur le prix d'un appartement : il n'a plus de code des impôts, et le prix dépend de la surface, du quartier, de l'étage, de l'état du bâtiment, de ce qui s'est vendu dans la rue le mois dernier. Personne n'a écrit cette règle-là, et personne ne l'écrira.

L'agence, elle, a mille ventes dans ses fichiers, et pour chacune ce qu'était le bien et ce qu'il a coûté.

Le renversement

Dessinons trois boîtes : les règles, les données, les réponses. En programmant, les deux premières entrent et la troisième sort.

Maintenant échangeons-les : les données et les réponses entrent, et ce qui sort, c'est la règle.

Deux schémas superposés. En haut, sous la mention « on programme », deux cadres nommés RÈGLES et DONNÉES ; une flèche part d'eux vers un troisième cadre, RÉPONSES. En bas, sous la mention « on apprend », les deux cadres d'entrée sont DONNÉES et RÉPONSES, et la flèche mène à un cadre de brique nommé RÈGLES APPRISES.
Les mêmes trois boîtes ; ce qui change, c'est laquelle on cherche.

Ce que l'humain fournit encore

La machine ne devine pas ce qu'on cherche. Quelqu'un doit lui donner trois choses avant qu'elle commence : la forme des règles qu'elle a le droit d'essayer, les exemples sur lesquels travailler, et la façon de compter ce qu'une mauvaise réponse coûte.

Trois cadres alignés au-dessus d'un quatrième, plus large, marqué « la machine ». Le premier cadre porte cinq droites pâles de pentes différentes et une droite noire parmi elles : la famille de fonctions candidates. Le deuxième porte neuf points rangés en un nuage légèrement montant : les données. Le troisième porte une droite, un point au-dessus d'elle, un segment de brique qui les relie et une règle graduée posée le long de ce segment : la mesure d'erreur. Une flèche descend de chaque cadre vers la machine.
L'humain fournit les trois cadres du haut, et la machine ne fait que le bas.

Deux 3 ne se ressemblent pas

« Personne ne sait écrire la règle » se mesure. Prenons les 6 131 images du chiffre 3 d'un fichier public de chiffres manuscrits, chacune en 28 sur 28 pixels, soit 784 pixels par image. Un pixel est encré quand il porte de l'encre, et blanc sinon.

Cherchons un pixel encré sur toutes ces images à la fois : il n'y en a aucun. Cherchons ceux qui ne sont encrés sur aucune : il y en a 242, et ce sont les bords, toujours vides.

Entre les deux, rien de commun : deux 3 ne se ressemblent pas pixel à pixel.

Ce qui fait qu'un 3 est un 3 tient dans l'arrangement de l'encre, pas dans les pixels pris un à un.

Leçon suivante
PrécédenteCe que fait une machine qui apprendSuivanteLe fil conducteur : estimer le prix d'un logement