Pour la deuxième année, nous (DZ Systems) avons filmé une série de programmes de transformation numérique. Il s'agit généralement de programmes «liés aux affaires», principalement destinés aux cadres supérieurs et conçus pour aider à comprendre la valeur commerciale de ce qu'on appelle la transformation numérique.
Mais cette année, nous tournons également la deuxième «ligne» de programmes - DZ Online Tech, désormais déjà centrée sur les aspects technologiques du même sujet. En bref - c'est «sous le capot».
Ci-dessous est une transcription d'une autre transmission de ce type dans laquelle Ivan Yamschikov et moi (Yandex, ABBYY et un professionnel de haut niveau en général) parlons de l'utilisation des réseaux de neurones dans le monde moderne.
Si
vous êtes intéressé,
vous pouvez regarder le programme lui-même .
Et pour ceux qui aiment lire - une transcription ci-dessous:
- Bonjour. Notre invité aujourd'hui est Ivan Yamshchikov d'ABBYY, qui
nous expliquera comment fonctionne l'intelligence artificielle moderne.
En ce qui concerne l'IA, il y a conditionnellement deux positions: les gens qui disent: «Nous ne voulons pas
ne rien comprendre de l'essence de ce qui se passe dans le système. Nous avons des méthodes statistiques,
qui sortiront eux-mêmes le modèle de la vie extérieure. Ce modèle sera correct, il sera
Ressentez toutes les subtilités sémantiques. " Et il y a des gens qui disent: "Non, c'est
non autorisé. Nous comprenons ce qui se passe. Nous devons mettre cette compréhension dans le système.
l'intelligence artificielle, et alors il sera plus précieux, de mieux en mieux. " Cette bataille
At-il des critères?"Laissez-moi vous expliquer dans un langage moins philosophique." Il y a des gens qui disent: «Nous avons besoin de plus
Des algorithmes plus puissants et plus puissants et plus de données. Nous en prendrons plus
un algorithme productif, et il nous donnera une plus grande qualité cible sur un plus grand volume
métriques, peu importe quoi. " Je ne connais pas de gens qui disent ne pas avoir besoin de données ou
Des algorithmes Par conséquent, le deuxième groupe de personnes, à mon avis, a l'approche suivante: «En plus de
de tout cela, ce serait bien pour nous d'avoir encore des marques humaines sous une forme ou une autre, une sorte de
connaissances expertes, ajoutez par dessus. "
Il y a une blague sur Google qui est souvent citée: moins les linguistes travaillent sur
produit, meilleure sera la qualité finale. Cette plaisanterie est probablement justifiée par la pratique.
services B2C de masse. Mais quand on parle de B2B dans le contexte d'une épicerie étroite
solutions, dans le cadre d'une tâche très clairement définie et d'un domaine bien défini, puis
les connaissances spécialisées commencent à jouer un rôle assez important. Nous combinons à l'intérieur d'ABBYY et
modèles ontologiques que les linguistes construisent et approches purement d'apprentissage automatique.
- Je veux donner un exemple: nous avons réalisé un projet pour Mosvodokanal. Il y avait une telle tâche:
Mosvodokanal est un réseau complexe, il fonctionne et se comporte d'une manière ou d'une autre. Et je veux quelque chose
puis pour le comprendre, il convient de prévoir les accidents, de ressentir quand quelque chose ne va pas
passe.- Vous avez fait un système de surveillance.
- Oui, nous avons fait une sorte de système d'analyse du comportement, qui était censé dire: «Dans ce
quelque chose ne va pas dans le coin. " Nous ne pouvons vraiment pas dire s'il s'agit d'un accident ou simplement d'une fluctuation.
comportements parce qu'ils sont physiquement indiscernables ...- J'ai fait à peu près le même système de surveillance du trafic.
- Un sujet très similaire. Pendant le projet, nous nous sommes battus avec des ingénieurs qui ont dit:
«Écoutez, vous faites des ordures. Il faut mesurer tous les tuyaux, leurs diamètres sont externes et
interne, puis entrez des informations sur le lissage des murs. Et puis comptez
modèle hydrodynamique, et elle montrera tout. " Et nous avons dit: «Ne le faites pas.
Donnez-nous les données des capteurs, nous les intégrerons dans le modèle statistique, et elle, ne sachant rien
physique, cela fonctionnera de toute façon, car cela supprimera le comportement réel. " C'est droit
le cas ultime de ce dont nous parlons. D'une part, c'est la connaissance ultime.
la physique du travail du phénomène que nous emballons sémantiquement directement, et la seconde
côté est le malentendu ultime. Nous ne comprenons pas comment cela fonctionne
l'hydrodynamique - nous ne voulions même pas comprendre cela.- L'arrogance est très caractéristique des personnes qui connaissent bien les statistiques. Comme l'a dit Mark
Twain: "Il existe trois types de mensonges - les mensonges, les mensonges éhontés et les statistiques."
- Nous avons fini par les vaincre pour une raison très simple: collecter des informations sur tout le monde
ces tuyaux sont impossibles. Mais, d'autre part, une certaine connaissance approfondie du sujet
région ne peut pas s'empêcher.- Les gens qui sont les vecteurs de cette connaissance croient que c'est vrai, car c'est
leur domaine d'expertise. Mais en même temps, en fait, nous comprenons le langage naturel, avec
informatique, beaucoup moins que nous le souhaiterions, car beaucoup
les termes et les catégories ne sont pas définis mathématiquement, mais intuitivement. Cela conduit au fait que
ces gens qui viennent complètement du côté de l'informatique, il est compréhensible
méfiance à l'égard des personnes issues de la linguistique et vice versa. Chez ABBYY, c'est
a décidé que les deux travaillent sur le produit, sont responsables de différentes pièces, et vous
il est possible de mesurer la qualité que cela vous apporte. C'est comme ça
tests et expériences.
- C'est aussi un gros problème. Nous savons tous qu'il y a un problème d'optimisation locale.- Bien sûr. C'est un recyclage. Mais très souvent, des choses liées à des
les approches linguistiques vous permettent de gérer la reconversion. Parce que les linguistes essaient souvent de créer une règle générale, et puis il y a une grande et merveilleuse histoire
sur les exceptions. Quiconque a lu le livre de Rosenthal sur le russe à l'école est perplexe:
oh mon dieu, que font les philologues? Ils appellent les règles ce que
c'est ...
- Un ensemble d'exceptions.- Mais en substance, c'est exactement la même histoire à propos de l'erreur sur le test. Si vous le regardez avec
point de vue machine learning, un très grand nombre de règles linguistiques
couvrir un assez grand nombre d'exemples et laisser une erreur sur
données de test. Si vous prenez ces règles et appliquez aux données que votre modèle
Je n'ai jamais vu, le modèle à cet endroit est faux. Mais de nombreuses heuristiques linguistiques
vous permettre de vous protéger contre le recyclage.
- Je vous ai bien entendu que si nous prenons un livre sur la langue russe et le conduisons
dans le modèle, extrapolant ces règles, le modèle est-il nécessairement faux?- Bien sûr. C'est vrai. Toute règle stricte entraînera toujours des erreurs, car,
malheureusement ou heureusement, l'intelligence artificielle est beaucoup plus flexible que certains ensembles
règles simples.
- Cela est également dû au fait que lorsque nous parlons de formaliser les règles du naturel
langue, nous sommes en ce lieu inévitablement engagés dans une tâche insoluble. Profondeur de cette
le processus est sans fin.- C'est une question philosophique. Au niveau de la machine, la profondeur ne semble pas infinie, mais il y a
un article intéressant, à mon avis, 2015. Une brève excursion: il y a une telle section de mathématiques,
qui s'appelle la théorie de l'information. En particulier, il est utilisé dans la théorie du codage.
En Russie, il a été fabriqué par Kolmogorov et associés, aux États-Unis - par Shannon. Tout d'abord son
inventé dans le contexte de la cryptographie.
Dans la théorie de l'information, il existe une «information générale». Si complètement sur les doigts
dire: imaginez comment vos significations d'un mot dans un texte sont corrélées
en fonction de la distance entre eux. Imaginez une telle métrique. Si j'ai ici
il dit «Petya», puis n-mots, puis le mot «mangé». En fait, les mots «mangé» et «Petya»
corréler, malgré le fait que le mot "mangé" peut être assez loin de "Petit".
Si nous construisons statistiquement un modèle de ces corrélations, il s'avère qu'en fonction de
distances, cette information générale dans les textes diminue assez lentement - pas polynomialement, mais
plus lent. En gros, dans les textes en langage naturel, il y a une corrélation entre les mots,
loin l'un de l'autre.
On observe à peu près la même chose dans les "textes" ADN: nos nucléotides sont également
distance relativement grande. En particulier, ce type de système essaie de décrire
théorie de la complexité, etc. Toute l'histoire de l'effet papillon - c'est à ce sujet, que vous avez un peu
une déviation en un seul endroit peut entraîner des changements importants jusqu'à présent.
Le langage naturel est décrit par des dépendances de ce type. Maintenant, disons LSTM (Long
Réseau de mémoire à court terme) est considéré comme le plus avancé, en termes de mémoire, de neurones
un réseau qui est utilisé pour analyser la langue juste pour se faire des amis de grande envergure
pour attraper les corrélations d'un ami. Ici, elle, l'infection, la mémoire diminue plus vite que nécessaire.
C'est un grand sujet de recherche. En particulier, nous, au Max Planck Institute, essayons de
à faire. Il y a un résultat intéressant de la théorie des graphes, qui dit que si vous avez des cycles dans votre réseau, alors il devrait avoir plus de mémoire. Nous savons que dans notre cerveau il y a des
ce sont des fréquences caractéristiques, et il y a des cycles dans le cerveau. Un signal les parcourt, les neurones stimulent
les uns aux autres dans un cercle avec une fréquence donnée. Dans les réseaux de neurones artificiels, nous sommes toujours
ne peut pas se reproduire.
"Pourquoi ne pouvons-nous pas?" Ajoutez des boucles! Veuillez remplir les cycles du sac."Et je vais vous le dire." Comment apprenons-nous les réseaux de neurones? Utilisation de la rétropropagation
des erreurs. La propagation arrière d'une erreur se produit lorsque vous avez un passage neuronal direct
réseau et inverser.
- Dès qu'il y a des cycles, commencez immédiatement les problèmes de bouclage de ce très
des erreurs?- Oui! Que faire Comment refaire la propagation?
Amis, faites de la propagation sur le cycle et vous ferez une percée puissante dans le développement
intelligence artificielle. Je dis à tout le monde: nous devons le faire, c'est très cool. C'est réel
une tâche difficile.
- Et si ces gens qui s'occupent du cerveau découvrent comment cela fonctionne dans le cerveau, c'est
peut-il être mis? Il semblerait qu'aujourd'hui l'anthropomorphisme de ce que nous faisons est
très faible.- Allez: qu'est-ce qui est commun entre ImageNet de Google et la palourde? Il s'avère plus ou moins
c'est tout. Initialement, le mollusque a été démonté et a vu que ses champs visuels étaient disposés comme
réseaux de convolution modernes, si vous le souhaitez. Il était une fois dans les années 50 Rosenblatt et ses camarades
démonté, et est venu avec un perceptron, regardant en grande partie des choses animées et très simples. Ils sont
pensais que nous comprendrions maintenant comment fonctionnent les organismes primitifs, puis nous commencerons à construire
compliqué.
- Pourquoi n’ont-ils pas réussi? À cette époque, on croyait que le perceptron n'était pas vivant.
Pas assez de puissance?- Il y avait beaucoup de problèmes. Allez: il y avait plusieurs IA-hivers, c'est-à-dire des gens à chaque fois
venir avec une nouvelle percée dans le domaine de l'intelligence artificielle, et penser: "Ça y est,
Jarvis sera mon meilleur ami demain et communiquera avec moi mieux que le mien
psychanalyste. " Et puis quelque chose se passe, comme le même Jarvis. J'aime beaucoup cette blague
du film "Iron Man", où au début tout va bien, puis vous prononcez certains
quelques canneberges. Alors Jarvis dit au personnage principal quand il lui demande s'il a débogué
tous les systèmes.
- A quoi ça ressemble pratiquement? Où sont les restrictions, si vous prenez l'application
côté?- Premièrement, maintenant même les choses les plus puissantes que nous collectons artificiellement, fortement
plus petit que notre cerveau simplement par ordre de grandeur.
Et le deuxième point est lié au fait que nous ne comprenons pas pourquoi ils fonctionnent. C'est séparé
vaste domaine de recherche.
- Il semblerait qu'ils commencent déjà à le dire.- D'abord, ils ont découvert ce qui fonctionne, puis ils ont commencé à comprendre comment cela fonctionne.
Il existe une direction distincte sur la façon de visualiser le fonctionnement d'un réseau neuronal. Il existe un
un formalisme mathématique appelé décomposition de l'information, qui tente de décrire
comment est la décomposition des informations en différents flux au sein du réseau pour comprendre ce
quelles couches se passe. Avec les images, ça commence à tourner et le dernier tourne
quelques années. Avec les textes, ça devient plus difficile.
Pourquoi ne comprenons-nous pas comment cela fonctionne? Parce que nous n'avons pas de bonnes mathématiques
un résultat qui nous expliquerait tout. Nous n'avons pas de théorème éprouvé qui dirait
que ça marche. Parce que, disons, au niveau d'un réseau neuronal convolutif: avez-vous
photo, un chien est dessiné dessus. Il y a tellement de pixels dans cette image, chacun
pixels il y a tellement de valeurs. Si vous essayez de compter la quantité de manière combinée
options pour une combinaison de pixels qui s'ajoutent toujours à un chien - vous vous fatiguez. À
vous êtes censé avoir un espace dimensionnel assez grand et beaucoup d'options
décisions. De plus, si vous commencez à former un réseau neuronal convolutionnel avec le nombre
les paramètres sont beaucoup moins que le nombre d'images potentielles d'un chien, vous entraînez
d'une manière relativement simple. Elle vous dit à la sortie, est-ce un chien ou pas un chien, mais
vous lui dites oui ou non. Soudain, au bout d'un moment, il se trouve qu'elle peut vous
donner une très bonne qualité sur des photos de chiens qu'elle n'a pas vus.
- Le degré de généralisation est-il étonnamment élevé?- Oui, c'est un degré de généralisation inattendu. Tout le monde a accepté le fait que cela fonctionne, tout le monde
l'appliquer partout, mais résultat mathématique strictement justifié, ce qui
expliqué pourquoi un tel degré de généralisation est possible, non. Et il y a plusieurs hypothèses, une
dont il me semble le plus intéressant. Ce n'est pas ce qui se passe chez tout le monde
neurone, et comment vous connectez ces neurones. La structure même du réseau, apparemment, pour vous
vous permet de réaliser une certaine généralisation à un certain niveau. C'est intéressant
hypothèse, car si elle est vraie, elle est bien liée à la neurophysiologie, puis
vous pouvez prendre et essayer autre chose de la neurophysiologie. Il y en a d'autres
hypothèses, mais ceci est une question: les gens écrivent maintenant des kilogrammes d'articles par mois sur la façon dont il
fonctionne.
- On a le sentiment que Python est un langage AI. Est-ce un accident ou non? Pourquoi
Python, après tout, il y a beaucoup de Basic.- Parce que beaucoup de travail d'un Data scientist revient maintenant à
prototypage. Il est pratique de prototyper en Python, il a été créé comme un langage pour
prototypage, et non comme langage de solutions industrielles. Chez ABBYY, nous avons des gens
qui prototypes en Python, et il y a des gens qui écrivent des modèles finaux en C ++,
qui sont en cours de mise en œuvre. La communauté Python utilise activement cette vague et il y a un retour positif. Il existe une demande, c'est-à-dire que la science des données est de plus en plus
Python, respectivement, la communauté commence à être saturée de gens qui essaient
développer la langue elle-même. Tout cela est connecté.
- Quand on parle de prototypage, cela implique de faire tourner un grand
nombre de tests, d'expériences. Il y a un problème avec l'informatique
ressources.- Les ressources informatiques elles-mêmes sont devenues moins chères, il existe des solutions cloud qui
leur prix abordable. En gros, un étudiant ayant accès à Internet peut brièvement
l'argent pour obtenir un serveur assez puissant, afin de conduire quelque chose dessus et certains
récupérez le modèle et vissez l'IA, par exemple, sur la cafetière. Il y avait de nombreux facteurs qui
conduire les uns les autres. En raison d'Internet, le seuil d'entrée dans la programmation et
la technologie en général. Beaucoup de fer relativement bon marché est apparu, il est également entré dans
le nuage. Vous pouvez gagner du temps, pas du fer. De nombreuses données en direct sont apparues.
Par exemple, dans les années 80, les personnes impliquées dans la science des données avaient un problème fondamental: où
prendre des données? Et maintenant, pour un tas de tâches appliquées, il est clair où les obtenir.
Éléments clés de l'apprentissage automatique: algorithme, données et matériel sur lesquels
l'algorithme fonctionne. Ces trois options sont devenues plus accessibles. Dans ce cas, l'algorithme est devenu
plus abordable, dans le sens où il existe des solutions en coffret de bonne qualité. Ils sont
implémenté dans un langage avec une syntaxe simple intuitive, faible
niveau d'entrée et un tas de ressources éducatives.
- Des gars de Microsoft ont raconté comment un petit groupe a pris un réseau de neurones
et le modèle commercial d'une petite entreprise simple qui livrait du pain. Et des bâtons et
de cordes, il s'est avéré construire un modèle qui a optimisé cette entreprise et a donné + 10%
à l'efficacité. Ces images sont-elles plus probablement une exception ou une règle?- C'est plutôt une règle. À mon avis, Kelly (un futurologue célèbre) a une bonne conférence sur
future IA, dans laquelle il dit que dans 20 ans, ils nous traiteront de la même manière que nous
Nous traitons ceux qui ont été les pionniers d'Internet. Nous disons maintenant: «Comme c'était facile pour vous en 90-
e années pour faire des affaires sur Internet. Et dans 20 ans, ils nous traiteront également en disant: «Comment
C'était facile pour vous de faire affaire avec l'IA. Il a pris n'importe quoi, y a ajouté de l'IA et est devenu un leader dans ce
catégories. " C'est du moins l'opinion de Kelly et je la partage.
- Vous et moi avons vécu une certaine quantité de ce qui se passe dans l'industrie, et nous l'avons vu
l'image de ce qui est maintenant une marchandise était autrefois un état de l'art. Sur la base de son
expérience, pouvons-nous conseiller les personnes qui font désormais partie de la technologie de l'IA
et comment devraient-ils bouger?- J'ai deux astuces qui me semblent raisonnables. D'abord, n'en faites pas dans le coin.
Trouvez quelques personnes partageant les mêmes idées, travaillez ensemble et montrez-vous
que faites-vous au sein de la communauté au sens large. Et deuxièmement, pensez moins
des modèles spécifiques que vous utiliserez car ils vont changer,
s'améliore. Et si vous n'êtes pas au niveau en ce moment pour les améliorer vous-même, vous
vous devez en savoir moins sur le fonctionnement exact de ce modèle et pourquoi il est meilleur. Vous avez besoin
réfléchissez davantage au problème que vous résolvez.