變化點分析
有人可以向我解釋一下變化點。我在R中使用包,我不太了解不同方法的含義,每種方法的優缺點,尤其不了解懲罰值。當你增加懲罰值時,這意味著什麼,它有什麼作用?我已經在網上進行了大量研究,但我一直在尋找 cran R 和 quick R 站點,它們很好,但他們說的方式對我來說並不合適。
非常感謝。
changepoint 包中有 3 個主要功能
cpt.mean
,cpt.var
和cpt.meanvar
. 作為從業者,這些是您應該需要的包中唯一的功能。如果您認為您的數據可能包含平均值的變化,那麼您可以使用該cpt.mean
函數等。下一個問題您應該問自己,您是在尋找數據中的單個還是多個更改。參數處理這個
method
問題,最多一次更改有 AMOC,多次更改有 PELT、BinSeg 和 SegNeigh。您要使用哪種多變更點方法取決於:a) 您選擇的分銷/免分銷方式(見下文)和
b) 你有多少時間/你希望你的答案有多準確。BinSeg 快速但近似,PELT 準確且快速但不能用於所有分佈,SegNeigh 準確但緩慢。
下一個問題是您可以/願意對您的數據做出哪些假設。這裡的關鍵是該假設適用於更改之間的每組數據,而不是整個數據。例如,您可以假設一個正態分佈,但如果您對整個數據進行正態性測試,它很可能會失敗(由於潛在的變化)。因此,通常我們會做出假設,運行變更點分析,然後根據已識別的變更檢查假設。同樣,根據變化的類型,有不同的分發和無分發方法。有關選擇,請參閱每個函數的文檔,並隨時評論您正在考慮使用的測試統計數據,我可以列出假設。
最後,你看看點球。懲罰提供了許多小更改和沒有更改之間的折衷。因此,如果您將懲罰設置為 0,那麼您在每個可能的位置都會得到更改,如果您將懲罰設置為無窮大,那麼您不會得到任何更改。適當的懲罰值取決於您的數據和您要回答的問題。例如,您可能平均有 0.5 個單位的變化,但您可能只對 1+ 個單位的變化感興趣。有很多方法可以選擇你的懲罰:
- “by-eye”,即嘗試幾個不同的值,直到找到一個看起來適合您的問題的值。
- “elbow-plot”,即繪製針對所使用的懲罰確定的變化點的數量。這將創建一條曲線,其中較小的懲罰值會產生較大的(虛假)變化,並且隨著懲罰的減少,這些虛假變化會以較快的速度下降,該速率會減慢,因為只留下真正的變化,然後慢慢下降到沒有變化以產生較大的懲罰. 我們的想法是將 2 條直線擬合到這條曲線上,並選擇它們相交的罰分。這產生了一種特別但更客觀的選擇懲罰的方法,而不是 1。
- 使用信息標準。包裝中包含 AIC、BIC/SIC、Hannan-Quinn 等一些。包裝中不包含其他一些,但您可以根據需要提供一個公式
pen.value
。如果您需要更多信息或對具體問題進行說明,請發表評論,我會盡力回答。