Mit welcher stabilen Python-Bibliothek kann ich Hidden Markov Models implementieren? Ich muss einigermaßen gut dokumentiert sein, da ich dieses Modell noch nie wirklich benutzt habe.
Alternativ gibt es einen direkteren Ansatz zur Durchführung einer Zeitreihenanalyse für einen Datensatz unter Verwendung von HMM?
python
time-series
markov-process
user140323
quelle
quelle
Antworten:
Ein anderer alternativer Ansatz ist die PyMC-Bibliothek. Es gibt eine gute Zusammenfassung von https://gist.github.com/fonnesbeck/342989, die von Fonnesbeck erstellt wurde und Sie durch die HMM-Erstellung führt.
Und wenn Sie sich wirklich für PyMC interessieren, gibt es ein großartiges Open-Source-Buch über Bayesian Modeling - https://github.com/CamDavidsonPilon/Probabilistic-Programming-and-Bayesian-Methods-for-Hackers . Versteckte Markov-Prozesse werden nicht explizit beschrieben, es gibt jedoch ein sehr gutes Tutorial über die Bibliothek selbst mit zahlreichen Beispielen.
quelle
Als Update zu dieser Frage glaube ich, dass die akzeptierte Antwort nicht die beste von 2017 ist.
Wie in den Kommentaren von Kyle vorgeschlagen,
hmmlearn
handelt es sich derzeit um die Bibliothek für HMMs in Python.Mehrere Gründe dafür:
Die aktuelle Dokumentation , die sehr ausführlich ist und ein Tutorial enthält
Die
_BaseHMM
Klasse, von der eine benutzerdefinierte Unterklasse zur Implementierung von HMM-Varianten erben kannKompatibel mit den letzten Versionen von Python 3.5+
Intuitive Bedienung
Im Gegensatz dazu unterstützt die
ghmm
Bibliothek Python 3.x gemäß der aktuellen Dokumentation nicht. Die meisten Dokumentationsseiten wurden 2006 erstellt. Es scheint auf den ersten Blick keine Bibliothek der Wahl zu sein ...Bearbeiten: Noch gültig im Jahr 2018.
quelle
Die Granatapfelbibliothek unterstützt HMM und die Dokumentation ist sehr hilfreich. Nachdem ich viele hmm-Bibliotheken in Python ausprobiert habe, finde ich das ziemlich gut.
quelle
Für einen alternativen Ansatz, vielleicht sogar um das Verständnis zu fördern, werden Sie wahrscheinlich einen Nutzen darin finden, eine Analyse über R durchzuführen. Einfache, auf Zeitreihen basierende Tutorials gibt es zuhauf für [Möchtegern] Quanten, die einen Bootstrap bieten sollten. Teil 1 , Teil 2 , Teil 3 , Teil 4 . Diese bieten Quellen für die Generierung / Erfassung von Daten sowie für die Manipulation, sodass Sie einen Großteil der Arbeit umgehen können, um die tatsächlichen HMM-Methoden bei der Arbeit zu sehen. Es gibt direkte Analogien zu den Python-Implementierungen.
Als Randnotiz, für eine theoretischere Einführung, könnte Rabiner vielleicht einige Einsichten liefern
quelle
Die Ghmm- Bibliothek ist möglicherweise die, nach der Sie suchen.
Wie es auf ihrer Website heißt:
Es hat auch eine schöne Dokumentation und eine Schritt-für-Schritt-Anleitung, um Ihre Füße nass zu machen.
quelle