¿Se puede (teóricamente) entrenar una red neuronal con menos muestras de entrenamiento que pesas?

12

En primer lugar: lo sé, no se requiere un número general de tamaño de muestra para entrenar una red neuronal. Depende de demasiados factores, como la complejidad de la tarea, el ruido en los datos, etc. Y cuantas más muestras de entrenamiento tenga, mejor será mi red.

Pero me preguntaba: ¿es teóricamente posible entrenar una red neuronal con menos muestras de entrenamiento que pesas, si supongo que mi tarea es lo suficientemente "simple"? ¿Alguien sabe un ejemplo donde esto funcionó? ¿O esta red seguramente funcionará mal?

Si considero, por ejemplo, la regresión polinómica, no puedo ajustar un polinomio de grado 4 (es decir, con 5 parámetros libres) en solo 4 puntos de datos. ¿Existe una regla similar para las redes neuronales, considerando mi número de pesos como el número de parámetros libres?

Hobbit
fuente
Sí: si los pesos se inicializan aleatoriamente, es teóricamente posible obtener una red neuronal perfectamente entrenada incluso con cero muestras de entrenamiento. (Publicar como un comentario, no como una respuesta, ya que sé que esto no es realmente lo que estás preguntando).
Darren Cook

Respuestas:

17

La gente hace eso todo el tiempo con grandes redes. Por ejemplo, la famosa red AlexNet tiene aproximadamente 60 millones de parámetros, mientras que el ImageNet ILSVRC en el que se entrenó originalmente tiene solo 1.2 millones de imágenes.

La razón por la que no se ajusta un polinomio de 5 parámetros a 4 puntos de datos es que siempre puede encontrar una función que se ajuste exactamente a sus puntos de datos, pero que haga cosas sin sentido en otros lugares. Bueno, como se señaló recientemente , AlexNet y redes similares pueden ajustar etiquetas aleatorias arbitrarias aplicadas a ImageNet y simplemente memorizarlas todas, presumiblemente porque tienen muchos más parámetros que puntos de entrenamiento. Pero algo sobre los antecedentes de la red combinados con el proceso de optimización de descenso de gradiente estocástico significa que, en la práctica, estos modelos aún pueden generalizarse bien a nuevos puntos de datos cuando les da etiquetas reales. Todavía no entendemos por qué sucede eso.

Dougal
fuente
2
+1. Debo agregar que para una comparación con la regresión polinómica, también consideraría que las muestras son altamente dimensionales. La resolución de imagen promedio en ImageNet es de aproximadamente 469x387 píxeles, si se recorta a 256x256 tenemos 1.2 millones de parámetros de entrada de 65k, que están altamente correlacionados dentro de cada muestra, proporcionando así mucha más información a la red neuronal (y especialmente un NN convolucional) que en el caso de regresión polinómica.
jjmontes
3
@jjmontes es cierto, pero el misterio principal es que estas redes tienen la capacidad de memorizar y generalizar (bueno). En otras palabras, pueden destruir los datos de entrenamiento con etiquetas aleatorias y aún así generalizar bien. Esto no es algo que uno ve en los métodos tradicionales de ML.
Amelio Vazquez-Reina
6

Los sistemas subdeterminados solo están subdeterminados si no impone otras restricciones que los datos. Siguiendo con su ejemplo, ajustar un polinomio de 4 grados a 4 puntos de datos significa que tiene un grado de libertad no limitado por los datos, lo que le deja con una línea (en el espacio del coeficiente) de soluciones igualmente buenas. Sin embargo, puede usar varias técnicas de regularización para hacer que el problema sea manejable. Por ejemplo, al imponer una penalización a la norma L2 (es decir, la suma de los cuadrados) de los coeficientes, se asegura de que siempre haya una solución única con la mayor aptitud.

Las técnicas de regularización también existen para las redes neuronales, por lo que la respuesta corta a su pregunta es 'sí, puede'. De particular interés es una técnica llamada "abandono", en la cual, para cada actualización de los pesos, se 'suelta' al azar un cierto subconjunto de nodos de la red. Es decir, para esa iteración particular del algoritmo de aprendizaje, pretende que estos nodos no existen. Sin abandono, la red puede aprender representaciones muy complejas de la entrada que dependen de que todos los nodos trabajen juntos correctamente. Es probable que tales representaciones 'memoricen' los datos de entrenamiento, en lugar de encontrar patrones que generalicen. El abandono asegura que la red no pueda usar todos los nodos a la vez para ajustar los datos de entrenamiento; tiene que poder representar bien los datos incluso cuando faltan algunos nodos,

También tenga en cuenta que cuando se usa el abandono, los grados de libertad en cualquier punto dado durante el entrenamiento en realidad pueden ser más pequeños que el número de muestras de entrenamiento, aunque en total esté aprendiendo más pesos que las muestras de entrenamiento.

Ruben van Bergen
fuente
2
Esto quizás exagere el papel que desempeña la regularización explícita en las redes profundas: este documento al que me referí en mi respuesta muestra el abandono y otras formas de regularización que tienen solo pequeños efectos sobre cuánto puede memorizar la red. Sin embargo, puede ser que su historia básica sea correcta, pero la regularización principal en juego es la implícita de SGD; Todo esto sigue siendo algo turbio.
Dougal