Bagaimana cara menggunakan GAN untuk ekstraksi fitur yang tidak diawasi dari gambar?


10

Saya mengerti bagaimana GAN bekerja sementara dua jaringan (generatif dan diskriminatif) saling bersaing. Saya telah membangun DCGAN (GAN dengan diskriminator convolutional dan generator de-convolutional) yang sekarang berhasil menghasilkan digit tulisan tangan yang mirip dengan yang ada dalam dataset MNIST.

Saya telah membaca banyak tentang aplikasi GAN untuk mengekstraksi fitur dari gambar. Bagaimana cara menggunakan model GAN ​​saya yang terlatih (pada dataset MNIST) untuk mengekstraksi fitur dari gambar-gambar digist tulisan tangan MNIST?


Untuk ekstraksi fitur, saya mendapatkan ukuran fitur 128 * 120 (yaitu 64 + 32 + 16 + 8) = 15360. Saya yakin bahwa saya kehilangan sesuatu. Saya punya pertanyaan lain tentang memilih fitur vektor. Haruskah saya mempertimbangkan (conv2d + batchnorm + aktivasi) bobot atau hanya bobot conv2d selama ekstraksi fitur?
Tanmoy Dam

Jawaban:


4

Biasanya untuk mengekstraksi fitur, Anda dapat menggunakan lapisan atas jaringan sebelum output. Intuisi adalah bahwa fitur-fitur ini terpisah secara linier karena lapisan atas hanyalah regresi logistik.

Untuk GAN, Anda dapat menggunakan fitur dari diskriminator. Fitur-fitur ini seharusnya memberikan probabilitas jika input berasal dari dataset pelatihan, "gambar nyata". Dalam makalah DCGAN karya Radford , mereka menggunakan semua lapisan konvolusional dari diskriminator dan menjalankan fitur ekstrak lapisan kumpulan maksimum untuk CIFAR-10.

Untuk mengevaluasi kualitas representasi yang dipelajari oleh DCGANs untuk tugas-tugas yang diawasi, kami melatih pada Imagenet-1k dan kemudian menggunakan fitur konvolusional diskriminator dari semua lapisan, maxpooling setiap representasi lapisan untuk menghasilkan grid spasial 4 × 4. Fitur-fitur ini kemudian diratakan dan digabungkan untuk membentuk vektor 28672 dimensi dan classifier linier L2-SVM yang terorganisir dilatih di atasnya.


1

Jawaban Kenny benar - jika Anda menggunakan D konvolusional , keluaran lapisan sebelum padat dapat berfungsi sebagai fitur. Intuisi saya adalah bahwa itu akan bekerja lebih baik untuk AC-GAN (atau arsitektur serupa, yang membuat D mengklasifikasikan input selain untuk menentukan apakah itu palsu atau nyata).

Ada pendekatan yang disebut Bigan yang menambahkan Encoder komponen mampu memetakan dihasilkan dan pelatihan sampel untuk distribusi laten z digunakan untuk "menginisialisasi" Generator. Penulis menunjukkan bahwa itu dapat secara efektif digunakan sebagai set fitur untuk pembelajaran transfer dan tugas-tugas lainnya.


0

karena GAN terdiri dari dua bagian - generator dan diskriminator, ada dua cara untuk menggunakan GAN sebagai ekstraktor fitur:

  1. Cara berbasis generator seperti yang disampaikan oleh Mikhail Yurasov.
  2. Cara berbasis diskriminator seperti yang disampaikan oleh Kenny.

Cara kedua lebih kontroversial. Beberapa penelitian [1] berpikir bahwa, secara intuitif, karena target pembeda adalah untuk membedakan sampel yang dihasilkan dari sampel nyata, itu hanya akan fokus pada perbedaan antara dua jenis sampel ini. Tapi yang masuk akal adalah perbedaan antara sampel nyata, yaitu sampel yang digunakan oleh tugas hilir.

Saya telah mencoba mempelajari ini, dan saya menemukan bahwa fitur yang diekstraksi dapat difaktorkan menjadi dua subruang ortogonal . Ruang pertama berkontribusi pada tugas diskriminator, sedangkan yang kedua bebas dari itu. Seperti dalam kebanyakan kasus, fitur yang digunakan untuk membedakan sampel nyata dari yang dihasilkan adalah noise, ruang fitur kedua akan bebas noise. Dari perspektif ini, meskipun tugas pembeda tidak akan fokus pada perbedaan antara sampel nyata, yang berguna untuk tugas-tugas hilir, fitur-fitur bebas noise yang terkandung dalam ruang bagian kedua akan bekerja.

[1] Jost Tobias Springenberg. Pembelajaran tanpa pengawasan dan semi-diawasi dengan Jaringan Adversarial Kategorikal Generatif. arXiv: 1511.06390 [cs, stat], April 2016. arXiv pracetak. arXiv: 1511.06390 [stat.ML]. Ithaca, NY: Perpustakaan Universitas Cornell.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.