paper:MetaFormer es en realidad lo que necesita para la visión
github: https://github.com/sail-sg/poolformer
aistudio: ¿ sin GPU? Experiencia Tesla V100 PoolFormer en línea
Los transformadores han demostrado un gran potencial en las tareas de visión por computadora, y una opinión común es que los módulos mezcladores de fichas basados en la atención hacen que los transformadores sean competitivos. Pero después de reemplazar la atención con MLP espacial, el modelo todavía tiene muy buenos resultados. Entonces, ¿es la estructura del transformador más que la atención lo que lo hace efectivo? El autor utiliza la capa de agrupación para reemplazar la atención en el transformador y construye el modelo PoolFormer, que ha logrado muy buenos resultados, y la tasa de precisión de ImageNet-1k alcanza el 82,1%. Se demuestra la eficacia de la estructura del Transformador, no la atención.
I. Introducción
Primero, se da la definición de MetaFormer, como se muestra en la figura a continuación, una estructura de transformador estándar, Token Mixer puede ser Atención/MLP espacial y otras estructuras.
Para verificar la validez de la estructura MetaFormer, el autor propone PoolFormer, que utiliza una capa de agrupación muy simple como Token Mixer y verifica su validez.
En segundo lugar, la estructura de la red.
La estructura de red de PoolFormer es muy simple, solo reemplace el módulo de atención de Transformer con Pooling. (Operación aturdida, sin parámetros, cálculo simple, puede ser tan efectivo)
El código de agrupación es el siguiente (tenga en cuenta que hay una agrupación (x)-x):
class Pooling(nn.Module):
"""
Implementation of pooling for PoolFormer
--pool_size: pooling size
"""
def __init__(self, pool_size=3):
super().__init__()
self.pool = nn.AvgPool2d(
pool_size, stride=1, padding=pool_size//2, count_include_pad=False)
def forward(self, x):
return self.pool(x) - x
La configuración específica de PoolFormer es la siguiente:
3. Resultados experimentales
Los resultados experimentales de PoolFormer en ImageNet-1k son los siguientes:
4. Resumen
PoolFormer demuestra la efectividad de la estructura del Transformador.Es increíble que un diseño tan simple de agrupación pueda ser tan efectivo, y estoy de rodillas.