özet
Gizli Markov Modelleri (HMM'ler) Tekrarlayan Sinir Ağlarından (RNN) çok daha basittir ve her zaman doğru olmayabilecek güçlü varsayımlara dayanır. Varsayımlar ise şunlardır gerçek o çalışma almak için daha az titiz olduğundan sonra bir HMM daha iyi performans görebilirsiniz.
Çok büyük bir veri kümeniz varsa, bir RNN daha iyi performans gösterebilir, çünkü ekstra karmaşıklık verilerinizdeki bilgilerden daha iyi yararlanabilir. Bu, sizin durumunuzda HMM varsayımları doğru olsa bile doğru olabilir.
Son olarak, sıra göreviniz için sadece bu iki modelle sınırlı kalmayın, bazen daha basit regresyonlar (örneğin ARIMA) kazanabilir ve bazen Konvolutional Sinir Ağları gibi diğer karmaşık yaklaşımlar en iyisi olabilir. (Evet, CNN'ler aynen RNN'ler gibi bazı sekans verilerine uygulanabilir.)
Her zaman olduğu gibi, hangi modelin en iyi olduğunu bilmenin en iyi yolu, modelleri yapmak ve dışarıda bırakılan bir test setindeki performansı ölçmektir.
HMM'lerin Güçlü Varsayımları
Devlet geçişleri geçmişteki hiçbir şeye değil, sadece mevcut duruma bağlıdır.
Bu varsayım, aşina olduğum pek çok alanda geçerli değildir. Örneğin, günün her dakikası için bir kişinin hareket verilerinden uyanık veya uykuda olup olmadığını tahmin etmeye çalıştığınızı varsayalım . Dan birisi geçiş yapmaktadır şansı uykuda için uyanık artar artık kişi olmuştur uykuda devlet. Bir RNN teorik olarak bu ilişkiyi öğrenebilir ve daha yüksek tahmin doğruluğu için kullanabilir.
Örneğin, önceki durumu bir özellik olarak ekleyerek veya bileşik durumları tanımlayarak bunun üstesinden gelmeyi deneyebilirsiniz, ancak eklenen karmaşıklık her zaman bir HMM'nin tahmin doğruluğunu artırmaz ve kesinlikle hesaplama sürelerine yardımcı olmaz.
Toplam durum sayısını önceden tanımlamanız gerekir.
Uyku örneğine dönersek, önemsediğimiz sadece iki durum varmış gibi görünebilir. Bununla birlikte, sadece uyanık ve uykuda tahmin etmeyi önemsesek bile , modelimiz sürüş, duş vb. Yine, bir RNN, yeterince örnek göstermişse, teorik olarak böyle bir ilişkiyi öğrenebilir.
RNN'lerle ilgili zorluklar
Yukarıdakilerden RNN'lerin her zaman üstün olduğu görülebilir. Bununla birlikte, özellikle veri kümeniz küçük veya dizileriniz çok uzun olduğunda, RNN'lerin çalışmasının zor olabileceğine dikkat etmeliyim. Ben şahsen bazı verilerimi eğitmek için RNN alma sorunları yaşadım ve çoğu yayınlanan RNN yöntemleri / yönergeleri metin verilerine ayarlanmış olduğundan şüphe duyuyorum . Metin olmayan verilerde RNN'leri kullanmaya çalışırken, belirli veri kümelerimde iyi sonuçlar elde etmek için umduğumdan daha geniş bir hiperparametre araması yapmak zorunda kaldım.
Bazı durumlarda, sıralı veriler için en iyi modelin aslında UNet stili olduğunu gördüm ( https://arxiv.org/pdf/1505.04597.pdf ) Konvolüsyonel Sinir Ağı modeli, eğitilmesi daha kolay ve hızlı olduğundan ve sinyalin tüm içeriğini dikkate almak.