天天看點

《統計會犯錯——如何避免資料分析中的統計陷阱》一一1.1 p值的力量

本節書摘來自異步社群出版社《統計會犯錯——如何避免資料分析中的統計陷阱》一書中的第1章,第1.1節,作者:【美】alex reinhart(亞曆克斯·萊因哈特),更多章節内容可以通路雲栖社群“異步社群”公衆号檢視。

假設你在測試一種新的感冒藥,其中新藥可以確定一天之内消除所有感冒症狀。為此,你找到20位感冒患者,給一半患者服用新藥,其他人服用安慰劑。然後記錄他們的感冒時長,找到服藥與未服藥患者的平均感冒時長。

這種測試有問題嗎?進一步分析,不是所有的感冒都是同一種類型。平均來說,感冒時間通常要持續一周。但有一些感冒會持續兩周甚至更久時間,也有一些持續幾天就好了。可能服用新藥的這一組患者都是較短時長的感冒,很快就好了。那麼,又如何證明是藥物起作用了,而不是這些患者運氣好呢?

統計假設檢驗給出了解決辦法。如果你知道典型的感冒時間 的分布,也就是說有多少患者得短期、長期和平均時長的感冒,據此可以給出一組随機樣本的患者的感冒時長比平均時長更長或更短的機率。那麼假設檢驗(或顯著性檢驗)就可以回答這個問題:即使藥物完全無效,那麼試驗産生以上觀測結果的可能性有多大?

如果隻對一個人進行藥物測試,那麼他的感冒時長比平均時長更長或者更短,都是不足為奇的。大部分感冒并不是非常理想的平均水準。但是如果對1000萬個患者進行測試,而所有患者都是短期感冒,這種情況就不太可能是巧合了,更有可能是藥物的效果。

科學家對這種直覺進行量化,給出了一個概念—— p值。

p值是在假設藥物效果沒有真實差異的情況下,差異等于甚至大于實際觀測差異的機率[1]。

例如,你給100個患者服藥,發現他們的平均感冒時長比對照組少一天,這時p值就是在藥物無效的假設下,“他們的感冒時間比對照組少一天”這種情況完全是出于巧合的機率。你可能會說,p值依賴于效果大小,試驗組感冒時間比對照組少一天的情況會比少四天的情況更為常見,也與試驗組的患者數目有關。

記住,p值不是用來測度你多麼正确,或者這個差異有多重要。反之,它是對“意外”的測度。如果假設藥物無效,那麼也隻能用運氣來解釋兩組的差別。然後p值越小,試驗結果是意外或因為運氣的可能性越大——或者說你的假設就是錯誤的,新藥的确有效。

如何運用p值來解釋“這些組之間是否有差異”?通常的經驗法則是:當p<0.05時,差別是“統計顯著”的。選擇0.05不是出于特别的邏輯或統計的原因,而是在多年的使用過程中形成的科學慣例。

注意到應用p值時,假設試驗各組沒有差別。這是顯著性檢驗的一個反直覺的特征:如果想要證明藥物有效,就去證明資料不支援藥物無效。是以,p值可以擴充到任何一種用數學表示某個要推翻的假設的情形。

但是p值也有它自身的局限。記住,p值是指對意外的測度,一個較小的p值意味着更加意外。它不是影響大小的測度。可以通過測量大的影響獲得一個小的p值(這種藥物可以使人的壽命延長4倍),或者用較大的确定性測量一個較小的影響。因為一種藥物或幹預通常是有一些效果的,是以可以收集足夠的資料,檢測極其微小但相對不太重要的差異,然後得出統計顯著性的結果。bruce thompson寫道:

統計顯著性檢驗可能包含一個套套邏輯(tautology)[2],研究人員已經收集了數百個産品“失效”的測試資料,然後通過一個統計檢驗來評價産品是否真的“失效”。而事實上,研究人員早已知道結果,因為他們收集資料時就知道資料都是已經“失效”的。考慮到知識的累積,這一套套邏輯已經造成了相當嚴重的後果1。

簡而言之,統計顯著性不意味着任何實際意義的顯著性。統計顯著性并不會給出太多資訊。一個統計顯著的差別可能隻是噪聲,或者展現了真實的影響,但是這一影響需要更多的資料才能确定。

沒有數學工具可以判斷出假設是真是假;也可以考慮假設與資料是否一緻。如果資料太少或者不清楚,那麼結論也就不确定了。

統計的心理暗示

p值局限性的背後還有一些關鍵核心的問題。假設運氣(而不是藥物或者幹預)是實驗中唯一因素,p值是獲得結果等于或大 于觀測值的機率。這就意味着p值迫使你去質疑從未發生過的結果——也就是比你的結果更極端的結果。獲得這樣的結果的機率有賴于實驗設計,這使p值具有“心理暗示特征”:兩種不同的實驗設計可以産生相同的觀測資料,但會得到不同的p值,因為未觀測的資料是不同的。

假如我連續問你12個關于統計推斷真假的問題,你正确回答了9個。我要檢驗假設:你是否是依靠随機猜想答對了這些問題?為此,我要計算你依靠随機猜想答對至少9個問題的機率。假設你等機率地選取“正确”和“錯誤”,計算得p=0.073[3]。因為p>0.05,很有可能你就是随機猜的答案。若确實如此,你将會在規定時間内以7.3%的機率答對9個甚至更多的問題2。

但也可能我并不是隻打算問你12個問題。如果我有一台電腦可以無限地産生問題,直到你答錯3個。現在我要計算在15、20、47個問題之後你答錯3個問題的機率,甚至是在175、231個問題之後你仍舊沒有答錯3個的機率。計算可得p=0.033。因為p<0.05,我的結論就是:你依靠随機猜想不太可能得到這樣的結果。

這是非常麻煩的:兩個試驗收集到相同的資料,但是卻有不一樣的結論。莫名其妙,p值竟然能懂你的意圖!

奈曼-皮爾遜檢驗

為了更好地了解p值,我們要了解一些統計學的曆史。統計顯著性檢驗有兩個主要分支。關于統計重要性檢驗的思想主要有兩個流派。第一個分支是費希爾(r.a.fisher)于1920年提出。費希爾将p值看作了解一個資料集是如何令人意想不到的一種簡便、非正式的方法,而不是假設檢驗的嚴格正式流程中的一個環節。隻有當p值與試驗者的先驗經驗以及專業知識結合時,它才能更好地解釋新觀測的資料。

在費希爾的著作問世以後,奈曼和皮爾遜(jerzy neyman 和egon pearson)嘗試解決了一些無法解決的問題。例如,在感冒藥物有效性檢驗中,隻要你能從比較中得到 p 值,你就可以嘗試通過均值、中位數或者其他任何統計量,來比較兩個對照組的水準。但是你如何知道哪種選擇是最好的?這個最好的選擇對假設檢驗又意味着什麼?

在科學研究中,控制假設檢驗的兩類錯誤是至關重要的:第一類錯誤(false positives),就是将無效說成有效(取僞);第二類錯誤(false negatives),則是将有效判斷成無效(棄真)。在一定程度上,第一類錯誤和第二類錯誤是一枚硬币的兩面。如果我們比較激進,則容易犯第一類錯誤;如果我們過于保守,第二類錯誤會主動找上門來。

奈曼和皮爾遜發現雖然不能同時完全消除兩類錯誤,但是可以給出一種規範的決策過程來確定犯第一類錯誤的可能性隻在預先确定的比率下發生。他們将這個比率稱為顯著性水準 α(false positives rate),試驗者可以依據他們的經驗和期望基礎上設定合适的α。舉例來說,如果我們先要設立10%的第一類錯誤率,就令α等于0.1。但是如果我們希望決策更加保守,那麼就可以将α設定為0.01或者更小。為了比較哪種檢驗過程是最好的,我們可以考察在給定α的條件下,哪一種檢驗過程犯第二類錯誤的比率是最低的。

實踐中應該怎麼做呢?在奈曼-皮爾遜體系下,我們定義一個原假設,即一個“無效”(效應為零)的假設,同時定義一個備擇假設,如“效應大于零”。然後建構一個檢驗去比較這兩個假設,并且決定在原假設正确時我們期望得到怎樣的結果。我們利用 p值來實施奈曼-皮爾遜檢驗程式,即如果p<α,則拒絕原假設。不像費希爾的檢驗過程,此方法沒有将注意力放在揭示任何一個特定的試驗證據的強度,而隻關心決定原假設是否被拒絕。p值的大小,除了“拒絕原假設”,無法用來比較試驗或得出其他任何結論。正如奈曼-皮爾遜所言。

我們傾向于認為隻要涉及一個特殊的假設,不存在建立在機率理論基礎上的檢驗能夠單獨提供關于這個假設正确或者錯誤的有價值的證據。

但是,我們可以從另一個角度審視檢驗的目的。我們不希望知道每個獨立假設的真假,但是可以探索引導我們關于他們行為的規則,接下來就要保證在長期的經曆中我們不會常常犯錯3。

雖然奈曼和皮爾遜的方法在概念上與費希爾的方法不同,但是實踐科學家常常将兩者合并4,5,6。奈曼和皮爾遜的方法就是用一個預先標明的p值門檻確定長期的第一類錯誤率獲得“統計顯著”。但是假定你進行一次試驗得到p值為0.032,若門檻為p<0.05,這個時候便是統計上顯著的。但是若門檻縮小成p<0.033,你的結果還是統計顯著的。是以說我的第一類錯誤率為3.2%是十分誘人的,實際上這是常見的一種誤解。

這種解釋存在問題。僅僅通過一次試驗不能得到第一類錯誤率。它是由檢驗過程決定的,而不是由一次試驗的結果得出的。是以當你用一個檢驗過程來獲得一個長期的第一類錯誤率α,不管結果是怎麼樣的,你都不能說每一次試驗都會有一個真實的 p 值和對應的第一類錯誤率。

繼續閱讀