¿Puedo usar el aprendizaje profundo para aprender el aprendizaje profundo?

El estado actual del aprendizaje profundo aún no se puede aprender a sí mismo. Como ejemplo, pasaré por casos muy simples que aún no podemos aprender (dejen de lado los complejos como la asignación de crédito).

Tomemos un ejemplo muy simple de redes de convolución.

Si una red neuronal tiene que aprender automáticamente la estructura convolucional de los datos, entonces debe inferir la estructura gráfica subyacente de los datos. Este es un problema en la investigación activa (independiente del aprendizaje profundo), y las soluciones aún no están ahí.

Un ejemplo es: si está construyendo un clasificador de imágenes, pero todos los píxeles de su imagen se mezclan constantemente (se aplica la misma combinación aleatoria a cada imagen), entonces su algoritmo debe inferir un nuevo operador de convolución que no se base en píxeles adyacentes . La Figura 3 en Dispersión de pelo profundo sin supervisión en gráficos es un ejemplo.

A continuación, pensemos en aprender una regla de actualización SGD

Hay muchos algoritmos de optimización que se utilizan en el aprendizaje profundo: SGD, Adam, RMSProp, RProp, LBFGS, etc.

Todo esto actualiza los pesos de su red para que sea un poco mejor que el paso de tiempo anterior. Todos tienen acceso al gradiente en cada parámetro.

Las personas han intentado hacer que una red neuronal aprenda una regla de actualización óptima, que se aproxima a una red neuronal en trabajos publicados inéditos y antiguos. No parece funcionar muy bien todavía.

Deep Learning es una nueva área de investigación de Machine Learning, que se ha introducido con el objetivo de acercar el Machine Learning a uno de sus objetivos originales. Si recién está comenzando en el campo del aprendizaje profundo o si tenía alguna experiencia con redes neuronales hace algún tiempo, puede estar confundido. Puede aprender el aprendizaje profundo utilizando el aprendizaje automático porque DL es parte del aprendizaje automático.

Casi todo el valor actual del aprendizaje profundo está disponible a través del aprendizaje supervisado o el aprendizaje de cursos en línea. puede ser la mejor opción para quien quiere estudiar y conocer el aprendizaje profundo

Aquí hay algunos cursos en línea que son ampliamente utilizados:

Deep Learning AZ ™: redes neuronales artificiales prácticas

De esto puedes llegar a saber :

· Comprender la intuición detrás de las redes neuronales artificiales

· Aplicar redes neuronales artificiales en la práctica

· Comprender la intuición detrás de las redes neuronales convolucionales

· Aplicar redes neuronales convolucionales en la práctica

· Comprender la intuición detrás de las redes neuronales recurrentes

· Aplicar redes neuronales recurrentes en la práctica

· Comprender la intuición detrás de los mapas autoorganizados

· Aplicar mapas autoorganizados en la práctica

· Comprender la intuición detrás de las máquinas Boltzmann

· Aplicar máquinas de Boltzmann en la práctica

· Comprender la intuición detrás de AutoEncoders

· Aplicar AutoEncoders en la práctica

Hay algunos cursos adicionales más:

· Procesamiento de lenguaje natural con aprendizaje profundo en Python

· Zero to Deep Learning ™ con Python y Keras

Es posible que necesite las siguientes habilidades:

  • Pitón
  • Git y GitHub (el código de asignación está en un repositorio de GitHub)
  • Conocimientos básicos de aprendizaje automático (especialmente aprendizaje supervisado)
  • Conocimientos básicos de estadística (media, varianza, desviación estándar, etc.)
  • Álgebra lineal (vectores, matrices, etc.)
  • Cálculo (diferenciación, integración, derivadas parciales, etc.)

El aprendizaje profundo es muy amplio y complejo y para navegar por este laberinto necesitas una visión clara y global del mismo.

Además, este curso estructurará a propósito el código de tal manera que pueda descargarlo y aplicarlo en sus propios proyectos. Además, este curso explica paso a paso dónde y cómo modificar el código para insertar su conjunto de datos, adaptar el algoritmo a sus necesidades y obtener el resultado que busca.

Este es un curso que naturalmente se extiende a su carrera.

También puede seguir algunos libros de texto para referencia:

Libros sugeridos (solo para referencia del enemigo):

· Aprendizaje profundo: el enfoque de un practicante por Josh Patterson y Adam Gibson

· Fundamentos del aprendizaje profundo: diseño de algoritmos de inteligencia artificial de próxima generación por Nikhil Buduma y Nicholas Locascio

TODO LO MEJOR………………………..

Gracias por su solicitud para responder esta excelente pregunta.

La respuesta: un infierno aterrador ¡SÍ!

Dado que la mayoría de lo que los investigadores de aprendizaje profundo están haciendo es una forma de aprendizaje reforzado, muchos pueden automatizarse.

Aquí hay un ejemplo muy relevante de deepmind. Tuve esta idea hace mucho tiempo, escribieron un artículo al respecto: (… Se trata de usar el aprendizaje profundo para entrenar a un optimizador para que haga un aprendizaje profundo.

Otro ejemplo reciente (y un poco alarmante) realizado por el equipo de Google Brain utilizando un aprendizaje reforzado profundo para crear nuevas arquitecturas de red.

Francamente, estoy contando los días hasta que veamos a alguien usando el aprendizaje profundo para enseñar una red neuronal para mejorar la propagación de la espalda … Mi apuesta es Hinton o Deepmind.

En algún nivel es lo que está haciendo DeepMind. Vea la historia sobre cómo AI aprendió a jugar juegos de Atari: control a nivel humano a través del aprendizaje de refuerzo profundo. Purist objetará que está usando el aprendizaje profundo para el refuerzo; sin embargo, es lo más cercano a su intuición de usar un ciclo de retroalimentación.

En el aprendizaje profundo, el modelo consiste en conectar en red un gran número de unidades simples. Pero sigue siendo un enfoque para el aprendizaje automático: todavía trata un conjunto de datos. Aprende de los datos, A a B. La máquina que aprende a jugar un juego de Atari obtiene todos los píxeles como conjunto de datos y aprende qué tecla presionar para obtener el mejor resultado. El problema es que no funcionará muy bien (o en absoluto) si el juego requiere construir sobre experiencias pasadas.

Entonces agrega otra entrada: algo de experiencia del resultado en sí mismo, como un ciclo de retroalimentación. Eso solo puede ser algunos píxeles. Aún así, ahora tiene un sistema que aprende de los datos y de otro sistema que aprende de otros datos , siendo su entorno. Básicamente es lo que hacemos cuando aprendemos algo, lo experimentamos y cambiamos lo que queremos aprender a partir de esa experiencia.

Creo que esta pregunta se relaciona con las máquinas de metaaprendizaje. Vea APRENDER A APRENDER para obtener más información al respecto.

En esta respuesta, defino el aprendizaje profundo como cualquier método que pueda definirse mediante un gráfico acíclico dirigido totalmente diferenciable.

Creo que si desea mejorar su método de aprendizaje con el aprendizaje profundo, debe hacerlo de una manera totalmente diferenciable (para ser considerado DL). Hay algunos trabajos en esta área, como Aprender la arquitectura de redes neuronales profundas y Optimización de hiperparámetros basada en gradientes a través del aprendizaje reversible. Tal vez podría haber otras formas de aprender el algoritmo de optimización también.

O tal vez podría usar un marco de secuencia a secuencia para asignar un conjunto de datos a un código fuente C ++ de un algoritmo que pueda ser entrenado en este conjunto de datos. Su meta-conjunto de datos sería muchos pares (conjunto de datos, código fuente). Pero si tiene un metamodelo capacitado que puede predecir el código fuente de un buen alumno para un conjunto de datos determinado, entonces su metamodelo podría predecir directamente las etiquetas de este conjunto de datos. Entonces, ¿por qué no tomar un seq-2-seq y entrenarlo directamente para predecir etiquetas para conjuntos de datos para conjuntos de datos de dominios muy diferentes? Una objeción a eso es que el uso de códigos fuente como objetivos intermedios podría facilitar el procedimiento de capacitación, pero no tengo idea si ese es el caso.

De todos modos, su pregunta es equivalente a si Deep Learning logrará IA de nivel humano. Porque aprender a hacer investigación en Machine Learning (y, por lo tanto, presentar innovaciones como Deep Learning) ciertamente necesita inteligencia a nivel humano. ¿Alcanzaremos IA de nivel humano con solo DAG diferenciables? No estoy seguro.

Por supuesto que puede. Puede comenzar con este bonito artículo: https://isotropic.org/papers/chi

Depende de cómo se use. Si se utiliza el aprendizaje profundo para estimar los hiperparámetros de otro aprendizaje profundo, es el aprendizaje profundo. Si el aprendizaje profundo se usa para juzgar los resultados de otro aprendizaje profundo, puede dar lugar a un trabajo de clasificación aún mayor. También se podría considerar la idea del aprendizaje de refuerzo profundo …

La mejor manera de comenzar a aprender sobre el aprendizaje profundo es descargar un marco de aprendizaje profundo y comenzar a usarlo. ¡Entonces la respuesta es sí!