Deepmind'in yeni “ayırt edilebilir sinirsel bilgisayarı” nasıl ölçeklenir?


12

Deepmind , temel olarak bir sinir ağını bir bellekle birleştiren "farklı bir sinirsel bilgisayar" hakkında bir makale yayınladı .

Fikir, sinir ağına belirli bir görev için yararlı açık anılar yaratmayı ve hatırlamayı öğretmektir. Bu, bir sinir ağının yeteneklerini iyi tamamlar, çünkü NN'ler bilgiyi yalnızca ağırlıklarda örtük olarak saklar ve tek bir görev üzerinde çalışmak için kullanılan bilgiler yalnızca ağın etkinleştirilmesinde depolanır ve eklediğiniz daha fazla bilgiyi hızla bozar. ( LSTM'ler kısa süreli anıların bu bozulmasını yavaşlatmaya çalışır, ancak yine de olur.)

Şimdi, gerekli bilgileri aktivasyonda tutmak yerine, aktivasyondaki belirli bilgiler için bellek yuvalarının adreslerini muhtemelen saklıyorlar, bu yüzden bunlar da bozulmaya tabi tutulmalıdır. Benim sorum bu yaklaşımın neden ölçeklendirilmesi gerektiğidir. Göreve özgü biraz daha fazla bilgi, etkinleştirme sırasında tüm uygun bellek yuvalarının adreslerini tutabilmek için ağların kapasitesini bir kez daha aşmamalıdır mı?

Yanıtlar:


3

DNC'nin mimarisinin incelenmesi gerçekten de LSTM ile birçok benzerlik göstermektedir . Bağlantı kurduğunuz DeepMind makalesindeki diyagramı düşünün:

DeepMind DNC Mimarisi

Bunu LSTM mimarisiyle karşılaştırın (SlideShare'da anant'a kredi):

resim açıklamasını buraya girin

Burada bazı yakın analoglar var:

  • LSTM'ye benzer şekilde, DNC girişten sabit boyutlu durum vektörlerine ( LSTM'de h ve c ) bir miktar dönüşüm gerçekleştirecektir.
  • Benzer şekilde, DNC bu sabit boyutlu durum vektörlerinden potansiyel olarak isteğe bağlı uzunluktaki çıktıya bazı dönüşümler gerçekleştirecektir (LSTM'de tatmin olana / modelin bittiğimizi gösterene kadar modelimizden tekrar tekrar örnek alıyoruz)
  • Unutmak ve giriş LSTM kapıları temsil yazma ( 'unutma' esas olarak sadece sıfırlar veya kısmen bellek kesilmesi) DNC operasyonu
  • Çıkış LSTM kapısı temsil okuma DNC operasyonu

Ancak, DNC kesinlikle bir LSTM'den daha fazlasıdır. En bariz şekilde, parçalara ayrık (adreslenebilir) olan daha büyük bir durum kullanır; Bu, LSTM'nin unutma kapısını daha ikili yapmasını sağlar. Bununla kastedilen, devletin her zaman adımında bir miktar kesir ile aşınması gerekmezken, LSTM'de (sigmoid aktivasyon fonksiyonu ile) zorunlu olarak öyle. Bu, bahsettiğiniz felaket unutma problemini azaltabilir ve böylece daha iyi ölçeklenebilir.

DNC, bellek arasında kullandığı bağlantılarda da yenidir. Bununla birlikte, bu, LSTM'de LSTM'yi, aktivasyon fonksiyonu olan tek bir katman yerine her kapı için tam sinir ağları ile yeniden hayal edersek göründüğümüzden daha marjinal bir gelişme olabilir (buna super-LSTM deyin); bu durumda, aslında yeterince güçlü bir ağ ile bellekteki iki yuva arasındaki herhangi bir ilişkiyi öğrenebiliriz. DeepMind'in önerdiği bağlantıların özelliklerini bilmesem de, makalede, normal bir sinir ağı gibi degradeleri geriye doğru çoğaltarak her şeyi öğrendiklerini ima ediyorlar. Bu nedenle bağlantılarında kodladıkları ilişki ne olursa olsun, sinirsel bir ağ tarafından teorik olarak öğrenilebilir olmalı ve bu yüzden yeterince güçlü bir 'süper LSTM' onu yakalayabilmelidir.

Tüm söylenenlerle birlikte , derinlemesine öğrenmede, ifade için aynı teorik kabiliyete sahip iki modelin pratikte çok farklı performans gösterdiği görülür. Örneğin, tekrarlayan bir ağın, yalnızca kilidini açarsak, büyük bir ileri besleme ağı olarak temsil edilebileceğini düşünün. Benzer şekilde, evrişimsel ağ vanilya sinir ağından daha iyi değildir, çünkü ifade için ekstra kapasiteye sahiptir; aslında, ağırlığı daha etkili kılan kısıtlamalardır . Bu nedenle, iki modelin ifade edilebilirliğini karşılaştırmak, uygulamadaki performanslarının adil bir şekilde karşılaştırılması veya ne kadar iyi ölçekleneceklerinin doğru bir projeksiyonu değildir.

DNC ile ilgili bir sorum, hafızası bittiğinde ne olacağı. Klasik bir bilgisayarın belleği dolduğunda ve başka bir bellek bloğu istendiğinde, programlar çökmeye başlar (en iyi ihtimalle). DeepMind'in bunu nasıl ele almayı planladığını merak ediyorum. Halihazırda kullanılmakta olan hafızanın akıllı bir yamyamlığına dayanacağını varsayıyorum. Bir anlamda, bir işletim sistemi, bellek basıncı belirli bir eşiğe ulaştığında uygulamaların kritik olmayan belleği boşaltmasını istediğinde şu anda bunu yapmaktadır.

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.