圖片來源@視覺中國
預測未知,一直是人類十分向往的能力。遠不說國人熟悉的周易八卦、唐代道士編寫的《推背圖》,還有西方人熟知的占星術、中世紀流行起來的塔羅牌,近的比如說當年根據 “2012世界末日”這一瑪雅預言影響下出現的全民狂熱和商業(yè)狂歡,依然讓我們記憶猶新。
現在“不問蒼生問鬼神”的時代已經過去,我們對物理世界及社會經濟的確定性的、經驗性的甚至概率性的預測都已輕車熟路。但比如說像“蝴蝶效應”描述的高度復雜的、超多變量以及超大數據量的預測,人類還是束手無策么?
答案并不是。
近日,我國武漢新型冠狀病毒疫情的爆發(fā)引起世界衛(wèi)生組織和全球多地衛(wèi)生機構的密切關注。其中,《連線》雜志報道了“一家加拿大公司BlueDot通過AI監(jiān)測平臺率先預測和發(fā)布武漢出現傳染疫情”的新聞,得到國內媒體的廣泛關注。這似乎是我們在“預測未來”這件事上最想看到的成果——借助大數據沉淀基礎和AI的推斷,人類似乎正能夠揣摩“天意”,揭示出原本深藏于混沌之中的因果規(guī)律,從而在天災降臨前試圖挽救世界。
今天我們就從傳染病預測出發(fā),看看AI是如何一步步走向“神機妙算”的。
谷歌GFT頻喊“狼來了”:流感大數據的狂想曲
用AI預測傳染病顯然不是Bluedot的專利,其實早在2008年,今天的AI“強手”谷歌,就曾進行過一次不太成功的嘗試。
2008年谷歌推出一個預測流感流行趨勢的系統(tǒng)——Google Flu Trends(谷歌流感趨勢,以下簡稱GFT)。GFT一戰(zhàn)成名是在2009年美國H1N1爆發(fā)的幾周前,谷歌工程師在《Nature》雜志上發(fā)表了一篇論文,通過谷歌累積的海量搜索數據,成功預測H1N1在全美范圍的傳播。就流感的趨勢和地區(qū)分析中,谷歌用幾十億條檢索記錄,處理了4.5億個不同的數字模型,構造出一個流感預測指數,其結果與美國疾病控制和預防中心(CDC)官方數據的相關性高達97%,但要比CDC提前了整整2周。在疫情面前,時間就是生命,速度就是財富,如果GFT能一直保持這種“預知”能力,顯然可以為整個社會提前控制傳染病疫情贏得先機。
然而,預言神話沒有持續(xù)多久。2014年,GFT又再次受到媒體關注,但這一次卻是因為它糟糕的表現。研究人員2014年又在《Science》雜志發(fā)布 “谷歌流感的寓言:大數據分析的陷阱” 一文,指出在2009年,GFT沒有能預測到非季節(jié)性流感A-H1N1。從2011年8月到2013年8月的108周里,GFT有100周高過了CDC報告的流感發(fā)病率。高估了多少呢?在2011-2012季,GFT預測的發(fā)病率是CDC報告值的1.5倍多;而到2012-2013季,GFT預測流感發(fā)病率已是CDC報告值的2倍多。
(圖表來自The Parable of Google Flu: Traps in Big Data Analysis | Science,2014)
盡管GFT在2013年調整了算法,并回應稱出現偏差的罪魁禍首是媒體對GFT的大幅報道導致人們的搜索行為發(fā)生了變化,GFT預測的2013-2014季的流感發(fā)病率,仍然高于CDC報告值1.3倍。并且研究人員前面發(fā)現的系統(tǒng)性誤差仍然存在,也就是“狼來了”的錯誤仍然在犯。
到底GFT遺漏了哪些因素,讓這個預測系統(tǒng)陷入窘境?
根據研究人員分析,GFT的大數據分析出現如此大的系統(tǒng)性誤差,其收集特征和評估方法可能存在以下問題:
一、大數據傲慢(Big Data Hubris)
所謂“大數據傲慢”,就是谷歌工程師給出的前提假設就是,通過用戶搜索關鍵詞得到的大數據包含的即是流感疾病的全數據收集,可以完全取代傳統(tǒng)數據收集(采樣統(tǒng)計),而不是其補充。也就是GFT認為“采集到的用戶搜索信息”數據與 “某流感疫情涉及的人群”這個總體完全相關。
這一 “自大”的前提假設忽視了數據量巨大并不代表數據的全面和準確,因而出現在2009年成功預測的數據庫樣本不能涵蓋在之后幾年出現的新的數據特征。也是因為這份“自負”,GFT也似乎沒有考慮引入專業(yè)的健康醫(yī)療數據以及專家經驗,同時也并未對用戶搜索數據進行“清洗”和“去噪”,從而導致此后流行病發(fā)病率估值過高但又無力解決的問題。
二、搜索引擎演化
同時搜索引擎的模式也并非一成不變的,谷歌在2011年之后推出“推薦相關搜索詞”,也就是我們今天很熟悉的搜索關聯(lián)詞模式。
比如針對流感搜索詞,給出相關尋求流感治療的list,2012年后還提供相關診斷術語的推薦。研究人員分析,這些調整有可能人為推高了一些搜索,并導致谷歌對流行發(fā)病率的高估。舉例來說,當用戶搜索“喉嚨痛”,谷歌會在推薦關鍵詞給出“喉嚨痛和發(fā)燒”、“如何治療喉嚨痛”等推薦,這時用戶可能會出于好奇等原因進行點擊,造成用戶使用的關鍵詞并非用戶本意的現象,從而影響GFT搜集數據的準確性。
而用戶的搜索行為反過來也會影響GFT的預測結果,比如媒體對于流感流行的報道會增加與流感相關的詞匯的搜索次數,進而影響GFT的預測。這就像量子力學家海森堡指出的,在量子力學中存在的“測不準原理”說明的一樣,“測量即干涉”。
那么,在充斥媒體報道和用戶主觀信息的搜索引擎的喧囂世界里,也同樣存在“預測即干涉”悖論。搜索引擎用戶的行為并不完全是自發(fā)產生,媒體報道、社交媒體熱點、搜索引擎推薦甚至大數據推薦都在影響用戶心智,造成用戶特定搜索數據的集中爆發(fā)。
為什么GFT的預測總是偏高?根據這一理論,我們可以知道,一旦GFT發(fā)布的流行病預測指數升高,立刻會引發(fā)媒體報道,從而導致更多相關信息搜索,從而又強化GFT的疫情判斷,無論如何調整算法,也改變不了“測不準”的結果。
三、相關而非因果
研究人員指出,GFT的根源問題在于,谷歌工程師并不清楚搜索關鍵詞和流感傳播之間到底有什么因果聯(lián)系,而只是關注數據之間的——統(tǒng)計學相關性特征。過度推崇“相關”而忽略“因果”就會導致數據失準的情況。比如,以“流感”為例,如果一段時間該詞搜索量暴漲,可能是因為推出一部《流感》的電影或歌曲,并不一定意味著流感真的在爆發(fā)。
一直以來,盡管外界一直希望谷歌能夠公開GFT的算法,谷歌并沒有選擇公開。這讓很多研究人員質疑這些數據是否可以重復再現或者存在更多商業(yè)上的考慮。他們希望應該將搜索大數據和傳統(tǒng)的數據統(tǒng)計(小數據)結合起來,創(chuàng)建對人類行為更深入、準確的研究。
顯然,谷歌并沒有重視這一意見。最終在2015年GFT正式下線。但其仍在繼續(xù)收集相關用戶的搜索數據,僅提供給美國疾控中心以及一些研究機構使用。
為什么BlueDot率先成功預測:AI算法與人工分析的協(xié)奏曲
眾所周知,谷歌在當時已經在布局人工智能,2014年收購DeepMind,但依然保持它的獨立運營。同時,谷歌也沒有GFT再投入更多關注,因此也并未考慮將AI加入到GFT的算法模型當中,而是選擇了讓GFT走向“安樂死”。
幾乎在同一時期,今天我們所見到的BlueDot誕生。
BlueDot是由傳染病專家卡姆蘭·克汗(Kamran Khan)建立流行病自動監(jiān)測系統(tǒng),通過每天分析65種語言的約10萬篇文章,來跟蹤100多種傳染病爆發(fā)情況。他們試圖用這些定向數據收集來獲知潛在流行傳染病爆發(fā)和擴散的線索。BlueDot一直使用自然語言處理(NLP)和機器學習(ML)來訓練該“疾病自動監(jiān)測平臺”,這樣不僅可以識別和排除數據中的無關“噪音”,比如,系統(tǒng)識別這是蒙古炭疽病的爆發(fā),還僅僅是1981年成立的重金屬樂隊“炭疽”的重聚。又比如GFT僅僅將“流感”相關搜索的用戶理解為可能的流感病患者,顯然出現過多不相關用戶而造成流行病準確率的高估。這也是BlueDot區(qū)別于GFT在對關鍵數據進行甄別的優(yōu)勢之處。
就像在這次在新型冠狀病毒疫情的預測中, 卡姆蘭表示,BlueDot通過搜索外語新聞報道,動植物疾病網絡和官方公告來找到疫情信息源頭。但該平臺算法不使用社交媒體的發(fā)布內容,因為這些數據太過雜亂容易出現更多“噪音”。
關于病毒爆發(fā)后的傳播路徑預測,BlueDot更傾向于使用訪問全球機票數據,從而更好發(fā)現被感染的居民的動向和行動時間。在1月初的時候,BlueDot也成功預測了新型冠狀病毒從武漢爆發(fā)后,幾天之內從武漢擴散至北京、曼谷、漢城及臺北。
新冠病毒爆發(fā)并非是BlueDot的第一次成功。在2016年,通過對巴西寨卡病毒的傳播路徑建立AI模型的分析,BlueDot成功地提前六個月預測在美國佛羅里達州出現寨卡病毒。這意味著BlueDot的AI監(jiān)測能力甚至可以做到預測流行病的地域蔓延軌跡。
從失敗到成功,BlueDot和谷歌GFT之間究竟存有哪些差異?
一、預測技術差異
之前主流的預測分析方法采取的是數據挖掘的一系列技術,其中經常用到的數理統(tǒng)計中的“回歸”方法,包括多元線性回歸、多項式回歸、多因Logistic回歸等方法,其本質是一種曲線的擬合,就是不同模型的“條件均值”預測。這也正是GFT所采用的預測算法的技術原理。
在機器學習之前,多元回歸分析提供了一種處理多樣條件的有效方法,可以嘗試找到一個預測數據失誤最小化且“擬合優(yōu)度”最大化的結果。但回歸分析對于歷史數據的無偏差預測的渴求,并不能保證未來預測數據的準確度,這就會造成所謂的“過度擬合”。
據北大國研院教授沈艷在《大數據分析的光榮與陷阱——從谷歌流感趨勢談起》一文中分析,谷歌GFT確實存在“過度擬合”的問題。也就是在2009年GFT可以觀察到2007-2008年間的全部CDC數據,采用的訓練數據和檢驗數據尋找最佳模型的方法所參照的標準就是——不惜代價高度擬合CDC數據。所以,在2014年的《Science》論文中指出,會出現GFT在預測2007-2008年流感流行率時,存在丟掉一些看似古怪的搜索詞,而用另外的5000萬搜索詞去擬合1152個數據點的情況。2009年之后,GFT要預測的數據就將面臨更多未知變量的存在,包括它自身的預測也參與到了這個數據反饋當中。無論GFT如何調整,它仍然要面對過度擬合問題,使得系統(tǒng)整體誤差無法避免。
BlueDot采取了另外一項策略,即醫(yī)療、衛(wèi)生專業(yè)知識和人工智能、大數據分析技術結合的方式,去跟蹤并預測流行傳染病在全球分布、蔓延的趨勢,并給出最佳解決方案。
BlueDot主要采用自然語言處理和機器學習來提升該監(jiān)測引擎的效用。隨著近幾年算力的提升以及機器學習,從根本上徹底改變了統(tǒng)計學預測的方法。主要是深度學習(神經網絡)的應用,采用了“反向傳播”的方法,可以從數據中不斷訓練、反饋、學習,獲取“知識”,經過系統(tǒng)的自我學習,預測模型會得到不斷優(yōu)化,預測準確性也在隨著學習而改進。而模型訓練前的歷史數據輸入則變得尤為關鍵。足夠豐富的帶特征數據是預測模型得以訓練的基礎。經過清洗的優(yōu)質數據和提取恰當標注的特征成為預測能否成功的重中之重。
二、預測模式差異
與GFT完全將預測過程交給大數據算法的結果的方式不同,BlueDot并沒有完全把預測交給AI監(jiān)測系統(tǒng)。BlueDot是在數據篩選完畢后,會交給人工分析。這也正是GFT的大數據分析的“相關性”思維與BlueDot的“專家經驗型”預測模式的不同。AI所分析的大數據是選取特定網站(醫(yī)療衛(wèi)生、健康疾病新聞類)和平臺(航空機票等)的信息。而AI所給出的預警信息也需要相關流行病學家的再次分析才能進行確認是否正常,從而評估這些疫情信息能否第一時間向社會公布。
當然,就目前這些案例還不能說明BlueDot在預測流行病方面已經完全取得成功。首先,AI訓練模型是否也會存在一些偏見,比如為避免漏報,是否會過分夸大流行病的嚴重程度,因而再次出現“狼來了”的問題?其次,監(jiān)測模型所評估的數據是否有效,比如BlueDot謹慎使用社交媒體的數據來避免過多的“噪音”?
幸而BlueDot作為一家專業(yè)的健康服務平臺,他們會比GFT更關注監(jiān)測結果的準確性。畢竟,專業(yè)的流行病專家是這些預測報告的最終發(fā)布人,其預測的準確度直接會影響其平臺信譽和商業(yè)價值。這也意味著,BlueDot還需要面臨如何平衡商業(yè)化盈利與公共責任、信息開放等方面的一些考驗。
AI預測流行病爆發(fā),僅僅是序曲……
“發(fā)出第一條武漢冠狀病毒警告的是人工智能?”媒體的這一標題確實讓很多人驚訝。在全球一體化的當下,任何一地流行疾病的爆發(fā)都有可能短時間內傳遍全球任何一個角落,發(fā)現時間和預警通報效率就成為預防流行疾病的關鍵。如果AI能夠成為更好的流行病預警機制,那不失為世界衛(wèi)生組織(WHO)以及各國的衛(wèi)生健康部門進行流行病預防機制的一個辦法。
那這又要涉及到這些機構組織如何采信AI提供的流行病預報結果的問題。未來,流行病AI預測平臺還必須提供流行病傳染風險等級,以及疾病傳播可能造成的經濟、政治風險的等級的評估,來幫助相關部門做出更穩(wěn)妥的決策。而這一切,仍然需要時間。這些組織機構在建立快速反應的流行病預防機制中,也應當把這一AI監(jiān)測系統(tǒng)提上日程了。
可以說,此次AI對流行病爆發(fā)提前成功地預測,是人類應對這場全球疫情危機的一抹亮色。希望這場人工智能參與的疫情防控的戰(zhàn)役只是這場持久戰(zhàn)的序曲,未來應該有更多可能。比如,主要傳染病病原體的AI識別應用;基于主要傳染病疫區(qū)和傳染病的季節(jié)性流行數據建立傳染病AI預警機制;AI協(xié)助傳染病爆發(fā)后的醫(yī)療物資的優(yōu)化調配等。這些讓我們拭目以待。