Estou tendo problemas para entender a diferença entre equivariante para tradução e invariante para tradução .
No livro Deep Learning . MIT Press, 2016 (I. Goodfellow, A. Courville e Y. Bengio), pode-se encontrar nas redes convolucionais:
- [...] a forma específica de compartilhamento de parâmetros faz com que a camada tenha uma propriedade chamada equivalência à conversão
- [...] o pool ajuda a tornar a representação aproximadamente invariável a pequenas traduções da entrada
Existe alguma diferença entre eles ou os termos são usados de forma intercambiável?
Respostas:
Às vezes, equivalência e invariância são usadas de forma intercambiável. Como apontado por @ Xi'an , você pode encontrar usos na literatura estatística, por exemplo, nas noções do estimador invariante e, especialmente, do estimador de Pitman .
No entanto, gostaria de mencionar que seria melhor se ambos os termos se mantivessem separados , já que o prefixo " in " em invariante é privativo (significando "nenhuma variação"), enquanto " equi- " em equivarante se refere a "variação numa proporção semelhante ou equivalente ". Em outras palavras, um não se move, o outro se move .
Vamos começar com recursos simples de imagem, e suponha que a imagemI tenha um máximo máximo de m na localização do pixel espacial (xm,ym) , que é aqui o principal recurso de classificação. Em outras palavras: uma imagem e todas as suas traduções são "iguais" . Uma propriedade interessante dos classificadores é sua capacidade de classificar da mesma maneira algumas versões distorcidas I′ de I , por exemplo, traduções por todos os vetores (u,v) .
O valor máximom′ de I′ é invariável : m′=m : o valor é o mesmo. Enquanto sua localização será em (x′m,y′m)=(xm−u,ym−v) , e é equivariante , o que significa que varia "igualmente" com a distorção .
As formulações precisas dadas em matemática para a equivalência dependem dos objetos e transformações que se considera, então prefiro aqui a noção que é usada com mais frequência na prática (e posso ser responsabilizado do ponto de vista teórico).
Aqui, as traduções (ou alguma acção mais genérico) pode ser equipada com a estrutura de um grupoG , g sendo um específico operador de tradução. Uma função ou característica f é invariável em G se para todas as imagens de uma classe e para qualquer g ,
f(g(I))=f(I).
Torna-se equivariante se existe outra estrutura ou ação matemática (geralmente um grupo)G′ que reflete as transformações em G maneira significativa . Em outras palavras, de modo que, para cada g , você tenha um único g′∈G′ tal que
No exemplo acima, no grupo de traduções,g e g′ são os mesmos (e, portanto, G′=G ): uma tradução inteira da imagem reflete como a mesma tradução exata do local máximo.
Outra definição comum é:
I no entanto usado potencialmente diferenteG e G′ , porque às vezes f(I) e g(I) não estão no mesmo domínio. Isso acontece, por exemplo, em estatísticas multivariadas (consulte, por exemplo, propriedades de equivalência e invariância de quantil multivariado e funções relacionadas, e o papel da padronização ). Mas aqui, a singularidade do mapeamento entre g e g′ permite retornar à transformação original g .
Freqüentemente, as pessoas usam o termo invariância porque o conceito de equivalência é desconhecido, ou todo mundo usa invariância, e a equivalência parece mais pedante.
Para o registro, outras noções relacionadas (especialmente em matemática e física) são denominadas covariância , contravariância , invariância diferencial .
Além disso, a invariância da tradução, no mínimo aproximada ou em envelope, tem sido uma busca por várias ferramentas de processamento de sinal e imagem. Notavelmente, as transformações de várias taxas (bancos de filtros) e de várias escalas (wavelets ou pirâmides) foram projetadas nos últimos 25 anos, por exemplo, sob o capô de invariantes por turnos, rotações de ciclo, estacionárias, complexas e de duas árvores. transformações de wavelet (para uma revisão em wavelets 2D, um panorama sobre representações geométricas em várias escalas ). As wavelets podem absorver algumas variações discretas de escala. Todas as invariâncias (aproximadas) de teses geralmente vêm com o preço da redundância no número de coeficientes transformados. Porém, é mais provável que eles apresentem características invariantes à mudança ou equivalentes à mudança.
fonte
Os termos são diferentes:
Equivariante à tradução significa que uma tradução de recursos de entrada resulta em uma tradução equivalente de resultados. Portanto, se seu padrão 0,3,2,0,0 na entrada resultar em 0,1,0,0 na saída, o padrão 0,0,3,2,0 poderá levar a 0,0,1, 0 0
Invariante para conversão significa que uma conversão de recursos de entrada não altera as saídas. Portanto, se o seu padrão 0,3,2,0,0 na entrada resultar em 0,1,0 na saída, o padrão 0,0,3,2,0 também levaria a 0,1,0
Para que os mapas de recursos em redes convolucionais sejam úteis, eles geralmente precisam de ambas as propriedades em algum equilíbrio. A equivalência permite que a rede generalize a detecção de arestas, texturas e formas em diferentes locais. A invariância permite que a localização precisa dos recursos detectados seja menos importante. Esses são dois tipos complementares de generalização para muitas tarefas de processamento de imagem.
fonte
Apenas adicionando meus 2 centavos
e é realizado usando as seguintes propriedades
O uso de camadas totalmente conectadas no front-end torna o classificador sensível à posição do recurso em alguma extensão, dependendo da estrutura do back-end: quanto mais profundo ele for e mais o operador invariante de conversão (Pooling) será usado
Foi demonstrado em Quantificando a invariância da tradução em redes neurais convolucionais que, para melhorar a invariância da tradução do classificador da CNN, em vez de atuar no viés indutivo (arquitetura, portanto, profundidade, pooling ...), é mais eficaz atuar no viés do conjunto de dados (aumento de dados )
fonte