Schätzung der Markov-Kettenwahrscheinlichkeiten

12

Wie würde man die MC-Übergangsmatrix in Anbetracht der Zeitreihen üblicherweise schätzen?

Gibt es dafür eine R-Funktion?

user333
quelle
Handelt es sich um eine diskrete oder kontinuierliche Markov-Kette?
Makro
Diskret denke ich. Ich habe 5 mögliche Zustände S1 bis S5
user333
Aufbauend auf den bisherigen netten Antworten: Ja, es gibt einen Weg, der positionsbewusst ist. Ich denke, es ist mit Markov-Modellen n-ter Ordnung möglich.

Antworten:

14

Da die Zeitreihe diskret bewertet ist, können Sie die Übergangswahrscheinlichkeiten anhand der Stichprobenanteile abschätzen. Sei der Zustand des Prozesses zum Zeitpunkt t , dann sei P die ÜbergangsmatrixYttP

Pij=P(Yt=j|Yt1=i)

Da es sich um eine Markov-Kette handelt, hängt diese Wahrscheinlichkeit nur von , sodass sie anhand des Stichprobenanteils geschätzt werden kann. Sei n i k die Häufigkeit, mit der sich der Prozess von Zustand i nach k bewegt hat . Dann,Yt1nikik

P^ij=nijk=1mnik

Dabei ist die Anzahl der möglichen Zustände ( in Ihrem Fall ist m = 5 ). Der Nenner, m k = 1 n i k , ist die Gesamtzahl der Bewegungen außerhalb des Zustands i . Das Schätzen der Einträge auf diese Weise entspricht tatsächlich dem Maximum-Likelihood-Schätzer der Übergangsmatrix, wobei die Ergebnisse als multinomial betrachtet werden, bedingt durch Y t - 1 .mm=5k=1mnikiYt1

Bearbeiten: Dies setzt voraus, dass Sie die Zeitreihen in gleichmäßigen Abständen beobachten. Andernfalls würden die Übergangswahrscheinlichkeiten auch von der Zeitverzögerung abhängen (auch wenn sie noch markovisch sind).

Makro
quelle
6
Ich höre, was du sagst. Grundsätzlich werden beobachtete Frequenzen meine Matrix sein ... In einfachen Worten!
User333
Wie wäre es mit einem kontinuierlichen Zustandsraum? Obgleich ich ein bisschen Probleme habe, das Konzept zu verstehen?
user333
1
Für einen stetigen Zustandsraum wird das Problem viel komplizierter, da Sie dann eher eine Übergangsfunktion als eine Matrix schätzen müssen . In diesem Fall ist das, was ich oben beschrieben habe, nicht sinnvoll, da die Grenzwahrscheinlichkeit für einen bestimmten Zustand 0 ist (ähnlich wie die Wahrscheinlichkeit, einen bestimmten Punkt im Probenraum zu erfassen, 0 für eine kontinuierliche Verteilung ist). In dem kontinuierlichen Fall glaube ich, dass die Schätzung der Übergangsfunktion die Lösung für einen Satz von Differentialgleichungen ist (ich bin nicht sehr vertraut damit, also korrigiert mich jemand, wenn ich falsch
liege
Geht diese Methode nicht von einer kontinuierlichen Beobachtung aus, sondern von vielen gemäß dem nachstehenden Punkt? Stellen Sie sich zum Beispiel vor, E wäre ein absorbierender Zustand ... Dann würde dies hier sicherlich nicht offenbart werden?
HCAI
4

Es ist sehr, mit der Hypothese, dass Ihre Zeitreihe stationär ist:

Um die ausgezeichnete Antwort von Macro zu vereinfachen

Hier haben Sie Ihre Zeitreihen mit 5 Zuständen: A, B, C, D, E

AAAEDDDCBEEEDBADBECADAAAACCCDDE

Sie müssen nur zuerst die Übergänge zählen: - A: 9 Übergänge lassen Von diesen 9 Übergängen sind 5 A-> A, 0 A-> B, 1 A-> C, 2 A-> D, 1 A-> E Die erste Zeile Ihrer Übergangswahrscheinlichkeitsmatrix lautet also [5/9 0 1/9 2/9 1/9].

Sie zählen das für jeden Zustand und erhalten dann Ihre 5x5-Matrix.

Mickaël S
quelle
Tolles Beispiel, danke. Also beschäftigen sich Markov-Ketten nur mit der Anzahl der Übergänge, nicht mit ihrer Platzierung, richtig? Wäre zum Beispiel AAABBBAeine gleiche Matrix wie ABBBAAA?
Marcin
ja, mit Markov-Kette, wenn Sie die gleiche Anzahl von Übergängen haben, haben Sie die gleiche Matrix. Das ist eine gute Frage. Auch wenn Sie nicht genau die gleiche Sequenz haben, haben Sie das gleiche "Verhalten" und das ist das Wichtigste beim Modellieren, wenn Sie genau die gleiche Sequenz wiederholen möchten, warum modellieren? Wiederholen Sie einfach Ihre Daten.
Mickaël S
Gibt es eine andere Methode zum Zählen von Übergängen, die positionsabhängig ist? Ich mache Nachforschungen über das Knacken von Passwörtern, daher wäre es schön, eine Methode zu haben, mit der man abschätzen kann, welches der wahrscheinlichste nächste Charakter ist. Das Problem bei Passwörtern ist, dass die Leute dazu neigen, Regeln zu befolgen, wie * am Anfang und Ende des Passworts oder ein Passwort mit einer 1 abzuschließen. Es zählen also nicht nur die Übergänge, sondern auch deren Position.
Marcin
Okay, ich habe nicht über diesen Fall nachgedacht. Sind Sie sicher, dass Markov Chain der beste Weg ist, das zu tun, was Sie wollen? Wenn Sie so denken, wie ist Ihr Zustand (jeder Charakter ist ein Zustand)? Und wie planen Sie den Übergang zu berechnen? Wie wollen Sie die Markov-Kette einsetzen?
Mickaël S
1

Die Funktion markovchainFit aus dem Paket markovchain behandelt Ihr Problem.

Giorgio Spedicato
quelle