Estoy estudiando convolucional redes neuronales (CNNs) debido a sus aplicaciones en visión por computador. Ya estoy familiarizado con el estándar de alimentación-foward redes neuronales, así que estoy esperando que alguna gente de aquí me puede ayudar a tomar un paso más en la comprensión de CNNs. He aquí lo que pienso acerca de CNNs:
- En la tradicional feed-foward NNs, tenemos datos de entrenamiento, donde cada elemento consta de una función vectorial que tenemos a la entrada de la NN en el "capa de entrada", así con reconocimiento de imagen, que podría tener cada pixel ser una entrada. Esos son nuestros función de los vectores. Alternativamente, podríamos crear manualmente los demás -- probablemente más pequeños -- función de los vectores.
- La ventaja de la CNN Es que puede generar más fuerte característica de vectores que son más invariable con respecto a la distorsión de la imagen y posición. Como muestra la siguiente imagen (de este tutorial), CNNs generar los mapas de características que se alimenta entonces a un estándar de red neuronal (así que en realidad es un gigante de pre-procesamiento de paso).
- La forma en que hacemos los "mejores" características es por la alternancia de convolución y sub-muestreo. Entiendo lo de sub-muestreo de las obras. Para cada característica de mapa, acaba de tomar un subconjunto de los píxeles, o podemos calcular el promedio de los valores de los píxeles.
Pero de lo que estoy principalmente confundido es cómo la convolución paso funciona. Estoy familiarizado con las circunvoluciones de la teoría de la probabilidad (de densidad de la suma de dos variables aleatorias), pero ¿cómo funcionan en CNNs, y por qué son eficaces?
Mi pregunta es similar a este , pero en particular, no estoy seguro de por qué la primera circunvolución paso funciona.