置換檢驗

Bootstrap 與置換檢驗

Bootstrap

Bootstrap通常是指一種通過重用數據實現評估不確定性的統計方法。應用場景主要是當統計分佈沒有解析解,但是又希望提取出統計量或者對數據運用一些計算方法。

詳細描述:

給定數據點集 X={x1,x2,,xn}X = \{x_1, x_2, \dots, x_n\},考慮這些數據的一個函數f(.)f(.)f(X)f(X)的置信區間定義如下:

  1. 產生對數據點 X^(i)\hat{X}_{(i)}的重採樣,方法是通過有放回從數據集XX中重新去除n個樣本。
  2. 利用bootstrap的樣本,計算函數 f(i)=f(X^(i))f_{(i)} = f(\hat{X}_{(i)})
  3. 多次重複前兩步,得到估計的樣本{f(1),,f(2000)}\{f_{(1)}, \dots, f_{(2000)}\}
  4. 利用{f(1),,f(2000)}\{f_{(1)}, \dots, f_{(2000)}\}來獲取誤差直方圖(利用這些數據作爲經驗分佈)
  5. 必須注意的是:bootstrap的基本假設是,樣本本身包含的變化與你的bootstrap採樣的數據集的變化是相稱的。比如如果擲硬幣3次,然後得到3次正面。那麼bootstrap是無效的。bootstrap另外一種無效的場景是熵估計,每一次bootstrap的熵都會比原始採樣分佈要小。

實現

Matlab支持自動的bootstrap分析,函數爲bootstrap

Permutation Tests(置換檢驗)

基於置換的分析與bootstrap類似,都依賴於對觀察數據的隨機化處理。主要的區別在於bootstrap通常是求取從數據計算出的統計量的採樣分佈,而置換檢驗分析通常用於評估空假設。也就是說,置換檢驗是爲了檢驗數據中出現的模式結構,然後判斷數據中出現的模式類型是否是偶然的。

詳細描述

考慮一個迴歸或者分類的任務,數據集爲{(xi,yi)},for i=1,,n\{(x_i, y_i )\}, \text{for} \space i = 1, \dots, n。置換檢驗的基本思想是隨機的置換yiy_i對應的xix_i,這樣他們之間的統計關係就不存在。如果我們對多次置換得到的數據集檢驗他們的權重,我們就可以利用得到的分佈得到權重的null distribution,也就是假設xxyy沒有統計關係下的分佈。

取決於空假設的類型,存在大量不同的置換分析。通常做法是置換數據的方式是去除一些統計結構,同時保存另一些統計關係。

實現

式是去除一些統計結構,同時保存另一些統計關係。

實現

Matlab的函數randperm可以產生隨機的置換檢驗。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章