Dari komentar Emre di atas, Bagian 4.4 dari metode teoritis Grup dalam pembelajaran mesin oleh Risi Kondor memiliki informasi terperinci dan bukti tentang membuat metode kernel yang secara inheren memiliki simetri. Saya akan meringkasnya dengan cara yang mudah-mudahan intuitif (saya seorang ahli fisika, bukan ahli matematika!).
Kebanyakan algoritma ML memiliki perkalian matriks seperti,
si=∑jWij xj=∑jWij (e⃗ j⋅x⃗ )
dengan x⃗ sebagai input danWijadalah bobot yang ingin kita latih.
Metode Kernel
Masukkan bidang metode kernel dan biarkan algoritma menangani input melalui,
ssaya= ∑jWsaya j k ( ej, x )
di mana sekarang kita generalisasi untukx , ej∈ X.
Pertimbangkan kelompok G yang bekerja pada X melalui x → Tg( x ) untuk g∈ G . Cara sederhana untuk membuat algoritme kami invarian di bawah grup ini adalah membuat kernel,
kG( x , y)= 1| G |∑g∈ Gk ( x , Tg( y) )
dengank ( x , y) = k ( Tg( x ) , Tg( y) ).
Jadi,
kG( x , Th( y) )= 1| G |∑g∈ Gk ( x , Tgh( y) )= 1| G |∑g∈ Gk ( x , Tg( y) )= 1| G |∑g∈ Gk ( Tg( x ) , y)
k ( x , y) = x ⋅ y
kG( x , Th( y) )= [ 1| G |∑g∈ GTg( x ) ] ⋅ y
Yang menawarkan matriks transformasi yang dapat mensinkronisasi input ke dalam algoritma.
SO (2) Contoh
π2
( x⃗ saya, ysaya) ∈ R2× R
minWjy~saya∑saya12( ysaya- y~saya)2= ∑jWjkG( ej, xsaya) + bsaya
k(x,y)=∥x−y∥2k(x,y)=k(Tg(x),Tg(y))k(x,y)=x⋅y
kG(ej,xi)=14∑n=14∥R(nπ/2) e⃗ j−x⃗ i∥2=14∑n=14(cos(nπ/2)−x⃗ i1)2+(sin(nπ/2)−x⃗ i2)2=14[2x⃗ 2i1+ 2 x⃗ 2saya 2+ ( 1 - x⃗ saya 1)2+ ( 1 - x⃗ saya 2)2+ ( 1 + x⃗ saya 1)2+ ( 1 + x⃗ saya 2)2]= x⃗ 2saya 1+ x⃗ 2saya 2+ 1
jminWy~saya∑saya12( ysaya- y~saya)2= W[ x⃗ 2saya 1+ x⃗ 2saya 2+ 1 ] + bsaya
Yang menghasilkan simetri bola yang diharapkan!
Tic-Tac-Toe
Contoh kode bisa dilihat di sini . Ini menunjukkan bagaimana kita dapat membuat matriks yang mengkodekan simetri dan menggunakannya. Perhatikan bahwa ini sangat buruk ketika saya benar-benar menjalankannya! Bekerja dengan kernel lain saat ini.