¿Cuál es el papel del sesgo en las redes neuronales?


807

Soy consciente del descenso del gradiente y del algoritmo de propagación hacia atrás. Lo que no entiendo es: ¿cuándo es importante utilizar un sesgo y cómo se usa?

Por ejemplo, cuando mapeo la ANDfunción, cuando uso 2 entradas y 1 salida, no da los pesos correctos, sin embargo, cuando uso 3 entradas (1 de las cuales es un sesgo), da los pesos correctos.


17
Eche un vistazo a esta pregunta: stackoverflow.com/questions/1697243/help-with-perceptron para ver un ejemplo de un problema real en el que el OP no estaba usando un término de sesgo
Amro

66
Y aquí hay un buen ejemplo en Python de por qué el sesgo es importante :) stackoverflow.com/questions/38248657/…
Minerales

3
Aquí hay un gran artículo lleno de matemáticas de backprop, que también cubre las actualizaciones de sesgo: theclevermachine.wordpress.com/2014/09/06/…
Andy

Respuestas:


1361

Creo que los prejuicios son casi siempre útiles. En efecto, un valor de sesgo le permite desplazar la función de activación hacia la izquierda o hacia la derecha , lo que puede ser crítico para un aprendizaje exitoso.

Puede ser útil mirar un ejemplo simple. Considere esta red de 1 entrada y 1 salida que no tiene sesgo:

red simple

La salida de la red se calcula multiplicando la entrada (x) por el peso (w 0 ) y pasando el resultado a través de algún tipo de función de activación (por ejemplo, una función sigmoidea).

Aquí está la función que esta red calcula, para varios valores de w 0 :

salida de red, dados diferentes pesos w0

Cambiar el peso w 0 esencialmente cambia la "inclinación" del sigmoide. Eso es útil, pero ¿y si quisieras que la red produjera 0 cuando x es 2? Simplemente cambiar la inclinación del sigmoide realmente no funcionará; desea poder desplazar toda la curva hacia la derecha .

Eso es exactamente lo que el sesgo te permite hacer. Si agregamos un sesgo a esa red, así:

red simple con un sesgo

... entonces la salida de la red se convierte en sig (w 0 * x + w 1 * 1.0). Así es como se ve la salida de la red para varios valores de w 1 :

salida de red, dados diferentes pesos w1

Tener un peso de -5 para w 1 desplaza la curva hacia la derecha, lo que nos permite tener una red que genera 0 cuando x es 2.


66
@ user1621769: El enfoque más simple es una red con un solo nodo de polarización que se conecta a todos los nodos sin entrada en la red.
Nate Kohl el

65
@ user1621769: La función principal de un sesgo es proporcionar a cada nodo un valor constante entrenable (además de las entradas normales que recibe el nodo). Puede lograr eso con un solo nodo de sesgo con conexiones a N nodos, o con N nodos de sesgo cada uno con una sola conexión; El resultado debe ser el mismo.
Nate Kohl el

44
@ user1621769: ¿Es posible que no tenga en cuenta las ponderaciones? Cada conexión tiene una ponderación entrenable y el nodo de sesgo tiene un valor fijo.
Dimpl

44
@ user132458, si el algoritmo de entrenamiento descubre que no necesita el cambio de sesgo, los pesos de sesgo probablemente se acercarán a 0. Eliminando así la señal de sesgo.
jorgenkg

8
@ Gabriel: Debería haber un sesgo por neurona oculta.

343

Solo para agregar mis dos centavos.

Una forma más simple de entender cuál es el sesgo: de alguna manera es similar a la constante b de una función lineal

y = ax + b

Le permite mover la línea hacia arriba y hacia abajo para ajustar mejor la predicción con los datos. Sin b, la línea siempre pasa por el origen (0, 0) y puede obtener un peor ajuste.


55
buena anología, pero si establecemos el sesgo en 1, ¿por qué hace una diferencia en el ajuste ahora que cada línea pasará ahora por (0,1) en lugar de (0,0)? Como todas las líneas ahora están sesgadas a y = 1 en lugar de y = 0, ¿por qué es útil?
cielo azul

36
@ cielo azul Porque al multiplicar un sesgo por un peso, puede cambiarlo por una cantidad arbitraria.
Carcigenicate

3
¿Es correcto llamar a b un "coeficiente"? ¿No es un "coeficiente" un número utilizado para multiplicar una variable?
Ben

8
b no es "coeficiente" sino que es intercepción.
Espanta

22
b es el coeficiente de $ x ^ 0 $. a es el coeficiente de $ x ^ 1 $

65

Este hilo realmente me ayudó a desarrollar mi propio proyecto. Aquí hay algunas ilustraciones adicionales que muestran el resultado de una simple red neuronal de alimentación de 2 capas con y sin unidades de sesgo en un problema de regresión de dos variables. Los pesos se inicializan al azar y se utiliza la activación estándar de ReLU. Como concluyeron las respuestas ante mí, sin el sesgo, la red ReLU no puede desviarse de cero en (0,0).

ingrese la descripción de la imagen aquí

ingrese la descripción de la imagen aquí


1
¿Puede agregar la función que se traza con etiquetas de eje?
Komal-SkyNET

46

Se pueden ajustar dos tipos diferentes de parámetros durante el entrenamiento de un ANN, los pesos y el valor en las funciones de activación. Esto no es práctico y sería más fácil si solo se ajustara uno de los parámetros. Para hacer frente a este problema, se inventa una neurona sesgada. La neurona de polarización se encuentra en una capa, está conectada a todas las neuronas de la capa siguiente, pero ninguna en la capa anterior y siempre emite 1. Dado que la neurona de polarización emite 1, los pesos, conectados a la neurona de polarización, se agregan directamente a la suma combinada de los otros pesos (ecuación 2.1), al igual que el valor t en las funciones de activación. 1

La razón por la que no es práctico es porque está ajustando simultáneamente el peso y el valor, por lo que cualquier cambio en el peso puede neutralizar el cambio en el valor que fue útil para una instancia de datos anterior ... agregar una neurona sesgada sin un valor cambiante permite usted para controlar el comportamiento de la capa.

Además, el sesgo le permite usar una única red neuronal para representar casos similares. Considere la función booleana AND representada por la siguiente red neuronal:

ANA
(fuente: aihorizon.com )

  • w0 corresponde a b .
  • w1 corresponde a x1 .
  • w2 corresponde a x2 .

Se puede usar un solo perceptrón para representar muchas funciones booleanas.

Por ejemplo, si asumimos valores booleanos de 1 (verdadero) y -1 (falso), entonces una forma de usar un perceptrón de dos entradas para implementar la función AND es establecer los pesos w0 = -3 y w1 = w2 = .5. Este perceptrón se puede hacer para representar la función OR alterando el umbral a w0 = -.3. De hecho, AND y OR pueden verse como casos especiales de funciones m-of-n: es decir, funciones donde al menos m de las n entradas al perceptrón deben ser verdaderas. La función OR corresponde a m = 1 y la función AND a m = n. Cualquier función m-de-n se representa fácilmente usando un perceptrón configurando todos los pesos de entrada al mismo valor (por ejemplo, 0.5) y luego configurando el umbral w0 en consecuencia.

Los perceptrones pueden representar todas las funciones booleanas primitivas AND, OR, NAND (1 AND) y NOR (1 OR). Aprendizaje automático: Tom Mitchell)

El umbral es el sesgo y w0 es el peso asociado con el sesgo / neurona umbral.


8
Piense en ello como una regla general: ¡agregue parcialidad! Las redes neuronales son "impredecibles" hasta cierto punto, por lo que si agrega una neurona sesgada, es más probable que encuentre soluciones más rápido que si no la utilizó. Por supuesto, esto no está matemáticamente probado, pero es lo que he observado en la literatura y en el uso general.
Kiril

25

El sesgo no es un NNtérmino, es un término genérico de álgebra para tener en cuenta.

Y = M*X + C (ecuación en línea recta)

Ahora, si es C(Bias) = 0así, la línea siempre pasará por el origen, es decir (0,0), y depende de un solo parámetro, es decir M, que es la pendiente, por lo que tenemos menos cosas con las que jugar.

C, que es el sesgo, toma cualquier número y tiene la actividad de desplazar el gráfico, y por lo tanto puede representar situaciones más complejas.

En una regresión logística, el valor esperado del objetivo se transforma mediante una función de enlace para restringir su valor al intervalo unitario. De esta manera, las predicciones del modelo se pueden ver como probabilidades de resultados primarios, como se muestra: Función sigmoidea en Wikipedia

Esta es la capa de activación final en el mapa NN que enciende y apaga la neurona. Aquí también el sesgo tiene un papel que desempeñar y desplaza la curva de manera flexible para ayudarnos a mapear el modelo.


1
Entonces, ¿qué problemas en el entrenamiento / aprendizaje de la red neuronal ocurren cuando la línea siempre pasa por el origen cuando no se usa el sesgo?
Daniyal Javaid

@DaniyalJavaid Eso puede ser una posibilidad y no el problema
Pradi KL

23

Una capa en una red neuronal sin sesgo no es más que la multiplicación de un vector de entrada con una matriz. (El vector de salida podría pasar a través de una función sigmoidea para la normalización y para su uso en ANN de varias capas después, pero eso no es importante).

Esto significa que está utilizando una función lineal y, por lo tanto, una entrada de todos los ceros siempre se asignará a una salida de todos los ceros. Esta podría ser una solución razonable para algunos sistemas, pero en general es demasiado restrictiva.

Usando un sesgo, efectivamente está agregando otra dimensión a su espacio de entrada, que siempre toma el valor uno, por lo que está evitando un vector de entrada de todos los ceros. No pierde ninguna generalidad con esto porque su matriz de peso entrenada no necesita ser sobreyectiva, por lo que aún puede correlacionarse con todos los valores previamente posibles.

2d ANN:

Para un mapeo ANN de dos dimensiones a una dimensión, como en la reproducción de las funciones AND o OR (o XOR), puede pensar en una red neuronal como haciendo lo siguiente:

En el plano 2D, marque todas las posiciones de los vectores de entrada. Entonces, para valores booleanos, querrás marcar (-1, -1), (1,1), (-1,1), (1, -1). Lo que hace su ANN ahora es dibujar una línea recta en el plano 2d, separando la salida positiva de los valores de salida negativos.

Sin sesgo, esta línea recta tiene que pasar por cero, mientras que con sesgo, puedes colocarla en cualquier lugar. Entonces, verá que sin sesgo, enfrenta un problema con la función AND, ya que no puede poner ambos (1, -1) y (-1,1) en el lado negativo. (No se les permite estar en la línea). El problema es igual para la función OR. Con un sesgo, sin embargo, es fácil trazar la línea.

Tenga en cuenta que la función XOR en esa situación no se puede resolver incluso con sesgo.


44
Si utiliza una función de transferencia sigmoidea, introduce no linealidad. Afirmar que esta es una función lineal es incorrecto y también de alguna manera peligroso, ya que la no linealidad del sigmoide es clave para la solución de varios problemas. Además, sigmoide (0) = 0.5, y no hay una x para la cual sigmoide (x) = 0.
bayer

2
Sí, pero es 0.5 para cualquier entrada de 0 sin sesgo, independientemente de cómo se vea la función lineal. Y ese es el punto. Normalmente no entrenas tu función sigmoidea, solo vives con ella. El problema de linealidad ocurre mucho antes de la función sigmoidea.
Debilski

Entiendo su punto: la capa no puede aprender una salida diferente para 0 de la que comenzó. Eso es correcto e importante. Sin embargo, el "argumento de la función lineal" simplemente no se aplica en mi opinión. Incluso con un sesgo, la función sigue siendo lineal. La propiedad de linealidad es engañosa aquí. (Sí, podría ser quisquilloso.)
bayer

Yo diría que con un sesgo es afín . ( en.wikipedia.org/wiki/Affine_transformation#Representation )
Debilski

Si, estas en lo correcto. Gracias por señalarme esa diferencia. (¿Por qué entonces lo llamamos regresión lineal, por cierto, aunque es afín?)
bayer

20

Cuando usa ANN, rara vez conoce las partes internas de los sistemas que desea aprender. Algunas cosas no se pueden aprender sin prejuicios. Por ejemplo, eche un vistazo a los siguientes datos: (0, 1), (1, 1), (2, 1), básicamente una función que asigna cualquier x a 1.

Si tiene una red de una capa (o un mapeo lineal), no puede encontrar una solución. Sin embargo, si tienes un sesgo, ¡es trivial!

En un entorno ideal, un sesgo también podría asignar todos los puntos a la media de los puntos objetivo y dejar que las neuronas ocultas modelen las diferencias desde ese punto.


18

La modificación de los PESOS neuronales solo sirve para manipular la forma / curvatura de su función de transferencia, y no su punto de equilibrio / cruce por cero .

La introducción del sesgo neuronas permite cambiar la curva de la función de transferencia horizontalmente (izquierda / derecha) a lo largo del eje de entrada, sin alterar la forma / curvatura. Esto permitirá que la red produzca salidas arbitrarias diferentes de las predeterminadas y, por lo tanto, puede personalizar / cambiar la asignación de entrada a salida para satisfacer sus necesidades particulares.

Ver aquí para una explicación gráfica: http://www.heatonresearch.com/wiki/Bias


16

Solo para agregar a todo esto algo que falta mucho y que el resto, muy probablemente, no sabía.

Si está trabajando con imágenes, es posible que prefiera no utilizar un sesgo en absoluto. En teoría, de esa manera su red será más independiente de la magnitud de los datos, como si la imagen es oscura o brillante y vívida. Y la red aprenderá a hacer su trabajo a través del estudio de la relatividad dentro de sus datos. Muchas redes neuronales modernas utilizan esto.

Para otros datos, tener sesgos puede ser crítico. Depende de qué tipo de datos esté tratando. Si su información es invariante en magnitud --- si ingresar [1,0,0.1] debería conducir al mismo resultado que si ingresa [100,0,10], podría estar mejor sin un sesgo.


probablemente estés mejor con la normalización. ¿Cuál es un ejemplo de una red moderna que utiliza la "falta de sesgo" para producir invariancia de magnitud?
AwokeKnowing

@AwokeKnowing, creo, el ResNet habitual lo utiliza, ya que es parte de su "inicialización", pero no estoy exactamente seguro de que lo hayan hecho estrictamente para este propósito, o tal vez por consideraciones de tamaño / eficiencia del modelo y yo ' No estoy seguro de que este concepto se publique en ningún lado. Pero creo que es completamente comprensible a nivel teórico. Si no tiene un sesgo que no se escala, cuando escala los valores, todas las salidas simplemente se escalan en consecuencia. Consciente de este concepto, o no, gran parte de las arquitecturas modernas no tienen sesgos al menos en una gran parte de sus estructuras.
Íhor Mé

16

En un par de experimentos en mi tesis de maestría (p. Ej., Página 59), descubrí que el sesgo podría ser importante para la (s) primera (s) capa (s), pero especialmente en las capas completamente conectadas al final parece que no juega un papel importante.

Esto puede depender mucho de la arquitectura de red / conjunto de datos.


Eso suena completamente análogo al proceso de modelado de sistemas "a mano" con regresión lineal. El modelo más simple sería Y_bar = media (Y). Luego agrega complejidad al incluir varios términos X, deteniéndose cuando no hay una ganancia de información significativa.
IRTFM

15

Bias decide cuánto ángulo desea que gire su peso.

En el gráfico bidimensional, el peso y el sesgo nos ayudan a encontrar el límite de decisión de los resultados. Digamos que necesitamos construir la función AND, el par input (p) -output (t) debería ser

{p = [0,0], t = 0}, {p = [1,0], t = 0}, {p = [0,1], t = 0}, {p = [1,1] , t = 1}

ingrese la descripción de la imagen aquí

Ahora necesitamos encontrar el límite de decisión, el límite de la idea debería ser:

ingrese la descripción de la imagen aquí

¿Ver? W es perpendicular a nuestro límite. Por lo tanto, decimos que W decidió la dirección del límite.

Sin embargo, es difícil encontrar la W correcta por primera vez. En su mayoría, elegimos el valor W original al azar. Por lo tanto, el primer límite puede ser este: ingrese la descripción de la imagen aquí

Ahora el límite es pareller al eje y.

Queremos rotar el límite, ¿cómo?

Al cambiar la W.

Entonces, usamos la función de regla de aprendizaje: W '= W + P: ingrese la descripción de la imagen aquí

W '= W + P es equivalente a W' = W + bP, mientras que b = 1.

Por lo tanto, al cambiar el valor de b (sesgo), puede decidir el ángulo entre W 'y W. Esa es "la regla de aprendizaje de ANN".

También puede leer Neural Network Design por Martin T. Hagan / Howard B. Demuth / Mark H. Beale, capítulo 4 "Regla de aprendizaje de Perceptron"


1
Explicación / ilustración útil
javadba

10

En particular, de Nate respuesta , de ZFY respuesta , y Pradi respuesta son grandes.

En términos más simples, los sesgos permiten que se aprendan / almacenen más y más variaciones de pesos ... ( nota al margen : a veces se les da algún umbral). De todos modos, más variaciones significan que los sesgos agregan una representación más rica del espacio de entrada a los pesos aprendidos / almacenados del modelo. (Donde mejores pesos pueden mejorar el poder de adivinación de la red neuronal)

Por ejemplo, en los modelos de aprendizaje, la hipótesis / conjetura está deseablemente limitada por y = 0 o y = 1 dada alguna entrada, tal vez en alguna tarea de clasificación ... es decir, algunos y = 0 para algunos x = (1,1) y algunos y = 1 para algunos x = (0,1). (La condición en la hipótesis / resultado es el umbral del que hablé anteriormente. Tenga en cuenta que mis ejemplos configuraron las entradas X para que sean x = un vector doble o 2 de valor, en lugar de las entradas x de Nate de alguna colección X).

Si ignoramos el sesgo, muchas entradas pueden terminar siendo representadas por muchos de los mismos pesos (es decir, los pesos aprendidos ocurren principalmente cerca del origen (0,0). El modelo se limitaría a cantidades más pobres de buenos pesos, en lugar de los muchos más pesos buenos, podría aprender mejor con sesgo (donde los pesos mal aprendidos conducen a conjeturas más pobres o una disminución en el poder de adivinación de la red neuronal)

Por lo tanto, es óptimo que el modelo aprenda tanto cerca del origen, como también, en tantos lugares como sea posible dentro del límite de umbral / decisión. Con el sesgo podemos habilitar grados de libertad cerca del origen, pero no limitado a la región inmediata del origen.


9

Ampliando la explicación de @zfy ... La ecuación para una entrada, una neurona, una salida debería verse:

y = a * x + b * 1    and out = f(y)

donde x es el valor del nodo de entrada y 1 es el valor del nodo de sesgo; y puede ser directamente su salida o pasar a una función, a menudo una función sigmoidea. También tenga en cuenta que el sesgo podría ser constante, pero para simplificar todo siempre elegimos 1 (y probablemente eso es tan común que @zfy lo hizo sin mostrarlo y explicarlo).

Su red está tratando de aprender los coeficientes ayb para adaptarse a sus datos. Entonces puede ver por qué agregar el elemento le b * 1permite ajustarse mejor a más datos: ahora puede cambiar tanto la pendiente como la intercepción.

Si tiene más de una entrada, su ecuación se verá así:

y = a0 * x0 + a1 * x1 + ... + aN * 1

Tenga en cuenta que la ecuación todavía describe una red de una neurona, una salida; Si tiene más neuronas, simplemente agregue una dimensión a la matriz de coeficientes, para multiplexar las entradas a todos los nodos y resumir la contribución de cada nodo.

Que puedes escribir en formato vectorizado como

A = [a0, a1, .., aN] , X = [x0, x1, ..., 1]
Y = A . XT

es decir, al poner los coeficientes en una matriz y (entradas + sesgo) en otra, tiene la solución deseada como producto de punto de los dos vectores (debe transponer X para que la forma sea correcta, escribí XT como una 'X transpuesta')

Entonces, al final, también puede ver su sesgo, ya que es solo una entrada más para representar la parte de la salida que en realidad es independiente de su entrada.


Me parece recordar de la clase de Andrew Ng que el sesgo se omitió en parte del proceso de capacitación. ¿podría actualizar su respuesta para explicar eso teniendo en cuenta su conclusión de que es "solo otra entrada"?
AwokeKnowing

@AwokeKnowing No recuerdo eso de la clase de Andrew Ng, pero eso fue hace unos años. Además, el sesgo puede estar activado o desactivado dependiendo de lo que intente aprender. Leí que en el procesamiento de imágenes no lo usan para permitir el escalado. Para mí, si lo usas, también lo usas en el entrenamiento. El efecto es estabilizar los coeficientes cuando todas o parte de las entradas son nulas o casi nulas. ¿Por qué no usarías el sesgo durante el entrenamiento y luego lo usarías cuando uses el NN para predecir salidas para nuevas entradas? ¿Cómo podría ser útil?
RobMcZag

No, era más como usarlo en el pase hacia adelante, pero no lo use al calcular el gradiente para backprop, o algo así.
AwokeKnowing

@AwokeKnowing Supongo que es una forma de ahorrar memoria y tiempo. Puede decidir que no le importa aprender coeficientes para las unidades de sesgo. Eso puede estar bien si tiene al menos una capa oculta, ya que el sesgo proporcionará algo de entrada a esa capa y la salida puede ser aprendida por los coeficientes de la primera a la segunda capa. No estoy seguro de si la velocidad de convergencia cambiará. En mi ejemplo de una capa, se ve obligado a aprender también el coeficiente de sesgo que se aplica a la salida.
RobMcZag

En muchos problemas simples, los datos del objetivo se han degradado y escalado, por lo que no se necesita sesgo, y se reduce la posibilidad de una influencia atípica excesiva en variables con rangos grandes.
IRTFM

9

Aparte de las respuestas mencionadas ... Me gustaría agregar algunos otros puntos.

El sesgo actúa como nuestro ancla. Es una forma de tener algún tipo de línea de base donde no vamos por debajo de eso. En términos de una gráfica, piense que y = mx + b es como una intersección en y de esta función.

output = input multiplicado por el valor de peso y agregado un valor de polarización y luego aplica una función de activación.


8

Para pensar de manera simple, si tienes y = w1 * x donde y es tu salida y w1 es el peso, imagina una condición donde x = 0 entonces y = w1 * x es igual a 0 , si quieres actualizar tu peso tienes para calcular cuánto cambio por delw = target-y donde target es su salida objetivo, en este caso, 'delw' no cambiará ya que y se calcula como 0. Entonces, suponga que si puede agregar algún valor adicional, ayudará y = w1 * x + w0 * 1 , donde sesgo = 1 y peso se pueden ajustar para obtener un sesgo correcto. Considere el siguiente ejemplo.

En términos de línea, la intersección en pendiente es una forma específica de ecuaciones lineales.

y = mx + b

mira la imagen

imagen

aquí b es (0,2)

si desea aumentarlo a (0,3), ¿cómo lo hará cambiando el valor de b, que será su sesgo?


7

Para todos los libros de ML que estudié, la W siempre se define como el índice de conectividad entre dos neuronas, lo que significa que cuanto mayor sea la conectividad entre dos neuronas, más fuertes se transmitirán las señales de la neurona activa a la neurona objetivo o Y = w * X como resultado para mantener el carácter biológico de las neuronas, necesitamos mantener el 1> = W> = -1, pero en la regresión real, el W terminará con | W | > = 1, lo que contradice el funcionamiento de las neuronas, por lo que propongo W = cos (theta), mientras que 1> = | cos (theta) | , e Y = a * X = W * X + b mientras que a = b + W = b + cos (theta), b es un número entero


7

En redes neuronales:

  1. Cada neurona tiene un sesgo
  2. Puede ver el sesgo como umbral (generalmente valores opuestos del umbral)
  3. La suma ponderada de las capas de entrada + sesgo decide la activación de la neurona
  4. El sesgo aumenta la flexibilidad del modelo.

En ausencia de sesgo, la neurona puede no activarse considerando solo la suma ponderada de la capa de entrada. Si la neurona no está activada, la información de esta neurona no se pasa a través del resto de la red neuronal.

El valor del sesgo se puede aprender.

ingrese la descripción de la imagen aquí

Efectivamente, sesgo = - umbral. Puedes pensar en el sesgo como cuán fácil es hacer que la neurona produzca un 1; con un sesgo realmente grande, es muy fácil para la neurona emitir un 1, pero si el sesgo es muy negativo, entonces es difícil.

en resumen: el sesgo ayuda a controlar el valor al que se activará la función de activación.

Sigue este video para más detalles

Pocos enlaces más útiles:

geeksforgeeks

hacia la ciencia


1
Buena interpretación Pero no tengo claro cómo el sesgo es aprendible (¿o entrenable?). En un caso simple donde la pérdida = ReLU (omega * x + a), el peso omega puede entrenarse a través de la regla de la cadena, pero ¿cómo puede aentrenarse el sesgo cuando el gradiente aes siempre constante?
Libin Wen el

4

El término sesgo se usa para ajustar la matriz de salida final como lo hace la intersección en y. Por ejemplo, en la ecuación clásica, y = mx + c, si c = 0, entonces la línea siempre pasará por 0. Agregar el término de sesgo proporciona más flexibilidad y una mejor generalización a nuestro modelo de red neuronal.


0

En general, en el aprendizaje automático tenemos esta fórmula de base Bias-Variance Tradeoff Porque en NN tenemos un problema de sobreajuste (problema de generalización del modelo donde pequeños cambios en los datos generan grandes cambios en el resultado del modelo) y debido a eso tenemos una gran variación, introduciendo un pequeño sesgo podría ayudar mucho. Teniendo en cuenta la fórmula anterior, Bias-Variance Tradeoff , donde el sesgo es cuadrado, por lo tanto, introducir un sesgo pequeño podría conducir a reducir mucho la varianza. Entonces, introduce prejuicios cuando tengas una gran variación y un peligro de sobreajuste.


3
Las unidades de sesgo y la compensación de varianza de sesgo son conceptos separados. La pregunta es sobre el primero.
SigmaX

0

El sesgo ayuda a obtener una mejor ecuación.

Imagine la entrada y la salida como una función y = ax + by necesita colocar la línea correcta entre la entrada (x) y la salida (y) para minimizar el error global entre cada punto y la línea, si mantiene la ecuación de esta maneray = ax , tendrá solo un parámetro para la adaptación, incluso si encuentra la mejor aminimización del error global, estará un poco lejos del valor deseado

Puede decir que el sesgo hace que la ecuación sea más flexible para adaptarse a los mejores valores.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.