我從新冠數(shù)據(jù)里學(xué)到的四個(gè)數(shù)據(jù)科學(xué)基礎(chǔ)知識(shí)
大數(shù)據(jù)文摘
出品來源:medium
編譯:千雪、aileen
雖然現(xiàn)在大家很容易獲取機(jī)器學(xué)習(xí)和數(shù)據(jù)科學(xué)的學(xué)習(xí)工具,但是除了學(xué)習(xí)如何使用工具以外,往工具里輸入數(shù)據(jù)之前如何有效地探索數(shù)據(jù),并找出其局限性也同樣重要。
最令人驚訝的是,總有很多人經(jīng)常不看數(shù)據(jù)就開始構(gòu)建模型,這很明顯是一個(gè)錯(cuò)誤行為。想構(gòu)建一個(gè)有效的模型,就必須了解如何收集數(shù)據(jù),以及數(shù)據(jù)之間在哪些地方存在差距。無論你是要處理Excel表格里的幾百行數(shù)據(jù)還是TB級(jí)別的圖像分類數(shù)據(jù)集,這都同樣重要。
因?yàn)閿?shù)據(jù)是從現(xiàn)實(shí)世界中收集而來的,而現(xiàn)實(shí)世界充滿了怪誕奇葩的事,所以每一個(gè)現(xiàn)實(shí)世界的數(shù)據(jù)集也都充滿了不確定性。目前在COVID-19流行期間,人們?nèi)粘jP(guān)注的疫情數(shù)據(jù)就是如此:每天收集整理并修正來自全世界的數(shù)據(jù),這并不是一件容易的事。因此,你現(xiàn)在看到的報(bào)告數(shù)字,就顯示出了你在其他現(xiàn)實(shí)世界的數(shù)據(jù)集中也能看到的差別和問題。
現(xiàn)在,讓我們一起來看看COVID-19的報(bào)告數(shù)據(jù),感受一下如果不提前檢查數(shù)據(jù)就開始構(gòu)建模型,我們將會(huì)出現(xiàn)哪些錯(cuò)誤。
第1課:不同的數(shù)據(jù)收集方式會(huì)創(chuàng)造出并不真實(shí)的數(shù)據(jù)趨勢(shì)
COVID-19的國際報(bào)告標(biāo)準(zhǔn)是要求每個(gè)國家或地區(qū)報(bào)告醫(yī)院的每天死亡人數(shù),這樣就可以比較出該疾病是如何影響不同的國家的。
我們來看看英國報(bào)道的每日數(shù)字:
英國因COVID-19導(dǎo)致的每天死亡人數(shù):每個(gè)周日/周一死亡人數(shù)都會(huì)大幅下降!
請(qǐng)注意,該報(bào)告的死亡人數(shù)遵循著完美的每周周期:死亡人數(shù)在每個(gè)星期之初(即周日和周一)發(fā)生顯著下降。這是一個(gè)非常有趣的發(fā)現(xiàn),對(duì)模型可能會(huì)產(chǎn)生巨大影響。讓我們猜測(cè)一下,是否是因?yàn)槟莾商烊藗兊奈镔Y待遇或生活方式有所不同,所以才會(huì)導(dǎo)致不同的結(jié)果?
然而,這個(gè)每周的周期是假的,它只是一個(gè)涉及到數(shù)據(jù)如何收集和報(bào)告的人工產(chǎn)物。
每個(gè)醫(yī)療機(jī)構(gòu)每天向中央機(jī)構(gòu)報(bào)告一次死亡總數(shù),英國報(bào)告的總死亡人數(shù)就是用這些數(shù)字的總和減去昨天的數(shù)字。
這會(huì)導(dǎo)致兩個(gè)明顯的問題:
- 一天的總和可能是(甚至通常是)不完整的。如果有醫(yī)療機(jī)構(gòu)未能及時(shí)報(bào)告或報(bào)告不全,那么這些死亡人數(shù)就不會(huì)計(jì)入英國當(dāng)天的死亡總數(shù),而是匯總到未來一天的總數(shù)中。
- 每個(gè)醫(yī)療機(jī)構(gòu)報(bào)告的死亡人數(shù)總和與英國范圍內(nèi)向公眾報(bào)告的死亡人數(shù)總和之間存在1天的延遲。
那么解釋這個(gè)每周的周期就很簡單了。周末時(shí)醫(yī)院人手不夠,他們沒法及時(shí)報(bào)告自己的全部死亡人數(shù)。延遲報(bào)告就會(huì)導(dǎo)致周末時(shí)死亡人數(shù)下降,而周末之后死亡人數(shù)相應(yīng)上升。由于報(bào)告滯后了一天,因此數(shù)據(jù)中是周日和周一顯示死亡人數(shù)下降,而不是周六和周日。
這就是數(shù)據(jù)集的常見問題——不同的數(shù)據(jù)收集方式會(huì)制造出真實(shí)數(shù)據(jù)本身并不存在的數(shù)據(jù)趨勢(shì)。再舉個(gè)例子,許多免費(fèi)的圖像數(shù)據(jù)集是由攻讀博士學(xué)位的研究生創(chuàng)建的。因此,如果你想從網(wǎng)上獲取帶有汽車圖像的隨機(jī)數(shù)據(jù)集,那么你可能會(huì)獲得很多校園停車場(chǎng)中的小汽車圖片,而不會(huì)有很多大型卡車的圖片。但是在美國,皮卡車與小汽車的銷量卻幾乎是3比1!
第2課:一定要多多探究離群值
數(shù)據(jù)集里幾乎總是會(huì)存在離群值(也叫逸出值,是指數(shù)據(jù)中有一個(gè)或幾個(gè)數(shù)值超出了其余數(shù)值的范圍),但你絕不會(huì)希望你的數(shù)據(jù)分析里一直出現(xiàn)離群值,這是因?yàn)殡x群值可能只是簡單疏忽或異常事件發(fā)生的結(jié)果。所以,探究離群值是一件很重要的事,
這樣就可以確定在數(shù)據(jù)分析中是否應(yīng)當(dāng)包括它們,還是將它們排除出去。
這是全球?qū)崟r(shí)數(shù)據(jù)統(tǒng)計(jì)網(wǎng)站worldometers.info提供的中國COVID-19新增病例報(bào)告的比率:
每日新增病例
2月12日有一個(gè)巨大的離群值,中國報(bào)告了14108例新增COVID病例,這一天的增加量是前一天新增病例的好幾倍。
如果你盲目地用這些數(shù)據(jù)建立模型,那么這個(gè)離群值會(huì)把整個(gè)模型的結(jié)果弄亂。相反,如果你認(rèn)為這個(gè)離群值代表真實(shí)事件,則可能會(huì)誤導(dǎo)你以為2月12日左右發(fā)生了一些特殊情況,所以導(dǎo)致感染增加。
然而事實(shí)上,出現(xiàn)這種大幅度躍升情況的真正原因是中國于2月12日更改了報(bào)告方法。在此之前,中國僅報(bào)告由RNA病毒測(cè)試方法確認(rèn)的病例。但是由于測(cè)試瓶頸,醫(yī)生同時(shí)也通過胸部X光片來檢查患者的肺部癥狀,以此篩查COVID-19病患。2月12日,中國將之前所有通過X光片確診的病例也進(jìn)行了報(bào)告,這才導(dǎo)致報(bào)告病例激增。也就是說,這些病例并不是全在2月12日這一天發(fā)生,只是在那天將他們?nèi)刻砑拥搅藞?bào)告總數(shù)中。
只要你做一下搜索,很容易為這個(gè)離群值找到解釋。而有了這些信息,你就可以決定如何處理這個(gè)離群值。但如果你在開始建模之前沒有真正仔細(xì)查看數(shù)據(jù),就不會(huì)發(fā)現(xiàn)這些。
第3課:對(duì)地理數(shù)據(jù)進(jìn)行歸一化
大家特別容易忘記的一個(gè)基本技巧是,用人口或其他具有代表性的因素對(duì)數(shù)據(jù)進(jìn)行歸一化后,按地理區(qū)域收集的數(shù)據(jù)總是更有意義。畢竟,一個(gè)擁有500人的村莊,與一座800萬人口的城市相比,300例病例代表的發(fā)生概率要大得多。
例如,下面這張地圖使用了政府提供的統(tǒng)計(jì)數(shù)據(jù),截至2020年4月8日為止,以倫敦每個(gè)區(qū)的COVID病例數(shù)為陰影:
倫敦各個(gè)區(qū)的COVID病例數(shù)分布圖,顏色更深=病例更多
然而問題在于,不同的行政區(qū)有不同的人口數(shù)量。當(dāng)我們?cè)诘貓D上僅僅使用病例數(shù)進(jìn)行著色時(shí),最終不可避免地還是要重新繪制人口圖。
在這個(gè)地圖上,位于城市最南端的克羅伊登(Croydon)和位于市中心的南華克(Southwark)具有相同的顏色。但是克羅伊登的人口比南華克多20%,而且面積更大。如果僅僅因?yàn)檫@兩個(gè)地區(qū)的病例數(shù)相同,就說這兩個(gè)地區(qū)受到同樣的影響,這是沒有道理的,因?yàn)榭肆_伊登的感染率相對(duì)更低。
那么解決方案就是通過人口等其他因素對(duì)地圖進(jìn)行歸一化。只需要簡單地將每個(gè)區(qū)的病例數(shù)除以該區(qū)的總?cè)丝跀?shù),就可以得出發(fā)病率。使用發(fā)病率來繪制,我們將獲得一個(gè)更容易理解的地圖,從而評(píng)估受影響最嚴(yán)重的區(qū)域:
倫敦各個(gè)區(qū)按2018年人口標(biāo)準(zhǔn)化的COVID病例數(shù)分布圖,顏色更深=病例更多
如果按人口劃分,我們會(huì)發(fā)現(xiàn)克羅伊登(Croydon)的發(fā)病率只是中等水平,而泰晤士河邊的南沃克(Southwark)是受災(zāi)最嚴(yán)重的地區(qū)之一。
在美國這樣人口分布非常不均的國家查看國家或地區(qū)級(jí)數(shù)據(jù)時(shí),這種影響甚至更大。在美國,幾乎所有人都居住在東海岸、西海岸或德克薩斯州附近。相比之下,其他大部分地區(qū)都人口稀少。如果我們對(duì)數(shù)據(jù)不進(jìn)行歸一化就繪制美國地圖,最終可能只是按照人口密閉度畫了地圖。
第4課:對(duì)一些出乎意料的結(jié)果保持懷疑并多次檢查
無論你多么努力地去理解數(shù)據(jù)然后建立正確的模型,總會(huì)有無數(shù)種方式導(dǎo)致模型意外出錯(cuò)。因此,如果你將數(shù)據(jù)輸入模型后,得出了一個(gè)出乎意料的特殊結(jié)果,那么你應(yīng)該考量一下,是否要對(duì)數(shù)據(jù)有所懷疑,并且仔細(xì)檢查是否遺漏了數(shù)據(jù)。
IHME創(chuàng)建的模型是報(bào)告美國COVID-19疫情的模型之一,該模型預(yù)測(cè)了COVID-19的流行高峰期和對(duì)醫(yī)療保健系統(tǒng)的總需求。他們預(yù)計(jì)在美國將造成約6萬人死亡:
IHME預(yù)測(cè)的美國COVID死亡人數(shù)
他們最近還增加了對(duì)英國的預(yù)測(cè),盡管只是初步預(yù)測(cè),但預(yù)測(cè)的死亡人數(shù)甚至更高,達(dá)到66,000:
IHME預(yù)測(cè)的英國COVID死亡人數(shù)(舊)
這是一個(gè)非同尋常的預(yù)測(cè)。該模型表示,人口約為3.3億的美國,將比人口約為6600萬(美國的1/5)的英國死亡人數(shù)更少。由于差異如此之大,在我們搞清楚原因之前,應(yīng)當(dāng)對(duì)此有所懷疑。
這種懷疑與該模型創(chuàng)建團(tuán)隊(duì)的能力或工作質(zhì)量無關(guān),畢竟非常確定性地去預(yù)測(cè)一個(gè)罕見事件,這本就是一件難事。模型可以幫助我們了解不同的變量是如何驅(qū)動(dòng)結(jié)果的,但它們也僅僅只是模型。所以我們不能盲目地相信模型,每當(dāng)我們看到比較極端的預(yù)測(cè)結(jié)果時(shí),都應(yīng)當(dāng)去嘗試了解到底發(fā)生了什么。
新模型發(fā)布后的頭幾天,英國報(bào)告的實(shí)際數(shù)字都低于該模型的最低預(yù)測(cè)范圍。于是幾天后,IHME就用更大的置信區(qū)間更新了這張圖,這代表該預(yù)測(cè)具有更多的不確定性:
IHME預(yù)測(cè)的英國COVID死亡人數(shù)(新)
即使有了新的置信度區(qū)間,該模型仍然預(yù)測(cè)出了比其他團(tuán)隊(duì)類似模型預(yù)測(cè)的更高的數(shù)字。倫敦帝國理工學(xué)院的Neil Ferguson教授在媒體上引用了這個(gè)模型,他認(rèn)為這個(gè)模型在英國的預(yù)測(cè)是有缺陷的,因?yàn)镮HME錯(cuò)誤地模擬了醫(yī)院利用率,而他的模型則預(yù)測(cè)出了更低的數(shù)字。因此,現(xiàn)在我們就能看到這樣的案例,兩個(gè)單獨(dú)的模型給出了兩個(gè)完全不同的預(yù)測(cè)范圍。
當(dāng)然這并不是什么壞事。探究別人的模型,本就是檢驗(yàn)自己的假設(shè)和模型中是否存在未考慮因素的好方法。真正糟糕的情況是我們盲目地相信任何特定的模型,因?yàn)闆]有一個(gè)模型可以完美地處理所有的極端情況。
同樣,我們也要對(duì)自己的模型保持質(zhì)疑——如果你覺得結(jié)果令人匪夷所思,那么就假設(shè)你的模型犯了一個(gè)錯(cuò)誤,去探究,去查看,直到你搞清楚為什么會(huì)得到這樣的結(jié)果。總而言之,不要盲目相信自己的模型!
當(dāng)作者發(fā)表這騙文章幾小時(shí)后,IHME更新了他們的英國模型并將其對(duì)英國死亡人數(shù)的預(yù)測(cè)從66,314大幅度降低至37,494(降低了近50%)。然而這個(gè)數(shù)字仍然比其他模型的預(yù)測(cè)值還要高一些,不過已經(jīng)接近多了。因此,這個(gè)故事的寓意是正確的——對(duì)意外的結(jié)果要始終保持懷疑~
相關(guān)報(bào)道:
https://medium.com/@ageitgey/four-basic-data-science-lessons-illustrated-by-covid-19-data-7d94134a5b0e
【本文是51CTO專欄機(jī)構(gòu)大數(shù)據(jù)文摘的原創(chuàng)譯文,微信公眾號(hào)“大數(shù)據(jù)文摘( id: BigDataDigest)”】