摘要:統(tǒng)計是數(shù)據(jù)科學的一個重要部分,它為我們分析和理解數(shù)據(jù)提供了各種工具和技術(shù)。然而,有時通過統(tǒng)計得出的結(jié)果會違背我們的直覺,甚至自相矛盾,從而引起人們的困惑與誤解。在這篇博客里,我們將探討每個數(shù)據(jù)科學工作者都應該熟悉的5個統(tǒng)計學悖論。我們也將解釋每個悖論是什么,為什么會發(fā)生,以及如何避免落入它的常見陷阱。讀完本博客,你將對統(tǒng)計分析中可能出現(xiàn)的一些奇怪和預想之外的結(jié)果有更好的理解,從而能更好地在項目中處理它們。目錄1.Accuracy Paradox 準確度悖論2.False Positive Paradox 假陽性悖論3.Gambler’s Fallacy 賭徒謬誤4.Simpson’s Paradox 辛普森悖論5.Berkson’s Paradox 伯克森悖論6.Conclusion 總結(jié)1.Accuracy Paradox 準確度悖論準確度悖論是指即使模型不具有預測性,也有可能得到具有高準確度的結(jié)果。這種情況常發(fā)生在數(shù)據(jù)集中的類的分布不平衡時。例如,給定一個數(shù)據(jù)集,其中90%的觀察值屬于一類,而剩下的10%屬于另一類。那么預測所有觀察值的多數(shù)類(majority class)的模型將有90%的準確度,即使它實際上不具備預測任何東西的能力。接下來我們通過一個Python實例來解釋上述內(nèi)容:
在本例中,我們創(chuàng)建了一個包含兩個類的不平衡數(shù)據(jù)集。它的一個類中有900個觀察值(0),而另一個類中只有100個觀察值(1)。然后,我們創(chuàng)建一個模型來預測所有觀察值的多數(shù)類(0)。盡管實際上沒有預測任何東西(只是一個包含1000個0的數(shù)組),這個模型達到了90%的準確度。
在醫(yī)學測試中可以找到一些準確度悖論的真實案例。假設(shè)有一種患病概率為十萬分之一的罕見病。如果創(chuàng)建了一個在檢測疾病方面有99.9%準確度的測試,并將其提供給只有0.1%的患病人群,則該測試將具有99.9%的高準確率。然而,它將導致大量的假陽性(False Positive),也就是說,許多健康人將被錯誤地診斷為患有該疾病。
精確度和召回率在評估分類任務(wù)的表現(xiàn)上比準確度更好。而這兩個指標(精確度和召回率)與我們下一節(jié)討論的假陽性悖論有關(guān)。
2.False Positive Paradox 假陽性悖論
當模型具有高準確度和高假陽率時,假陽性悖論就會發(fā)生。也就是說,當大量樣本實際上是陰性時,該模型可能將它們分類為陽性(即假陽。假陽率(False Positive Rate, FPR):檢測出來的假陽性樣本數(shù)除以所有真實陰性樣本數(shù))。這個悖論會導致錯誤的結(jié)論和決策。
Python解釋假陽性悖論的簡單示例:
例如,想象一個病患占總?cè)丝?%的疾病的醫(yī)學測試。如果該測試有99%的準確率,則它有99%的概率正確識別疾病的存在或不存在。但倘若對1000人進行檢測,那么將會有10人被測出陽性,盡管事實上只有1人患病。這意味著陽性測試結(jié)果更可能是假陽性而不是真陽性。
下面是另一個針對假陽性悖論的Python代碼示例:
在這種情況下,精確度和召回率是評估模型性能的更好方法。精確度評估所有陽性分類中真陽性的比例,而召回率評估所有實際陽性實例中真陽性的比例。這些措施可以幫助避免假陽性悖論,對模型性能進行更準確的評估。
3.Gambler’s Fallacy 賭徒謬誤
賭徒謬誤是相信過去的事件可以在隨機過程中影響未來事件的概率。例如,在輪盤游戲中,一些玩家認為,如果球連續(xù)幾次旋轉(zhuǎn)都落在黑色上,那么下次它落在紅色上的幾率會更高,盡管結(jié)果依舊是隨機的。
我們可以借助Python中的numpy模擬投擲一枚公平的硬幣來說明這一點:
在上面的例子中,代碼模擬投擲硬幣10次并計算連續(xù)正面或反面的數(shù)量。賭徒謬誤認為,如果連續(xù)出現(xiàn)了幾個正面,那么下一次的結(jié)果更有可能是反面,反之亦然。然而,在現(xiàn)實中,硬幣的每一次翻轉(zhuǎn)都是獨立的,并且有相同的概率產(chǎn)生正面或反面。
賭徒謬誤會在股票市場等生活場景中出現(xiàn)。一些投資者可能認為,如果一只股票的價值連續(xù)幾天持續(xù)上漲,之后它就更有可能下跌,盡管市場運動其實仍然是內(nèi)在不可預測的,并受一系列因素的影響。
4.Simpson’s Paradox 辛普森悖論
辛普森悖論是指在一個具有某種趨勢的數(shù)據(jù)集中,倘若我們把這個數(shù)據(jù)集分成許多子數(shù)據(jù)集,那么原趨勢會消失或子數(shù)據(jù)集呈現(xiàn)的趨勢與原趨勢相反。如果數(shù)據(jù)被錯誤處理與分析,這可能會導致錯誤的結(jié)論。
我們通過一個例子來更好地理解這一現(xiàn)象。假設(shè)我們想比較一所大學男女申請者的錄取率。已知我們有兩個院系的數(shù)據(jù):院系A(chǔ)和院系B。
在上表中,男女申請者的綜合錄取率為50%。但是,當我們按院系分析數(shù)據(jù)時,可以發(fā)現(xiàn),在每個院系中,女性的錄取率都高于男性。這似乎違背了我們的直覺,因為男性的整體錄取率更高。
出現(xiàn)這種悖論是因為每個院系的申請人數(shù)和錄取率都不一樣。院系A(chǔ)整體錄取率較高,但女性申請者比例較低。院系B整體錄取率較低,但女性申請者比例較高。
在Python中,我們可以使用以下代碼演示這個示例:
在代碼中,我們用上表中的數(shù)據(jù)創(chuàng)建了一個dataframe,計算錄取率并顯示數(shù)據(jù)圖表。然后計算整體錄取率,得出為19.44%。最后,我們將數(shù)據(jù)按院系和性別分組,并計算每個分組的錄取率。我們看到兩個院系的女性錄取率都較高,盡管男性的整體錄取率較高。這是辛普森悖論的一個例子。
5.Berkson’s Paradox 伯克森悖論
伯克森悖論是指當兩個(獨立)變量之間出現(xiàn)/存在負相關(guān)時,如果觀察由原數(shù)據(jù)分成的子數(shù)據(jù)集,這兩個變量之間可能會出現(xiàn)正相關(guān)或無實際相關(guān)性的統(tǒng)計學現(xiàn)象。在分析中如果沒考慮這兩個獨立變量的共因或共果,伯克森悖論就會發(fā)生。
我們將萼片長度和寬度作為兩個感興趣的變量,使用鳶尾花數(shù)據(jù)集來解釋這個悖論。首先,可以在pandas中使用corr()方法計算這兩個變量之間的相關(guān)系數(shù):
如結(jié)果所示,在整個數(shù)據(jù)集中,萼片長度和寬度之間存在負相關(guān)。
然而,如果我們按品種分割數(shù)據(jù)集并分別計算每個品種的相關(guān)系數(shù),我們可能會得到不同的結(jié)果。比如,如果我們只考慮setosa,我們會得到一個正相關(guān):
這意味著setosa的萼片長度和寬度之間存在正相關(guān),這與總體負相關(guān)相反。
這種矛盾的出現(xiàn)是因為setosa的萼片長度和寬度的數(shù)值范圍比其他品種小。因此,當我們只考慮setosa時,整個數(shù)據(jù)集內(nèi)的負相關(guān)性被setosa內(nèi)的正相關(guān)性所掩蓋。
6.Conclusion 結(jié)論
總的來說,理解統(tǒng)計學悖論對數(shù)據(jù)科學家來說至關(guān)重要,因為它們可以幫助避免數(shù)據(jù)分析中的常見錯誤和偏見。
1. 準確度悖論告訴我們,僅僅依靠準確度不足以評估分類任務(wù),精確度和召回率能提供更多有價值的信息;2.假陽性悖論強調(diào)了理解假陽性相對于假陰性的重要性;3.賭徒謬誤提醒我們,每個事件都是獨立的,過去的結(jié)果不會影響未來;4.辛普森悖論表明:整體數(shù)據(jù)有可能掩蓋細節(jié)變量之間的關(guān)系,從而導致錯誤的結(jié)論;5.最后,伯克森悖論顯示了從總體中選取非隨機樣本時,抽樣偏差是如何發(fā)生的。
原文標題:5 Paradoxes in Statistics Every Data Scientist Should be Familiar With原文鏈接:https://pub.towardsai.net/5-paradoxes-in-statistics-every-data-scientist-should-be-familiar-with-478b74310099
*博客內(nèi)容為網(wǎng)友個人發(fā)布,僅代表博主個人觀點,如有侵權(quán)請聯(lián)系工作人員刪除。