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

 

Clase 8.4 — Redes estatales de eco



Lección 8.4 — Redes de estado de eco [Redes neuronales para el aprendizaje automático]

Las redes de estado de eco son un enfoque inteligente para simplificar el proceso de aprendizaje en redes neuronales recurrentes (RNN). Inicializan las conexiones en el RNN con un depósito de osciladores acoplados, convirtiendo la entrada en estados de oscilador. Luego, la salida se puede predecir en función de estos estados, y el único aprendizaje requerido es cómo acoplar la salida a los osciladores. Esto elimina la necesidad de aprender conexiones ocultas a ocultas o conexiones de entrada a ocultas.

Para mejorar el rendimiento de las redes de estado Echo en tareas complejas, es necesario un gran estado oculto. La combinación de la inicialización cuidadosamente diseñada de las redes de estado Echo con la retropropagación a través del tiempo con impulso puede mejorar aún más sus capacidades. Otra idea reciente en el entrenamiento de redes neuronales recurrentes es arreglar las conexiones de oculto a oculto de forma aleatoria y centrarse en entrenar las conexiones de salida. Este enfoque es similar al concepto de detectores de características aleatorias en las redes neuronales de avance, donde solo se aprende la última capa, lo que simplifica el proceso de aprendizaje.

El éxito de las redes estatales de Echo se basa en configurar correctamente las conexiones aleatorias para evitar problemas como la extinción o la explosión. El radio espectral, que corresponde al mayor valor propio de la matriz de pesos de oculto a oculto, debe establecerse en aproximadamente uno para garantizar que la longitud del vector de actividad se mantenga estable. La conectividad dispersa también es importante, donde la mayoría de los pesos son cero, lo que permite retener la información en partes específicas de la red. La escala de las conexiones de entrada a ocultas debe elegirse cuidadosamente para controlar los estados de los osciladores sin borrar información importante. El proceso de aprendizaje en las redes de estado de Echo es rápido, lo que permite experimentar con las escalas y la escasez de las conexiones para optimizar el rendimiento. Se muestra un ejemplo de una red de estado Echo, donde la secuencia de entrada especifica la frecuencia de una onda sinusoidal para la salida. La red aprende a generar ondas sinusoidales ajustando un modelo lineal utilizando los estados de las unidades ocultas para predecir la salida correcta. El depósito dinámico en el medio captura la dinámica compleja impulsada por la señal de entrada.

Las redes de estado de eco tienen varias ventajas, incluido el entrenamiento rápido debido a la simplicidad de ajustar un modelo lineal, la importancia de la inicialización sensible de pesos ocultos y su capacidad para modelar series de tiempo unidimensionales de manera efectiva. Sin embargo, pueden tener dificultades para modelar datos de alta dimensión y requieren una mayor cantidad de unidades ocultas en comparación con los RNN tradicionales.

Ilya Sutskever exploró la inicialización de una red neuronal recurrente con técnicas de red de estado Echo y luego la entrenó usando retropropagación a través del tiempo. Esta combinación demostró ser un método efectivo para entrenar redes neuronales recurrentes, logrando un mejor rendimiento. El enfoque de Ilya Sutskever de combinar las técnicas de inicialización de las redes de estado Echo con la retropropagación en el tiempo (BPTT) arrojó resultados prometedores en el entrenamiento de redes neuronales recurrentes (RNN). Mediante el uso de la inicialización de la red de estado de Echo y luego aplicando BPTT con técnicas como RMSprop e impulso, Sutskever descubrió que este enfoque es muy efectivo para entrenar RNN.

El uso de la inicialización de la red de estado Echo proporciona un buen punto de partida para la RNN, lo que le permite aprender bien incluso entrenando solo las conexiones ocultas a la salida. Sin embargo, la experimentación de Sutskever mostró que se podría lograr una mejora adicional del rendimiento de la RNN aprendiendo también los pesos de oculto a oculto. Al combinar las fortalezas de las redes estatales de Echo y las RNN tradicionales, este enfoque híbrido aprovecha los beneficios de ambos métodos. La inicialización de la red de estado de eco proporciona una base sólida, mientras que BPTT permite el ajuste fino y la optimización del rendimiento de la RNN. El éxito de este enfoque demuestra la importancia de una inicialización adecuada en el entrenamiento de RNN.

Al comenzar con una inicialización que captura la dinámica del dominio del problema, la capacitación posterior puede ser más eficiente y efectiva. Además, el uso de técnicas de optimización como RMSprop con impulso mejora aún más el proceso de aprendizaje y ayuda a lograr mejores resultados.

La combinación de inicialización de red de estado Echo y BPTT con técnicas de optimización presenta un enfoque poderoso para entrenar RNN. Aprovecha las fortalezas de ambos métodos para mejorar la eficiencia del aprendizaje, el rendimiento del modelo y la precisión de la predicción.

 

Lección 9.1 — Descripción general de las formas de mejorar la generalización



Lección 9.1 — Descripción general de las formas de mejorar la generalización [Redes neuronales para el aprendizaje automático]

En este video, el tema discutido es mejorar la generalización al reducir el sobreajuste en las redes neuronales. El sobreajuste ocurre cuando una red tiene demasiada capacidad en relación con la cantidad de datos de entrenamiento. El video explica varios métodos para controlar la capacidad de una red y determinar los metaparámetros apropiados para el control de capacidad.

El sobreajuste surge porque los datos de entrenamiento no solo contienen información sobre los verdaderos patrones en el mapeo de entrada-salida, sino que también incluyen errores de muestreo y regularidades accidentales específicas del conjunto de entrenamiento. Al ajustar un modelo, no puede distinguir entre estos tipos de regularidades, lo que lleva a una mala generalización si el modelo es demasiado flexible y se ajusta al error de muestreo.

Un método sencillo para evitar el sobreajuste es obtener más datos. El aumento de la cantidad de datos mitiga el sobreajuste al proporcionar una mejor representación de las verdaderas regularidades. Otro enfoque es limitar juiciosamente la capacidad del modelo, permitiéndole capturar las verdaderas regularidades mientras evita ajustar las regularidades espurias causadas por el error de muestreo. Esto puede ser un desafío, pero el video analiza varias técnicas para regular la capacidad de manera efectiva.

El video también menciona el uso de métodos de conjunto, como promediar juntos diferentes modelos. Al entrenar modelos en diferentes subconjuntos de datos o encontrar diferentes conjuntos de pesos que funcionan bien, promediar sus predicciones puede mejorar el rendimiento general en comparación con los modelos individuales. Además, el enfoque bayesiano implica el uso de una única arquitectura de red neuronal pero la búsqueda de múltiples conjuntos de pesos que predicen bien el resultado y luego promedian sus predicciones en los datos de prueba.

La capacidad de un modelo se puede controlar a través de diferentes medios, como ajustar la arquitectura (por ejemplo, limitando el número de capas y unidades ocultas por capa), penalizando los pesos, agregando ruido a los pesos o actividades, o usando una combinación de estos métodos.

Al establecer los metaparámetros para el control de la capacidad, es necesario evitar sesgar los resultados hacia un conjunto de pruebas específico. El video propone un mejor enfoque: dividir los datos en subconjuntos de entrenamiento, validación y prueba. Los datos de validación se utilizan para determinar los metaparámetros adecuados en función del rendimiento del modelo, mientras que los datos de prueba proporcionan una estimación imparcial de la eficacia de la red. Es crucial usar los datos de prueba solo una vez para evitar sobreajustarlos.

El video también menciona la validación cruzada de n veces, una técnica en la que los datos se dividen en n subconjuntos, y los modelos se entrenan y validan en diferentes combinaciones de estos subconjuntos para obtener múltiples estimaciones de los mejores metaparámetros.

Por último, el video describe un método fácil de usar llamado interrupción anticipada. Implica comenzar con pesos pequeños y detener el proceso de entrenamiento cuando el rendimiento del modelo en el conjunto de validación comienza a deteriorarse. Este enfoque controla la capacidad porque los modelos con pesos pequeños tienen una capacidad limitada y se comportan de manera similar a las redes lineales. Detener el entrenamiento en el punto correcto optimiza el compromiso entre ajustar regularidades verdaderas y ajustar regularidades espurias causadas por el conjunto de entrenamiento.

En general, el video destaca varios enfoques para controlar la capacidad y prevenir el sobreajuste en las redes neuronales. Estos métodos implican la obtención de más datos, la regulación juiciosa de la capacidad, el uso de métodos de conjunto, el establecimiento de metaparámetros apropiados a través de la validación y el empleo de técnicas como la detención anticipada.

 

Clase 9.2 — Limitando el tamaño de los pesos



Lección 9.2 — Limitar el tamaño de los pesos [Redes neuronales para el aprendizaje automático]

En este video, discutiré cómo podemos controlar la capacidad de una red limitando el tamaño de sus pesos. El enfoque común es aplicar una penalización que impida que los pesos se vuelvan demasiado grandes. Se supone que una red con pesos más pequeños es más simple en comparación con una con pesos más grandes.

Hay varios términos de penalización que se pueden usar y también es posible imponer restricciones a los pesos, asegurando que el vector de peso entrante para cada unidad oculta no exceda una cierta longitud. El método estándar para limitar el tamaño del peso es utilizar una penalización de peso L2. Esta penalización penaliza el valor al cuadrado de los pesos y, a veces, se denomina disminución del peso. La derivada de esta penalización actúa como una fuerza que tira de los pesos hacia cero. En consecuencia, la penalización de peso mantiene los pesos pequeños a menos que tengan derivados de error significativos para contrarrestarlo.

El término de penalización se representa como la suma de los cuadrados de los pesos multiplicados por un coeficiente (lambda), dividido por dos. Al diferenciar la función de costo, encontramos que la derivada es la suma de la derivada del error y un término relacionado con la magnitud del peso y el valor de lambda. La derivada se vuelve cero cuando la magnitud del peso es igual a 1 sobre lambda por la magnitud de la derivada. Por lo tanto, los pesos grandes solo pueden existir cuando también tienen derivadas de error sustanciales. Esta propiedad facilita la interpretación de los pesos, ya que hay menos pesos grandes que tienen un impacto mínimo.

La penalización de peso L2 evita que la red utilice pesos innecesarios, lo que da como resultado una mejor generalización. Además, conduce a modelos más suaves donde la salida cambia más gradualmente con variaciones en la entrada. Para entradas similares, la penalización de peso distribuye el peso uniformemente, mientras que sin la penalización, todo el peso puede asignarse a una entrada.

Además de la penalización L2, se pueden utilizar otras penalizaciones de peso, como la penalización L1, que penaliza los valores absolutos de los pesos. Este tipo de penalización hace que muchos pesos sean exactamente cero, lo que ayuda en la interpretación. Se pueden aplicar penalizaciones de peso más extremas cuando el gradiente de la función de costo disminuye a medida que aumenta el peso. Esto permite que la red mantenga pesos grandes sin que se acerquen a cero, enfocando la penalización en los pesos pequeños.

En lugar de sanciones, se pueden emplear restricciones de peso. Con restricciones de peso, se impone una longitud máxima al cuadrado en el vector de peso entrante para cada unidad oculta o unidad de salida. Si la longitud excede la restricción, los pesos se reducen dividiendo todos los pesos por el mismo factor hasta que la longitud se ajuste al límite permitido. Las restricciones de peso ofrecen ventajas sobre las penalizaciones de peso, ya que es más fácil seleccionar un valor razonable para la longitud al cuadrado. Además, las restricciones de peso evitan que las unidades ocultas se atasquen con pesos pequeños e ineficaces. También previenen la explosión de peso.

Además, las restricciones de peso tienen un efecto sutil en las penalizaciones. Cuando una unidad alcanza su restricción, la penalización efectiva en todos los pesos está determinada por los grandes gradientes. Los gradientes grandes empujan hacia arriba la longitud del vector de peso entrante, ejerciendo una presión hacia abajo sobre los otros pesos. Esta penalización de escala automática es más efectiva que una penalización fija que lleva los pesos irrelevantes a cero. En términos de multiplicadores de Lagrange, las penalizaciones pueden verse como los multiplicadores necesarios para satisfacer las restricciones.

El uso de restricciones de peso ofrece varias ventajas sobre las penalizaciones de peso. Es más fácil seleccionar un valor apropiado para la longitud al cuadrado del vector de peso entrante en comparación con determinar la penalización de peso óptima. Las unidades logísticas tienen una escala natural, lo que facilita la comprensión del significado de un valor de peso de uno.

Las restricciones de peso también evitan que las unidades ocultas se atasquen, ya que todos sus pesos son extremadamente pequeños e ineficaces. Cuando todos los pesos son pequeños, no hay restricciones en su crecimiento, lo que los vuelve potencialmente inútiles. Las restricciones de peso aseguran que los pesos no se vuelvan despreciables.

Otro beneficio de las restricciones de peso es que evitan que exploten, lo que puede ocurrir en algunos casos con penalizaciones de peso. Esto es crucial para mantener la estabilidad y prevenir inestabilidades numéricas en la red.

Un efecto sutil adicional de las restricciones de peso es su impacto en las penalizaciones. Cuando una unidad alcanza su restricción y la longitud de su vector de peso está restringida, la penalización efectiva en todos los pesos está influenciada por los grandes gradientes. Los gradientes grandes empujan hacia arriba la longitud del vector de peso entrante, que, a su vez, aplica presión hacia abajo sobre los otros pesos. En esencia, la pena se escala para ser apropiada para los pesos significativos y suprimir los pesos pequeños. Este mecanismo de penalización adaptativo es más efectivo que una penalización fija que empuja los pesos irrelevantes hacia cero.

Para aquellos familiarizados con los multiplicadores de Lagrange, las penalizaciones pueden verse como los correspondientes multiplicadores necesarios para satisfacer las restricciones. Las restricciones de peso actúan como una forma de hacer cumplir las propiedades deseadas de los pesos de la red.

El control de la capacidad de una red mediante la limitación del tamaño de los pesos se puede lograr mediante penalizaciones o restricciones. Ambos métodos tienen sus ventajas, pero las restricciones de peso ofrecen una mayor facilidad para seleccionar los valores apropiados, evitan que los pesos se vuelvan insignificantes o exploten y proporcionan un mecanismo de penalización de autoescalado. Estas técnicas contribuyen a la interpretabilidad, estabilidad y eficacia de las redes neuronales.

 

Lección 9.3 — Uso del ruido como regularizador



Lección 9.3 — Uso del ruido como regularizador [Redes neuronales para el aprendizaje automático]

Exploremos otro método para restringir la capacidad de una red neuronal, que implica la adición de ruido a los pesos o las actividades. Agregar ruido a las entradas de una red lineal simple, cuyo objetivo es minimizar el error cuadrático, es equivalente a imponer una penalización L2 a los pesos de la red. Este concepto puede extenderse a redes más complejas, donde se utilizan pesos ruidosos, especialmente en redes recurrentes, lo que ha mostrado un mejor desempeño.

Además, el ruido también se puede introducir en las actividades como un regulador. Considere entrenar una red neuronal multicapa con unidades logísticas ocultas usando retropropagación. Al hacer que las unidades sean binarias y estocásticas durante el paso hacia adelante y luego tratarlas como si fueran deterministas durante el paso hacia atrás utilizando los valores reales, creamos una neurona binaria estocástica. Aunque no es del todo exacto, este enfoque produce un mejor rendimiento en el conjunto de prueba en comparación con el conjunto de entrenamiento, aunque con un entrenamiento más lento.

Estos métodos de incorporación de ruido, ya sea en los pesos o en las actividades, presentan técnicas alternativas para controlar la capacidad de las redes neuronales y mejorar sus capacidades de generalización.

En resumen, agregar ruido a las redes neuronales puede ser una estrategia útil para controlar la capacidad y mejorar la generalización. Al introducir ruido gaussiano en las entradas, podemos lograr un efecto similar a una penalización de peso L2. Esto amplifica la variación del ruido en función de los pesos al cuadrado y contribuye al error al cuadrado general. El ruido en los pesos puede ser particularmente efectivo en redes más complejas, como las redes recurrentes, lo que lleva a un mejor rendimiento.

Además, el ruido se puede aplicar a las actividades de la red como técnica de regularización. Al tratar las unidades como neuronas binarias estocásticas durante el paso hacia adelante y usar los valores reales durante la propagación hacia atrás, introducimos aleatoriedad en el sistema. Este enfoque puede dar como resultado un entrenamiento más lento, pero a menudo produce un mejor rendimiento en el conjunto de prueba, lo que indica una mejor generalización.

La adición de ruido, ya sea en forma de pesos o actividades, proporciona un enfoque alternativo para limitar la capacidad y mejorar la solidez y la capacidad de generalización de las redes neuronales.

 

Lección 9.4 — Introducción al enfoque bayesiano completo



Lección 9.4 — Introducción al enfoque bayesiano completo [Redes neuronales para el aprendizaje automático]

El enfoque bayesiano para ajustar modelos implica considerar todas las configuraciones posibles de los parámetros en lugar de buscar la más probable. Asume una distribución previa para los parámetros y la combina con la probabilidad de los datos observados para obtener una distribución posterior.

En un ejemplo de lanzamiento de una moneda, el enfoque frecuentista (máxima verosimilitud) sugeriría elegir el valor del parámetro que maximiza la verosimilitud de los datos observados. Sin embargo, este enfoque tiene limitaciones, ya que puede no tener en cuenta creencias o incertidumbres previas.

En el marco bayesiano, se asigna una distribución previa a los valores de los parámetros. Después de observar los datos, el anterior se multiplica por la probabilidad de cada valor de parámetro, lo que da como resultado una distribución posterior no normalizada. Para obtener una distribución de probabilidad adecuada, la posterior se vuelve a normalizar escalando para que tenga un área de uno.

A través de pasos iterativos, la distribución posterior se actualiza a medida que se observan más datos. La distribución posterior final representa la creencia actualizada sobre los valores de los parámetros, incorporando tanto el conocimiento previo como los datos observados. Proporciona un rango de valores de parámetros plausibles junto con sus probabilidades.

El teorema de Bayes se utiliza para calcular la probabilidad posterior del valor de un parámetro dados los datos. Implica multiplicar la probabilidad previa por la probabilidad de los datos dado ese valor de parámetro y normalizarlo dividiéndolo por la probabilidad de los datos.

Al considerar la distribución posterior completa, el enfoque bayesiano permite un análisis más completo de los valores de los parámetros, incorporando creencias previas y actualizándolas en función de los datos observados.

 

Lección 9.5 — La interpretación bayesiana de la caída del peso



Lección 9.5 — La interpretación bayesiana de la caída del peso [Redes neuronales para el aprendizaje automático]

Este video analiza la interpretación bayesiana de las penalizaciones de peso en el enfoque bayesiano completo. En el enfoque bayesiano, el objetivo es calcular la probabilidad posterior de cada configuración posible de los parámetros del modelo. Sin embargo, una versión simplificada llamada aprendizaje máximo a posteriori se enfoca en encontrar el conjunto único de parámetros que es el mejor compromiso entre ajustar las creencias previas y ajustar los datos observados. Este enfoque proporciona una explicación del uso de la disminución del peso para controlar la capacidad del modelo. Al minimizar el error cuadrático durante el aprendizaje supervisado de máxima probabilidad, esencialmente estamos encontrando un vector de peso que maximiza la densidad de probabilidad logarítmica de la respuesta correcta. Esta interpretación asume que la respuesta correcta se produce al agregar ruido gaussiano a la salida de la red neuronal.

En esta interpretación probabilística, la salida del modelo se considera el centro de una Gaussiana, y estamos interesados en tener el valor objetivo con alta probabilidad bajo esa Gaussiana. La densidad de probabilidad logarítmica negativa del valor objetivo, dada la salida de la red, es equivalente a la diferencia al cuadrado entre el objetivo y la salida dividida por el doble de la varianza de la gaussiana. Al tomar logaritmos y poner un signo menos, la densidad de probabilidad logarítmica negativa del valor objetivo dada la salida de la red se convierte en una función de costo. Minimizar esta función de costo es equivalente a minimizar la distancia al cuadrado. Esto muestra que cuando se minimiza un error cuadrático, existe una interpretación probabilística en la que estamos maximizando la probabilidad logarítmica bajo una Gaussiana.

El enfoque bayesiano adecuado es encontrar la distribución posterior completa sobre todos los vectores de peso posibles, lo que puede ser un desafío para las redes no lineales. Como alternativa más sencilla, podemos intentar encontrar el vector de peso más probable, el que es más probable dado nuestro conocimiento previo y los datos.

En el máximo aprendizaje a posteriori, nuestro objetivo es encontrar el conjunto de pesos que optimice el equilibrio entre el ajuste previo y el ajuste de los datos. Usar probabilidades logarítmicas negativas como costos es más conveniente que trabajar en el dominio de probabilidad. Maximizamos la probabilidad logarítmica de los datos dados los pesos, lo que equivale a maximizar la suma de las probabilidades logarítmicas de los resultados para todos los casos de entrenamiento dados los pesos. Para optimizar los pesos, consideramos la probabilidad logarítmica negativa de los pesos dados los datos. Este costo consta de dos términos: uno que depende tanto de los datos como de los pesos, que mide qué tan bien ajustamos los objetivos, y otro término que depende solo de los pesos, que se deriva de la probabilidad logarítmica de los datos dados los pesos.

Si asumimos que se agrega ruido gaussiano a la salida del modelo para hacer predicciones y gaussiana previa para los pesos, entonces la probabilidad logarítmica de los datos dados los pesos es la distancia al cuadrado entre la salida y el objetivo escalada por el doble de la varianza de la ruido gaussiano. De manera similar, la probabilidad logarítmica de un peso por debajo del anterior es el valor al cuadrado del peso escalado por el doble de la varianza del anterior gaussiano.

Al multiplicar por el producto del doble de las varianzas del ruido gaussiano y antes, obtenemos una nueva función de costo. El primer término corresponde al error cuadrático típicamente minimizado en una red neuronal. El segundo término se convierte en la razón de dos varianzas multiplicada por la suma de los pesos al cuadrado, que es la penalización de peso. Por lo tanto, la penalización de peso está determinada por la relación de las varianzas en esta interpretación gaussiana y no es un valor arbitrario dentro de este marco. Por lo tanto, la penalización de peso en esta interpretación bayesiana no es solo un valor arbitrario que se elige para mejorar el rendimiento. Tiene una interpretación significativa basada en las varianzas del ruido gaussiano y previo.

Para elaborar más, cuando multiplicamos la ecuación por el doble de las varianzas y sumamos todos los casos de entrenamiento, el primer término corresponde a la diferencia al cuadrado entre la salida de la red neuronal y el objetivo. Este término representa el error cuadrático que normalmente se minimiza en una red neuronal. El segundo término, que depende únicamente de los pesos, se convierte en la razón de las dos varianzas multiplicada por la suma de los pesos al cuadrado. Este término es la penalización de peso. Penaliza los valores de peso grandes y fomenta los pesos más pequeños. La relación de las varianzas determina la fuerza de esta penalización.

Esencialmente, al introducir una penalización de peso, estamos negociando entre ajustar bien los datos y mantener pequeños los pesos. Esta compensación está controlada por la relación de las varianzas. Una penalización de peso más grande (es decir, una relación de varianzas más pequeña) dará como resultado pesos más pequeños, mientras que una penalización de peso más pequeña (es decir, una relación de varianzas más grande) permite pesos más grandes. Es importante tener en cuenta que la interpretación de la caída de peso o las penalizaciones de peso como un enfoque bayesiano se basa en la suposición de ruido gaussiano y distribuciones previas gaussianas. Estas suposiciones simplifican los cálculos y brindan un marco probabilístico para comprender el impacto de las penalizaciones de peso en el proceso de optimización.

En la práctica, encontrar la distribución posterior completa sobre todos los vectores de peso posibles puede ser un desafío computacional, especialmente para redes no lineales complejas. Por lo tanto, el aprendizaje máximo a posteriori, que tiene como objetivo encontrar el vector de peso más probable, ofrece una alternativa más práctica. Este enfoque equilibra el ajuste de las creencias previas y los datos observados, proporcionando una solución de compromiso.

La interpretación bayesiana de las penalizaciones de peso proporciona una comprensión más profunda de su papel en la optimización de redes neuronales. Al considerar la perspectiva probabilística y el equilibrio entre el ajuste de los datos y el peso anterior, podemos aprovechar las penalizaciones de peso como una técnica de regularización para controlar la capacidad del modelo y mejorar el rendimiento de la generalización.

 

Lección 9.6 — El método rápido y sucio de MacKay



Lección 9.6 — El método rápido y sucio de MacKay [Redes neuronales para el aprendizaje automático]

En este video, analizaré un método desarrollado por David MacKay en la década de 1990 para determinar las penalizaciones de peso en una red neuronal sin depender de un conjunto de validación. El enfoque de MacKay se basa en la interpretación de las penalizaciones de peso como una estimación máxima a posteriori (MAP), donde la magnitud de la penalización de peso se relaciona con la estrechez de la distribución previa sobre los pesos.

MacKay demostró que podemos ajustar empíricamente tanto las penalizaciones de peso como el ruido supuesto en la salida de la red neuronal. Esto nos permite obtener un método para ajustar penalizaciones de peso que no requiere un conjunto de validación, lo que permite diferentes penalizaciones de peso para subconjuntos de conexiones dentro de una red. Esta flexibilidad sería computacionalmente costosa de lograr utilizando conjuntos de validación.

Ahora, describiré un método simple y práctico desarrollado por David MacKay para aprovechar la interpretación de las penalizaciones de peso como la relación de dos varianzas. Después de aprender un modelo para minimizar el error cuadrático, podemos determinar el mejor valor para la varianza de salida. Este valor se obtiene utilizando la varianza de los errores residuales.

También podemos estimar la varianza en el Gaussiano previo para los pesos. Inicialmente, hacemos una conjetura sobre esta varianza y procedemos con el proceso de aprendizaje. Aquí viene el "truco sucio" llamado Bayes empírico. Establecemos la varianza previa para que sea la varianza de los pesos que aprendió el modelo porque hace que esos pesos sean más probables. Si bien esto viola algunos supuestos del enfoque bayesiano, nos permite determinar la priorización en función de los datos.

Después de aprender los pesos, ajustamos una distribución gaussiana de media cero a la distribución unidimensional de los pesos aprendidos. Luego tomamos la varianza de este gaussiano como nuestra varianza previa al peso. En particular, si hay diferentes subconjuntos de pesos, como en diferentes capas, podemos aprender diferentes variaciones para cada capa.

La ventaja del método de MacKay es que no requiere un conjunto de validación, lo que permite el uso de todos los datos que no son de prueba para el entrenamiento. Además, permite la incorporación de múltiples penalizaciones de peso, lo que sería difícil de lograr utilizando conjuntos de validación.

Para resumir el método, comenzamos adivinando la relación entre la varianza del ruido y la varianza previa del peso. Luego, realizamos un aprendizaje de descenso de gradientes para mejorar los pesos. A continuación, actualizamos la varianza del ruido para que sea la varianza de los errores residuales y la varianza previa del peso para que sea la varianza de la distribución de los pesos aprendidos. Este ciclo se repite iterativamente.

En la práctica, se ha demostrado que el método de MacKay funciona de manera efectiva y logró el éxito en varias competencias utilizando este enfoque.

 

10.1 — Por qué ayuda combinar modelos



10.1 — Por qué ayuda combinar modelos [Redes neuronales para el aprendizaje automático]

En este video, discutiré la importancia de combinar múltiples modelos para hacer predicciones. Al utilizar un único modelo, nos enfrentamos al reto de elegir la capacidad adecuada para él. Si la capacidad es demasiado baja, el modelo no capturará las regularidades en los datos de entrenamiento. Por otro lado, si la capacidad es demasiado alta, el modelo sobreajustará el error de muestreo en el conjunto de entrenamiento específico. Al combinar varios modelos, podemos lograr un mejor equilibrio entre ajustar las verdaderas regularidades y evitar el sobreajuste. Promediar los modelos juntos a menudo conduce a mejores resultados en comparación con el uso de un solo modelo. Este efecto es particularmente significativo cuando los modelos hacen predicciones diversas. Se puede lograr animar a los modelos a hacer diferentes predicciones a través de varias técnicas.

Cuando se trata de datos de entrenamiento limitados, el sobreajuste es un problema común. Sin embargo, al considerar las predicciones de múltiples modelos, podemos mitigar el sobreajuste. Esto es especialmente cierto cuando los modelos hacen predicciones diferentes. En la regresión, podemos descomponer el error cuadrático en un término de sesgo y un término de varianza. El término de sesgo indica qué tan bien se aproxima el modelo a la función real, mientras que el término de varianza mide la capacidad del modelo para capturar el error de muestreo en el conjunto de entrenamiento. Al promediar los modelos, podemos reducir la varianza mientras mantenemos un sesgo bajo, ya que los modelos de alta capacidad a menudo muestran un sesgo bajo. Esto nos permite aprovechar los beneficios de promediar para reducir el error.

Al comparar un modelo individual con el promedio de modelos en un caso de prueba específico, es posible que algunos predictores individuales superen al predictor combinado. Sin embargo, diferentes predictores individuales sobresalen en diferentes casos. Además, cuando los predictores individuales discrepan significativamente entre sí, el predictor combinado generalmente supera a todos los predictores individuales en promedio. Por lo tanto, el objetivo es tener predictores individuales que cometan errores distintos entre sí sin dejar de ser precisos.

Matemáticamente, al combinar redes, comparamos dos errores cuadrados esperados. El primer error corresponde a seleccionar aleatoriamente un predictor y promediar las predicciones sobre todos los predictores. El segundo error se obtiene promediando las predicciones de los modelos. El error cuadrático esperado de la selección aleatoria de un modelo es mayor que el error cuadrático logrado mediante el promedio, lo que indica la ventaja del promedio para reducir el error. El término adicional en la ecuación representa la varianza de los resultados de los modelos, que se reduce efectivamente al promediar.

Para lograr diversas predicciones entre modelos, se pueden emplear varios enfoques. Esto incluye el uso de diferentes tipos de modelos, la modificación de arquitecturas de modelos, el empleo de diferentes algoritmos de aprendizaje y el entrenamiento de modelos en diferentes subconjuntos de datos. Las técnicas como el embolsado y el refuerzo también son efectivas para crear diversos modelos. El embolsado implica el entrenamiento de diferentes modelos en diferentes subconjuntos de datos, mientras que el impulso pondera los casos de entrenamiento de manera diferente para cada modelo. Estos métodos contribuyen a mejorar el rendimiento al combinar modelos.

La combinación de múltiples modelos es beneficiosa para las tareas de predicción. Al promediar los modelos, podemos lograr un equilibrio entre capturar regularidades y evitar el sobreajuste. Diversas predicciones entre los modelos mejoran el rendimiento del predictor combinado. Se pueden aplicar varias técnicas para fomentar diversas predicciones, lo que lleva a mejores resultados generales.

 

Clase 10.2 — Mezclas de expertos



Clase 10.2 — Mezclas de expertos [Redes neuronales para el aprendizaje automático]

El modelo de mezcla de expertos, desarrollado a principios de la década de 1990, entrena múltiples redes neuronales, cada una de las cuales se especializa en diferentes partes de los datos. La idea es tener una red neuronal por régimen de datos, con una red neuronal administradora que decida qué especialista asignar en función de los datos de entrada. Este enfoque se vuelve más efectivo con conjuntos de datos más grandes, ya que puede aprovechar una gran cantidad de datos para mejorar las predicciones. Durante el entrenamiento, se potencian los pesos de los modelos para centrarse en los casos en los que rinden mejor. Esta especialización lleva a que los modelos individuales sobresalgan en ciertas áreas mientras se desempeñan mal en otras. La clave es hacer que cada experto se concentre en predecir la respuesta correcta para los casos en los que supera a otros expertos.

En el espectro de modelos, hay modelos locales y globales. Los modelos locales, como los vecinos más cercanos, se enfocan en casos de entrenamiento específicos y almacenan sus valores para la predicción. Los modelos globales, como ajustar un polinomio a todos los datos, son más complejos y pueden ser inestables. En el medio, hay modelos de complejidad intermedia que son útiles para conjuntos de datos con diferentes regímenes y relaciones variables de entrada y salida.

Para ajustar diferentes modelos a diferentes regímenes, los datos de entrenamiento deben dividirse en subconjuntos que representen cada régimen. El agrupamiento basado solo en vectores de entrada no es ideal. En cambio, se debe considerar la similitud en las asignaciones de entrada y salida. La partición basada en el mapeo de entrada-salida permite que los modelos capturen mejor las relaciones dentro de cada régimen.

Hay dos funciones de error: una que anima a los modelos a cooperar y otra que anima a la especialización. Fomentar la cooperación implica comparar el promedio de todos los predictores con el objetivo y entrenar a los predictores juntos para minimizar la diferencia. Sin embargo, esto puede llevar a un sobreajuste si el modelo es más poderoso que entrenar cada predictor por separado. Por el contrario, la función de error que promueve la especialización compara la salida de cada modelo con el objetivo por separado. Un gerente determina los pesos asignados a cada modelo, que representan la probabilidad de seleccionar ese modelo. La mayoría de los expertos terminarán ignorando la mayoría de los objetivos, enfocándose solo en un subconjunto de casos de entrenamiento en los que se desempeñen bien.

La arquitectura del modelo de mezcla de expertos consta de varios expertos, un administrador y una capa de softmax. El gerente determina las probabilidades de seleccionar a cada experto en función de los datos de entrada. La función de error se calcula utilizando los resultados de los expertos y las probabilidades del administrador. Al diferenciar la función de error, se pueden obtener gradientes para entrenar a los expertos y al gerente. Los expertos con bajas probabilidades para un caso particular tendrán gradientes pequeños, conservando sus parámetros. La diferenciación con respecto a las salidas de la red de puertas proporciona la especialización basada en la probabilidad.

Existe una función de costo más complicada basada en modelos mixtos, que implica predicciones gaussianas y estimación de máxima verosimilitud. Esta función maximiza la probabilidad logarítmica del valor objetivo bajo la combinación de la distribución predictiva de los expertos. El objetivo es minimizar la probabilidad logarítmica negativa como función de costo.

El modelo de combinación de expertos aprovecha las redes neuronales especializadas para diferentes regímenes de datos y utiliza de manera efectiva grandes conjuntos de datos para mejorar las predicciones.

 

Clase 10.3 — La idea del aprendizaje bayesiano completo



Lección 10.3 — La idea del aprendizaje bayesiano completo [Redes neuronales para el aprendizaje automático]

En este video, hablaré sobre el aprendizaje bayesiano completo y cómo funciona. En el aprendizaje bayesiano completo, nuestro objetivo es encontrar la distribución posterior completa sobre todas las configuraciones de parámetros posibles, en lugar de buscar una única configuración óptima. Sin embargo, computar esta distribución es computacionalmente intensivo para modelos complejos como redes neuronales. Una vez que tenemos la distribución posterior, podemos hacer predicciones promediando las predicciones de diferentes configuraciones de parámetros ponderadas por sus probabilidades posteriores. Si bien este enfoque es computacionalmente exigente, nos permite usar modelos complejos incluso con datos limitados.

El sobreajuste es un problema común cuando se ajustan modelos complicados a pequeños conjuntos de datos. Sin embargo, al obtener la distribución posterior completa sobre los parámetros, podemos evitar el sobreajuste. Un enfoque frecuentista sugiere usar modelos más simples cuando hay datos limitados, asumiendo que ajustar un modelo significa encontrar la mejor configuración de parámetros. Pero con la distribución posterior completa, incluso con pocos datos, las predicciones pueden ser vagas debido a la configuración de diferentes parámetros que tienen probabilidades posteriores significativas. A medida que recopilamos más datos, la distribución posterior se centra más en la configuración de parámetros específicos, lo que lleva a predicciones más precisas.

El ejemplo de sobreajuste consiste en ajustar un polinomio de quinto orden a seis puntos de datos, lo que parece ajustarse perfectamente a los datos. Por el contrario, una línea recta con solo dos grados de libertad no se ajusta bien a los datos. Sin embargo, si comenzamos con un anterior razonable en polinomios de quinto orden y calculamos la distribución posterior completa, obtenemos predicciones más vagas pero más sensatas. Diferentes modelos dentro de la distribución posterior hacen diversas predicciones en un valor de entrada dado y, en promedio, se alinean estrechamente con las predicciones hechas por la línea verde.

Desde una perspectiva bayesiana, la cantidad de datos recopilados no debería influir en las creencias previas sobre la complejidad del modelo. Al aproximar el aprendizaje bayesiano completo en una red neuronal con algunos parámetros, podemos usar un enfoque basado en cuadrículas. Colocamos una cuadrícula sobre el espacio de parámetros, permitiendo a cada parámetro algunos valores alternativos. El producto cruzado de estos valores nos da puntos de cuadrícula en el espacio de parámetros. Evaluando el desempeño de cada punto de la cuadrícula en la predicción de los datos y considerando su probabilidad previa, asignamos probabilidades posteriores. A pesar de ser computacionalmente costoso, este método evita problemas de descenso de gradiente y óptimos locales. Funciona mejor que la máxima verosimilitud o el máximo a posteriori cuando hay datos limitados.

Para hacer predicciones sobre datos de prueba, calculamos la probabilidad de una salida de prueba dada una entrada de prueba sumando las probabilidades de todos los puntos de la cuadrícula. La probabilidad de un punto de cuadrícula dados los datos anteriores, multiplicada por la probabilidad de obtener el resultado de la prueba dados la entrada y el punto de cuadrícula, determina el peso de la predicción de cada punto de cuadrícula. También consideramos la posibilidad de modificar la salida de la red antes de producir la respuesta de prueba.

En la imagen proporcionada que ilustra el aprendizaje bayesiano completo, se muestra una pequeña red con cuatro pesos y dos sesgos. Si consideramos nueve valores posibles para cada peso y sesgo, el espacio de parámetros tendría nueve a la potencia de seis puntos de cuadrícula. Para cada punto de la cuadrícula, calculamos la probabilidad de los resultados observados para todos los casos de entrenamiento, multiplicada por la probabilidad previa específica de ese punto de la cuadrícula. La normalización de estas probabilidades nos da la probabilidad posterior sobre todos los puntos de la cuadrícula. Finalmente, hacemos predicciones utilizando estos puntos de cuadrícula, pesando cada predicción por su probabilidad posterior.

Razón de la queja: