朱鳴宸
(上海市中國中學,上海 200235)
大數據時代,人們在日常生活中會產生各種各樣的數據。大媽們菜場中買菜的價錢、年輕人炒股花的錢、甚至我們在學校里學習的分數,這些都可以稱之為數據。數據在我們的生活中隨處可見,也成為支撐我們生活中的各類應用產品服務治療提升的必要資源,如我們每天使用的手機,淘寶、京東等購物軟件,美團、餓了嗎等點餐外賣軟件,大數據的搜集和訓練調高了手機應用的可靠性,也為我們個人提供了更加個性化的產品服務。近年來,互聯網等高科技產品迅速發展,“大數據”一次次引起人們的關注。作為與人類生活息息相關的健康問題,“健康大數據”這一概念出現在人們的日常生活中。樸素貝葉斯算法作為一種機器學習的分類算法,及時在大數據量和復雜問題的分類依然有良好的表現[1]。因此,本文探究了樸素貝葉斯算法應用在健康大數據方向上的表現。
健康大數據是隨著近幾年數字浪潮和信息現代化而出現的新名詞,與健康相關的數據都可以稱為健康大數據。這些數據包括高血壓人口的血壓數據、超重或肥胖癥的體重數據、糖尿病患者的血糖數據等。健康大數據的來源廣泛且數量龐大,這些數量龐大的信息在沒有進行專業化的分類處理分析前并沒有實際意義,只有合理利用算法對數據加以處理和分析,才能對人類健康狀況及時的監測和可控制,這對于未來醫療水平的提升以及疾病預防和人類健康發展趨勢的預測都有正面作用[2]。
健康大數據來源于人們的日常生活,如:每天出門帶的手環上記錄的步數,測量的心率、血壓、卡路里;疫情期間測量的體溫;去醫院做檢查報告單上的各項數據等,也有很大一部分來源于網絡,如:百度、阿里。這些App通過智能設備手環、手表、血壓計等,將數據傳輸到云平臺上保存起來,這樣醫生便可以很方便快速地了解用戶的狀況,對日常生活做出有幫助的指導。這樣可以說是充分利用了大數據的優勢,將日常的健康數據及時傳到平臺里,形成自己的健康大數據庫,人們就可以對自己的健康情況有著更好的了解與掌握。
托馬斯· 貝葉斯是18 世紀英國數學家、數理統計學家和哲學家,概率論理論創始人,貝葉斯統計的創立者。貝葉斯在解決“逆概率”的問題時發表的論文改變了人們對某一概率問題的認知[3],“從裝有若干白球和黑球的袋中取出白球的概率”,在今天,學過概率知識的應該知道該概率的大小與黑球與白球在袋中的分布相關,也就是說與袋中球總數與和白球個數相關,這都要歸功于貝葉斯。因為在這之前,人們認為答案不是1 就是0,即取得白球和未取得白球。貝葉斯對于概率的研究形成了貝葉斯派的統計理論,對某一事件的發生概率,加入前提條件,從而獲取事件發生的后驗概率,即人們根據以往的歷史經驗對事件A 發生的概率做出估計即為先驗概率,而后根據實際得到的樣本信息B,對先驗概率進行修正,從而得到事件A 發生的后驗概率,由此而發展的統計理論在很多的科學與實踐都發揮了重大作用。后來人工智能進入發展熱潮,以提供表現出人類智能的機器為目標,這一概念對人類未來的生活影響重大,而機器學習就是實現人工智能目標的中重要理論基礎。而在機器學習的眾多算法中,樸素貝葉斯方法在分類方面表現卓越,因其算法的簡單與良好的效果在多個領域有著廣泛的應用。
樸素貝葉斯方法是以貝葉斯原理為基礎,在其基礎上進行了相應的簡化,并假定了給定的目標屬性相互獨立。將數據的一系列特征X 作為輸入,輸出其最大后延概率Y。訓練集中的數據是一組(X,Y)的數據,即給定標簽的數據。通過訓練樣本數據確定Y 的先驗概率P(Y),再通過訓練樣本數據確定P(X|Y),P(X),則我們可以通過貝葉斯公式求出當給定一個新的X,P(Y|X)=P(X|Y)×P(Y)/P(X)[4]。
目前,樸素貝葉斯方法在健康大數據中應用并不廣泛,主要原因可能是在大部分情況下,人們并不需要在健康大數據中應用樸素貝葉斯方法;或是人們對樸素貝葉斯方法的陌生及不熟悉。但是對于不少老年人和慢性病患者來說,需要經常測量血壓、心率等數據,這種方法可能會給他們的生活帶來便利。
數據案例如下(見表1),以下面的數據舉個例子:通過下表中的數據,假設一個人患有高血壓、糖尿病、關節炎,但不患有心臟病,那么這個人是男的可能性大還是女的可能性大呢?

表1 患高血壓、心臟病、 糖尿病、關節炎患者的性別分布
我們可以用樸素貝葉斯方法來解決這個問題:
如果將男女作為類型,男C1,女C2;
屬性條件:高血壓A1,心臟病A2,糖尿病A3,關節炎A4;
我們使用下列條件概率表示A1、A2、A3、A4 屬性下Cx 的概率:
P(Cx|A1A2A3A4)。
根據貝葉斯公式,我們可以知道:
P(Cx|A1A2A3A4)=P(A1A2A3A4|Cx)P(Cx)/P(A1A2A3A4)
因為有兩個類別,所以只要求得P(C1|A1A2A3A4)和P(C2|A1A2A3A4)的概率,然后比較哪個概率大即可。
則假設A1A2A3A4 之間是相互之間沒有聯系的,那么:
P(A1A2A3A4|Cx)=P(A1|Cx)P(A2|Cx)P(A3|Cx)P(A4|Cx);
P(A1|C1)=1/3,P(A2|C1)=2/3,P(A3|C1)=2/3,P(A4|C1)=2/3;
P(A1|C2)=2/3,P(A2|C2)=1/3,P(A3|C2)=1/3,P(A4|C2)=1/3。
所 以P(A1A2A3A4|C1)P(C1)>P(A1A2A3A4|C2)P(C2),應該是C1 類別,即男性。當然,雖然這種情況下算出是男性的概率大,但是并不能說一個人同時患有高血壓、糖尿病、關節炎,且不患有心臟病,這個人就一定是男性。第一,表中的數據并不多,在生活中是否一定是這樣的數據也不得而知;第二,這只是概率公式,當然也有可能不是男性,只是男性的可能性較女性來說大。如果我們能在生活中多應用這種方法,或許可以減少日后患病的概率,防患于未然。
樸素貝葉斯方法因為其假設了所考慮要素之間相互獨立,從計算上避免了元素耦合帶來計算復雜度,且算法在不同類型的數據集的應用表現穩定。由于算法本身的簡單,因此即使類型數量多、數據量大,樸素貝葉斯方法的復雜度并不會明顯上升,仍是一種簡便的方法[5]。在上述的例子中,我們通過短短幾步便能計算出概率,有很高的效率,且當數據之間關聯不大時,使用樸素貝葉斯方法能有很好的效果。而健康大數據中的很多數據實際上并無直接聯系,樸素貝葉斯方法可以適用于大部分情況。
數據之間的獨立性是樸素貝葉斯的一大缺點,這大大減少了它的使用范圍。樸素貝葉斯方法雖然理論上有著很小的誤差率[6],但事實并非總是這樣。在上述的例子中,我們假設這些疾病之間沒有任何聯系,是相對獨立的。不過在現實生活中,很多人的疾病是由于從前疾病的后遺癥引起的,這種情況下便很難使用樸素貝葉斯方法,因而對一些要素之間有緊密聯系的領域,便無法使用樸素貝葉斯方法得到良好分類。對于一些患者來說,他們的健康數據之間存在著一定的關聯,如發燒會引起一系列指標的異常,而樸素貝葉斯假設了數據獨立,可能因為數據間本身的聯系而導致預測結果的準確度下降。
由于生活中健康大數據的獲取比較困難以及對樸素貝葉斯方法的陌生,導致樸素貝葉斯方法在健康大數據中的運用并不廣泛。文中通過具體例子說明了樸素貝葉斯在健康大數據中應用的簡單、快速、便利,這種方法如果能應用在健康大數據中,將提高工作效率,對患者有不少幫助。不過,樸素貝葉斯方法的使用有一定的局限性,在應用時需要注意數據之間有無聯系。例如身高體重、運動步數這些經常出現在日常生活中,彼此無明顯聯系的數據,適用于樸素貝葉斯的使用范圍。樸素貝葉斯方法如果能多應用于我們的日常生活,或許能給人們帶來意想不到的效果。