Punktanalyse ändern

8

Könnte mir bitte jemand den Änderungspunkt erklären. Ich verwende das Paket in R und verstehe nicht wirklich, was die verschiedenen Methoden bedeuten, welche Vor- und Nachteile sie haben, und ich verstehe insbesondere den Strafwert nicht. Was bedeutet das, wenn Sie den Strafwert erhöhen, und was bewirkt es? Ich habe viel online recherchiert, aber ich finde immer wieder die Cran R- und Quick R-Sites, die gut sind, aber die Art und Weise, wie sie sagen, schneidet es einfach nicht für mich.

Vielen Dank.

Darla
quelle
2
Haben Sie diese Dokumentation für das Changepoint-Paket gelesen ?
Jeromy Anglim
Leider habe ich :(
Darla

Antworten:

21

Das Änderungspunktpaket enthält 3 Hauptfunktionen cpt.mean, cpt.varund cpt.meanvar. Als Praktiker sind dies die einzigen Funktionen im Paket, die Sie benötigen sollten. Wenn Sie der Meinung sind, dass Ihre Daten eine Änderung des Mittelwerts enthalten könnten, verwenden Sie die cpt.meanFunktion usw.

Bei der nächsten Frage sollten Sie sich fragen, ob Sie nach einer einzelnen oder mehreren Änderungen in Ihren Daten suchen. Das methodArgument behandelt dies, es gibt AMOC für höchstens eine Änderung und PELT, BinSeg und SegNeigh für mehrere Änderungen. Welche Methode mit mehreren Änderungspunkten Sie verwenden möchten, hängt ab von:

a) Ihre Wahl der Verteilung / verteilungsfreien Methode (siehe unten) und

b) Wie viel Zeit Sie haben / wie genau Ihre Antwort sein soll. Das BinSeg ist schnell, aber ungefähr, PELT ist genau und schnell, kann aber nicht in allen Distributionen verwendet werden. SegNeigh ist genau, aber langsam.

Die nächste Frage ist, welche Annahmen Sie zu Ihren Daten treffen können / wollen. Der Schlüssel hierbei ist, dass die Annahme für jeden Datensatz zwischen Änderungen gilt und nicht für die gesamten Daten. Beispielsweise können Sie möglicherweise eine Normalverteilung annehmen. Wenn Sie jedoch einen Test auf Normalität für die gesamten Daten durchführen, schlägt dies höchstwahrscheinlich fehl (aufgrund möglicher Änderungen). Daher nehmen wir normalerweise eine Annahme an, führen die Änderungspunktanalyse durch und überprüfen dann die Annahmen basierend auf den identifizierten Änderungen. Auch hier gibt es je nach Art der Änderung unterschiedliche Verteilungsmethoden und verteilungsfreie Methoden. Die Auswahlmöglichkeiten finden Sie in der Dokumentation zu den einzelnen Funktionen. Sie können auch kommentieren, welche Teststatistik Sie verwenden möchten, und ich kann die Annahmen auflisten.

Schließlich sehen Sie sich die Strafe an. Die Strafe bietet einen Kompromiss zwischen vielen kleinen Änderungen und keinen Änderungen. Wenn Sie also die Strafe auf 0 setzen, erhalten Sie an jeder möglichen Stelle eine Änderung. Wenn Sie die Strafe auf unendlich setzen, erhalten Sie keine Änderungen. Der angemessene Wert der Strafe hängt von Ihren Daten und der Frage ab, die Sie beantworten möchten. Beispielsweise haben Sie möglicherweise Änderungen im Mittelwert von 0,5 Einheiten, aber Sie sind möglicherweise nur an Änderungen von 1+ Einheiten interessiert. Es gibt viele Möglichkeiten, Ihre Strafe zu wählen:

  1. "by-eye", dh probieren Sie einige verschiedene Werte aus, bis Sie einen finden, der für Ihr Problem geeignet ist.

  2. "Ellbogen-Plot", dh Plotten der Anzahl der identifizierten Änderungspunkte gegen die verwendete Strafe. Dies erzeugt eine Kurve, bei der kleine Werte der Strafe große (unechte) Änderungen hervorrufen, und wenn die Strafe abnimmt, fallen diese unechten Änderungen mit einer schnellen Rate ab, verlangsamt sich diese Rate, da nur echte Änderungen übrig bleiben, bevor sie für größere Strafen langsam auf keine Änderungen abfallen . Die Idee ist, 2 gerade Linien an diese Kurve anzupassen und die Strafe dort zu wählen, wo sie sich kreuzen. Dies führt zu einer Ad-hoc-Methode, mit der die Strafe objektiver gewählt werden kann als 1.

  3. Verwenden Sie ein Informationskriterium. Es gibt einige wie AIC, BIC / SIC, Hannan-Quinn im Paket enthalten. Es gibt andere, die nicht im Paket enthalten sind, aber Sie können eine Formel angeben, pen.valuewenn Sie dies wünschen.

Wenn Sie weitere Informationen oder Erläuterungen zu bestimmten Punkten benötigen, kommentieren Sie einfach und ich werde versuchen zu antworten.

adunaisch
quelle
Das ist sehr hilfreich, danke. Meine eine Sache ist, ich bin wirklich auf den Strafwert gespannt. Was bedeutet das? Wie interpretieren Sie beim manuellen Einstecken einen pen.value = .05 gegenüber einem pen.value = .40? Was sagt das über Ihre Daten aus?
Darla
Die Größe von pen.value ist relativ zu den Daten, an denen Sie arbeiten, sodass Sie einen pen.value von 0,05 für einen Datensatz nicht wirklich mit einem pen.value von 0,4 für einen anderen vergleichen können. Bei demselben Datensatz identifiziert die kleinere Strafe jedoch mehr Änderungen und kann somit kleinere Änderungen der Parameter identifizieren. Der größere Strafwert sucht nach größeren Änderungen, bevor er sie als "signifikant" betrachtet.
Adunaic
Woher weiß ich, wie wichtig wichtig ist? Wenn ich pen.value = .20 eingebe, erhalte ich 8 Änderungspunkte, aber wenn ich pen.value = .30 eingebe, erhalte ich nur 5 Änderungspunkte. Woher weiß ich, ob diese 3 Änderungspunkte von Bedeutung sind? Woher soll ich wissen, bei welchem ​​Wert ich bleiben soll?
Darla
1
Siehe Antwort auf Debs neue Frage unter: stats.stackexchange.com/questions/60245/…
adunaic
Wie führt man eine rollierende Changepoint-Analyse durch? ist das möglich?
user1234440