20 votos

Lo que hace la convolución paso en un Convolucional de la Red Neuronal hacer?

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:

  1. 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.
  2. 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).

enter image description here

  1. 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.

16voto

Brian Low Puntos 3642

Primera vez que voy a tratar de compartir algunos intuición detrás de la CNN y, a continuación, comentar los temas particulares que usted enumeró.

La convolución y sub-muestreo de capas en CNN no son diferentes de los de las capas ocultas en común MLP, yo. e. su función es la de extraer características de su entrada. Estas características se dan a la siguiente capa oculta para extraer aún más complejas funciones, o se hacen directamente a un estándar de clasificador a la salida de la predicción final (generalmente un Softmax, pero también SVM o cualquier otro puede ser utilizado). En el contexto de reconocimiento de imágenes, estas características son imágenes de la trata, como el trazo de patrones en las capas inferiores de objetos y piezas en las capas superiores.

En las imágenes naturales de estas características tienden a ser los mismos en todos los lugares. Reconociendo un cierto trazo del patrón en el medio de las imágenes serán tan útiles como el reconocimiento de que cerca de las fronteras. Así que ¿por qué no replicar las capas ocultas y conectar múltiples copias de la misma en todas las regiones de la imagen de entrada, por lo que las mismas características puede ser detectado en cualquier lugar? Es exactamente lo que CNN no, pero en una forma eficiente. Después de la replicación (el "convolución" paso) vamos a agregar una sub-muestra de paso, que se puede implementar de muchas maneras, pero no es nada más que una sub-muestra. En teoría, este paso podría ser incluso eliminado, pero que en la práctica es esencial para que el problema no sea manejable.

Por lo tanto:

  1. Correcto.
  2. Como se explicó anteriormente, las capas ocultas de la CNN se cuentan con extractores como en un salón de la MLP. El alternado de convolución y sub-muestreo de pasos que se realizan durante el entrenamiento y la clasificación, así que no son algo que se hace "antes de que" el procesamiento real. Yo no llamaría a ellos "pre-procesamiento", de la misma manera que las capas ocultas de un MLP no se llama así.
  3. Correcto.

Una buena imagen que ayuda a entender la convolución es la página de la CNN en el ULFDL tutorial. Pensar en una capa oculta con una sola neurona que se encuentra capacitado para extraer características de $3 \times 3$ parches. Si nos convolución esta sola aprendido cuentan con más de un $5 \times 5$ de imagen, este proceso puede ser representado por el siguiente gif:

enter image description here

En este ejemplo estamos usando una sola neurona en nuestra función de extracción de la capa, y se generaron $9$ convoluciona características. Si tuviéramos un mayor número de unidades en la capa oculta, sería claro por qué el sub-muestreo de paso después de esto es necesario.

La posterior convolución y sub-muestreo pasos se basan en el mismo principio, pero calculada sobre las características extraídas en la capa anterior, en lugar de la prima de los píxeles de la imagen original.

1voto

SimpleLikeAnEgg Puntos 101

No tengo idea de lo que quieres decir con "¿por qué la primera circunvolución paso funciona." A fin de que la CNN para tener éxito se necesita tener muchas capas. Una de las ideas fundamentales detrás de la CNN y muchos otros profunda de los enfoques de aprendizaje es que los grandes señales pueden ser identificados por la correlación espacial de sus partes más pequeñas que pueden ser escasamente representados. En otras palabras, las imágenes podrían parecer complejo, pero que están hechos de una combinación de unos pocos elementos básicos. Para la visión por computador, la línea de base de la estructura en las imágenes se compone, generalmente, de los bordes y las esquinas. CNN intentar aprovechar la escasez de la estructura de una imagen común en busca de estructuras localizadas. Que es lo que la primera capa de la CNN está tratando de determinar. Creo que de una convolución como un partido de filtro que está buscando señales de que coincida con una plantilla específica. Qué tan bien funciona depende de los datos en la mano. Afortunadamente, el mundo está lleno de repetición en una pequeña escala, por lo que la CNN funciona bien para el equipo de tareas en visión.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X