¿Por qué agregar más como primera columna de datos en el aprendizaje automático?

Ese es el prejuicio.

Estoy seguro de que has visto funciones lineales en la forma [math] f (x) = ax + b [/ math].

Si suponemos que este es un modelo de regresión lineal, [matemática] x [/ matemática] sería la característica de entrada y [matemática] a [/ matemática] el peso dado a esa característica, mientras que [matemática] b [/ matemática] es la parcialidad.

Si no hubiéramos incluido este valor constante [matemática] b [/ matemática], entonces [matemática] f (x) [/ matemática] tendría que pasar por el origen (0,0). Eso limitaría seriamente los tipos de relaciones que el modelo podría describir. Entonces presentamos una constante.

En el aprendizaje automático, el algoritmo de aprendizaje deducirá el tamaño o el peso de [matemáticas] b [/ matemáticas]. El 1 es solo un número arbitrario que forma una base para aprender cuál será el sesgo. En redes neuronales artificiales, los pesos de sesgo a menudo se inicializan a cero.

No es realmente un dato, es más comúnmente conocido como una nueva característica. Digamos que necesitamos predecir el precio de la casa en función del área de la casa. [matemáticas] Y = X * área; Y [/ matemática] para el precio [matemática], x [/ matemática] es el factor que necesitamos para determinar que [matemática] Y – (área X *) = 0. [/ math] Sugiere que el resultado fue [math] Y – (área X *) = 7 [/ math] en lugar de [math] 0 [/ math] para todos los valores de [math] X e Y. [/ math] La mejor fórmula sería [matemática] Y = x * área – X0 [/ matemática] donde [matemática] X0 = 7 [/ matemática]

Podría pensar en [matemáticas] X0 [/ matemáticas] [matemáticas] [/ matemáticas] como la columna de datos añadida. También se le llama comúnmente el término sesgo.

Teniendo en cuenta que está hablando del término sesgo en la función de mapeo lineal. Este término adicional se usa para mapear cualquier función lineal en la forma y = mx + b. De lo contrario, la función y = mx sería solo un tipo especial de ecuación lineal y tendría ciertas restricciones (debe pasar el origen). Pero, finalmente, este valor es en realidad una inicialización aleatoria y luego se usa como un parámetro que también necesita optimización. Tome cualquier libro de aprendizaje automático y encontrará información detallada. ¡Gracias!

No sé nada sobre cómo está procesando los datos. Por lo tanto, no estoy seguro de por qué uno necesitaría agregar otros adicionales como la primera columna de un conjunto de datos. Sin embargo, creo que lo siguiente podría ser una razón para hacerlo.

Digamos que tiene una matriz donde cada fila es un vector de datos [math] v [/ math] de tamaño n. Ahora cualquier función lineal aplicada en [matemáticas] v [/ matemáticas] se puede escribir como [matemáticas] + b [/ matemáticas] donde [matemáticas] a [/ matemáticas] es a [matemáticas] n [/ matemáticas ] vector dimensional y [matemáticas] b [/ matemáticas] es un escalar. Ahora, si extiende el vector [math] v [/ math] agregando un 1 delante de él para hacer un vector [math] v ‘[/ math], entonces [math] + b [/ math ] es lo mismo que [math] [/ math] donde [math] a ‘[/ math] es el vector [math] a [/ math] con el escalar [math] b [/ math ] añadido delante de él. Por lo tanto, puede unir [matemáticas] a [/ matemáticas] y [matemáticas] b [/ matemáticas] en un solo parámetro [matemáticas] a ‘[/ matemáticas]. Creo que esta podría ser la razón para agregar un 1 adicional delante de cada razón.

Para estar seguro, tendrá que mirar el código / algoritmo que muestra los cálculos en los que se involucra el 1 agregado.