Si cada neurona en una red neuronal es básicamente una función de regresión logística, ¿por qué es mejor tener varias capas?

13

Voy a seguir el curso DeepAI de Cousera (video 1 de la Semana 3 "Visión general de las redes neuronales") y Andrew Ng explica cómo cada capa en una red neuronal es solo otra regresión logística, pero no explica cómo hace que las cosas sean más precisas.

Entonces, en una red de 2 capas, ¿cómo el cálculo de la logística varias veces lo hace más preciso?

mskw
fuente
77
A menudo, para ajustarse a un buen modelo de regresión logística, es necesario generar características significativas. Las dos capas nn intentan hacer algo de ese trabajo por usted.
Matthew Drury
@msk, ¿alguna vez ha creado nuevas características basadas en sus características originales para mejorar su regresión logística? Esto es lo que hacen las capas ocultas.
Ricardo Cruz

Respuestas:

10

Cuando se utilizan funciones de activación logística, es cierto que la función que relaciona las entradas de cada unidad con su salida es la misma que para la regresión logística. Pero, esto no es realmente lo mismo que cada unidad que realiza una regresión logística. La diferencia es que, en la regresión logística, los pesos y el sesgo se eligen de manera que el resultado coincida mejor con los valores objetivo dados (utilizando la pérdida de log / entropía cruzada). En contraste, las unidades ocultas en una red neuronal envían sus salidas a las unidades aguas abajo. No hay salida de destino para las unidades ocultas individuales. Por el contrario, los pesos y sesgos se eligen para minimizar alguna función objetivo que depende de la salida final de la red.

En lugar de realizar una regresión logística, podría tener más sentido pensar que cada unidad oculta calcula una coordenada en algún espacio de características. Desde esta perspectiva, el propósito de una capa oculta es transformar su entrada: el vector de entrada se asigna a un vector de activaciones de capa oculta. Puede pensar en esto como mapear la entrada en un espacio de características con una dimensión correspondiente a cada unidad oculta.

La capa de salida a menudo se puede considerar como un algoritmo de aprendizaje estándar que opera en este espacio de características. Por ejemplo, en una tarea de clasificación, usar una unidad de salida logística con pérdida de entropía cruzada es equivalente a realizar una regresión logística en el espacio de características (o una regresión logística multinomial si se usan salidas softmax). En una tarea de regresión, usar una salida lineal con error al cuadrado es equivalente a realizar una regresión lineal de mínimos cuadrados en el espacio de características.

Entrenar la red equivale a aprender el mapeo del espacio de características y la función de clasificación / regresión (en el espacio de características) que, en conjunto, brindan el mejor rendimiento. Asumir unidades ocultas no lineales, aumentar el ancho de la capa oculta o apilar varias capas ocultas permite mapeos de espacios de características más complejos, lo que permite que se ajusten funciones más complejas.

usuario20160
fuente
7

Una forma de ver el poder de la no linealidad es observar el teorema de aproximación universal .

Aunque no es muy significativo en la práctica (se trata de las capacidades de las redes de una sola capa), le dice que si usa sumas de sigmoides (arbitrarias) puede, en principio, aproximar cualquier función continua a cualquier nivel deseado. Si conoce la teoría de Fourier o recuerda el teorema de aproximación de Weierstrass, no debería ser sorprendente.

Jakub Bartczuk
fuente
3
Esta fue la única persona que realmente respondió la pregunta correctamente, aunque de manera demasiado sucinta. Una capa oculta es suficiente para crear nuevas características potentes que combinan las características originales. El problema es que puede necesitar una capa oculta con demasiados nodos, y el proceso de convergencia funciona mejor con una red más profunda con capas ocultas> 1.
Ricardo Cruz
5

Cuando existen capas ocultas en la red neuronal, estamos agregando características no lineales. Por favor revisa mi respuesta aquí para tener sentido.

¿Qué hace que las redes neuronales sean un modelo de clasificación no lineal?

Específicamente, una función sigmoidea anidada será más "poderosa" que una transformación lineal de características originales y una función sigmoidea (regresión logística).


Aquí hay un ejemplo numérico para abordar los comentarios de OP.

X10×37W3×7X×W10×77

Haitao Du
fuente
Me pregunto, entonces, ¿cómo difiere alguno de los nodos de la primera capa en la salida, es decir, el nodo 1 obtiene X1, X2, X3, el nodo 2 también obtiene X1, X2, X3, si todos son regresión logística, cómo es su salida va a ser diferente?
mskw
supongamos que tiene 3 características y 10 unidades ocultas, entonces la salida de la capa oculta tiene 10 "características de ingeniería".
Haitao Du
¿Por qué lo llaman "características de ingeniería", también son las características que menciona el X1, X2, X3?
mskw
Editaré mi respuesta para abordar sus comentarios.
Haitao Du
Gracias por revisar, a partir de su explicación, no estoy seguro si no está respondiendo a mi pregunta, o si tengo una brecha de conocimiento donde necesito unir primero. Específicamente, de su respuesta, ¿se refiere Weight a cada una de las funciones de salida del nodo? Si es así, ¿en qué se diferencian de cada uno de los otros nodos en la misma capa?
mskw
3

En la regresión logística estándar tenemos 1 salida en la capa final. Sin embargo, con una única red neuronal de capa oculta, podemos tener múltiples valores intermedios, cada uno de los cuales puede considerarse como una salida de un modelo de regresión logística diferente, es decir, no solo estamos realizando la misma regresión logística una y otra vez. Entonces no es un gran salto pensar que es posible que la combinación de estos tenga mayores capacidades expresivas que el modelo estándar de regresión logística (y también se ha demostrado en la práctica y la teoría ).

Nyj=f(i=1Nwjixi+bj)fwjixibjEs un sesgo. Los pesos se eligen mediante un algoritmo de optimización para optimizar nuestro objetivo, por ejemplo, minimizar el error de clasificación. La inicialización es muy importante para los algoritmos de descenso de gradiente que generalmente se usan para optimizar los pesos. Consulte https://intoli.com/blog/neural-network-initialization/ donde si todos los pesos comienzan en 0, la red no puede aprender.

Srijan Parmeshwar
fuente