“Teorema de Noether profundo”: construindo restrições de simetria


9

Se eu tiver um problema de aprendizado que deva ter uma simetria inerente, existe uma maneira de sujeitar meu problema de aprendizado a uma restrição de simetria para aprimorar o aprendizado?

Por exemplo, se estou fazendo reconhecimento de imagem, talvez queira simetria rotacional 2D. Significa que a versão girada de uma imagem deve obter o mesmo resultado que o original.

Ou, se estou aprendendo a jogar o jogo da velha, girar 90 graus deve render o mesmo jogo.

Alguma pesquisa foi feita sobre isso?



@Emre Thanks! Você conhece algum trabalho fora da CNN?
Aidan.plenert.macdonald 4/17/17

Não, eu só tenho conhecimento superficial desse nicho. Não obstante, CNNs parecer um cenário natural ...
Emre

3
Também devo mencionar a dissertação de doutorado de Risi Kondor, métodos teóricos de grupo em aprendizado de máquina (pdf)
Emre

Respostas:


8

A partir do comentário de Emre acima, a Seção 4.4 dos métodos teóricos de grupo em aprendizado de máquina de Risi Kondor tem informações detalhadas e provas sobre a criação de métodos de kernel que inerentemente possuem simetrias. Vou resumir isso de uma maneira esperançosamente intuitiva (eu sou um físico, não um matemático!).

A maioria dos algoritmos de ML tem uma multiplicação de matrizes como,

si=jWij xj=jWij (ejx)
com x sendo a entrada eWijsendo os pesos que desejam comboio.

Método do Kernel

Digite o domínio dos métodos do kernel e deixe o algoritmo manipular a entrada via,

si=jWij k(ej, x)
onde agora se generalizar parax,ejX.

Considere-se um grupo G que actua em X através xTg(x) para o gG . Uma maneira simples de tornar nosso algoritmo invariável nesse grupo é criar um kernel,

kG(x,y)=1|G|gGk(x,Tg(y))
comk(x,y)=k(Tg(x),Tg(y)).

Então,

kG(x,Th(y))=1|G|gGk(x,Tgh(y))=1|G|gGk(x,Tg(y))=1|G|gGk(Tg(x),y)

Para k(x,y)=xy que funciona para todas as representações unitárias,

kG(x,Th(y))=[1|G|gGTg(x)]y

Que oferece uma matriz de transformação que pode simetrizar a entrada no algoritmo.

Exemplo SO (2)

Na verdade, apenas o grupo que mapeia para π2 rotações para simplificar.

Vamos executar a regressão linear nos dados (xi,yi)R2×R onde esperamos uma simetria rotacional.

Nosso problema de otimização se torna,

minWji12(yiy~i)2y~i=jWjkG(ej,xi)+bi

O núcleo k(x,y)=xy2 satisfaz k(x,y)=k(Tg(x),Tg(y)) . Você também pode usar k(x,y)=xy e uma variedade de núcleos.

Assim,

kG(ej,xi)=14n=14R(nπ/2) ejxi2=14n=14(cos(nπ/2)xi1)2+(sin(nπ/2)xi2)2=14[2xi12+2xi22+(1xi1)2+(1xi2)2+(1+xi1)2+(1+xi2)2]=xi12+xi22+1

j

minWi12(yiy~i)2y~i=W[xi12+xi22+1]+bi

Which yields the expected spherical symmetry!

Tic-Tac-Toe

Example code can be seen here. It shows how we can create a matrix that encodes the symmetry and use it. Note that this is really bad when I actually run it! Working with other kernels at the moment.


Good job, Aidan! If you have time, you can write a more detailed blog post. The community will be most interested.
Emre

1
Not sure what community you are referring to, but I started writing more. I wanted to find a way to estimate the optimal kernel given a set of data. So I optimized entropy on kernel space to intuitively get a new set of features that are symmetrically constrained and also maximally entropic (ie. informative). Now whether that it the right approach. I can't say. Just a warning, the math is a bit of a hack job right now and kind of straight out of stat mech. overleaf.com/read/kdfzdbyhpbbq
aidan.plenert.macdonald

Is there any meaningful approach when the symmetry group is not known?
leitasat

@leitasat How do you know it's symmetric if you don't know the group?
aidan.plenert.macdonald

@aidan.plenert.macdonald from the data. Let's say we have 1000 sets of 100 pictures each, and within each set there are pictures of one object from different viewpoints. Can any algorithm "learn the idea" of SO(3) symmetry and use it on previously unseen objects?
leitasat

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.