河北工業大學經濟管理學院信息管理與信息系統系(300401) 李 杰 蘭巧玲
社會基本醫療保險制度是社保體系的重要組成部分,醫保基金則是其物質基礎。醫療保險欺詐是指個人或組織故意欺騙或歪曲事實以使其本人或組織獲得不法醫療保險資金的行為[1],它會對醫療保險基金安全構成巨大威脅。然而,傳統的欺詐風險識別主要依靠人工審核,成本高、效率低且準確率偏低。因此,科學高效地預測欺詐風險對于反欺詐工作的展開具有重要意義。
隨著大數據技術的發展,數據挖掘方法因其從海量數據中高效提取有價值信息的優勢,逐漸被應用到疾病診斷、欺詐和異常檢測等醫療衛生領域[2]。國內外許多學者已采用決策樹[3]、神經網絡[4]和貝葉斯[5]等數據挖掘的方法來構建預測模型。XGBoost(eXtreme Gradient Boosting)算法[6]通過集成多棵決策樹并使用梯度提升方法進行了改進,其運算速度快、預測準確且不易過擬合。由于現實中欺詐數據與正常數據比例通常差距較大,因此需借鑒EasyEnsemble方法[7],利用集成學習機制進行數據平衡處理。因此,本文旨在通過建立基于EasyEnsemble方法的XGBoost集成模型對社會基本醫療保險參保人進行欺詐風險預測,從而有效控制醫療保險欺詐行為,節約醫保費用,并為審核專家的后續處理提供科學的決策支持。
1.資料來源與數據處理
數據來源于2017年阿里巴巴天池大數據競賽的“精準社保”賽題,其包括2016年6至12月20000名參保人員的183萬條醫療費用記錄和653萬條消費金額明細與消費內容,以及參保人員的欺詐標簽(0-正常;1-欺詐)。其中包含欺詐參保人1000個,正常參保人19000個,欺詐與正常樣本比例為1∶19,具有嚴重不平衡的特征。醫療費用記錄表包括各項費用發生、申報和審批金額等69個特征變量。消費金額明細與消費內容表則包含服務項目、單價和數量等11個特征變量。
通過剔除無效變量、缺失值填充以及數據整合等預處理,將每名參保人的記錄合并為一條數據,得到20000名參保人的數據。參考以往研究并考慮現實欺詐行為表現形式,構造基于不同維度下診療費用或項目數量的總和、均值等統計量的特征變量并進行標準化處理。最終得到827個特征變量,加上標簽變量,與20000個訓練集樣本構成維度為20000×828的樣本-特征矩陣。
2.社會基本醫療保險參保人欺詐風險預測模型建立
社會基本醫療保險參保人欺詐風險預測模型建立的主要步驟為:(1)將數據集D通過分層抽樣隨機劃分為5個大小相同的互斥子集Dn(n=1,2,…,5),每次用1個子集作測試集,其余作測試集,得到5組數據集Di(i=1,2,…,5),各組測試集和訓練集分別表示為Dxi和Dci;(2)基于EasyEnsemble思想對每組訓練集Dxi中的正常樣本應用Bootstrap法進行10次欠采樣,每次抽取與欺詐樣本數量相同的樣本數,并分別與欺詐樣本集組合得到10個訓練子集Dxij(j=1,2,…,10);(3)分別運用Dxij進行XGBoost模型訓練,得到10個基評估模型,并將該模型用于預測各組測試集Dci的欺詐概率,最后通過求均值進行模型集成,得到各組Di的測試結果;(4)返回5組數據集Di的測試結果均值;(5)重復上述步驟10次,返回10次測試結果的均值。
3.編程實現與性能度量
本文運用Python 3.6.1作為統計分析的工具,用其中的numpy、pandas、sklearn.model_selection和imblearn.ensemble等模塊進行數據處理,xgboost模塊進行模型訓練與預測,sklearn.GridSearchCV進行網格搜索以確定模型參數。
醫療保險欺詐風險預測的實質是預測是否存在欺詐行為,這是典型的二分類問題。現實數據中欺詐樣本遠少于正常樣本,而欺詐樣本的誤判成本遠高于正常樣本,研究的最終目的是要識別少數類欺詐樣本。因此,定義預測結果真陽性為TP、假陽性為FP、真陰性為TN、假陰性為FN,則本文主要依據預測結果的準確性(accuracy,ACC),即全部預測樣本中真陽性(欺詐)與真陰性(正常)的樣本數所占比例,如式(1)所示;平衡預測值(balance predictive value,BPV),即陽性預測值(PV1)與陰性預測值(PV0)的加權平均值,如式(2)所示;平衡敏感性(balance sensitivity,BS),即敏感性(S1)與特異性(S0)的加權平均值,如式(3)所示;F1,即BPV和BS的調和平均數,如式(6)所示;AUC值(area under ROC curve),即感受性曲線(ROC)下的面積這四個指標來評估模型性能。
ACC=(TP+TN)/(TP+FN+FP+TN)
(1)
BPV=ω1×PV1+ω0×PV0
(2)
BS=ω1×S1+ω0×S0
(3)
其中,ω1、ω0分別為欺詐與正常的樣本占總樣本數比例權重,且:
(4)
(5)
F1=2×BPV×BS/(BPV+BS)
(6)
1.模型性能度量
為驗證模型穩定性,本文對數據樣本進行了10次5折交叉驗證。該模型在10組測試集上預測結果的ACC、BPV、BS、S1、F1以及AUC評估指標如表1所示。

表1 10組測試集下各模型性能度量結果
由表1可知,該模型在10組測試集下的平均準確性、平衡預測值、平衡敏感性、F1和AUC值分別為0.83、0.95、0.83、0.89和0.92,表明模型整體性能良好。其中敏感性S1,即實際為欺詐的樣本被正確判定為欺詐的比例為0.83。此外,識別出的欺詐樣本的總報銷費用占所有欺詐樣本總報銷費用的比例,即運用該模型進行預測總共能夠預防的醫保基金損失比例達到91.27%。上述指標的標準差均小于0.05,亦表明模型穩定性良好。由此可知,本文所構造的基于XGBoost算法的風險評估集成模型預測效果較好,且在不同測試集中模型穩定性表現良好,因此能夠用于合理有效地預測社會基本醫療保險參保人的欺詐風險。
2.預測變量重要性測度
最終有203個特征變量被用于欺詐預警模型構造,根據“帕累托法則”,本文對該模型中排名前20%的重要特征變量進行分類匯總并計算其重要度均值,結果如表2所示。
由表2可知,重要預測變量主要可劃分為“記錄數量”、“消費金額”、“就診規律”和“報銷規則”四大類,其中“藥品與治療相關費用記錄數量”、“月初、月中和月末藥品、治療等費用總額及其各階段增長比例”以及“總費用”是最重要的特征。進一步對上述特征變量進行描述性統計分析以及獨立樣本T檢驗,比較欺詐與正常參保人的行為差異,如表3所示。

表2 特征變量重要度統計

表3 欺詐與正常參保人特征差異
*:二、三列數據采用“均值μ(標準差σ)”形式表示,T檢驗顯著性:*P<0.1,**P<0.05,***P<0.01。
由表3可知,從數據整體穩定性看,欺詐者的各項指標數據離散程度表現均相對較高,表明其行為特征未呈現出穩定的規律性,這也是導致欺詐行為隱蔽性較高,難以識別的原因之一。欺詐與正常者的行為模式主要在三個方面產生顯著差異:(1)項目數量和賬單數量;(2)總費用、藥品費和月末藥品費;(3)“180”號醫院就診頻率。實際上,前兩方面均顯示欺詐者總體消費水平及頻率,尤其是藥品類項目數量少而費用高,存在開高價藥的嫌疑,且可能月末集中消費。此外,欺詐者在“180”號醫院就診頻率遠高于正常者,意味著該醫院可能存在監管漏洞或醫患合謀欺詐行為。最后,欺詐者的補助報銷比例略高于正常者,而后者的統籌支付比例略高于前者。兩者就診過的醫院數、統籌報銷比例等無差異。
本文基于我國社會基本醫療保險診療歷史記錄的大規模真實數據,運用數據挖掘中的XGBoost算法構造社會基本醫療保險參保人欺詐風險預測集成模型,從而預測參保人的欺詐風險,進行參保人欺詐預警。模型預測結果準確率較高,且具有較強穩定性。
在該模型中,藥品類項目數量、月末藥品費和總費用等是重要的預測變量。實際上,參保人員實施欺詐行為的根本目的是為套取醫保基金,因此其行為特征必定會通過診療費用記錄顯現。其中,欺詐人員所產生的藥品類項目較多,尤其是月末藥品費用明顯高于正常人員。因此,有可能存在被他人使用保險證/卡非法申領保險金以及主動要求醫院開具本人不必要的藥品由他人代用等情況[8]。甚至可能存在詐騙團伙誘使參保人出借尚余報銷額度的醫保卡,從而在月末集中非法開藥,倒賣醫保藥品的問題。此外,欺詐人員在某醫院的就診頻率明顯高于正常人員,因此可以合理懷疑醫患合謀欺詐的情況。事實上,參保人想實施欺詐,往往需要醫療機構工作人員的支持、縱容和配合。其主要表現為大處方、人情方、營養方,以及為患者虛開發票騙取醫保基金等[9]。
在本研究模型基礎上開發智能化索賠欺詐識別系統,能夠基于大量醫療保險數據進行科學分析,有效挖掘參保人的潛在行為模式。進而開展高效的審核工作,對欺詐人員進行有效預測,及時發出報警信息,防范欺詐行為的產生。從而有效保障醫保基金安全,維護社會醫保公平性,推動醫保體系有效運行。