Bir Gizli Markov Modelinin Eğitimi, birden fazla eğitim örneği


18

Bu eğiticiye göre ayrı bir HMM uyguladım http://cs229.stanford.edu/section/cs229-hmm.pdf

Bu eğitim ve diğerleri her zaman bir gözlem sekansı verilen bir HMM'nin eğitiminden bahseder.

Birden fazla egzersiz dizim olduğunda ne olur? Onları sıralı olarak çalıştırmalı mıyım, modeli birbiri ardına eğitmeli miyim?

Başka bir seçenek, dizileri bire birleştirmek ve üzerinde çalışmaktır, ancak daha sonra gerçek olmayan bir dizinin sonundan diğerinin başlangıcına kadar devlet geçişlerine sahip olacağım.


Bu makaleye bakınız pdfs.semanticscholar.org/4000/… Fikirleri belirsiz bir gözlem senaryosuna genişletmelerine rağmen, bağımsızlığın varsayıldığı basit davayı anlamak benim için oldukça yararlı oldu
Marc Torrellas

hmmlearnHMM uygulanması birden dizileriyle zaten destek eğitim SMM vardır. Birden fazla sekansla HMM eğitimine
Wenmin Wu

Yanıtlar:


16

Eğitimin her bir yinelemesini farklı bir sekansla birleştirmek veya yürütmek doğru şey değildir. Doğru yaklaşım biraz açıklama gerektirir:

EM algoritması kullanılarak genellikle bir HMM eğitilir. Bu birkaç tekrardan oluşur. Her yinelemenin bir "tahmini" ve bir "maksimize" adımı vardır. "En üst düzeye çıkar" adımında, her bir gözlem vektörü x'i modelinizdeki bir durumla hizalarsınız, böylece bir olasılık ölçüsü en üst düzeye çıkarılır. "Tahmin" adımında, her bir durum için, (a) s'ye hizalanmış x vektörleri için istatistiksel bir modelin parametrelerini ve (b) durum geçiş olasılıklarını tahmin edersiniz. Aşağıdaki yinelemede, en üst düzeye çıkarma adımı, güncellenmiş istatistiksel modellerle vb. Tekrar çalışır. İşlem, belirli sayıda tekrarlanabilir veya olasılık ölçüsü önemli ölçüde artmayı bıraktığında (yani, model kararlı bir çözüme dönüşür). Son olarak, (en azından konuşma tanımada) bir HMM tipik olarak "başlangıç" olarak tanımlanacaktır

Bu nedenle, birden fazla egzersiz diziniz varsa, tahmin adımında her bir diziyi, ilk gözlem vektörünün başlangıç ​​durumuyla hizalanması için çalıştırmalısınız. Bu şekilde, bu başlangıç ​​durumuna ilişkin istatistikler, tüm gözlem dizileriniz üzerindeki ilk gözlemlerden toplanır ve genel olarak gözlem vektörleri, her dizi boyunca en olası durumlara hizalanır. En üst düzeye çıkarma adımını (ve gelecekteki yinelemeleri) yalnızca eğitim için tüm sekanslar sağlandıktan sonra yaparsınız . Bir sonraki yinelemede, aynı şeyi yapardınız.

Her bir gözlem dizisinin başlangıcını başlangıç ​​durumuna hizalayarak, bir dizinin sonu ile bir sonrakinin başlangıcı arasındaki geçişleri yanlış bir şekilde modelleyeceğiniz dizileri birleştirme sorununu önlersiniz. Ve her bir yinelemedeki tüm dizileri kullanarak, yanıtlayıcının belirttiği gibi, her bir yinelemenin yakınsamayı garanti etmeyeceği farklı diziler sağlamaktan kaçınırsınız.


Bu yöntem, her egzersiz dizisinin aynı uzunlukta olmasını gerektiriyor mu?
Nate

2
Hayır. Kişi genellikle bir HMM'yi kendi kendine döngülere (arka arkaya birden çok kez kullanılan aynı durum) izin verecek ve birden fazla durumun geçişine izin verecek şekilde tasarlar. Bu özellikler, bir HMM'nin farklı uzunluklardaki dizileri puanlamasına izin verir.
JeffM

4

Lawrence Rabiner , IEEE 77'nin bu eğitiminde matematiksel olarak iyi kurulmuş bir yaklaşımı anlatıyor . Öğretici ayrıca Rabiner ve Juang'ın Konuşma Tanıma Temelleri kitabının 6. bölümüdür .

RIA Davis ve diğ. ark. bu makalede bazı ek öneriler sunmaktadır .

Matematiği tam olarak gözden geçirmedim, ama bana göre Rabiner'ın yaklaşımı en umut verici gibi görünüyor, Davis'in yaklaşımı ise matematiksel temelden yoksun gibi görünüyor.


2

Matematiği takip ederseniz, fazladan eğitim örnekleri eklemek, olasılığı hesaplama şeklinizi yeniden hesaplamanız anlamına gelir. Boyutları toplamak yerine, eğitim örneklerini de toplarsınız.

Bir modeli birbiri ardına eğitirseniz, EM'nin her eğitim örneği için kapsama alacağına dair bir garanti yoktur ve kötü tahminlerle sonuçlanırsınız.

İşte bunu Kalman Filtresi (Gauss Olasılıkları olan bir HMM) için yapan bir makale, daha fazla örneği destekleyebilmeniz için kodunuzu nasıl değiştireceğinizin tadına bakabilir.

http://ntp-0.cs.ucl.ac.uk/staff/S.Prince/4C75/WellingKalmanFilter.pdf

Ayrıca HMM üzerine bir dersi var, ama mantık oldukça basit.


1
Ne demek istediğini gerçekten görmedim. Benim doğru yönü gösterebilir misin? Teşekkürler.
Ran

0

Bu, Bittenus'un referans verdiği (yukarıda) RIA Davis tarafından yazılan bir yorumdur . Bittenus ile aynı fikirdeyim, makalede önerilen tekniklerin arkasında çok fazla matematiksel destek yok - daha çok ampirik bir karşılaştırma.

Bu makale sadece HMM'nin sınırlı bir topolojiye (ileri beslemeli) sahip olduğu durumu dikkate almaktadır. (benim durumumda standart bir topolojim var ve Baum-Welch ile eğitilmiş tüm modellerin ağırlıklı olmayan bir ortalamasını uygulayarak en tutarlı sonuçları buldum. Bu yaklaşım makalede belirtildi, ancak sadece marjinal sonuçlarla belirtildi).

Başka bir model ortalamalı eğitim türü, bir dergi makalesinde RIA Davis tarafından detaylandırılmıştır ve Tren ve Test ve Durum Numarası Kriterleri Kullanılarak Baum-Welch HMM Topluluk Eğitim Algoritmalarının Karşılaştırılması ve Değerlendirilmesi yerine Vitterbi Eğitimini kullanmaktadır . Ancak bu makale sadece aynı sınırlı ileri besleme topolojisi olan HMM'leri araştırmaktadır. (Bu yöntemi keşfetmeyi planlıyorum ve bu yayını bulgularımla güncelleyeceğim.)

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.