丁海博 張睿 崔麗玲
摘? 要: 為提高保險公司對保險理賠的預(yù)測精度,提出一種基于多模型融合的XGBoost-LightGBM預(yù)測方法。構(gòu)建XGBoost模型與LightGBM模型,使用Optuna框架對模型參數(shù)進行優(yōu)化,結(jié)合MAPE-RW(Mean Absolute Error-reciprocalweight)算法確定融合權(quán)重,將兩個模型的預(yù)測結(jié)果加權(quán)結(jié)合作為最終組合模型的預(yù)測結(jié)果。以Allstate公司的數(shù)據(jù)為例,對該組合模型進行驗證,結(jié)果表明:與隨機森林、Lasso回歸、SVM及單個XGBoost模型、LightGBM模型相比較,XGBoost-LightGBM組合模型有最低的平均絕對誤差(MAE)值,預(yù)測精度最高。
關(guān)鍵詞: XGBoost; LightGBM; 多模型融合; 保險理賠預(yù)測
中圖分類號:TP391? ? ? ? ? 文獻標識碼:A? ? ? 文章編號:1006-8228(2023)05-61-04
Research on insurance claims prediction based on XGBoost-LightGBM
Ding Haibo, Zhang Rui, Cui Liling
(Hunan University of? Technology, Zhuzhou, Hunan 412007, China)
Abstract: In order to improve the prediction accuracy of insurance claims by insurance companies, an XGBoost-LightGBM prediction method based on multi-model fusion is proposed. The XGBoost model and LightGBM model are constructed, the model parameters are optimized using the Optuna framework, the fusion weights are determined by combining the mean absolute percentage error-reciprocal weight (MAPE-RW) algorithm, and the prediction results of the two models are weighted and combined as the final combined model prediction results. Taking the data of Allstate company as an example to verify the combined model, the results show that compared with the random forest, Lasso, SVM, single XGBoost model and LightGBM model, the XGBoost-LightGBM combined model has the lowest mean absolute error (MAE) value and the highest prediction accuracy.
Key words: XGBoost; LightGBM; multi-model fusion; insurance claim forecast
0 引言
保險理賠預(yù)測是指運用理賠的歷史經(jīng)驗,對投保人提出的理賠要求進行分析和預(yù)測,判斷其存在保險欺詐的可能性,預(yù)測的精度至關(guān)重要[1]。
保險理賠預(yù)測問題是典型的回歸問題。目前,機器學(xué)習(xí)算法被廣泛用于解決各種回歸問題上,如支持向量機(SVM)[2]、隨機森林[3]、神經(jīng)網(wǎng)絡(luò)[4]等。使用單一模型繼續(xù)提高預(yù)測精度已變得十分困難,因為單一模型在處理某個問題時容易遇到模型泛化瓶頸。模型融合通過科學(xué)的方法對多個模型進行融合,綜合各個模型的優(yōu)點從而提高模型的泛化能力。多模型融合方法被廣泛應(yīng)用于各種精度預(yù)測問題上。文獻[5]使用自適應(yīng)權(quán)重的組合模型對發(fā)電量進行預(yù)測;文獻[6]提出一種基于多特征融合和XGBoost-LightGBM-ConvLSTM的組合模型對短期光伏發(fā)電量進行預(yù)測;文獻[7]構(gòu)建基于Stacking的集成學(xué)習(xí)模型,融合多種機器學(xué)習(xí)算法對數(shù)據(jù)資源價格進行預(yù)測。上述研究都使用了較為復(fù)雜的模型進行融合,取得了比較簡單、單一模型更高的預(yù)測精度。目前被廣泛使用的集成學(xué)習(xí)、深度學(xué)習(xí)等模型的參數(shù)較多并且復(fù)雜性較大,使用傳統(tǒng)的網(wǎng)格搜索調(diào)整參數(shù)計算量大,而隨機搜索不能保證給出最好的參數(shù)組合,模型的參數(shù)優(yōu)化十分依賴個人經(jīng)驗。
為進一步提高保險理賠預(yù)測的精度,本文提出一種XGBoost-LightGBM組合模型,構(gòu)建單個XGBoost模型和LightGBM模型,針對網(wǎng)格搜索和隨機搜索在參數(shù)尋優(yōu)時遇到的問題,使用Optuna[8]框架對模型進行參數(shù)優(yōu)化,結(jié)果表明參數(shù)優(yōu)化后的模型在預(yù)測精度上有較大的提升。分別使用優(yōu)化后的XGBoost模型和LightGBM模型對測試樣本進行預(yù)測,根據(jù)模型在驗證集上的表現(xiàn),通過平均絕對百分誤差倒數(shù)權(quán)重(MAPE-RW)[9]確定模型融合權(quán)重并得到最終的XGBoost-LightGBM組合模型。本文使用美國Allstate公司的數(shù)據(jù)對組合模型的預(yù)測精度進行驗證,結(jié)果表明,相較于隨機森林、Lasso回歸、SVM以及單個XGBoost、LightGBM模型,XGBoost-LightGBM組合模型有更高的預(yù)測精度。
1 相關(guān)理論
1.1 XGBoost模型
集成學(xué)習(xí)通過組合多個學(xué)習(xí)器來完成學(xué)習(xí)任務(wù),XGBoost(extreme Gradient Boosting)是一種基于Boosting樹模型的集成學(xué)習(xí)算法,由陳天奇等人于2016年提出[10]。XGBoost高效地實現(xiàn)了GBDT算法并進行了算法和工程上的許多改進,被工業(yè)界廣泛應(yīng)用[11,12]。
XGBoost是由[k]個基模型組成的一個加法模型:
[yi=k=1Kfkxi]? ⑴
其中,[k]表示樹的個數(shù)。[yi]為對第[i]個樣本的預(yù)測值,[fk]為第[k]個樹對樣本[xi]的預(yù)測值。如圖1所示。
構(gòu)建目標函數(shù):
[obj=i=1nlyi,yi+k=1KΩfk]? ⑵
其中,[Ω(f)=γT+12λω2]為XGBoost中的正則項,[T]為葉節(jié)點個數(shù),[ω]為每個葉子節(jié)點所對應(yīng)的分數(shù)。傳統(tǒng)的GBDT為了控制樹的復(fù)雜度只會對樹的葉子個數(shù)加正則項來控制,這是XGBoost相較于GBDT在算法層面的一個改進。
假設(shè)[y(0)i=0],則
[y1i=f1xi+y0i=f1xi+0]? ⑶
[y2i=f2xi+y1i=f2xi+f1xi]? ⑷
[yki=f1xi+f2xi+…+fkxi=yk-1i+fkxi]? ⑸
即[y(k)i=y(k-1)i+fk(xi)],假設(shè)共有[k]棵樹,則對樣本[xi]的預(yù)測結(jié)果[yi=y(k)i],目標函數(shù)可改寫為:
[obj=i=1nlyi,yk-1i+fkxi+j=1K-1Ωfj+ΩfK]? ⑹
XGBoost相較于GBDT在算法層面的另一個改進就是引入二階泰勒展開,將目標函數(shù)簡化為如下的形式:
[minimize:i=1ngi?fkxi+12hi?f2kxi+ΩfK]? ⑺
其中,[gi=?y(k-1)il(yi,yk-1i)],[hi=?2yk-1il(yi,y(k-1)i)]分別為損失函數(shù)關(guān)于[yk-1i]的一階導(dǎo)和二階導(dǎo),因此在訓(xùn)練第[k]棵樹時,[hi,gi]是已知的。
將遍歷對象從樣本改為葉子結(jié)點,樣本[xi]落在葉結(jié)點[q(xi)]上,[Wq(xi)]為該葉節(jié)點的值,[Ij]為該葉節(jié)點的樣本的集合。目標函數(shù)可化為:
[i=1ngi?Wqxi+12hi?W2qxi+γT+12λt=1Twt2]
[=j=1Ti∈Ijgi?wj+12i∈Ijhi+λ?wj2+λT] ⑻
令
[Hj=i∈Ijhi]? ⑼
當樹的結(jié)構(gòu)固定時,可求得葉節(jié)點最佳的權(quán)重[w*j]以及最佳目標函數(shù)分別為:
[w*j=-GtHt+λ]? ⑽
[obj=-12j=1TG2jHj+λ+γT]? ⑾
確定目標函數(shù)后,對于每個特征,訓(xùn)練樣本按特征值進行排序并選擇分裂點,分列前的目標函數(shù)記作:
[obj1=-12GL+GR2HL+HR+λ+γ]? ⑿
分裂后的目標函數(shù)為:
[obj2=-12G2LHL+λ+G2RHR+λ+2γ]? ⒀
計算分裂的收益為:
[Gain=12G2LHL+λ+G2RHR+λ-GL+GR2HL+HR+λ-γ] ⒁
選擇收益最大的分裂特征和分裂點。
1.2 LightGBM
輕量級梯度提升機LightGBM是一個實現(xiàn)GBDT算法的框架,由微軟提出[13]。LightGBM被用于排序、分類、回歸等多種機器學(xué)習(xí)的任務(wù),支持高效率的并行訓(xùn)練[14]。LightGBM主要有一下改進:
⑴ 使用單邊梯度采樣算法,在計算信息增益時,只使用具有高梯度的數(shù)據(jù),減少了時間開銷。
⑵ 使用互斥特征捆綁可以將許多互斥的特征綁定為一個特征,這樣達到了降維的目的。
⑶ LightGBM算法在尋找最佳分裂點的時候,使用直方圖算法,使得時間復(fù)雜度從O((特征值個數(shù)-1)*特征數(shù))降到O((每個特征分箱個數(shù)-1)*特征數(shù))。
⑷ 帶深度限制的Leaf-wise的葉子生長策略,只對信息增益最大的點進行分裂,避免過擬合。
2 XGBoost-LightGBM組合模型
基于多模型融合的XGBoost-LightGBM組合模型構(gòu)建流程如圖2所示。
Optuna是一個自動超參數(shù)調(diào)整框架,可以與Pytorch、TensorFlow、Sklearn等其他框架一起使用。Optuna可使用網(wǎng)格搜索、隨機搜索、貝葉斯搜索等采樣器自動調(diào)整超參數(shù)。
使用Optuna框架對XGBoost和LightGBM模型進行參數(shù)優(yōu)化后分別輸出在驗證集上的MAE值。為了提高組合后預(yù)測的精度,我們希望預(yù)測精度更高的模型所占權(quán)重越高,所以,結(jié)合MAE-RW算法對組合模型的權(quán)重進行計算。模型[i]在驗證集上的測試結(jié)果為[MAEi],則權(quán)重[Wi]和最終的預(yù)測值[f]為:
[Wi=MAEjMAEi+MAEj]? ⒂
[f=WXGBoost?fXGBoost+WLightGBM?fLightGBM]? ⒃
其中[fXGBoost]、[fLightGBM]分別為XGBoost和LightGBM的預(yù)測值。
3 數(shù)據(jù)預(yù)處理
3.1 數(shù)據(jù)描述
本文數(shù)據(jù)來自美國保險巨頭Allstate公司,該數(shù)據(jù)集包含188318個樣本,每個樣本包含116個類別屬性(cat1~cat116)和14個連續(xù)屬性(cont1~cont14),loss為保險賠償?shù)恼鎸嵵怠?/p>
3.2 數(shù)據(jù)預(yù)處理
該數(shù)據(jù)集沒有缺失數(shù)據(jù),因此無需填充缺失值。將離散特征cat1~cat116轉(zhuǎn)化為category特征,并重新編碼。數(shù)據(jù)轉(zhuǎn)換前后對比如圖3所示。
偏度是統(tǒng)計數(shù)據(jù)分布偏斜方向和程度的度量,可以反應(yīng)分布的不對稱性。
[SkewX=EX-μσ3=k3σ3=k3k322]? ⒄
公式⒄中,[k2],[k3]分別表示二階和三階中心矩。計算loss的偏度值為3.794,偏度值大于1,說明數(shù)據(jù)是傾斜的。為了更有利于后續(xù)建模,對loss值進行對數(shù)化后偏度值變?yōu)?.092,轉(zhuǎn)換前后的數(shù)據(jù)如圖3所示,使用轉(zhuǎn)換后的loss值進行訓(xùn)練。
3.3 數(shù)據(jù)劃分
按9:1的方式將數(shù)據(jù)集劃分為訓(xùn)練集和測試集,訓(xùn)練集與測試集樣本數(shù)如表1所示。
4 實驗結(jié)果及分析
4.1 實驗環(huán)境
本次實驗在Windows11系統(tǒng)上進行,CPU為Inteli7-10700 @ 2.90GHz,16G內(nèi)存,Python版本為3.7.13,開發(fā)環(huán)境為VS Code+ Anaconda3,使用了Numpy、Pandas、XGBoost、LightGBM等第三方庫。
4.2 評價指標
本文使用平均絕對誤差MAE作為模型的評價指標。
[MAE=1Ni=1Nyi-yi]? ⒅
其中,[N]為預(yù)測樣本數(shù),[yi]和[yi]分別為模型對第[i]個樣本的預(yù)測值和該樣本的真實值。
4.3 模型構(gòu)建與結(jié)果分析
使用Optuna框架分別對XGBoost和LightGBM進行參數(shù)尋優(yōu)。使用測試集分別對優(yōu)化前后的XGBoost模型和LightGBM模型進行測試,結(jié)果如表2所示。
從表2可以看出,使用Optuna框架優(yōu)化后XGBoost和LightGBM相較于優(yōu)化前平均絕對誤差分別下降了6.297%、2.134%。優(yōu)化后XGBoost和LightGBM的參數(shù)分別如表3、表4所示。
使用測試集對組合模型進行測試,將優(yōu)化后的XGBoost模型和LightGBM模型并聯(lián)起來通過MAE-RW算法得出最終的預(yù)測結(jié)果。同時,為了驗證XGBoost-LightGBM組合模型相較于其他模型的泛化性能,本次實驗給出了隨機森林(RF)、Lasso回歸、支持向量機(SVM)在測試集上的MAE值,實驗結(jié)果如表5所示。
由表5可以看出,XGBoost-LightGBM組合模型相較于XGBoost模型和LightGBM模型預(yù)測誤差均有下降,說明融合策略提高了預(yù)測精度。與RF、Lasso回歸、SVM相比,XGBoost-LightGBM組合模型的MAE值分別降低了7.050%、11.426%、9.034%,實現(xiàn)了更高精度的預(yù)測。
5 結(jié)論
為提高保險理賠預(yù)測精度,本文提出一種基于多模型融合的XGBoost-LightGBM預(yù)測方法。使用并行的XGBoost、LightGBM模型,分別對測試樣本進行預(yù)測并對結(jié)果進行融合,通過平均MAPE-RW算法確定模型融合權(quán)重。針對XGBoost、LightGBM模型參數(shù)較多,調(diào)參復(fù)雜的問題,本文使用Optuna框架分別對XGBoost、LightGBM模型進行參數(shù)尋優(yōu),提高了單一模型的預(yù)測精度。
實驗結(jié)果表明,與RF、Lasso回歸、SVM以及單一XGBoost、LightGBM模型相比,該組合模型在測試集上表現(xiàn)出了更高的預(yù)測精度。
參考文獻(References):
[1] 張健,馮建華.數(shù)據(jù)預(yù)處理在保險理賠預(yù)測中的應(yīng)用[J].計算機工程與設(shè)計,2005(9):2537-2539,2564
[2] 陳榮.基于支持向量回歸的旅游短期客流量預(yù)測模型研究[D].博士,合肥工業(yè)大學(xué),2014
[3] 夏曉圣,陳菁菁,王佳佳,等.基于隨機森林模型的中國PM_(2.5)濃度影響因素分析[J].環(huán)境科學(xué),2020,41(5):2057-2065
[4] 焦李成,楊淑媛,劉芳,等.神經(jīng)網(wǎng)絡(luò)七十年:回顧與展望[J].計算機學(xué)報,2016,39(8):1697-1716
[5] 賈睿,楊國華,鄭豪豐,等.基于自適應(yīng)權(quán)重的CNN-LSTM&GRU組合風(fēng)電功率預(yù)測方法[J].中國電力,2022,55(5):47-56,110
[6] 王俊杰,畢利,張凱,等.基于多特征融合和XGBoost-LightGBM-ConvLSTM的短期光伏發(fā)電量預(yù)測[J].太陽能學(xué)報,2021:1-7
[7] 沈俊鑫,趙雪杉.基于Stacking多算法融合模型的數(shù)據(jù)資源定價方法研究[J].情報理論與實踐,2022:1-12
[8] Akiba T, Sano S, Yanase T, et al. Optuna: A next-generation hyperparameter optimization framework[C]//Proceedings of the 25th ACM SIGKDD international conference on knowledge discovery & data mining,2019:2623-2631
[9] 莊家懿,楊國華,鄭豪豐,等.基于多模型融合的CNN-LSTM-XGBoost短期電力負荷預(yù)測方法[J].中國電力,2021,54(5):46-55
[10] Chen T, Guestrin C. Xgboost: A scalable tree boostingsystem[C]//Proceedings of the 22nd acm sigkdd international conference on knowledge discovery and data mining,2016:785-794
[11] Ogunleye A, Wang Q G. XGBoost model for chronickidney disease diagnosis[J]. IEEE/ACM transactions on computational biology and bioinformatics,2019,17(6):2131-2140
[12] Dhaliwal S S, Nahid A A, Abbas R. Effective intrusiondetection system using XGBoost[J]. Information,2018,9(7):149
[13] Ke G, Meng Q, Finley T, et al. Lightgbm: A highlyefficient gradient boosting decision tree[J]. Advances in neural information processing systems,2017,30
[14] 馬曉君,沙靖嵐,牛雪琪. 基于LightGBM算法的P2P項目信用評級模型的設(shè)計及應(yīng)用[J]. 數(shù)量經(jīng)濟技術(shù)經(jīng)濟研究,2018,35(5):144-160