En el libro de Bishop "Clasificación de patrones y aprendizaje automático", describe una técnica para la regularización en el contexto de redes neuronales. Sin embargo, no entiendo un párrafo que describa que durante el proceso de capacitación, el número de grados de libertad aumenta junto con la complejidad del modelo. La cita relevante es la siguiente:
Una alternativa a la regularización como una forma de controlar la complejidad efectiva de una red es el procedimiento de parada temprana. El entrenamiento de modelos de red no lineales corresponde a una reducción iterativa de la función de error definida con respecto a un conjunto de datos de entrenamiento. Para muchos de los algoritmos de optimización utilizados para el entrenamiento de la red, como los gradientes conjugados, el error es una función no creciente del índice de iteración. Sin embargo, el error medido con respecto a los datos independientes, generalmente denominado conjunto de validación, a menudo muestra una disminución al principio, seguido de un aumento a medida que la red comienza a ajustarse demasiado. Por lo tanto, la capacitación se puede detener en el punto de error más pequeño con respecto al conjunto de datos de validación, como se indica en la Figura 5.12, para obtener una red que tenga un buen rendimiento de generalización.El comportamiento de la red en este caso a veces se explica cualitativamente en términos del número efectivo de grados de libertad en la red, en el que este número comienza siendo pequeño y luego crece durante el proceso de capacitación, lo que corresponde a un aumento constante en el efectivo complejidad del modelo.
También dice que el número de parámetros crece durante el curso de entrenamiento. Supuse que por "parámetros", se refiere al número de pesos controlados por las unidades ocultas de la red. Tal vez me equivoque porque el proceso de regularización impide que los pesos aumenten en magnitud, pero no cambian en número. ¿Podría referirse al proceso de encontrar un buen número de unidades ocultas?
¿Qué es un grado de libertad en una red neuronal? ¿Qué parámetros aumentan durante el entrenamiento?
Respuestas:
Sospecho que esto es lo que Bishop quiere decir:
Si piensa en una red neuronal como una función que asigna entradas a una salida, cuando inicializa una red neuronal con pequeños pesos aleatorios, la red neuronal se parece mucho a una función lineal. La función de activación sigmoidea es casi lineal alrededor de cero (solo haga una expansión de Taylor), y los pequeños pesos entrantes garantizarán que el dominio efectivo de cada unidad oculta sea solo un pequeño intervalo alrededor de cero, por lo que toda la red neuronal, independientemente de cuántos capas que tenga, se parecerán mucho a una función lineal. Por lo tanto, puede describir heurísticamente que la red neuronal tiene un pequeño número de grados de libertad (igual a la dimensión de la entrada). A medida que entrena la red neuronal, los pesos pueden volverse arbitrariamente grandes y la red neuronal puede aproximarse mejor a funciones no lineales arbitrarias. Entonces, a medida que avanza el entrenamiento,
fuente
La frase "a veces explicada cualitativamente" sugiere que simplemente está haciendo una analogía con la regresión lineal simple. Cada vez que agregamos un término a un modelo de regresión lineal, agregamos un grado de libertad al modelo y restamos un grado de libertad de los asociados con el término de error. Si ponemos suficientes términos independientes en un modelo, podemos "predecir" perfectamente el historial a partir de un conjunto de números aleatorios, pero seremos totalmente incapaces de predecir el futuro.
fuente
El tema de los grados de libertad en modelos de aprendizaje estadístico complicado se discutió en Ye 1998 JASA . Básicamente, la idea es ver cuánto responde la salida de un modelo complicado, como la red neuronal, a un cambio unitario en las entradas. Para modelos lineales, la relación es sorprendentemente uno a uno, por lo que los grados de libertad para un modelo de complejidad (número de regresores) es pp p . Para modelos más complicados (si consideraba árboles de regresión), la capacidad de agregar un nodo adicional proporciona una mayor flexibilidad, ya que el modelo CART buscará una buena variable para dividir y un buen punto de división. Eso es mucho más de lo que puede hacer agregar un regresor a un modelo lineal, y Ye encontró que los árboles de regresión consumen aproximadamente 3.5-4 dfs por nodo. Las redes neuronales pueden estar en algún punto intermedio, pero los grados de libertad seguramente son mucho mayores que el número de unidades, y pueden ser mayores que el número de pesos.
Creo que HTF Sec. 7.6 , aunque sorprendentemente no se refieren a Ye (1998). Sin embargo, se refieren a Bishop como un caso especial.
fuente
Dice la "complejidad efectiva de la red". En realidad se refiere al tamaño de los pesos de la red. Esto se puede entender en términos del principio de longitud mínima de descripción . Pero antes de entrar en eso, la intuición es que cuanto más grandes son los pesos, más diferentes tipos de funciones puede ajustar su red y, por lo tanto, mayores son los grados de libertad (y complejidad efectiva).
En ese capítulo habla de la regularización, que es una técnica para reducir efectivamente el riesgo de sobreajuste, al exigir que los pesos sean lo más pequeños posible. En general,
En términos más generales, tiene que la estimación MAP es equivalente a lo siguiente,
El lado derecho de la expresión se puede interpretar como el número de bits necesarios para describir su clasificador. El primer término representa la cantidad de bits necesarios para codificar los errores que su red hace en los datos de entrenamiento. El segundo representa el número de bits necesarios para codificar los pesos.
La estimación MAP es, por lo tanto, equivalente a elegir la representación más compacta posible. En otras palabras, busca el conjunto de pesos que representan los datos de entrenamiento con la mayor fidelidad posible que se pueden expresar con el menor número de bits.
Tenga en cuenta que esta es otra forma del problema de sesgo / varianza: cuanto mayor es el peso, menor es el primer término, porque la red puede adaptarse mejor a los datos de entrenamiento (sobreajuste). Pero al mismo tiempo, mayor es la complejidad de los pesos. Cuanto más pequeños son los pesos, menor es la complejidad de la red, pero mayor es el término de error (sesgo). Cuanto mayor sea el número de bits necesarios para codificar los errores de la red.
Espero que esto te dé una idea suficientemente buena de a qué se refiere.
PD: agregando un argumento más extenso a la discusión en curso. Permítanme intentar explicarme por última vez.
Los medios anteriores sobre los pesos representan la suposición que hacemos sobre la función que desea ajustar. Cuanto más grande es el anterior (es decir, los pesos), más amplio es el gaussiano, es decir, las configuraciones más posibles se consideran para adaptarse a la red.
Consideremos el caso de regresión (como en el artículo al que me referí). Un error de baja generalización significa que la red puede asignar muestras invisibles muy cerca de los valores reales. Si está ajustando una línea recta, entonces es suficiente un polinomio de primer orden (baja complejidad). Ahora, también podría ajustar los datos con un polinomio de orden superior (deje que los coeficientes de orden superior sean diferentes de cero). La complejidad de la red es mayor porque permite oscilaciones, para una curva más compleja. Sin embargo, si los coeficientes correspondientes a términos de orden superior son lo suficientemente bajos, la red puede aproximarse muy bien a la línea recta, lo que resulta en una buena generalización.
Por lo tanto, el objetivo de MDL es hacer que sus pesos sean lo más pequeños posible, siempre que el error de generalización pueda minimizarse.
Finalmente, citando: "Todavía encuentro problemático el argumento de que a medida que el modelo comienza a sobreajustarse, aumentará su capacidad para modelar otras funciones. Creo que es todo lo contrario porque un modelo que sobreajusta, no puede generalizarse para aplicarse a nuevos información.". Sí, puede modelar OTRAS funciones más complejas, pero no podrá modelar correctamente la función en cuestión. En la figura 5.12 del libro, el error primero disminuye, a medida que aumenta el tamaño del peso (reducción del sesgo). Hasta un punto dado cuando comienza a aumentar nuevamente (disminución en generalización, sobreajuste).
fuente