En una red neuronal normal, cada neurona tiene su propio peso.
Esto no es correcto. Cada conexión entre neuronas tiene su propio peso. En una red totalmente conectada, cada neurona se asociará con muchos pesos diferentes. Si hay n0
entradas (es decir, n0
neuronas en la capa anterior) a una capa con n1
neuronas en una red totalmente conectada, esa capa tendrá n0*n1
pesos, sin contar ningún término de sesgo.
Debería poder ver esto claramente en este diagrama de una red totalmente conectada desde CS231n . Cada borde que ves representa un peso entrenable diferente:
Las capas convolucionales son diferentes porque tienen un número fijo de pesos gobernados por la elección del tamaño del filtro y el número de filtros, pero independientes del tamaño de entrada.
Cada filtro tiene un peso separado en cada posición de su forma. Entonces, si usa dos filtros 3x3x3, tendrá 54 pesos, de nuevo sin contar el sesgo. Esto se ilustra en un segundo diagrama de CS231n :
Los pesos del filtro deben actualizarse absolutamente en la propagación hacia atrás, ya que así es como aprenden a reconocer las características de la entrada. Si lee la sección titulada "Visualización de redes neuronales" aquí verá cómo las capas de una CNN aprenden características más y más complejas de la imagen de entrada a medida que se profundiza en la red. Todo esto se aprende ajustando los pesos del filtro a través de la retropropagación.
Durante la propagación hacia atrás, tanto las capas densas como las capas de convolución se actualizan, pero las capas de agrupación máxima no tienen ningún peso que actualizar. Las capas densas se actualizan para ayudar a clasificar la red. Las capas de convolución se actualizan para permitir que la red conozca las características en sí. Debido a que no ha hecho la pregunta, simplemente agrego un enlace para usted si desea obtener más información. Hay una muy buena explicación para la propagación de vuelta aquí que puede ser útil para usted.
fuente