ReLU nöronları için Giriş Normalizasyonu


9

Göre LeCun ve arkadaşları (1998) tarafından "Etkin Backprop" bunların ikinci türev en aralığında yaklaşık 0 ve yalan merkezli şekilde tüm girdilerin normalleştirmek için iyi bir uygulamadır. Örneğin, "Tanh" işlevi için [-0.5,0.5] kullanırdık. Bu, Hessian daha istikrarlı hale geldiğinden geri yayılmanın ilerlemesine yardımcı olmak içindir.

Bununla birlikte, max (0, x) olan Doğrultucu nöronlarla ne yapacağımdan emin değildim. (Ayrıca o zamandan beri lojistik işleviyle [0.1,0.9] gibi bir şey isteriz, ancak bu 0 etrafında ortalanmamıştır)

Yanıtlar:


7

Bildiğim kadarıyla, aradığınız şeylere en yakın şey Google araştırmacılarının bu son makalesi: Toplu Normalleştirme: Dahili Ortak Değişimi Azaltarak Derin Ağ Eğitimini Hızlandırma .

Toplu Normalleştirme

Bir katman düşünün ladlı kullanıcının etkinleştirme çıkışı yl=f(Wx+b) nerede f doğrusal olmama (ReLU, tanh, vb.), W,b sırasıyla ağırlık ve sapmalardır ve x verinin minibatchu.

Toplu Normalizasyon (BN) aşağıdakileri yapar:

  1. Standardize Wx+bortalama sıfır ve varyansa sahip olmak. Bunu minibatch boyunca yapıyoruz. İzin Vermekx^ standart ara aktivasyon değerlerini, yani x^ normalleştirilmiş sürümüdür Wx+b.
  2. Parametreli (öğrenilebilir) bir ilgin dönüşümü uygulama x^γx^+β.
  3. Doğrusal olmayanlığı uygulayın: y^l=f(γx^+β).

Dolayısıyla, BN "raw" (okuma: doğrusal olmayanlığı uygulamadan önce) aktivasyon çıktılarını ortalama sıfır, varyans 1'e sahip hale getirir ve sonra öğrenilmiş bir afin dönüşüm uygular ve son olarak doğrusal olmayanlığı uygularız. Bir anlamda bunu sinir ağının doğrusal olmamaya uygun parametreli bir girdi dağılımı öğrenmesine izin vermek olarak yorumlayabiliriz.

Her işlem farklılaşabildiğinden, γ,β parametreleri geri yayılım yoluyla.

Afin Dönüşüm Motivasyonu

Parametreli bir afin dönüşüm gerçekleştirmeseydik, her lineer olmama girdi dağılımı olarak ortalama sıfır ve varyans 1 dağılımına sahip olurdu. Bu optimalin altında olabilir veya olmayabilir. Ortalama sıfır, varyans 1 giriş dağılımı en uygunsa, afin dönüşümünün teorik olarak ayarlayarak kurtarabileceğini unutmayın.β parti ortalamasına eşit ve γparti standart sapmasına eşittir. Bu parametreleştirilmiş afin dönüşümünün olması, ağın temsil kapasitesini arttırmak için ek bir bonusa sahiptir (daha öğrenilebilir parametreler).

Önce Standartlaştırma

Neden önce standartlaştınız? Neden sadece afin dönüşüm uygulanmıyor? Teorik olarak, hiçbir ayrım yoktur. Ancak, burada bir koşullama sorunu olabilir. İlk olarak aktivasyon değerlerini standardize ederek, belki de optimal öğrenmeyi kolaylaştırırγ,βparametreleri. Bu tamamen benim fikrimdir, ancak son teknolojiye ait diğer modern mimarilerde benzer analoglar olmuştur. Örneğin, son Microsoft Araştırma teknik raporunda Görüntü Tanıma için Derin Artık Öğrenme , aslında kimlik dönüşümünü karşılaştırma için referans veya temel olarak kullandıkları bir dönüşüm öğrendiler. Microsoft ortak yazarları, bu referansa veya taban çizgisine sahip olmanın sorunun önkoşullarına yardımcı olduğuna inanıyordu. Ben burada BN ve ilk standardizasyon adımı ile benzer bir şey olup olmadığını merak için çok getirilmiş olduğuna inanmıyorum.

BN Uygulamaları

Özellikle ilginç bir sonuç, Batch Normalization'ı kullanarak Google ekibinin ImageNet üzerinde eğitim almak ve oldukça rekabetçi sonuçlar elde etmek için tanh Inception ağını elde edebilmesidir. Tanh doyurucu bir doğrusal olmayanlıktır ve doygunluk / yok olma gradyanları sorunu nedeniyle bu tür ağların öğrenilmesini sağlamak zordur. Bununla birlikte, Toplu Normalizasyon kullanılarak, ağın aktivasyon çıktı değerlerini tanh doğrusalsızlıklarının doymamış olmayan rejimine eşleyen bir dönüşüm öğrenebildiği varsayılabilir.

Son Notlar

Hatta Toplu Normalizasyon için motivasyon olarak bahsettiğiniz aynı Yann LeCun factoidine atıfta bulunuyorlar.

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.