Self-Supervised visual Feature learning – Jing & Tian


Saya lagi baca paper menarik, judulnya Self-supervised visual feature learning with deep neural network: A survey, karya longlong jing dan yingli tian. Deep Neural network banyak dipake untuk aplikasi vision seperti deteksi obyek, segmentasi semantik, image captioning dll, karena kemampuannya untuk mengenali berbagai level berbeda fitur visual. Model ditraining menggunakan dataset besar seperi ImageNet banyak digunakan sebagai model pre-training dan kemudian di fine-tuning untuk task lain karena 2 alasan:

  1. Parameter yang dipelajari cukup bagus, sehingga training pada task lain bisa konvergen dengan lebih cepat
  2. Jaringan yang ditraining telah mengenali fitur hirarki sehingga dapat mengurangi masalah over-fitting pada training dengan task lain, terutama bila ukuran datasetnya kecil atau labelnya jarang.

Performa deep convolution neural network (convenet) sangat bergantung pada jumlah data training. Ada banyak arsitektur yang ada misalnya AlexNet, VGG, GoogLeNet, ResNet dan DenseNet maupun dataset besar seperti ImageNet, OpenImage. Namun mengumpulkan dan memberi label dataset membutuhkan waktu dan biaya besar.

Imagenet yang sering digunakan untuk pre-training jaringan Convnet 2D memiliki 1,3 juta gambar berlabel, dengan 1000 kelas dimana setiap gamber diberi label oleh orang satu label kelas. Untuk dataset video pengumpulan dan anotasinya lebih mahal. Dataset Kinetik yang digunakan untuk training convnet untuk pengenalan human action memiliki 500 ribu video terbagi dalam 600 kategori. Setiap video memiliki panjang 10 detik. Dataset ini diberi label oleh para pekerja amazon turk.

Untuk mengatasi mahalnya dan lamanya proses labeling, berbagai metode Self-supervised diajukan untuk mempelajari fitur visual dari kumpulan gambar tidak berlabel maupun video.Pendekatan yang dilakukan adalah dengan mengajukan berbagai metode pretext task, network di training dengan mempelajari objective function dari pretext task dan fitur-fitur dipelajari pada proses ini. Beberapa pretext-task ini diantaranya pewarnaan gambar grayscale, image inpainting (rekonstruksi bagian gambar yang rusak atau hilang), Image Jigsaw puzzle (menyusun potongan gambar, dll.

Pretext task ini umumnya memiliki dua kesamaan:

  1. Fitur dari gambar atau video dipelajari oleh convnet untuk menyelesaikan pretext task
  2. Pseudo label dari pretext task digenerate secara otomatis berdasarkan atribut dari gambar maupun video

Model SSL yang digunakan biasanya seperti pada gambar diatas. Pada saat training, pretext task dirancang untuk diselesaikan oleh convnets, pseudo label dari pretext task kemudian digenerate secara otomatis berdasarkan beberapa atribut data. Kemudian Convnet ditraining untuk mempelajari fungsi dari pretext task. Setelah training, fitur yang dipelajari ditransfer ke downstream task sebagai model pretraining untuk meningkatkan performa dan mengatasi overfitting. Terutama bila hanya ada data dalam jumlah terbatas.

Secara umum, layer permulaan (shallow) menangkap fitur low-level umum seperti edges, corner dan tekstur. Sementara layer yang lebih dalam (deep) menangkap fitur high-level. Sehingga visual fitur dari layer-layer awal dapat ditransfer selama fase training supervised downstream.

Sampai disini dulu besok insyaallah saya lanjutkan.

Papernya bisa dilihat pada link berikut :

https://arxiv.org/abs/1902.06162


Silahkan tuliskan tanggapan, kritik maupun saran