profundidad de la imagen comprensión del aprendizaje en los ocho tipos de convolución

directorio

¿Cuáles son Circunvoluciones?

tipo de convolución

Unidimensional convolución

convolución bidimensional

1, de un solo canal de convolución

2, multi-canal de convolución

convolución en tres dimensiones

convolución Empty (convolución dilatada)

Convolución transposición (deconvolución, deconvolución)

profundidad de convolución separable

1 x 1 convolución

convolución de paquetes

PS Apéndice:


¿Cuáles son Circunvoluciones?

  • Matemáticamente, una convolución de tiempo es una función de integración que expresa la cantidad de superposición de una función g, ya que se desplaza sobre otra función f. Matemáticamente, una integral de convolución es una función, la función g representa un cambio en la otra función f la cantidad de superposición.
  • Intutively, una convolución actúa como un mezclador que mezcla una función con otra para dar reducido espacio de datos preservando al mismo tiempo la información. Intuitivamente, como un mezclador de convolución, una función de mezcla con otra función, la reducción de datos al tiempo que conserva información espacio.

En términos de redes neuronales y profundo aprendizaje: el aprendizaje de una red neuronal convolucional y profundidad:

  1. filtro de convolución con los parámetros puede ser aprendido (matriz / vector) para la extracción de características de baja dimensionalidad de los datos de entrada.
  2. Tienen la propiedad de la relación espacial o posicional entre los puntos de entrada de datos almacenados
  3. red neural convolucional mediante el fortalecimiento del patrón de conexión local entre capas adyacentes de las neuronas para el uso del espacio - correlación local.
  4. Convolución se aplica a la entrada de la ventana deslizante (unos pesos del filtro aprendidas pueden ser) concepto, y la generación de una suma ponderada (peso de entrada) como el paso de salida. Y ponderando el espacio de características como la capa de entrada.

Por ejemplo, en el problema de reconocimiento facial, hay una convolución de la capa de imagen de entrada de aprendizaje en los primeros puntos críticos, la siguiente capa de convolución aprendizaje borde y la forma, la capa de cara aprendizaje última convolución. En la presente realización, primero, el espacio de entrada se reduce a un espacio dimensional bajo (representado por punto de información / pixel), y entonces el espacio se reduce a contener (p / forma) del espacio a otro, y finalmente caído en un rostro humano en la imagen clasificación. N-dimensional de convolución puede ser aplicada.


tipo de convolución

El siguiente en la lista de estudio en común y trabajar en el tipo de estructura de la red de convolución, se ilustra la medida de lo posible, utilizar una gran cantidad de mapa en movimiento; secreto que decirte, esta entrevista es el contenido esencial oh, seguimos mirando hacia atrás, se tarda unos 5 minutos.

Unidimensional convolución

La convolución convolución simple unidimensional es típicamente una secuencia de conjuntos de datos (pero también puede ser utilizado para otros casos). Pueden ser utilizados para la extracción de secuencias 1D locales de la secuencia de entrada, y el patrón de identificación parcial dentro de la ventana de convolución. La siguiente figura muestra cómo se aplica un filtro de convolución unidimensional para obtener una nueva secuencia de características. Otro uso común 1D convolución aparece en el campo de la PNL, donde cada frase se representa como una secuencia de palabras.

convolución bidimensional

En el conjunto de datos de imagen, la arquitectura CNN utiliza filtro de convolución principalmente de dos dimensiones. La idea principal es mover la convolución bidimensional en dos direcciones (x, y) mediante la convolución de filtro, los datos de imagen calculados a partir de las características de baja dimensionalidad. La salida es una forma de matriz de dos dimensiones.

1, de un solo canal de convolución

En el estudio de la profundidad, la convolución es el primer elemento de multiplicar-add. Para una imagen que tiene una convolución de canal como se muestra en la figura. Aquí, el filtro es una matriz de 3 x 3 con los elementos [[0,1,2], [2,2,0], [0,1,2]]. Deslizar el filtro en la entrada. En cada posición, que estamos realizando multiplicaciones de elemento y adiciones. Cada lámina tiene una posición final dígitos. La salida final es una matriz 3 x 3.

2, multi-canal de convolución

En muchas aplicaciones, se trata de una imagen que tiene una pluralidad de canales. Un ejemplo típico es una imagen RGB. Cada canal RGB hace hincapié en diferentes aspectos de la imagen original

La figura hacen que el proceso de multicanal deconvolución más claramente. La capa de entrada es una matriz de 5 x 5 x 3, hay tres canales. El filtro es una matriz de 3 x 3 x 3. En primer lugar, el filtro se aplica a cada núcleo son tres canales en la capa de entrada, y se añade, a continuación, realizar la convolución cúbica, generar tres dimensiones de 3 x 3 canales.

El primer paso en la multi-canal de convolución 2D: cada uno de los filtros de kernel se aplica a tres canales en la capa de entrada.

Paso 2D convolución multicanal: Entonces se añaden estos tres canales juntos (por un elemento sumador) para formar un solo canal.

convolución en tres dimensiones

convolución dimensional representa las tres direcciones (x, y, z) movimiento, computación de bajo nivel de características de la aplicación de filtros tridimensionales conjunto de datos, filtro. Su salida es una forma tridimensional del volumen de espacio, tal como un cubo o cuboide. Hay algo de valor en la detección de eventos de vídeo, imágenes médicas en tres dimensiones o similares. No se limitan al espacio en tres dimensiones, sino que también se puede aplicar la imagen de entrada espacial de dos dimensiones a.

convolución Empty (convolución dilatada)

La separación entre las cavidades definidas valor kernel de convolución. En este tipo de convolución, debido a terreno de juego, el aumento de núcleo aceptación, por ejemplo, un núcleo de 3 * 3, relación de expansión de 2, su campo de visión con un núcleo 5 * 5 es el mismo. sigue siendo compleja sin cambios, pero genera características diferentes (una gran observación de campo receptivo, sin costo adicional) en el presente ejemplo.

 

Convolución transposición (deconvolución, deconvolución)

Para muchas aplicaciones, y muchas arquitecturas de red, muchas veces queremos convertir a convolución normal en el sentido opuesto al que queremos llevar a cabo en la muestra. Algunos ejemplos incluyen la generación de una imagen de alta resolución y un mapa de características de bajas dimensiones se asigna a un espacio de alta dimensional, tal como un codificador automático o segmentos semánticas.

Tradicionalmente, la muestra se puede lograr mediante la aplicación de un esquema de interpolación para crear reglas o de forma manual. Sin embargo, las redes neuronales como la arquitectura moderna permite a la red en sí aprender automáticamente la conversión correcta sin necesidad de intervención humana.

Por ejemplo en la figura, se utiliza una aplicación de núcleo 3 x 3 convolución transponer la unidad de entrada 2 x 2 utilizando el marco de relleno 2 x 2 zancada, el tamaño de la salida muestreada de 4 x 4

profundidad de convolución separable

En primer lugar, vamos a convolución profundidad aplicada a la capa de entrada. No estamos utilizando la convolución 2D en un tamaño de 3 x 3 x 3 de un solo filtro, pero se utilizaron los núcleos 3. El tamaño de cada filtro es un 3 x 3 x 1. 1 y el núcleo de cada canal mediante la convolución de la capa de entrada (sólo un canal, pero no todos los canales!). Proporcionar cada uno de tales convolución dimensión de la Fig. 5 x 5 x 1 en. A continuación, apilados juntos para crear figuras 5 x 5 x 3 imagen. Después de eso, nuestro tamaño de salida es de 5 x 5 x 3. Ahora reducimos el tamaño del espacio, pero la profundidad sigue siendo la misma que antes.

Separables convolución profundidad - Paso: Estamos utilizando tres núcleos, en lugar de tener un tamaño de 3 x 3 x 3 en un solo filtro de convolución 2D. El tamaño de cada filtro es un 3 x 3 x 1. Una capa de canal de cada núcleo y la convolución de la entrada (un solo canal, pero no todos los canales). Proporcionar cada uno de tales convolución dimensión de la Fig. 5 x 5 x 1 en. A continuación, apilados juntos para crear figuras 5 x 5 x 3 imagen. Después de eso, nuestro tamaño de salida es de 5 x 5 x 3.

Como una profundidad de convolución separable segundo paso, a fin de ampliar la profundidad, utilizamos 1x1 tamaño convolución kernel es 1x1x3. La imagen de entrada 5 x 5 x 3 y cada uno del contraste del núcleo 1 x 1 x 3, pueden proporcionar un mapeo de tamaño 5 x 5 x 1.

Por lo tanto, después de la aplicación de 128 convolución 1x1, podemos obtener un tamaño de una capa de 5 x 5 x 128.

A través de estos dos pasos, la profundidad será de convolución separable de la capa de entrada (7 x 7 x 3) para una capa de salida (5 x 5 x 128). profundidad de convolución separable de todo el proceso como se muestra en la figura.

Así que, ¿cuál es la ventaja de la profundidad de convolución separable? Eficiencia! En comparación con la convolución 2D, la convolución separable profundidad requiere menos operaciones.

Recordemos calcular el coste ejemplo convolución 2D. Hay 128 3x3x3 tiempos 5x5 núcleo móvil. Es 128 x 3 x 3 x 3 x 5 x 5 = 86.400 multiplicaciones.

¿Qué hay de convolución separable? En un primer paso, la profundidad de convolución con el núcleo se mueve 5x5 3x3x1 3 veces. Fue 3x3x3x1x5x5 = 675 multiplicaciones. 1 x 1 en el núcleo de convolución segundo paso 128 se mueve 5x5 1x1x3 veces. Este es un 128 x 1 x 1 x 3 x 5 x 5 = 9.600 multiplicaciones. Así que en general, la profundidad de convolución separable requiere 675 + 9600 = 10.275 multiplicaciones. Esto es sólo el costo de convolución 2D 12%!

1 x 1 convolución

1 x 1 multiplicado por un número en la convolución de la capa de entrada de cada dígito. Si la capa de entrada tiene una pluralidad de canales, esta convolución producirá efectos interesantes. La siguiente figura ilustra cómo se aplica la convolución de 1 x 1 a las dimensiones de la capa de entrada H x W x D de. Después de que el tamaño del filtro es 1 x 1 x D convolución de 1 x 1, el tamaño de los canales de salida es H x W x 1. Si aplicamos un juntos resultado de convolución tales 1 x 1 N y luego se unió, podemos conseguir una dimensión H x W x capa de salida N.

Inicialmente, el archivo de red de la red propuso 1 x 1 convolución. A continuación, una serie de ventajas, que son altamente utilizado en el 1 x 1 Google convolución Inception es: para reducir las dimensiones para lograr una no lineal altamente eficiente de nuevo computacionalmente eficiente piscina característica incrustación dimensional bajo o convolución

En la figura anterior se puede observar los primeros dos ventajas. 1 x 1 Después de convolución, hemos reducido significativamente en tamaño. Supongamos que los canales de entrada originales 200, 1 x 1 se convolución de estos canales (funciones) en un solo canal. Una tercera ventaja es la convolución después de 1 x 1, se puede añadir, tal como una activación no lineal relu función no lineal permite un aprendizaje más complejo.

convolución de paquetes

En 2012, el grupo presentó convolución en los documentos AlexNet. Esto se logra principalmente por dos red entrenada permite GPU con memoria limitada (GPU 1,5 GB por memoria). El camino AlexNet convolución siguiente muestra dos independiente en la mayoría capa. Se está llevando a cabo a través de dos GPU modelo de paralelización (por supuesto, si hay más de GPU, puede ser paralelización multi-GPU).

A continuación, describimos cómo la convolución trabajo en grupo. En primer lugar, el tradicional convolución 2D, siga estos pasos. En este ejemplo, mediante la aplicación de un filtro 128 (el tamaño de cada filtro es un 3 x 3 x 3), el tamaño (7 x 7 x 3) capa de entrada es convertida en un tamaño de (5 x 5 x 128) la capa de salida. O, en general, mediante la aplicación de núcleos Dout (tamaño de cada hxwx Din) El tamaño (Hin x Win x Din) se convierte en el tamaño de la capa de entrada (Hout x Wout x Dout) de la capa de salida.

Convolución en el paquete, el filtro se divide en diferentes grupos. Cada grupo es responsable de la convolución 2D tradicional con una cierta profundidad. A continuación.

Lo anterior se describe con el banco de dos paquetes de filtro de convolución. En cada banco de filtros, la profundidad de cada filtro es sólo la mitad de la profundidad de la convolución nominal 2D. Tienen una profundidad Din / 2. Cada banco de filtro que comprende Dout filtro / 2. Un primer conjunto de filtro (rojo) y la porción media frontal de la capa de entrada ([:,: 0: Din / 2]) de convolución, y el segundo banco de filtros (azul) y el segundo medio de la convolución de la capa de entrada ([:,:, Din / 2: Din]). Por lo tanto, cada grupo de filtro crea Dout canal / 2. En general, los dos grupos para crear un x Dout / 2 = Dout Canal 2. A continuación, utilizamos estos canales canal Dout apiladas en la capa de salida.


PS Apéndice:

Para introducir un herramientas de visualización proceso de convolución , este proyecto es un proyecto de código abierto github arriba: https://github.com/vdumoulin/conv_arithmetic

https://baijiahao.baidu.com/s?id=1625255860317955368&wfr=spider&for=pc

https://www.kaggle.com/shivamb/3d-convolutions-understanding-use-case/data

Blanco de CV : Nº diseñado para centrarse CV pública (visión por ordenador), las técnicas de IA (inteligencia artificial) campos relacionados con la tecnología, el contenido principal del artículo en todo el C ++, Python de programación, aprendizaje automático (ML), la profundidad del aprendizaje (DL), procesamiento de imágenes OpenCV, etc. tecnología, explorar el fondo de las operaciones puntos, estudio y registro de trabajo comunes, problemas técnicos se aprende a asistente trabajo. Sólo se refiere a la tecnología, el intercambio de conocimientos campo plataforma de CV profesional.

Hay titulares de hoy número de socios pequeños, bienvenido al lugar para prestar atención a: perder dinero primero Sen . Voy a titulares de plataforma hoy para compartir su propia vida, el estudio, el contenido del trabajo, financiera y de otro, gracias. Los mejores deseos
----------------

 

Publicado 74 artículos originales · ganado elogios 64 · vistas 130 000 +

Supongo que te gusta

Origin blog.csdn.net/wsLJQian/article/details/103144552
Recomendado
Clasificación