Saut de dimension dans l'apprentissage automatique


10

Quel est le problème de saut de dimension dans l'apprentissage automatique (survenant dans les réseaux de neurones convolutifs et la reconnaissance d'images)? J'ai googlé à ce sujet, mais tout ce que je reçois, c'est des informations sur la physique de la déformation des formes des matériaux. Il sera plus utile pour moi que quelqu'un l'explique avec un exemple lié à l'apprentissage automatique. Quelqu'un peut-il m'aider avec cela ou me diriger vers des ressources qui le peuvent?

Réponses:


7

Bienvenue sur DataScience.SE! Je n'avais jamais entendu parler de ce problème alors je l'ai recherché. Il est expliqué sur la troisième diapositive de cette présentation par Geoff Hinton:

Plus de choses qui rendent difficile la reconnaissance des objets

• Les changements de point de vue entraînent des changements d'images que les méthodes d'apprentissage standard ne peuvent pas gérer.

- Sauts d'informations entre les dimensions d'entrée (c'est-à-dire les pixels)

• Imaginez une base de données médicales dans laquelle l'âge d'un patient saute parfois à la dimension d'entrée qui code normalement pour le poids!

- Pour appliquer l'apprentissage automatique, nous voudrions d'abord éliminer ce saut de dimension.

En d'autres termes, il s'agit de migrer ou de sauter des entités conceptuelles d'une dimension d'entité en entrée à une autre tout en représentant la même chose. On aimerait pouvoir capturer ou extraire l'essence de la fonctionnalité tout en étant invariant à quelle dimension d'entrée elle est encodée.


Je comprends que dans la vision par ordinateur, on veut être invariant pour les endroits dans l'image, mais je n'ai pas l'exemple d'âge.
Martin Thoma

J'ai pris cela pour signifier que l'âge et le poids dépendent, mais je ne suis pas sûr; ce n'est pas ma présentation! Ou peut-être qu'ils voulaient dire qu'ils utilisent littéralement la mauvaise colonne et nous voulons le détecter.
Emre

@sdream J'ai seulement fait un commentaire; Emre a donné la réponse. (Mais vous devriez probablement encore l'accepter). Le point avec les CNN est que non seulement une caractéristique change lorsqu'un objet est ailleurs, mais qu'un motif complet se trouve à une entrée différente.
Martin Thoma

@Emre, ce que j'obtiens de votre réponse est que, quelle que soit la direction dans laquelle une propriété spécifique est entrée, la fonction provoquée par cette propriété spécifique doit être invariante pour entrer la dimension de cette propriété. Merci! :). Toujours en attente de réponses plus spécifiques, sinon marquera votre réponse comme réponse.
sdream

3
L'exemple d'âge est censé mettre en évidence un ensemble de données qui n'a pas de saut de dimension. L'âge et le poids ne "sautent" pas ou n'échangent pas les valeurs au hasard entre les exemples - ils ne sont pas interchangeables et l'exemple montre à quel point cela serait étrange (et à quel point il serait difficile de faire des tâches simples telles que la régression linéaire). Les valeurs des pixels dans les images (et les données similaires dans de nombreuses tâches de traitement du signal) s'échangent ou se déplacent facilement en raison de la nature du problème.
Neil Slater

7

Pour autant que je comprends, le problème est le suivant: dans la reconnaissance d'image, les entrées de votre réseau peuvent être les pixels (niveaux de gris ou seulement 1 et 0 pour le noir et blanc). Si vous voulez, par exemple, reconnaître des nombres manuscrits, il est très difficile de travailler uniquement avec des valeurs telles que vous ne savez jamais où exactement le nombre (c'est-à-dire les valeurs noires) sera.

Le pixel 140 est-il noir ou 142 noir? Dans les deux cas, il pourrait bien s'agir d'un trois. Dans l'exemple âge / poids, ces entrées sont bien définies. La caractéristique 2 est le poids. La caractéristique 3 est l'âge. Ces "dimensions" ne doivent pas "sauter" dans votre jeu de données.

Donc: dans votre formation d'image, les "trois" ou "voitures" ou "maisons" doivent être reconnus indépendamment de leur emplacement dans l'image, c'est-à-dire les valeurs des pixels, c'est-à-dire le vecteur d'entité / d'entrée, c'est-à-dire les dimensions par opposition à clairement définies entrées telles que les données des patients.

Comment résolvez-vous cela dans la reconnaissance d'image? Vous utilisez des astuces supplémentaires, par exemple la convolution.


2

J'ai lu les réponses précédentes et le commentaire de Neil Slater sur le post d'Emre, copié à nouveau ci-dessous, frappe le clou. "Dimension hopping" est un terme créé par le Dr Hinton de la renommée des pionniers de l'apprentissage automatique dans le contexte du point de vue. Pour citer le Dr Hinton "Donc, imaginez généralement que les dimensions d'entrée correspondent aux pixels et, si un objet se déplace dans le monde et que vous ne bougez pas les yeux pour le suivre, les informations sur l'objet se produiront sur différents pixels." L'âge et le poids sont des dimensions d'entrée qui ne sont pas facilement confondues. Le Dr Hinton a utilisé cette situation de saut de dimension évidemment NON probable de l'âge et du poids des patients pour signifier que nous serions certainement en mesure de repérer et de corriger toute erreur entre ces types de données (il est difficile de ne pas remarquer que la plupart des adultes ont moins de 100 ans et plus). de 100 livres). Le problème probable du saut de dimension, que le Dr Hinton abordait, est que les pixels pourraient être déplacés parce que nous avons un point de vue différent (par exemple, l'objet aurait pu se déplacer ou nous le regardons sous un angle différent). Les réseaux de neurones linéaires ne seraient pas en mesure de détecter cela, contrairement aux réseaux de neurones convolutifs par conception.

"L'exemple d'âge est censé mettre en évidence un ensemble de données qui n'a pas de saut de dimension. L'âge et le poids ne" sautent "pas ou n'échangent pas les valeurs de manière aléatoire entre les exemples - ils ne sont pas interchangeables et l'exemple montre à quel point ce serait étrange (et comment difficile, cela rendrait des tâches simples telles que la régression linéaire.) Les valeurs des pixels dans les images (et des données similaires dans de nombreuses tâches de traitement du signal) s'échangent ou se déplacent facilement en raison de la nature du problème. - Neil Slater 29 mai 16 à 18:01 "


1

Explication directement du cours de Hinton sur les réseaux de neurones pour l'apprentissage automatique ....

"Le saut de dimension se produit lorsque l' on peut prendre les informations contenues dans les dimensions d'une entrée, et les déplacer entre les dimensions sans changer la cible . L'exemple canonique prend un image d'un chiffre manuscrit et la traduire dans l'image. Les dimensions qui contiennent de "l'encre" sont maintenant différentes (elles ont été déplacées vers d'autres dimensions), mais l'étiquette que nous attribuons au chiffre n'a pas changé. Notez que ce n'est pas quelque chose cela se produit de manière cohérente dans l'ensemble de données, c'est-à-dire que nous pouvons avoir un ensemble de données contenant deux chiffres manuscrits où l'un est une version traduite de l'autre, mais cela ne change toujours pas le libellé correspondant des chiffres. "


0

L'espoir ne concerne que les problèmes avec une partie de l'image ou des pixels se déplaçant dans la dimension (principalement) et parfois dans un autre faible (champ récepteur différent) mais la sortie reste la même.

Ce problème est traité par l'invariance ou l'équivariance et ressemble à un exemple de poids et d'âge est un moyen facile à énoncer. Supposons que si nous sommes conscients de ce poids et de cet âge, nous modifions facilement l'algo et obtenions le bon résultat. Mais comme le saut de données / informations, le saut d'image se produit également, si nous considérons un «4» et un «4» décalés de plusieurs pixels vers la gauche comme des classes différentes qui ont une cible différente.

Avec Translation Invariance ou une meilleure équivariance, le filtrage throguh n'est pas un problème majeur, bien qu'il augmente la complexité et au détriment des informations, telles que l'emplacement.

Veuillez me faire savoir si vous avez besoin de plus de clarté, je vais essayer.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.