Kayıp İşlevleri

GAN'lar bir olasılık dağılımını kopyalamaya çalışır. Bu nedenle, GAN tarafından oluşturulan verilerin dağılımı ile gerçek verilerin dağılımı arasındaki mesafeyi yansıtan kayıp işlevleri kullanmalıdırlar.

GAN kayıp işlevlerinde iki dağılım arasındaki farkı nasıl yakalarsınız? Bu soru, aktif olarak araştırılan bir konudur ve birçok yaklaşım önerilmiştir. Burada, her ikisi de TF-GAN'da uygulanan iki yaygın GAN kayıp işlevini ele alacağız:

TF-GAN, diğer birçok kayıp işlevini de uygular.

Bir Kayıp Fonksiyonu mu yoksa İki Kayıp Fonksiyonu mu?

GAN'larda iki kayıp işlevi olabilir: biri üreten eğitimi, diğeri ayırt edici eğitimi için. İki kayıp işlevi, olasılık dağılımları arasındaki mesafe ölçümünü yansıtmak için birlikte nasıl çalışabilir?

Burada inceleyeceğimiz kayıp şemalarında, üreten ve ayırıcı kayıpları, olasılık dağılımları arasındaki tek bir mesafe ölçümünden türetilir. Ancak bu şemalarda jeneratör, mesafe ölçümünde yalnızca bir terimi etkileyebilir: sahte verilerin dağılımını yansıtan terim. Bu nedenle, üretken eğitim sırasında gerçek verilerin dağılımını yansıtan diğer terimi kaldırırız.

Tek bir formülden türetilmiş olsalar bile, üreten ve ayırt edici kayıplar sonunda farklı görünür.

Minimaks kaybı

GAN'ların tanıtıldığı makalede, üretici aşağıdaki işlevi en aza indirmeye çalışırken ayırt edici işlev bu işlevi en üst düzeye çıkarmaya çalışır:

Ex[log(D(x))]+Ez[log(1D(G(z)))]

Bu işlevde:

  • D(x), ayırt edici özelliğin gerçek veri örneği x'in gerçek olma olasılığıyla ilgili tahminidir.
  • Ex, tüm gerçek veri örnekleri için beklenen değerdir.
  • G(z), z gürültüsü verildiğinde üretecin çıkışıdır.
  • D(G(z)), ayırt edici özelliğin sahte bir örneğin gerçek olma olasılığıyla ilgili tahminidir.
  • Ez, üreticideki tüm rastgele girişler için beklenen değerdir (aslında, oluşturulan tüm sahte örnekler G(z) için beklenen değerdir).
  • Formül, gerçek ve oluşturulan dağıtımlar arasındaki çapraz entropi'den türetilir.

Jeneratör, işlevdeki log(D(x)) terimini doğrudan etkileyemez. Bu nedenle, jeneratör için kaybı en aza indirmek log(1 - D(G(z))) değerini en aza indirmekle eşdeğerdir.

TF-GAN'da bu kayıp işlevinin uygulanması için minimax_discriminator_loss ve minimax_generator_loss işlevlerine bakın.

Değiştirilmiş Minimaks Kaybı

Orijinal GAN makalesinde, yukarıdaki minimax kayıp işlevinin, ayırt edici işlevi çok kolay olduğunda GAN'ın GAN eğitiminin ilk aşamalarında takılmasına neden olabileceği belirtilmektedir. Bu nedenle makalede, jeneratörün log D(G(z)) değerini en üst düzeye çıkarmaya çalışacak şekilde jeneratör kaybının değiştirilmesi önerilmektedir.

TF-GAN'da bu değişikliğin uygulanması için modified_generator_loss'a bakın.

Wasserstein kaybı

TF-GAN varsayılan olarak Wasserstein kaybını kullanır.

Bu kayıp işlevi, ayırıcının aslında örnekleri sınıflandırmadığı GAN şemasında ("Wasserstein GAN" veya "WGAN" olarak adlandırılır) yapılan bir değişikliğe bağlıdır. Her örnek için bir sayı döndürür. Bu sayının birden küçük veya 0'dan büyük olması gerekmez.Bu nedenle, bir örneğin gerçek mi yoksa sahte mi olduğuna karar vermek için 0,5'i eşik olarak kullanamayız. Ayrıştırıcı eğitimi, gerçek örnekler için çıkışı sahte örneklerden daha büyük hale getirmeye çalışır.

Gerçek ile sahte arasında gerçek bir ayrım yapamadığından, WGAN ayırt edicisine "ayırt edici" yerine "eleştirmen" denir. Bu ayrımın teorik olarak önemi vardır ancak pratik amaçlar için bunu, kayıp işlevlerine verilen girişlerin olasılık olması gerekmediğinin kabulü olarak değerlendirebiliriz.

Kayıp işlevleri aslında aldatıcı derecede basittir:

Eleştirmen kaybı: D(x) - D(G(z))

Ayrıştırıcı bu işlevi en üst düzeye çıkarmaya çalışır. Diğer bir deyişle, gerçek örneklerdeki çıkışı ile sahte örneklerdeki çıkışı arasındaki farkı en üst düzeye çıkarmaya çalışır.

Generator Loss: D(G(z))

Jeneratör bu işlevi en üst düzeye çıkarmaya çalışır. Diğer bir deyişle, ayırt edici özelliğin sahte örnekleri için çıktısını en üst düzeye çıkarmaya çalışır.

Bu işlevlerde:

  • D(x), gerçek bir örnek için eleştirmenin çıkışıdır.
  • G(z), z gürültüsü verildiğinde üretecin çıkışıdır.
  • D(G(z)), eleştirmenin sahte bir örnek için verdiği çıkıştır.
  • D eleştirmeninin çıkışının 1 ile 0 arasında olması zorunludur.
  • Formüller, gerçek ve oluşturulan dağılımların yer değiştirici mesafesinden türetilir.

TF-GAN'da, uygulamalar için wasserstein_generator_loss ve wasserstein_discriminator_loss değerlerine bakın.

Şartlar

Wasserstein GAN'ın (veya WGAN'ın) teorik gerekçesi, GAN'daki ağırlıkların kısıtlanmış bir aralık içinde kalması için kırpılmasını gerektirir.

Avantajları

Wasserstein GAN'lar, minimax tabanlı GAN'lara kıyasla takılmaya karşı daha az savunmasızdır ve gradyanların kaybolmasıyla ilgili sorunları önler. Yer değiştiren mesafenin gerçek bir metrik olma avantajı da vardır: olasılık dağılımı alanındaki mesafe ölçümüdür. Çapraz entropi bu anlamda bir metrik değildir.