Red de conocimiento informático - Problemas con los teléfonos móviles - Puntos clave que hay que entender sobre el convertidor Swain

Puntos clave que hay que entender sobre el convertidor Swain

Lo anterior es una introducción a la clasificación, suavizado y división del código fuente. Los amigos que lo necesiten pueden consultar:

1. Código fuente de clasificación de Swin-Transformer (suavizado)

<. p> 2. Swin-Transformer divide el código fuente (suavizado)

3. Swin-Unet (particiona y adapta)

Suponemos que el tamaño de la imagen es 224×224 , y la ventana El tamaño es fijo, 7×7. Cada cuadro aquí es una ventana, y cada ventana es un parche fijo de 7 × 7, pero el tamaño del parche no es fijo y cambiará con la operación de fusión del parche. Por ejemplo, si miramos aquí, el tamaño del parche es 4×4, ¿cómo se convierte en 8×8?

Encontramos que después de esta serie de operaciones, la cantidad de parches continuó disminuyendo. Al final, solo quedó una ventana con 7 parches. Por lo tanto, podemos pensar que la reducción de resolución reduce la cantidad de parches. pero la cantidad de parches El tamaño disminuye constantemente. Por lo tanto, podemos pensar en la reducción de resolución como reducir el número de parches pero aumentar su tamaño.

Esta es una mejora con respecto a ViT. ViT presta atención a la situación general de principio a fin, y el transformador swin es una ventana durante el proceso de ampliación y luego calcula el autoenfoque a través de la ventana, que es. equivalente a introducir Agrega información local y es muy similar al proceso de convolución de CNN. Es similar al proceso de convolución de CNN. Al igual que el tamaño del paso de CNN y el tamaño del núcleo de convolución, las ventanas no se superponen. La diferencia es que CNN realiza cálculos de convolución en cada ventana y cada ventana finalmente obtiene un valor. Este Los valores representan las características de la ventana. El transformador Swin realiza cálculos de autoatención en cada ventana para obtener la ventana actualizada, luego fusiona las ventanas mediante una operación de fusión de parches y luego continúa realizando cálculos de autoatención en las ventanas fusionadas.

La verdad es que este aspecto me molesta un poco, porque en nuestra impresión el downsampling es como CNN, lo que lo hará más pequeño, pero el transformador swin no nos da la sensación de hacerse más pequeño. De hecho, este es el problema de no comprender completamente el campo sensorial. Al final, CNN está diseñado correctamente. El mapa de características final en el campo sensorial también se puede ampliar a la imagen completa. ventana que cubre toda la imagen.

¿Cómo reduce Swin-transformer la complejidad? La diferencia entre este módulo (Swin Transformer Block) y los convertidores comunes es W-MSA, que es el que más contribuye a reducir la complejidad de los cálculos.

Con respecto al cálculo de la complejidad, les daré una breve introducción. El primero es el cálculo de la complejidad global basado en el transformador en sí. Esto es un poco complicado. Los estudiantes interesados ​​pueden discutir el proceso de derivación juntos. después de la reunión. Aquí, asumimos que se sabe que la complejidad de MSA es el cuadrado del tamaño de la imagen. Según la complejidad de MSA, podemos deducir que la complejidad de A es (3 × 3) y la complejidad final es 81. El transformador Swin calcula la autoatención en cada ventana local (parte roja). Según la complejidad de MSA, podemos concluir que la complejidad de cada ventana roja es 1 × 1 al cuadrado, es decir, el cuadrado de 1 y luego 9. ventanas, sumando la complejidad de estas ventanas, la complejidad final de B es 9.

W-MSA reduce la complejidad computacional, pero carece de intercambio de información entre ventanas que no se superponen, por lo que si desea una cierta cantidad de intercambio de información entre ventanas, puede convertir la imagen de la izquierda en la imagen de la derecha como esta , pero esto crea un problema, al hacer esto, hay más ventanas, y algunas de ellas son más pequeñas que las ventanas promedio, como 4 ventanas -> 9 ventanas, más del doble de la cantidad de ventanas. Este método de cálculo vuelve a aparecer. Por lo tanto, tenemos dos objetivos: uno es que el número de ventanas no puede ser demasiado y el otro es que se debe intercambiar información entre ventanas.

Vemos que la imagen original está dividida en 9 ventanas, y el área A en el medio es la prueba del intercambio de información. Primero movemos la parte superior izquierda (ventanas que no sean azules) hacia la parte inferior derecha y luego cortamos la imagen en cuatro partes para separar el área A y lograr el efecto que queremos.

La aparición del transformador no reemplaza a CNN, porque el transformador tiene funciones que CNN no tiene. No solo puede extraer características, sino que también puede hacer muchas cosas que CNN no puede hacer, como multi-. fusión modal. El transformador swin es una tendencia que combina efectivamente las ventajas respectivas de CNN y transformador. Aquí hay algunos detalles para agregar temporalmente. Escuché sobre MLP recientemente, pero aún no lo he leído. Los tiempos avanzan demasiado rápido y el artículo sobre la mejora de ViT que tengo en la mano ha comenzado a perder equilibrio antes de enviarlo.

Espero que te sea útil. Si crees que este artículo te resulta útil, ¡dale me gusta! Si tienes alguna pregunta, también puedes dejar un comentario debajo del artículo y nos comunicaremos y resolveremos el problema juntos.

A continuación se muestra el directorio de todos mis artículos. Si está interesado, también puede consultarlo

. Haga clic a la derecha: ábralo, puede ver muchos artículos útiles.

p>