陳嬌花
(上海中醫藥大學附屬第七人民醫院,上海 200137)
區域健康數據分析指的是對某一區域人群的體檢健康數據進行一定的統計分析,進而對整個區域內人群的健康情況和患某種特定疾病風險進行預估[1]。而隨著醫療數據信息化時代的到來,醫療數據所呈現出的特點是海量化與復雜化,這些數據維度通常可以達到上千維。以上海市為例,當前上海常住人口約為2 400 萬,在亞洲城市中位列第一,60 歲以上老人占據總人口的35%,其醫療健康數據也達到了較大的規模。使用常見的統計學方法進行數據分析效率過低,因此,需要深入研究智能化的區域健康數據分析方法。
目前,常見的區域健康數據分析方法為數據挖掘,其中典型的方法為聚類分析法。傳統的K-means聚類方法難以處理與分析高維度健康數據,相對于誤差和時間開銷均不理想。因此該文對傳統K-means聚類方法進行改進,使其能夠對高維數據進行快速、準確的分析。
高維數據是指數據屬性數量較多的數據,此時數據集合中的橫向維度就會變得非常繁冗,這會對數據處理造成運算量的大幅激增。在聚類算法中,對高維數據進行聚類有三種方法:1)使用傳統方法直接對數據進行訓練;2)對冗余的屬性進行相應的篩選,從而簡化屬性;3)利用收縮法,采用各種正則化因子對隸屬函數進行約束。
在傳統算法中,K-means、C-means 算法的使用均較為廣泛。雖然傳統算法簡便快捷,而且這些算法對低維數據的處理程度較好,但是它們對于高維數據的處理通常會表現得比較吃力[2-3]。
屬性簡化算法中大多使用粗糙集理論[4],其通過已知的數據庫對現有不確定樣本數據庫中的內容進行刻畫,這種算法可以大幅度地縮短運算時間。
正則化因子的算法主要是確定回歸變量,例如文獻[5]中的算法,可以在一定程度上提升聚類的效果。但這種方法針對性較強,對不同類型的數據需要不同類型的正則化因子,且魯棒性較差。
因此,該文將使用屬性簡化算法完成高維數據的智能化分析。
K-means 聚類算法是無監督聚類算法的代表,主要思想是將多個樣本數據集聚類為K個簇[6-7],并將每個樣本分配到距離其簇最近的集合中。樣本值距離中心值越遠,則意味著該值偏離平均值的幅度越大。
假設樣本數據集合為X,該數據集合中包含有n個數據,則該集合如式(1)所示:

該文使用的數據為區域人群健康數據,因此每個樣本均為高維數據,設其維度為m。然后確定數據集合的聚類中心,假設個數為k,則聚類中心集合為Ci={C1,C2…Ck}。最終,計算樣本集數據到聚類中心集合間的歐氏距離D(xi,ci)為:

評價聚類效果的指標為誤差平方和,該指標表示樣本數據集簇中的數據與中心數據之間的密集程度,定義SSE 和誤差平方的表達式為分別:

由式(2)和式(3)可以看出,當數據維數較低或數據每個維度的特征均較為重要時,K-means 聚類方法快速、有效。但當數據維度較高時,數據某些核心維度的特征就會被掩蓋,這樣不利于后續數據的處理。因此,需要對高維數據進行降維,或使用對應算法對數據進行處理。
模糊聚類相比于K-means 聚類算法多加入了隸屬度函數[8-9],這可以有效地提高K-means 算法在處理多維數據集時的特征掩蓋問題。
假設樣本數據集合為X={X1,X2,…,Xn},則設定最小化目標函數應為:

式中,F為最小化目標函數,C為聚類中心個數,||vi-Xm||表示樣本數據中第m個數據到第i個聚類中心的歐氏距離,k為加權的系數,μim表示隸屬度函數。模糊聚類算法的執行流程如圖1 所示。

圖1 模糊聚類算法執行流程
粗糙集理論算法的主要思想就是將現有不確定的樣本數據庫通過已知數據庫中的內容進行刻畫。從本質上來說,就是將不確定的數據確定化,這樣就可以保證在系統分類效果恒定的基礎上,對多維數據進行降維簡化,從而解決問題[10-12]。
使用粗糙集對K-means 算法進行優化,則第i個聚類中心中的數據xi的密度函數如下所示:

式中,δ表示鄰域半徑,其表達式為:

而樣本數據xi的權重應為:

則可求得每個簇的中心點,如式(9)所示:

由此可以看到,使用粗糙集合理論對數據進行處理,可去除高維數據集合中的某些冗余屬性。因此需要對數據屬性中的權重值進行計算和確立,這樣可以使數據聚類得到的結果更加客觀,權重公式如下所示:

因此,若數據集合中數據的維度為b,則此時加權得到的歐式距離應為:

然后,從整體決策對多維數據進行屬性簡化,假設輸入為b維的數據集合X,簇的個數為K,則簡化步驟應為:
1)使用上述理論對b維數據集合進行數據清洗處理,此時即可得到b維的清洗數據集合X-Re,然后使用權重公式對b維數據集合的權重進行計算;
2)由式(11)計算出數據的加權距離,得到簇的個數K;
3)對每個維度數據的權重和簇中心點位置進行循環更新;
4)當簇中心點位置不變時,步驟結束,否則循環步驟3),直到簇中心點位置不變為止。
該文構建的結合粗糙集模糊理論的聚類模型思想就是通過粗糙集確定多維數據的權重,進而提高聚類精度。同時,通過模糊理論提升了聚類模型的聚類效果。
首先,使用模糊聚類模型對樣本數據集合的聚類中心個數進行確定;然后,對加權系數值進行初始化和計算。使用粗糙集理論對數據集合屬性進行簡化,同時結合模糊理論對隸屬度函數進行更新。不斷重復該過程,直到聚類中心位置不變即可停止。該文總體模型執行流程圖如圖2 所示。

圖2 總體模型執行流程圖
聚類分析中主要使用效果指標對模型性能的優劣進行評價。通常使用的指標為外部指標或內部指標,外部指標反映的是聚類結果與實際數據聚類之間的偏離程度;內部指標反映的是在實際數據聚類效果未知的情況下,模型聚類效果的優劣。
外部指標使用β指標[13-16],如式(12)所示:

內部指標使用S指標,該指標可以對數據的屬性進行評價,指標的定義如式(13)所示:

由式(13)可知,S的值越趨近于1,表征算法的聚類效果越好。
文中構建的模型可通過分析區域人群的健康多維數據對數據進行聚類分析,并能夠判斷出區域人群患病風險,進而采取措施加強防范。
該文數據來源于開源的健康普查數據集合,數據環境的配置如表1 所示,該數據集合所包含數據的維度較大,對于慢性病的診斷與分析均有較好的應用價值。同時可以選擇不同地區的人群進行分析,文中選擇上海浦東新區的60 歲以上老年人口的健康數據進行分析。由統計資料顯示,該地區60 歲以上老人數量約為100萬人,約占上海老年人口的20%,因此分析該地區健康數據具有顯著意義。

表1 數據環境配置
為了對該文模型算法的精確度進行驗證,文中使用多個對比算法對準確度進行分析,對比算法為傳統K-means 算法、傳統模糊聚類算法以及DSSC 參數相似度算法。使用以上算法在相同的數據集合中進行50 次對比實驗,最終取準確率的平均值。同時也對聚類效果指標進行計算,結果如表2 所示。

表2 算法準確率對比實驗
由表2 中的結果可以看出,在準確率測試中,所有算法對于低維的數據集合聚類準確度均較高,但對于高維數據均偏低。該文算法在高維數據中有較好的表現,相較其他算法準確率提高了約5%。在聚類效果的測試中,指標β值和S值也有較大的優勢。這說明文中算法模型在處理高維數據時,具有較好的準確度和優良的效果。
除了準確度之外,算法所花費時間也是算法性能的重要衡量指標之一。在聚類算法中,算法所花費時間主要是簇中心的位置更迭。在處理維度較高的數據時,算法的執行時間會大幅度增加。該文使用對比算法對花費時間進行測試,模型運行次數為50 次,取運行時間的平均值,得到的結果如表3所示。

表3 算法運行時間對比
從表3 的實驗數據可以看出,無論數據集的維度如何,該文算法在數據處理效率方面均較為理想??梢钥吹?,雖然在處理低維數據集時,由于所提算法中的屬性簡化需要耗費一定的時間開銷,故而造成運行時間略長。但在高維數據執行過程中,文中算法執行時間大幅度優于傳統算法,這說明屬性簡化在算法執行時間中起著決定性的作用,使該文算法相較于傳統算法在執行時間方面縮短了約50%。
由文中的準確率和執行時間實驗可以看出,對于高維數據集合的聚類,引入模糊理論和粗糙集理論后,算法在聚類效果以及執行時間方面相較傳統算法均有較為明顯的提高,因此該文所提出的改進K-means 算法對高維數據的聚類更有針對性。
對區域人群的健康多維數據進行深入分析,可以判斷出區域人群患病風險,進而采取措施加強防范。該文針對聚類分析方法的不足,基于模糊理論和粗糙集理論構建了區域健康數據分析模型,模型通過簡化屬性數量進而提高聚類效果。測試結果表明,文中模型的精度和效率指標均優于其他對比算法,表明該文所構建的模型滿足系統需求。