¿Qué se entiende exactamente por pesos compartidos en una red neuronal convolucional?

consulte las redes neuronales convolucionales CS231n para el reconocimiento visual

“Pesos compartidos” es simple: use el mismo vector de peso para hacer la “convolución” (que es esencialmente producto interno de dos vectores).

Ejemplo (consulte la imagen de arriba):

  • la capa de entrada es [matemáticas] x = [x_1 \ x_2 \ x_3 \ x_4 \ x_5 \ x_6 \ x_7] [/ matemáticas]
  • la capa oculta es [matemática] h = [h_1 \ h_2 \ h_3] [/ matemática]
  • el vector de peso es [math] w = [w_1 \ w_2 \ w_3] [/ math] = [ 1 0 -1] que es utilizado por todos (es decir, compartido por) el cálculo de [math] h_1, h_2, h_3: [ /mates]

[matemáticas] h_1 = w \ cdot x [1: 3] [/ matemáticas]

[matemáticas] h_2 = w \ cdot x [3: 5] [/ matemáticas]

[matemáticas] h_3 = w \ cdot x [5: 7] [/ matemáticas]


Por favor, compruebe también esta excelente animación: demostración de convolución

que es “convolución” y “pesos compartidos” entre la matriz :

consulte las redes neuronales convolucionales CS231n para el reconocimiento visual

Los pesos compartidos básicamente significan que se usan los mismos pesos para dos capas en el modelo. Esto básicamente significa que se utilizarán los mismos parámetros para representar dos transformaciones diferentes en el sistema. Esto significa básicamente que los mismos elementos de la matriz pueden actualizarse varias veces durante la propagación inversa desde gradientes variados. El mismo conjunto de elementos facilitará las transformaciones en más de una capa en lugar de las de una sola capa como las convencionales.

Esto generalmente se hace en arquitecturas como la siamesa que tienden a tener troncos paralelos entrenados de forma simultánea. En ese caso, el uso de pesos compartidos en algunas capas (generalmente las capas inferiores) ayuda a que el modelo converja mejor. Este comportamiento, como se observó, puede atribuirse a representaciones de características más diversas aprendidas por el sistema. Dado que las neuronas correspondientes a las mismas características se activan en diversos escenarios. Ayuda a modelar para generalizar mejor.

Aquí hay un pequeño extracto de una serie de conferencias de aprendizaje profundo que estoy escribiendo actualmente. ¡Publicaré todos los tutoriales y el código dentro de unas semanas cubriendo muchos más temas aquí! Entonces sígueme @ ajarai (Goku Mohandas)

Entonces, por ejemplo, si quiero detectar bordes verticales en una imagen, no debería tener que aprender a detectar los bordes verticales en cada una de las 55 * 55 ubicaciones distintas. Con este peso compartido, podemos usar los detectores de funciones aprendidas en todas partes.

More Interesting

Aprendizaje automático: ¿cuáles son las ventajas de SVM sobre las redes neuronales y k- vecinos más cercanos?

El entrenamiento de redes neuronales profundas utilizando la propagación inversa tiene el problema de un gradiente de error que desaparece y que establece un límite sobre cuántas capas se pueden entrenar efectivamente, entonces, ¿por qué no usar un algoritmo genético para entrenar redes profundas, eliminando la propagación de errores?

¿Cuál es la diferencia entre SVM y ANN?

¿Hay alguna diferencia entre el algoritmo de retropropagación utilizado en la etapa de ajuste fino del autoencoder y el algoritmo típico de retropropagación?

¿Cuáles son las áreas de investigación abiertas en refuerzo y aprendizaje profundo?

Cómo analizar un algoritmo de repetición selectiva

¿Qué métricas debo usar para evaluar un modelo generativo cuantitativamente y qué tan confiables son?

¿Cuál es la ventaja de utilizar la función de probabilidad logarítmica frente a la función de probabilidad para la estimación de máxima probabilidad?

¿Es realmente posible comenzar una carrera seria de IA / ML con el objetivo final de trabajar en un lugar como OpenAI, Google o DeepMind a través del autoestudio?

¿Cómo decide Gmail si un correo electrónico es promocional?

¿Es necesario ajustar manualmente la tasa de aprendizaje cuando uso el método de descenso de gradiente estocástico de Adam en la práctica?

¿Hay nueva información sobre el tema X o la gente sigue copiando y pegando?

¿Cómo se realiza el aprendizaje automático supervisado cuando sus datos no caben en una sola máquina? ¿Los clasificadores de libros de texto como los clasificadores SVM o Naive Bayes siguen siendo tan importantes o incluso factibles a medida que aumenta el tamaño de sus datos o los algoritmos diferentes se vuelven más populares?

¿Por qué utilizamos núcleos en algunos modelos de aprendizaje automático?

¿Podemos usar el modelo oculto de Markov para inferir las variables ocultas del universo?