
Récemment, ma tante a envoyé des courriels à ses collègues sur le thème «problème mathématique! Quelle est la bonne réponse? " La lettre avait un puzzle trompeusement simple:
1 + 4 = 5
2 + 5 = 12
3 + 6 = 21
8 + 11 =?
Pour elle, la décision était évidente. Mais ses collègues ont décidé que leur décision était bonne - ce qui ne coïncidait pas avec sa décision. Le problème était-il lié à l'une de leurs réponses ou au puzzle lui-même?
Ma tante et ses collègues sont tombés sur le problème fondamental de l'apprentissage automatique, une discipline qui étudie l'apprentissage des ordinateurs. Presque toute la formation que nous attendons des ordinateurs - et que nous faisons nous-mêmes - consiste à réduire l'information aux lois fondamentales sur la base desquelles des conclusions peuvent être tirées sur quelque chose d'inconnu. Et son énigme était la même.
Pour une personne, la tâche consiste à rechercher n'importe quel modèle. Bien sûr, notre intuition limite la gamme de nos suppositions. Mais les ordinateurs n'ont aucune intuition. Du point de vue d'un ordinateur, la difficulté de reconnaître les schémas réside dans leur abondance: s'il existe un nombre infini de schémas également légitimes, à cause desquels certains sont corrects et d'autres non?
Et ce problème est récemment passé dans un plan pratique. Jusqu'aux années 1990, les systèmes d'IA se livraient généralement rarement à l'apprentissage automatique. Supposons qu'un ordinateur d'échecs Deep Thought, le prédécesseur de Deep Blue, n'ait pas appris les échecs par essais et erreurs. Au lieu de cela, les grands maîtres d'échecs et les assistants de programmation ont soigneusement créé les règles permettant de déterminer si une position d'échecs était bonne ou mauvaise. Cet ajustement manuel minutieux était typique des «systèmes experts» de l'époque.
Pour s'attaquer au mystère de ma tante en utilisant l'approche de systèmes experts, il est nécessaire qu'une personne plisse les yeux sur les trois premières rangées d'exemples et remarque le schéma suivant:
1 * (4 + 1) = 5
2 * (5 + 1) = 12
3 * (6 + 1) = 21
Ensuite, la personne demanderait à l'ordinateur de suivre le modèle x * (y + 1) = z. En appliquant cette règle au dernier résultat, nous obtenons une solution - 96.
Malgré les premiers succès des systèmes experts, le travail manuel requis pour les développer, les affiner et les mettre à jour est devenu écrasant. Au lieu de cela, les chercheurs ont attiré l'attention sur le développement de machines capables de reconnaître les modèles par elles-mêmes. Le programme pourrait, par exemple, examiner un millier de photographies ou de transactions sur le marché et en tirer des signaux statistiques correspondant à la personne sur la photo ou une flambée des prix du marché. Cette approche est rapidement devenue dominante et depuis lors, elle est au cœur de tout, du tri automatique du courrier et du filtrage du spam à la détection de la fraude par carte de crédit.
Mais, malgré tous les succès, ces systèmes MO nécessitent un programmeur quelque part dans le processus. Prenons comme exemple l'énigme de ma tante. Nous avons supposé que dans chaque ligne, il y a trois composantes significatives (trois nombres sur une ligne). Mais il y a un quatrième élément potentiel en lui - le résultat de la ligne précédente. Si cette propriété de chaîne est valide, un autre modèle plausible apparaît:
0 + 1 + 4 = 5
5 + 2 + 5 = 12
12 + 3 + 6 = 21
Selon cette logique, la réponse finale devrait être 40.
Quelle régularité est vraie? Naturellement, les deux - et pas l'un d'eux. Tout dépend des modèles autorisés. Vous pouvez, par exemple, construire un modèle en prenant le premier nombre, en multipliant par le second, en ajoutant un cinquième de la somme de la réponse précédente et trois, et en arrondissant le tout à l'entier le plus proche (très étrange, mais cela fonctionne). Et si nous autorisons l'utilisation de propriétés liées à l'apparition des nombres, il y a peut-être une séquence associée aux empattements et aux lignes. La recherche de modèles dépend des hypothèses de l'observateur.
Il en va de même pour MO. Même lorsque les machines s'entraînent elles-mêmes, les modèles préférés sont choisis par les gens: le logiciel de reconnaissance faciale devrait-il contenir des règles explicites si / alors, ou devrait-il considérer chaque fonctionnalité comme une preuve supplémentaire en faveur ou contre chaque personne possible à laquelle elle appartient? Quelles caractéristiques de l'image le logiciel doit-il gérer? Doit-elle travailler avec des pixels individuels? Ou peut-être avec les bords entre les zones claires et sombres? Le choix de ces options limite les modèles que le système considère comme probables ou même possibles. La recherche de cette combinaison idéale est devenue le nouveau travail des spécialistes du ministère de la Défense.

Mais le processus d'automatisation ne s'est pas arrêté là. Tout comme les programmeurs ont été torturés autrefois pour écrire les règles de travail, ils sont maintenant réticents à développer de nouvelles fonctionnalités. "Ce ne serait pas bien si l'ordinateur lui-même pouvait comprendre de quelles fonctionnalités il avait besoin?" Ils ont donc développé un réseau neuronal d'apprentissage en profondeur, une technologie MO qui peut tirer indépendamment des conclusions sur les propriétés de haut niveau sur la base d'informations plus simples. Alimentez un ensemble de pixels à un réseau de neurones, et il apprendra à prendre en compte les bords, les courbes, les textures - et tout cela sans instructions directes.
Et donc, les programmeurs ont perdu leur emploi à cause d'un algorithme, pour éditer tout le monde?
Pas encore. Les réseaux de neurones ne sont toujours pas parfaitement adaptés à aucune tâche. Même dans le meilleur des cas, ils doivent être ajustés. Un réseau de neurones se compose de couches de "neurones", dont chacun effectue des calculs sur la base des données d'entrée et renvoie le résultat à la couche suivante. Mais combien de neurones seront nécessaires et combien de couches? Chaque neurone devrait-il recevoir des données de chaque neurone du niveau précédent, ou certains neurones devraient-ils être plus sélectifs? Quelle transformation chaque neurone doit-il effectuer sur les données d'entrée pour produire le résultat? Et ainsi de suite.
Ces problèmes limitent les tentatives d'application de réseaux de neurones à de nouvelles tâches; un réseau de neurones qui reconnaît parfaitement les visages est totalement incapable de traduction automatique. Et encore une fois, les éléments structurels choisis par l'homme poussent clairement le réseau vers certaines lois, l'éloignant des autres. Une personne bien informée comprend que toutes les lois ne sont pas créées égales. Les programmeurs ne seront pas laissés sans travail.
Bien sûr, la prochaine étape logique sera les réseaux de neurones, devinant indépendamment le nombre de neurones à inclure, les connexions à utiliser, etc. Des projets de recherche sur ce sujet sont en cours depuis de nombreuses années.
Jusqu'où peut-il aller? Les voitures apprendront-elles si bien à fonctionner par elles-mêmes que le réglage externe deviendra une relique à l'ancienne? En théorie, on peut imaginer un étudiant universel idéal - celui qui peut tout résoudre par lui-même et choisit toujours le meilleur schéma pour la tâche choisie.
Mais en 1996, le spécialiste en informatique David Walpert a prouvé l'impossibilité d'un tel étudiant. Dans ses fameux "théorèmes sur l'absence de repas gratuits", il a montré que pour tout schéma que l'élève est bien formé, il y a un schéma qu'il étudiera terriblement. Cela nous ramène au mystère de ma tante - au nombre infini de motifs qui peuvent découler de données finies. Le choix d'un algorithme de formation signifie la sélection de modèles avec lesquels la machine se débrouillera mal. Peut-être que toutes les tâches, par exemple la reconnaissance des formes, finiront par tomber dans un seul algorithme complet. Mais aucun algorithme d'apprentissage ne peut tout apprendre aussi bien.
Cela fait que l'apprentissage automatique ressemble à un cerveau humain. Bien que nous aimions nous considérer intelligents, notre cerveau n'étudie pas non plus parfaitement. Chaque partie du cerveau est soigneusement réglée par l'évolution pour reconnaître certains modèles - que ce soit ce que nous voyons, le langage que nous entendons ou le comportement des objets physiques. Mais nous ne nous en sortons pas si bien avec la recherche de modèles en bourse; ici les machines nous battent.
L'histoire de l'apprentissage automatique a de nombreux schémas. Mais le plus probable sera le suivant: nous formerons des machines à apprendre pendant encore de nombreuses années.