¿Cuál es el mayor obstáculo para progresar en el aprendizaje profundo?

Algunos de los problemas en los que trabaja AI son problemas realmente difíciles. Para recordarte un problema muy conocido, teóricamente podrías programar una máquina para jugar al ajedrez “perfecto” observando todos los movimientos posibles, todos los posibles movimientos de ese movimiento y así sucesivamente hasta el final del juego. Desafortunadamente, la cantidad de juegos de ajedrez posibles es tan astronómica que incluso si todo el universo se convirtiera en una computadora, ¡tomaría mucho más tiempo que toda la vida del universo calcular todos los movimientos posibles! El aprendizaje profundo generalmente se refiere a un tipo de aprendizaje de redes neuronales en el que no tiene que hacer una búsqueda exhaustiva, pero aún necesita exponer el sistema a muchos ejemplos. El obstáculo proviene de la naturaleza del problema que está tratando de resolver. Si intenta enseñar a una red neuronal la relación entre el diámetro de un círculo y su circunferencia a partir de ejemplos, no debería tomar demasiado tiempo porque la relación en sí misma es muy simple y no hay “casos especiales” para aprender. En muchos dominios, realmente no sabemos cuán difícil es realmente el problema. Tome la predicción del clima. La ciencia comprende muy bien cómo varios factores afectan el clima, pero los patrones son caóticos. Entre otras cosas, depende mucho de pequeñas diferencias en las condiciones iniciales. (Esto a veces se conoce como el “efecto mariposa”: una mariposa que bate sus alas en Tailandia podría afectar el clima cinco días después en Nueva Zelanda). Entonces, una clase de obstáculos tiene que ver con la naturaleza de cuán difíciles son ciertos problemas. Las redes neuronales se basan * libremente * en una analogía con las neuronas. Pero las neuronas * reales * son mucho más complejas que las neuronas artificiales. Las neuronas son células vivas. Responden a muchos tipos de señales químicas, no solo a una. Tienen geometría compleja. Esa geometría interactúa con la llegada de señales de otras neuronas. Las neuronas artificiales simplifican lo que sucede al “sumar” todas las señales dentro de un marco de tiempo fijo. Nadie sabe realmente si estas simplificaciones limitan fundamentalmente lo que pueden aprender las redes neuronales artificiales. Sospecho que no. Luego, existe la elección de ejemplos. El mundo sigue cambiando. Imagina que estás jugando tenis y tratando de encontrar una manera de vencer a un oponente que nunca has visto antes. Ves que están cometiendo más errores en su revés, por lo que golpeas más a su revés. Pero si * siempre * golpeas a su revés, pueden anticipar eso y reaccionar para quitarle tu ventaja. Peor aún, pueden mejorar y golpear su revés durante el partido. O, tal vez su revés sea en realidad un tiro fuerte y te estaban fingiendo para que golpees a su revés. Pueden reaccionar a su estrategia llegando a la red con más frecuencia y comenzar a ganar muchos puntos. De todos modos, el punto es que en muchos dominios, las condiciones no son fijas, sino que varían. El aprendizaje profundo puede funcionar maravillosamente bien en un juego como GO donde las reglas no cambian. Pero, las redes neuronales, como las personas, siempre están construyendo un modelo de realidad que “va a la zaga” de la realidad real (a menos que sea un dominio completamente estable como GO). Las personas tienen varias formas de tratar de contrarrestar esto. Puede observar que sus predicciones del mercado de valores están “apagadas” y se vuelven cada vez más conservadoras a medida que pasa el tiempo. Entonces, lo “arreglas” decidiendo hacer tus predicciones menos conservadoras. Tan pronto como eso sucede, Trump es elegido y “nacionaliza” el sector energético. El mercado se derrumba. ¿El modelo de predicción fue “incorrecto”? No exactamente. No puede tener en cuenta * todo * en el mundo, pero * cualquier cosa * en el mundo podría afectar el mercado de valores. Hasta ahora, la mayoría de las redes neuronales ni siquiera intentan tener en cuenta estos factores externos que son “cambiadores de juego”. A las personas también les resulta muy difícil, pero somos capaces de “imaginar” futuros posibles y lo que podrían significar. En resumen, el mayor “obstáculo” es que muchos problemas son inherentemente más difíciles de lo que parecen.

De los tres mencionados en los detalles de la pregunta, probablemente no sea ninguno. Los tres han sido abordados al menos parcialmente por los investigadores. El mayor obstáculo es la interpretabilidad y la depuración:

  • La interpretabilidad significa que la red profunda podría explicar su salida. Esto es particularmente importante porque la red profunda compleja no suele ser tan fácil de entender e interpretar como los modelos poco profundos.
  • La depuración significa que se supone que es fácil saber cuándo ha convergido el entrenamiento, cuándo es bastante inferior al óptimo de lo que se puede lograr con la red dada, etc. optimizando un objetivo no convexo. Si crea una red desde cero, lo más probable es que no funcione de inmediato y necesitará múltiples pruebas y errores para que funcione. Saber lo que va mal es muy crucial para avanzar en la capacitación. Desafortunadamente, con estructuras complejas y grandes grados de libertad, la depuración se deteriora, lo que impide que la mayoría de los no expertos obtengan buenos resultados mediante el aprendizaje profundo.

El obstáculo más grande hoy en día es el descubrimiento de que al ajustar una imagen de entrada de una manera específica, uno puede engañar a una Red Neural de Aprendizaje Profundo para clasificar 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. Estas entradas problemáticas se denominan características adversarias.

Segundo a este obstáculo está el requisito de un gran tamaño de entrenamiento etiquetado para aprender nuevos conceptos. Deep Learning requiere muchas muestras para construir clasificaciones. El aprendizaje cero y un disparo sigue siendo un problema importante.

El tercer obstáculo es la falta de interpretabilidad de los modelos que se aprenden. Esto es problemático en situaciones que requieren una explicación para una decisión.

El cuarto obstáculo 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. Los sistemas de aprendizaje automático funcionan bien solo en la dirección de la anti-causalidad. Estos sistemas tienen límites en su capacidad para predecir el comportamiento de otros sistemas complejos. Es decir, predecir el efecto dada una causa.

Una quinta 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.

Aunque estamos trabajando en el poder computacional, todavía estamos lejos de ello. La investigación en computación cuántica es prometedora, pero creo que veremos el nivel molecular y es posible que necesitemos que esté en el nivel atómico.

Abhinav Maurya hace un excelente comentario sobre la depuración y, a lo largo de esos pensamientos, siento que necesitamos un nuevo método de lógica. Los métodos lineales utilizados por Turing y Von Neumann no lo cortarán. No estoy seguro de cuáles serán los nuevos métodos, tal vez un proceso asociativo.

More Interesting

¿Una licenciatura en matemáticas y ciencias de la computación se enfoca más en las matemáticas que en ciencias de la computación?

¿Cómo es posible este gráfico Big-theta para un algoritmo de búsqueda lineal?

¿Puede un desarrollador web beneficiarse de la CS teórica? ¿Cómo puede ser eso?

Educación en Ciencias de la Computación: ¿Cómo el aprendizaje de matemáticas discretas te hace un mejor programador?

¿Un algoritmo 'clásico' de Shor esencialmente destruiría el interés en las computadoras cuánticas?

¿Qué partes de las matemáticas son necesarias para que un ingeniero informático las entienda? Específicamente, ¿cuánto cálculo debe saber un ingeniero informático?

¿Por qué este bucle, usado para agregar caracteres adyacentes en un vector, produce una salida extraña?

¿Cuáles son los requisitos previos (matemáticos, de programación, etc.) que uno debe tener para convertirse en ingeniero de control?

Soy muy malo en matemáticas, pero quiero ser programador. ¿Debo solicitar la programación?

¿Por qué Matlab no le permite llamar a las funciones dos veces o indexarlas como en f (x) (y)?

¿Cuáles son algunas aplicaciones del mundo real de la teoría de la información cuántica?

¿Los ingenieros de software necesitan saber matemáticas?

¿La mayoría de los cursos requeridos en un programa universitario de ciencias de la computación son inútiles para la aplicabilidad de trabajo de programador del mundo real?

Cómo resolver la Competencia de Computación Canadiense de 1996, Etapa 1, Problema C (vea el enlace del problema a continuación)

¿Qué temas matemáticos recomiendas en informática?