陳湘州 劉佳
摘?要:當前債券違約事件屢見不鮮且愈演愈烈,鑒于此,該文提出了基于機器學習的債券信用等級評估模型,以在交易所市場發行債券的主體為研究對象,首先通過極端梯度提升(eXtreme?Gradient?Boosting)預測出債券發行主體是否會違約以及違約的概率,再使用主成分分析(Principal?Component?Analysis)對高維數據進行降維,最后運用K-means算法將債券樣本劃分為9類。檢驗發現,該模型的評估結果能夠真實地反映債券違約情況,對幫助投資者識別違約風險具有一定的借鑒意義。
關鍵詞:信用評級;極端梯度提升;主成分分析;K-means
中圖分類號:F23?????文獻標識碼:A??????doi:10.19311/j.cnki.16723198.2024.10.049
0?引言
對于債券評級的研究主要分為以下兩類:第一類是指標遴選的研究。遲國泰等(2016)對指標進行偏相關分析和Probit回歸分析,刪除信息冗余的指標,最后對留下指標進行Probit回歸分析,判別企業的違約狀態。李戰江等(2016)使用逼近理想點賦權模型確定指標權重后,再運用ward聚類對樣本進行分類。周穎(2021)運用信息增益和相關分析方法篩選出指標后建立信用評級體系。第二類是評級方法的研究。吳建華等(2021)建立了動態評價信用質量的貝葉斯模型進行信用評級。張東玲和高齊圣(2010)基于有序Logitic回歸建立了企業質量信用等級評價模型。
現有的債券信用評價等級指標繁多,不僅增加了數據的儲存空間,減緩了算法的運算速度。鑒于此,該文引入了主成分分析法對樣本特征進行降維,再結合極端梯度提升和K-means機器學習算法進行債券信用等級評估。
1?債券信用等級評估模型構建
該文以Python軟件為建模的載體,運用多種機器學習方法展開債券信用等級評估工作。在債券樣本數據集中,有M個樣本{X1,X2,…,XM},每個樣本包含N個特征Xi=[xi1,xi2,…,xiN]T和標簽(yi,yi=0,1)兩個部分,正常樣本的標簽是0,債券違約樣本的標簽是1。該信用評級模型的步驟主要如下:
第一步:進行數據預處理。采用歸一化方法處理數據量綱不同的問題,公式為:
x′=x-min(x)max(x)-min(x)(1)
第二步:利用XGBoost預測每個債券樣本是否違約以及違約的概率。極端梯度提升屬于集成算法中的提升法,在眾多研究領域中被廣泛使用,其公式為:
y^i(0)=0y^i(1)=y^i(0)+f1(Xi)y^i(2)=y^i(1)+f2(Xi)...y^i(t)=y^i(t-1)+ft(Xi)(2)
其中ft(Xi)為每次增加的決策樹,y^i(t)為第t輪模型的預測值,而每次選取樹的標準是為了降低損失函數,XGBoost的目標函數(損失函數)如下:
Obj(t)=∑ni=1l(yi,y^i(t-1)+ft(xi))+Ω(ft)+C(3)
式(3)中l(·)為損失函數,經過泰勒展開上述公式并加入懲罰函數得到:
Obj(t)=∑ni=1[γΤ+Gjωj+12(Hj+λ)ωj2](4)
式(4)中γ和λ為對葉子節點的懲罰力度,T為葉子節點的個數,Gj為對損失函數一階偏導的值,ωj為最終葉子節點的值,Hj為對損失函數二階偏導的值。
第三步:利用PCA對債券高維特征降維。PCA是通過對投影距離方差的運用,將降維問題轉換為求最值的問題,主要步驟如下:
(1)對所有特征進行中心化處理,即對每一個特征求平均值,公式如下:
X1=1M∑Mi=1xi1X2=1M∑Mi=1xi2…XN=1M∑Mi=1xiN(5)
式(5)中中X1是特征X1的平均值,xiN代表第i個樣本的第N個特征,M代表樣本的個數。
(2)求協方差矩陣,其計算公式如下:
C=cov(X1,X1)cov(X1,X2)cov(X2,X1)cov(X2,X2)(6)
式(6)中cov(X1,X1)代表X1的方差,cov(X1,X2)代表X1和X2的協方差,公式如下:
cov(X1,X1)=∑Mi=1(xi1-x1)(xi1-x1)M-1(7)
(3)計算協方差矩陣對應的特征值λ和特征向量u,使得Cu=λu。
(4)將原始特征投影到選取的特征向量上,得到p維特征,從而達到了降維的目的,公式如下:
si1si2…sip=u1T*(xi1,xi2,…,xiN)Tu2T*(xi1,xi2,…,xiN)T…upT*(xi1,xi2,…,xiN)T(8)
式(8)中si1,si2,…,sikT是投影后新的特征,由之前的N維特征降低到p維。
第四步:將降維后的新特征用于K-means分析,數據集被劃分為九個簇,計算每一簇違約概率。
K-means屬于聚類算法,將具有相似特征的樣本歸為一類,其具體流程如下:
(1)隨機地選取k個數據作為簇的質心,C=C1,C2,…,Ck。
(2)計算每個樣本點到每個質心的距離,將樣本分配到距離其最近的簇,通常使用歐氏距離度量。
dis=∑pt=1(xit-cjt)2,1≤i≤m,1≤j≤k(9)
式(9)中xit表示第i個樣本的第t個特征,cjt表示第j個質心的第t個特征,通過計算距離后得到k個簇R1,R2,…,RK。
(3)對于每個簇Cj,重新計算每個簇的質心。
Cj=1aj∑x∈Cjx(10)
式(10)中aj表示Cj中數據點個數。
(4)重復步驟(2)和(3),直到每個樣本不再發生變動,算法完成收斂。
2?樣本和特征指標的選擇
2.1?樣本的選擇
該文以在中國證券市場公開發行債券的公司為研究對象,選取2014年1月—2022年3月發生信用債違約的公司作為債券違約主體,違約當年記作t年,采用t-1年的數據作為違約主體的樣本數據集,正常債券樣本選取交易所市場存量債券公司。將缺失值較多的樣本刪除,得到了1539個樣本,數據主要來源于wind數據庫。
2.2?指標的選取
在已有研究基礎上,該文選取了18個財務指標,考慮到特征的重要性與多樣性,因此,該文增加了非財務指標,綜上所選的指標如表1所示。
3?模型參數尋優與結果分析
3.1?XGBoost算法超參數尋優
為了保證XGBoost算法更準確地預測樣本是否違約以及違約的概率,該文將所有數據按80%:20%的比例劃分為訓練集與測試集。該文利用了學習曲線對各個超參數進行調整,以期尋找最佳值,XGBoost算法的超參數包括:生成樹的數目、學習率、隨機采樣的比例、樹的最大深度等;最后利用測試集對訓練好的模型進行檢驗。通過學習曲線尋找超參數最優值的過程如圖1所示。
a????????????b
c????????????d
圖1?超參數最佳值選取過程
極端梯度提升算法中每一棵樹都是相關的,每增加一棵決策樹便會學習一個新的函數,來擬合上個模型預測的殘差。圖1中縱坐標代表債券預測準確率,橫坐標代表各個超參數取值范圍,每個小圖都有兩條折現分別代表訓練集和測試集的預測準確率。從圖中可以看出決策樹棵數(決策數的數量)最佳值選擇90,學習率最佳值為0.20,子采樣最佳值為0.84,決策樹的最大深度(指決策數模型所允許的最大分支深度,即從根節點到葉子節點的最長距離)最佳值為5。
3.2?PCA與K-means超參數尋優
該文使用PCA對數據特征進行降維,PCA中一個重要的參數是n_components,指降維后的維度,累計可解釋性方差比例可以幫助選擇最佳值,其代表降維后特征所帶有原始數據集的信息比例。當保留5個特征時,獲取原數據的信息已經超過90%?,為了達到數據可視化的目的,該文將n_components保留到3,其可解釋性方差的貢獻率超過了80%,保留了原始數據的大量信息。
K-means算法主要應用于數據分類,但其屬于無監督學習,所以不知道樣本標簽,只能將相似的樣本歸為一類,非常適合于債券信用等級評估,而劃分為k個類簇,是需要著重考慮的問題,該文借助輪廓系數和inertia系數來選擇k值。對于選擇的k值,其輪廓系數越大越好,inertia系數越小越好,但這不是絕對衡量指標,還需要結合實際情況確定最佳的k值。該文根據市場債券信用等級AAA、AA、A、BBB、BB、B、CCC、CC、C的實際分布情況選擇k=9,其inertia系數為22相對較低,且輪廓系數為0.61相對偏高,具有很好的分類效果,最后通過K-means算法將樣本分別劃分為9類。
3.3?實驗結果分析
實驗結果為:預測為AAA等級一類的有359個樣本,其中沒有違約債券主體,且違約概率均值最低為0.25%;AA和A等級的違約概率均值不到1%,都只存在一個違約債券主體;BBB?和BB等級的違約概率較低,處于1%~2%之間;但B等級的違約概率呈現指數式暴增,高達52.17%,分類結果也證明了該等級的違約比例較高為64.29%,28個樣本中有18個違約主體;CCC等級違約概率逐步增加為61.70%,50個樣本中存在35個違約主體;CC等級全部為違約樣本;?C等級違約概率均值最高為96.09%,84個樣本中存在82個違約主體,其違約比例高達97.62%。
從Wind數據庫收集資料,統計了實際違約樣本的債信等級分布情況,聚類分析中違約樣本共150個,其中A等級及以上違約的債券發行主體共56個,占違約總數的37.30%,BBB、BB、B等級違約的共33個,占違約總數的22%,CCC?、CC、C等級違約的共51個,占違約總數的34%,通過統計分析發現A等級及以上的違約樣本最多,不符合債信等級越高違約概率越低的原則,揭示了債券信用評級虛高的現象。而通過模型分類后的樣本,其債信評級更具有真實性與客觀性,A等級及以上違約的樣本共2個,其中AAA等級中不存在違約樣本,而大部分的違約樣本被分類為B、CCC、CC、C等級,與現實生活中實際違約債券發行主體的信用等級相比較,該債券信用等級評估模型具有良好的分類效果。
4?債券信用等級評估模型檢驗
為了檢驗債券信用等級評估模型的有效性,該文從Wind數據庫收集了2022年4月至2022年9月債券違約發行主體的數據信息,考慮到數據可得性,僅收集了交易所市場的11個違約樣本,并用相同的債券信用評級方法進行預測分類,現實情況為:11個違約樣本中有8個債券發行主體違約前的評級在A等級及以上,其中3個擁有最高債券信用評級AAA等級,再次證實了現有債券信用評級存在虛高的事實。而通過模型評估后,這11個違約樣本中有8個被分類為最低債券信用評級C等級,3個被分類為CCC等級,證明該債券信用等級評估模型能夠客觀準確地進行評級,幫助投資者排除潛在的違約風險。
5?結論
人工智能技術的發展為債券信用評級研究提供了更高效的技術支持,在債券違約事件頻繁爆發的經濟背景下,該文對中國交易所市場2014年1月—2022年3月發生違約的公司進行研究,并以2022年4月—2022年9月的樣本數據進行檢驗,實驗結果表明該模型具有良好的分類效果。該文的主要特色為:
(1)使用PCA對高維特征降維,降維后的特征保留了原有數據80%以上的信息,既消除了數據噪音,又加快了算法運算速度,避免誤刪對債券違約預測結果有重大貢獻的指標。
(2)將?XGBoost預測債券發行主體違約概率作為信用評級標準,滿足了違約概率越高,則債券信用等級越低的規律,有效地劃分了債券樣本信用等級。
(3)運用K-means等機器學習方法進行債券信用等級評估是符合大環境下人工智能崛起背景的,為債券違約研究領域貢獻了一種新的方法。
參考文獻
[1]遲國泰,張亞京,石寶峰,等.基于Probit回歸的小企業債信評級模型及實證[J].管理科學學報,2016,19(06):136156.
[2]李戰江,句芳,修長柏,等.銀行信用風險小樣本評級模型的構建[J].統計與決策,2016,(09):3943.
[3]周穎.基于信息增益的小型工業企業信用評級模型[J].運籌與管理,2021,30(01):209216.
[4]吳建華,張穎,原雪梅,等.動態貝葉斯信用評級的宏觀經濟沖擊模型[J/OL].數理統計與管理:113[20221125].
[5]張東玲,高齊圣.企業質量信用等級評價研究:以青島市家電產業為例[J].系統管理學報,2010,19(01):8388.