張一寧
(紹興市第一中學(xué),浙江紹興,312000)
現(xiàn)如今各種疾病的出現(xiàn),嚴(yán)重影響了人們的身體健康,精確并迅速地判斷出個體的患病情況是十分重要的,醫(yī)生的誤診或拖延診斷將使患者付出生命的代價。以一言蔽之,我們需要一個高效、高準(zhǔn)確率的醫(yī)療診斷系統(tǒng)來為我們出力,而機器學(xué)習(xí)可以很好地彌補醫(yī)療領(lǐng)域發(fā)展中的漏洞。
人們對于機器學(xué)習(xí)的態(tài)度從最初的懷疑,到后來的震驚,再到現(xiàn)在的嘆服,但大多數(shù)人對于機器學(xué)習(xí)確實如以管窺天,一知半解。機器學(xué)習(xí)是一種十分重要的數(shù)據(jù)挖掘技術(shù),將其應(yīng)用在醫(yī)療領(lǐng)域可顯著提高疾病診斷的效率和精確率,更好地服務(wù)百姓、造福百姓。因此,本研究具有極其重要的現(xiàn)實意義。
隨著科技水平的提高和醫(yī)療領(lǐng)域的快速發(fā)展,傳統(tǒng)的醫(yī)療診斷分析越來越不適應(yīng)當(dāng)前的生活節(jié)奏,不能滿足大眾更好的醫(yī)療需求,“人工智能+醫(yī)療”的命題不斷浮出水面,逐漸被大眾所接受和使用。
到目前為止人工智能在醫(yī)療領(lǐng)域已取得了可觀的成就。比如,來自瑞士和荷蘭的研究人員通過先進(jìn)的人工智能軟件和機械線束,設(shè)計了一款以智能輔助技術(shù)幫助中風(fēng)和脊髓損傷患者重新走路的外部裝備;IBM同阿爾伯塔大學(xué)的研究人員利用機器學(xué)習(xí)算法分析功能性磁共振成像,創(chuàng)建了識別大腦與精神分裂癥相關(guān)的模型,對精神分裂癥進(jìn)行預(yù)測達(dá)到了74%的準(zhǔn)確率。由此可以看出,機器學(xué)習(xí)正一步步走向我們的世界,并改善我們的生活。
本研究將機器學(xué)習(xí)技術(shù)和醫(yī)療領(lǐng)域進(jìn)行了有機的結(jié)合,旨在創(chuàng)造一種與受測人進(jìn)行人機交互的方式,收集受測人的輸入數(shù)據(jù)即受測人的各項身體指標(biāo),并通過感知機算法分析該數(shù)據(jù),構(gòu)建心臟病輔助診斷模型,最后系統(tǒng)利用該模型鑒別出受測人是否有潛在的心臟疾病。
機器學(xué)習(xí)技術(shù)順應(yīng)“人工智能+醫(yī)療”的發(fā)展趨勢,它能主動研究和分析數(shù)據(jù)信息并對樣本標(biāo)簽做出高準(zhǔn)確率的智能判斷,為醫(yī)療診斷提供了有效的支持與技術(shù)基礎(chǔ),有效提升了醫(yī)療效率,改善了醫(yī)療質(zhì)量。
本文選用UC Irvine Machine Learning Repository網(wǎng)站的心臟病數(shù)據(jù)作為本文的訓(xùn)練數(shù)據(jù)集,該數(shù)據(jù)集包含270個受測人樣本,每個樣本中包含13個與心臟病有關(guān)的特征,該特征包括了年齡、性別、血壓、心率等13種個體指標(biāo),其中有7個連續(xù)型特征,6個離散型特征??梢暂^全面地反應(yīng)每個個體的心臟狀況,從而訓(xùn)練出更加準(zhǔn)確的機器學(xué)習(xí)模型。該數(shù)據(jù)集目標(biāo)為預(yù)測受測人是否有心臟病,標(biāo)簽1表示不患有心臟病,標(biāo)簽2表示患有心臟病。
數(shù)據(jù)集特征字段及字段解釋如表1所示。
表1 數(shù)據(jù)集特征字段解釋
數(shù)據(jù)集由于存在量綱不同的影響,不可直接被機器學(xué)習(xí)所應(yīng)用,應(yīng)將數(shù)據(jù)集標(biāo)準(zhǔn)化,從而保證數(shù)據(jù)本身的特點不會影響機器學(xué)習(xí)的預(yù)測。標(biāo)準(zhǔn)化的公式:
20世紀(jì)50年代,美國神經(jīng)學(xué)家 Frank Rosenblatt 提出了可以模擬人類感知能力的機器,并稱之為“感知機”,感知機算法隨之誕生。感知機算法是一個基本的二分類機器學(xué)習(xí)算法,該算法原理為:找出一個n維分離超平面可以基本將訓(xùn)練集特征空間中所有樣本點分為正負(fù)兩類,該平面即對應(yīng)一個感知機模型,從而利用該模型對新樣本進(jìn)行分類。
感知機模型即決策函數(shù):
其中,w為權(quán)值向量,b為截距,x為樣本的特征向量,y為樣本的標(biāo)簽,取+1或-1;sigh(m)為符合函數(shù),當(dāng)m>0時,sigh(m)=+1;當(dāng)m<0時,sigh(m)=-1。
感知機模型示意圖如圖1所示。
圖1 模型預(yù)測示意圖
感知機算法的任務(wù)即利用心臟病訓(xùn)練數(shù)據(jù)集來選出使模型構(gòu)建更準(zhǔn)確的參數(shù)(w,b)。
2.2.1 構(gòu)建損失函數(shù)
本研究使用的損失函數(shù)為所有被誤分類的點到超平面的距離之和,衡量超平面分類失敗程度,損失函數(shù)的值越大,超平面的分類效果越差。其中誤分類點表示訓(xùn)練集中被錯誤分類的點,表示為yi(w·xi+b)<0,從而得出損失函數(shù)的表達(dá)式為:
損失函數(shù)值越小,誤分類點就越少,說明得到的超平面分類效果越好。因此為了找到最好的超平面,需將損失函數(shù)取最小值。
2.2.2 梯度下降法
本研究使用梯度下降法來最小化損失函數(shù),從而達(dá)到模型參數(shù)估計的目標(biāo)。
梯度下降法是一種迭代方法,它可以通過不斷改變參數(shù)(w,b)值,使得損失函數(shù)的值越來越小。梯度方向是使損失函數(shù)L(w,b)增加最快的方向,因此本文選用梯度方向的負(fù)方向作為(w,b)的更新方向,因此得到的(w,b)就可以使損失函數(shù)L(w,b)減少最快。根據(jù)損失函數(shù)表達(dá)式,其梯度方向的公式為:
之后在梯度的負(fù)方向即( yixi, yi)對w和b進(jìn)行迭代更新,迭代公式為:
其中,η表示參數(shù)學(xué)習(xí)率,由人為確定。
不斷重復(fù)該過程,直到損失函數(shù)的值小于規(guī)定的閾值,此時樣本中基本所有樣本點都被正確分類。
根據(jù)上文,求得感知機算法模型:y=sigh(w·x+b),接下來利用該模型對新受測人的輸入信息進(jìn)行分析。收集受測人的各項身體特征,將新數(shù)據(jù)的特征值代入得到的感知機模型中,根據(jù)決策函數(shù)計算出該樣本對應(yīng)的標(biāo)簽即可。
本研究使用的模型評估方法為交叉驗證法,該方法將原始心臟病訓(xùn)練數(shù)據(jù)集分成訓(xùn)練集和測試集兩部分,分別為80%和20%,樣本個數(shù)分別為216和54。其中訓(xùn)練集用來訓(xùn)練模型,測試集用來衡量模型的質(zhì)量。模型評估指標(biāo)選用準(zhǔn)確率和召回率,其中準(zhǔn)確率表達(dá)式為:
其中,m’表示測試集中分類正確的樣本數(shù),m表示測試集總樣本數(shù)。
當(dāng)測試集樣本正負(fù)類樣本個數(shù)不均勻時,準(zhǔn)確率往往不能科學(xué)地得到最終結(jié)果,因此我們選用召回率作為第二個模型評估指標(biāo),召回率表達(dá)式為:
其中n'表示測試集分類正確的正類個數(shù),n表示測試集正類總數(shù)。
本研究模型訓(xùn)練結(jié)果如圖2所示。
圖2 模型訓(xùn)練結(jié)果
圖3 總流程圖
訓(xùn)練得出模型的權(quán)值和偏置如圖2所示,根據(jù)該結(jié)果可知,模型的正確率穩(wěn)定在0.75~0.80之間,召回率也相對穩(wěn)定,根據(jù)本文的數(shù)據(jù)狀況,此結(jié)果較合理且令人滿意。
本研究總流程圖如圖3所示。
本研究總流程為:首先從已知心臟病訓(xùn)練數(shù)據(jù)集出發(fā),通過感知機機器學(xué)習(xí)算法構(gòu)建本研究的核心模型,即心臟病測試評估模型。之后收集被測人的心臟相關(guān)身體特征指標(biāo)數(shù)據(jù),模型系統(tǒng)自動將該數(shù)據(jù)封裝到Excel表格之中,有利于被模型所識別。最后將其輸入心臟疾病測試評估模型中,經(jīng)過模型分析運算,即可預(yù)測出被測人是否患有心臟疾病,系統(tǒng)自動出具分析報告并將其發(fā)給心臟疾病輔助診斷系統(tǒng)。
機器學(xué)習(xí)是極其重要的數(shù)據(jù)挖掘技術(shù),在醫(yī)療領(lǐng)域,其能幫助醫(yī)生從大量已知數(shù)據(jù)中發(fā)現(xiàn)并總結(jié)出一定的規(guī)律,從而提高醫(yī)療診斷的準(zhǔn)確率,有效減少誤判現(xiàn)象的發(fā)生。
本文從人工智能醫(yī)療的重要性出發(fā),說明了機器學(xué)習(xí)在醫(yī)療領(lǐng)域的重大意義,之后對現(xiàn)階段國內(nèi)外的人工智能醫(yī)療現(xiàn)狀做了簡要介紹,并指出了人工智能在醫(yī)療領(lǐng)域已取得的部分成就,隨后闡述了機器學(xué)習(xí)應(yīng)用于醫(yī)療的創(chuàng)新點。該課題對訓(xùn)練數(shù)據(jù)集進(jìn)行了詳細(xì)描述,講解了機器學(xué)習(xí)中的感知機算法,從幾個方面系統(tǒng)講述了感知機算法的原理。最后本文通過圖文形式對研究總流程進(jìn)行了總結(jié)。
我國科技發(fā)展還處于上升階段,因此各領(lǐng)域數(shù)據(jù)集不夠完善、現(xiàn)存的數(shù)據(jù)集格式不標(biāo)準(zhǔn)、既懂醫(yī)療和計算機技術(shù)的復(fù)合型人才缺少等都是需要彌補的漏洞,共同導(dǎo)致機器學(xué)習(xí)模型構(gòu)建存在誤差。但是,筆者相信,隨著機器學(xué)習(xí)的應(yīng)用范圍的不斷擴大,在這個科技快速發(fā)展的時代,機器學(xué)習(xí)在醫(yī)療方面的應(yīng)用一定能取得突破,在當(dāng)代大放光彩,對機器學(xué)習(xí)的討論和研究,也一定能助推當(dāng)代人工智能與科技的發(fā)展,它能改變?nèi)藗兊膫鹘y(tǒng)觀念,帶領(lǐng)人們早日進(jìn)入高度智能化的時代。