Salto de dimensiones en Machine Learning

10

¿Cuál es el problema de salto de dimensión en el aprendizaje automático (que ocurre en redes neuronales convolucionales y reconocimiento de imágenes)? Lo busqué en Google, pero todo lo que obtengo es información sobre la Física de la deformación de la forma del material. Será más útil para mí si alguien lo explica con un ejemplo relacionado con el aprendizaje automático. ¿Alguien puede ayudarme con esto o señalarme recursos que puedan?

sdream
fuente

Respuestas:

7

Bienvenido a DataScience.SE! Nunca había oído hablar de este problema, así que lo busqué. Geoff Hinton explica en la tercera diapositiva de esta presentación:

Más cosas que dificultan el reconocimiento de objetos.

• Los cambios en el punto de vista provocan cambios en las imágenes que los métodos de aprendizaje estándar no pueden hacer frente.

- Saltos de información entre las dimensiones de entrada (es decir, píxeles)

• ¡Imagine una base de datos médica en la que la edad de un paciente a veces salta a la dimensión de entrada que normalmente codifica el peso!

- Para aplicar el aprendizaje automático, primero queremos eliminar este salto de dimensión.

En otras palabras, se trata de características conceptuales que migran o saltan de una dimensión de característica de entrada a otra sin dejar de representar lo mismo. A uno le gustaría poder capturar o extraer la esencia de la característica sin ser invariable en qué dimensión de entrada está codificada.

Emre
fuente
Entiendo que en Computer Vision uno quiere ser invariable para los lugares en la imagen, pero no entiendo el ejemplo de la edad.
Martin Thoma
Supuse que la edad y el peso dependen, pero no estoy seguro; ¡No es mi presentación! O tal vez quisieron decir que literalmente usan la columna incorrecta y queremos detectar eso.
Emre
@sdream Solo hice un comentario; Emre dio la respuesta. (Pero probablemente aún debería aceptarlo). El punto con los CNN es que no solo una característica cambia cuando un objeto está en otro lugar, sino que un patrón completo está en una entrada diferente.
Martin Thoma
@Emre, lo que obtengo de su respuesta es que, sin importar desde qué dirección se ingrese una propiedad específica, la característica que causa esta propiedad específica debe ser invariable para ingresar la dimensión de esta propiedad. ¡Gracias! :). Aún espero algunas respuestas más específicas, de lo contrario marcará su respuesta como respuesta.
sdream
3
Se supone que el ejemplo de edad resalta un conjunto de datos que no tiene salto de dimensión. La edad y el peso no "saltan" o intercambian valores aleatoriamente entre ejemplos: no son intercambiables y el ejemplo muestra cuán extraño sería (y cuán difícil sería hacer tareas simples como la regresión lineal). Los valores de píxeles en las imágenes (y datos similares en muchas tareas de procesamiento de señales) se intercambian o mueven fácilmente debido a la naturaleza del problema.
Neil Slater
7

Según tengo entendido, el problema es el siguiente: en el reconocimiento de imágenes, las entradas a su red podrían ser los píxeles (escala de grises o solo 1 y 0 para blanco y negro). Si lo desea, por ejemplo, reconocer números escritos a mano, es muy difícil trabajar solo con dichos valores, ya que nunca se sabe dónde estará exactamente el número (es decir, los valores negros).

¿El píxel 140 es negro o 142 negro? En ambos casos, bien podría ser un tres. En el ejemplo de edad / peso, estas entradas están bien definidas. La característica 2 es el peso. La característica 3 es la edad. Estas "dimensiones" no deberían "saltar" en su conjunto de datos.

Entonces: en su entrenamiento de imagen, los "tres" o "autos" o "casas" deben reconocerse independientemente de su ubicación en la imagen, es decir, los valores de píxeles, es decir, el vector de entrada / característica, es decir, las dimensiones en lugar de las claramente definidas entradas como datos del paciente.

¿Cómo se resuelve esto en el reconocimiento de imágenes? Utiliza trucos adicionales, por ejemplo, convolución.

D. Eggert
fuente
2

Leí las respuestas anteriores, y el comentario de Neil Slater a la publicación de Emre, copiado nuevamente a continuación, da en el clavo. "Salto de dimensiones" es un término creado por el Dr. Hinton de fama pionera del aprendizaje automático en el contexto del punto de vista. Para citar al Dr. Hinton "Entonces, normalmente imagina que las dimensiones de entrada corresponden a píxeles y, si un objeto se mueve en el mundo y no mueve los ojos para seguirlo, la información sobre el objeto se producirá en diferentes píxeles". La edad y el peso son dimensiones de entrada que no se confunden fácilmente. El Dr. Hinton usó obviamente esta situación de salto de dimensión de edad y peso de los pacientes para decir que ciertamente podríamos detectar y corregir cualquier error entre estos tipos de datos (es difícil no notar que la mayoría de los adultos tienen menos de 100 años y más) de 100 libras). El probable problema del salto de dimensiones, que el Dr. Hinton estaba abordando, es que los píxeles podrían desplazarse porque tenemos un punto de vista diferente (por ejemplo, el objeto podría haberse movido o lo estamos mirando desde un ángulo diferente). Las redes neuronales lineales no podrían detectar esto, mientras que las redes neuronales convolucionales por diseño lo harían.

"Se supone que el ejemplo de edad resalta un conjunto de datos que no tiene salto de dimensión. La edad y el peso no" saltan "o intercambian valores aleatoriamente entre ejemplos: no son intercambiables y el ejemplo muestra cuán extraño sería eso (y cómo difícil haría tareas simples como la regresión lineal. Los valores de píxeles en las imágenes (y datos similares en muchas tareas de procesamiento de señales) se intercambian o mueven fácilmente debido a la naturaleza del problema. - Neil Slater 29 de mayo de 16 a 18:01 "

Entusiasmado
fuente
1

Explicación directamente del curso de Hinton sobre Redes neuronales para el aprendizaje automático ...

"El salto de dimensión ocurre cuando uno puede tomar la información contenida en las dimensiones de alguna entrada y moverla entre las dimensiones sin cambiar el objetivo . El ejemplo canónico es tomar un imagen de un dígito escrito a mano y traduciéndolo dentro de la imagen. Las dimensiones que contienen "tinta" ahora son diferentes (se han movido a otras dimensiones), sin embargo, la etiqueta que asignamos al dígito no ha cambiado. Tenga en cuenta que esto no es algo eso sucede de manera consistente en todo el conjunto de datos, es decir, podemos tener un conjunto de datos que contiene dos dígitos escritos a mano donde uno es una versión traducida del otro, sin embargo, esto todavía no cambia la etiqueta correspondiente de los dígitos ".

yottabytt
fuente
0

La esperanza solo se trata de problemas con la parte de la imagen o los píxeles que se mueven dentro de la dimensión (en su mayoría) y en algún momento en otro tenue (campo receptivo diferente) pero la salida sigue siendo la misma.

Este problema se trata con invariancia o equivalencia y parece que el ejemplo de peso y edad es una forma fácil de establecer. Supongamos que si somos conscientes de este salto de peso y edad, fácilmente haríamos cambios en el algoritmo y obtendríamos el resultado correcto. Pero al igual que el salto de datos / información, el salto de imágenes también ocurre, si consideramos que un '4' y un '4' desplazaron varios píxeles a la izquierda para ser diferentes clases que tienen un objetivo diferente.

Con la Invarianza de traducción o una mejor equivalencia a través del filtro, este movimiento o salto no es un gran problema, aunque aumenta la complejidad y a costa de tirar información, como la ubicación.

Por favor, avíseme si necesita más claridad que intentaré.

Pradi KL
fuente