印明昂, 王鈺爍, 孫志禮, 郭 兵
(東北大學 機械工程與自動化學院, 遼寧 沈陽 110819)
累積Logistic回歸又稱為有序多分類Logistic回歸、次序Logistic回歸[1],其具有模型變量少、分類效率高的特點.近年來,該方法在醫(yī)藥、金融及制造等領(lǐng)域得到了廣泛的應(yīng)用.文獻[2]選取2015年3月至2017年4月接受培非格司亭(Pegfilgrastim)聯(lián)合化療的166例癌癥案例,采用多變量有序Logistic回歸分析,確定符合Pegfilgrastim預(yù)防以維持相對劑量強度的預(yù)測因素.文獻[3]基于發(fā)動機健康變化的Logistic回歸模型,實現(xiàn)了貝葉斯狀態(tài)估計的健康狀態(tài)序列更新,進而預(yù)測引擎未來的健康變化.文獻[4]通過審查2003至2011年外來資本流入的綜合影響,檢驗了次序Logistic回歸模型應(yīng)用于基于柯布-道格拉斯生產(chǎn)函數(shù)的實證經(jīng)濟增長研究的可行性.
在應(yīng)用領(lǐng)域日益擴展,數(shù)據(jù)數(shù)量和維度不斷增大的現(xiàn)狀下,目前,累積Logistic回歸模型的參數(shù)估計通常采用統(tǒng)計學軟件SPSS或SAS的自帶功能實現(xiàn).本文基于Newton迭代法提出一種累積Logistic回歸模型的參數(shù)估計方法,對其中比較敏感的迭代初值選取及迭代過程Hessian矩陣奇異問題進行了自適應(yīng)控制,最后利用美國凱斯西儲大學軸承數(shù)據(jù)庫(CWRU)[5]數(shù)據(jù)對該算法模型與SPSS模型進行了對比驗證.
設(shè)(x,y)為有序J分類樣本,其中輸入觀測值x為nM矩陣,n代表容量,M代表維度;有序輸出觀測值y為n1列向量,其元素yi,i∈{1,2,,n},yi可取值為1,2,,J.則第i個輸入xi=[xi1,xi2,,xiM]的前j(j∈{1,2,,J})類累積Logistic表達式為[6]
(1)
其中:p(yi≤j|xi)為累積概率(簡記為pij),且有p(yi≤J|xi)=1;αj為截距,對于累積Logistic模型共有J-1個;βm為回歸系數(shù),所有分類的系數(shù)相同.由此可得
(2)
則該輸入屬于第j類的概率為
(3)
最后由概率最大者確定其所屬類別.不妨設(shè)Y為n×J矩陣,其元素yij為
(4)
則它的對數(shù)似然函數(shù)可表示為
(5)
由Newton迭代公式得到迭代格式:
bk+1=bk-H(bk)-1f(bk) .
(6)
(7)
(8)
H(bk)元素如下
pij-1(1-pij-1)];
(9)
(10)
(11)
其中,r,j=1,2,,J-1;s,m=1,2,,M.
Newton迭代法雖然具有平方收斂速度,但它對迭代初值非常敏感,如果選取不當往往會導致迭代發(fā)散.下面通過數(shù)學推導,給出一種初值的選取方法.
首先將數(shù)據(jù)歸一化,使所有輸入數(shù)據(jù)統(tǒng)一映射到[0,1]區(qū)間上[7],即
(12)
其中:xim表示輸入i第m列的數(shù)據(jù);xm為所有第m列數(shù)據(jù)組成的向量,i=1,2,,n,m=1,2,,M;min(·),max(·)分別表示向量中的最小、最大值.
(13)
(14)
-fd1≤β0i≤fd1,i=1,2,,M.
(15)
由式(14)可推出:
(16)
其中,c=ln(1/p1-1) -ln(1/p2-1).進而有
α10>>α(J-2)0>α(J-1)0.
(17)
式(14)~式(17)給出了b0的大致范圍.為進一步壓縮區(qū)間,提高選取成功率,將b0分為三部分:b0=[α0T,β01T,β02T]T,其中α0=[α10,,α(J-1)0]T,β01=[β10,,βk0]T,β02=[β(k+1)0,,βM0]T,k[1,J].將式(14)的第一和最后一式進行縮放:
(18)
(19)
其中fd2=M·fd1.設(shè)α0,β01已知,代入式(14)整理為關(guān)于β02的不等式組:
(21)
算法描述見算法1.
算法1 迭代初值的選取
輸入x,fd1,k.
2) 區(qū)間[-fd1,fd1]內(nèi)隨機生成β01;
3) 以式(19)計算區(qū)間,在該區(qū)間內(nèi)隨機生成α0;
4) 將α0降序處理,判斷式(16)是否成立.若是,轉(zhuǎn)步驟5);若否,轉(zhuǎn)步驟2);
5) 以式(15),式(20)為約束,判斷式(21)是否存在最優(yōu)解.若是,得到β02,結(jié)束;若否,轉(zhuǎn)步驟2).
輸出b0=[α0T,β01T,β02T]T.
通過此算法得到的b0即可作為Newton法的迭代初值.
雖然得到了較好的迭代初值,但是在迭代過程中可能會出現(xiàn)如下情況:
1)αk+1元素之間大小關(guān)系錯亂;
2)βk+1與βk之間差距過大.
這些問題會導致Hessian矩陣奇異,迭代失敗.通過分析,這些情況通常是由步長Δk=H-1(bk)·f(bk) =[Δαk; Δβk]過大造成.下面給出一種自適應(yīng)控制方法.
當出現(xiàn)情況1)時,利用下式減小步長:
bk+1=bk-w·Δk.
(22)
其中,w為調(diào)整系數(shù),初值為1,一旦常系數(shù)在k+1次迭代不滿足次序條件時便將w賦值為w/2,重新計算bk+1.
為防止情況2)的出現(xiàn),需重點控制Δβk+1元素之間的差距.設(shè)置閾值td,令u=max(|Δβk+1|).若u大于閾值td,則需要對其進行約束:
(23)
其中:放大系數(shù)fd3推薦為1.2~1.5;閾值td為1~2.
算法描述見算法2.
算法2 迭代過程的控制
輸入b0,fd3,td,收斂閾值ε.
1) 初始化參數(shù)k=0,w=1;
2) 利用迭代格式(6)計算bk+1;
3) 判斷αk+1元素間大小關(guān)系是否正確.若是,轉(zhuǎn)步驟4);若否,w=w/2,通過式(22)調(diào)整,轉(zhuǎn)步驟3);
4) 判斷u=max(|Δβk+1|)是否在閾值td之內(nèi).若是,轉(zhuǎn)步驟5);若否,通過式(23)調(diào)整,轉(zhuǎn)步驟3);
輸出bk+1.
算法2中的“=”為賦值符號.由于算法1已保證了α0的順序,因此只要w調(diào)整適當,總會保持αk的大小關(guān)系不變.
文獻[9]通過非線性時間序列Logistic模型,驗證了檢測滾動軸承非線性突變信號的敏感性和有效性,因此本文也以軸承健康狀態(tài)評估為例.選取美國凱斯西儲大學軸承數(shù)據(jù)庫[5]中采樣頻率為12 kHz,負載為0,正常狀態(tài)和滾動體故障(通過電火花加工設(shè)置故障,火花點直徑為0.177 8,0.355 6,0.533 4 mm,分別模擬輕微磨損、一般磨損及嚴重磨損)的振動信號數(shù)據(jù)為原始數(shù)據(jù),其中響應(yīng)類別1,2,3,4分別表示正常狀態(tài)、輕微磨損、一般磨損和嚴重磨損,模型建立過程如下.
首先,根據(jù)文獻[10],提取振動信號中的30個特征,得到相應(yīng)特征值,再利用逐步模型選擇法,以Wald統(tǒng)計量為指標從中逐步篩選出8個主要特征:FC,F(xiàn)2,F(xiàn)5,F(xiàn)6,F(xiàn)7,F(xiàn)8,F(xiàn)9,F(xiàn)12;然后,利用文獻[11]所述剔除離群點方法,從所有606組數(shù)據(jù)中篩選出有效數(shù)據(jù)597組;最后,通過本文方法和SPSS軟件分別建立累積Logistic模型,所得回歸系數(shù)如表1所示.
表1 不同模型的回歸系數(shù)
根據(jù)回歸結(jié)果,兩種方法所得各系數(shù)在組內(nèi)所占權(quán)重大致相同,且各自變量系數(shù)的正負符號相同,說明兩種方法對于當前數(shù)據(jù)具有相同的解釋性.模型評價指標數(shù)值結(jié)果見表2.
表2 不同模型的評價指標
表2中除赤池信息量AIC外,其余指標的數(shù)值越大越能證明模型的優(yōu)勢.可以看出,本文方法在各項指標上都更加突出,證明了該方法的有效性.為進一步驗證穩(wěn)健性,分別利用兩種方法進行200次Booststrap隨機試驗.每次試驗在正常、輕微磨損、一般磨損及嚴重磨損這4種類別中,分別隨機選取25組共100組數(shù)據(jù)作為驗證樣本,其余作為訓練樣本.將試驗結(jié)果制成柱狀分布圖.兩方法的訓練準確率及驗證準確率如圖1~圖4所示.
由圖1~圖4可知,兩種方法訓練準確率和驗證準確率的分布都大致符合正態(tài)分布;通過對比可以直觀看出,本文方法無論訓練準確率還是驗證準確率,都處于更高水平,表明該方法具有較強的穩(wěn)健性.
1) 通過自適應(yīng)地選取迭代初值和控制迭代過程,避免了Hessian矩陣奇異的情況,使Newton迭代法能夠有效地進行累積Logistic模型的參數(shù)估計.
2) 與SPSS累積Logistic回歸模型數(shù)值結(jié)果對比,本文方法在各項模型評價指標上具有更高的水平,驗證了該方法的有效性.
3) 基于200次的Booststrap隨機試驗對比,表明本文方法對于數(shù)據(jù)的依賴性較小,具有較強的穩(wěn)健性.