徐 習 趙鈺琳
(重慶工商大學數學與統計學院,重慶 400067)
Cox模型,也稱為Cox比例風險回歸模型,是一種用于分析生存數據的統計模型。它基于半參數模型,不需要對生存時間的概率分布做出假設,只需要假設風險函數的形式,從而可以對各種不同類型的生存數據進行建模和分析。在實際應用中,通常需要從大量的可能影響生存時間的變量中選擇出對生存時間具有顯著影響的變量,以便更準確地評估其對生存時間的影響。這就涉及Cox模型中的變量選擇問題。對于變量選擇,常常采用的方法是引入一些懲罰項來約束回歸系數,從而達到減少變量數量、提高模型預測能力的目的。Cox模型中,常用的懲罰項有LASSO、Ridge、Elastic Net、SCAD等[1-3]。
變量選擇在Cox模型的應用中具有重要意義,因為選取正確的變量可以更好地理解和預測生存時間,避免不必要的分析和浪費。然而,在實際應用中,由于變量間的相關性、數據質量等問題,變量選擇也存在一些挑戰。因此,選擇適合的變量選擇方法對于構建準確、穩定的Cox模型至關重要[4]。
本文分別使用SCAD、Adaptive Elastic Net、Adaptive Lasso和ADS懲罰方法對Cox模型進行變量選擇,并使用交叉驗證法進行參數調節,得到了四個模型;比較其變量選擇結果和預測準確性;評估這些懲罰方法在平衡稀疏性、預測準確性、對共線性和異常值的魯棒性、計算復雜度等方面的優劣。
在醫學領域的生存分析中,Cox模型是一種常用的模型,用于研究不同因素對患者生存時間的影響。為了提高模型的性能和預測準確性,除了傳統的前向逐步回歸和后向逐步回歸,還應用了一些新的變量選擇方法,如SCAD、ADS、Adaptive Lasso和Adaptive Elastic Net等。這些方法可以有效地降低模型的方差和偏差,提升模型的預測精度。
SCAD是一種基于L1范數懲罰的變量選擇方法,它通過對L1范數進行平滑截斷來解決Lasso方法在變量選擇中存在的一些缺陷。SCAD方法的基本原理是在L1懲罰項的基礎上增加一個二次懲罰項,以此在保持模型的稀疏性的同時,也能保持模型的預測準確性。在Cox模型中,SCAD方法可以用于對回歸系數進行懲罰,達到變量選擇的目的。相比于其他變量選擇方法,SCAD方法能夠有效地解決變量選擇中的估計偏差和估計精度問題,因此在實際應用中廣受歡迎[5-6]。
ADS(Adaptive Direction Shrinkage)是一種基于L1懲罰的變量選擇方法。ADS方法的基本原理是通過對不同變量的調整方向和強度進行自適應調整,實現最優的變量選擇和調整。在Cox模型中,ADS方法同樣適用,可以用于對回歸系數進行懲罰,以實現變量選擇。相較于其他變量選擇方法,ADS方法具有處理大規模數據集、高效、穩定和靈活的優點。在實際應用中,ADS方法被廣泛應用于醫學、金融、社會科學等領域,具有重要的理論和實踐價值[5-7]。
Adaptive Elastic Net(AEN)是一種基于L1和L2范數懲罰的變量選擇方法,它結合了L1和L2懲罰項,能夠在保持模型的稀疏性的同時,也能保持模型的預測準確性。AEN方法的基本原理是通過自適應調整L1和L2懲罰項的權重,在不同的數據情況下實現最優的變量選擇和調整,在Cox模型中同樣適用。相較于其他變量選擇方法,Adaptive Elastic Net方法可以同時考慮稀疏性和可解釋性,能夠處理變量間的相關性和噪聲。該方法的特點是可以平衡不同懲罰因子的影響,具有較好的魯棒性和預測精度,在實際中具有廣泛的應用前景。
Adaptive Lasso是一種基于L1懲罰的變量選擇方法,其可以自適應地調整不同變量的懲罰系數,從而實現最優的變量選擇和調整。Adaptive Lasso方法的基本原理是對不同變量的懲罰系數進行自適應調整,使得影響較小的變量更容易被選擇,而影響較大的變量更容易被保留。在Cox模型中,Adaptive Lasso方法同樣適用,可以用于對回歸系數進行懲罰,以達到變量選擇的目的。相比于其他變量選擇方法,Adaptive Lasso方法具有處理變量間相關性的能力,并且具有自適應性和穩健性。在實際應用中,Adaptive Lasso方法被廣泛應用于生物醫學、經濟學和社會科學等領域,具有重要的理論和實踐價值[8]。
1.2.1 Cox比例風險模型
Cox比例風險模型的基本形式為
式(1)中,β1,β2,…,βp為自變量的偏回歸系數,或者說是第j個預測因子的回歸系數,它是需從樣本數據作出估計的參數;X=(X1,X2,…,Xp) 是p維協變量向量;h 0(t)是當X向量為0時,h(t,X) 的基準危險率,它是有待于從樣本數據作出估計的量。
式(1)可以轉化為可以看出,比例風險假定各危險因素的作用不隨時間的變化而變化,即不隨時間的變化而變化。因此,式(1)又稱為比例風險率模型(PH Model)。這一假定是建立Cox回歸模型的前提條件,而且對數線性假定模型中的協變量應與對數風險比呈線性關系。其中,若Xj是非暴露組觀察對象的各因素取值,Xi是暴露組觀察對象的各因素取值,RR是相對危險度,即
似然比函數的值越大,說明模型的擬合程度和預測能力越好。在進行變量選擇時,可以根據似然比函數的大小來評估預測因素的重要性,選擇對模型性能有較大貢獻的預測因素。
1.2.2 Cox-SCAD模型
Cox-SCAD模型是一種用于生存分析的統計模型,它是基于Cox比例風險模型和SCAD正則化方法的結合。Cox-SCAD模型可以用于處理高維數據集,同時能夠選擇重要的預測因子,減少模型的過擬合,其模型如下:
其中,pλ是SCAD懲罰函數,λ是懲罰強度,則有
1.2.3 Cox-ADS模型
Cox-ADS模型是一種用于生存分析的統計模型,它是基于加速失效時間模型(Accelerated Failure Time Model,AFT)與自適應組稀疏正則化(Adaptive Group Sparse Regularization,AGSR)的結合。ADS-Cox模型可以處理高維數據集,同時能夠選擇重要的預測因子,減少模型的過擬合,其模型如下:
其中,p為預測因子的數量,r為組數,λ是懲罰強度,Q是一個矩陣,mle表示最大似然估計,λωj是 Cox-ADS模型中的權重。
1.2.4 Cox-AEN模型
Cox-AEN模型是一種用于生存分析的統計模型,它是基于Cox比例風險模型和自適應彈性網絡(Adaptive Elastic Net)正則化的結合。自適應彈性網絡可以同時控制Lasso和Ridge懲罰的強度,因此可以更好地平衡模型的穩定性和準確性,其模型如下:
1.2.5 Cox-ALasso模型
Cox-ALasso模型是一種用于生存分析的統計模型,它是基于Cox比例風險模型與ALasso(Adaptive Lasso)正則化的結合。與傳統的Lasso模型不同,自適應Lasso對于不同的預測因子可以賦予不同的懲罰系數,因此可以更好地處理高維數據集,其模型如下:
參數調節是變量選擇中的關鍵步驟,可幫助找到最優模型參數以提高準確性和性能。交叉驗證是一種常用的評估模型性能的方法,將數據集分成多個子集進行訓練和測試。本文采用5折和10折交叉驗證法進行參數調節,結果表明使用5折交叉驗證法效果更好,能更準確評估模型性能,提高泛化能力。
本文使用了基于懲罰項的變量選擇方法,包括Cox-SCAD、Cox-ADS、Cox-AEN和Cox-ALasso 模型,對乳腺癌數據集進行生存分析。這些模型能夠自動選擇與生存時間相關的變量,降低維度并提高預測性能。此外,它們還具有Oracle性質,能夠準確地識別真實的相關變量并將不相關的變量系數壓縮為零,從而保證了模型的可解釋性和穩定性。
該數據集包含569個樣本和30個特征,是一個二分類問題。為了提高模型的訓練效果,本文首先對數據進行了預處理。具體來說,使用了StandardScaler方法對數據進行標準化,將每個特征的值縮放到均值為0,標準差為1的范圍內。隨后將數據集劃分為訓練集和測試集,其中測試集占總數據集的30%,并設置隨機種子為42,以保證每次運行結果的一致性。最終,得到了訓練集和測試集的特征矩陣和目標向量。
在訓練好的COX模型中,每個變量都會有一個對應的系數。這些系數可以用來解釋變量對風險的影響。如果變量的系數為正數,表示該變量的增加與風險的增加有正相關關系;如果系數為負數,表示該變量的增加與風險的減少有負相關關系;如果系數接近于零,則說明該變量對風險的影響較小或不顯著。訓練結果如表1所示,這些系數可以用來進行特征選取和模型優化。

表1 系數估計值
根據表1的結果得出以下結論:
(1)在本模型中,假設變量X3和X4與其他變量存在共線性。通過使用四種基于懲罰項的變量選擇方法,發現這些方法都沒有將X3和X4選入模型。這說明以上四種方法都能夠有效地處理共線性問題,并且能夠自動選擇與生存時間相關的變量,降低維度并提高預測性能。
(2)在COX模型的乳腺癌數據集中,使用不同的特征選擇方法得到了不同的特征集合。具體來說,SCAD方法選擇了18個特征,ADS方法選擇了15個特征,Adaptive Elastic Net方法選擇了25個特征,Adaptive Lasso方法選擇了21個特征。這些結果說明,不同的特征選擇方法會導致不同的特征集合,這可能是由于不同方法對特征的懲罰力度、結構偏好和相關性處理方式不同所導致的。
(3)在數據集中,使用Adaptive Elastic Net方法選擇的特征最多,而ADS方法選擇的特征最少,這可能是因為Adaptive Elastic Net方法可以保持稀疏性的同時,克服了Lasso方法在高相關性特征選擇方面的一些問題,而ADS方法則沒有考慮相關性。
根據表2和圖1,對這四種模型進行比較,得出以下結果:

圖1 四種模型的ROC Curve對比

表2 四種方法不同指標的比較
(1)分類準確度(Acc)是一種常用的評估分類模型性能的指標,它的值介于0和1之間,越接近1表示模型的分類性能越好,而接近0則表示模型的分類性能較差。它提供了一個整體的性能評估指標,可以直觀地了解模型對于所有類別的分類效果。這四種模型的Acc均較高,都在0.95以上。其中,AEnet方法的分類準確度最高,為0.97;其次是ALasso方法,為0.972;SCAD方法的分類準確度為0.964 9,稍低于前兩者;ADS方法的分類準確度最低,為0.953 2。
(2)F1值是精確率(Precision)和召回率(Recall)的調和平均數,它綜合衡量了分類器的準確性和覆蓋能力。F1值在0到1之間,越接近1則表示分類器性能越好。它在處理類別不平衡問題時尤為重要,因為此時單一指標(如準確率)可能無法全面反映模型性能。F1值提供了一個綜合指標,幫助評估分類器在精確率和召回率之間的權衡。表2中,四種模型的F1值均較高,其中ALasso方法的F1值最高,為0.978;其次是SCAD方法,為0.973;AEnet方法的F1值為0.968,略低于前兩者;ADS方法的F1值最低,為0.964。
(3)ROC曲線是以真正例率(True Positive Rate,TPR)為縱軸,假正例率(False Positive Rate,FPR)為橫軸,繪制的一條曲線。它可以幫助我們理解模型在不同閾值下的分類結果,以及靈敏度和特異度之間的權衡。這四種模型的ROC曲線下的面積(AUC)也都較高,均在0.94以上。其中,SCAD方法的AUC最高,為0.956;其次是ALasso方法,為0.953;AEnet方法的AUC為0.948,略低于前兩者;ADS方法的AUC最低,為0.940。
(4)懲罰系數(C)值,用于控制模型對錯誤分類的懲罰程度和權衡損失函數與正則項的關系。合適的C值可以平衡模型的復雜度與容錯能力,降低過擬合和欠擬合風險。選擇最優C值是一個重要的調參過程,通常通過交叉驗證等方法來實現。其中,AEN方法的懲罰系數最小,為0.172 4;其次是ALasso方法,為0.333 3;SCAD方法的懲罰系數為0.448 3,略高于前兩者;ADS方法的懲罰系數最大,為0.433 3。
綜合來看,這四種模型在分類準確度、F1值和AUC指標上表現都較好,但各有優劣。ALasso方法在分類準確度、F1值和AUC指標上表現良好,且懲罰系數較小;SCAD方法在AUC指標和F1值上表現較好,但懲罰系數較大;AEN方法在分類準確度、F1值和懲罰系數指標上表現最好;ADS方法在分類準確度和AUC指標上表現略低,但懲罰系數最大。
本文通過對Cox比例風險模型中的多種變量選擇方法的比較與應用研究,得出了以下結論:這四種方法都能夠有效地處理共線性問題,并且能夠自動選擇與生存時間相關的變量,降低維度并提高預測性能。不同的特征選擇方法會導致不同的特征集合,這可能是由于不同方法對特征的懲罰力度、結構偏好和相關性處理方式不同所導致的。其中,Adaptive Elastic Net方法選擇的特征最多,而ADS方法選擇的特征最少,這可能是因為Adaptive Elastic Net方法可以保持稀疏性的同時,克服了Lasso方法在高相關性特征選擇方面的一些問題,而ADS方法則沒有考慮相關性。在分類性能方面,這四種模型在分類準確度、F1值和AUC指標上表現相似,但是在預測陽性患者的召回率上,Adaptive Elastic Net方法表現最好,這說明在生存分析中,Adaptive Elastic Net方法可能更適合于對陽性患者進行篩查和預測。
綜上所述,這四種基于懲罰項的變量選擇方法可以有效地處理生存分析中的高維數據和共線性問題,提高預測性能和可解釋性,但它們在選擇特征和分類性能方面存在一定的差異,需要根據具體問題選擇合適的方法。