作者 | SHAROON SAXENA 編譯 | CDA數據分析師 Everything you Should Know about p-value from Scratch for Data Science
介紹
當你向有抱負的數據科學家談論p值時,以下情況看起來是否很熟悉?
我無法告訴你數據科學家(甚至是成熟的科學家)在涉及到如何解釋p值時是多麼的手足無措。實際上,可以花點時間回答以下問題:
如何解釋p值?P值有多麼的重要?你將如何向非數據科學人員(例如利益相關者)解釋p值的重要性?這些問題應該是每個數據科學專業人員都應該能夠回答的關鍵問題。以我的經驗,大多數人都在努力克服第一個問題。如果我們不能為客戶分解機器學習模型的結果,我們就不能說服他們。
維基百科(Wikipedia)對p值的定義讓那些統計和數據科學領域的任何新手都感到望而生畏。關於p值的典型對話是這樣的:
而且你只知道一些公式和約定,卻沒有如何系統的解釋什麼是P值的想法。那麼,我們如何一勞永逸地學習p值,並將其根深蒂固地牢記在心?
我們應該如何從頭開始理解P值
在本文中,我們將從頭開始逐步建立p值的認知,並且還要揭穿p值的傳統(錯誤)解釋。我們將介紹以下內容:
什麼是p值?統計學意義統計中p值的例子數據科學中P值的例子p值的一些傳統(錯誤)解釋什麼是p值?
讓我們從絕對的基礎開始。什麼是p值?為了理解這個問題,我們將來看一下正態分布:
我們在x軸上具有值的範圍,在y軸上具有不同值的出現頻率。
現在,假設我們從此分布中選取一個隨機值。我們選擇接近均值的值的可能性是最高的,因為它具有最高的峰值(由於該區域中的出現值較高)。我們可以清楚地看到,如果我們遠離峰值,則值的出現會迅速減少,相應的概率也會減少,趨近於一個非常小的接近0的值。
但是本文是關於p值的-那麼為什麼我們要看正態分布呢?好吧,考慮到我們上面討論的正態分布,請考慮如何定義P值。
P值是上圖中紅點右側值的累計概率(曲線下的面積)。
要麼是,
當從分布中隨機選擇值時,與紅點相對應的p值告訴我們將任何值帶到紅點右側的「總概率」。
現在,這看起來可能像是一個非常幼稚的定義,但是我們將在此基礎上繼續。
P值本身不包含任何值。較大的p值表示樣本得分與總體得分更加一致或相似。它就是如此簡單。
現在,你可能已經遇到了將p值與alpha值進行比較以得出結論的經驗法則。因此,讓我們研究一下alpha值。
P值的統計意義:輸入– Alpha值
到目前為止,我已經提到過幾次alpha值,alpha值也被稱為顯著性水平。由於某些未知原因,我們知道該值為0.05或5%。
在統計課上我們也被老師教導過,也就是p值小於alpha意味著所獲得的結果具有統計學意義。但是alpha值到底是多少呢?
因此,讓我們花點時間看一下alpha值的含義。
alpha值只是一個閾值,P值在進行實驗後進行的相似性或顯著性(Z-測試或T-測試)中的測試前決定該閾值。
這意味著,如果得到樣本得分的概率小於或閾值p-值,我們認為它與總體顯著不同,甚至屬於新的樣本分布。
再次考慮一下上述的正態分布。此分布中的紅點表示alpha值或閾值p值。現在,讓我們說綠色和橙色點代表實驗後獲得的不同樣本結果。
在圖中可以看到,最左邊的綠點的p值大於alpha。因此, 這些值可以得到相當高的概率和樣本結果被認為是幸運的。
最右邊的點(橙色)的p值小於alpha值(紅色)。因此,樣本結果是一個罕見的結果,不太可能是幸運的。因此,他們與分布有很大的不同。 。
alpha值取決於正在執行的測試。如果我們不確定應該考慮什麼值,那麼將alpha值設為0.05被認為是一個不錯的約定。
但這帶有一個星號- 我們考慮的alpha值越小,則將結果視為有意義的難度就越大。請記住,每個實驗的alpha值會有所不同,並且沒有任何一個alpha值可以視為經驗法則。
讓我們仔細看一下alpha值和p值之間的關係。
p值<alpha值
考慮以下分布:
在此,紅點表示Alpha值。這基本上是閾值p值。我們可以清楚地看到,閾值右側曲線下方的區域非常小。
橙色點代表使用樣本總體的p值。在這種情況下,我們可以清楚地看到p值小於alpha值(紅點右側的面積大於橙點右側的面積)。這可以解釋為:
從樣本獲得的結果是分布的一個極端(這是一個非常罕見的事件),因此很有可能它可能屬於另外一個分布(如下所示)。
考慮到我們對alpha和p值的定義,我們認為得到的樣本結果是顯著不同的。我們可以清楚地看到p值遠遠小於alpha值。
p值> alpha值
我覺得你應該在進一步閱讀之前回答這個問題。既然你已經知道了硬幣的另一面,你就可以想像這種情況的結果了。
p值大於alpha意味著結果支持原假設,因此我們無法拒絕它。此結果通常與備用假設相反(獲得的結果來自其他分布),並且獲得的結果並不顯著,只是一個偶然或者運氣的問題。
再次,考慮相同的總體分布曲線,紅色點為alpha,橙色點為樣本中計算出的p值:
因此,p值> alpha(考慮曲線下方紅色和橙色點右側的區域)可以解釋如下:
樣本結果只是總體分布的一個低概率事件,很可能是靠運氣得到的
我們可以清楚地看到,人口曲線下方橙色點右側的面積遠大於alpha值。這意味著所獲得的結果更可能是同一總體分布的一部分,而不是其他分布的一部分。
現在我們已經理解了p值和alpha值的解釋,讓我們來看一個來自統計世界的經典例子。
統計中p值的例子
在國家射箭隊中,總教練打算在即將到來的比賽之前改善射箭運動員的表現。你認為提高弓箭手性能的好方法是什麼?
他提出並實施了在比賽前進行呼吸運動和冥想可能會有所幫助的想法。實驗前後的統計數據如下:
真有趣。結果支持了弓箭手總體得分提高的假設。但是教練希望確保這些結果是由於弓箭手能力的提高而不是因為運氣或偶然性。那麼你認為我們應該怎麼做?
這是一個典型的相似度測試(本例中為z檢驗),我們想要檢查樣本是否與總體相似。我不會深入討論相似性測試,因為這超出了本文的範圍。
為了解決這個問題,我們將循序漸進的方法:
了解給定的信息並形成備選假設和無效假設計算Z分數並找到曲線下的面積計算相應的p值比較p值和alpha值解釋最終結果這個問題的解決方案
步驟1:了解給定的信息
總體均值= 74總體標準偏差= 8(最近10年的歷史數據與總體有關)樣本均值= 78樣本大小= 60(此處,樣本與練習呼吸練習和冥想的弓箭手有關)我們的總體均值和標準差樣本容量超過30,這意味著我們將使用z檢驗。
根據上面的問題,可能存在兩種情況:
實驗後的結果取決於運氣,即實驗前後的均值相似。這將是我們的「零假設」實驗後的結果確實與實驗前的結果有很大不同。這將是我們的「備擇假設」步驟2:計算Z分數
現在,我們將使用以上公式計算Z分數。你問這些符號代表什麼?好吧,告訴你是什麼意思:
X =總體均值M =樣本均值Sigma =總體標準偏差n =樣本實例數插入相應的值後,Z分數為– 3.87。
步驟3:參考Z表並找到p值:
如果我們在Z表中查找3.87,則會得到的值是0.999。這是曲線下的面積或總體分布下的概率。但這是什麼概率?
我們得到的概率是在我們計算的z分數(紅點)的左邊。該值0.999表示相對於總體,得到「小於樣本得分78」的結果的「總概率」。
這裡,紅點表示樣本均值相對於總體分布的位置。但是我們之前學過p值在紅點的右邊,我們該怎麼做?
對於這個,我們會用到正態Z分布下的總面積是1。因此,z分數右側的面積(或未陰影區域所代表的p值)可以計算為:
p值= 1 – 0.999
p值= 0.001
0.001 (p值)是紅點右側的未陰影區域。值0.001表示得到「大於樣本得分78」的結果的「總概率」,相對於總體。
步驟4:比較p值和alpha值
我們沒有為alpha提供任何值,因此我們可以考慮alpha = 0.05。根據我們的理解,如果獲得樣本(p值)結果的可能性小於alpha值,則我們認為獲得的樣本結果有顯著差異。
我們可以清楚地看到,p值遠遠小於alpha值:
0.001(紅色區域)<< 0.5(橙色區域)
這表明,就總體分布而言,得到平均值為78的概率很低。因此,可以方便地說,射箭運動員在樣本群體中成績的提高不是運氣的結果。樣本總體屬於其自身的某種其它(在本例中更好)分布。
數據科學中p值的例子
現在,我相信這是你一直在等待的部分。在統計中使用p值是可以理解的,我們甚至多次聽說過它。但是p值處於數據科學的那個領域中呢?
即使許多有抱負的數據科學家了解p值的含義,他們也不知道如何在數據科學中使用此知識。結果就是他們錯過了一個非常強大的方法來改進他們的模型。
P值是特徵選擇過程中的重要指標。在特徵選擇中,我們嘗試找出自變量的最佳子集來構建模型。
現在你可能會問:「為什麼不把所有的自變量都帶入呢?」
實際上,引入冗餘且沒有貢獻的變量會增加模型的複雜性。此外,它們可以降低模型在準確性、運行時甚至內存佔用方面的性能。
讓我們看一個例子。假設我有一個包含不同初創公司信息的數據集。我們有以下變量:
我們的目標是根據其他自變量來預測初創公司的利潤。現在,你的直覺可能會說–使用所有可用的自變量來構建一個線性回歸模型。
經過預處理和OneHot編碼之後,因變量具有以下映射:
接下來,我們將使用statsmodels庫構建一個OLS(普通最小二乘)模型。這是我們得到的:
這個表顯示了所有關於獨立變量的統計數據。但是現在,我們只對包含p值的列感興趣。我們可以清楚地看到,「R&D Spend」、「Administration」和「State_California」的p值超過0.50!
但是問題是,這個p值在回歸模型中意味著什麼?為此,讓我們了解計算這些p值的假設是什麼:
原假設:自變量對目標變量沒有顯著影響備擇假設:自變量對目標變量有顯著影響現在,以上結果表明,「R&D Spend」、「Administration」和「State_California」對初創公司獲得的「利潤」沒有重大影響。因此,讓我們從模型中刪除這三個變量
除去這兩個變量後的結果映射為:
在再次使用statsmodels庫構建OLS模型時,我們得到的是:
我們可以看到,現在只有一個變量剩餘值為0.05 –「 State_Florida」。那麼我們應該刪除它嗎?
首先,我們從未決定任何alpha值。如果我們將alpha值設為0.05,則變量「 State_Florida」將被消除。如果我將alpha設置為0.10,則該變量將在過濾過程中倖存下來。
在這種情況下,考慮到0.05不是要為alpha值選擇的經驗法則,我會保留下來。
在這個模型總結中最重要的一點是,儘管我們減少了兩個獨立變量,但調整後的R-Square值卻上升了。
正如我們前面討論的這是雙重效果。藉助p值,我們不僅創建了一個變量較少的簡單模型,而且還改善了模型的性能。
在總結本文之前,讓我們看一下許多數據科學專業人員和統計學家對p值的誤解。
對p值的一些傳統(錯誤)解釋
我見過很多人對P值有很多的誤解。以下是一些最常見的錯誤:
我們錯誤地拒絕原假設的概率:儘管低p值會促進對零假設的拒絕,但它與拒絕原假設的概率無關統計顯著性水平: 我們在實驗前選擇顯著性水平。如果p值滿足我們的顯著性水平(p < alpha),我們才能得出結論幹預效果的大小:p值絕不表示實驗期間引入的樣品中的幹預大小。原假設成立的可能性: 這與原假設很接近,可能不會造成太大傷害,但仍然會造成混淆。使用頻率統計量來討論原假設為真是不可能的。高p值意味著數據與原假設高度一致當然還有更多的錯誤!但請記住這些,下次你在工作中遇到p值時,你會做得很好。