La respuesta de Aakash Moghariya proporciona una respuesta muy completa a su pregunta de por qué CNN se presta a problemas de visión. TL: DR, no solo tenemos un sólido cuerpo de investigación que indica que esta es la forma en que funcionan los sistemas de visión biológica (¡GUAU en ese nivel de investigación de fondo por cierto!) Sino también porque hay una evidencia empírica lógica de que la convolución debería funcionar bien en visión. La razón por la que las personas usan redes neuronales no convolucionales en campos donde los datos no son datos de imágenes es porque la convolución no siempre representa relaciones en sus datos originales, o los fenómenos naturales que representan los datos.
Para el resumen lógico . Si lo piensas, ¿qué es una convolución? Khan Academy tiene una excelente visión general de bajo nivel, pero en la práctica puede pensar en la convolución como una función que tiene una alta respuesta cuando existe una alta correlación espacial entre otras dos funciones.
- ¿Es posible que una aplicación de aprendizaje automático que ejecute el mismo algoritmo y se alimente con los mismos datos para aprender cosas diferentes en pruebas de entrenamiento separadas?
- ¿Está bien usar kNN para este problema de clasificación de símbolos musicales?
- ¿Cuáles son los temas que debo saber antes de comenzar el aprendizaje automático?
- ¿Cuál es la diferencia entre el análisis factorial y las técnicas de selección de características, como el análisis de componentes principales y la asignación de dirichlet latente?
- ¿Cuál es la diferencia entre el aprendizaje de refuerzo profundo y el aprendizaje de refuerzo?
En el caso de una convolución 2D (o incluso 3D), esta función genera “características” o una relación de correlación basada en señales (o datos visuales) que están cerca una de la otra.
Lógicamente, si se supone que las características son indicadores locales de significado global (p. Ej., Buscar ojos separados por un cierto ancho en relación con su tamaño para detectar caras), entonces la convolución es la operación que nos da esta localidad. Obviamente estoy tratando de mantener un alto nivel aquí, pero eso debería ser suficiente para facilitar la comprensión, o al menos suspender tu incredulidad 🙂
Para obtener una visión general empírica, debemos analizar por qué las redes totalmente conectadas, la alternativa natural a la convolución, tienen algunos problemas. Como se mencionó nuevamente en la publicación de Aakash, hemos tenido el instinto de que la profundidad en la forma en que nuestro cerebro procesa los datos es profunda . Sin embargo, como resultado de su propia estructura, las redes totalmente conectadas con múltiples capas de profundidad, ahora generalmente denominadas perceptrones multicapa o MLP, no entrenaron bien. El primer problema importante fue el problema de gradiente de desaparición (o, a veces, de explosión), que puede considerarse como el error entre la predicción y el resultado real utilizado por las capas más cercanas al final de la pila de red y, por lo tanto, no entrenando al primero capas muy rápidamente. Este problema se resuelve en gran parte por los advenimientos de las conexiones de salto entre capas, y quizás lo más importante es que las GPU. El segundo problema es el tamaño del modelo, como en un MLP, si conecta todos los nodos (que en el caso de una imagen es un píxel) entre sí, su tamaño de red escala exponencialmente. Esto es lo que resolvió la CNN; usando la convolución para relacionar píxeles, efectivamente solo está mirando las conexiones entre los nodos (píxeles) y los nodos más locales para ellos. ¿Y qué pasa si una característica necesita ser grande? Ahí es donde entran en juego la dilatación de convolución y agrupación, pero no abordaré eso aquí.
Sin embargo, la implicación más importante de su pregunta no es tanto por qué funcionan para la visión por computadora, sino por qué no funcionan tan bien para otras aplicaciones de aprendizaje automático. La respuesta a esa pregunta vuelve al mismo tema: localidad. Los datos visuales casi siempre tienen relaciones espaciales entre objetos relacionados en la imagen, ya que la “objetividad” es exactamente la ocurrencia única de ese objeto. Tener una red que identifique “pares”, por ejemplo, podría ser más difícil de hacer en una sola red. De hecho, gran parte de los datos del mundo no tienen esta buena restricción de localidad. Si piensa en grandes problemas de investigación abierta como la “comprensión de la escena”, la “descripción del video”, incluso todos los campos de hápticos (datos de sensores táctiles) y procesamiento del lenguaje natural (datos de lenguaje), puede hacer algunas suposiciones de localidad (especialmente cuando se piensa en la localidad temporal) , pero en general estos supuestos serán violados.
Me gusta pensar en la CNN de una manera algo peculiar que me ayuda con esta comprensión: la compresión de la red neuronal. La convolución es elegante, sin duda, pero el hecho de que podamos comprimir el concepto general (cada punto o nodo de datos en la red neuronal está conectado entre sí) en uno que está mucho más estructurado y simplificado (cada nodo o punto de datos solo está conectado a cosas cercanas), de repente tenemos una versión altamente comprimida de la red más general. Sin embargo, al igual que en la compresión de datos convencional, algunas cosas no se comprimen bien, por ejemplo, datos binarios aleatorios. Más importante aún para esta discusión, no todas las cosas se comprimen a su tamaño más pequeño de la misma manera. Esta imagen del conjunto de Mandelbrot, por ejemplo, se puede comprimir al máximo para la definición del conjunto de Mandelbrot, y luego algunos bits de datos sobre el color deseado y el grado de iteración, que serían muchos órdenes de magnitud más pequeños en tamaño de datos. Por otro lado, como imagen, la compresión convencional probablemente solo podría reducirla al 90% de su tamaño actual. La razón por la cual las personas que usan redes neuronales no convolucionales en campos donde los datos no son datos de imágenes es porque la “compresión convolucional” es, para continuar la analogía, “demasiado perdida”, y por lo tanto no siempre representa bien sus datos originales, o el fenómenos naturales que representan los datos.