[發明專利]一種基于機器學習的2型糖尿病預測預警方法在審
| 申請號: | 201710665605.6 | 申請日: | 2017-08-07 |
| 公開(公告)號: | CN107403072A | 公開(公告)日: | 2017-11-28 |
| 發明(設計)人: | 楊勝齊;吳寒;丁夢;王冰笛 | 申請(專利權)人: | 北京工業大學 |
| 主分類號: | G06F19/00 | 分類號: | G06F19/00 |
| 代理公司: | 北京思海天達知識產權代理有限公司11203 | 代理人: | 沈波 |
| 地址: | 100124 *** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 機器 學習 糖尿病 預測 預警 方法 | ||
1.一種基于機器學習的2型糖尿病預測預警方法,該方法通過K-means算法和Logistic Regression算法建立先聚類再分類的糖尿病雙層預測分析模型,對非糖尿病的分類結果通過C4.5算法和K-means算法分析出的規則進行預警分級,對糖尿病數據集通過日常數據收集管理后并進行更新維護以優化原始糖尿病雙層預測分析模型;本方法包括數據收集模塊、數據預處理模塊、預測分析模塊、預警分級模塊和日常管理模塊,數據收集模塊與數據預處理模塊連接,數據預處理模塊與預測分析模塊連接,預測分析模塊與預警分級模塊連接,預警分級模塊和日常管理模塊連接;
其特征在于:本方法包括以下步驟:
(1)基于現有的健康大數據,獲取醫院、社康、體檢中心等醫療單位內與糖尿病相關的健康數據以建立糖尿病參數數據庫,健康數據包括年齡、身高、體重、腰圍、臀圍、收縮壓、舒張壓、心率、血糖、血氧、睡眠質量和飲食習慣等;首先對每一個實例以糖尿病和非糖尿病進行標記;
(2)對糖尿病參數數據庫中的原始數據做數據預處理;預處理包括確定統一的數據項以及每一項的具體格式,具體格式為枚舉型或數值型等,然后通過數據清洗和數據標準化提高原始數據的質量;
(3)使用K-means算法和Logistic Regression算法的雙層預測分析模型分析處理過的數據集,對每個實例屬于糖尿病或是非糖尿病進行預測分類;
(4)使用C4.5算法和K-means算法結合的分析模型結合現有高危人群劃分標準對非糖尿病進行預警分級,提出無風險、低風險和高風險三類標識;
(5)通過引入最新的糖尿病參數數據,對所有糖尿病參數數據以統一規范的數據格式進行存儲并及時反饋至數據收集模塊以進行進一步優化;在豐富數據集的基礎上,反復步驟(2)、(3)、(4)進行訓練以優化本方法的實際應用效果;
所述的數據收集模塊是基于現有的健康大數據,通過獲取醫院、社康、體檢中心等醫療單位內與糖尿病相關的健康數據以建立糖尿病參數數據庫,對每一個實例以糖尿病和非糖尿病進行標記;
所述的數據預處理模塊分為兩個基本步驟,分別是數據清洗和數據標準化;數據清洗包括一致性檢查和缺失值處理,一致性檢查是根據每個變量的合理取值范圍和相互關系,檢查數據是否合乎要求,發現超出正常范圍、邏輯上不合理或者相互矛盾的數據;缺失值處理即將數據集中缺少的值使用平均值進行替代;數據標準化是在數據清洗完成后,為避免計算過程中數值復雜度,以及避免大數值區間的屬性過分支配小數值區間的屬性,將所有糖尿病參數中的屬性進行Normalize,規范到數值區間[0,1],使用公式:其中x'表示糖尿病參數屬性的平均值,s表示糖尿病參數屬性的標準偏差,Value即糖尿病參數原屬性值value進行標準化計算得到的結果;
所述的預測分析模塊分為兩部分,分別是K-means聚類處理和LogisticRegression模型處理;使用K-means聚類算法對剔除了分類標簽結果的數據集進行一級處理,設定聚類數目為2,將結果與原始數據集進行對比,剔除聚類錯誤的數據項,以提供更加準確的數據集進入下一階段的處理;使用LogisticRegression模型對上述處理過的數據集進行有監督的分類處理,分析結果可得預測準確性;
預警分級模塊針對糖尿病數據集中的參數,根據C4.5算法和K-means算法基于現有數據分析糖尿病風險層級的規則并與糖尿病分級標準進行對比,以制定更加直接有效的預警分級標準;在此基礎上,針對新數據的錄入通過新的分級標準進行風險層級判斷;
所述的日常管理模塊包含血糖記錄和體征記錄;血糖記錄針對糖尿病用戶,通過引入最新的血糖記錄針記錄血糖參數數據以更新糖尿病數據庫;體征記錄針對所有用戶,管理的糖尿病參數包括心率、血壓、血氧、身高體重和腰臀比數據;所有參數均以統一規范的數據格式進行存儲并及時反饋至數據收集模塊進行優化。
2.根據權利要求1所述的一種基于機器學習的2型糖尿病預測預警方法,其特征在于:預測分析模塊和預警分級模塊是本方法的兩大核心模塊;
所述的預測分析模塊由K-means算法和LogisticRegression算法組成;
K-means算法是典型的基于距離的聚類算法,采用距離作為相似度的度量指標,即規定對象間的距離值越小,其相似度越大;K-means算法所產生的簇都是由距離相近的對象組成,故其最終目標是找到這些緊湊且獨立的簇;在K-means算法中,K值代表的是初始聚類中心的個數,聚類中心即簇,故K值的選取對聚類結果影響大;
針對包含n個糖尿病實例的初始數據集,n為糖尿病實例的個數且取正整數,對應的算法過程如下:
1)在給出數據集中的n個糖尿病實例里任意選取2個對象作為初始聚類中心;由于最終的分類結果為兩類,將K值定為2;
2)對剩余的每個糖尿病實例分別計算與每個中心的距離,并根據剩余的每個糖尿病實例與各個簇中心的距離把剩余的每個糖尿病實例歸到最近的中心的簇;
3)重新計算每個聚類的中心,判斷中心是否發生變化;
4)循環步驟2)~3)步直至新的中心與原中心相等或小于指定閾值,即已收斂,則算法結束;通過誤差函數判斷收斂:其中x表示糖尿病參數中的每個實例,μ(Ci)表示聚類Ci的中心,d(x,μ(Ci))表示x和μ(Ci)之間的歐幾里德距離,k的值為2;
在對糖尿病數據集使用K-means算法進行分析時,選取K值為2,將分析結果與數據集原始的分類標簽進行比較,剔除錯誤的噪聲數據,將剩余的數據集作為下一級LogisticRegression算法的輸入;由于起初K-means算法的Seed值是隨機選取的,在剔除數據過程中可能造成錯誤聚類數量過大,故在每次聚類分析結束后計算數據集剩余比;若比值大于75%,則進入下一步;若比值小于75%,則進入循環重新選取新的Seed值開始聚類;
以此方法降低人工選取Seed值導致錯誤分析的風險,并且能夠有效控制原始數據集的不必要損失;
對高質量的數據集使用LogisticRegression算法進入第二級處理;
Logistic回歸分析,是一種廣義的線性回歸分析模型,常用于數據挖掘,疾病自動診斷,經濟預測等領域;探討引發疾病的危險因素,并根據危險因素預測疾病發生的概率等;針對糖尿病參數進行分析研究,采用LogisticRegressionModels,其定義如下:估計概率公式為:其中P表示時間Y發生的概率,即分類結果為糖尿病或非糖尿病的概率;p(Y=1)=p/(1-p)表示讓步比;Ln[p/(1-p)]是讓步比的log值;每一個獨立的糖尿病參數X分配相應的系數值β代表該參數對分類結果占有的權重;
在本方法中,最終結果的標簽為兩類,糖尿病和非糖尿病;數據集中的屬性值提供了分類依據;通過LogisticRegression算法分析,得到每一項屬性值的權重,從而確定糖尿病參數中的危險因素,進一步分析得到的分類結果即為整體算法模型的預測結果;
在本方法中,使用10折交叉驗證方法對預測分析結果進行驗證,將初始采樣分割成10個子樣本,一個單獨的子樣本被保留作為驗證模型的數據,其他9個樣本用來訓練;交叉驗證重復10次,每個子樣本驗證一次,平均10次的結果或者使用其它結合方式,最終得到一個單一估測;這個方法的優勢在于,同時重復運用隨機產生的子樣本進行訓練和驗證,每次的結果驗證一次;
一種預測過程會有四個不同的結果,分別為TP、TN、FT和FN;在混淆矩陣中顯示四種結果相應的數據,TP和TN是分類正確的結果,FT是將原本屬于Negative的結果錯誤分類至Positive類,FN是將原本屬于Positive的結果錯誤分類至Negative類;Precision查準率,是衡量檢索系統拒受非相關信息的能力;Recall查全率,是衡量檢索系統檢出相關信息的能力;MCC,這是一個針對二元分類的有趣性能指標,特別是各個類別在數量上不平衡時;
預警分級模塊由C4.5算法和K-means算法組成;
決策樹是一個樹結構;其每個非葉節點表示一個特征屬性上的測試,每個分支代表這個特征屬性在某個值域上的輸出,而每個葉節點存放一個類別;使用決策樹進行決策的過程就是從根節點開始,測試待分類項中相應的特征屬性,并按照其值選擇輸出分支,直到到達葉子節點,將葉子節點存放的類別作為決策結果;C4.5是決策樹算法的一種,其主要特點是優化信息增益的缺點,提出信息增益率的概念,其定義為信息增益率使用“分裂信息”值將信息增益規范化,分裂信息定義如下:其中D1到DV是V個值的屬性A分割D而形成的V個樣例子集,分裂信息就是D關于屬性A的各值的熵;
選擇具有最大增益率的屬性作為分裂屬性;
在本模塊中,首先使用C4.5算法對原始數據集做分類分析,將原始數據集分為糖尿病和非糖尿病兩類,分類結果分析得出的分類規則是一系列對屬性數值區間的規約,將這些規則應用于下一步的分級定義當中;
K-means算法可以對數據集進行無標簽的聚類分析;針對僅包含非糖尿病實例參數的數據集,使用K-means算法進行聚類,將K值設為3,結果生成三個屬于不同范圍內的類別;通過將結果與現有糖尿病預警分級標準以及上一步生成的若干規則進行對比分析,分別針對高風險、低風險和無風險三個級別得出有實際效用的預警分級規則。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于北京工業大學,未經北京工業大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710665605.6/1.html,轉載請聲明來源鉆瓜專利網。
- 同類專利
- 專利分類
G06F 電數字數據處理
G06F19-00 專門適用于特定應用的數字計算或數據處理的設備或方法
G06F19-10 .生物信息學,即計算分子生物學中的遺傳或蛋白質相關的數據處理方法或系統
G06F19-12 ..用于系統生物學的建模或仿真,例如:概率模型或動態模型,遺傳基因管理網絡,蛋白質交互作用網絡或新陳代謝作用網絡
G06F19-14 ..用于發展或進化的,例如:進化的保存區域決定或進化樹結構
G06F19-16 ..用于分子結構的,例如:結構排序,結構或功能關系,蛋白質折疊,結構域拓撲,用結構數據的藥靶,涉及二維或三維結構的
G06F19-18 ..用于功能性基因組學或蛋白質組學的,例如:基因型–表型關聯,不均衡連接,種群遺傳學,結合位置鑒定,變異發生,基因型或染色體組的注釋,蛋白質相互作用或蛋白質核酸的相互作用





