¿Cuáles son los límites del aprendizaje profundo?

Las formas “clásicas” de aprendizaje profundo incluyen varias combinaciones de módulos de retroalimentación (a menudo redes convolucionales) y redes recurrentes (a veces con unidades de memoria, como LSTM o MemNN).

Estos modelos tienen una capacidad limitada para “razonar”, es decir, para llevar a cabo largas cadenas de inferencias o procedimientos de optimización para llegar a una respuesta. El número de pasos en un cálculo está limitado por el número de capas en las redes de retroalimentación, y por el tiempo que una red recurrente recordará cosas.

Para que los sistemas de aprendizaje profundo puedan razonar, necesitamos modificarlos para que no produzcan una sola salida (por ejemplo, la interpretación de una imagen, la traducción de una oración, etc.), pero pueden producir un conjunto completo de salidas alternativas ( por ejemplo, las diversas formas en que se puede traducir una oración). Para esto están diseñados los modelos basados ​​en energía: darle un puntaje para cada posible configuración de las variables a inferir. Una instancia particular de los modelos basados ​​en energía son los gráficos de factores (modelos gráficos no probabilísticos). La combinación de sistemas de aprendizaje con gráficos de factores se conoce como “predicción estructurada” en el aprendizaje automático. Ha habido muchas propuestas para combinar redes neuronales y predicción estructurada en el pasado, desde principios de la década de 1990. De hecho, el sistema de lectura de cheques que mi colega y yo construimos en los Laboratorios Bell a principios de la década de 1990 usó una forma de predicción estructurada sobre redes convolucionales que llamamos “Redes de Transformadores Gráficos”. Ha habido una serie de trabajos recientes sobre pegar modelos gráficos sobre ConvNets y entrenar todo de extremo a extremo (por ejemplo, para la estimación de la postura del cuerpo humano y demás).
Para una revisión / tutorial sobre modelos basados ​​en energía y predicción estructurada sobre redes neuronales (u otros modelos), vea este documento: https://scholar.google.com/citat…

El aprendizaje profundo es ciertamente limitado en su forma actual, porque casi todas sus aplicaciones exitosas utilizan el aprendizaje supervisado con datos anotados por humanos. Necesitamos encontrar formas de entrenar redes neuronales grandes a partir de datos “sin anotar” en bruto para que capturen las regularidades del mundo real. Como dije en una respuesta anterior, mi dinero está en entrenamiento contradictorio.

Si por “aprendizaje profundo” quieres decir “composición anidada de funciones”, entonces no hay demasiados límites, ya que eso describe casi toda la informática. Sin embargo, el problema principal (en mi opinión) es que los métodos actuales de aprendizaje profundo necesitan demasiado tiempo y datos. Esto parece inconsistente con la capacidad de las personas de aprender mucho más rápidamente de tamaños de muestra mucho más pequeños (p. Ej., Hay 100 veces más palabras en el corpus del NYT que las que un niño escucha cuando tiene 3 años).

La pregunta clave es: ¿cuál es la mejor forma de representación (sesgo inductivo) para el aprendizaje? Esto, por supuesto, depende de la tarea. Los humanos parecen usar múltiples formas de representación del conocimiento. Por ejemplo, vea el trabajo de Liz Spelke sobre “conocimiento central” en niños (y también el trabajo de Josh Tenenbaum y sus colaboradores).

Por supuesto, este conocimiento de alto nivel está representado por patrones de activación neuronal, pero podría ser más estadísticamente (y posiblemente computacionalmente) más eficiente para aprender mediante la manipulación de estas representaciones más estructuradas (por ejemplo, en términos de objetos y agentes y sus atributos y relaciones ) en lugar de dar pequeños pasos en un espacio de parámetros continuos de muy alta dimensión (aunque este último enfoque parece estar matando en este momento …)

  • La respuesta realmente corta es que el aprendizaje profundo es una herramienta, no una solución. Es una herramienta muy poderosa y probablemente jugará un papel clave en la solución de los problemas que mencionas.
  • La razón por la que esto aún no se ha hecho es porque esos problemas son realmente difíciles, y tener las herramientas adecuadas es solo el primer paso.
  • Dependiendo de lo que quiera decir con su pregunta “¿El aprendizaje automático está lógicamente limitado de alguna manera que hace imposible realizar ciertos tipos de operaciones?” la respuesta es trivial (porque existen funciones no computables) o es lo mismo que preguntar “¿pueden las computadoras ser inteligentes?”
  • Supongo que la mayoría de las limitaciones son de naturaleza práctica. Hay restricciones de identificabilidad debido a datos insuficientes, hay restricciones en la eficiencia de los algoritmos de entrenamiento para construir las mejores características. Y hay limitaciones en el poder computacional. Es una situación similar a los problemas complejos de estimación de modelos de cualquier tipo.
  • La mayoría está de acuerdo con Kjearns aquí, pero diría que el aprendizaje profundo es una herramienta entre muchas, similar a lo que hacemos en la visión de bajo nivel; También necesitamos algunas otras herramientas.
  • Eso tiene sentido. ¿Por qué Gary Marcus parece pensar que la inteligencia artificial basada en el aprendizaje profundo carece de sentido común? Él habló sobre algo llamado CYC que trató de poner sentido común en las IA en la década de 1980

Supongamos que por Deep Learning te refieres a las redes neuronales de retroalimentación habituales que son populares en estos días para cosas como la visión por computadora. Cuando hablamos de sus limitaciones, tenemos que acordar qué problema están tratando de resolver. Tienden a ser muy buenos en cosas como la clasificación de imágenes cuando se les da conjuntos de datos lo suficientemente grandes. De hecho, fueron diseñados para resolver problemas como este.

Ser bueno en la clasificación de imágenes con un conjunto de datos lo suficientemente grande es en sí mismo una declaración de un problema. Entonces, al preguntar acerca de las limitaciones, podría estar preguntando: ¿Existe un límite sobre qué tan bien puede llegar el aprendizaje profundo a la clasificación de imágenes cuando se les dan enormes cantidades de datos? O podrías estar haciendo una pregunta diferente. Podría preguntarse: ¿Hay problemas en los que el aprendizaje profundo nunca será bueno? Tomemos a los dos.

¿Existe un límite sobre qué tan bien puede llegar el aprendizaje profundo a la clasificación de imágenes cuando se les dan enormes cantidades de datos?

La respuesta a esto es probablemente No con algunas advertencias. Las redes neuronales pueden representar cualquier función. Entonces, en teoría, con suficientes datos, deberían poder encontrar una función que haga un trabajo razonablemente bueno al asignar imágenes a categorías que se acerquen o superen a los humanos en la misma tarea cuando se les da la misma información.

Algunas advertencias Primero, no hay garantía de que sea el mejor algoritmo para hacerlo; uno que utiliza los datos de manera más eficiente. Por ejemplo, si configura un problema que es ideal para decir regresión logística, ningún otro algoritmo lo superará. La libertad de representación extra de una red neuronal se convierte en un obstáculo en ese caso porque no es necesaria y tiene que ser limitada. Dada una arquitectura de red neuronal particular, puede resolver un problema que será difícil para él.

¿Hay problemas en los que el aprendizaje profundo nunca será bueno?

Este es ciertamente un sí. Lo más obvio es el caso en el que solo hay una pequeña cantidad de datos de entrenamiento etiquetados. Los cerebros de los niños pequeños humanos pueden aprender a clasificar gatos y perros con solo unos pocos ejemplos. Todavía no sabemos cómo lo hacen. Uno podría suponer que antes de encontrar imágenes de perros y gatos, ya ha sido entrenado previamente para representar y utilizar características visuales de nivel inferior. Por ejemplo, ya puede reconocer bordes y formas. Sabe que las cosas borrosas con dos ojos son animales. Un aprendizaje profundo de las redes neuronales comienza con notas pero bits aleatorios. Es una pizarra en blanco, por lo que comienza a funcionar muy mal.

De hecho, uno podría argumentar que esto es injusto para la red neuronal porque el bebé estuvo expuesto a más información antes de que se le presentara el problema. Sin embargo, es más exacto decir que lo que está mal es que estamos comparando un algoritmo con un organismo. Con lo que deberíamos comparar un organismo es con un robot; algo con sensores y recursos informáticos capaces de ejecutar varios algoritmos en los datos que recibe, tomar decisiones para observar datos, realizar experimentos, etc. Si los robots tienen limitaciones es la pregunta central de la IA y muchos de nosotros responderíamos negativamente. Pero el aprendizaje profundo no es un robot, por lo que en ese sentido está limitado en lo que puede hacer. Probablemente algún día construiremos robots que sean mejores que los humanos en casi todo, pero sospecho que implicará muchos avances conceptuales no relacionados con el aprendizaje profundo.

Mencioné una cosa importante que los robots pueden hacer que los algoritmos estadísticos no pueden hacer. Eso es realizar experimentos. Esto está relacionado con la causalidad. Las redes neuronales de aprendizaje profundo son simplemente algoritmos estadísticos que funcionan en datos observados previamente. Gran parte de lo que los humanos pueden hacer requiere que trabajen con cosas que nunca antes habían ocurrido. Por ejemplo, usamos nuestro conocimiento de física para diseñar cohetes para llegar a la luna donde no había ejemplos de cohetes que aterrizaran con éxito en la luna. Teníamos que aprender a pensar de manera causal; es decir, la falta de oxígeno hará que los astronautas mueran o la fricción con la atmósfera hará que la cápsula se caliente. Los humanos modelan el mundo en términos de qué causa qué y pueden calcular largas cadenas de eventos de esta manera utilizando el razonamiento lógico y las matemáticas. Asimismo, nunca habríamos aprendido física sin nuestra capacidad de construir y realizar experimentos que generen nuevos datos.

Esto no es aprendizaje estadístico. Es aprendizaje causal. Las estadísticas solo se refieren a la correlación, no a la causalidad. Está limitado por los datos que existen actualmente. El aprendizaje profundo es un ejemplo de algoritmo de aprendizaje estadístico y, por eso, siempre estará limitado en los problemas que pueda resolver. Para obtener más información sobre las limitaciones del aprendizaje automático desde la perspectiva de la causalidad, consulte el trabajo de Judea Pearl, por ejemplo, esto.

El mayor defecto es el descubrimiento de que al ajustar una imagen de entrada de una manera específica, uno puede engañar a una Red neuronal de aprendizaje profundo para que se clasifique erróneamente. Este es un problema no solo para el aprendizaje profundo sino para casi todos los métodos de aprendizaje automático que emplean álgebra lineal para aproximar sus clasificaciones.

Secundario a este defecto es el requisito de un gran tamaño de entrenamiento etiquetado para aprender nuevos conceptos.

Tercero, la falta de interpretabilidad de los modelos que se aprenden.

La cuarta es la limitación de que cualquier algoritmo de clasificación de aprendizaje automático que aprenda de los datos solo se limita a identificar la causa dados los efectos observados. Estos sistemas tienen límites en su capacidad para predecir el comportamiento de otros sistemas complejos. Es decir, predecir el efecto dada una causa.

Quinto es la incapacidad de realizar un aprendizaje no supervisado con la excepción de los codificadores automáticos.

He creado un lenguaje de patrones para el aprendizaje profundo que puede explorar más a fondo para obtener una mejor comprensión del campo.

Me gustaría comenzar diciendo esto, ya que el aprendizaje profundo no es una solución, es una herramienta y se considera una herramienta poderosa. El aprendizaje profundo juega un papel clave al resolver problemas en Machine Learning. En caso de regresión, los algoritmos de aprendizaje profundo deben centrarse en la clasificación en la que la regresión no es el foco principal del aprendizaje profundo. Una predicción con incertidumbre y que requiere más atención para su modelo en Deep Learning y mucho más importante cuando se trata de la situación del sistema de toma de decisiones.

Al comparar el aprendizaje profundo con el mecanismo humano en el que la mayoría de los expertos creen que continúa acelerando el ritmo y conquistando muchos más dominios. Algunos casos que tienen el miedo al aprendizaje profundo pueden tener sociedades con telas sociales y económicas. La máquina y el aprendizaje profundo son más eficientes para más tareas.

Consideramos todo como un vector en el aprendizaje profundo y en el que todo en un espacio geométrico. Aquí se modelan primero las entradas y los objetivos vectorizados. En el aprendizaje profundo, cada capa opera en una transformación simple en los datos. Una transformación geométrica muy compleja está formada por una cadena de capas. La información resultante intenta asignar el espacio de entrada al espacio objetivo. Aquí, la transformación está parametrizada por los pesos de las capas, que se actualizan de forma iterativa en función del rendimiento actual del modelo. Una característica clave de esta transformación geométrica es que debe ser diferenciable , lo cual es necesario para que podamos aprender sus parámetros a través del descenso del gradiente. Intuitivamente, esto significa que la transformación geométrica de las entradas a las salidas debe ser suave y continua, una restricción importante.

Para obtener más información: BEPEC | ¿Por qué ciencia de datos? Bangalore

Sospecho que el problema está menos relacionado con los límites fundamentales del aprendizaje profundo como técnica y más con las herramientas que se utilizan. Le daré un ejemplo de las formas de aprendizaje automático con las que trabajamos más que el aprendizaje profundo.

Hago análisis de datos de expresión génica de microarrays de ADN. Por lo general, estoy viendo poco menos de 15k secuencias en cada vector. Estas secuencias generalmente se correlacionan con genes específicos. Esta técnica funciona bastante bien para predecir el estado del cáncer.

Tenía la idea de que, dado que medir los niveles de expresión de los genes era predictivo, ¿qué pasaría si profundizáramos y mediéramos los niveles de las proteínas que impulsan la expresión génica? Entonces, ¿qué pasa si aplicamos la misma técnica para analizar el ADN metilado? ¿Los mismos algoritmos que funcionaron para la expresión génica también funcionarían para el análisis de proteínas?

Lo que descubrí rápidamente fue que las herramientas que manejan de manera bastante práctica 14,850 vectores de valor, no manejan bien 485,000 vectores de valor. Puede usar herramientas basadas en clúster como Spark para distribuir el procesamiento en muchos nodos, pero las herramientas que usa para el preprocesamiento deben reescribirse.

Entonces, me he topado con un “límite”. Este es un límite a la tecnología actual, no a la metodología o técnica. En términos de aprendizaje profundo, la premisa de que capas adicionales pueden conducir a una mayor capacidad sigue siendo perfectamente válida. Después de todo, el modelo original para estas cosas sigue siendo infinitamente más complejo que las simulaciones simplistas que llamamos aprendizaje profundo.

Parece probable que en algunos campos ciertas variedades de aprendizaje profundo hayan logrado un gran éxito a través de la minería de patrones de las decisiones y actividades humanas hasta el punto en que ya toman mejores decisiones que el humano promedio, lo que significa que hay una creciente falta de ejemplos a partir de los cuales en realidad pueden mejorar, refinar y / o aprender algo nuevo.

Sin embargo, están presentando nuevas variedades de DL de forma regular, que podrían aprender más de los conjuntos de datos existentes, y sin duda hay una gran cantidad de campos de esfuerzo e investigación en los que los límites externos de El poder explicativo, predictivo y generativo de Deep Learning no está cerca de ser alcanzado, y en algunos casos, apenas se ha arañado.

Por lo tanto, supongo que los tipos inteligentes de los que escuchas piensan más en términos de especializaciones estrechas que de generalizaciones amplias.

Un límite específico que no vi a nadie mencionar en el mundo de CNN: la memoria de computadora / gpu.

Debido a que su modelo profundo es tan grande, es un verdadero cerdo de memoria. Raramente se ven modelos de aprendizaje profundo sobre imágenes o videos de gran tamaño. Esto tiene algunas implicaciones muy graves.

Para las imágenes, las entradas más grandes que suele ver son del formato 224 × 224 para imagenet y recientemente comencé a ver modelos de 300 × 300.

No hay limitación conceptual para hacer un campo receptivo más grande, el problema es la memoria de la computadora. En la práctica, al enfrentar una imagen grande que tenemos hoy, que generalmente tiene un tamaño de muchos megapíxeles, los profesionales de aprendizaje profundo la reducirán y perderán detalles o aplicarán una ventana sobre la imagen y se arriesgarán a perder las características globales de la imagen y El contexto global.

Cuando se trata de clasificación de video, Facebook vino con una solución muy elegante, una red convolucional en 3D. A pesar de que tiene mucho sentido elegante en términos de arquitectura, las limitaciones de memoria lo hicieron fallar en la práctica. No podría usar un modelo lo suficientemente profundo o hacer que la convolución 3D use más de unos pocos cuadros a la vez, todo debido a limitaciones de memoria: ¡el papel se conformó con usar solo 3 cuadros!

Entiendes mi punto …

La respuesta de Shankara Narayanan Sethuraman (ஷங்கர நாராயணன் ஸேதுராமன்) a ¿Por qué el aprendizaje profundo es tan popular y tan demandado en estos días?

Como menciono en la respuesta, el éxito de Deep Learning está en gran medida en el dominio de big data.

Entonces, la primera limitación de Deep Learning es la disponibilidad de datos etiquetados. A medida que digitalizamos más y más, tenemos más datos. A medida que usamos dispositivos cada vez más, hay más datos. Sin embargo, para tener éxito en este procedimiento, necesitamos más y más datos etiquetados. Si los datos que generamos no son manejables en escala, los algoritmos DL no ayudarán.

La segunda limitación es la potencia de cálculo que podemos usar. Las supercomputadoras no son accesibles para todos. Si bien la GPU ayuda en esto, a medida que escalamos y hacemos aplicaciones en la web, la dependencia de los dispositivos de alto rendimiento será un cuello de botella.

La limitación final está en los algoritmos: a medida que aumentamos el número de neuronas en cada capa y el número de capas en la red, hay límites en la velocidad de cálculo y, a veces, en las necesidades de hardware, etc. Esto también tiene límites en los dispositivos en los que pueden ejecutarse y en el escalado en la web y dispositivos pequeños.

De hecho, los factores que hacen que DL sea atractivo plantean limitaciones cuando DL se usa en más y más situaciones.

El primer problema que tenemos con el aprendizaje profundo es realmente un problema fundamental que tenemos con el aprendizaje automático. Necesitamos muchos datos para trabajar y en muchos casos necesitamos muchos datos etiquetados. Hay cierto progreso con la capacitación previa sobre otros problemas relacionados y la representación del aprendizaje en datos no etiquetados, pero estos solo lo llevan hasta cierto punto. En muchos casos solo necesitas más datos.

Otro problema que tenemos es con la comprensión de los modelos. Podemos explicar fácilmente un modelo de regresión logística / lineal o un árbol de decisión simple. Los modelos más complicados son casi imposibles de entender y explicar. En el reconocimiento de imágenes tenemos cierto éxito con la visualización de nodos intermedios, pero en general esto sigue siendo un problema importante.

Otro problema específico del aprendizaje profundo es que en realidad no encontramos la red neuronal óptima, encontramos algunos mínimos locales y tenemos una comprensión limitada del espacio que realmente optimizamos. Hay un gao entre entrenar prácticamente buenas redes y nuestra comprensión matemática del proceso de optimización.

No sé si estos son límites, el primer problema es que tenemos algunas pruebas sobre las limitaciones, pero no son muy estrictas. Los otros podrían resolverse algún día.

Echa un vistazo a este documento, [1802.05187] Sobre los puntos ciegos de las redes convolucionales
En los puntos ciegos de las redes convolucionales Elad Hoffer, Shai Fine, Daniel Soudry

La forma más sencilla de entender los conceptos básicos:

En Deep Learning, el proceso de extracción de características está completamente automatizado. En resumen, no necesita ninguna intervención humana. ¡Todo lo que necesita hacer es alimentar una gran cantidad de datos relevantes en el algoritmo!

Yo sugeriría:

¿Qué tan profundo es el aprendizaje profundo? – Medición de la profundidad del aprendizaje profundo

Notación 1 – Aprendizaje múltiple : [matemáticas] \ phi \ big (x, \ theta \ big) ^ {\ top} w [/ matemáticas] (Bengio et al)

Notación 2: Aprendizaje supermanifold : [matemáticas] \ phi \ big (x; \ theta, \ bar {{\ theta}} \ big) ^ {\ top} w [/ math] (Jordan Bennett)

Si bien el aprendizaje profundo tradicional puede implicar un aprendizaje múltiple, mi trabajo se refiere al aprendizaje supermúltiple, como se ve brevemente en las diferencias de notación anteriores.

(Consulte la fuente del fragmento en la respuesta a continuación)

Vea una respuesta intrigante a continuación, sobre Supermatemáticas y Aprendizaje profundo :

La respuesta de Jordan Bennett a ¿Cuál es la próxima gran cosa en el aprendizaje automático después de que hayamos terminado con el aprendizaje profundo?