哈爾濱醫(yī)科大學(xué)公共衛(wèi)生學(xué)院衛(wèi)生統(tǒng)計學(xué)教研室(150081)
曲思楊 張秋菊 王文佶 謝 彪 孫 琳 高 兵 劉美娜△
多次交叉驗證對PLSDA模型的影響研究*
哈爾濱醫(yī)科大學(xué)公共衛(wèi)生學(xué)院衛(wèi)生統(tǒng)計學(xué)教研室(150081)
曲思楊 張秋菊 王文佶 謝 彪 孫 琳 高 兵 劉美娜△
目的 比較一次交叉驗證和多次交叉驗證對PLSDA最優(yōu)模型的影響,探討在個體正確分組和少數(shù)個體錯分時,多次交叉驗證對PLSDA最優(yōu)模型穩(wěn)定性的影響。方法 打亂數(shù)據(jù)集中個體順序進行多次交叉驗證,通過一次交叉驗證和多次交叉驗證的方法對模擬數(shù)據(jù)和真實數(shù)據(jù)進行分析,使用成分?jǐn)?shù)和MSEP等參數(shù)值來評價模型變異性和穩(wěn)定性。結(jié)果 模擬數(shù)據(jù)結(jié)果,僅進行1次交叉驗證結(jié)果成分?jǐn)?shù)為3,MSEP值為0.3792;在不打亂數(shù)據(jù)標(biāo)簽時,5000次交叉驗證結(jié)果中,成分?jǐn)?shù)范圍是2~6,MSEP值的范圍0.2569~0.5794;打亂5%的標(biāo)簽時,5000次交叉驗證結(jié)果中,成分?jǐn)?shù)范圍是1~8,MSEP值的范圍0.2061~0.6463;真實數(shù)據(jù)結(jié)果,進行1次交叉驗證結(jié)果成分?jǐn)?shù)為4,MSEP值為0.1376;10000次交叉驗證成分?jǐn)?shù)范圍是4~10,MSEP范圍是0.0802~0.3761。結(jié)論 一次交叉驗證結(jié)果不穩(wěn)定,在應(yīng)用PLSDA建模時,多次交叉驗證在少量個體錯分時能夠獲得穩(wěn)定模型,建議使用多次交叉驗證確保PLSDA模型穩(wěn)定性。
交叉驗證 PLSDA 高維數(shù)據(jù)
偏最小二乘判別分析(partial least squares discriminant analysis,PLSDA)在高維數(shù)據(jù)中應(yīng)用廣泛,成為標(biāo)準(zhǔn)的高維數(shù)據(jù)分析方法,通過所建的模型對新的個體進行分類預(yù)測,模型的優(yōu)度影響預(yù)測的準(zhǔn)確性[1-2]。評價模型預(yù)測能力的可靠方法是應(yīng)用外部數(shù)據(jù)驗證,但對于小樣本的高維數(shù)據(jù)由于樣本量的限制無法進行外部數(shù)據(jù)驗證,因此采用交叉驗證的方法來評價PLSDA模型[3-5]。在進行交叉驗證的過程中常規(guī)方法是只進行一次交叉驗證評價PLSDA模型[6],但有研究證明對于同一組數(shù)據(jù),當(dāng)交叉驗證中訓(xùn)練集和測試集的個體組成發(fā)生變化時,PLSDA模型也隨之發(fā)生變化,一次交叉驗證結(jié)果存在偶然[7]。本研究利用改進的交叉驗證方法,打亂個體分組進行多次交叉驗證并應(yīng)用于PLSDA,避免一次交叉驗證結(jié)果帶來的偶然性,使PLSDA模型更加穩(wěn)定。本文使用成分?jǐn)?shù)和預(yù)測均方誤差評價PLSDA模型。成分?jǐn)?shù)表示PLSDA模型中主成分個數(shù),說明模型的復(fù)雜程度。預(yù)測均方誤差(mean squared error of prediction,MSEP)可評價模型的預(yù)測能力,MSEP值越小,模型的預(yù)測值與真實值相差越小,說明模型預(yù)測能力越好。
1.一次交叉驗證
通過PLSDA方法建模后,評價模型時通常僅進行一次交叉驗證[8]。以7折交叉驗證為例:將整個數(shù)據(jù)集分成7個子集,其中6份為訓(xùn)練集,1份為測試集,使用訓(xùn)練集建立不同主成分?jǐn)?shù)的模型,然后通過所建模型對相應(yīng)測試集中的個體進行預(yù)測,重復(fù)此過程,直到每個個體在測試集中僅出現(xiàn)一次,最終將錯誤率最低的模型作為最優(yōu)模型。
但是,只進行一次交叉驗證而確定的最優(yōu)模型存在偶然性,結(jié)果并不穩(wěn)定。如圖1(a)所示,在子集的生成過程中,從數(shù)據(jù)集中每隔6個個體抽取1個個體放入子集中。第一個子集中由1、8、15、…個體組成,第二個子集中由2、9、16、…個體組成,以此類推。根據(jù)每個子集構(gòu)成的方式,當(dāng)打亂數(shù)據(jù)集中個體順序時,每個子集的組成也發(fā)生改變(圖1b)。若用打亂個體分組后的子集重新擬合模型,所得最優(yōu)模型成分?jǐn)?shù)以及模型參數(shù)如MSEP(預(yù)測均方誤差)等均會發(fā)生變化,最優(yōu)模型因打亂數(shù)據(jù)集中個體順序而發(fā)生改變[9]。
圖1 原始數(shù)據(jù)的交叉驗證法個體組成(a)和 打亂數(shù)據(jù)集順序的交叉驗證法個體組成(b)
2.多次交叉驗證
如果多次打亂個體分組,進行多次交叉驗證,就可得到多個最優(yōu)模型,而出現(xiàn)頻率最高的模型即可作為最優(yōu)模型。仍以7折交叉驗證為例:首先,根據(jù)上文中的方法將數(shù)據(jù)分為7份,進行一次交叉驗證;然后,打亂數(shù)據(jù)集中個體順序重新擬合模型進行交叉驗證;不斷打亂數(shù)據(jù)集中個體順序,進行多次交叉驗證,直至交叉驗證結(jié)果參數(shù)范圍趨于穩(wěn)定。基于以上所述可以得到多次交叉驗證模擬實驗結(jié)果,見圖2~3,最優(yōu)模型應(yīng)為成分?jǐn)?shù)為4且對應(yīng)MSEP值最穩(wěn)定的模型。
圖2 多次交叉驗證后主成分?jǐn)?shù)分布圖
圖3 多次交叉驗證后MSEP值分布圖
本研究通過模擬數(shù)據(jù)和實際數(shù)據(jù),比較一次交叉驗證和多次交叉驗證結(jié)果,實現(xiàn)對于同一組數(shù)據(jù),進行多次交叉驗證可以得到最穩(wěn)定且最優(yōu)預(yù)測模型。
1.模擬實驗結(jié)果
模擬數(shù)據(jù):模擬產(chǎn)生變量數(shù)均為10、樣本量均為20的A、B兩組數(shù)據(jù),A、B兩組中任意兩變量間的相關(guān)系數(shù)設(shè)為ρ=0.5,且兩數(shù)據(jù)集中各變量取值不同。另模擬產(chǎn)生樣本量為40、變量數(shù)為400的C組數(shù)據(jù),服從N(2,1)的正態(tài)分布,并將C組數(shù)據(jù)與A、B兩組差異變量數(shù)據(jù)合并為模擬數(shù)據(jù)集(如圖4所示)。為了模擬在收集的病例組和對照組數(shù)據(jù)分組有誤的情況,在合并數(shù)據(jù)后打亂不同比例(d%=0、5)的數(shù)據(jù)標(biāo)簽,共產(chǎn)生2組不同的模擬數(shù)據(jù)。
圖4 模擬實驗數(shù)據(jù)結(jié)構(gòu)示意圖
模擬方法:將以上2組模擬數(shù)據(jù)擬合PLSDA模型,交叉驗證時分別進行1次和多次交叉驗證,觀察不同交叉驗證結(jié)果的成分?jǐn)?shù)和MSEP值等參數(shù)。
由表1可知:隨著交叉驗證次數(shù)增加,在模擬實驗次數(shù)為5000時,MSEP值范圍增大并趨于穩(wěn)定,因此本研究模擬實驗均使用5000次交叉驗證。模擬實驗結(jié)果:對模擬數(shù)據(jù)進行5000次交叉驗證,可以得到5000個最優(yōu)模型。由表2可知:①僅進行1次交叉驗證結(jié)果成分?jǐn)?shù)為3,MSEP值為0.3792;②在不打亂數(shù)據(jù)標(biāo)簽時,5000次交叉驗證結(jié)果中,成分?jǐn)?shù)范圍是2~6,MSEP值的范圍0.2569~0.5794;③打亂5%的分組標(biāo)簽后,最大成分?jǐn)?shù)由6增加到8,MSEP值的范圍擴大為0.2061~0.6463;由表3可知:隨著打亂標(biāo)簽的比例增大,MSEP值范圍增大。
表1 不同交叉驗證次數(shù)的成分?jǐn)?shù)和MSEP范圍比較
表2 打亂不同比率標(biāo)簽1次和5000次交叉驗證結(jié)果
表3 打亂不同比率標(biāo)簽進行多次交叉驗證的結(jié)果比較
2.實際數(shù)據(jù)驗證
數(shù)據(jù)來源:本研究中使用真實數(shù)據(jù),病例組為患有過敏性紫癜兒童患者57例,對照組是來自同一醫(yī)院就診的非過敏兒童患者57例,收集研究對象抗凝血血漿,經(jīng)過UPLC-TOF/MS聯(lián)用儀器檢測分析獲得代謝組學(xué)檢測數(shù)據(jù),經(jīng)數(shù)據(jù)預(yù)處理后獲得824個變量。以此數(shù)據(jù)為實例驗證數(shù)據(jù)集。
對以上代謝組學(xué)數(shù)據(jù)使用PLSDA方法建模,交叉驗證時進行1次和多次交叉驗證,根據(jù)表4可以確定10000次交叉驗證情況結(jié)果穩(wěn)定,因此對于實際數(shù)據(jù)分析選擇10000次交叉驗證,比較1次和10000次交叉驗證結(jié)果的成分?jǐn)?shù)和MSEP值等參數(shù)。結(jié)果如表5所示,進行1次交叉驗證結(jié)果成分?jǐn)?shù)為4,MSEP值為0.1376;10000次交叉驗證成分?jǐn)?shù)范圍是4~10,成分?jǐn)?shù)6出現(xiàn)次數(shù)最多;MSEP范圍是0.0802~0.3761,且出現(xiàn)次數(shù)最多的值是0.2104。將10000次交叉驗證結(jié)果中參數(shù)頻數(shù)最大的模型即成分?jǐn)?shù)是6、MSEP值是0.2104的模型作為最優(yōu)模型,可提高最優(yōu)模型的穩(wěn)定性。
表4 不同交叉驗證次數(shù)的成分?jǐn)?shù)和MSEP范圍比較
表5 1次交叉驗證和5000次交叉驗證模型參數(shù)比較
交叉驗證是評價PLSDA模型的主要方法,通常情況下交叉驗證僅進行1次[10],但由于交叉驗證時數(shù)據(jù)集中的個體被隨機分為訓(xùn)練集和測試集,就同一組數(shù)據(jù)若打亂個體分組進行2次交叉驗證時會得到不同的結(jié)果,1次交叉驗證存在偶然性[11]。本研究將多次交叉驗證法應(yīng)用于PLSDA中,使模型參數(shù)在一個范圍內(nèi)趨于穩(wěn)定,將參數(shù)出現(xiàn)次數(shù)最多的模型作為最優(yōu)模型,為后續(xù)模型預(yù)測提供可靠依據(jù)[12]。
多次交叉驗證本質(zhì)上是由多個1次交叉驗證組成,根據(jù)模擬實驗結(jié)果,5000次交叉驗證得到的5000個最優(yōu)模型的成分?jǐn)?shù)和MSEP值存在較大差異,因此其中1次交叉驗證結(jié)果不具有代表性,不能將5000次交叉驗證中的任意1次結(jié)果作為最終結(jié)果,1次交叉驗證得到的最優(yōu)模型不穩(wěn)定。進行多次交叉驗證能夠使多個模型的成分?jǐn)?shù)和MSEP值等參數(shù)在某一范圍內(nèi)穩(wěn)定。穩(wěn)定的參數(shù)范圍讓所有可能的最優(yōu)模型包含在多次交叉驗證的多個模型中,將成分?jǐn)?shù)和MSEP值頻數(shù)最大的模型作為最優(yōu)模型,此模型是多次交叉驗證得到的多個模型中出現(xiàn)次數(shù)最多也是最穩(wěn)定的模型。本研究中兒童過敏性紫癜診斷的金標(biāo)準(zhǔn)是進行腎穿活檢,大部分家長考慮到腎穿對兒童腎臟的傷害不愿意配合,臨床醫(yī)生僅依靠臨床體征和生化指標(biāo)來診斷,這種情況下會出現(xiàn)少數(shù)個體分組有誤。此時,多次交叉驗證結(jié)果參數(shù)值變異增大,在打亂一定比例的分組標(biāo)簽的情況下,改變部分個體分組模擬個體錯分,進行多次交叉驗證可以確定最優(yōu)模型。
研究表明在高維數(shù)據(jù)中,5%的個體出現(xiàn)分組有誤時,多次交叉驗證仍然可以得到穩(wěn)定可靠的模型,更多的個體出現(xiàn)錯分時多次交叉驗證能否得到穩(wěn)定的模型有待進一步研究。
[1]蔣紅衛(wèi),夏結(jié)來,李園,等.偏最小二乘判別分析在基因微陣列分型中的應(yīng)用.中國衛(wèi)生統(tǒng)計,2007,24(4):372-374.
[2]蔣紅衛(wèi),夏結(jié)來,張春霞,等.核偏最小二乘回歸及其在醫(yī)學(xué)中的應(yīng)用.中國衛(wèi)生統(tǒng)計,2007,24(3):239-242.
[3]Anderssen E,Dyrstad K,Westad F,et al.Reducing over-optimism in variable selection by cross-model validation.Chemometrics and intelligent laboratory systems,2006,84(1):69-74.
[4]Schaffer C.Selecting a classification method by cross-validation.Mach Learn,1993,13(1):135-143.
[5]Dai Q.A competitive ensemble pruning approach based on cross-validation technique.Knowl Based Syst,2013,37(2):394-414.
[6]Westerhuis JA,Hoefsloot HCJ,Smit S,et al.Assessment of PLSDA cross validation.Metabolomics,2008,4(1):81-89.
[7]Triba MN,Le Moyec L,Amathieu R,et al.PLS/OPLS models in metabolomics:the impact of permutation of dataset rows on the K-fold cross-validation quality parameters.Mol Biosyst,2015,11(1):13-19.
[8]Barker M,Rayens W.Partial least squares for discrimination.J Chemom,2003,17(3):166-173.
[9]Stone M.Cross-validatory choice and assessment of statistical predictions.Journal of the royal statistical society.Series B(Methodological),1974,36(2):111-147.
[10]Szymańska,Saccenti E,Smilde AK,et al.Double-check:validation of diagnostic statistics for PLS-DA models in metabolomics studies.Metabolomics,2012,8(1):3-16.
[11]Kohavi R.A study of cross-validation and bootstrap for accuracy estimation and model selection.Appears in the International Joint Conference on Artificial Intellignece(IJCAI),1995.
[12]Hall P,Racine J,Li Q.Cross-validation and the estimation of conditional probability densities.J Am Stat Assoc,2004,9(2):115-126.
(責(zé)任編輯:郭海強)
Research of the Effect of Multiple Cross-validation on PLSDA Model
Qu Siyang,Zhang Qiuju,Wang Wenji,et al.
(DepartmentofBiostatistics,HarbinMedicalUniversity(150081),Harbin)
Objective To compare the effect of one cross-validation and multiple cross-validations on PLSDA optimal model and discuss the effect of multiple cross-validations on stability of the optimal model when a few individuals are wrong grouped and when all individuals are right grouped,respectively. Methods The order of individuals in one dataset was disorganized to perform multiple cross-validations.Simulative data and real data were analyzed using one cross-validation and multiple cross-validations.The variation and stability of the models were tested using parameters like principal component number and MSEP. Results For simulative data,the principal component number of one cross-validation is 3 and MSEP is 0.3792;for result of 5000 cross-validations when the data is not disordered,the range of principal component number is 2~6 and the range of MSEP is 0.2569~0.5794;for result of 5000 cross-validations when the data is 5% disordered,the range of principal component number is 1~8 and the range of MSEP is 0.2061~0.6463;for result of 10000 times cross-validation of real data,the range of principal component number is 4~10 and the range of MSEP is 0.0802~0.3761.Conclusion PLSDA models built by one cross-validation are not stable whereas multiple cross-validations can help build PLSDA models more stably when a few individuals are wrong grouped.So multiple cross-validation is recommended to ensure the stability of PLSDA model.
Cross validation;PLSDA;High dimensional data
黑龍江省自然基金重點項目(ZD201314);國家自然基金(81502889)
△通信作者:劉美娜,E-mail:liumeina369@163.com