Makine öğreniminde ifade yeteneği, eğitim zorluğu ve genelleme performansı nasıl anlaşılır ve değerlendirilir

Leifeng.com AI Technology Review Press: Bu makale Eric Jang'ın kişisel blogundan gelmektedir ve Leifeng.com AI Technology Review izniyle yeniden basılmıştır.

Bu blog yazısını Çince'ye çevirdiği için Jiaxing Wang'a minnettarım.

Makine öğrenimi ile ilgili literatürü okurken, sık sık bu çalışmanın 1) modelin ifade yeteneğini geliştirip geliştirmediğini 2) modeli eğitmeyi kolaylaştırıp 3) modelin genelleme performansını iyileştirip iyileştirmediğini düşündüm. Bu sınıflandırma standardı, Google Brain'deki meslektaşım Jascha Sohl-Dickstein'dan ödünç alınmıştır ve ilgili terimler bu makalede tanıtılmıştır. Bu tür ayrım kriterlerinin, bir araştırma çalışmasının (özellikle teorik çalışmanın) yapay zekanın alt alanlarını (robotik, üretim modelleri, doğal dil işleme vb.) Makine öğrenimi araştırmalarına nasıl entegre ettiğini belirlememize yardımcı olduğunu görüyorum. Büyük resmin bütününde.

Bu blog gönderisinde, mevcut (Kasım 2017 itibarıyla) makine öğrenimi araştırmasını tartışıyoruz: denetimli öğrenme, denetimsiz öğrenme ve bu yönlerden pekiştirmeli öğrenme. Modelin genelleme performansından bahsederken, onu iki kategoriye ayırdım: "zayıf genelleme" ve "güçlü genelleme". Bunları daha sonra ayrı ayrı tartışacağım. Aşağıdaki tablo, gözlerimdeki mevcut araştırma durumunu özetlemektedir:

Bu blog gönderisine geri bildirim ve düzeltme sağladıkları için Jascha Sohl-Dickstein ve Ben Poole'a teşekkürler. Geribildirim sinir ağı (RNN) eğitiminin zorluğunu tartıştığı için Marcin Moczulski'ye ve bu blog gönderisinin gramerini düzelttiği için Joaquin Ruales'e teşekkürler.

Bu blog yazısı, çok çeşitli araştırma alanlarını kapsar ve yalnızca ilgili araştırmalarla ilgili kişisel görüşlerimi ifade eder ve meslektaşlarımın ve şirketin görüşlerini yansıtmaz. Okuyucular tartışabilir ve değişiklik için önerilerde bulunabilir. Lütfen yorumlarda geri bildirimde bulunun veya bana bir e-posta gönderin.

Dışavurum

---- Model ne tür hesaplamalar yapabilir ve ne kadar karmaşık işlevlere uyabilir?

Modelin ifade yeteneği, sinir ağı gibi parametreleştirilmiş bir model tarafından takılabilen işlevin karmaşıklığını ölçmek için kullanılır. Derin sinir ağlarının ifade yeteneği, derinlik indeksi ile artar, bu da orta ölçekli sinir ağlarının denetimli, yarı denetimli ve güçlendirilmiş öğrenme görevlerini ifade etme yeteneğine sahip olduğu anlamına gelir. Derin sinir ağlarının çok büyük veri setlerini hatırlama yeteneği iyi bir kanıttır.

Sinir ağları neredeyse tüm değişkenleri, sürekli, ayrık, gerçek değerli, karmaşık ve hatta rastgele değişkenleri ifade edebilir. Son yıllarda, üretken modeller ve Bayes sinir ağları araştırmalarında, derin sinir ağlarının kullanımı inanılmaz derecede iyi sonuçlar elde etti.

Üretim modelleri araştırmalarındaki son gelişmeler, sinir ağlarının güçlü ifade yeteneğini kanıtladı: sinir ağları, gerçek verilerden neredeyse ayırt edilemeyen son derece karmaşık veri manifoldları (ses ve görüntü veri manifoldları gibi) bulabilir. Aşağıdakiler, NVIDIA araştırmacıları tarafından önerilen üretim çatışması sinir ağlarına dayanan yeni modelin sonuçlarıdır:

Ortaya çıkan görüntü hala mükemmel değil (doğal olmayan arka plana dikkat edin), ancak zaten çok iyi. Benzer şekilde, ses sentezinde, en son WaveNet modelinin ürettiği ses zaten çok insandır.

Denetimsiz öğrenme, üretim modelleriyle sınırlı değildir. Yann LeCun gibi bazı araştırmacılar, denetimsiz öğrenmeyi "öngörülü öğrenme" olarak yeniden adlandırdı: model geçmişten öğrenir, şimdiki zamana etki eder veya geleceği tahmin eder. Bununla birlikte, çoğu denetimsiz öğrenme, son derece karmaşık ortak dağıtımları (görüntüler, ses) tahmin etmeye odaklandığından, üretim modellerinin yeteneğinin denetimsiz öğrenmede model ifadesini değerlendirmek için iyi bir kriter olduğunu düşünüyorum.

Pekiştirmeli öğrenmede, sinir ağları da yeterli ifade gücüne sahip görünüyor. Atari ve MuJoCo kontrol problemlerini çözmek için çok küçük bir ağ (2 evrişimli katman ve 2 tam bağlantılı katman) yeterlidir (eğitimleri hala bir sorun olsa da, bir sonraki bölümde tartışacağız).

Modelin ifade yeteneği çok ilginç bir problem değildir: ağ katmanlarının sayısını artırarak, bağlantıları artırarak ve diğer yollarla her zaman daha güçlü ifade yeteneği elde edebiliriz. Asıl sorun, sinir ağının eğitim ve test setlerinde yeterli ifade yeteneğine sahip olmasını sağlamamız ve eğitimin zorluğunun hala kabul edilebilir bir aralıkta kontrol edilmesidir. Örneğin, görüntü sınıflandırma görevlerini tamamlamak için genellikle iki boyutlu evrişimi kullanırız, ancak nispeten derin, tamamen bağlı bir sinir ağının tüm eğitim setini hatırlamak için yeterli kapasitesi vardır.

Modelin ifade gücü en kolay olanıdır (sadece birkaç katman ekleyin), ancak aynı zamanda en gizemli: belirli bir görev için ne kadar güçlü (veya ne tür) ihtiyacımız olduğunu ölçmenin iyi bir yolunu bulamıyoruz. ) ifade yeteneği. Ne tür bir problem şu anda kullandığımız sinir ağından çok daha büyük bir ağ gerektirecek? Bu görevler neden bu kadar çok hesaplama gerektiriyor? Mevcut sinir ağımız, insan zekası gibi davranmak için yeterli ifade gücüne sahip mi? Daha zor problemlerin genelleme problemini çözmek için süper ifade edici bir modele ihtiyaç olacak mı?

İnsan beyni, şu anki büyük ağımıza göre (Inception-ResNet-V2 yaklaşık 25e6 ReLU düğüme sahiptir) çok daha fazla "sinir düğümüne" (1e11) sahiptir. Düğüm sayısındaki boşluk zaten çok büyük, ReLU birimlerinin biyolojik nöronlarla karşılaştırılamayacağından bahsetmeye gerek yok. Bir biyolojik nöron ve onun çeşitli nörotransmiterleri, dendritleri ve aksonları, 10.000 kadar başka nörondan gelen sinyalleri zamana göre değişken bir şekilde entegre edebilir - ifade yeteneği inanılmaz. Çekirgelerden sadece birini kullanın. Bu kadar güçlü bir ifade yeteneği nereden geliyor? Nerede gelişecek? Ne kadar ifade yeteneğine ihtiyacımız var?

Eğitilebilirlik

---- Yeterli ifade yeteneğine sahip bir model yapısı verildiğinde, iyi bir model eğitebilir miyim (iyi parametreler bulun)

Verilerden belirli bir işlevi öğrenen herhangi bir bilgisayar programı, makine öğrenimi modeli olarak adlandırılabilir. "Öğrenme" sürecinde, (muhtemelen büyük) model alanında daha iyi bir model ararız ve kararlar almak için verilerdeki bilgileri kullanırız. Arama süreci genellikle model uzayında bir optimizasyon problemi olarak yapılandırılır.

Farklı optimizasyon türleri

Genellikle, özellikle derin öğrenmede, modelin kalitesini değerlendirmek için bazı skaler ölçütler tanımlarız ve ardından modeli "iyi" yapmak için sayısal optimizasyon tekniklerini kullanırız.

Somut bir örnek: Ortalama çapraz entropiyi en aza indirmek, görüntüleri sınıflandırmak için sinir ağlarını eğitmek için standart bir yöntemdir. Eğitim setindeki modelin çapraz entropi kaybı en aza indirildiğinde, modelin görüntüleri belirli bir doğrulukla doğru şekilde sınıflandırabileceğini veya test verilerini geri çağırabileceğini umuyoruz. Genellikle modelin sınıflandırma doğruluğu gibi değerlendirme göstergelerini doğrudan optimize edemeyiz (açıkçası, önceden test setini görmedik), ancak eğitim setindeki çapraz entropi gibi alternatif işlevler olabilir.

Aranan model (eğitim) sonunda bir optimizasyon problemi haline gelecektir - başka yolu yoktur! Ancak bazen optimizasyon hedeflerini tanımlamak zordur. Denetimli öğrenmede klasik bir örnek, görüntü altörneklemesidir: insan gözümüzün hissettiği altörneklemenin neden olduğu "görsel kaybı" doğru bir şekilde yansıtabilecek bir skaler tanımlayamayız. Benzer şekilde, süper çözünürlüklü görüntüler ve görüntü sentezi de çok zordur, çünkü etkinin kalitesini skaler maksimizasyon hedefi olarak yazmak bizim için zordur: Bir resmin ne kadar gerçek göründüğüne karar vermek için bir işlevi nasıl tasarlayacağımızı hayal edin. Fotoğraf? Aslında şimdiye kadar bir üretim modelinin kalitesinin nasıl değerlendirileceğine dair bir tartışma olmuştur.

Son yıllardaki en popüler yöntem "birlikte uyarlama" yöntemidir: etkileşen ve gelişen iki sabit olmayan dağıtım denge noktasını çözme sorununu çözmek için optimizasyon problemini oluşturur. Bu yöntem daha "doğal" ve onu yırtıcı ve yırtıcı hayvan arasındaki ekolojik evrim süreciyle karşılaştırabiliriz. Avcı, avını daha etkili bir şekilde yakalayabilmesi için giderek daha akıllı hale gelecektir. Sonra avcı, avlanmaktan kaçınmak için giderek daha akıllı hale gelir. İki tür birbirlerinin evrimini destekler ve sonunda ikisi de daha akıllı hale gelir.

Bu, "algılanan kayıp" hedefini doğrudan ve açık bir şekilde tanımlamamızdan kaçınmak için üretken hasım sinir ağı GAN'larının nasıl çalıştığıdır. Benzer şekilde, pekiştirmeli öğrenmede rekabetçi kendi kendine oyun da bu prensibi daha zengin davranışları öğrenmek için kullanır. Açıkça tanımlanmış bir optimizasyon hedefi olmamasına rağmen, bu hala bir optimizasyon problemidir.Makine öğrenimi uygulayıcıları, bu problemleri çözmek için derin sinir ağları ve stokastik gradyan iniş gibi tanıdık araçları kullanabilir.

Evrimsel stratejiler genellikle optimizasyonu simülasyon olarak görür. Kullanıcı model grubuna bazı dinamik sistemleri atar Simülasyon sürecindeki her adımda model grubu dinamik sistemin çalışma kurallarına göre güncellenir. Bu modeller etkileşimde olabilir veya olmayabilir. Zamanla, sistemin dinamik özellikleri model popülasyonunun sonunda iyi bir modele yakınsamasına neden olabilir.

David Ha'nın yazdığı "Evrim Stratejileri için Görsel Bir Kılavuz", pekiştirmeli öğrenmede evrim stratejilerinin uygulanması için çok iyi bir ders kitabıdır ("referanslar ve daha fazla okuma" bölümü harika!)

Araştırma durumu

Denetimli öğrenmedeki ileri beslemeli sinir ağları ve açık nesnel işlevlerin sorunları temelde çözülmüştür (deneyim, teorik garanti yoktur). 2015 yılında yayınlanan bazı önemli gelişmeler (Batch Norm, Residual Network Resnets, Good Init) artık yaygın olarak kullanılmaktadır ve bu da ileri beslemeli sinir ağlarının eğitimini çok kolaylaştırmaktadır. Aslında, yüzlerce katmana sahip derin bir ağ, büyük bir sınıflandırma veri kümesinin eğitim kaybını sıfıra indirebilir. Modern derin sinir ağlarının donanım ve algoritma altyapısı için bu inceleme makalesine bakın.

Sinir ağlarına geri besleme nispeten daha zordur, ancak araştırmacılar önemli ilerleme kaydetmiştir. Artık LSTM'yi karmaşık bir robot stratejisine doğrudan koymayı ve onun iyi sonuçlar elde etmesini çılgınca bir şey olarak görmüyoruz. Bu inanılmaz. 2014'e dönüp bakıldığında, sadece birkaç kişi iyi bir RNN modelinin eğitilebileceğine inanıyordu ve önceki yıllarda yapılan birçok çalışma, RNN'yi eğitmenin son derece zor olduğuna işaret etti. Birçok RNN yapısının aynı ifade gücüne sahip olduğuna dair kanıtlar vardır ve modelin nihai etkisindeki fark, yalnızca bazı yapıların eğitilmesinin diğerlerinden daha kolay olmasıdır.

Denetimsiz öğrenmenin model çıktısı genellikle çok daha büyüktür (her zaman değil), örneğin 1024 x 1024 piksel resimler, uzun konuşma ve metin dizileri. Ne yazık ki bu, modelin eğitilmesini daha zor hale getiriyor.

2017'de büyük bir gelişme, rakip üretim ağlarını eğitmenin zorluğunun büyük ölçüde azaltılmış olmasıdır. Şimdiki en popüler gelişme, rakip üretici ağın orijinal Jensen-Shannon mesafe hedef fonksiyonunda küçük düzeltmeler yapmaktır: en küçük kare, magin ile mutlak sapma ve Wasserstein mesafesinin kullanımı. NVIDA'nın son çalışması, Wasserstein GAN'ı BN parametreleri ve ağ yapısı gibi birçok hiperparametreye daha az duyarlı hale getirmek için geliştirdi. Modelin istikrarı pratikte ve endüstriyel uygulamalarda çok önemlidir: istikrar bizi gelecekteki araştırma fikirlerimiz ve uygulamalarımızla uyumlu olacağına inandırır. Genel olarak konuşursak, bu sonuçlar heyecan verici, çünkü üretim ağımızın doğru görüntüleri üretmek için yeterli ifade yeteneğine sahip olduğunu kanıtlıyor.Etkinin darboğazı eğitim sorununda yatıyor - ne yazık ki sinir ağlarını kullanmak bizim için zor. Bir modelin sadece yetersiz ifade yeteneği olduğundan mı yoksa iyi eğitilmediğimiz için mi kötü performans gösterdiğini ayırt edin.

Sinir ağlarına dayalı ayrı gizli değişkenler içeren modellerin daha önce eğitilmesi de zordur, çünkü ayrı değişkenlerin Monte Carlo gradyan tahmini büyük bir varyansa sahiptir. Son yıllarda, ayrık değişkenlere sahip modeller, düşman üretim ağlarından dil modellerine, bellek geliştirme ağlarına ve pekiştirmeli öğrenmeye kadar çeşitli yapılarda ortaya çıkmıştır. Ayrık temsiller, modelin ifade gücü açısından çok kullanışlıdır ve şimdi bu modelleri çok güvenilir bir şekilde eğitebiliriz.

Ne yazık ki, sadece eğitilebilirlik düşünüldüğünde ve genelleme düşünülmediğinde bile, pekiştirmeli öğrenme çok geride kalıyor. Birden fazla zaman adımı olan bir ortamda, aslında önce bir model arıyoruz, bu da çıkarım aşamasında elde edilen ödülü en üst düzeye çıkarır. Takviye öğrenme daha zordur, çünkü en uygun modeli bulmak için yalnızca temsilci (aracı) tarafından görülen verilere bağlı olan bir harici (dış döngü) optimizasyon süreci kullanmamız gerekirken, dahili (iç döngü), model rehberli optimizasyon süreci kullanmamız gerekir. Elde edilen ödülleri en üst düzeye çıkarmak için optimum kontrol (optimum kontrol) süreci.

Yakın zamanda, sürekli bir robot kontrol görevine bir boyut ekledim ve takviye öğrenme modelimin etkisi% 80'den% 10'a düştü. Pekiştirmeli öğrenmenin eğitilmesi sadece zor değil, aynı zamanda çok da güvenilmezdir! Takviye öğrenme optimizasyonu amaç fonksiyon değeri boyutu çok rastgele, farklı rastgele tohumlar ile aynı sonucu bile alamıyoruz. Bu şekilde, farklı rastgele tohumlarla birden fazla deneme için yalnızca ödül eğrisinin ortalama değerini rapor edebiliriz. Farklı ortamlarda, aynı algoritmayı uygularken genellikle farklı sonuçlar alıyoruz, bu nedenle, pekiştirmeli öğrenme makalesinde bildirilen sonuçlara kolayca inanamayız.

Bu ironik, pekiştirmeli öğrenme eğitimi hala büyük bir problem çünkü problemin ölçeğini biraz genişletirsek, her deneyde aynı sonuçları alamayız.

Pekiştirmeli öğrenmeyi saf bir optimizasyon problemi olarak ele alırsak (model genellemesini ve karmaşık görevleri göz ardı ederek), bu problem de çok zordur. Sadece bir sahnenin sonunda çok seyrek ödüllerin olacağı bir ortam olduğunu varsayalım (örneğin: bir dadı çocuğa bakar ve sadece ebeveynleri eve gittiğinde ödeme alır). Sahne devam ettikçe eylemlerin sayısı (ve buna karşılık gelen çevresel çıktılar) katlanarak artacaktır, ancak gerçekte bu eylem dizilerinin yalnızca çok küçük bir kısmı başarıya yol açacaktır.

Bu nedenle, model optimizasyon sürecinin herhangi bir noktasındaki politika gradyanını tahmin etmek için, öğrenmeye yönelik bazı yararlı sinyaller elde etmek için katlanarak büyüyen eylem alanındaki örnekleri örneklemeliyiz. Bir dağılımla ilgili beklentileri hesaplamak için Monte Carlo yöntemini kullanmak istiyoruz (tüm eylem dizileri üzerinde) ve bu dağılım bir dirac delta dağılımına yoğunlaşmıştır (yoğunluk fonksiyonu için aşağıdaki şekle bakın). Teklif dağıtımı ile ödül dağıtımı arasında neredeyse hiç çakışma olmadığında, kaç örnek alırsanız alın, sınırlı örneklere dayalı Monte Carlo tahmini başarısız olacaktır.

Ek olarak, veri dağıtımı kararlı değilse (örneğin, yeniden oynatma tamponu yeniden oynatma tamponu ile politika dışı algoritmayı kullanırsak), verilerdeki "kötü pikseller" harici optimizasyon sürecine (dış döngü) dengesiz geri bildirim sağlayacaktır. .

Monte Carlo tahmini perspektifinden değil, optimizasyon perspektifinden: Durum uzayı hakkında herhangi bir önceliğin yokluğunda (dünya ortamını anlamak veya rol temsilcisine açık bir şekilde bazı açık talimatlar vermek gibi), Optimizasyon hedefi işlevinin şekli (optimizasyon manzarası) "İsviçre peyniri" gibi görünür - her dışbükey uç (küçük delikleri düşünün) geniş bir düz zemin alanıyla çevrilidir, böylece düz "arazi" üzerindeki strateji gradyanı bilgileri neredeyse Bunun faydası yok. Bu, tüm model alanının neredeyse hiç bilgi içermediği anlamına gelir (neredeyse sıfır olmayan bölge yoktur ve öğrenilen sinyal, model alanı boyunca tek tiptir).

Daha iyi bir temsil yoksa, "peynir deliğine" düşecek bir model bulacak kadar şanslı olana kadar rastgele tohumların etrafında dolaşıp rastgele bazı stratejileri örnekleyebiliriz. Aslında bu şekilde eğitilen model çok iyi çalışıyor. Bu, pekiştirmeli öğrenmenin optimizasyon amacı işlevinin şeklinin muhtemelen böyle olduğunu göstermektedir.

Atari ve MuJoCo gibi pekiştirmeli öğrenme kıyaslama modellerinin, saf bir optimizasyon probleminden dolayı çok ilginç olmasına rağmen, makine öğrenimi yeteneklerinin sınırlarını gerçekten geliştirmediğine inanıyorum. Bu modeller, modelin nispeten basit bir ortamda daha iyi performans göstermesini sağlamak için yalnızca tek bir strateji arıyorlar ve genelleştirmeleri için seçici bir mekanizma yok. Diğer bir deyişle, bunlar karmaşık bir makine öğrenimi problemi değil, yalnızca saf optimizasyon problemleridir.

Pekiştirmeli öğrenmenin (sadece eğitimin değil) genellemesinin dikkate alınması yorumlama ve hata ayıklamayı daha karmaşık hale getirecektir, ancak karakterin çevreyi ve görev hedeflerini gerçekten anlamasına izin vermenin ve genelleme becerisi kazanmanın gerçek dünyadaki robotta pekiştirmeli öğrenme yapmak olduğunu düşünüyorum. Sistemde çalışmanın tek yolu.

Denetimli öğrenmede ve denetimsiz öğrenmede, şu anda model alanında nerede olursak olalım, öğrenme sinyalini kolayca elde edebiliriz. Parti veri gradyanı ve gerçek gradyan dağılımı tarafından verilen önerilen dağılım her zaman örtüşecektir. Parti boyutu 1 olan bir stokastik gradyan iniş yöntemi kullanırsak, en kötü durumda, yararlı bir eğitim sinyaline geçişi örnekleme olasılığımız 1 / N'dir ve N, veri kümesinin boyutudur (böylece her nesil Eğitim, modeli güvenilir bir şekilde daha iyi hale getirecektir). Daha iyi bir model bulmak için, şiddetle daha fazla veri gönderebilir veya eğitim cebirini artırabiliriz. Ek olarak, düşük seviyeli özellikler üzerinde "önyükleme" ile, düşük seviyeli algısal genellemenin iyileştirilmesi muhtemelen varyansı azaltma etkisine sahip olacaktır.

Daha yüksek boyutlu ve daha karmaşık pekiştirmeli öğrenme problemlerini çözmek için, sayısal optimizasyon problemini çözmeden önce modelin genellemesini ve genel algısal bilişsel beceriyi dikkate almalıyız. Aksine, aptalca hesaplama gücünü ve verilerini boşa harcayacaktır (elbette bu, sadece kaba kuvvet hesaplamaları yoluyla ne kadar iyi yapabileceğimizi anlamamızı sağlayabilir). Her veri noktasının pekiştirmeli öğrenme için eğitim bilgisi sağlamasını istiyoruz ve ayrıca katlanarak artan veriler olmadan önem örneklemesi yoluyla çok karmaşık problemlerin gradyanını elde edebilmeliyiz. Ancak bu durumda kaba kuvvet hesaplamasıyla bu soruna bir çözüm bulabileceğimizden emin olabiliriz.

Gösteri, taklit öğrenme, ters pekiştirmeli öğrenme ve doğal dilde etkileşimli öğrenmeden öğrenmek, ilk stratejinin eğitim sinyalleri almasına (iyi bir başlangıç elde etmesine) hızlı bir şekilde izin verebilir veya Arama alanının şeklini değiştirin, böylece her bölüm, politikayı eğitmek için etkili bilgiler sağlayabilir (örneğin, ödül verilmez, ancak karakterin gözlemi, modelin planlanmasına ve eğimli hale getirilmesine yardımcı olacak bazı bilgiler sağlayacaktır. Bazı anlamlı eylemler yapmak için)

Son olarak, bir özet yapın: denetimli öğrenmenin eğitimi daha kolaydır. Denetimsiz öğrenim için eğitim nispeten zordur, ancak büyük ilerleme kaydedilmiştir. Ancak pekiştirmeli öğrenme için eğitim hala büyük bir sorundur.

Genelleme performansı

Bu üç konu arasında genelleme performansı, makine öğreniminin en derin ve en temel sorunudur. Basitçe ifade etmek gerekirse, genelleme performansı, test setindeki eğitim seti üzerinde eğitilmiş bir modelin performansını ölçmek için kullanılır.

Genelleme problemleri iki ana kategoriye ayrılabilir:

  • 1) Eğitim verileri ve test verileri aynı dağıtımdan gelir (bu dağılımı öğrenmek için eğitim setini kullanırız).

  • 2) Eğitim verileri ve test verileri farklı dağıtımlardan gelir (eğitim setinde öğrenilen modelin test setinde iyi performans göstermesini istiyoruz).

Genellikle (1) "zayıf genelleme" ve (2) "güçlü genelleme" diyoruz. Bunları ayrıca "enterpolasyon" ve "ekstrapolasyon" veya "sağlamlık" ve "anlayış" olarak da anlayabiliriz.

Zayıf genelleme: Eğitim seti ve test seti verilerinin iki benzer dağılıma uyduğunu düşünün.

---- Verinin dağıtımı biraz rahatsızsa, model ne kadar iyi performans gösterebilir?

"Zayıf genellemede", genellikle eğitim seti ile veri setinin veri dağılımının aynı olduğunu varsayıyoruz. Ancak gerçek problemlerde, "büyük numune limiti" durumunda bile, ikisinin dağılımı her zaman biraz farklı olacaktır.

Bu farklılıklar sensör gürültüsü, nesne aşınması ve ortam aydınlatma koşullarındaki değişikliklerden kaynaklanıyor olabilir (fotoğrafçı test seti verilerini topladığında hava bulutlu olabilir). Karşıt örneklerin ortaya çıkması da bazı farklılıklara neden olabilir. Düşmanın tedirginliğini insan gözü ile ayırt etmek zordur, bu nedenle karşıt örneklerin de aynı dağılımdan alındığını düşünebiliriz.

Bu nedenle, pratikte "zayıf genelleme" yi, "rahatsız" eğitim setinin dağılımına ilişkin modelin performansını değerlendirmek olarak değerlendirmek faydalı olacaktır.

Veri dağıtımındaki aksaklıklar da optimizasyon ortamında rahatsızlıklara neden olabilir.

Test verilerinin dağıtımını önceden bilmemek, optimizasyonumuza bazı zorluklar getiriyor. Eğitim setinde çok fazla optimizasyon yaparsak (yukarıdaki şekilde mavi eğrinin sol tarafındaki en düşük yerel minimum nokta), test setinde en iyi olmayan bir model elde ederiz (kırmızı eğrinin sol tarafındaki yerel minimum nokta) . Şu anda, eğitim setine gereğinden fazla uyuyoruz ve model, test setinde iyi bir genelleme yapmıyor.

"Düzenli hale getirme", fazla takmayı önlemek için kullandığımız tüm araçları içerir. Test seti dağıtımının bozukluğunun ne olduğunu bilmiyoruz, bu nedenle sadece eğitim setine veya eğitim sürecine gürültü ekleyebiliriz, tanıtılan gürültünün test setindeki rahatsızlığı içereceğini umuyoruz. Stokastik gradyan inişi, rastgele bırakma, ağırlık gürültüsü, aktivasyon gürültüsü, veri geliştirme, vb., Derin öğrenmede yaygın olarak kullanılan düzenleme teknikleridir. Takviye öğrenmede, rastgele simülasyon parametreleri eğitimi daha sağlam hale getirecektir. ICLR2017 raporunda, Zhang Chiyuan, düzenlileştirmenin tamamen mümkün olduğuna inanıyor "eğitimin zorluğunu arttırma" yöntemi (geleneksel "model kapasitesini sınırlama" görüşü yerine). Genel olarak optimizasyonu zorlaştırmak, modelin genelleştirilmesine yardımcı olur.

Bu çok rahatsız edici, bizim "genelleme" yöntemimiz çok kaba, sadece bir "optimizasyon engelleyiciye" eşdeğer. Temel olarak optimize edici için bir engel oluşturuyoruz ve aşırı uyumu önlemek için eğitim sürecine müdahale ediyoruz. Ayrıca, daha iyi bir eğitim, modelin genelleme performansını feda edecektir.Genelleme problemine bu açıdan bakmak, modelin eğitilebilirliğini incelemeyi çok zorlaştıracaktır.

Ancak daha iyi optimizasyon aşırı uyuma yol açacaksa, bazı optimizasyon süreçlerinin eğitim seti ve test setindeki hataları aynı anda azaltabileceğini nasıl açıklayabiliriz? Aslında, optimize edici ve optimizasyon hedefinin herhangi bir kombinasyonu her zaman 1) model alanında daha iyi bir model bulmak ve 2) belirli bir çözüme fazla uymak arasında bir denge sağlayacaktır. Şimdi bu dengeyi kontrol etmenin bir yolu yok.

Belki de zayıf genellemenin önündeki en büyük zorluk, saldırı ile yüzleşmektir. Karşı önlemler, modele en kötü müdahaleyi üretecek ve model bu rahatsızlıklar altında çok kötü performans gösterecektir. Henüz rakip örneklere dayanıklı bir derin öğrenme yöntemimiz yok, ancak bu sorunun sonunda çözüleceğini hissediyorum.

Bilgi teorisini kullanan bazı çalışmalar, sinir ağlarının eğitim sürecinde verileri "hatırlamaktan" veriyi "sıkıştırmak" a dönüştüğünü göstermektedir. Bu teori ortaya çıkıyor, ancak bu teorinin gerçekten etkili olup olmadığı konusunda hala tartışmalar var. Lütfen bu teoriye dikkat edin, "hafıza" ve "sıkıştırma" hakkındaki bu sezgiler ikna edicidir.

Güçlü genelleme: doğal manifold

Güçlü genelleme kategorisinde, model tamamen farklı veri dağılımlarında değerlendirilir, ancak veriler aynı manifolddan (veya veri oluşturma sürecinden) gelir.

Test verisi dağılımı eğitim veri dağıtımından "tamamen farklı" ise, iyi bir modeli nasıl eğitiriz? Aslında, bu verilerin tümü aynı "doğal veri manifoldundan" gelir. Aynı veri oluşturma sürecinden geldiği sürece, eğitim verileri ve test verileri hala birçok bilgi çakışması içerir.

Gerçekçi gözlemlenebilir veriler, çok yüksek boyutlu, sürekli değişen "doğal manifold" dan türetilmiş olarak kabul edilebilir. Bir veri grubu (bir zil vuruşunun videosu, bir zil vuruşunun sesi) bu manifolddaki bir noktadır. Veri dizileri (zil çalma videosu, kurbağa sesleri) bu manifolddaki noktalar değildir - bu tür veri kümeleri gerçekçi değildir. Hissedebileceğiniz gibi, bu doğal manifold çok büyük ve aynı zamanda oldukça yapılandırılmıştır. Örneğin, gözlemlediğimiz tüm veriler, yerçekimi yasası gibi fizik yasalarına uymalıdır ve nesneler aniden ortaya çıkmayacak veya aniden kaybolmayacaktır.

Modelin bu "süper manifoldu" ne kadar iyi öğrenebildiği konusunda güçlü bir genelleme görülebilir.Bu modeli eğitmek, manifold örneklerinin yalnızca küçük bir bölümünü kullanır. Bir görüntü sınıflandırıcının Maxwell denklemlerini keşfetmesi gerekmez - yalnızca manifolddaki veri noktalarıyla tutarlı olan gerçekleri anlaması gerekir.

ImageNet üzerinde eğitilen modern sınıflandırıcılar temelde güçlü bir genelleme yapabilir. Model, kenarlar, konturlar ve objeler gibi temel öğeleri zaten anlayabilir. Bu nedenle, bu sınıflandırıcıların ağırlıkları, birkaç atış öğrenimi ve metrik öğrenme için genellikle diğer veri setlerine aktarılır. Bu tür bir geçişte iyileştirme için yer vardır: ImageNet üzerinde eğitilen sınıflandırıcı tamamen evrensel değildir, birkaç örnekle öğrenme görevi henüz çözülmemiştir ve rakip örnekler yine de çok fazla müdahaleye neden olacaktır. Açıkçası, modelimiz neye insan gibi baktığını henüz anlayamıyor, ama bu başlangıç.

Zayıf bir genelleme gibi, veri dağılımını eğitim setinden olabildiğince farklı kılmak için test setini ters bir şekilde örnekleyebiliriz. AlphaGo Zero benim en sevdiğim örnek: test aşamasında, insan oyunculardan eğitim aşamasında gördüklerinden tamamen farklı veriler görüyor. Ek olarak, insan oyuncular AlphaGo Zero'yu antrenman sırasında daha önce hiç görmedikleri yerlere getirmek için ellerinden gelenin en iyisini yapıyorlar. AlphaGo Zero, soyut matematiğin, oyun psikolojisinin veya yeşilin ne anlama geldiğini net bir şekilde anlayamasa da, Go alanında oyunu insan oyuncuları yenmeye yetecek kadar iyi anladığı açıktır. Bir yapay zeka sistemi deneyimli insanların müdahalesi altında istikrarlı bir şekilde çalışabiliyorsa yeterli genelleme yeteneğine sahip olduğunu düşünüyorum.

Ne yazık ki, pekiştirmeli öğrenme araştırması güçlü genelleme sorununu görmezden geliyor. Kriterlerin çoğu statik ortamlara dayalıdır ve çok fazla bilişsel içerik yoktur (örneğin, insansı bir robot, yalnızca ödül getirebilecek bazı eklemlerin konumlarını bilir, ancak dünyasının ve vücudunun neye benzediğini bilmez) .

Pekiştirmeli öğrenmenin eğitilebilirliği sorununu çözmenin anahtarının genellemeyi çözmede yattığına inanıyorum. Öğrenme sistemimiz dünyayı ne kadar anlarsa, öğrenme sinyalini elde etmek o kadar kolay olur ve daha az örnek gerektirebilir. Bu aynı zamanda çok az sayıda atış öğrenmenin, taklit öğrenmenin ve öğrenmeyi öğrenmenin önemli olmasının nedenidir: bizi büyük varyanslı ve çok az yararlı bilgiyle şiddet içeren çözümleri benimsemekten kurtaracaklar.

Daha güçlü bir genelleme yapmak için iki şey yapmamız gerektiğine inanıyorum:

İlk olarak, gözlem ve deneylerden dünyanın temel yasaları hakkında aktif olarak akıl yürütebilecek modellere ihtiyacımız var. Sembolik akıl yürütme ve nedensel çıkarım, olgun bir araştırma gibi görünmektedir, ancak her türlü denetimsiz öğrenmeye yardımcı olabilirler. İnsanların, evrenin fiziksel yasalarını türetmek için mantıksal akıl yürütme sistemleri (matematik) aracılığıyla gök cisimlerinin hareketini anladığını hatırladım. İlginç olan, Kopernik devriminden önce, insanların başlangıçta bazı Bayesçi buluşsal yöntemlere ("batıl inanç") güvenebilmesidir. Klasik mekaniği keşfettiğimizde, bu "Bayesçi" modeller terk edildi. .

Model tabanlı makine öğrenimi yöntemlerimiz (ortamı "tahmin etmeye" çalışan modeller) artık Copernicus devriminden önceki dönemdedir: bunlar derin bir genellik önermek yerine yalnızca yüzeysel olarak ara değerleme yapmak için bazı istatistiksel ilkelere dayanmaktadır. Milyonlarca ışık yılı uzakta veya gelecekte olabilecek şeyleri açıklamak ve çıkarmak. İnsanların deterministik göksel mekaniği türetmek için iyi bir olasılık teorisine sahip olmaları gerekmediğine dikkat edin Bu bir soruyu gündeme getiriyor: Makine öğrenimi ve nedensel akıl yürütmeyi net bir istatistiksel çerçeve olmadan gerçekleştirmek mümkün mü?

Öğrenme sistemimizi daha uyarlanabilir hale getirmek karmaşıklığı büyük ölçüde azaltabilir. Sadece statik olarak tahmin edip hareket edebilen modeller değil, çevrimiçi ve gerçek zamanlı olarak düşünebilen, hatırlayabilen ve öğrenebilen modeller yetiştirmemiz gerekiyor.

İkinci olarak, modeli daha soyut temsilleri öğrenmeye teşvik etmek için modele yeterince farklı veri göndermemiz gerekiyor. Yalnızca ortamda çok zengin içerik olduğunda doğru temsil keşfedilebilir (AlphaGo Zero, belirli bir anlayışa sahip olmak için karakter tarafından doğal manifolddaki ne kadar verinin kullanılması gerektiği sorusunu gündeme getirir). Bu kısıtlamalar olmadan, öğrenmenin kendisi tam olarak tanımlanmamıştır ve iyi bir çözüm bulma olasılığımız çok düşüktür. Belki insanlar ayağa kalkıp gökyüzünü göremezlerse, yıldızların neden bu kadar garip bir eliptik yörüngede hareket ettiğini ve bilgelik kazanamayacağını bilmek istemeyeceklerdir.

Üç cisim medeniyetinin ("Üç cisim" romanından) bu kadar yüksek bir teknolojiye sahip olup olmadığını merak ediyorum çünkü geçim kaynakları onların karmaşık gök mekaniği anlayışına bağlı. Belki de Mujoco ve Bullet ortamımıza bazı göksel hareketler (gülümsemeler) eklemeliyiz.

dipnot:

İfade yeteneği, eğitim zorluğu ve genelleme performansı çerçevesinde sınıflandırılamayan bazı araştırma alanları vardır. Örneğin, yorumlanabilirlik araştırması bir modelin neden belirli davranışlara sahip olduğunu açıklamaya çalışır. Yalnızca yüksek riskli alanlardaki (tıp, kolluk kuvvetleri) makine öğrenimi teknolojisinin kullanıcıları bu çalışmalarla ilgilenmiyor, yorumlanabilirlik de genelleme sorununu çözmeye yardımcı olabilir: modelin sağladığı teşhisin bir tıp uzmanından çok farklı olduğunu bulursak , Bu muhtemelen modelimizin muhakeme yönteminin genelleştirilemeyeceği anlamına gelir. Modelinizin doğru şeyleri öğrendiğinden emin olmak, düşük test hataları almaktan daha önemlidir. Diferansiyel gizlilik, makine öğrenimi modelimizin bir başka şartıdır. Bu konular bu makalenin kapsamı dışındadır.

Bunun neden olduğunu basitçe açıklayın: N nöron içeren tamamen bağlı bir ReLU katmanı, doğrusal bir alanı N adet parçalı sürekli parçaya böler. Bir ReLU katmanı eklemek tekrar bölünecek ve sonuçta N ^ 2 parçalı doğrusal parçalar oluşacak ve üç katman N ^ 3'e sahip olacak ve bu böyle devam edecek. Ayrıntılı analiz için Raghu ve diğerleri 2017'ye bakınız.

Bu bazen çok seviyeli bir optimizasyon problemi olarak adlandırılır, "harici" ve "dahili" bir optimizasyon süreci içerir ve işbirliğine dayalı adaptasyon eşzamanlı olarak gerçekleştirilir. Örneğin, bir makinedeki eşzamanlı işlemlerin eşzamansız iletişimi veya ekosistemde birbirini etkileyen türlerin evrimi. Bu örneklerde net bir "harici" ve "dahili" optimizasyon süreci yoktur.

Dizi-sıra dikkat mekanizması modeli (dikkatle seq2seq) ilk önerildiği zamanda en iyi seviyeye ulaştı, ancak dikkat mekanizmasının modelin ifade yeteneğini ve genelliğini artırmak yerine sadece modeli eğitmeyi kolaylaştırdığından şüpheleniyorum. Kabiliyet. Basit bir dizi-dizi modelinin iyi bir başlatma ile aynı derecede iyi yapması mümkündür.

Güçlü genelleme sorununu çözmeye yardımcı olmasa da, düşman saldırılarını hafifletmek için bir fikir: karışıklığa karşı hesaplamanın maliyeti son derece yüksek hale gelir. Modeller ve veriler kara kutulardır. Çıkarım sırasında model her çağrıldığında, eğitilmiş modellerden biri rastgele seçilir ve hangi model olduğu söylenmeden rakiplere verilir. Modellerin eğitimi birbirinden bağımsızdır ve hatta farklı mimariler kullanabilir. Bu, sonlu fark gradyanını hesaplamayı zorlaştırır, çünkü f (x + dx) -f (x) keyfi olarak büyük varyansa sahip olabilir. Ek olarak, farklı modelleri örneklediğimiz için, ardışık model gradyanları arasındaki gradyan da büyük bir varyansa sahip olacaktır. Diğer bir uygulanabilir çözüm ise çok modlu veri kullanmaktır (video, çoklu görünüm, görüntü + ses) Bir saldırganın farklı modal girdilerin tutarlılığını korurken girdiyi bozması zordur.

(Bitiş)

"Makine Öğreniminde İfade, Eğitilebilirlik ve Genelleme" @https: //blog.evjang.com'dan yeniden basılmıştır.

Dengeli performans ve mükemmel resim kalitesi - eski ve yeni Canon EF70-200mm IS II USM'nin karşılaştırmalı değerlendirmesi
önceki
Oto tamircisi müşterilerin araçlarının parçalarını çalacak mı? Bunu önlemenin bir yolu var mı?
Sonraki
"Black Soul" renk uyumu Yeezy Boost 350 V2 resmi olarak ortaya çıktı Böbreğiniz ağrıyor mu?
DC'nin yeni filmi "Birds of Prey" dizisini ortaya koyuyor, Margot Robbie, Harley Quinn'i oynamaya devam ediyor
Artisan Society, GEIO'nun yeni AR modelini CES 2019'a getirdi ve "TWICE Picks" ödülünü kazandı
Hangzhou yaklaşıyor ve Suzhou gittikçe uzaklaşıyor mu?
Güçlü performans, olağanüstü başarılar ThinkPad T480 incelemesi
Dwayne Johnson'ın "Sky Rescue" yazının tek Hollywood aksiyon gişe rekorları kıran filmi tam not aldı
Güçlü gözetim altında banka hisse senetleri neden bu kadar yükseliyor?
Yurtiçi amiral gemisi karşı saldırı TCL X5 birincil renkli kuantum nokta TV incelemesi
Neden giderek daha fazla insan 7 koltuklu SUV'a ilgi gösteriyor?
2019'da otomotiv endüstrisindeki beş büyük dijital dönüşüm trendi?
"Megatooth", "Undersea Jurassic" in başlangıcını ve sonunu açığa çıkaran kamera arkası özel yayınını yayınladı
Orta sınıf ebeveynlerin kaygısı: "Başaramazsan önemli değil" demeye gerçekten cesaretin var mı?
To Top