Yann LeCun

L'apprentissage non supervisé et les techniques récentes

6 juin 2016

Intelligence Artificielle
Illustration de Yann LeCun

Introduction et Apprentissage Primitif

Yann LeCun

C'est donc notre dernière conférence. Nous allons continuer à parler de l'apprentissage non supervisé et des techniques récentes pour l'apprentissage non supervisé que je trouve très intéressantes.

Yann LeCun

La dernière fois, nous avons parlé de mon opinion personnelle selon laquelle l'un des principaux obstacles aux programmes majeurs d'intelligence artificielle est la capacité à fabriquer des machines capables de faire de l'apprentissage primitif. La principale difficulté avec l'apprentissage primitif est que les prédictions en général comportent des incertitudes. Pour l'apprentissage vidéo, de nombreux scénarios peuvent se produire et ils sont tous plausibles. Lorsque le futur donne des informations sur ce qui va se passer, si la machine a fait une prédiction plausible qui ne s'est pas matérialisée, vous ne devez pas trop punir la machine pour ne pas avoir produit la réponse exacte. Si je place un stylo déséquilibré sur sa pointe, il tombera d'un côté ou de l'autre. Si la machine ne prédit pas le bon côté, ce n'est pas grave, à condition qu'elle puisse prédire que le stylo va tomber. Comment entraîner la machine alors ? Une idée est de dire que la sortie observée n'est qu'un représentant d'un spectre de possibilités futures, représenté par une surface, une variété ou une densité de probabilité. Nous avons besoin que le système apprenne une partie du modèle pour qu'il puisse nous donner des informations si vous êtes sur la bonne surface. Pour le moment, nous nous sommes arrêtés au codage parcimonieux. Le premier sujet dont j'aimerais parler est l'idée d'apprendre l'inférence et d'ajuster l'apprentissage pour effectuer l'inférence.

Codage Parcimonieux et Algorithme ISTA

Yann LeCun

Alors on va prendre le cas particulier du codage parcimonieux. Le codage parcimonieux c'est l'idée de modéliser une image par une combinaison linéaire d'un petit nombre de fonctions de base. On prend une matrice de décodage, on la multiplie par un vecteur Z et on espère que ce vecteur va avoir un petit nombre de composantes non nulles. À partir de cela, on essaie de reconstruire l'entrée. La façon dont on fait l'inférence est que l'on cherche le vecteur Z qui minimise une fonction à deux termes : un terme de reconstruction quadratique mesurant la distance entre la reconstruction et le vecteur d'entrée, et un deuxième terme qui est une approximation convexe du nombre de composantes non nulles. Il y a un algorithme de minimisation pour ce genre de fonction avec deux termes L1 et L2. Il y a eu beaucoup de propositions, comme le code open source SPAMS par Julien Mairal. Une façon très efficace de trouver le vecteur parcimonieux est l'algorithme ISTA, Iterative Shrinkage Thresholding Algorithm.

Yann LeCun

On part d'un vecteur Z à partir duquel on voudrait reconstruire le vecteur Y en le multipliant par une matrice WD. C'est un terme d'erreur qui mesure la distance euclidienne entre WD Z et Y. C'est un algorithme de gradient pour minimiser la reconstruction, mais vous avez aussi le terme L1 qui mesure la somme des valeurs absolues des composantes de Z. On applique une itération qui consiste à rétrécir toutes les composantes de Z en les rapprochant de zéro.

Yann LeCun

Lambda est la constante qui multiplie le terme L1 dans la fonction de perte. Si on fait tourner cet algorithme jusqu'à convergence, on finit par avoir Z qui minimise la norme au carré de cette différence plus la somme des valeurs absolues des composantes de Z. Cela peut être vu comme un réseau récurrent. Prenez Y, multipliez par une matrice WE et passez par ce module de rétrécissement. Si vous substituez WE et S par leurs valeurs, vous obtenez cette itération représentée par ce graphe de blocs. Vous continuez cette itération jusqu'à convergence.

Apprentissage de l'Inférence et Réseaux Récurrents

Yann LeCun

Mon ancien étudiant post-doctoral Karol Gregor a suggéré de regarder cet algorithme itératif comme un réseau récurrent et d'entraîner les deux matrices WE et S pour donner une bonne approximation rapidement.

Yann LeCun

Pour entraîner un réseau récurrent, on le déplie dans le temps. On l'entraîne ensuite par rétropropagation à condition que cette matrice soit la même à toutes les instances.

Yann LeCun

Cela marche très bien. Si vous prenez l'algorithme Fast ISTA où Z est quatre fois plus grand que Y, vous obtenez une erreur d'itération. En entraînant les matrices sur les mêmes données, on obtient des erreurs plus faibles, surtout après une ou deux itérations. En apprenant des matrices, on peut donner une solution approximative plus rapidement à un problème d'optimisation que ce qui serait normalement requis.

Yann LeCun

Il y a plusieurs variantes de cette méthode que je ne vais pas couvrir.

Yann LeCun

Un étudiant de Guillermo Sapiro nommé Pablo Sprechmann a utilisé cette méthode pour séparer des sources. Par exemple, une discussion entre plusieurs personnes ou de la musique avec plusieurs instruments. Avec cette méthode, on peut séparer des signaux mélangés de manière très rapide.

Yann LeCun

Il travaille toujours sur des méthodes dérivées pour produire des images haute résolution, transformant une vidéo de résolution naturelle en une image haute résolution.

Architectures Convolutionnelles et Représentations Parcimonieuses

Yann LeCun

Les réseaux convolutionnels à propagation avant sont les meilleures architectures pour la reconnaissance. On utilise souvent la récurrence pour des données séquentielles. On pourrait imaginer des connexions récurrentes pour des tâches à propagation avant. On multiplie par une matrice apprise, puis on passe par une ReLU et on ajoute cela à la valeur suivante. On répète ce module plusieurs fois, partageant la matrice ce qui correspond à un réseau récurrent déplié. C'est comme avoir une couche qui fait le traitement normal mais avec une connexion à elle-même pour affiner le résultat. Les réseaux récents avec 150 couches font la même chose. On peut entraîner le système avec plusieurs fonctions de perte : un critère L1 pour la parcimonie, un pour la classification, et peut-être un terme de reconstruction d'entrée. C'est un travail de Joseph Rolfe.

Yann LeCun

Le système produit des représentations parcimonieuses d'entrées. Voici les fonctions de base pour reconstruire une figure MNIST. C'est totalement connecté à chaque couche. Le système commence avec un prototype interne, ajoute des composantes, et le coefficient devient la forme à reconstruire. En termes de classification, cela marche bien. Il y a beaucoup d'idées à creuser où plusieurs tâches sont réalisées à la fois.

Yann LeCun

Pour revenir aux représentations parcimonieuses, il y a une variante convolutionnelle. On reconstruit l'entrée comme une somme pondérée des cartes de caractéristiques convoluées par des noyaux convolutionnels. Voici le diagramme. On voudrait trouver une carte de caractéristiques pour reconstruire l'entrée en faisant une convolution. Il y a un encodeur qui essaie de prédire le vecteur parcimonieux. On trouve Z minimisant la somme de ces termes par un pas de gradient stochastique, et Z devient une cible pour l'encodeur.

Yann LeCun

On pourrait utiliser ce genre de méthode pour pré-entraîner des réseaux convolutionnels. Cela a eu du succès avant 2012 quand les bases de données étaient petites. On fait cela pour une couche, on enlève le décodeur et on garde les lois convolutionnelles apprises. L'avantage est que cela force chaque couche à maintenir le maximum d'informations possible. On peut ensuite ajouter des couches et affiner avec la rétropropagation conventionnelle. Cela marche bien pour l'entraînement d'un système de détection de piétons.

Yann LeCun

En termes pratiques, il y a des architectures plus raffinées utilisant un encodeur convolutionnel et un décodeur linéaire. La parcimonie s'applique aux unités après le pooling. Si vous organisez ces pools pour qu'ils se chevauchent, cela donne une évolution douce car les pools groupent des filtres qui se ressemblent. C'est ainsi que les neurones sont organisés dans V1, mesurant l'orientation dans le cortex individuel.

Yann LeCun

Voici un exemple des résultats avec des algorithmes d'apprentissage reliés à la biologie. Le codage parcimonieux venait à l'origine des neurosciences. D'autres méthodes basées on l'inhibition latérale sont plus proches de la biologie mais sont un peu plus obscures.

Analyse des Caractéristiques Lentes et Invariance

Yann LeCun

Une technique pour apprendre des caractéristiques non supervisées est d'apprendre des caractéristiques invariantes. C'est l'analyse des caractéristiques lentes. Karol Gregor a pensé à entraîner un auto-encodeur sur des séries d'images vidéo pour produire deux vecteurs : un représentant le contenu, qui ne change pas beaucoup sur trois images, et un représentant la position des objets, qui change au fur et à mesure qu'ils bougent. Vous forcez l'encodeur de contenu à être le même pour les images successives. Pour éviter que le système n'ignore une partie du réseau, on met une contrainte de parcimonie sur les composantes. Durant la reconstruction, l'image est le produit terme à terme de la localisation et de la nature de l'objet. Si vous activez la taille moyenne et un cercle par une multiplication, vous reconstruisez l'entrée en utilisant un décodeur.

Yann LeCun

Cela marche assez bien. On obtient des détecteurs pour une caractéristique spécifique sans la position et d'autres qui localisent l'activité sans se soucier de leur nature. L'apprentissage temporel utilisant la cohérence est une vieille idée, comme la slow feature analysis. Une façon récente utilise un auto-encodeur convolutionnel avec ReLU et un pooling spatial. On dit qu'après le pooling, les représentations pour deux images successives doivent être aussi similaires que possible. Le pooling évolue lentement dans le temps. On obtient des filtres similaires au sein d'un même pool, ce qui est assez joli. Voici les filtres typiques obtenus sur CIFAR-10.

Organisation Topographique et Neurosciences

?

Ce qui signifie que ce sont des filtres similaires regroupés dans un pool.

Yann LeCun

Plusieurs méthodes ont été proposées dans le passé pour l'analyse en composantes indépendantes et d'autres contextes.

?

Plusieurs méthodes ont été proposées par le passé dans différents contextes, notamment pour l'analyse des composantes indépendantes.

Yann LeCun

Mais ce qui est intéressant pour les gens en neurosciences, c'est que si on organise ces pools comme des composantes de Z, on parle des caractéristiques extraites par chaque unité dans le vecteur Z.

?

Mais ce qui est intéressant pour les gens en neurosciences, c'est que si on organise ces pools comme des composantes de Z, on parle des caractéristiques extraites par chaque unité dans le vecteur Z.

Yann LeCun

Si on regroupe les pools et s'ils se chevauchent les uns les autres, ça donne ça.

?

Si vous regroupez les pools et s'ils se chevauchent les uns les autres, cela donne cela.

Yann LeCun

On voit ces espèces d'évolution un peu smooth parce que les pools regroupent des filtres qui s'activent ensemble et se ressemblent.

?

On peut voir une sorte d'évolution fluide parce que les pools regroupent des filtres qui sont activés ensemble et se ressemblent.

Yann LeCun

Si on met des groupes couverts par des filtres qui se ressemblent au sein du pool, on aboutit à cette carte topographique.

?

Si vous mettez des groupes couverts par des filtres qui se ressemblent au sein du pool, vous aboutissez à cette carte topographique.

Yann LeCun

Si on demande aux gens en neurosciences comment sont organisés les neurones dans V1 par exemple.

?

Si vous demandez aux gens en neurosciences comment les neurones sont organisés dans V1.

Yann LeCun

Ce sont des cartes produites par un auto-encodeur parcimonieux avec une connexion locale, qui n'est pas convolutionnel.

?

Ce sont des cartes produites par un auto-encodeur parcimonieux avec une connexion locale qui n'est pas convolutionnelle.

Yann LeCun

Voici des articles de neurosciences mesurant l'orientation des neurones dans le cortex.

?

Voici des articles de neurosciences mesurant l'orientation des neurones dans le cortex.

Yann LeCun

Voici un autre exemple des résultats avec ce type d'algorithme.

?

Voici un autre exemple des résultats avec ce type d'algorithme.

Yann LeCun

Ce sont des algorithmes d'apprentissage qui peuvent être reliés à la biologie. Le sparse coding à l'origine venait des neurosciences.

?

Ce sont des algorithmes d'apprentissage qui peuvent être reliés à la biologie. Le codage parcimonieux venait à l'origine des neurosciences.

Yann LeCun

C'était le sparse encoding et d'autres méthodes basées sur l'inhibition latérale.

?

C'était le codage parcimonieux et d'autres méthodes basées on l'inhibition latérale.

Yann LeCun

Elles se rapprochent plus de ce qu'on voit dans la biologie, mais c'est un peu plus obscur.

?

Elles se rapprochent plus de ce que l'on voit en biologie, mais c'est un peu plus obscur.

Yann LeCun

Je vais sauter ça.

?

Je vais sauter ça.

Auto-encodeurs Vidéo et Séparation Contenu/Position

Yann LeCun

Une technique pour essayer d'apprendre des caractéristiques invariantes par rapport à certaines transformations.

?

Une technique pour essayer d'apprendre des caractéristiques invariantes par rapport à certaines transformations.

Yann LeCun

C'est la slow feature analysis. Mon étudiant Karol Gregor a pensé à entraîner un auto-encodeur sur une série d'images vidéo.

?

C'est l'analyse des caractéristiques lentes. Mon étudiant Karol Gregor a pensé à entraîner un auto-encodeur sur une série d'images vidéo.

Yann LeCun

On produit deux vecteurs à partir de trois images successives. L'un est censé représenter le contenu de l'image.

?

On produit deux vecteurs à partir de trois images vidéo successives. L'un est censé représenter le contenu de l'image.

Yann LeCun

Le contenu ne changera pas beaucoup, mais l'autre vecteur représentera la position des objets qui se déplacent.

?

Le contenu ne changera pas beaucoup, mais l'autre vecteur représentera la position des objets en mouvement.

Yann LeCun

Vous avez deux encodeurs : un pour le contenu, forcé d'être le même, et un autre encodant la position des objets.

?

Vous avez deux encodeurs : l'un pour le contenu, forcé d'être le même, et un autre encodant la position des objets.

Yann LeCun

La position peut changer d'une image à l'autre. Mais si on le fait ainsi, le système ignorera cette partie.

?

La position peut changer d'une image à l'autre. Mais si on le fait ainsi, le système ignorera cette partie.

Yann LeCun

Vous allez simplement passer l'information directement ici.

?

Vous allez simplement passer l'information directement ici.

Yann LeCun

Il faut mettre une contrainte de parcimonie sur ces composantes pour limiter la quantité d'informations.

?

Il faut mettre une contrainte de parcimonie sur ces composantes pour limiter l'information.

Yann LeCun

Pour que ces vecteurs soient parcimonieux avec très peu de composantes non nulles.

?

Pour que ces vecteurs soient parcimonieux avec très peu de composantes non nulles.

Yann LeCun

On entraîne cela comme un auto-encodeur parcimonieux. Il y a un truc ici cependant.

?

On entraîne cela comme un auto-encodeur parcimonieux. Il y a un truc ici cependant.

Yann LeCun

Durant la reconstruction d'une image, on fait le produit terme à terme de la localisation de l'objet et du contenu.

?

Durant la reconstruction de l'image, vous faites le produit terme à terme de la localisation de l'objet et du contenu.

Yann LeCun

Supposons que vous ayez un détecteur de forme et des détecteurs mesurant la taille de chaque objet.

?

Supposons que vous ayez un détecteur de forme et des détecteurs mesurant la taille de chaque objet.

Yann LeCun

Si vous activez la taille moyenne et un cercle par une multiplication terme à terme de ces deux vecteurs.

?

Si vous activez la taille moyenne et un cercle par une multiplication terme à terme de ces deux vecteurs.

Yann LeCun

Ça marche très bien. On se retrouve avec des détecteurs pour une caractéristique spécifique sans la position.

?

Ça marche très bien. On se retrouve avec des détecteurs pour une caractéristique spécifique sans la position.

Yann LeCun

Ce sont des caractéristiques de bas niveau.

?

Ce sont des caractéristiques de bas niveau.

Yann LeCun

Plus loin, vous avez des détecteurs qui disent qu'il y a quelque chose dans ce coin mais je ne sais pas quoi.

?

Plus loin, vous avez des détecteurs qui disent qu'il y a quelque chose dans ce coin mais je ne sais pas quoi.

Yann LeCun

Ces détecteurs s'occupent de l'endroit où cela apparaît dans le champ visuel plutôt que de l'orientation.

?

Ces détecteurs traitent de l'endroit où cela apparaît dans le champ visuel plutôt que de l'orientation.

Yann LeCun

Ce sont des filtres qui localisent l'activité sans se soucier de sa nature. On peut faire de la reconstruction.

?

Ce sont des filtres qui localisent l'activité sans se soucier de sa nature. Nous pouvons faire de la reconstruction.

Yann LeCun

L'idée de l'apprentissage temporel utilisant la cohérence est ancienne, comme la slow feature analysis.

?

L'idée de l'apprentissage temporel utilisant la cohérence est ancienne, comme la slow feature analysis.

Yann LeCun

Il y a de nombreuses façons de la mettre en œuvre. Voici un auto-encodeur qui prend une image vidéo.

?

Il y a de nombreuses façons de la mettre en œuvre. Voici un auto-encodeur qui prend une image vidéo.

Yann LeCun

C'est une convolution avec ReLU. On applique cet encodage avec une reconstruction pour chaque image.

?

C'est une convolution avec ReLU. Nous appliquons cet encodage avec une reconstruction pour chaque image.

Yann LeCun

Après le pooling spatial, on dit que les représentations extraites pour deux images sont aussi similaires que possible.

?

Après le pooling spatial, nous disons que les représentations extraites pour deux images sont aussi similaires que possible.

Yann LeCun

Le pooling est censé évoluer lentement dans le temps on des images vidéo successives.

?

Le pooling est censé évoluer lentement dans le temps on des images vidéo successives.

Yann LeCun

On obtient des filtres qui font partie du même pool. Ils sont très similaires, avec juste un décalage.

?

On obtient des filtres qui font partie du même pool. Ils sont très similaires, avec juste un décalage.

Yann LeCun

Par groupes de quatre, ils appartiennent au même pool. C'est assez joli.

?

Par groupes de quatre, ils appartiennent au même pool. C'est assez joli.

Yann LeCun

Voici les filtres typiques obtenus en entraînant une couche de même nature on CIFAR-10.

?

Voici les filtres typiques obtenus en entraînant une couche de même nature on CIFAR-10.

Yann LeCun

Il y a un raffinement qui consiste à séparer deux types de données provenant du pooling.

?

Il y a un raffinement qui consiste à séparer deux types de données sortant du pooling.

Yann LeCun

La sortie du pooling peut être un max pooling ou L2, un peu invariante à la position.

?

La sortie du pooling peut être un max pooling ou L2, un peu invariante à la position.

Yann LeCun

On peut obtenir la position du commutateur ou du max, qui est propagée vers la sortie.

?

On peut obtenir la position du commutateur ou du max, qui est propagée vers la sortie.

Yann LeCun

On sépare ainsi le 'quoi' (le contenu invariant) et le 'où' (la position du max).

?

On sépare ainsi le 'quoi' (contenu invariant) et le 'où' (position du max).

Yann LeCun

On essaie de prédire la représentation à partir des 'où' et des 'quoi' de deux images pour la troisième.

?

On essaie de prédire la représentation à partir des 'où' et des 'quoi' de deux images pour la troisième.

Yann LeCun

Le contenu est la moyenne des images précédentes, mais la position sera une extrapolation linéaire.

?

Le contenu est la moyenne des images précédentes, mais la position sera une extrapolation linéaire.

Yann LeCun

À partir de cette prédiction du 'quoi' et du 'où', on reconstruit l'entrée à l'aide d'un décodeur.

?

À partir de cette prédiction du 'quoi' et du 'où', on reconstruit l'entrée à l'aide d'un décodeur.

Yann LeCun

Le pooling est un peu compliqué, mais j'y reviendrai avec un exemple plus éloquent.

?

Le pooling est un peu compliqué, mais j'y reviendrai avec un exemple plus éloquent.

Yann LeCun

Dans ce cas, on obtient des filtres amusants où les pools produisent encore des caractéristiques.

?

Dans ce cas, on obtient des filtres amusants où les pools produisent encore des caractéristiques.

Yann LeCun

Si les pools se chevauchent, il s'agit d'une topologie linéaire avec une évolution lente.

?

Si les pools se chevauchent, il s'agit d'une topologie linéaire avec une évolution lente.

Yann LeCun

Cela peut être utilisé pour prédire la reconstruction d'images.

?

Cela peut être utilisé pour prédire la reconstruction d'images.

Yann LeCun

L'interpolation de vues permet de reconstruire des vues tournées. Il faut des réseaux très profonds pour cela.

?

L'interpolation de vues permet la reconstruction de vues tournées. Des réseaux très profonds sont nécessaires pour cela.

Vers une Règle Simple pour le Supervisé et Non Supervisé

Yann LeCun

Ok, dans la suite, je me pose la question de savoir comment intégrer l'apprentissage supervisé et non supervisé dans une seule règle simple.

?

Dans la suite, je me demande comment intégrer l'apprentissage supervisé et non supervisé dans une seule règle simple.

Yann LeCun

Les algorithmes de Boltzmann existent mais sont inefficaces et difficiles à mettre à l'échelle à cause de l'échantillonnage.

?

Les algorithmes de Boltzmann existent mais sont inefficaces et difficiles à mettre à l'échelle en raison de l'échantillonnage.

Yann LeCun

Cette idée n'est pas nouvelle, elle date de 1983.

?

Cette idée n'est pas nouvelle ; elle date de 1983.

Yann LeCun

Il serait bon d'avoir un algorithme qui fasse les deux selon la façon dont il est utilisé.

?

Il serait bon d'avoir un algorithme qui fasse les deux selon la façon dont il est utilisé.

Yann LeCun

L'apprentissage non supervisé par reconstruction est une forme d'apprentissage supervisé où l'on essaie de reconstruire l'entrée.

?

L'apprentissage non supervisé par reconstruction est une forme d'apprentissage supervisé où l'on essaie de reconstruire l'entrée.

Yann LeCun

Le système doit reconstruire ce qui a été appris, mais pas les échantillons en dehors de la densité de données.

?

Le système doit reconstruire ce qui a été appris, mais pas les échantillons en dehors de la densité de données.

Yann LeCun

Les machines de Boltzmann sont inefficaces car elles tentent d'augmenter l'énergie des données non observées.

?

Les machines de Boltzmann sont inefficaces car elles tentent d'augmenter l'énergie des données non observées.

Yann LeCun

L'apprentissage par reconstruction prend une entrée via un encodeur convolutionnel pour sortir une catégorie d'objet.

?

L'apprentissage par reconstruction prend une entrée via un encodeur convolutionnel pour sortir une catégorie d'objet.

Yann LeCun

On ne peut pas reconstruire l'entrée à partir d'un vecteur de scores car c'est une fonction surjective.

?

L'entrée ne peut pas être reconstruite à partir d'un vecteur de scores car c'est une fonction surjective.

Yann LeCun

Elle associe une sortie à plusieurs entrées ; déplacer l'objet ne change probablement pas sa sortie.

?

Elle associe une sortie à plusieurs entrées ; déplacer l'objet ne change probablement pas sa sortie.

Yann LeCun

On ne peut pas partir de la classe et régénérer l'entrée. C'est impossible.

?

Nous ne pouvons pas partir de la classe et régénérer l'entrée. C'est impossible.

Yann LeCun

L'apprentissage par reconstruction pour la reconnaissance de formes est incompatible avec le supervisé.

?

L'apprentissage par reconstruction pour la reconnaissance de formes est incompatible avec l'apprentissage supervisé.

Yann LeCun

Par instinct, on peut voir cela comme une fonction probabiliste stochastique.

?

Par instinct, on peut voir cela comme une fonction probabiliste stochastique.

Yann LeCun

C'est une estimation de densité conditionnelle, ce qui est le problème des machines de Boltzmann.

?

C'est une estimation de densité conditionnelle, ce qui est le problème des machines de Boltzmann.

Yann LeCun

Il est difficile de paramétrer la densité dans des espaces de grande dimension comme les images.

?

Il est difficile de paramétrer la densité dans des espaces de grande dimension comme les images.

Yann LeCun

Une solution consiste à séparer le contenu ('quoi') dans le calcul fait par le réseau.

?

Une solution consiste à séparer le contenu ('quoi') dans le calcul effectué par le réseau.

Yann LeCun

Après le pooling, on oublie la position. Il n'y a pas assez d'informations dans le contenu pour reconstruire.

?

Après le pooling, la position est oubliée. Il n'y a pas assez d'informations dans le contenu pour reconstruire.

Yann LeCun

En gardant les informations d'instanciation on la position, on peut faire du unpooling.

?

En conservant les informations d'instanciation on la position, on peut faire du unpooling.

Yann LeCun

On factorise les explications de l'entrée basées on le contenu et les paramètres de position.

?

On factorise les explications de l'entrée basées on le contenu et les paramètres de position.

Yann LeCun

Karol Gregor et Marc'Aurelio Ranzato ont travaillé on des idées similaires avec le max pooling.

?

Karol Gregor et Marc'Aurelio Ranzato ont travaillé on des idées similaires avec le max pooling.

Yann LeCun

L'idée d'unités choisissant dynamiquement des emplacements et conservant l'information remonte à longtemps.

?

L'idée d'unités choisissant dynamiquement des emplacements et conservant l'information remonte à longtemps.

Mécanismes de Pooling et Unpooling (Quoi et Où)

Yann LeCun

Hinton, Zemel et von der Malsburg ont parlé de concepts similaires mais plus abstraits.

?

Hinton, Zemel et von der Malsburg ont parlé de concepts similaires mais plus abstraits.

Yann LeCun

Le pooling et le unpooling fonctionnent comme suit.

?

Le pooling et le unpooling fonctionnent comme suit.

Yann LeCun

On calcule une moyenne pondérée des valeurs correspondant à une version soft d'un max.

?

On calcule une moyenne pondérée des valeurs correspondant à une version soft d'un max.

Yann LeCun

On calcule un score entre 0 et 1, qui est l'exponentielle de la valeur.

?

On calcule un score entre 0 et 1, qui est l'exponentielle de la valeur.

Yann LeCun

Bêta est un coefficient.

?

Bêta est un coefficient.

Yann LeCun

Si bêta est 0, c'est la moyenne. On peut ajuster cela.

?

Si bêta est 0, c'est la moyenne. On peut ajuster cela.

Yann LeCun

Trop de données passent par le 'où'. Si vous poolez neuf valeurs, vous avez trop de paramètres libres.

?

Trop de données passent par le 'où'. Si vous regroupez neuf valeurs, vous avez trop de paramètres libres.

Yann LeCun

Toute l'information passe par le 'où', donc ça ne peut pas marcher. Il y a trop de flexibilité.

?

Toute l'information passe par le 'où', donc ça ne peut pas marcher. Il y a trop de flexibilité.

Yann LeCun

On réduit ce 'où' à deux variables indiquant la position moyenne d'activation.

?

On réduit ce 'où' à deux variables indiquant la position moyenne d'activation.

Yann LeCun

C'est plus facile à comprendre manuellement. Si la valeur maximale est ici.

?

C'est plus facile à comprendre manuellement. Si la valeur maximale est ici.

Yann LeCun

On calcule les coordonnées moyennes XY avec ce soft max sans tenir compte des valeurs.

?

On calcule les coordonnées moyennes XY avec ce soft max sans tenir compte des valeurs.

Yann LeCun

On agit comme si toute l'activité était regroupée autour de cette position pour faire le unpooling.

?

On agit comme si toute l'activité était regroupée autour de cette position pour le unpooling.

Yann LeCun

Au lieu de neuf valeurs, vous n'auriez que les coordonnées X et Y. Le pooling peint la valeur à l'endroit déterminé.

?

Au lieu de neuf valeurs, vous n'auriez que les coordonnées XY. Le pooling peint la valeur à l'endroit déterminé.

Yann LeCun

Le champ récepteur est déterminé par ce 'où'. C'est beaucoup plus compact.

?

Le champ récepteur est déterminé par ce 'où'. C'est beaucoup plus compact.

Yann LeCun

Ces cartes deviennent parcimonieuses car une seule valeur par bloc est écrite en unpooling.

?

Ces cartes deviennent parcimonieuses car une seule valeur par bloc est écrite lors du unpooling.

Yann LeCun

Ce sont des auto-encodeurs parcimonieux par défaut sans critères explicites.

?

Ce sont des auto-encodeurs parcimonieux par défaut sans critères explicites.

Yann LeCun

On peut empiler ces auto-encodeurs avec séparations 'quoi-où'.

?

On peut empiler ces auto-encodeurs 'quoi-où'.

Yann LeCun

C'est un réseau convolutionnel traditionnel où l'on sépare le 'où' pour produire des cartes de caractéristiques.

?

C'est un réseau convolutionnel traditionnel où l'on sépare le 'où' pour produire des cartes de caractéristiques.

Yann LeCun

C'est un réseau déconvolutionnel où l'on remplace le pooling par le unpooling.

?

C'est un réseau déconvolutionnel où le pooling est remplacé par le unpooling.

Yann LeCun

Dans chaque couche, on met un coût L2 ou cross-entropie pour la reconstruction.

?

Dans chaque couche, on met un coût L2 ou une entropie croisée pour la reconstruction.

Yann LeCun

On obtient une reconstruction réelle et des erreurs de classification. On peut faire de l'apprentissage supervisé ou non supervisé.

?

On obtient une reconstruction réelle et des erreurs de classification. On peut faire de l'apprentissage supervisé ou non supervisé.

Yann LeCun

Si on connaît la sortie désirée, on a un coût supervisé et on peut faire de la rétropropagation.

?

Si la sortie souhaitée est connue, on a un coût supervisé et on peut faire de la rétropropagation.

Yann LeCun

On peut utiliser le coût de reconstruction comme une régularisation du coût supervisé.

?

On peut utiliser le coût de reconstruction comme une régularisation du coût supervisé.

Yann LeCun

Il faut produire une bonne classification tout en veillant à ce que les caractéristiques permettent de reconstruire l'entrée.

?

Une bonne classification doit être produite tout en veillant à ce que les caractéristiques permettent de reconstruire l'entrée.

Yann LeCun

Cela entraîne la machine à reconnaître des catégories pour lesquelles elle n'a pas été pré-entraînée.

?

Cela entraîne la machine à reconnaître des catégories pour lesquelles elle n'a pas été pré-entraînée.

Yann LeCun

Sans étiquettes, on passe par le réseau pour obtenir un auto-encodeur profond.

?

Sans étiquettes, on passe par le réseau pour obtenir un auto-encodeur profond.

Yann LeCun

On peut l'entraîner comme un auto-encodeur non supervisé. Si on ne connaît pas la sortie, on la laisse prendre la valeur qu'elle veut.

?

Il peut être entraîné comme un auto-encodeur non supervisé. Si la sortie est inconnue, on la laisse prendre n'importe quelle valeur.

Yann LeCun

C'est un système de classification statique utilisé en supervisé ou non supervisé.

?

C'est un système de classification statique utilisé en mode supervisé ou non supervisé.

Yann LeCun

La reconstruction agit comme un régularisateur permettant d'utiliser des échantillons non étiquetés.

?

La reconstruction agit comme un régularisateur permettant d'utiliser des échantillons non étiquetés.

Yann LeCun

Cela marche assez bien. Voici des exemples de reconstructions utilisant le unpooling au lieu de l'upsampling.

?

Cela fonctionne assez bien. Voici des exemples de reconstructions utilisant le unpooling au lieu de l'upsampling.

Yann LeCun

Beaucoup de réseaux convolutionnels utilisent l'upsampling en copiant simplement les valeurs.

?

De nombreux réseaux convolutionnels utilisent l'upsampling en copiant simplement les valeurs.

Yann LeCun

On n'obtient pas de bonnes reconstructions si l'entrée varie en position car le système est invariant.

?

On n'obtient pas de bonnes reconstructions si l'entrée varie en position car le système est invariant.

Yann LeCun

Avec le unpooling, on peut reconstruire les entrées assez bien.

?

Avec le unpooling, on peut assez bien reconstruire les entrées.

Yann LeCun

Même avec beaucoup de unpooling, on peut encore reconstruire.

?

Même avec beaucoup de unpooling, la reconstruction est toujours possible.

Yann LeCun

Cette technique est gourmande et difficile à mettre en œuvre on de grandes bases de données.

?

Cette technique est gourmande et difficile à mettre en œuvre on de grandes bases de données.

Yann LeCun

C'est une architecture en échelle avec un réseau avant et arrière et des copies.

?

C'est une architecture en échelle avec des réseaux avant et arrière et des copies.

Yann LeCun

Sans séparations 'quoi-où', les résultats sont très bons on une base de données en particulier.

?

Sans les séparations 'quoi-où', les résultats sont très bons on une base de données particulière.

Yann LeCun

On ne comprend pas bien pourquoi cette méthode écrase tout le monde.

?

On ne comprend pas bien pourquoi cette méthode surpasse toutes les autres.

Yann LeCun

De bons taux d'erreur on SVHN.

?

Bons taux d'erreur on SVHN.

Yann LeCun

C'est un sous-ensemble d'ImageNet avec peu d'exemples d'entraînement mais beaucoup d'exemples non étiquetés.

?

C'est un sous-ensemble d'ImageNet avec peu d'échantillons d'entraînement mais beaucoup d'exemples non étiquetés.

Yann LeCun

Le 'stacked quoi-où auto-encodeur' marche tout aussi bien.

?

Le 'stacked what-where auto-encoder' fonctionne tout aussi bien.

Yann LeCun

74 % de précision avec 5 000 échantillons d'entraînement et 100 000 exemples non étiquetés.

?

Précision de 74 % avec 5 000 échantillons d'entraînement et 100 000 exemples non étiquetés.

Yann LeCun

Le même réseau entraîné classiquement n'obtient que 57 %.

?

Le même réseau entraîné de manière classique n'obtient que 57 %.

Apprentissage Prédictif et Modèles du Monde

Yann LeCun

Revenons à l'apprentissage prédictif et à la prédiction vidéo temporelle.

?

Revenons à l'apprentissage prédictif et à la prédiction vidéo temporelle.

Yann LeCun

On essaie de prédire l'image suivante d'une vidéo ou l'état final d'un stylo on sa pointe.

?

Nous essayons de prédire l'image suivante d'une vidéo ou l'état final d'un stylo on sa pointe.

Yann LeCun

Cela s'applique à toutes les inférences de données non observées car cachées ou dans le futur.

?

Cela s'applique à toutes les inférences de données non observées, qu'elles soient cachées ou dans le futur.

Yann LeCun

Le monde physique est incertain.

?

Le monde physique est incertain.

Yann LeCun

Si le système a prédit un autre angle pour le stylo qui tombe, on ne veut pas le punir.

?

Si le système a prédit un autre angle pour le stylo qui tombe, nous ne voulons pas le punir.

Yann LeCun

La prédiction est correcte si elle se trouve on une surface de vraisemblance.

?

La prédiction est correcte si elle se situe on une surface de vraisemblance.

Yann LeCun

Les variables latentes Z sont un paramétrage de la surface.

?

Les variables latentes Z sont une paramétrisation de la surface.

Yann LeCun

C'est l'idée du codage parcimonieux.

?

C'est l'idée du codage parcimonieux.

Yann LeCun

La surface est une union de plans de faible dimension dans l'espace environnant.

?

La surface est une union de plans de faible dimension dans l'espace environnant.

Yann LeCun

Imaginez que vous donniez à un réseau convolutionnel une observation.

?

Imaginez donner une observation à un réseau convolutionnel.

Yann LeCun

On utilise des nombres aléatoires encodant les possibilités de prédiction.

?

Nous utilisons des nombres aléatoires encodant les possibilités de prédiction.

Yann LeCun

Comment concevoir une fonction de perte pour que la machine ne soit pas punie ? On ne connaît pas la nature de cette surface.

?

Comment concevoir une fonction de perte pour que la machine ne soit pas punie ? La nature de cette surface est inconnue.

Yann LeCun

Une solution consiste à observer les X aussi.

?

Une solution consiste à observer également les X.

Yann LeCun

Pourquoi avons-nous besoin de modèles prédictifs du monde ?

?

Pourquoi avons-nous besoin de modèles prédictifs du monde ?

Yann LeCun

C'est par ces modèles que nous pouvons planifier une séquence d'actions.

?

C'est grâce à ces modèles que nous pouvons planifier une séquence d'actions.

Yann LeCun

Si le monde est un système dynamique avec un état interne, il passe par une fonction d'évolution.

?

Si le monde est un système dynamique avec un état interne, il passe par une fonction d'évolution.

Yann LeCun

On peut agir on le monde en lui donnant une action qui influence son état futur.

?

On peut agir on le monde en lui donnant une action qui influence son état futur.

Yann LeCun

Mais on ne peut pas observer l'état complet car le monde peut être stochastique.

?

Mais on ne peut pas observer l'état complet car le monde peut être stochastique.

Yann LeCun

Information d'avant.

?

Information a priori.

Yann LeCun

Il faut un modèle prédictif et un contrôleur pour amener le monde à un état particulier.

?

Un modèle prédictif et un contrôleur sont nécessaires pour amener le monde vers un état particulier.

Yann LeCun

L'état du monde vous inclut vous-même. Imaginez un dialogue homme-machine.

?

L'état du monde vous inclut vous-même. Imaginez un dialogue homme-machine.

Yann LeCun

Si on demande de réserver une table, le monde doit être dans l'état correspondant au client content.

?

Si une table est demandée, le monde doit être dans l'état correspondant au client satisfait.

Yann LeCun

Dans un jeu d'échecs, vous voulez gagner mais vous ne savez pas ce que l'adversaire va jouer.

?

Dans une partie d'échecs, vous voulez gagner mais vous ne savez pas ce que l'adversaire va jouer.

Yann LeCun

On peut simuler le jeu, c'est pourquoi l'apprentissage par renforcement fonctionne bien pour les jeux.

?

Le jeu peut être simulé, c'est pourquoi l'apprentissage par renforcement fonctionne bien pour les jeux.

Yann LeCun

Le monde peut être simulé très rapidement pour les échecs ou le go.

?

Le monde peut être simulé très rapidement pour les échecs ou le Go.

Yann LeCun

Si les actions sont continues comme dans StarCraft ou pour les robots, c'est plus compliqué.

?

Si les actions sont continues comme dans StarCraft ou pour les robots, c'est plus compliqué.

Yann LeCun

On a besoin d'un modèle du monde vu comme un réseau de neurones prédisant l'état futur.

?

Un modèle du monde est nécessaire, vu comme un réseau de neurones prédisant l'état futur.

Yann LeCun

Voici une possibilité on l'état futur.

?

Voici une possibilité on l'état futur.

Yann LeCun

On peut rétropropager les gradients pour simuler une séquence d'actions sans le monde réel.

?

Les gradients peuvent être rétropropagés pour simuler une séquence d'actions sans le monde réel.

Yann LeCun

Ensuite, on peut jouer cela contre le monde réel pour obtenir le résultat.

?

Ensuite, cela peut être joué contre le monde réel pour obtenir le résultat.

Yann LeCun

On utilise ce type d'architecture 'scénario' en apprentissage par renforcement.

?

Ce type d'architecture 'scénario' est utilisé en apprentissage par renforcement.

Yann LeCun

C'est l'acteur-critique où le critique prédit une valeur de récompense.

?

C'est l'acteur-critique, où le critique prédit une valeur de récompense.

Yann LeCun

C'est un modèle standard en théorie du contrôle optimal.

?

Il s'agit d'un modèle standard en théorie du contrôle optimal.

Yann LeCun

Il y a deux problèmes : apprendre un modèle prédictif du monde et enseigner un contrôleur.

?

Il y a deux problèmes : apprendre un modèle prédictif du monde et enseigner un contrôleur.

Yann LeCun

C'est ce qu'est réellement l'intelligence : la capacité de prédire.

?

C'est ce qu'est réellement l'intelligence : la capacité de prédire.

Simulation Physique et Prédiction de Chute

Yann LeCun

Voici une expérience faite par mes collègues Lerer, Gross et Fergus chez Facebook Research.

?

Voici une expérience réalisée par mes collègues Lerer, Gross et Fergus chez Facebook Research.

Yann LeCun

Ils ont produit une interface entre Torch et le moteur Unreal Engine qui inclut la physique.

?

Ils ont produit une interface entre Torch et le moteur Unreal Engine, qui inclut la physique.

Yann LeCun

On a interfacé Torch avec Unreal Engine pour gérer la gravité et l'inertie d'objets en collision.

?

Nous avons interfacé Torch avec Unreal Engine pour gérer la gravité et l'inertie des objets en collision.

Yann LeCun

Image après une étape de simulation. Ici vous avez trois tubes empilés. On connecte un réseau convolutionnel.

Yann LeCun

Image après une étape de simulation. Ici, vous avez trois tubes empilés.

Yann LeCun

Nous connectons un réseau convolutionnel et nous lui demandons de nous dire si cette tour va tomber.

Yann LeCun

Tout simplement une classification binaire. Dans quelle position se trouveront les cubes ?

Yann LeCun

Disons à un moment donné ou à la fin.

Yann LeCun

C'est une sorte de modèle prédictif de la physique par rapport à cette situation.

Yann LeCun

Bien sûr, vous pouvez le faire facilement car vous pouvez simuler de nombreuses situations.

Yann LeCun

Voici une image que vous donnez au système, et voici ce qui se passe réellement. Ce sont des masques des blocs.

Yann LeCun

Le modèle prédictif, un réseau convolutionnel, prédit une image d'un masque.

Yann LeCun

Le système prédit que ce bloc jaune va tomber dans cette direction.

Yann LeCun

C'est un peu flou, mais c'est une prédiction raisonnable. Il prédit plus ou moins précisément.

Yann LeCun

Nous pouvons donc les entraîner on des images virtuelles en utilisant différentes textures et les appliquer à des images réelles.

Yann LeCun

En utilisant des images réelles provenant d'une caméra vidéo, les prédictions ne sont pas mauvaises. Ça marche à peu près.

Yann LeCun

Cela ne fonctionne pas parfaitement, mais cela fonctionne.

Yann LeCun

Ici, il s'est trompé, même si ce n'est pas entièrement.

Yann LeCun

La tour s'effondre, mais c'est un peu ambigu. On ne voit pas que ce cube était à l'arrière.

Yann LeCun

On ne voit pas ici que ce cube était à l'arrière.

Yann LeCun

La précision est de 89 % on les images synthétiques, et un peu moins on les images réelles.

Réseaux Antagonistes Génératifs (GANs)

Yann LeCun

Cette idée de prédiction est très importante on les prédictions vidéo avec des images naturelles.

Yann LeCun

Les réseaux antagonistes génératifs d'Ian Goodfellow datent d'environ un an et demi.

Yann LeCun

Il a eu cette idée alors qu'il était étudiant avec Yoshua Bengio, puis il est allé chez Google et récemment chez OpenAI.

Yann LeCun

Un réseau discriminateur est entraîné on dire si une image est réelle ou fausse.

Yann LeCun

Il nous dira si la sortie est une image réelle de la base de données ou une image générée factice.

Yann LeCun

C'est notre prédicteur. Vous observez quatre images et prédisez la suivante.

Yann LeCun

Le discriminateur est entraîné on dire si l'image a été générée ou si elle provient de la base de données.

Yann LeCun

Donc ça.

Yann LeCun

Nous entraînons le discriminateur et le générateur simultanément.

Yann LeCun

Le système doit apprendre relativement vite par rapport à l'autre.

Yann LeCun

La fonction de perte essaie de produire des images que le discriminateur considère comme réelles.

Yann LeCun

Le générateur obtient un gradient via la rétropropagation indiquant comment rendre l'image réelle.

Yann LeCun

Donc, se rapprocher de la surface de vraisemblance.

Yann LeCun

Le générateur récupère la direction et modifie les paramètres on s'en rapprocher.

Yann LeCun

L'apprentissage antagoniste utilise un discriminateur on distinguer le vrai du faux.

Yann LeCun

C'est une optimisation où l'on trouve un point de selle, pas seulement un minimum.

Yann LeCun

C'est un minimum on le discriminateur et un maximum on les paramètres du générateur.

Yann LeCun

C'est donc un point de selle. C'est difficile à trouver.

Yann LeCun

Les gens ont découvert des propriétés on que le discriminateur fasse son travail.

Yann LeCun

Il y a eu des expériences passionnantes on MNIST. Emily Denton a proposé un système de génération d'images.

Yann LeCun

Une série de co-auteurs de Facebook a proposé un système de génération d'images non conditionnel.

Yann LeCun

D'une version basse résolution de l'image qui va.

Yann LeCun

On augmente la résolution et on calcule la différence on obtenir une image laplacienne.

Yann LeCun

Filtrée.

Yann LeCun

Le discriminateur nous dit s'il s'agit d'un faux ou d'un vrai à de nombreuses échelles différentes. C'est LAPGAN.

Yann LeCun

Les générateurs et les discriminateurs ne sont pas partagés, mais cela pourrait être fait.

Yann LeCun

On a besoin de nonces, de nombres aléatoires, à l'entrée du générateur à chaque couche.

Yann LeCun

Et à partir de là, il génère une image.

Yann LeCun

On affine une image basse résolution on générer des résultats raisonnables. Ce n'est cependant pas parfait.

Yann LeCun

Alec Radford, Luke Metz et Soumith Chintala ont produit DCGAN.

Yann LeCun

Ils ont entraîné cela on des chambres à coucher. Ces images sont tout à fait raisonnables et extraordinaires.

Yann LeCun

Elles sont différentes des exemples de la base d'entraînement. La plupart ont un lit ou une fenêtre.

Yann LeCun

Le fait que cela fonctionne est époustouflant. Cela conduit à la paramétrisation d'une surface de vraisemblance.

Yann LeCun

Il peut s'agir d'une courbe compliquée avec une topologie compliquée paramétrée par l'apprentissage antagoniste.

Yann LeCun

En utilisant des nombres aléatoires tirés on un hypercube ou une gaussienne.

Yann LeCun

C'est une technique très polyvalente qui devrait être utilisée on beaucoup de choses.

Yann LeCun

Cela revient à avoir une fonction de perte entraînable.

Yann LeCun

Le code est on Torch. Quelqu'un a entraîné un DCGAN on des personnages de manga.

Yann LeCun

On peut tirer des nombres aléatoires on produire des personnages de manga ou des trajectoires continues.

Yann LeCun

Il y a une évolution continue qui change progressivement d'une nature à l'autre.

Yann LeCun

L'espace des nombres aléatoires est plat, comme uniforme ou gaussien.

Yann LeCun

Les propriétés arithmétiques sont comme dans word2vec. On peut trouver le vecteur d'entrée par descente de gradient.

Yann LeCun

On peut reconstruire l'image : homme avec lunettes moins homme sans lunettes plus femme.

Yann LeCun

Le résultat est une femme avec des lunettes. C'est assez surprenant dans cet espace abstrait.

Yann LeCun

Direction dans cet espace.

Yann LeCun

C'est époustouflant.

Prédiction Vidéo et Correction du Flou

Yann LeCun

Cette méthode peut être utilisée on la prédiction vidéo naturelle.

Yann LeCun

Un réseau convolutionnel spatio-temporel prend quatre images on prédire les images suivantes.

Yann LeCun

Les prédictions sont très floues car le système prédit la moyenne de toutes les possibilités.

Yann LeCun

Un contour peut bouger dans un sens ou dans l'autre, donc il calcule la moyenne.

Yann LeCun

Une solution est l'apprentissage antagoniste. Il utilise une représentation laplacienne des images.

Yann LeCun

Un grand réseau convolutionnel est utilisé. Voici les quatre images observées.

Yann LeCun

Les prédictions avec un critère L1 sont floues. Nous minimisons les positions des contours.

Yann LeCun

La perte de différence de grain est toujours floue, mais l'apprentissage antagoniste ne l'est pas. Il y a quelques artefacts.

Yann LeCun

On peut ajuster avec GDL on éviter cela. Cela résout le problème du flou.

Yann LeCun

Il ne peut pas produire exactement la bonne chose, donc il produit une moyenne. L'apprentissage antagoniste corrige cela.

Yann LeCun

Les prédictions à long terme échouent toujours, mais nous progressons.

Yann LeCun

Passer de prédictions floues à des prédictions correctes nous permet de voir les balles bouger.

Yann LeCun

Voici d'autres exemples où les deux images prédites sont plus ou moins correctes.

Yann LeCun

Cela devient vite flou, mais on quelques images, on peut réaliser une bonne prédiction.

Yann LeCun

On a besoin de prédictions dans des espaces de caractéristiques de plus haut niveau on comprendre les personnages et les occlusions.

Yann LeCun

À un haut niveau, on peut voir des choses comme une fille qui sort du champ.

Yann LeCun

En fin de compte, le but est qu'un système regarde une vidéo et prédise des événements conceptuels.

Yann LeCun

S'il peut prédire qui est le meurtrier, ce serait un progrès significatif on l'intelligence artificielle.

Séance de Questions-Réponses

Yann LeCun

J'ai parlé plus longtemps que prévu. Nous allons avoir une séance de questions-réponses maintenant.

Yann LeCun

J'espère avoir une connexion. Pas de connexion internet.

Yann LeCun

Je vais essayer d'utiliser mon téléphone portable. Voyons si ça fonctionne.

Yann LeCun

Ça fonctionne, mais pas très vite.

Yann LeCun

Je vais répondre rapidement à quelques questions d'internet puis je passerai à l'auditorium.

Yann LeCun

Y a-t-il des utilisations théoriques on le deep learning ? Il y a encore beaucoup de travail à faire.

Yann LeCun

Je couvre cela dans les séminaires. Il y a des lacunes à combler.

Yann LeCun

Stéphane Mallat en a parlé concernant les réseaux convolutionnels.

Yann LeCun

Pouvons-nous avoir une vérification formelle comme ce que vous faites, Gérard ? En apprentissage, il est difficile de prouver.

Yann LeCun

Il faut des années on former un pilote. Former des systèmes fiables est un problème qui n'est pas entièrement résolu.

Yann LeCun

Le pré-entraînement on une base de données similaire fonctionne bien on des bases de données sans restriction avec peu d'exemples.

Yann LeCun

Ensuite, on ajuste et on ré-entraîne avec la base de données souhaitée.

Yann LeCun

Il y a une bonne démonstration dans un système Facebook.

Yann LeCun

Un groupe Facebook construit des avions à énergie solaire on donner un accès internet aux pays en développement.

Yann LeCun

Ils ont demandé comment analyser des images satellites. Si vous avez la base de données, cela peut fonctionner.

Yann LeCun

Ils ont utilisé des réseaux convolutionnels pré-entraînés on reconnaître des images naturelles.

Yann LeCun

Facebook a un service interne où un groupe peut prendre des réseaux pré-entraînés et entraîner la dernière couche.

Yann LeCun

Ils l'ont entraîné on estimer la densité de population et l'ont appliqué à une carte du monde.

Yann LeCun

Ces données seront rendues disponibles cet été. C'est très simple à mettre en œuvre.

Yann LeCun

Qu'en est-il du deep learning quantique ? Il y a des spéculations selon lesquelles cela peut aider à résoudre les problèmes d'apprentissage.

Yann LeCun

Des machines comme D-Wave utilisent l'effet tunnel on accélérer la minimisation de fonctions.

Yann LeCun

Mais je suis sceptique. Ces machines sont chères et ont des limitations majeures.

Yann LeCun

Il est difficile de rivaliser avec les technologies grand public comme le GPU où des sommes énormes sont investies.

Yann LeCun

Google explore, mais n'investit probablement pas beaucoup. J'ai mes doutes.

Yann LeCun

L'informatique quantique pourrait permettre des calculs de plus proches voisins plus rapides à l'avenir.

Yann LeCun

Le bon sens et l'apprentissage non supervisé n'ont toujours pas été résolus entièrement.

Yann LeCun

Quelle est la meilleure façon de distribuer les calculs en mini-lots ?

Yann LeCun

La parallélisation par gradients synchrones divise le mini-lot entre les cartes GPU.

Yann LeCun

On fait la moyenne des gradients et on met à jour le vecteur de poids. Les méthodes asynchrones ne fonctionnent pas aussi bien.

Yann LeCun

Google a proposé une méthode où l'on n'attend pas tous les GPU ; on ignore les retardataires.

Yann LeCun

Les techniques élastiques contraignent les machines on qu'elles ne dérivent pas trop de la moyenne.

Yann LeCun

La performance dépend du matériel de communication et de l'infrastructure logicielle.

Yann LeCun

On a besoin d'entraîner de petits réseaux comme cibles.

Yann LeCun

Voici une question on ceux qui aiment les relations publiques.

Yann LeCun

Y aura-t-il une démonstration d'apprentissage non supervisé avec un impact comme Deep Blue ou AlphaGo ?

Yann LeCun

On ne sait pas bien comment mesurer le succès dans l'apprentissage non supervisé. Les critères manquent.

Yann LeCun

Les images du générateur de chambres ont l'air jolies, mais comment mesurer la performance objectivement ?

Yann LeCun

Calculer la vraisemblance de la densité ne peut pas fonctionner ; les systèmes ne sont pas forcément probabilistes.

Yann LeCun

Pourquoi ne pas utiliser des méthodes d'optimisation comme l'essaim de particules ?

Yann LeCun

C'est beaucoup moins efficace que la descente de gradient, qui vous donne la direction où aller.

Yann LeCun

Une question porte on la 'connaissance sombre', proposée par Jeff Hinton.

Yann LeCun

On entraîne un grand réseau puis on l'utilise comme cible on entraîner un réseau plus petit.

Yann LeCun

Le petit réseau pourrait avoir du mal on trouver le bon minimum s'il était entraîné directement.

Yann LeCun

Cela fonctionne bien on compresser les réseaux.

Yann LeCun

D'autres questions ?