6類紅斑鱗狀皮膚病的診斷一直是皮膚科的難題。皮膚病數據是名詞性定性數據,采用定量數據處理方法是不太適合的。本文提出了組套索罰多值回歸分類器新方法用于名詞性數據的特征選擇和分類,并應用于紅斑鱗狀皮膚病診斷。首先將前33維名詞性數據進行虛擬編碼,將第34維年齡數據離散化后進行虛擬編碼;將得到的虛擬編碼數據按照類別分組和變量分組,并送入組套索罰多值回歸分類器,通過10折交叉驗證,分類正確率達到了98.88%±0.0023%。 與其他文獻方法相比,本文方法簡單,分類效果好且效率高,可解釋性強,穩定性強。
引用本文: 王金甲, 薛芳. 組套索罰分類器用于名詞性數據的疾病診斷. 生物醫學工程學雜志, 2015, 32(5): 965-969. doi: 10.7507/1001-5515.20150172 復制
引言
在生物醫學數據的分類研究中,采用適當的機器學習方法建立疾病診斷模型是一項重要的課題。很多生物醫學數據都包含名詞性定性數據,而大部分的機器學習方法都是基于定量數據的,即使分類正確率很高,但機器學習方法可解釋性較差的特點使其在實際醫療診斷中的應用受到了限制。例如一個紅斑鱗狀皮膚病患者可以用34個變量的數據來表示,其中第1~33維變量都是名詞性定性數據,包括11個臨床醫學特征和22個病理組織學特征,只有第34維年齡特征是整型定量數據。紅斑鱗狀皮膚病是牛皮癬、脂溢性皮炎、扁平苔癬、玫瑰糠疹、克羅尼克皮炎和毛發紅糠疹的統稱,這6類皮膚科疾病在臨床和病理組織學的數據中都表現出相似的特征,因此其診斷一直是皮膚科的難題,而且在發病初期一種疾病可能會表現出其他疾病的特征而不表現出其獨有的特征,這使得診斷過程更為困難。國內外眾多學者對此進行了深入研究,提出了適用于該問題的方法并取得了顯著的成績,文獻[1]采用關聯規則特征選擇和神經網絡分類方法,正確率為98.61%;文獻[2]提出了改進的F得分特征選擇和支持向量機分類方法,正確率為98.61%;文獻[3]提出了旋轉森林集成算法的魯棒性多類特征選擇策略,多種常用分類器的平均正確率為98.91%;文獻[4]采用基于關聯規則的粒子群優化和支持向量機結合的方法,正確率為98.91%;文獻[5]采用遺傳算法和貝葉斯網絡分類器封裝式結合方法,正確率為99.20%。提高診斷正確率的關鍵在于選擇恰當的特征來表征疾病,文獻[1-5]重點放在了特征選擇方面,但是沒有考慮名詞性數據的特點。而名詞性數據的取值僅表示患者是否出現該屬性或表現出的程度,不具有數值上的意義,直接進行數值計算并不科學。因此基于名詞性數據和特征選擇問題,本文提出了組套索罰多值回歸分類器新方法用于名詞性數據的特征選擇和分類,并將其應用于紅斑鱗狀皮膚病診斷。
套索(lasso)罰分類器是高維數據特征選擇和分類的新方法。它是一種廣義線性模型,可以處理二值名詞性數據,具有簡單、可解釋性強的特點。患者屬于某一種皮膚病類別的概率值由患者數據特征的線性組合計算得到。套索罰的作用是使某些對分類不重要的特征的線性組合系數收縮至零,因此實現了特征選擇。由于皮膚病是多類多特征問題,皮膚病數據是多值名詞性數據,因此本文將套索罰分類器推廣為組套索罰分類器,并將文獻[6]的類別分組推廣到類別結合多值名詞性數據的分組。組套索罰的結果是一組特征的系數要么全部為零,要么全部不為零。如果一組特征系數為零也就意味著這組變量沒有被選擇。本文首先將皮膚病數據的第1~34維變量進行虛擬編碼,得到133維二值特征;其次將133維特征分為34組;最后將數據送入組套索罰分類器。本文的目的是為名詞性數據處理提供一種新方法,并為組套索罰分類器提供一種分組策略,以期推廣到相似問題的研究中。
1 名詞性變量虛擬編碼
紅斑鱗狀皮膚病患者的數據特征從屬性上可以分為名詞性的(定性的)和數值性的(定量的)[7]。一般名詞性變量不適合直接進行數學運算,對類似的生物醫學數據處理要注意這一點。針對這一問題,我們采用了虛擬編碼。虛擬編碼實際上是采用類似編碼的方法將名詞性變量升維,避免原始取值之間直接進行計算,其原理描述如下:
假設名詞性變量f的取值有L種,不妨設取值集合為{u∈Z:1≤u≤L},虛擬編碼是將f的每一個取值u映射為一個矢量變量x∈RL,其中第u維賦值為1,其余維度賦值為0。例如取值為1、2、3、4的特征,虛擬編碼過程相當于映射f(·),將每一維變量都轉換為矢量變量:f(4)=(0,0,0,1); f(3)=(0,0,1,0);f(2)=(0,1,0,0,);f(1)=(1,0,0,0)。這樣,包含N個樣本的某一名詞性變量F,在虛擬編碼后對應的是N×L維的矩陣X,其中第n行的第Fn(n=1,2,…,L)列為1,其余均為0。
定量的年齡特征虛擬編碼方案如表 1所示。

虛擬編碼避免了名詞性變量直接參與數值計算的問題,但使得特征維數升高且變得稀疏,因此恰當的特征選擇方法尤為重要。而組套索罰分類器方法是高維數據特征選擇和分類的有效方法。
2 組套索罰分類器
2.1 多值logistic回歸分類模型
定義g表示響應變量,g∈{1,2,…,M},M是類別數。定義矩陣Y,yi,m是矩陣Y中的元素,。預測變量X,有N對觀測(xi,gi),可以視為N個相互獨立的觀測值,其中xi=(xi1,xi2,…,xip)。
建立多值logistic回歸模型,模型第i個樣本屬于第m類的概率為
$ P\left( {{g_i} = m|{x_i}} \right) = \frac{{\exp \left( {{\eta _{i,m}}} \right)}}{{\sum\limits_{l = 1}^M {\exp \left( {{\eta _{i,l}}} \right)} }}\;\;m = 1,\cdots ,M $ |
其中,ηi,m=xiβ·m,β是系數矩陣,β·m是β的第m列,βk·表示β的第k行,X的表示方法相似。注意到:,并且,對于所有的i,有。
選擇g=M作為參照組,可以得到M-1個logistic模型:
$ \ln \frac{{P\left( {{g_i} = m|{x_i}} \right)}}{{P\left( {{g_i} = M|{x_i}} \right)}} = {\eta _{i,m}}\;\;\;\;m = 1,\cdots ,M - 1 $ |
這里有ηi,M=0。
用極大似然估計擬合上述模型,似然函數為N個邊緣概率的乘積,為便于計算取對數似然函數,即:,其中條件概率組成了矩陣P。
現在的問題是求出最有可能擬合現有觀測樣本集合的回歸模型,也就是使上述似然函數取值最大的參數估計。
2.2 組套索罰分類器
以線性回歸模型為例,假設預測變量X∈RN×p,響應變量Y∈RN×p,線性回歸模型為E(Y|X=x)=xTβ,有N對觀測值(xi,yi) ,且xij是標準化的,則線性回歸模型的組套索問題可以描述如下,這里是對β的第k行即βk·進行組罰,表示對與同一特征相關的參數為一組進行組罰。可見,組套索方法是在最小二乘估計的基礎上加入了組套索罰函數,是對預測變量的有偏估計。
仿照組套索罰線性回歸,在對數似然函數上加入組套索罰,組套索罰分類器模型描述為
$ \min \left\{ { - L\left( \beta \right)\lambda \sum\limits_{k = 1}^p {{{\left\| {{\beta _k} \cdot } \right\|}_2}} } \right\} = \min \left\{ { - \sum\limits_{i = 1}^N {\left[{\sum\limits_{m = 1}^M {{y_{i,m}}{\eta _{i,m}} - \log \left( {\sum\limits_{i = 1}^M {\exp \left( {{\eta _{i,l}}} \right)} } \right)} } \right]} + \lambda \sum\limits_{k = 1}^p {{{\left\| {{\beta _k} \cdot } \right\|}_2}} } \right\} $ |
因此對數似然函數L(β)在點對
$ \begin{array}{l} - L\left( \beta \right) \le - L\left( {\bar \beta } \right) - {\rm{trace}}\left[{{{\left( {\beta - \bar \beta } \right)}^T}{X^T}\left( {Y - P} \right)} \right] + \\ \frac{1}{2}{\rm{trace}}\left[{\sum\limits_{i = 1}^N {{{\left( {\beta - \bar \beta } \right)}^T}X_i^T.{X_i}\left( {\beta - \bar \beta } \right)} } \right] \end{array} $ |
其中t為海森矩陣的控制參數,上式可以轉換為完全平方形式:
$ \begin{array}{l} \mathop {\min }\limits_\beta \frac{1}{2}\left\| {X\left( {\left( {\beta - \bar \beta } \right) - \left( {Y - P} \right)/t} \right)} \right\|_F^2 + \lambda /t\sum\limits_{k = 1}^p {{{\left\| {{\beta _k}.} \right\|}_2} + } \\ C\left( {\bar \beta } \right), \end{array} $ |
其中是常數項,。
2.3 塊坐標下降法
坐標下降法[9]的前提條件是多個預測變量之間互不相關,這樣才能將多變量的問題理解為多個單變量問題的組合。算法基本思想是每次只優化一維變量,這樣,優化問題可以很快完成,且相關方程可以在變量循環中更新;而通常情況下,極小化的變量在眾多參數中不隨循環而改變,因此整個迭代過程將很快完成。而塊坐標下降法是為適應組套索問題,對坐標下降法的一個擴展,其基本思想與坐標下降法相同。
對式(5)的問題,因為組套索罰中的βk·即β的第k行,表示同一特征對應的變量為一組。所以,將β的每一行視為一組變量,針對當前組βk·,其他組視為常數。因為C()為常數項,對βk·求導為零,所以在求導時可省略該常數項。式(5)對βk·求導得:
$ {\beta _k}. = \frac{1}{{\left\| {X{._k}} \right\|_2^2}}{\left( {1 - \frac{{\lambda /t}}{{{{\left\| {X_{.k}^T{R_{ - k}}} \right\|}_2}}}} \right)_ + }X_.^T{R_{ - k}} $ |
這里需要注意的是,組套索罰使得系數解組間稀疏,組內不稀疏,即βk·中的元素要么全為零,要么全不為零。所以,當滿足時,有βk·=0。通過更新β的估計,使目標函數達到最小值。
最終,組套索罰分類器參數計算的具體算法步驟如下:
(1)初始化β=β0。
(2)迭代直至收斂:
①更新η,η=Xβ
②更新P,
③令
④迭代直至收斂:k=1,…,p,1,…,p,…
(a)更新
(b)如果否則,
$ {\beta _k}. = \frac{1}{{\left\| {X{._k}} \right\|_2^2}}{\left( {1 - \frac{{\lambda /t}}{{{{\left\| {X_{.k}^T{R_{ - k}}} \right\|}_2}}}} \right)_ + }X_.^T{R_{ - k}} $ |
(c)更新R:R=R-k-X·kβk·
3 實驗數據與結果分析
紅斑鱗狀皮膚病數據來自于UCI數據庫,該組數據共采集了366名紅斑鱗狀皮膚病患者的12項臨床醫學特征和22項病理組織學特征。這些患者分別患有牛皮癬、脂溢性皮炎、扁平苔癬、玫瑰糠疹、克羅尼克皮炎和毛發紅糠疹。所有特征中只有第34維年齡特征是數值性的,取值為整數。第1~33維特征都是名詞性變量,取值為0、1、2、3。其中0表示該特征不存在,3表示可能的最大程度,1和2表示相對的中間值。其中第11維特征是家族病史,取值為0或1,第13維特征取值為0、1或2。
在疾病診斷中,常用的性能評價指標主要有敏感度、特異度和正確率等。
我們采用組套索罰分類器進行學習和分類,首先將358個(全部366個樣本中有8個年齡數據缺失,實驗中將其刪去)樣本隨機分為10份,其中1份作為測試集,其余作為訓練集,并輪換10次。利用訓練集數據訓練特征選擇和分類模型,得到參數估計,用測試集數據進行測試,對應10個錯誤率的均值作為一次10折交叉驗證的結果。實驗中,我們重復100次交叉驗證并計算錯誤率的均值和標準差以提高結果的統計意義。
實驗中對比了三種情況下的分類效果:實驗A采用歸一化的原始數據,共34維,每一維特征對應的6類類別參數即βk·(向量形式)視為一組;實驗B對年齡數據做歸一化處理,名詞性變量進行虛擬編碼,并將編碼后的130維變量視為130維特征,每一維特征對應的6類類別參數即βk·(向量形式)視為一組;實驗C對全部34維特征統一進行虛擬編碼,得到133維變量,并將每一維原始特征編碼后對應的多維變量視為一組,每一組變量對應的6類類別參數β(j)(矩陣形式) 視為一組,j=1,…,J ,此時,β=(β(1),…,β(j),…,β(J)),β(1)∈Rp1×K,…,β(J)∈Rpj×K,p1+p2+…+pJ=p。
由組套索罰的性質可知,C組實驗的處理方式使模型傾向于選擇那些在所有取值上都對分類有貢獻的組,對于同一原始特征編碼后對應的一組變量要么同時被選擇,要么同時被舍棄;而B組實驗的處理方式使模型將不同取值的名詞性變量視為單獨的特征,在選擇過程中,不要求同時選擇或丟棄。
由表 2結果可以看出,一方面,各組實驗均取得了較高的正確率,并與相關文獻所得結果相當,這說明組套索罰分類器方法適用于紅斑鱗狀皮膚病的分類診斷問題;另一方面,C組的正確率高于A組,說明虛擬編碼是處理名詞性變量的有效方法,提高了計算合理性,能夠顯著降低分類錯誤率;另外,B、C兩組結果相比,說明組套索方法的變量和類別分組策略優于僅僅類別分組策略。

最優組套索罰分類器的參數如下:正則化參數 最大值為44.738 9對應全部變量都不選擇,λ最小值為0.004 5對應選擇全部變量,λ共100個值,最優分類結果的λ取值為0.323 1,全部非零系數為129。
組套索罰分類器分類結果的混淆矩陣如表 3所示。可見,對于所有358個樣本,最好的組套索罰分類器只對4個樣本出現了分類錯誤,且集中在脂溢性皮炎和玫瑰糠疹兩種疾病的分辨中。而實際上,玫瑰糠疹是一種自限性炎癥性皮膚病,多見于青少年,春秋季節易發,一般4~8周可自行痊愈,只有少數患者病情遷延難愈;脂溢性皮炎是在皮脂溢出較多部位發生的慢性炎癥性皮膚病。對這兩種疾病的診斷有望通過更多先驗知識來實現。

組套索罰分類器的性能評價指標如表 4所示。可見,組套索罰分類器法對4種疾病的敏感度達到了100%,對6種疾病的敏感度均達到了95.5%以上,特異度均達到了99%以上。

最后將本文結果和其他文獻的結果進行了比較,如表 5所示。

表 5中正確率都是在同一數據集上得到的。本文方法步驟簡單、收斂速度快、分類效果好且模型可解釋性強,總體上優于其他方法。本文方法模型訓練時間短,平均分類正確率為98.88%,僅次于文獻[5]的99.20%,但文獻[5]采用遺傳算法和貝葉斯網絡分類器封裝式結合方法,運行時間大大高于本文方法。
4 結論
針對生物醫學數據中名詞性數據的特征選擇和分類問題,本文首先采用虛擬編碼方案將數據變為二值數據,然后提出了組套索罰分類器模型用于高維二值數據的特征選擇和分類,并將其應用于紅斑鱗狀皮膚病的分類診斷問題,正確率高達98.88%。本文方法的創新之處在于考慮了皮膚病數據的屬性問題,并將組套索罰分類方法推廣為適用于虛擬編碼特征的形式,突破了傳統方法不區分變量屬性而直接進行數值計算的不合理性。實驗結果證明虛擬編碼結合組套索罰分類器方法是一種處理名詞性變量的有效途徑,可以為相似的研究工作提供參考。另外,本文采用的類別結合名詞性數據分組策略導致系數是一個矩陣,可進一步研究矩陣核范數罰分類器方法。
引言
在生物醫學數據的分類研究中,采用適當的機器學習方法建立疾病診斷模型是一項重要的課題。很多生物醫學數據都包含名詞性定性數據,而大部分的機器學習方法都是基于定量數據的,即使分類正確率很高,但機器學習方法可解釋性較差的特點使其在實際醫療診斷中的應用受到了限制。例如一個紅斑鱗狀皮膚病患者可以用34個變量的數據來表示,其中第1~33維變量都是名詞性定性數據,包括11個臨床醫學特征和22個病理組織學特征,只有第34維年齡特征是整型定量數據。紅斑鱗狀皮膚病是牛皮癬、脂溢性皮炎、扁平苔癬、玫瑰糠疹、克羅尼克皮炎和毛發紅糠疹的統稱,這6類皮膚科疾病在臨床和病理組織學的數據中都表現出相似的特征,因此其診斷一直是皮膚科的難題,而且在發病初期一種疾病可能會表現出其他疾病的特征而不表現出其獨有的特征,這使得診斷過程更為困難。國內外眾多學者對此進行了深入研究,提出了適用于該問題的方法并取得了顯著的成績,文獻[1]采用關聯規則特征選擇和神經網絡分類方法,正確率為98.61%;文獻[2]提出了改進的F得分特征選擇和支持向量機分類方法,正確率為98.61%;文獻[3]提出了旋轉森林集成算法的魯棒性多類特征選擇策略,多種常用分類器的平均正確率為98.91%;文獻[4]采用基于關聯規則的粒子群優化和支持向量機結合的方法,正確率為98.91%;文獻[5]采用遺傳算法和貝葉斯網絡分類器封裝式結合方法,正確率為99.20%。提高診斷正確率的關鍵在于選擇恰當的特征來表征疾病,文獻[1-5]重點放在了特征選擇方面,但是沒有考慮名詞性數據的特點。而名詞性數據的取值僅表示患者是否出現該屬性或表現出的程度,不具有數值上的意義,直接進行數值計算并不科學。因此基于名詞性數據和特征選擇問題,本文提出了組套索罰多值回歸分類器新方法用于名詞性數據的特征選擇和分類,并將其應用于紅斑鱗狀皮膚病診斷。
套索(lasso)罰分類器是高維數據特征選擇和分類的新方法。它是一種廣義線性模型,可以處理二值名詞性數據,具有簡單、可解釋性強的特點。患者屬于某一種皮膚病類別的概率值由患者數據特征的線性組合計算得到。套索罰的作用是使某些對分類不重要的特征的線性組合系數收縮至零,因此實現了特征選擇。由于皮膚病是多類多特征問題,皮膚病數據是多值名詞性數據,因此本文將套索罰分類器推廣為組套索罰分類器,并將文獻[6]的類別分組推廣到類別結合多值名詞性數據的分組。組套索罰的結果是一組特征的系數要么全部為零,要么全部不為零。如果一組特征系數為零也就意味著這組變量沒有被選擇。本文首先將皮膚病數據的第1~34維變量進行虛擬編碼,得到133維二值特征;其次將133維特征分為34組;最后將數據送入組套索罰分類器。本文的目的是為名詞性數據處理提供一種新方法,并為組套索罰分類器提供一種分組策略,以期推廣到相似問題的研究中。
1 名詞性變量虛擬編碼
紅斑鱗狀皮膚病患者的數據特征從屬性上可以分為名詞性的(定性的)和數值性的(定量的)[7]。一般名詞性變量不適合直接進行數學運算,對類似的生物醫學數據處理要注意這一點。針對這一問題,我們采用了虛擬編碼。虛擬編碼實際上是采用類似編碼的方法將名詞性變量升維,避免原始取值之間直接進行計算,其原理描述如下:
假設名詞性變量f的取值有L種,不妨設取值集合為{u∈Z:1≤u≤L},虛擬編碼是將f的每一個取值u映射為一個矢量變量x∈RL,其中第u維賦值為1,其余維度賦值為0。例如取值為1、2、3、4的特征,虛擬編碼過程相當于映射f(·),將每一維變量都轉換為矢量變量:f(4)=(0,0,0,1); f(3)=(0,0,1,0);f(2)=(0,1,0,0,);f(1)=(1,0,0,0)。這樣,包含N個樣本的某一名詞性變量F,在虛擬編碼后對應的是N×L維的矩陣X,其中第n行的第Fn(n=1,2,…,L)列為1,其余均為0。
定量的年齡特征虛擬編碼方案如表 1所示。

虛擬編碼避免了名詞性變量直接參與數值計算的問題,但使得特征維數升高且變得稀疏,因此恰當的特征選擇方法尤為重要。而組套索罰分類器方法是高維數據特征選擇和分類的有效方法。
2 組套索罰分類器
2.1 多值logistic回歸分類模型
定義g表示響應變量,g∈{1,2,…,M},M是類別數。定義矩陣Y,yi,m是矩陣Y中的元素,。預測變量X,有N對觀測(xi,gi),可以視為N個相互獨立的觀測值,其中xi=(xi1,xi2,…,xip)。
建立多值logistic回歸模型,模型第i個樣本屬于第m類的概率為
$ P\left( {{g_i} = m|{x_i}} \right) = \frac{{\exp \left( {{\eta _{i,m}}} \right)}}{{\sum\limits_{l = 1}^M {\exp \left( {{\eta _{i,l}}} \right)} }}\;\;m = 1,\cdots ,M $ |
其中,ηi,m=xiβ·m,β是系數矩陣,β·m是β的第m列,βk·表示β的第k行,X的表示方法相似。注意到:,并且,對于所有的i,有。
選擇g=M作為參照組,可以得到M-1個logistic模型:
$ \ln \frac{{P\left( {{g_i} = m|{x_i}} \right)}}{{P\left( {{g_i} = M|{x_i}} \right)}} = {\eta _{i,m}}\;\;\;\;m = 1,\cdots ,M - 1 $ |
這里有ηi,M=0。
用極大似然估計擬合上述模型,似然函數為N個邊緣概率的乘積,為便于計算取對數似然函數,即:,其中條件概率組成了矩陣P。
現在的問題是求出最有可能擬合現有觀測樣本集合的回歸模型,也就是使上述似然函數取值最大的參數估計。
2.2 組套索罰分類器
以線性回歸模型為例,假設預測變量X∈RN×p,響應變量Y∈RN×p,線性回歸模型為E(Y|X=x)=xTβ,有N對觀測值(xi,yi) ,且xij是標準化的,則線性回歸模型的組套索問題可以描述如下,這里是對β的第k行即βk·進行組罰,表示對與同一特征相關的參數為一組進行組罰。可見,組套索方法是在最小二乘估計的基礎上加入了組套索罰函數,是對預測變量的有偏估計。
仿照組套索罰線性回歸,在對數似然函數上加入組套索罰,組套索罰分類器模型描述為
$ \min \left\{ { - L\left( \beta \right)\lambda \sum\limits_{k = 1}^p {{{\left\| {{\beta _k} \cdot } \right\|}_2}} } \right\} = \min \left\{ { - \sum\limits_{i = 1}^N {\left[{\sum\limits_{m = 1}^M {{y_{i,m}}{\eta _{i,m}} - \log \left( {\sum\limits_{i = 1}^M {\exp \left( {{\eta _{i,l}}} \right)} } \right)} } \right]} + \lambda \sum\limits_{k = 1}^p {{{\left\| {{\beta _k} \cdot } \right\|}_2}} } \right\} $ |
因此對數似然函數L(β)在點對
$ \begin{array}{l} - L\left( \beta \right) \le - L\left( {\bar \beta } \right) - {\rm{trace}}\left[{{{\left( {\beta - \bar \beta } \right)}^T}{X^T}\left( {Y - P} \right)} \right] + \\ \frac{1}{2}{\rm{trace}}\left[{\sum\limits_{i = 1}^N {{{\left( {\beta - \bar \beta } \right)}^T}X_i^T.{X_i}\left( {\beta - \bar \beta } \right)} } \right] \end{array} $ |
其中t為海森矩陣的控制參數,上式可以轉換為完全平方形式:
$ \begin{array}{l} \mathop {\min }\limits_\beta \frac{1}{2}\left\| {X\left( {\left( {\beta - \bar \beta } \right) - \left( {Y - P} \right)/t} \right)} \right\|_F^2 + \lambda /t\sum\limits_{k = 1}^p {{{\left\| {{\beta _k}.} \right\|}_2} + } \\ C\left( {\bar \beta } \right), \end{array} $ |
其中是常數項,。
2.3 塊坐標下降法
坐標下降法[9]的前提條件是多個預測變量之間互不相關,這樣才能將多變量的問題理解為多個單變量問題的組合。算法基本思想是每次只優化一維變量,這樣,優化問題可以很快完成,且相關方程可以在變量循環中更新;而通常情況下,極小化的變量在眾多參數中不隨循環而改變,因此整個迭代過程將很快完成。而塊坐標下降法是為適應組套索問題,對坐標下降法的一個擴展,其基本思想與坐標下降法相同。
對式(5)的問題,因為組套索罰中的βk·即β的第k行,表示同一特征對應的變量為一組。所以,將β的每一行視為一組變量,針對當前組βk·,其他組視為常數。因為C()為常數項,對βk·求導為零,所以在求導時可省略該常數項。式(5)對βk·求導得:
$ {\beta _k}. = \frac{1}{{\left\| {X{._k}} \right\|_2^2}}{\left( {1 - \frac{{\lambda /t}}{{{{\left\| {X_{.k}^T{R_{ - k}}} \right\|}_2}}}} \right)_ + }X_.^T{R_{ - k}} $ |
這里需要注意的是,組套索罰使得系數解組間稀疏,組內不稀疏,即βk·中的元素要么全為零,要么全不為零。所以,當滿足時,有βk·=0。通過更新β的估計,使目標函數達到最小值。
最終,組套索罰分類器參數計算的具體算法步驟如下:
(1)初始化β=β0。
(2)迭代直至收斂:
①更新η,η=Xβ
②更新P,
③令
④迭代直至收斂:k=1,…,p,1,…,p,…
(a)更新
(b)如果否則,
$ {\beta _k}. = \frac{1}{{\left\| {X{._k}} \right\|_2^2}}{\left( {1 - \frac{{\lambda /t}}{{{{\left\| {X_{.k}^T{R_{ - k}}} \right\|}_2}}}} \right)_ + }X_.^T{R_{ - k}} $ |
(c)更新R:R=R-k-X·kβk·
3 實驗數據與結果分析
紅斑鱗狀皮膚病數據來自于UCI數據庫,該組數據共采集了366名紅斑鱗狀皮膚病患者的12項臨床醫學特征和22項病理組織學特征。這些患者分別患有牛皮癬、脂溢性皮炎、扁平苔癬、玫瑰糠疹、克羅尼克皮炎和毛發紅糠疹。所有特征中只有第34維年齡特征是數值性的,取值為整數。第1~33維特征都是名詞性變量,取值為0、1、2、3。其中0表示該特征不存在,3表示可能的最大程度,1和2表示相對的中間值。其中第11維特征是家族病史,取值為0或1,第13維特征取值為0、1或2。
在疾病診斷中,常用的性能評價指標主要有敏感度、特異度和正確率等。
我們采用組套索罰分類器進行學習和分類,首先將358個(全部366個樣本中有8個年齡數據缺失,實驗中將其刪去)樣本隨機分為10份,其中1份作為測試集,其余作為訓練集,并輪換10次。利用訓練集數據訓練特征選擇和分類模型,得到參數估計,用測試集數據進行測試,對應10個錯誤率的均值作為一次10折交叉驗證的結果。實驗中,我們重復100次交叉驗證并計算錯誤率的均值和標準差以提高結果的統計意義。
實驗中對比了三種情況下的分類效果:實驗A采用歸一化的原始數據,共34維,每一維特征對應的6類類別參數即βk·(向量形式)視為一組;實驗B對年齡數據做歸一化處理,名詞性變量進行虛擬編碼,并將編碼后的130維變量視為130維特征,每一維特征對應的6類類別參數即βk·(向量形式)視為一組;實驗C對全部34維特征統一進行虛擬編碼,得到133維變量,并將每一維原始特征編碼后對應的多維變量視為一組,每一組變量對應的6類類別參數β(j)(矩陣形式) 視為一組,j=1,…,J ,此時,β=(β(1),…,β(j),…,β(J)),β(1)∈Rp1×K,…,β(J)∈Rpj×K,p1+p2+…+pJ=p。
由組套索罰的性質可知,C組實驗的處理方式使模型傾向于選擇那些在所有取值上都對分類有貢獻的組,對于同一原始特征編碼后對應的一組變量要么同時被選擇,要么同時被舍棄;而B組實驗的處理方式使模型將不同取值的名詞性變量視為單獨的特征,在選擇過程中,不要求同時選擇或丟棄。
由表 2結果可以看出,一方面,各組實驗均取得了較高的正確率,并與相關文獻所得結果相當,這說明組套索罰分類器方法適用于紅斑鱗狀皮膚病的分類診斷問題;另一方面,C組的正確率高于A組,說明虛擬編碼是處理名詞性變量的有效方法,提高了計算合理性,能夠顯著降低分類錯誤率;另外,B、C兩組結果相比,說明組套索方法的變量和類別分組策略優于僅僅類別分組策略。

最優組套索罰分類器的參數如下:正則化參數 最大值為44.738 9對應全部變量都不選擇,λ最小值為0.004 5對應選擇全部變量,λ共100個值,最優分類結果的λ取值為0.323 1,全部非零系數為129。
組套索罰分類器分類結果的混淆矩陣如表 3所示。可見,對于所有358個樣本,最好的組套索罰分類器只對4個樣本出現了分類錯誤,且集中在脂溢性皮炎和玫瑰糠疹兩種疾病的分辨中。而實際上,玫瑰糠疹是一種自限性炎癥性皮膚病,多見于青少年,春秋季節易發,一般4~8周可自行痊愈,只有少數患者病情遷延難愈;脂溢性皮炎是在皮脂溢出較多部位發生的慢性炎癥性皮膚病。對這兩種疾病的診斷有望通過更多先驗知識來實現。

組套索罰分類器的性能評價指標如表 4所示。可見,組套索罰分類器法對4種疾病的敏感度達到了100%,對6種疾病的敏感度均達到了95.5%以上,特異度均達到了99%以上。

最后將本文結果和其他文獻的結果進行了比較,如表 5所示。

表 5中正確率都是在同一數據集上得到的。本文方法步驟簡單、收斂速度快、分類效果好且模型可解釋性強,總體上優于其他方法。本文方法模型訓練時間短,平均分類正確率為98.88%,僅次于文獻[5]的99.20%,但文獻[5]采用遺傳算法和貝葉斯網絡分類器封裝式結合方法,運行時間大大高于本文方法。
4 結論
針對生物醫學數據中名詞性數據的特征選擇和分類問題,本文首先采用虛擬編碼方案將數據變為二值數據,然后提出了組套索罰分類器模型用于高維二值數據的特征選擇和分類,并將其應用于紅斑鱗狀皮膚病的分類診斷問題,正確率高達98.88%。本文方法的創新之處在于考慮了皮膚病數據的屬性問題,并將組套索罰分類方法推廣為適用于虛擬編碼特征的形式,突破了傳統方法不區分變量屬性而直接進行數值計算的不合理性。實驗結果證明虛擬編碼結合組套索罰分類器方法是一種處理名詞性變量的有效途徑,可以為相似的研究工作提供參考。另外,本文采用的類別結合名詞性數據分組策略導致系數是一個矩陣,可進一步研究矩陣核范數罰分類器方法。