Por qué el vector de peso es ortogonal al plano de decisión en redes neuronales


Soy principiante en redes neuronales. Estoy aprendiendo sobre perceptrones. Mi pregunta es ¿Por qué el vector de peso es perpendicular al límite de decisión (Hiperplano)? Me referí a muchos libros, pero todos están mencionando que el vector de peso es perpendicular al límite de decisión, pero ninguno está diciendo por qué?

¿Puede alguien darme una explicación o referencia a un libro?

Author: gdrt, 2012-04-16

3 answers

Los pesos son simplemente los coeficientes que definen un plano de separación. Por el momento, olvídese de las neuronas y solo considere la definición geométrica de un plano en N dimensiones:

w1*x1 + w2*x2 + ... + wN*xN - w0 = 0

También puedes pensar en esto como un producto escalar:

w*x - w0 = 0

Donde w y x son vectores de longitud-N. Esta ecuación es válida para todos los puntos del plano. Recordemos que podemos multiplicar la ecuación anterior por una constante y todavía se mantiene así que podemos definir las constantes tales que el vector w tiene longitud unitaria. Ahora, saca un pedazo de papel y dibuja tusx-y ejes (x1 y x2 en las ecuaciones anteriores). A continuación, dibuja una línea (un plano en 2D) en algún lugar cerca del origen. w0 es simplemente la distancia perpendicular desde el origen al plano y w es el vector unitario que apunta desde el origen a lo largo de esa perpendicular. Si ahora dibuja un vector desde el origen hasta cualquier punto del plano, el producto escalar de ese vector con el vector unitario w siempre ser igual a w0 así que la ecuación anterior se mantiene, ¿verdad? Esto es simplemente la definición geométrica de un plano: un vector unitario que define la perpendicular al plano (w) y la distancia (w0) desde el origen hasta el plano.

Ahora nuestra neurona simplemente representa el mismo plano como se describió anteriormente, pero solo describimos las variables un poco diferente. Llamaremos a los componentes de x nuestras "entradas", a los componentes de w nuestros "pesos", y llamaremos a la distancia w0 un sesgo. Eso es todo lo que hay que hacer.

Yendo un poco más allá de su pregunta real, realmente no nos importan los puntos en el avión. Realmente queremos saber en qué lado del avión cae un punto. Mientras que w*x - w0 es exactamente cero en el plano, tendrá valores positivos para los puntos en un lado del plano y valores negativos para los puntos en el otro lado. Ahí es donde entra la función de activación de la neurona pero eso está más allá de tu pregunta real.

 29
Author: bogatron,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-12-19 17:29:24

Intuitivamente, en un problema binario el vector de peso apunta en la dirección de la clase '1', mientras que la clase '0'se encuentra cuando apunta lejos del vector de peso. Por lo tanto, el límite de decisión debe trazarse perpendicular al vector de peso.

Vea la imagen para un ejemplo simplificado: Tiene una red neuronal con solo 1 entrada que por lo tanto tiene 1 peso. Si el peso es -1 (el vector azul), entonces todas las entradas negativas se volverán positivas, por lo que todo el espectro negativo será asignado a la clase '1', mientras que el espectro positivo será la clase'0'. El límite de decisión en un plano de 2 ejes es, por lo tanto, una línea vertical a través del origen (la línea roja). Simplemente dijo que es la línea perpendicular al vector de peso.

Veamos este ejemplo con algunos valores. La salida del perceptrón es de clase 1 si la suma de todos inputs * weights es mayor que 0 (el umbral predeterminado), de lo contrario, si la salida es menor que el umbral de 0, entonces la clase es 0. Su entrada tiene valor 1. El peso aplicado a esta entrada única es -1, por lo que 1 * -1 = -1 que es menor que 0. Por lo tanto, a la entrada se le asigna la clase 0 (NOTA: la clase 0 y la clase 1 podrían haberse llamado simplemente clase A o clase B, no las confunda con los valores de entrada y peso). Por el contrario, si la entrada es -1, entonces input * weight es -1 * -1 = 1, que es mayor que 0, por lo que la entrada se asigna a la clase 1. Si intenta cada valor de entrada, verá que todos los valores negativos en este ejemplo tienen una salida mayor que 0, por lo que todos de ellos pertenecen a la clase 1. Todos los valores positivos tendrán una salida menor que 0 y por lo tanto se clasificarán como clase 0. Dibuje la línea que separa todos los valores de entrada positivos y negativos (la línea roja) y verá que esta línea es perpendicular al vector de peso.

También tenga en cuenta que el vector de peso solo se utiliza para modificar las entradas para que se ajusten a la salida deseada. ¿Qué pasaría sin un vector de peso? Una entrada de 1, resultaría en una salida de 1, que es mayor que el umbral de 0, por lo que la clase es '1'.

imagen

La segunda imagen en esta página muestra un perceptrón con 2 entradas y un sesgo. La primera entrada tiene el mismo peso que mi ejemplo, mientras que la segunda entrada tiene un peso de 1. El vector de peso correspondiente junto con el límite de decisión se cambian como se ve en la imagen. También el límite de decisión se ha traducido a la derecha debido a un sesgo añadido de 1.

 7
Author: Sicco,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2012-04-20 08:25:17

Aunque la pregunta se hizo hace 2 años, creo que muchos estudiantes tendrán las mismas dudas. Llegué a esta respuesta porque hice la misma pregunta.

Ahora, basta pensar en X, Y (un sistema de coordenadas cartesianas es un sistema de coordenadas que especifica cada punto únicamente en un plano por un par de coordenadas numéricas, que son las distancias firmadas desde el punto a dos líneas perpendiculares fijas dirigidas [ de Wikipedia]).

Si Y = 3X, en geometría Y es perpendicular a X, entonces vamos a w = 3, entonces Y = wX, w = Y/X y si queremos dibujar la relación entre X, w tendremos dos líneas perpendiculares al igual que cuando dibujamos la relación entre X, Y. Así que siempre pensar en el coeficiente w como perpendicular a X e Y.

 1
Author: user3286053,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2017-04-19 14:54:50