Görüntülerden denetimsiz özellik çıkarımı için GAN nasıl kullanılır?


11

İki ağ (üretken ve ayrımcı) birbirleriyle rekabet ederken GAN'ın nasıl çalıştığını anladım. Şimdi, MNIST veri kümesindekilere benzer el yazısı rakamları başarıyla üreten bir DCGAN (evrişimli ayırıcı ve evrişimsiz jeneratörlü GAN) yaptım.

GAN'ın görüntülerden özellikler çıkarmak için uygulamaları hakkında çok şey okudum. MNIST el yazısı digist görüntülerinden özellik çıkarmak için eğitimli GAN modelimi (MNIST veri kümesinde) nasıl kullanabilirim?


Özellik çıkarma için 128 * 120 (yani 64 + 32 + 16 + 8) = 15360 özellik boyutunu alıyorum. Bir şey eksik olduğuma eminim. Özellikler vektörü seçimiyle ilgili başka bir sorum var. Özellik çıkarma sırasında (conv2d + batchnorm + aktivasyon) ağırlıklarını mı yoksa yalnızca conv2d ağırlıklarını mı dikkate almalıyım?
Tanmoy Barajı

Yanıtlar:


5

Genellikle özellikleri ayıklamak için, çıktıdan önce ağın üst katmanını kullanabilirsiniz. Sezgi, bu özelliklerin lineer olarak ayrılabilmesidir, çünkü üst katman sadece bir lojistik regresyondur.

GAN'lar için, ayrımcıdan gelen özellikleri kullanabilirsiniz. Giriş, eğitim veri kümesi "gerçek görüntüler" den geliyorsa, bu özelliklerin bir olasılık vermesi beklenir. Radford'un DCGAN belgesinde , diskrimatörün tüm evrişimli katmanlarını kullanırlar ve CIFAR-10 için maksimum bir havuz katmanı özütleme özellikleri çalıştırırlar.

DCGAN'lar tarafından denetlenen görevler için öğrenilen temsilciliklerin kalitesini değerlendirmek için, Imagenet-1k üzerinde eğitim alıyoruz ve daha sonra, her katmanın temsilini 4 × 4 uzamsal bir ızgara oluşturmak için tüm katmanlardan ayırarak tüm katmanlardan ayırıcı özellikleri kullanıyoruz. Bu özellikler daha sonra düzleştirilir ve 28672 boyutlu bir vektör oluşturmak üzere birleştirilir ve bunların üstüne düzenli bir doğrusal L2-SVM sınıflandırıcısı eğitilir.


1

Kenny'nin cevabı doğrudur - evrişim D kullanıyorsanız , yoğundan önce katman çıktısı özellik olarak işlev görebilir. Sezgim, AC-GAN'lar (veya sahte veya gerçek olup olmadığını belirlemeye ek olarak D'yi sınıflandıran benzer mimariler) için daha iyi çalışacağıdır.

Oluşturulan ve eğitim örneklerini jeneratörü "başlatmak" için kullanılan gizli dağıtım z'ye eşleştirebilen bir Enkoder bileşeni ekleyen BiGAN adı verilen bir yaklaşım vardır . Yazarlar, transfer öğrenimi ve diğer görevler için etkili bir özellik seti olarak kullanılabileceğini göstermektedir.


0

GAN iki bölümden oluştuğundan - jeneratör ve ayırıcı, GAN'ı özellik çıkarıcı olarak kullanmanın iki yolu vardır:

  1. Mikhail Yurasov tarafından sunulan jeneratör tabanlı yol.
  2. Kenny tarafından sunulan ayrımcı tabanlı bir yol.

İkinci yol daha tartışmalıdır. Bazı çalışmalar [1] sezgisel olarak, ayrımcıların hedefi, üretilen numuneleri gerçek numunelerden ayırmak olduğunu, sadece bu iki tür numune arasındaki farka odaklanacağını düşündü. Ancak mantıklı olan, gerçek görevler arasındaki farktır, ki bu da alt görevler tarafından kullanılan örneklerdir.

Bunu incelemeye çalıştım ve çıkarılan özelliğin iki dikey alt alana çarpanlarına ayrılabileceğini buldum . İlk alan, ayrımcı görevine katkıda bulunurken, ikincisi ondan özgürdür. Çoğu durumda olduğu gibi, gerçek örnekleri üretilenlerden ayırt etmek için kullanılan özellikler gürültüdür, ikinci özellik alanı gürültüsüz olacaktır. Bu açıdan bakıldığında, ayrımcı görevi, aşağı akış görevleri için yararlı olan gerçek örnekler arasındaki farka odaklanmayacak olsa da, ikinci alt boşlukta yer alan gürültüsüz özellikler çalışacaktır.

[1] Jost Tobias Springenberg. Kategorik Üretken Düşman Ağları ile Gözetimsiz ve Yarı Denetimli Öğrenme. arXiv: 1511.06390 [cs, stat], Nisan 2016. arXiv ön baskı. arXiv: 1511.06390 [stat.ML]. Ithaca, NY: Cornell Üniversitesi Kütüphanesi.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.