MoCo – Momentum Contrast – Ishan Misra


Saya lanjutkan pembahasan materi kuliah SSL dari Ishan Misra. Pada tulisan sebelumnya telah dibahas tentang SimCLR dan Memory Bank. Sekarang kita akan bahas teknik berikutnya dari contrastive learning yaitu MoCo atau Momentum Contrast.

MoCo, atau, Momentum Contrast, adalah sebuah metode contrastive method yang menggunakan sebuah memory bank untuk menjaga sebuah momentum aktivass. Metode ini menggunakan 2 encoders. Encoder fθ​ adalah encoder yang akan dipelajari.  Encoder fθEMA​​ mengatur sebuah rata2 fθ yang bergerak secara exponensial.

Selama Forward Pass, setiap sampel di forward melalui kedua encoder. Beberapa embedding dari fθEMA​​ disimpan sebagai embedding negative. Untuk algoritma, embedding original dari fθ​, positive embedding dari fθEMA​​ dan negative embeddings dari sekumpulan kecil embedding yang disimpan.

Keuntungan MoCo:

  • Pemakaian memori dapat dengan mudah diatur , karena tidak perlu menyimpan keseluruhan dataset.
  • online, karena rata2 diupdate secara kontinu

Kerugian of MoCo:

  • Membutuhkan dua Forward Passes, satu melalui fθ​ dan satu lagi melalui fθEMA​​.
  • Diperlukan memori tambahan untuk menyimpan parameter atau fitur

Jadi MoCo ini menggunakan memory bank, cuman online. Teknik ini membutuhkan memori yang lebih kecil. Sampai disini pembahasan tentang contrastive learning. Pada tulisan berikutnya kita akan beralih pada metode clusteing. Semoga Bermanfaat!

Materinya bisa dilihat pada link berikut:

https://atcold.github.io/NYU-DLSP21/en/week10/10-1/

slidenya ada disini:

https://drive.google.com/file/d/1BQlWMVesOcioW69RCKWCjp6280Q42W9q/edit

Videonya:


Silahkan tuliskan tanggapan, kritik maupun saran