賀遠珍 樊重俊 熊紅林
(1.上海理工大學管理學院 上海 200093)(2.上海交通大學安泰經濟與管理學院 上海 200240)
隨著“互聯網+”的普及,信息化應用到社會生活與政府機構的各方面,尤其是國家各部門相關工作。在《社會救助暫行辦法》和《關于改革完善社會救助制度的意見》中,國務院明確表示救助業務要本著公平公正的原則,促進社會和諧和人民共同富裕,科技化精準救助是其中必不可少的部分。目前,國內外民政部門的社會救助管理系統的設計和實現都趨向成熟。但精準識別被救助人員任務上仍存在缺陷,比如救助范圍較寬且標準不清晰,因此在決定被救助人員和救助金額時往往存在不確定性。當前各個基層單位是救助業務的主要管理者和實踐者,被救助人員及金額大多由基層工作人員憑借經驗來判定,這容易造成評判標準的隨意性和不統一。因此,在信息化這樣一個大背景下,如何實現精準救助是一個亟待解決的問題。
社會救助對象的類型判定需要多方了解家庭的困難情況,需要考慮家庭各個特征并按照政策進行分類,在這個過程中業務員的判斷是確定救助類型的主要依據。但現實生活中各家庭在各指標上存在參差,并且業務員受自身的家庭環境、教育環境影響和對政策的理解不同等因素導致判定結果具有主觀性,這會增加判定工作的難度。對此,在機器學習的步步發展下,各種能解決該問題的機器學習模型也相繼被提出。目前,針對被救助對象困難等級判定的預測方法主要有層次分析法[1],隨機森林[2]等,這些模型的應用都已經取得了很好的效果。還有一些其他貧困等級的判定,文獻[3]利用所有相關專家的匯總信息,描述為概率語言術語集,將貧困家庭進行排名和聚類。文獻[4]通過SOFM 網絡對河北省貧困縣進行等級劃分。文獻[5]構建了基于REAHCOR 新型特征選擇算法與GBDT 分類算法結合的模型,并把該模型應用到貧困分級評價系統中。
一般來說,社會救助常見類型有低保、低收入、重殘無業、特困、支出型救助、臨時救助等。在實際的研究過程中,因為樣本數據分布極度不均衡,傳統分類器會在多數類樣本中表現效果更佳,甚至忽略少數類樣本對于整體問題的影響。這就使得社會救助困難類別的預測成為不平衡數據多分類問題。傳統的分類方法通常基于各類樣本的數據分布大致相當,各類樣本錯分的代價也大致相同的假設,往往不能達到理想的分類效果。常見的不平衡數據問題包括入侵檢測[6]、醫療診斷[7]、信用風險評價[8]等。目前,解決數據的不平衡性的方法有很多,主要分為3 類:第1 類是采樣法,包括欠采樣[9]、過采樣[10]和混合采樣[11];第2類是代價敏感學習[12~13],通過為少數類賦予相對高的錯分代價和為多數類賦予相對低的錯分代價來提高少數類的分類性能;第3類是集成學習[14]。
基于此,本文提出一種新的用于解決不平衡多分類問題的模型,該模型結合了代價敏感學習和集成學習兩種方式嘗試構建代價敏感的AdaBoost 雙層分類算法來對社會救助類型的進行分類分析和研究,探討更有效的精準社會救助技術手段與應對策略。實驗結果表明,與多個模型比較,本文所提出模型在社會救助的精準識別有更高的預測精度和更強的穩定性,能為社會救助事業的精準識別提供更好的輔助決策參考。
由于社會救助本身就是一個復雜的事務,且各個省市政策不同評判標準也具有很大差異,僅依靠人力對被救助對象進行分類是十分耗時和繁雜的。因此,應用數據能很好地為社會救助事業提供客觀化、高效化的結果。眾所周知,社會救助中被救助人員大多屬于低保、低收入等類型,積累的數據集具有很高的不平衡性且分類標簽多。因此,本文針對上海市社會救助政策尋求構建一種新的基于不平衡性多分類問題的模型,以獲得救助過程中的客觀且精細的決策,它也為各省的社會救助信息化事業提供一個參考。
AdaBoost是一種經典的集成算法之一,是通過有限次迭代生成多個泛化能力較差的弱分類器,并在最后通過弱分類器的權重組合生成一個具有良好分類效果的強分類器,從而提高整個分類器的精確度。具體的算法思想[15]如下:
令訓練集S={(x1,y1),(x2,y2),…,(xm,ym)},其中xi為第n個樣本的n維特征向量,yi為樣本標簽,令迭代次數為T。
1)初始化訓練樣本權重
給定各訓練樣本一個初始權重值,在第一輪迭代中各樣本的權值平均分布,即:
其中,ω1i表示第一輪迭代中第t=1,2,…,T個樣本權重;初始化各樣本的權重為t=1,2,…,T,t=1,2,…,T為總樣本數。
2)對t=1,2,…,T重復以下操作得到T個弱分類器:
(1)按照樣本權值向Dt訓練數據,根據htk(x)=σ(S,Dt),k=1,2,…,j的各個特征參量獨立生成一個分類器htk(x):
其中,S為訓練樣本集;σ(?)為基學習算法。
(2)根據式(3)分別計算j個分類器的加權誤差率ωti,取ωti最小的分類器為最終弱分類器,記為ωti,誤差率為ωti:
其中,ωti為第t輪迭代中第i個樣本的權重值。
(3)計算ht(x)的系數(即在最終集成得到的強學習器中所占權重值):
(4)更新訓練樣本的權重向量D,以降低正確分類的樣本權重值,提高錯分的樣本權重值,引入的Zt是規范化因子,使Dt+1的所有元素和為1。
3)經過T輪迭代,通過弱學習器加權線性組合構建最終的強分類器G(x)為
根據文獻[16]對多項邏輯回歸模型的定義,項邏輯回歸模型是邏輯回歸的推廣,可用于多類分類。假設離散型隨機變量Y 的取值集合是{1,2,…,K},那么Softmax回歸模型:
其中,xRN+1,wkRN+1。
Softmax 回歸模型是一個判別式模型,具有多種模型正則化的方法,在實際運用中可避免多重共線性的問題。與決策樹、支持向量機相比,Softmax回歸模型可以得到一個可解釋的概率架構,并且能輕松通過新數據的加入對模型進行實時更新。由于Softmax 回歸模型具有在分類時計算量小,計算速度快,儲存空間占用低等優點,因此廣泛應用于數據量大,特征空間小的工業問題上。
根據救助數據具備類別數量呈現極端趨勢的特點,設計一個“多轉二”機制將數據集由多分類問題轉化為二分類問題,即將樣本數量相當的作為一類,幾個多數類合成總體多數類,幾個少數類合成總體少數類。將總體分為兩類,但這個二分類問題具有極度不平衡性。
本文引入有代價敏感機制的AdaBoost模型(又稱Adacost 模型)來對這個極度不平衡的二分類問題進行分類。Adacost 模型的實現方法是在Ada?Boost 機制里的調整系數中增加一個代價因子bi,所以新的權重更新公式如下:
綜上,可以得到總體多數類和少數類的二分類結果。然后在二分類結果的基礎上,將問題進一步轉化為兩個數量相當的均衡多分類問題,再利用能有效規避多重有線性的Softmax回歸模型對它們分別進行分類。從而構成針對不平衡數據集的多分類問題的CA-SF模型結構如圖1所示。

圖1 CA-SF模型結構圖
CA-SF模型的建模步驟如下:
Step1 對不符合救助條件的樣本刪除,將反映家庭個體的樣本特征維度通過比例法轉化為家庭總體特征。
Step2 對經過Step1 的數據進行標準化處理,消除量綱影響。再給樣本集基于類別數量均衡原則增加一個二類標簽列,并將其按照7∶3 的比例分為訓練集和測試集。
Step3 通過式(1)~(4)、式(6)~(7)和式(10)對Step2得到的二類數據集的訓練集進行二分類訓練,得到強學習分類器H(x),獲得測試集的二分類的預測結果y*。
Step4 根據Step2 得到的二類標簽為準將訓練集中分為兩個子樣本訓練集。再根據Step3得到預測值將測試集分為兩個子樣本集,分別是少數類和多數類測試集。對兩個子訓練集分別用Softmax回歸進行分類,并在子測試集中進行測試,得到總測試集預測值y′。
為驗證本文提出的模型有效性,本文對此開展了實證分析。本研究得到了上海市民政局信息研究中心的支持,研究數據社會救助相關人員家庭情況數據來自于上海市2020 年救助人員數據庫。根據上海市民政局相關政策將不符合條件的救助對象刪除,余下的數據作為研究對象。由于數據集中的文化特征反映的是家庭每個成員的個人特征,而不是家庭總體特征,因此將文化特征分為文盲、義務教育和高水平教育三個級別按照比例法進行計算分類,得到新的家庭文化特征,其他特征均為原始數據,數據集中被救助家庭的相關變量描述如表1 所示,分別從家庭的經濟情況、年齡分布、文化水平、勞動能力四個方面對數據進行了描述。

表1 被救助家庭的相關變量描述
根據上海市社會救助類別等級分類政策,將社會救助類別劃分為五個類別,多數類別包括低保、低收入和重殘無業,少數類類別包括支出型貧困和特困,對各類別進行編碼得到:1)重殘無業,2)支出型,3)特困,4)低收入,5)低保,部分數據如表2 所示。該數據集共包括162299 例樣本,考慮13 個特征維度,按照7∶3 的比例對樣本集進行劃分為訓練集和測試集兩部分,樣本分布的情況如表3 所示。用各類別間的數量差來表示該樣本集的不平衡度。可以看到在五個類別中,支出型救助類型占比最少,不足百分之一;低保救助類型占比最多,超過百分之五十;其他三種類型分布仍然不均衡。兩個類別之間的不平衡度最高可達1∶70,最低低至1∶1.66。

表2 社會救助數據集類別編碼后的部分數據展示

表3 數據集中被救助家庭類型分布情況
由于在樣本中經濟特征的數值與其他特征的數值差異較大,為避免差異過大影響算法的迭代過程,因此對數據進行標準化處理。對每一列特征屬性計算均值、最大值和最小值,然后通過式(11)對所有樣本屬性值進行歸一化處理。
在不平衡的社會救助數據中僅僅使用準確率作為評價標準是不合理的,因為少數類數量占比極少,若這些少數類全部預測為多數類,準確率依舊可以保持在一個相當高的水平。因此,本文采用各類別分別的查準率(precision)、查全率(recall)、F1值對分類能力進行衡量,相應的計算公式如下。
為驗證CA-SF 算法的有效性與優越性,本文將與其他常見的經典多分類模型進行對比實驗,包括支持向量機(SVM)、人工神經網絡(ANN)、隨即森林(RF)、多項邏輯回歸(SF)、具有樣本權重機制的梯度提升隨機樹(LightGBM)。其中SVM 采用的核函數為RBF 核,LightGBM 模型中的樣本權重矩陣為w=[1,1.3,1.2,1.1,1]。
通過多次試驗,CA-SF在第一層的不平衡二分類問題中最佳代價矩陣如表4 所示。通過實驗得到以上六種模型的查準率、查全率和F1值的最終結果,其對比情況如表5 所示。為了更加直觀地比較和分析各個模型的分類效果,并將其繪制成折線圖,具體如圖2~4所示。

表4 Adaboost二分類模型代價矩陣

表5 各算法的查準率、查全率、F1值對比情況
從各類別的F1值上來看,CA-SF與四個經典多分類模型比較有三個最大值,其余兩個也與最大值差異較小,這說明本文模型相比于傳統分類模型在不平衡數據集上的分類效果更好,有著更強的穩定性。同時,無論是常規模型還是本文所提出的模型在類型1、2、5 中表現相較于3、4 更好,說明在訓練過程中1、2、5 的特征表現更加突出,而3、4 的特征表現不太突出,數據集可能存在高類重疊率。在其中表現最不好的模型是SVM,在第二個類別中有著最高召回率,但是卻擁有最低精確率,這樣的結果對于最終的分類來說缺乏說服力。
圖2~圖4 反映出CA-SF 模型的最大值數量在查準率、查全率和F 值均高于其他算法,因此在社會救助精準識別問題上CA-SF 模型是表現最優異的,它可以有效地減少不平衡性對分類的影響。此外,進一步計算出SVM、ANN、RF、SF、LightGBM 和CA-SF 各模型的總體準確率值,分別為0.8280、0.8299、0.8385、0.8255、0.8391、0.8617,以及F1值的方 差,分 別 為0.0968、0.0540、0.0317、0.0320、0.0301、0.0206。由此也可說明,在不平衡的多分類問題中,本文所提出模型具有更好的有效性和穩定性。

圖2 各算法查準率對比圖

圖3 各算法查全率對比圖

圖4 各算法F1值對比圖
CA-SF 模型在第一層分類中將不平衡部分單獨進行處理,充分抓住了問題的根節點,盡可能減少不平衡性對多分類效果帶來的干擾,使最終分類更具有效性,并第二層中的Softmax 回歸對數量均衡的多分類問題有著很好的分類能力。將CA-SF模型與帶有樣本權重機制的LightGBM 模型的F1比較顯示CA-SF 模型也具有更明顯的優勢,據此可以推測將不平衡性的問題放在二分類中解決比直接對多分類問題進行“一刀切”式解決更加有效。
在社會救助精準識別業務數據集上,當救助對象的類型劃分為比較少見的特困類型和支出型困難類型或者劃分為比較多見的低保、低收入、重殘無業類時,Softmax 回歸對數據集進行分類,可以使得整體多分類達到很好的效果,會降低數量不均衡導致的訓練器偏好性影響。由此可見,CA-SF模型可以更好地去處理救助對象的精準識別問題,為社會救助的困難識別提供一個可行的方案,推進了社會救助的信息化建設,同時推動了民政事業在數字經濟中的發展。
針對救助業務數據集的各類別的極度不平衡性,根據CA-SF 模型來對這個數據集進行分類分析,并以上海市社會救助數據為實證進行驗證,結果表明該方法效果明顯。由于數據的隱私性,本研究內容中的家庭救助指標選擇和分類標簽僅針對上海市政策指向,但方法模型普遍適用于不平衡多分類問題的研究。本研究成果對于民政局準確判斷被救助人員的救助類型有著重要的參考意義。該模型能在訓練過程中有效利用錯誤率和代價因子來區分少數類和多數類,保證了樣本的最佳可分離性。模型的立足點在于樣本數據的多個特征均被運用于優化分類任務結果,對救助類別進行分類分析。通過實驗表明該算法對不平衡多分類問題的處理有著明顯的效果。
社會救助類型的預測準確率存在提升空間。一方面本文對救助類別的研究中只考慮了家庭經濟中的現金流和貨幣資產的影響,實際上影響困難判定的經濟因素是多種多樣的,如家庭擁有的固定資產和醫療保險支出等綜合因素;另一方面,本文是從數據的不平衡性出發,實際上不平衡數據通常具有類重疊性,這個特點對預測精度具有一定的影響。后續筆者另行撰文將進一步研究增加這些因素以及優化算法降低類重疊率的預測分析。