197 vezes mais rápido que o padrão Atenção! Meta lança mecanismo de atenção multicabeça "Hydra"

Este artigo foi reproduzido do Qubit.

Fengse é enviado do não-si qubit côncavo
| conta pública QbitAI

Embora o Transformer tenha começado a "mostrar seus talentos" em muitas tarefas de visão, ainda há um problema.

Ou seja, é mais caro computacionalmente processar imagens grandes .

Por exemplo, diante de uma imagem 1080p, mais de 60% de seus cálculos são gastos na criação e aplicação da matriz de atenção.

c7cf0111ba80b3555c0416392c42dcba.png

A razão é principalmente porque o número de cabeças de auto-atenção é o quadrado dos tokens, e o número de tokens tem uma relação quadrática com o tamanho do gráfico.

O que pode ser feito?

A boa notícia é—

Agora a Meta criou um método de operação de atenção multicabeça , que pode ser 197 vezes mais rápido do que a atenção padrão !

E ao aumentar a velocidade de cálculo, não sacrificará a taxa de precisão e, às vezes, até melhorará a taxa de precisão em 1-2 pontos.

da31e06828c43d30ae689361492edcc5.png

O que está acontecendo?

A fonte das ideias é um "ponto contraditório"

Este método é chamado Hydra Attention , principalmente para o Vision Transformer.

("Hydra" tem o significado de "Hydra", que vem da mitologia grega.)

A ideia de Atenção Hidra decorre de um ponto um tanto contraditório na atenção linear :

Usando a auto-atenção padrão de várias cabeças, adicionar mais cabeças ao modelo mantém o cálculo constante.

E depois de alterar a ordem das operações em atenção linear, adicionar mais cabeças realmente reduz o custo computacional da camada.

Portanto, ao configurar o número de cabeças de atenção no modelo para o número de recursos , o autor cria um módulo de atenção no qual o cálculo do token e do recurso é linear, de modo a maximizar as características acima.

Especificamente:

4e175ed4952a212bbe87c777a924e7d3.png

Enquanto as cabeças de auto-atenção padrão são o quadrado do número de tokens (O(T2D)), usando um kernel decomponível, reorganizamos a ordem das operações para que o número de cabeças de atenção se torne o quadrado do traço D.

Em seguida, use o Hydra Trick para maximizar o número de cabeças de atenção H, deixe H = D e, finalmente, pode ser reduzido a uma operação simplificada O(TD) no espaço e no tempo.

Dentre eles, a base do Hydra Trick é mostrada na figura abaixo:

f0576e53eb58049043088d02e523df3a.png

Os autores treinaram modelos DeiT-B com diferentes números de cabeças no ImageNet-1k, incluindo aqueles que usam autoatenção padrão (linha azul, com base em softmax) e aqueles que usam atenção linear multicabeça (linha vermelha, com base na similaridade do cosseno).

O primeiro tem memória insuficiente quando H>96, e o último tem memória insuficiente quando H<3.

Quando eles adicionam mais cabeças ao modelo, a precisão do modelo de atenção Softmax parece entrar em colapso, enquanto a atenção linear multicabeça ainda pode ser consistente, então existe a operação acima.

(Observe que H deve ser dividido por D=768.)

A velocidade é 197 vezes mais rápida e a taxa de precisão pode ser melhorada

Dê uma olhada nas transcrições entregues por Hydra Attention.

Pode-se observar que a atenção Hydra é 197 vezes mais rápida que a atenção padrão (T=197).

À medida que o tamanho da imagem aumenta, aumenta significativamente a contagem de FLOP do modelo, e o custo computacional de criar e aplicar a matriz de atenção é sempre de apenas 0,02% .

591c67fb1d5daac24e64ed982163bfbd.png

Além disso, os autores descobriram que, usando diferentes kernels, o Hydra Attention também pode aumentar a precisão do modelo em cerca de dois pontos percentuais.

1be69014d1b4aea883e3fde810890a40.png

Ou substituir uma camada de atenção específica por Hydra Attention também pode aumentar a precisão do modelo em 1% no ImageNet ou permanecer inalterado em relação à linha de base.

67b2f74f7d6426fa3caa0704f6c20351.png
0da61cb8093f5fabe6f9423b6d9efaac.png

Claro, até 8 camadas podem ser substituídas.

Além disso, os autores afirmaram que esse método deveria ser extensível ao campo da PNL, mas ainda não o experimentaram.

03bfb1a7af32ace421f6fbfe9e39db36.png

Sobre o autor

Esta conquista foi selecionada para o Workshop ECCV 2022 .

Existem 5 autores no total, da Meta AI e do Georgia Institute of Technology.

777aaf82ffb16e6f2dcc6a44e6aa2d35.png

Entre eles, há 3 chineses, a saber:

Cheng-Yang Fu formou-se na Universidade de Tsinghua com mestrado e doutorado na Universidade da Carolina do Norte em Chapel Hill, e agora é um cientista pesquisador em metacomputação visual.

Xiaoliang Dai formou-se na Universidade de Pequim com bacharelado e doutorado pela Universidade de Princeton e trabalha na Meta.

Peizhao Zhang, formado pela Sun Yat-Sen University com bacharelado e mestrado, e Ph.D. pela Texas A&M University nos Estados Unidos, trabalha na Meta há cinco anos.

Endereço do artigo:
https://arxiv.org/abs/2209.07484

Link de referência:
https://www.reddit.com/r/MachineLearning/comments/xgqwvu/r_hydra_attention_functional_attention_with_many/

Acho que você gosta

Origin blog.csdn.net/u014333051/article/details/127002788
Recomendado
Clasificación