Sinir ağlarının döngü yapısı nasıl anlaşılır (teori) Makine öğreniminde karşılaşacağınız "çukurlar"

Tekrarlayan sinir ağı motivasyon yaratır

Şimdi basit bir tahmin görevi yapmak için geleneksel bir dil modeli kullandığımızı varsayalım, böyle bir cümle var:

CoreReading, pek çok yararlı bilgi içeren mükemmel bir herkese açık hesaptır.Çoğunlukla ___ 'da bilgi arar ve bilgi alırım.

2-gram gibi alanın içeriğini tahmin etmek için n-gram modelini kullanırsak, model "sonra" dan sonra oluşma olasılığı en yüksek olan kelimeyi verecektir. Bize göre, "temel okuma" yüksek olasılıklı bir seçenek olsa da, birçok veriyi eğittikten sonra, "temel okuma" nın "içinde" geride görünme olasılığı son derece düşük olacaktır, çünkü biz genellikle " "Evde" gibi yaygın kelimeler. Elbette, önceki makalede temel okuma teknolojisi adını görene kadar modelin kapsamını genişletmeye devam edebiliriz, ancak bu fikir pratikte uygulanabilir değildir.N ne kadar büyükse, Markov zinciri o kadar uzun ve seyrek veriler. Cidden, hesaplamak zordur ve daha da önemlisi, bu N'yi sabit bir değere ayarlamamız gerekir, böylece keyfi uzunluktaki cümleleri işleyemeyiz.

Yinelenen bir yapıya sahip bir ağ, yinelenen bir sinir ağı olarak adlandırılabilir. RNN, bu sorunu çok etkili bir şekilde çözebilir. Basit bir teoriden, herhangi bir uzunluktaki dizileri işleyebilir ve önceden N'yi düzeltmeye gerek yoktur. Yaşayın, daha fazla esneklik.

Evrişimli sinir ağları, zaman serisi problemleriyle de başa çıkabilir, özellikle de belirli özelliklerinden ziyade belirli özelliklerin görünüp görünmediğine baktığımızda, CNN'in belirli avantajları vardır. Ancak duygu sınıflandırması probleminde olduğu gibi doğal dil verileriyle uğraşırken, metni pozitif ve negatif olarak böleriz.CNN, "beğenmek" ve "güzellik" gibi belirli kelimelerin görünümünü işleyebilir. , Böyle bir cümle ise:

Bu filmi sevmediğimden değil, bu filmin güzel olduğu söylenemez ama ...

Bu değerlendirmenin olumsuz bir değerlendirme olduğunu çabucak anlayabiliriz. Dolayısıyla, yalnızca özellikler çıkarılırsa ve kelimeler arasındaki ilişki göz ardı edilirse, CNN metnin "beğenildiğini" bulabilir ve bunu olumlu olarak sınıflandırabilir, "beğenmeme" olarak görebilir ve onu negatif olarak sınıflandırabilir ve sonra "hayır Bunu tekrar pozitif olarak sınıflandırmak kesinlikle mantıksız. Şu anda, bu cümlenin anlamını anlamak için bir dil modeli kullanmamız gerekiyor.

Tekrarlayan sinir ağlarını anlama

Öğrenme materyallerinde genellikle RNN simgesini görüyoruz:

Bu resim yeni başlayanlar için uygun değildir ve daha fazla yanlış anlamaya neden olmak çok kolaydır, ancak zaman serilerinin bağımlılığını ondan görebiliyor olsak da, yayılan ok st-1'den st'ye eklenmiştir ve bilgi olduğunu belirtmek için Ön nörondan doğrudan arka nörona akar, ancak bu resmin bize söyleyemeyeceği daha fazla sorun vardır, örneğin:

  • Veriler aynı anda mı geliyor?
  • En başta, ilk birim de önceki nöronun girdisini kabul edecek mi? Evetse, ilk nöron önceki nörona sahip değil, bu girdi nereden geliyor?
  • W ağırlık matrisi neden aynı katmanın gizli biriminde yayılır, ağırlık matrisi U gizli katmana girdisi ve gizli katmandan çıktıya ağırlık matrisi V aynıdır?

Yukarıdaki şekil yaygın olarak kullanılan bir diyagram olmasına rağmen, aslında, döngü yapısını daha iyi anlamanın yolu öyle değildir.

Herkesin döngü yapısını daha iyi anlamasına yardımcı olmak için birkaç eskiz çizdim. Aşağıdaki şekilde gösterildiği gibi, giriş, çıkış ve gizli katmanlarda yalnızca bir nöronun bulunduğu basit bir ileri beslemeli sinir ağı hayal edin. Buradaki çemberin soyut bir anlamı yoktur, çember bir nörondur:

Zaman serisinin ilk veri noktasını girdiğimizde, o anda gizli katmanın değerini bir bellek biriminde saklarız. Bu bellek birimi bir varlık değil, şeylere erişmek için kullanılan bir yapıdır:

Sakladığımız bellek biriminin işlevi X1'in özelliklerine erişir.Zaman serisinin ikinci veri noktasına girdiğimizde, ağ yapısının değişmeden kaldığını not etmeliyiz, ancak hafızadaki bilgileri de gizli alana giriyoruz. Katmanda, ikinci veri noktasının gizli katmanının çıktı için ilk veri noktasının verilerini ve özelliklerini alması ve aynı zamanda gizli katmanın bilgilerini bu anda belleğe döndürmesi ve tekrar kaydetmesi ile eşdeğerdir:

Üçüncü veri noktası girildiğinde, bellek biriminin çalışması önceki adımda elde edilen bilgidir ve elde edilen bilgiler bir sonraki zaman adımının girişi için saklanır:

Bu şekilde ilerlersek, herkesin görmeyi sevdiği resme benzer bir yapı elde ederiz.Önceki bilgilerin şimdiki zaman üzerindeki etkisini ifade etmek için, bellek birimini girerken bellek birimini parametrelendirmek için bir ağırlık matrisi W kullanırız, sonra bir Tek yazışma şöyle olur:

Burada, her daireyi bir nöron olarak anlıyoruz, ancak bir daireyi bir nöron katmanı olarak anlarsak, yani onu bir yapıya soyutlarsak, girdi, gizli katman ve çıktının hepsi çok boyutludur ve Zamana göre genişletin, alacaksınız:

Bu temelde, yukarıdaki sorunları açıklıyoruz:

  • Veriler aynı anda mı geliyor?
  • Açıkçası hayır Veriler sırayla girilir Serileştirilmiş verilerle uğraşırken, farklı yapıları ayarlamak için genellikle kayan pencereler kullanırız.
  • En başta, ilk birim de önceki nöronun girdisini kabul edecek mi? Öyleyse, ancak ilk nöron önceki nörona sahip değilse, bu girdi nereden geliyor?
  • İlk veri noktasını girdiğimizde, bellek birimi için bir başlangıç değeri belirlememiz gerekir.Bu başlangıç değeri bir parametre olarak kullanılabilir veya basitçe sıfıra ayarlanabilir, bu da önceki bilgi olmadığı anlamına gelir.
  • W ağırlık matrisi neden aynı katmanın gizli biriminde yayılır, ağırlık matrisi U gizli katmana girdisi ve gizli katmandan çıktıya ağırlık matrisi V aynıdır?
  • Bu çok önemli bir soru ve aynı zamanda grafikten çıkaramayacağımız bilgidir. Parametrelerin sayısını büyük ölçüde azaltmak bir nedendir, ancak zorunlu değildir. Önce W matrisini dikkate almıyoruz ve sadece sıradan sinir ağını ele alıyoruz, çünkü dizideki farklı verilerin hepsi aynı sinir ağını kullanıyor. CNN, aynı özellikleri çıkarmak için parametre paylaşımlı evrişim çekirdeklerini kullanır.RNN'de, aynı girdinin aynı çıktıyı üretmesini sağlamak için parametre paylaşımı U ve V kullanılır. Örneğin, bir metin parçasında çok sayıda "köpek" görünebilir. , Parametre paylaşımı, sinir ağının aynı gizli katmanı üretmesini ve "köpek" girildiğinde çıktı almasını sağlar.
  • Şu anda, W matrisini tartışıyoruz. Parametre paylaşım matrisi W, yukarıdaki aynı için aşağıdakilerin üretilmesini sağlar.

Çekirdeği okuyun Sınıf İPUÇLARI

Döngüsel sinir ağının eğitim sürecinde, sadece uzayda geri yayılmaya değil, aynı zamanda zaman adımında tersine çevrilmeye de ihtiyaç duymaktadır.Bunun getirdiği uzun vadeli bağımlılık problemi, optimize etmeyi zorlaştırmaktadır.Bir sonraki bölümde uzunluğu ve kısa zamanı tanıtacağız. Daha iyi bir RNN performansı elde etmek için bellek birimi (LSTM).

Samsung nihayet ritmi yakaladı, ekran pozunun altında çene + parmak izi S10 yok
önceki
Objektiflerinin altındaki Pekin çok güzel! Temple of Earth Temple'daki sergi saatli olmalı!
Sonraki
Hanteng'in ilk MPV modeli Hanteng V7, ulusal ön satışa başlar, satış öncesi fiyatı 95.800 RMB'den 135.800 RMB'ye
E serisinin üçüncü yeni otomobili BYD e2 resmi olarak tanıtıldı / uzun yüz devamı
Merhaba 2019! Bu 7 değişikliğe dikkat edilmelidir
Nova, 65 milyonu asla kabul etmedi: Huawei en zor yolu yapıyor
Qualcomm Snapdragon 855 koşu puanları açığa çıktı, tek çekirdek Huawei Kirin 980'i ezdi
Lincoln Aviator resmi olarak Şangay Otomobil Fuarı'nda görücüye çıktı, trompet navigatörü yeniden "dirildi"
Lynk & Co 032.0T modelleri piyasada ve 15.48-16.68 milyon yuan / küçük çelik silah satıyor
Veri biliminin "siyah altınına" nasıl hakim olunur?
Çin standartlarına göre Google'ın tıbbi reklamcılığı uyumlu mu?
Yeni bir dış tasarımla GAC Mitsubishi'nin yeni Qizhi EV'i resmi olarak tanıtıldı
Sony Çin yetkilisi Weibo tweet attı: "Çok kızgınım." Weibo daha sonra silindi ve şu cevabı verdi: Çocuğu anlayın
Veri bilimi çok mu zor? Lütfen bu tuzaklardan kaçının
To Top