李 鵬
(1湖南中醫(yī)藥大學信息科學與工程學院 長沙410208 2中南大學湘雅三醫(yī)院 長沙410006 3醫(yī)學信息研究湖南省普通高等學校重點實驗室(中南大學) 長沙410006)
閔 慧
(湖南信息職業(yè)技術學院軟件學院 長沙410200)
瞿昊宇
(湖南中醫(yī)藥大學信息科學與工程學院 長沙410208)(醫(yī)學信息研究湖南省普通高等學校重點實驗室(中南大學) 長沙410006)
羅愛靜
(中南大學湘雅三醫(yī)院 長沙410006)
缺血性腦卒中是指由于腦的供血動脈(頸動脈和椎動脈)狹窄或閉塞、腦供血不足導致的腦組織壞死的總稱。近年來缺血性腦卒中[1]已經(jīng)成為危害人類健康和生命安全的重大疾病,如何有效地對缺血性腦卒中發(fā)病率進行預測,識別可能導致缺血性腦卒中疾病的高危因素,提高高危患者風險意識,具有十分重要的意義[2]。目前臨床上用于腦卒中篩查或預測復發(fā)的相關方法較多,例如汪仁等[3]采用全國腦卒中篩查數(shù)據(jù)作為訓練和測試數(shù)據(jù),構建一種基于決策樹的腦卒中分級預測方法。朱千里[4]從腦卒中致病原因(是否存在心房顫動)出發(fā),采用人工神經(jīng)網(wǎng)絡對腦卒中發(fā)病率進行預測,預測結果可用于指導腦卒中患者的個性化治療。陳莉平等[5]根據(jù)收集的腦卒中數(shù)據(jù),構建腦卒中大數(shù)據(jù)應用平臺,開發(fā)基于AdaBoost的腦卒中復發(fā)預測模型對腦卒中初患人群進行復發(fā)風險預測。本文針對現(xiàn)有方法的不足提出一種基于邏輯回歸模型的缺血性腦卒中發(fā)病率預測方法。通過收集和清洗數(shù)據(jù)、提取面向缺血性腦卒中預測特征、構建基于邏輯回歸的模型等過程來實現(xiàn)缺血性腦卒中發(fā)病率的預測,最后通過仿真實驗驗證方法的有效性。
圖1 基于邏輯回歸的腦卒中預測流程
首先利用數(shù)據(jù)接入及導入工具對分散在基地醫(yī)療機構、社區(qū)衛(wèi)生中心、保健機構、體檢機構和三甲醫(yī)院等各級機構中的患者信息進行采集和集成,最終形成缺血性腦卒中患者病歷信息庫。采集內(nèi)容涉及患者個人信息、既往史、家族史、住院診療數(shù)據(jù)、階段性隨訪數(shù)據(jù)、體檢數(shù)據(jù)等。在數(shù)據(jù)收集的基礎上,采用Hadoop[6]作為基本的分布式執(zhí)行架構,在該架構上配置Python與Spark等分析工具,構建集腦卒中患者數(shù)據(jù)采集、存儲、分析、模型學習、疾病診治等功能一體化的大數(shù)據(jù)平臺,見圖2。
圖2 缺血性腦卒中大數(shù)據(jù)平臺
腦卒中管理數(shù)據(jù)來源廣泛,形式多樣,涉及種類很多,且由于受到篩查對象主觀性、時間限制、信息獲取成本高等因素影響,收集到的腦卒中大數(shù)據(jù)經(jīng)常存在空值、不一致、噪聲數(shù)據(jù)等。因此需要對這些數(shù)據(jù)進行預處理以提高后續(xù)預測方法的準確性。其中空值數(shù)據(jù)對于算法的影響很大,采用刪除包含空值的記錄、自動和手工補全缺失值等方法處理;對于不一致數(shù)據(jù),則在分析產(chǎn)生原因的基礎上利用各種變換、格式化、匯總分解函數(shù)實現(xiàn)數(shù)據(jù)清洗;對于噪聲數(shù)據(jù),采用分箱、計算機與人工檢查相結合和聚類3種方法處理。
2.4.1 概述 實證研究和相關統(tǒng)計表明[7]目前影響缺血性腦卒中發(fā)病的高危因素包括:年齡、遺傳、高血壓、高血脂、高血糖、心臟病、不良飲食、缺乏運動、吸煙、酗酒。從預處理后的腦卒中數(shù)據(jù)集中提取上述10種因素作為特征來進行模型訓練。考慮到基于邏輯回歸模型的輸入一定是數(shù)值類型,而提取的10個特征中大部分是字符串類型,需要將字符串類型轉換成數(shù)值類型,如向量、矩陣或張量形式。一般而言常見特征可以分為類別和數(shù)值型特征兩大類。其中對于類別特征,使用獨熱編碼[8]技術將其轉換為數(shù)值類型后再作為模型的輸入。對于數(shù)值型特征,直接對其進行特征歸一化后將其作為模型的輸入。
2.4.2 特征編碼 將分類特征表示為二進制向量,又稱一位有效編碼,其方法是使用N位狀態(tài)寄存器來對N個狀態(tài)進行編碼,每個狀態(tài)都有獨立的寄存器位,在任意時間其中只有一位有效。提取的10個特征中遺傳、心臟病、不良飲食、缺乏運動、吸煙和酗酒6個特征屬于類別特征,需要對其進行獨熱編碼后再作為模型的輸入。編碼過程,見圖3。
圖3 獨熱編碼
2.4.3 特征歸一化 提取的10個特征中年齡、高血壓、高血脂和高血糖4個特征屬于數(shù)值類特征,對其進行特征歸一化處理,以提高模型精度和訓練過程中算法的收斂速度。采用兩種常見的特征歸一化方法:線性歸一化和標準差標準化。其中線性歸一化是指將特征值范圍映射到[0,1]區(qū)間,見公式1;標準差標準化的方法是指將特征值映射到均值為0、標準差為1的正態(tài)分布,見公式2。
(1)
(2)
其中min(x)指x的最小值,max(x)指x的最大值,mean(x)指x的平均值,std(x)指x的標準差。以10個樣本的年齡特征為例,根據(jù)上述公式對其進行特征歸一化的結果,見圖4。
圖4 年齡特征的歸一化
2.5.1 概述 邏輯回歸又稱為logistic回歸分析[9],是一種廣義的線性回歸分析模型,常用于數(shù)據(jù)挖掘、疾病自動診斷、經(jīng)濟預測等領域。以腦卒中病情分析為例,選擇兩組人群,一組是腦卒中患者組,一組是非腦卒中患者組,兩組人群必定具有不同的體征與生活方式等。因變量為是否患上腦卒中,值為“是”或“否”;自變量為上述影響腦卒中發(fā)病的10大特征。自變量可以是連續(xù)或是分類的,通過logistic回歸分析可以得到自變量最優(yōu)權重,從而準確預測不同人群患腦卒中的可能性。
2.5.2 確定目標函數(shù) 首先基于邏輯回歸模型將缺血性腦卒中發(fā)病率預測問題采用以下數(shù)學表達式進行建模:
(3)
其中y指待觀測個體患上缺血性腦卒中的概率,是一個Sigmoid函數(shù)[10],采用該函數(shù)的意義在于不管影響腦卒中的因素有多少,最終得到的是一個關于缺血性腦卒中發(fā)病率的取值在[0,1]之間的概率。x1,x2,...,x10指影響缺血性腦卒中發(fā)病的10大特征,θ是權重參數(shù)。為使預測結果與真實結果的誤差最小化,采用最小化均方誤差[11]作為邏輯回歸的損失函數(shù),從而得到本研究預測問題的優(yōu)化目標為:
(4)
其中m是樣本的規(guī)模;yθ(x(i))是對第i個樣本進行訓練得到的預測結果;y(i)是第i個樣本的真實結果(標簽)。要構建準確的缺血性腦卒中發(fā)病率預測模型,即要求解得到式(4)中的參數(shù)θ的最優(yōu)值。
2.5.3 模型求解 為求解式(4)的優(yōu)化問題,常采用最小二乘法,將求解式(4)的優(yōu)化問題轉化為求函數(shù)極值問題,但這種做法并不適合計算機。為此采用小批量梯度下降法(Mini-batch Gradient Descent,MBGD)[12]進行模型求解。該方法訓練過程比較快,且能保證最終參數(shù)訓練的準確率。特點是每次訓練迭代在訓練集中隨機采樣M個樣本,其數(shù)學表達式為:
(5)
以獲取到的全國2012-2018年缺血性腦卒中院外篩查數(shù)據(jù)作為研究對象,覆蓋全國31個省市自治區(qū)總計454個篩查點,隨機選定城鄉(xiāng)社區(qū)的40歲及以上常駐人群進行社區(qū)整群抽樣獲得數(shù)據(jù)。截至目前累計收集并存儲近700萬人的院外篩查檔案。本文從這些檔案數(shù)據(jù)中隨機抽樣50 000條檔案作為數(shù)據(jù)集。其中70%數(shù)據(jù)集為訓練集,30%數(shù)據(jù)集為測試集。將本文提出的預測方法與決策樹算法[3]、人工神經(jīng)網(wǎng)絡算法[4]和AdaBoost算法[5]進行性能對比,采用查準率來評價各種算法性能。不同方法查準率比較結果,見圖5??梢钥闯鲭S著數(shù)據(jù)規(guī)模的增加,4種方法的預測精度都有不同程度的上升。總的來看,本文方法的預測精度要略高于人工神經(jīng)網(wǎng)絡算法,比決策樹算法和AdaBoost算法的預測精度分別高出約18.8%和21.7%。分析原因可知:一是本文預測方法在建模過程中采用多種技術對缺血性腦卒中原始大數(shù)據(jù)進行清洗,并對影響腦卒中的高危因素進行分析和特征提取,將噪聲數(shù)據(jù)對模型的影響降到最低;二是對每個特征進行特征編碼或歸一化的分類處理,提高特征對于模型的吻合度;三是采用小批量梯度下降法在降低訓練時間的同時進一步保證預測準確性。
圖5 不同方法查準率比較
本文提出一種基于邏輯回歸模型的缺血性腦卒中發(fā)病率預測方法并通過實驗驗證其有效性。下一步工作中將采用深度學習技術自動提取影響缺血性腦卒中發(fā)病的重要因素,設計一種基于圖卷積神經(jīng)網(wǎng)絡的缺血性腦卒中發(fā)病率預測方法,為醫(yī)生智能診療提供更好的技術支持。