¿Qué es el peso y el sesgo en el aprendizaje profundo?


16

Estoy empezando a aprender Machine learning del sitio web de Tensorflow. He desarrollado una comprensión muy rudimentaria del flujo que sigue un programa de aprendizaje profundo (este método me hace aprender rápido en lugar de leer libros y artículos grandes).

Hay algunas cosas confusas que he encontrado, 2 de ellas son:

  1. Parcialidad
  2. Peso

En el tutorial MNIST en el sitio web de tensorflow, mencionaron que necesitamos sesgo y peso para encontrar la evidencia de la existencia de un patrón particular en una imagen. Lo que no entiendo es, ¿dónde y cómo se determinan los valores de sesgo y peso?

¿Tenemos que proporcionar estos valores o la biblioteca TensorFlow calcula estos valores automáticamente en función del conjunto de datos de entrenamiento?

Además, si pudiera proporcionar algunas sugerencias sobre cómo acelerar mi ritmo en el aprendizaje profundo, ¡sería genial!

Tutorial para principiantes de Tensorflow


3
Como parámetros de un modelo estadístico , se aprenden o estiman minimizando una función de pérdida que depende de sus datos. Y de eso se trata el aprendizaje automático. Vas a hacer muchas preguntas si sigues este método pedagógico. Sugiero tomar un MOOC como el de Coursera para que pueda aprender las cosas en un orden razonable.
Emre

Esto es muy básico, por lo que debes hacer un curso como @Emre sugirió.
SmallChess

Respuestas:


11

Matemáticamente hablando. Imagina que eres modelo (no, no de ese tipo, figura 8 unos)

Y=WX+norteyosolmiryounnorte .

Entonces, ¿qué entiendes? Sesgada es esa suposición previa en un modelo como el que tienes.

En cuanto al peso, lógicamente hablando, el peso es su gradiente (a en álgebra lineal),

¿Qué es el gradiente?, es la inclinación de la función lineal.

¿Qué hace que el gradiente lineal sea muy empinado (valor positivo alto)?

Esto se debe a que pequeños cambios en X (entrada) provocan grandes diferencias en el eje Y (salida). Entonces usted (ya no como modelo, sino un matemático brillante (su alter ego)) o su computadora intenta encontrar este gradiente, al que puede llamar peso. La diferencia es que usas un lápiz y un libro gráfico para encontrar esto, pero la caja negra hace su magia electrónica con registros.

En el proceso de aprendizaje automático de la máquina, la computadora o Usted intenta dibujar muchas líneas rectas o funciones lineales en los puntos de datos,

¿Por qué intentas dibujar muchas líneas rectas?

Porque en su libro de gráficos / memoria de la computadora, está tratando de ver la línea que se ajusta adecuadamente.

¿Cómo sé yo o la computadora la línea que se ajusta adecuadamente?

En mi escuela secundaria, me enseñaron a dibujar una línea a través de los puntos de datos, verificando visualmente la línea que atraviesa perfectamente en el medio de todos los puntos de datos. . Pero en cuanto a la computadora, intenta la desviación estándar y la varianza de cada línea hacia los puntos de datos. Se elige la línea con la menor desviación (a veces se la llamará función de error).

¡Frio! y que pasa

Se calcula el gradiente de esa línea, digamos que se calcula el peso del problema de aprendizaje

eso es Machine Learning en su comprensión básica y un gráfico de trazado de estudiantes de secundaria en su Graphbook


10

Estoy de acuerdo con los comentarios sobre su pregunta de que debería estudiar un curso, tal vez el aprendizaje automático de Andrew Ng en Coursera , que es un curso introductorio gratuito de gran prestigio. Esta es una pregunta básica sobre los fundamentos del aprendizaje automático. Como tal, no estoy cubriendo las matemáticas en esta respuesta, puedes obtener eso de muchos lugares, incluido ese curso.

¿Dónde y cómo se determinan los valores de sesgo y peso?

Los pesos y los sesgos son los parámetros que se pueden aprender de su modelo. Además de las redes neuronales, aparecen con los mismos nombres en modelos relacionados, como la regresión lineal. La mayoría de los algoritmos de aprendizaje automático incluyen algunos parámetros que se pueden aprender como este.

Los valores de estos parámetros antes de que comience el aprendizaje se inicializan aleatoriamente (esto evita que todos converjan en un solo valor). Luego, cuando se presentan los datos durante el entrenamiento, se ajustan a valores que tienen una salida correcta.

¿Tenemos que proporcionar estos valores o la biblioteca TensorFlow calcula estos valores automáticamente en función del conjunto de datos de entrenamiento?

No es necesario que proporcione valores antes del entrenamiento, aunque es posible que desee decidir cosas como cuántos parámetros debería haber (en redes neuronales controladas por el tamaño de cada capa). TensorFlow calcula los valores automáticamente, durante el entrenamiento. Cuando tenga un modelo ya entrenado y quiera volver a usarlo, entonces querrá establecer los valores directamente, por ejemplo, cargándolos del archivo.

El código específico que maneja los cambios en los pesos y sesgos del tutorial es este:

train_step = tf.train.GradientDescentOptimizer(0.5).minimize(cross_entropy)

y esto:

sess.run(train_step, feed_dict={x: batch_xs, y_: batch_ys})

La primera línea define cómo se cambiarán los pesos y valores. Puede leer esto casi literalmente como "definir una función de entrenamiento que utiliza el optimizador de descenso de gradiente para reducir la entropía cruzada de los datos suministrados".

yX


8

Peso : el peso es la fuerza de la conexión. Si aumento la entrada, ¿cuánta influencia tiene en la salida?

Los pesos cercanos a cero significan que cambiar esta entrada no cambiará la salida. Muchos algoritmos establecerán automáticamente esos pesos en cero para simplificar la red.

Sesgo : como significa qué tan lejos están nuestras predicciones de los valores reales. En general, los algoritmos paramétricos tienen un alto sesgo, lo que los hace rápidos de aprender y fáciles de entender, pero generalmente menos flexibles. A su vez, tienen un rendimiento predictivo más bajo en problemas complejos que no cumplen con los supuestos simplificadores del sesgo de los algoritmos.

Bajo sesgo : sugiere más suposiciones sobre la forma de la función objetivo.

High-Bia s: sugiere menos suposiciones sobre la forma de la función objetivo.


2
El OP estaba preguntando sobre el parámetro de sesgo en una red neuronal. Sus definiciones de sesgo están bien, pero no responda la pregunta.
Neil Slater
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.