Apa perbedaan antara “equivariant to translation” dan “invariant to translation”

38

Saya mengalami kesulitan memahami perbedaan antara equivariant ke terjemahan dan invariant to translation .

Dalam buku Deep Learning . MIT Press, 2016 (I. Goodfellow, A. Courville, dan Y. Bengio), dapat ditemukan di jaringan konvolusional:

  • [...] bentuk tertentu dari berbagi parameter menyebabkan layer memiliki properti yang disebut equivariance to translation
  • [...] pooling membantu membuat representasi menjadi kurang penting untuk terjemahan kecil dari input

Apakah ada perbedaan di antara mereka atau istilah yang digunakan secara bergantian?

Aamir
sumber
2
Di masa lalu Statistik, seperti pada zaman Pitman, invarian digunakan dalam arti equivariant.
Xi'an

Jawaban:

39

Ekuivarian dan invarian kadang-kadang digunakan secara bergantian. Seperti yang ditunjukkan oleh @ Xi'an , Anda dapat menemukan kegunaan dalam literatur statistik, misalnya pada gagasan penaksir invarian dan terutama penaksir Pitman .

Namun, saya ingin menyebutkan bahwa akan lebih baik jika kedua istilah tetap terpisah , karena awalan " in- " dalam invarian adalah privatif (artinya "tidak ada varians" sama sekali), sedangkan " equi " dalam equivariant mengacu pada "beragam dalam proporsi yang serupa atau setara ". Dengan kata lain, yang satu tidak bergerak, yang lain tidak .

Mari kita mulai dari fitur gambar sederhana, dan anggaplah bahwa gambar saya memiliki maksimum yang unik m di lokasi pixel spasial (xm,ym) , yang di sini fitur klasifikasi utama. Dengan kata lain: gambar dan semua terjemahannya adalah "sama". Yang menarik dari pengklasifikasi adalah kemampuan mereka untuk mengklasifikasikan dengan cara yang sama beberapa versi terdistorsisaya darisaya , misalnya terjemahan oleh semua vektor (kamu,v) .

Nilai maksimum m dari I adalah invarian : m=m : nilainya sama. Sementara lokasinya akan berada di (xm,ym)=(xm-kamu,ym-v) , dan bersifatekuivalen, artinyabervariasi "sama" dengan distorsi.

Formulasi tepat yang diberikan dalam matematika untuk ekivalensi bergantung pada objek dan transformasi yang dipertimbangkan, jadi saya lebih suka di sini gagasan yang paling sering digunakan dalam praktik (dan saya bisa disalahkan dari sudut pandang teoretis).

Di sini, terjemahan (atau tindakan yang lebih umum) dapat dilengkapi dengan struktur grup G , g menjadi satu operator terjemahan spesifik. Fungsi atau fitur f adalah invarian di bawah G jika untuk semua gambar dalam kelas, dan untuk g ,

f(g(saya))=f(saya).

Ini menjadi sama jika ada struktur matematika lain atau tindakan (sering kelompok) G yang mencerminkan transformasi dalam G dengan cara yang bermakna . Dengan kata lain, sedemikian rupa sehingga untuk setiap g , Anda memiliki satu unik gG sedemikian rupa

f(g(saya))=g(f(saya)).

Dalam contoh di atas pada kelompok terjemahan, g dan g adalah sama (dan karenanya G=G ): terjemahan bilangan bulat dari gambar mencerminkan terjemahan yang sama persis dengan lokasi maksimum.

Definisi umum lainnya adalah:

f(g(saya))=g(f(saya)).

Namun saya digunakan berbeda berpotensi G dan G karena kadang-kadang f(saya) dan g(saya) tidak dalam domain yang sama. Ini terjadi misalnya dalam statistik multivariat (lihat misalnyaSifat kesetaraan dan invarian dari fungsi kuantil dan terkait multivariat, dan peran standardisasi). Namun di sini, keunikan pemetaan antarag dang memungkinkan untuk kembali ke transformasi semulag .

Seringkali, orang menggunakan istilah invarian karena konsep equivariance tidak diketahui, atau semua orang menggunakan invarian, dan equivariance akan tampak lebih bertele-tele.

Sebagai catatan, gagasan terkait lainnya (khususnya dalam matematika dan fisika) disebut kovarians , contravariance , invarian diferensial .

Selain itu, terjemahan-invarian, setidaknya perkiraan, atau dalam amplop, telah menjadi pencarian beberapa alat pemrosesan sinyal dan gambar. Khususnya, transformasi multi-rate (filter-bank) dan multi-skala (wavelet atau piramida) telah dirancang dalam 25 tahun terakhir, misalnya di bawah tenda shift-invariant, siklus berputar, stasioner berputar, stasioner, kompleks, dual-tree transformasi wavelet (untuk ulasan tentang wavelet 2D, Panorama pada representasi geometris multiskala ). Wavelet dapat menyerap beberapa variasi skala diskrit. Semua tesis (perkiraan) invariansi seringkali datang dengan harga redundansi dalam jumlah koefisien yang diubah. Tetapi mereka lebih cenderung menghasilkan fitur shift-invariant, atau shift-equivarian.

Laurent Duval
sumber
4
Besar! Saya sangat mengagumi upaya Anda untuk balasan terinci @Laurent Duval
Aamir
25

Syaratnya berbeda:

  • Setara dengan terjemahan berarti bahwa terjemahan fitur input menghasilkan terjemahan output yang setara. Jadi jika pola Anda 0,3,2,0,0 pada input menghasilkan 0,1,0,0 pada output, maka pola 0,0,3,2,0 mungkin mengarah pada 0,0,1, 0

  • Invarian ke terjemahan berarti bahwa terjemahan fitur input tidak mengubah output sama sekali. Jadi jika pola Anda 0,3,2,0,0 pada input menghasilkan 0,1,0 pada output, maka pola 0,0,3,2,0 juga akan mengarah ke 0,1,0

Agar peta fitur dalam jaringan konvolusional bermanfaat, mereka biasanya membutuhkan kedua properti dalam keseimbangan. Ekuivarians memungkinkan jaringan untuk menggeneralisasi deteksi tepi, tekstur, bentuk di lokasi yang berbeda. Invarian tersebut memungkinkan lokasi yang tepat dari fitur yang terdeteksi menjadi lebih penting. Ini adalah dua jenis generalisasi komplementer untuk banyak tugas pemrosesan gambar.

Neil Slater
sumber
Fitur yang diterjemahkan menghasilkan output yang diterjemahkan di beberapa lapisan. Tolong jelaskan tentang seluruh objek yang diterjemahkan secara luas yang terdeteksi. Tampaknya akan terdeteksi bahkan jika CNN tidak dilatih dengan gambar yang berisi posisi berbeda? Apakah kesetaraan berlaku dalam kasus ini (terlihat lebih mirip dengan invarian)?
VladimirLenin
@VladimirLenin: Saya kira elaborasi tidak diperlukan untuk pertanyaan ini, jelas bukan sesuatu yang ditanyakan OP di sini. Saya sarankan Anda mengajukan pertanyaan terpisah, dengan contoh konkret jika memungkinkan. Bahkan jika secara visual "seluruh objek" telah diterjemahkan, itu tidak berarti peta fitur di CNN melacak hal yang sama seperti yang Anda harapkan.
Neil Slater
4

Hanya menambahkan 2 sen saya

f:sayaL.sayaL. (Label Set) dalam proses 2 langkah yaitu

  • f:sayaL. memetakan Input ke Latent Semantic Space
  • f:L.L.

dan itu dilakukan dengan menggunakan properti berikut

  • kesetaraan spasial, mengenai ConvLayer (Konvolusi 2D Spasial + NonLin misalnya ReLU) karena perubahan dalam Input Layer menghasilkan perubahan dalam Output Layer (Catatan: ini tentang Layer, bukan Operator Konvolusi tunggal)
  • invarian spasial, mengenai Pooling Operator (mis. Max Pooling melewati nilai maksimum di bidang reseptifnya terlepas dari posisi spasialnya)

saya

L. dan semakin penting invarian spasial sebagai makna spesifik gambar yang diinginkan untuk menjadi independen dari posisi spasial fitur.

Menggunakan lapisan yang sepenuhnya terhubung di frontend membuat classifier sensitif terhadap posisi fitur pada batas tertentu, tergantung pada struktur backend: semakin dalam dan semakin banyak operator invarian terjemahan (Pooling) yang digunakan

Telah ditunjukkan dalam Mengukur Penerjemahan-Invarians dalam Jaringan Syaraf Konvolusional yang meningkatkan CNN Classifier Translation Invariance, alih-alih bertindak berdasarkan bias induktif (arsitektur maka kedalaman, penggabungan, ...) lebih efektif untuk bertindak pada bias dataset (data augmentation) )

Nicola Bernini
sumber