Redes Neurais em IA e Deep Learning - página 58

 

Clase 12.5 — RBM para el filtrado colaborativo



Lección 12.5 — RBM para el filtrado colaborativo [Redes neuronales para el aprendizaje automático]

En este video, discutiremos la aplicación de Restricted Boltzmann Machines (RBM) en el filtrado colaborativo, específicamente en el contexto de la competencia de Netflix. El filtrado colaborativo implica predecir cuánto le gustaría un producto a un usuario en función de sus preferencias por otros productos y las preferencias de otros usuarios. La competencia de Netflix desafía a los participantes a predecir cuánto le gustará una película a un usuario en función de sus calificaciones de otras películas.

Los datos de entrenamiento para esta competencia consisten en un gran conjunto de datos con cien millones de calificaciones para dieciocho mil películas por parte de medio millón de usuarios. Para enfrentar el desafío de las calificaciones faltantes para la mayoría de las películas, se emplea un truco importante cuando se usan RBM. Al utilizar este truco, los modelos pueden entrenarse de manera efectiva y demostrar ser útiles en la práctica, como lo demuestra la entrada ganadora en la competencia.

El enfoque de usar RBM para el filtrado colaborativo implica tratar a cada usuario como un caso de capacitación, donde cada usuario se representa como un vector de calificaciones de películas. Para cada película, se utiliza una unidad visible con cinco valores alternativos (softmax de cinco vías) en lugar de unidades binarias. La arquitectura RBM consta de unidades visibles que representan películas y unidades ocultas binarias. Los RBM comparten ponderaciones entre los usuarios que calificaron la misma película, lo que permite compartir ponderaciones y reducir la cantidad de parámetros. El aprendizaje de CD (divergencia contrastiva) se aplica para entrenar los RBM, inicialmente con CD1 y luego con CD3, CD5 y CD9.

Los modelos RBM tienen un rendimiento comparable al de los métodos de factorización de matrices comúnmente utilizados en el filtrado colaborativo. Sin embargo, arrojan diferentes errores. La combinación de las predicciones de los RBM con las de los modelos de factorización de matrices da como resultado mejoras significativas. El grupo ganador de la competencia de Netflix utilizó múltiples modelos RBM y modelos de factorización de matrices en su conjunto para lograr mejores predicciones.

En resumen, la aplicación de Restricted Boltzmann Machines (RBM) en el filtrado colaborativo para la competencia de Netflix implicó tratar a cada usuario como un caso de entrenamiento, utilizando RBM con unidades visibles que representan películas y unidades binarias ocultas. Al aprovechar el peso compartido entre los usuarios que calificaron la misma película, los RBM pueden manejar el gran conjunto de datos de manera efectiva.

Los RBM se entrenaron utilizando el aprendizaje de CD, con iteraciones de CD1, CD3, CD5 y CD9, y se desempeñaron de manera similar a los modelos de factorización de matrices comúnmente utilizados en el filtrado colaborativo. Sin embargo, la combinación de RBM y modelos de factorización de matrices condujo a una mejora significativa en las predicciones. La entrada ganadora en la competencia de Netflix empleó múltiples modelos RBM y modelos de factorización de matrices en su conjunto, mostrando la efectividad de este enfoque.

La utilización de RBM en el filtrado colaborativo demuestra su capacidad para manejar conjuntos de datos grandes y dispersos, como el conjunto de datos de Netflix con millones de calificaciones. Al modelar las relaciones entre los usuarios y las películas, los RBM brindan una herramienta poderosa para hacer predicciones precisas y mejorar los sistemas de recomendación.

La aplicación exitosa de RBM en el filtrado colaborativo muestra su utilidad en el campo del aprendizaje automático y los sistemas de recomendación, y destaca el potencial de utilizar enfoques de conjunto para mejorar aún más la precisión de la predicción.

 

Clase 13.1 — Los altibajos de la retropropagación



Clase 13.1 — Los altibajos de la retropropagación [Redes neuronales para el aprendizaje automático]

El video analiza la historia de la retropropagación, destacando sus orígenes en las décadas de 1970 y 1980 y por qué cayó en desgracia en la década de 1990. Desafía la creencia popular de que la retropropagación falló debido a su incapacidad para manejar múltiples capas de características no lineales. En cambio, las principales razones de su abandono fueron la potencia informática limitada y los pequeños conjuntos de datos disponibles en ese momento.

La retropropagación fue inventada de forma independiente varias veces por diferentes investigadores, incluidos Bryson y Ho a fines de la década de 1960, Paul Wallace en 1974, Rama Hart y Williams en 1981, David Parker y Youngocar en 1985. Inicialmente, no funcionó bien para ciertas tareas, haciendo que los investigadores lo abandonen. Sin embargo, en 1986, un artículo demostró su potencial para aprender múltiples capas de detectores de características no lineales.

A fines de la década de 1990, la mayoría de los investigadores de aprendizaje automático habían renunciado a la retropropagación y preferían las máquinas de vectores de soporte (SVM). La explicación popular fue que la retropropagación luchó con múltiples capas ocultas y redes recurrentes. Sin embargo, desde una perspectiva histórica, las verdaderas razones de su fracaso fueron la potencia informática limitada y los conjuntos de datos etiquetados pequeños, que impedían que la retropropagación brillara en tareas complejas como la visión y el habla.

Los diferentes tipos de tareas de aprendizaje automático tienen diferentes requisitos. En estadística, los datos de baja dimensión con ruido requieren separar la estructura real del ruido. Las redes neuronales bayesianas pueden manejar esto bien, mientras que las redes neuronales no bayesianas como la retropropagación no son tan efectivas. Las máquinas de vectores de soporte y los procesos gaussianos son más adecuados para tales tareas. En inteligencia artificial, los datos de alta dimensión con estructura compleja requieren encontrar representaciones apropiadas, que la retropropagación puede aprender aprovechando múltiples capas y un amplio poder de cómputo.

Se discuten las limitaciones de las máquinas de vectores de soporte, señalando que se ven como una extensión de los perceptrones con el truco del kernel. Se basan en características no adaptativas y una capa de pesos adaptables. Si bien funcionan bien, no pueden aprender múltiples capas de representación. El video también menciona brevemente un documento histórico de 1995, una apuesta entre Larry Jackel y Vladimir Vapnik sobre la comprensión teórica y el uso futuro de grandes redes neuronales entrenadas con retropropagación. En última instancia, se demostró que ambos lados de la apuesta estaban equivocados, ya que las limitaciones eran más prácticas que teóricas.

El fracaso de la retropropagación en la década de 1990 se puede atribuir a las limitaciones de la potencia informática y los pequeños conjuntos de datos, más que a sus capacidades inherentes. Todavía tenía potencial para tareas complejas y eventualmente tuvo éxito cuando se dispuso de conjuntos de datos más grandes y computadoras más poderosas. El video enfatiza la importancia de considerar diferentes tareas de aprendizaje automático y sus requisitos específicos al elegir los algoritmos apropiados.

 

Clase 13.2 — Redes de creencias



Clase 13.2 — Redes de creencias [Redes neuronales para el aprendizaje automático]

Abandoné la retropropagación en la década de 1990 debido a su dependencia de una gran cantidad de etiquetas, que eran escasas en ese momento. Sin embargo, me inspiró el éxito de aprender con pocas etiquetas explícitas. Para preservar los beneficios del aprendizaje de gradiente descendente sin la necesidad de etiquetas extensas, exploré funciones objetivas alternativas. Los modelos generativos, que apuntan a modelar datos de entrada en lugar de predecir etiquetas, se alinearon bien con esta búsqueda. Los modelos gráficos, un concepto que combina estructuras gráficas discretas con cálculos de valores reales, surgieron como un enfoque prometedor en estadística e inteligencia artificial. Si bien las máquinas de Boltzmann fueron ejemplos tempranos de modelos gráficos no dirigidos, en 1992 Bradford Neil introdujo modelos gráficos dirigidos llamados redes de creencias sigmoideas, empleando unidades similares a las de las máquinas de Boltzmann. Entonces, el desafío se convirtió en cómo aprender estas redes de creencias sigmoideas.

Aprendiendo la creencia sigmoidea Nets encontró múltiples problemas. Las redes profundas con múltiples capas ocultas sufrieron un aprendizaje lento. Se descubrió que la mala inicialización del peso contribuía a este problema. La retropropagación también tendía a atascarse en niveles óptimos locales subóptimos que, aunque razonablemente buenos, estaban lejos de ser óptimos para redes profundas. Si bien era posible recurrir a modelos más simples que permitieran la optimización convexa, no abordaba la complejidad de los datos del mundo real. Para superar estas limitaciones, el aprendizaje no supervisado surgió como una solución. Al utilizar el aprendizaje no supervisado, pudimos aprovechar la eficiencia y la simplicidad de los métodos de gradiente y el descenso estocástico de mini lotes para el ajuste del peso. Sin embargo, el enfoque cambió a modelar la estructura de la entrada sensorial en lugar de la relación entrada-salida. Los pesos se ajustarían para maximizar la probabilidad de que el modelo generativo produzca la entrada sensorial observada.

Surgieron dos problemas principales: el problema de inferencia y el problema de aprendizaje. El problema de inferencia implicó inferir los estados de variables no observadas, con el objetivo de derivar distribuciones de probabilidad sobre estas variables dado que no eran independientes entre sí. El problema de aprendizaje implicaba ajustar las interacciones entre las variables para que la red tuviera más probabilidades de generar los datos de entrenamiento. Implicaba determinar qué nodos influían en otros y la fuerza de su efecto.

El matrimonio de modelos gráficos y redes neuronales tuvo una dinámica única. Los primeros modelos gráficos se basaban en estructuras gráficas definidas por expertos y probabilidades condicionales, con el objetivo de resolver el problema de la inferencia. Por otro lado, las redes neuronales priorizaron el aprendizaje y evitaron el cableado manual del conocimiento. Aunque las redes neuronales carecían de interpretabilidad y escasa conectividad para facilitar la inferencia, tenían la ventaja de aprender de los datos de entrenamiento. Sin embargo, se desarrollaron versiones de redes neuronales de las redes de creencias. Al construir modelos generativos usando neuronas idealizadas, surgieron dos tipos: modelos basados en energía y modelos causales. Los modelos basados en energía utilizaron conexiones simétricas entre neuronas estocásticas binarias, lo que resultó en máquinas de Boltzmann. Si bien el aprendizaje de las máquinas de Boltzmann resultó ser un desafío, la restricción de la conectividad facilitó el aprendizaje de las máquinas de Boltzmann restringidas. Sin embargo, este enfoque limitó el poder de las redes neuronales con múltiples capas ocultas. Los modelos causales, que empleaban gráficos acíclicos dirigidos con neuronas estocásticas binarias, dieron lugar a las redes de creencias sigmoideas. En 1992, Neil demostró que las redes de creencias sigmoideas eran un poco más fáciles de aprender en comparación con las máquinas de Boltzmann. En una red de creencias sigmoidea, todas las variables son neuronas estocásticas binarias, y la generación de datos implica tomar decisiones estocásticas capa por capa, lo que finalmente produce muestras imparciales de valores visibles.

Al adoptar modelos causales o enfoques híbridos, podríamos superar las limitaciones de la retropropagación y aprovechar el aprendizaje no supervisado para modelar la estructura de la entrada sensorial de manera efectiva.

Antes de profundizar en las redes de creencias causales hechas de neuronas, es esencial proporcionar algunos antecedentes sobre la relación entre la inteligencia artificial (IA) y la probabilidad. En la década de 1970 y principios de la de 1980, hubo una fuerte resistencia dentro de la comunidad de IA hacia la probabilidad. La probabilidad se consideró desfavorable y los investigadores de IA prefirieron el procesamiento discreto de símbolos sin incorporar elementos probabilísticos. Sin embargo, una excepción notable fue John von Neumann, quien reconoció el potencial de una conexión entre la lógica formal y la termodinámica, particularmente el trabajo de Boltzmann. Desafortunadamente, las ideas de von Neumann no ganaron fuerza durante su vida.

Eventualmente, las probabilidades encontraron su camino hacia la IA a través del desarrollo de modelos gráficos, que combinan la teoría de gráficos y la teoría de la probabilidad. En la década de 1980, los investigadores de IA trabajaban en problemas prácticos que implicaban incertidumbre, como el diagnóstico médico o la exploración de minerales. Aunque hubo una aversión a las probabilidades, quedó claro que el uso de probabilidades era más efectivo que los métodos ad-hoc. Los modelos gráficos, presentados por Perl Hackerman Lauritzen y otros, proporcionaron un marco para representar la incertidumbre y realizar cálculos probabilísticos basados en estructuras gráficas.

Los modelos gráficos abarcan varios tipos de modelos, y un subconjunto son las redes de creencias. Las redes de creencias son gráficos acíclicos dirigidos que consisten en variables estocásticas. Estos gráficos a menudo tienen nodos escasamente conectados y permiten algoritmos de inferencia eficientes que calculan las probabilidades de los nodos no observados. Sin embargo, estos algoritmos se vuelven exponencialmente complejos cuando se aplican a redes densamente conectadas.

Una red de creencias sirve como modelo generativo y su problema de inferencia implica determinar los estados de las variables no observadas, lo que da como resultado distribuciones de probabilidad sobre estas variables. El problema de aprendizaje se enfoca en ajustar las interacciones entre variables para aumentar la probabilidad de generar los datos de entrenamiento observados.

En el contexto de las redes neuronales, existe una conexión entre los modelos gráficos y las redes neuronales. Los primeros modelos gráficos se basaban en estructuras gráficas definidas por expertos y probabilidades condicionales, principalmente para abordar el problema de la inferencia. Por otro lado, las redes neuronales enfatizaron el aprendizaje a partir de datos de entrenamiento y evitaron el conocimiento artesanal. Si bien las redes neuronales carecían de interpretabilidad y escasa conectividad, ofrecían la ventaja de la adaptabilidad a través del aprendizaje.

Para construir modelos generativos con neuronas idealizadas, se pueden considerar dos tipos principales. Los modelos basados en energía, como las máquinas de Boltzmann, conectan neuronas estocásticas binarias de forma simétrica. Sin embargo, aprender las máquinas de Boltzmann es un desafío. Otra opción son los modelos causales, que utilizan gráficos acíclicos dirigidos compuestos por neuronas estocásticas binarias. En 1992, Neil introdujo las redes de creencias sigmoideas, que eran más fáciles de aprender que las máquinas de Boltzmann. Las redes de creencias sigmoideas son modelos causales donde todas las variables son neuronas estocásticas binarias.

Para generar datos a partir de un modelo causal como una red de creencias sigmoide, las decisiones estocásticas se toman capa por capa, comenzando desde la capa superior y cayendo en cascada hasta los efectos visibles. Este proceso produce una muestra imparcial de valores visibles de acuerdo con las creencias de la red neuronal.

Al adoptar el aprendizaje no supervisado y utilizar modelos causales o enfoques híbridos, es posible superar las limitaciones de la retropropagación y aprovechar el poder del aprendizaje no supervisado para modelar efectivamente la estructura de la entrada sensorial. Estos avances brindan una vía prometedora para abordar los desafíos que plantean las redes neuronales profundas y allanan el camino para algoritmos de aprendizaje más sofisticados y eficientes.

En conclusión, la exploración de las redes de creencias y su conexión con las redes neuronales ha abierto nuevas posibilidades para la IA y el modelado probabilístico. La resistencia inicial hacia la probabilidad en la IA se ha superado y los modelos gráficos han surgido como un marco poderoso para representar la incertidumbre y realizar cálculos probabilísticos.

Las redes de creencias, específicamente las redes de creencias sigmoideas, ofrecen un enfoque alternativo al modelado generativo en comparación con los modelos basados en energía como las máquinas de Boltzmann. Al utilizar gráficos acíclicos dirigidos y neuronas estocásticas binarias, las redes de creencias sigmoideas proporcionan un medio para generar datos y aprender de los conjuntos de entrenamiento de manera más efectiva.

La integración del aprendizaje no supervisado con modelos causales o enfoques híbridos tiene el potencial de abordar las limitaciones de la retropropagación en las redes neuronales profundas. Al modelar la estructura de la entrada sensorial y maximizar la probabilidad de los datos observados, estos enfoques ofrecen una forma de aprovechar la eficiencia y la simplicidad de los métodos de gradiente mientras capturan la complejidad de los datos del mundo real.

La evolución de la IA y la aceptación de la probabilidad han remodelado el campo, lo que permite a los investigadores desarrollar modelos más robustos y adaptables. A medida que el viaje continúa, es probable que surjan más avances en el modelado probabilístico, las redes neuronales y el aprendizaje no supervisado, lo que conducirá a sistemas de IA más sofisticados e inteligentes.

Al combinar las fortalezas de los modelos gráficos y las redes neuronales, los investigadores pueden continuar ampliando los límites de la IA, desbloqueando nuevas posibilidades para la comprensión, el aprendizaje y la toma de decisiones en entornos complejos e inciertos.

 

Clase 13.3 — Aprendiendo redes de creencias sigmoideas



Lección 13.3 — Aprendizaje de redes de creencias sigmoideas [Redes neuronales para el aprendizaje automático]

El video analiza los desafíos de aprender redes de creencias sigmoideas y presenta dos métodos diferentes para abordar estos desafíos. A diferencia de las máquinas de Boltzmann, las redes de creencias sigmoideas no requieren dos fases diferentes para el aprendizaje, lo que simplifica el proceso. Son modelos localmente normalizados, eliminando la necesidad de tratar con funciones de partición y sus derivados.

El aprendizaje en redes de creencias sigmoideas se vuelve fácil si podemos obtener muestras imparciales de la distribución posterior sobre unidades ocultas dados los datos observados. Sin embargo, obtener muestras imparciales es difícil debido a un fenómeno llamado "explicación", que afecta la distribución posterior. Este fenómeno surge de la anti-correlación entre causas ocultas cuando ocurre un efecto observado.

El aprendizaje en redes de creencias sigmoideas profundas con múltiples capas de variables ocultas se vuelve aún más desafiante. La distribución posterior sobre la primera capa de variables ocultas no es factorial debido a la explicación, y existen correlaciones entre las variables ocultas tanto en la anterior como en la posterior. Calcular el término anterior para la primera capa requiere integrar todos los posibles patrones de actividad en las capas superiores, lo que hace que el proceso de aprendizaje sea complejo.

Se discuten dos métodos para aprender redes de creencias profundas: el método Monte Carlo y los métodos variacionales. El método de Monte Carlo implica ejecutar una cadena de Markov para aproximar la distribución posterior y obtener muestras. Sin embargo, puede ser lento para grandes redes de creencias profundas. Los métodos variacionales, por otro lado, tienen como objetivo obtener muestras aproximadas de una distribución diferente que se aproxime a la posterior. Aunque no son imparciales, estas muestras aún se pueden usar para el aprendizaje de máxima probabilidad y, al aumentar el límite inferior de la probabilidad logarítmica, se pueden realizar mejoras en el modelado de los datos.

El aprendizaje en redes de creencias sigmoideas plantea desafíos, particularmente en redes profundas, pero el método de Monte Carlo y los métodos variacionales brindan enfoques para abordar estas dificultades y hacer que el aprendizaje sea factible.

 

Clase 13.4 — El algoritmo de despertar-dormir



Lección 13.4 — El algoritmo de despertar y dormir [Redes neuronales para el aprendizaje automático]

El algoritmo de despertar-dormir es un método de aprendizaje utilizado para modelos gráficos dirigidos como redes de creencias sigmoideas. Consta de dos fases: la fase de vigilia y la fase de sueño. A diferencia de las máquinas de Boltzmann, que se utilizan para modelos gráficos no dirigidos, el algoritmo de vigilia-sueño está diseñado específicamente para redes de creencias sigmoideas.

El algoritmo es parte del aprendizaje variacional, un enfoque de aprendizaje automático que se aproxima a la distribución posterior para aprender modelos gráficos complicados. En lugar de calcular la distribución posterior exacta, que suele ser difícil, el aprendizaje variacional la aproxima con una aproximación más económica. Luego, se aplica el aprendizaje de máxima verosimilitud basado en esta aproximación.

Sorprendentemente, el proceso de aprendizaje aún funciona de manera efectiva, impulsado por dos factores: mejorar la capacidad del modelo para generar datos observados y ajustar el posterior aproximado al posterior real. Este efecto permite que el aprendizaje variacional funcione bien para las redes de creencias sigmoideas.

El algoritmo de vigilia-sueño utiliza dos conjuntos de pesos: pesos generativos y pesos de reconocimiento. En la fase de activación, los datos se introducen en la capa visible y se realiza un pase hacia adelante utilizando los pesos de reconocimiento. Las decisiones binarias estocásticas se toman para cada unidad oculta de forma independiente, generando estados binarios estocásticos. Estos estados se tratan como muestras de la distribución posterior verdadera y se aplica el aprendizaje de máxima verosimilitud a los pesos generativos.

En la fase de sueño, el proceso se invierte. A partir de un vector aleatorio en la capa oculta superior, se generan estados binarios para cada capa utilizando los pesos generativos. El objetivo es recuperar los estados ocultos de los datos. Los pesos de reconocimiento están entrenados para lograr esto.

El algoritmo de vigilia-sueño tiene fallas, como que los pesos de reconocimiento no siguen el gradiente correcto y el promedio de modo incorrecto debido a la aproximación de independencia. A pesar de estas limitaciones, algunos investigadores, como Karl Friston, creen que se parece al funcionamiento del cerebro. Sin embargo, otros piensan que se descubrirán mejores algoritmos en el futuro.

El algoritmo de vigilia-sueño se aproxima a la distribución posterior y alterna entre las fases de vigilia y sueño para aprender un modelo generativo. A pesar de sus limitaciones, ha sido influyente en el campo del aprendizaje automático.

 

Lección 14.1 — Aprendizaje de capas de características apilando RBM



Lección 14.1 — Capas de aprendizaje de funciones mediante el apilamiento de RBM [Redes neuronales para el aprendizaje automático]

En este video, el orador analiza un enfoque diferente para aprender redes de creencias sigmoideas. Explican que mientras trabajaban en las redes de creencias sigmoideas, cambiaron su enfoque a las máquinas de Boltzmann y descubrieron que las máquinas restrictivas de Boltzmann se podían aprender de manera eficiente. Se dieron cuenta de que al tratar las características aprendidas por una máquina de Boltzmann restrictiva como datos, podían aplicar otra máquina de Boltzmann restrictiva para modelar las correlaciones entre esas características. Esto condujo a la idea de apilar varias máquinas de Boltzmann para aprender varias capas de características no lineales, lo que provocó un resurgimiento del interés en las redes neuronales profundas.

Luego, el orador explora el desafío de combinar máquinas Boltzmann apiladas en un solo modelo. Si bien uno esperaría una máquina Boltzmann de múltiples capas, un estudiante llamado Yitay descubrió que el resultado es más similar a una red de creencias sigmoidea. Este hallazgo inesperado resolvió el problema de aprender redes de creencias sigmoideas profundas centrándose en aprender modelos no dirigidos como las máquinas de Boltzmann.

El orador describe el proceso de entrenar una capa de características que reciben directamente información de los píxeles y usar los patrones de activación de esas características para aprender otra capa de características. Este proceso se puede repetir para aprender múltiples capas, con cada capa modelando la actividad correlacionada en la capa de abajo. Está comprobado que agregar otra capa de características mejora un límite inferior variacional en la probabilidad logarítmica de generar los datos.

Para combinar las máquinas de Boltzmann en un solo modelo, el orador explica el procedimiento de aprender cada máquina individualmente y luego unirlas. El modelo combinado resultante se denomina red de creencias profundas, que consta de capas superiores que se asemejan a una máquina restrictiva de Boltzmann y capas inferiores que se asemejan a una red de creencias sigmoidea. El orador también analiza los beneficios de apilar máquinas de Boltzmann y explica el concepto de promediar distribuciones factoriales. Demuestran cómo promediar dos distribuciones factoriales no da como resultado una distribución factorial. El video profundiza aún más en el proceso de aprendizaje de apilar máquinas de Boltzmann y ajustar el modelo compuesto utilizando una variación del algoritmo de vigilia-sueño. Las tres etapas de aprendizaje involucran el ajuste de ponderaciones generativas y de reconocimiento, el muestreo de unidades ocultas y visibles, y la actualización de las ponderaciones usando divergencia contrastiva.

Se presenta un ejemplo en el que se utilizan 500 unidades ocultas binarias para aprender las clases de diez dígitos en imágenes de 28x28 píxeles. Después de entrenar el RBM, las funciones aprendidas se utilizan para tareas de reconocimiento y generación.

El video destaca el descubrimiento inesperado del uso de máquinas Boltzmann apiladas para aprender redes de creencias profundas y proporciona información sobre los procesos de aprendizaje y ajuste involucrados.

 

Clase 14.2 — Aprendizaje discriminativo para DBN



Clase 14.2 — Aprendizaje discriminativo para DBN [Redes neuronales para el aprendizaje automático]

En este video, exploramos el proceso de aprender una red de creencias profundas. Comenzamos apilando máquinas de Boltzmann restrictivas para formar las capas iniciales, que luego se tratan como una red neuronal profunda. Afinamos esta red utilizando métodos discriminativos en lugar de métodos generativos, con el objetivo de mejorar su capacidad para discriminar entre clases. Este enfoque ha tenido un impacto significativo en el reconocimiento de voz, lo que ha llevado a muchos grupos líderes a adoptar redes neuronales profundas para reducir las tasas de error en este campo.

Para afinar la red profunda, seguimos una fase previa a la capacitación en la que aprendemos una capa de características a la vez utilizando máquinas Boltzmann restrictivas apiladas. Esta fase previa al entrenamiento proporciona un buen conjunto inicial de pesos para la red neuronal profunda. Luego empleamos la retropropagación, un procedimiento de búsqueda local, para refinar y optimizar aún más la red para la discriminación. Esta combinación de entrenamiento previo y ajuste supera las limitaciones de la retropropagación tradicional, lo que facilita el aprendizaje de redes neuronales profundas y mejora sus capacidades de generalización.

El pre-entrenamiento ofrece beneficios en términos de optimización y generalización. Se escala bien para redes grandes, especialmente cuando cada capa exhibe localidad. El proceso de aprendizaje se vuelve más paralelo, ya que hay menos interacción entre ubicaciones muy separadas. Además, el entrenamiento previo nos permite comenzar la retropropagación con detectores de características sensibles, lo que da como resultado gradientes iniciales más significativos en comparación con los pesos aleatorios. Además, las redes preentrenadas exhiben menos sobreajuste porque la mayoría de la información en los pesos finales proviene del modelado de la distribución de entrada, que normalmente contiene más información que las propias etiquetas.

El uso de la capacitación previa también aborda la objeción de que puede conducir al aprendizaje de características irrelevantes para la tarea discriminatoria en cuestión. Si bien es cierto que podemos aprender características que nunca se usan, el poder computacional de las computadoras modernas nos permite permitirnos esta ineficiencia. Entre las funciones aprendidas, siempre habrá algunas que sean muy útiles, superando las entradas en bruto y compensando las funciones no utilizadas. Además, el entrenamiento previo reduce la carga de la retropropagación para descubrir nuevas funciones, lo que reduce la necesidad de grandes cantidades de datos etiquetados. Los datos sin etiquetar siguen siendo valiosos para descubrir buenas características durante la fase previa al entrenamiento.

Para ilustrar la efectividad del entrenamiento previo y el ajuste fino, el video analiza el modelado del conjunto de datos MNIST. Se aprenden tres capas ocultas de características de una manera completamente sin supervisión, generando dígitos de aspecto realista de diferentes clases. Para evaluar la utilidad de estas funciones para la discriminación, se agrega una capa softmax final de diez vías y se utiliza la retropropagación para el ajuste fino. Los resultados muestran un rendimiento mejorado en comparación con el entrenamiento puramente discriminatorio, especialmente en tareas de permutación invariable donde la retropropagación estándar lucha por lograr tasas de error bajas.

Varios experimentos demuestran los beneficios del pre-entrenamiento. Cuando se utiliza una pila de máquinas Boltzmann para el entrenamiento previo y el ajuste fino, la tasa de error en la tarea MNIST invariante de permutación se puede reducir hasta un 1,0 %. Al agregar una capa softmax de 10 vías directamente encima de las máquinas Boltzmann preentrenadas, la tasa de error se puede mejorar aún más hasta el 1,15 % con algunos ajustes. El trabajo de Micro Yerin, junto con el grupo de Yan Lecun, muestra que el entrenamiento previo es particularmente efectivo con más datos y mejores antecedentes. Sus experimentos, que involucraron imágenes de dígitos distorsionadas adicionales y una red neuronal convolucional, lograron tasas de error tan bajas como 0,39%, estableciendo nuevos récords en el reconocimiento de voz.

Este progreso en el entrenamiento previo y el ajuste fino de las redes neuronales profundas ha tenido un impacto significativo en el reconocimiento de voz, lo que ha llevado a mejoras en este campo. Muchos investigadores y grupos, incluido Microsoft Research, han adoptado redes neuronales profundas para tareas de reconocimiento de voz, citando el éxito y los avances que ha hecho posible este enfoque.

El éxito del entrenamiento previo y el ajuste fino de las redes neuronales profundas ha despertado un interés renovado en las redes neuronales para diversas aplicaciones más allá del reconocimiento de voz. Los investigadores han comenzado a explorar el potencial de las redes neuronales profundas en la visión artificial, el procesamiento del lenguaje natural y otros dominios. La combinación de entrenamiento previo y ajuste ha demostrado ser una técnica poderosa para aprender representaciones jerárquicas y mejorar el rendimiento de las redes neuronales.

Una de las razones por las que el entrenamiento previo es efectivo es que ayuda a superar las limitaciones de la retropropagación tradicional, especialmente cuando se trata de redes profundas. Las redes profundas con muchas capas pueden sufrir el problema del gradiente de desaparición, donde los gradientes disminuyen a medida que se propagan a través de las capas, lo que dificulta entrenar la red de manera efectiva. Al entrenar previamente la red capa por capa e inicializar los pesos en función de las funciones aprendidas, proporcionamos un buen punto de partida para la propagación hacia atrás, lo que conduce a una optimización más eficiente.

Otra ventaja del entrenamiento previo es que ayuda a capturar representaciones significativas y jerárquicas de los datos de entrada. Las capas de la red aprenden características cada vez más complejas y abstractas a medida que nos adentramos en la red. Esta representación jerárquica permite que la red extraiga características de alto nivel que son útiles para la discriminación. Al entrenar previamente la red para modelar la distribución de los vectores de entrada, nos aseguramos de que las funciones aprendidas capturen patrones y variaciones importantes en los datos, lo que ayuda a mejorar el rendimiento de generalización de la red.

La combinación de preentrenamiento generativo y ajuste fino discriminativo se ha convertido en un paradigma popular en el aprendizaje profundo. Aprovecha los beneficios del aprendizaje no supervisado para aprender características iniciales útiles y luego ajusta esas características utilizando datos etiquetados para la tarea discriminatoria específica. Este enfoque ha demostrado ser exitoso en varias aplicaciones y ha llevado a avances en el rendimiento.

A medida que el campo del aprendizaje profundo sigue evolucionando, los investigadores exploran constantemente nuevas técnicas y arquitecturas para mejorar el entrenamiento y el rendimiento de las redes neuronales profundas. El éxito del entrenamiento previo y el ajuste ha allanado el camino para avances en otras áreas, como el aprendizaje de transferencia, donde los modelos entrenados previamente se utilizan como punto de partida para nuevas tareas, y el aprendizaje autosupervisado, donde los modelos aprenden de ellos. datos no etiquetados mediante la predicción de ciertos aspectos de los datos.

En conclusión, la combinación de pre-entrenamiento y ajuste ha revolucionado el campo del aprendizaje profundo. Al aprovechar el aprendizaje no supervisado para aprender las funciones iniciales y luego refinar esas funciones mediante el aprendizaje supervisado, las redes neuronales profundas pueden lograr un mejor rendimiento y capacidades de generalización. Este enfoque ha tenido un impacto significativo en varias aplicaciones, incluido el reconocimiento de voz, la visión por computadora y el procesamiento del lenguaje natural, y continúa impulsando los avances en el campo del aprendizaje profundo.

 

Clase 14.3 — Ajuste fino discriminativo



Clase 14.3 — Ajuste fino discriminativo [Redes neuronales para el aprendizaje automático]

En este video, profundizaremos en el proceso de ajuste fino discriminatorio después de entrenar previamente una red neuronal utilizando una pila de máquinas de Boltzmann. Observamos que durante el ajuste fino, los pesos en las capas inferiores experimentan cambios mínimos; sin embargo, estos pequeños ajustes tienen un impacto significativo en el rendimiento de clasificación de la red al ubicar con precisión los límites de decisión.

El entrenamiento previo también mejora la efectividad de las redes más profundas en comparación con las menos profundas. Sin entrenamiento previo, las redes menos profundas tienden a superar a las más profundas. Sin embargo, el entrenamiento previo invierte esta tendencia, donde las redes profundas funcionan mejor mientras que las redes superficiales sin entrenamiento previo funcionan peor.

Además, proporcionamos un argumento convincente para comenzar con el entrenamiento generativo antes de considerar el entrenamiento discriminativo. Al comparar los resultados de las redes en un conjunto de casos de prueba y visualizarlos usando t-SNE, observamos dos clases distintas: redes sin entrenamiento previo en la parte superior y redes con entrenamiento previo en la parte inferior. Las redes dentro de cada clase exhiben similitudes, pero no hay superposición entre las dos clases.

El entrenamiento previo permite que las redes descubran soluciones cualitativamente diferentes en comparación con comenzar con pesos aleatorios pequeños. Las soluciones encontradas a través del pre-entrenamiento generativo conducen a distintas regiones en el espacio funcional, mientras que las redes sin pre-entrenamiento exhiben una mayor variabilidad.

Por último, discutimos por qué se justifica la formación previa. Al generar pares de imagen y etiqueta, es más plausible que la etiqueta dependa de los objetos del mundo real en lugar de solo los píxeles de la imagen. La información que transmite la imagen supera a la de la etiqueta, ya que la etiqueta contiene información limitada. En tales casos, tiene sentido invertir primero la ruta de gran ancho de banda del mundo a la imagen para recuperar las causas subyacentes y luego determinar la etiqueta correspondiente. Esto justifica la fase de pre-entrenamiento, donde se aprende el mapeo de imagen a causas, seguida de la fase discriminatoria para mapear las causas a la etiqueta, con un posible ajuste fino del mapeo de imagen a causas.

Para ilustrar los beneficios del entrenamiento previo, examinamos un experimento específico realizado en el laboratorio de Yoshi Banjo. El experimento se centra en el ajuste fino después del preentrenamiento generativo. Antes del ajuste fino, los campos receptivos en la primera capa oculta de detectores de características muestran cambios mínimos. Sin embargo, estos cambios sutiles contribuyen significativamente a mejorar la discriminación.

El experimento consiste en discriminar entre dígitos en un gran conjunto de dígitos distorsionados. Los resultados muestran que las redes con entrenamiento previo logran consistentemente errores de prueba más bajos en comparación con las redes sin entrenamiento previo, incluso cuando se usan redes con una sola capa oculta. La ventaja del entrenamiento previo se vuelve más pronunciada cuando se usan redes más profundas. Las redes profundas con entrenamiento previo exhiben poca o ninguna superposición con las redes superficiales, lo que enfatiza aún más la efectividad del entrenamiento previo para mejorar el rendimiento de la red.

Además, exploramos el efecto del número de capas sobre el error de clasificación. Sin entrenamiento previo, dos capas parecen ser la opción óptima, ya que aumentar aún más el número de capas conduce a un rendimiento significativamente peor. Por el contrario, el entrenamiento previo mitiga este problema, ya que las redes con cuatro capas superan a las de dos capas. Se reduce la variación en el error y se mejora el rendimiento general.

Para representar visualmente los cambios de peso de la red durante el entrenamiento, se utilizan visualizaciones t-SNE. Los pesos de las redes preentrenadas y no preentrenadas se trazan en el mismo espacio. Los gráficos resultantes revelan dos clases distintas: redes sin entrenamiento previo en la parte superior y redes con entrenamiento previo en la parte inferior. Cada punto representa un modelo en el espacio funcional y las trayectorias muestran la progresión de la similitud durante el entrenamiento. Las redes sin capacitación previa terminan en diferentes regiones del espacio funcional, lo que indica una mayor variedad de soluciones. Las redes con pre-entrenamiento, por otro lado, convergen a una región específica, indicando más similitud entre ellas.

La comparación de vectores de peso por sí sola es insuficiente porque las redes con diferentes configuraciones de peso pueden exhibir el mismo comportamiento. En cambio, las salidas de las redes en los casos de prueba se concatenan en vectores y se aplica t-SNE para visualizar su similitud. Los colores en los gráficos t-SNE representan diferentes etapas de entrenamiento, lo que ilustra aún más la progresión de la similitud.

El entrenamiento previo de las redes neuronales mediante el entrenamiento generativo antes del entrenamiento discriminativo ofrece varias ventajas. Mejora el rendimiento de la clasificación al colocar los límites de decisión con precisión, mejora la eficacia de las redes más profundas y proporciona soluciones distintas en el espacio funcional. Al considerar la ruta de ancho de banda alto del mundo a la imagen y la ruta de ancho de banda bajo del mundo a la etiqueta, el entrenamiento previo permite la recuperación de las causas subyacentes antes de determinar la etiqueta. Este enfoque de dos fases justifica el uso de pre-entrenamiento en el entrenamiento de redes neuronales.

 

Clase 14.4 — Modelado de datos de valor real con un RBM



Lección 14.4 — Modelado de datos de valor real con una RBM [Redes neuronales para el aprendizaje automático]

Describiré cómo usar una máquina de Boltzmann restringida (RBM) para modelar datos de valor real. En este enfoque, las unidades visibles se transforman de unidades estocásticas binarias a unidades lineales con ruido gaussiano. Para abordar los desafíos de aprendizaje, las unidades ocultas se configuran como unidades lineales rectificadas.

Aprender un RBM para datos de valor real es relativamente sencillo. Inicialmente, los RBM se usaban con imágenes de dígitos escritos a mano, donde las probabilidades representaban intensidades intermedias causadas por píxeles parcialmente entintados. Estas probabilidades, que van de 0 a 1, modelaron la posibilidad de que se active una unidad logística. Esta aproximación funcionó bien para píxeles parcialmente entintados, aunque es técnicamente incorrecta.

Sin embargo, cuando se trata de imágenes reales, la intensidad de un píxel suele estar cerca de la intensidad media de los píxeles vecinos. Una unidad logística no puede representar con precisión este comportamiento. Las unidades logísticas de campo medias luchan por capturar las diferencias de intensidad de grano fino. Para abordar esto, se utilizan unidades lineales con ruido gaussiano para modelar las intensidades de píxeles como variables gaussianas.

El muestreo de Gibbs alterno, utilizado en el aprendizaje de divergencia contrastiva, todavía se puede aplicar para ejecutar la cadena de Markov. Sin embargo, se requiere una tasa de aprendizaje menor para evitar la inestabilidad. La función de energía utilizada en la ecuación RBM consta de un término de contención parabólica que evita que explote y un término interactivo entre unidades visibles y ocultas.

El término interactivo representa la contribución de las unidades ocultas a la función de energía. Derivando el término se obtiene un gradiente constante. El efecto combinado de la función de contención parabólica y la contribución de arriba hacia abajo de las unidades ocultas da como resultado una función parabólica con una media desviada del sesgo de la unidad visible.

Sin embargo, el aprendizaje con RBM binarios gaussianos plantea desafíos. Es difícil aprender variaciones estrechas para las unidades visibles. Cuando la desviación estándar de una unidad visible es pequeña, los efectos de abajo hacia arriba se exageran, mientras que los efectos de arriba hacia abajo se atenúan. Esto lleva a que las unidades ocultas se saturen y estén firmemente encendidas o apagadas, lo que interrumpe el proceso de aprendizaje.

Para abordar esto, es necesario tener una mayor cantidad de unidades ocultas en comparación con las unidades visibles. Esto permite que los pequeños pesos entre las unidades visibles y ocultas tengan un efecto descendente significativo debido a la abundancia de unidades ocultas. Además, el número de unidades ocultas debería cambiar a medida que disminuye la desviación estándar de las unidades visibles.

Para lograr esto, se introducen unidades sigmoideas escalonadas. Estas unidades son copias múltiples de cada unidad oculta binaria estocástica, cada una con los mismos pesos y sesgos pero con una compensación fija del sesgo. Este desplazamiento varía entre los miembros de la familia de unidades sigmoideas, lo que da como resultado una curva de respuesta que aumenta linealmente a medida que aumenta la entrada total. Este enfoque proporciona más efectos de arriba hacia abajo para impulsar unidades visibles con pequeñas desviaciones estándar.

Aunque el uso de una gran población de unidades estocásticas binarias con sesgos de compensación puede ser costoso desde el punto de vista computacional, se pueden realizar aproximaciones rápidas que arrojan resultados similares. Estas aproximaciones implican aproximar la suma de actividades de las unidades sigmoideas con sesgos compensados como el logaritmo de 1 más la exponencial de la entrada total. Alternativamente, se pueden usar unidades lineales rectificadas, que son más rápidas de calcular y exhiben equivarianza de escala, lo que las hace adecuadas para representaciones de imágenes.

Las unidades lineales rectificadas tienen la propiedad de equivarianza de escala, lo que significa que si las intensidades de píxeles en una imagen se multiplican por un escalar, las actividades de las unidades ocultas también escalarán por el mismo factor. Esta propiedad es similar a la equivarianza traslacional exhibida por las redes neuronales convolucionales (CNN). En las CNN, cambiar una imagen conduce a una representación cambiada en cada capa sin afectar significativamente el comportamiento general de la red.

Al utilizar RBM con unidades lineales y unidades lineales rectificadas, es posible modelar datos de valor real de manera efectiva.

 

Clase 14.5 — Los RBM son redes de creencias sigmoideas infinitas



Clase 14.5 — Los RBM son redes de creencias sigmoideas infinitas [Redes neuronales para el aprendizaje automático]

En este video, discutimos material avanzado relacionado con los orígenes del aprendizaje profundo y los aspectos matemáticos de las redes neuronales profundas. Exploramos la relación entre las máquinas de Boltzmann restringidas (RBM) y las redes de creencias sigmoideas infinitamente profundas con pesos compartidos.

Los RBM pueden verse como un caso especial de redes de creencias sigmoideas, donde el RBM corresponde a una red infinitamente profunda con pesos compartidos. Al comprender la equivalencia entre los RBM y las redes infinitamente profundas, obtenemos información sobre la efectividad del aprendizaje capa por capa y la divergencia contrastiva.

La cadena de Markov utilizada para tomar muestras de un RBM es equivalente a tomar muestras de la distribución de equilibrio de una red infinitamente profunda. La inferencia en la red infinitamente profunda se simplifica debido a la implementación de un previo complementario, que cancela las correlaciones causadas por la explicación. Esto simplifica el proceso de inferencia en cada capa de la red.

El algoritmo de aprendizaje para redes de creencias sigmoideas se puede utilizar para derivar el algoritmo de aprendizaje para RBM. Al atar los pesos de la red y congelar los pesos de la capa inferior, podemos aprender las capas restantes como RBM. Este proceso, conocido como aprendizaje de divergencia contrastiva, proporciona un límite variacional en la probabilidad logarítmica de los datos.

En el aprendizaje de divergencia contrastiva, eliminamos las derivadas superiores de los pesos, ya que la combinación de cadenas de Markov es rápida y las capas superiores se acercan a la distribución de equilibrio. A medida que los pesos crecen, se hace necesario ejecutar más iteraciones de divergencia contrastiva. Sin embargo, para aprender múltiples capas de características en una pila de RBM, el CD uno (divergencia contrastiva de un paso) es suficiente y puede ser incluso mejor que el aprendizaje de máxima probabilidad.

Comprender la relación entre los RBM y las redes de creencias sigmoideas infinitamente profundas proporciona información valiosa sobre el funcionamiento de las redes neuronales profundas y la efectividad del aprendizaje capa por capa y la divergencia contrastiva.

Razón de la queja: