随机森林需要分训练集测试集吗_讨论记录用随机森林对生存数据降维,筛选signature...
昨晚,小伙伴收到了大魚(yú)海棠為我們帶來(lái)的FigureYa182RFSurv,使用隨機(jī)森林對(duì)生存數(shù)據(jù)降維,根據(jù)變量重要性排序并篩選基因組成prognostic signature。
這是我們第二次眾籌隨機(jī)森林相關(guān)分析,上次的FigureYa159LR_RF,是在LASSO降維的基礎(chǔ)上,采用logistic regression或Random forest的方法,進(jìn)行5-fold cross-validation評(píng)估LASSO selected feature的預(yù)測(cè)效能。
大魚(yú)海棠為我們帶來(lái)了眾多或經(jīng)典或酷炫的好用代碼,具有豐富的醫(yī)學(xué)統(tǒng)計(jì)分析經(jīng)驗(yàn)。這次建立FigureYa182RFSurv專屬討論群,請(qǐng)大魚(yú)海棠入群答疑。小伙伴就相關(guān)問(wèn)題展開(kāi)討論,小丫整理記錄下來(lái),留下這寶貴資源。
HSZ:請(qǐng)問(wèn)這個(gè)安裝是哪里出問(wèn)題了,我百度也不知道怎么解決?
大魚(yú)海棠:https://share.weiyun.com/0Qk7bvR6,直接把這個(gè)拖到R的library下解壓試試,我以前這樣做似乎也可以用,在windows里。
ZJH問(wèn):老師,您好!imp.cutoff這個(gè)重要性閾值的怎么選擇?
大魚(yú)海棠:沒(méi)有固定cutoff。結(jié)果導(dǎo)向的,嫌結(jié)果太多就設(shè)高一點(diǎn)
LGM問(wèn):海棠哥好,請(qǐng)教一下篩選出來(lái)的特征要組合成預(yù)后signature,是還需要進(jìn)一步使用多因素COX回歸來(lái)求變量的系數(shù)嗎?
大魚(yú)海棠:嗯我會(huì)建議這樣做,但是多因素這部不進(jìn)行變量篩選了。
Allittis問(wèn):海棠老師的意思是直接多因素全部納入算一個(gè)系數(shù)即可,是不?
LGM問(wèn):不進(jìn)行逐步回歸?
大魚(yú)海棠:對(duì)的,因?yàn)槟阋呀?jīng)認(rèn)為RF得出來(lái)的是你感興趣的變量了。當(dāng)然你非要再逐步回歸,從操作性上來(lái)講沒(méi)有問(wèn)題。
零度反應(yīng)問(wèn):如果這個(gè)得到的基因太多呢,可不可以再用逐步回歸?
大魚(yú)海棠:可以
零度反應(yīng):因?yàn)橹坝眠^(guò)這個(gè),也用過(guò)你寫(xiě)的lasso回歸的方法,但最后得到的signature基因相對(duì)多一點(diǎn),然后有時(shí)auc優(yōu)勢(shì)也并不明顯
大魚(yú)海棠:survival的auc一般都不會(huì)那么高。。因?yàn)椴粌H僅是二分類問(wèn)題,考慮了time-to-event
零度反應(yīng):所以又進(jìn)行了多因素,最起碼基因會(huì)少一些,感覺(jué)上好那么一丟丟。
LGM問(wèn):關(guān)于組合成預(yù)后signature還想再請(qǐng)教一下
一篇文章使用COX回歸得到了感興趣的基因,但是risk score 的計(jì)算居然是表達(dá)量跟HR相乘。有這樣的處理方式嗎?
Allittis:HR的置信區(qū)間好大
唐淵:估計(jì)是數(shù)據(jù)沒(méi)有做歸一化處理導(dǎo)致HR 值這么大。
LZQ:scale一下一般會(huì)小一些
大魚(yú)海棠:多個(gè)數(shù)據(jù)集驗(yàn)證的話,都會(huì)建議每個(gè)數(shù)據(jù)集都要scale,尤其是針對(duì)不同平臺(tái)。
CSJ問(wèn):請(qǐng)問(wèn)R中可以獲取基因的coefficients值么,我看原文中提到這個(gè)值是由random forest algorithm得到的,但是我在結(jié)果中沒(méi)有找到這個(gè)值~
LZQ:這個(gè)應(yīng)該是單因素cox的coef,決策樹(shù)是無(wú)參ML。HR=e^coef
對(duì)應(yīng)的HR值轉(zhuǎn)化一下就得到了。
大魚(yú)海棠:我覺(jué)得也是,coef,HR以及對(duì)應(yīng)的95%CI應(yīng)該是后算的,單因素cox直接summary一下都有。
DMY問(wèn):我在分析數(shù)據(jù)的時(shí)候發(fā)現(xiàn)如果用TCGA做訓(xùn)練集,而用GEO做驗(yàn)證集,結(jié)果發(fā)現(xiàn)訓(xùn)練集中獲得的關(guān)鍵基因在GEO數(shù)據(jù)集中不存在,那我應(yīng)該反過(guò)來(lái)用GEO做訓(xùn)練集呢?還是先取 TCGA和GEO的交集后再分析?謝謝啦!
砍柴人:先基因取交集啊
DMY:那用隨機(jī)森林和支持向量機(jī)這兩種方法篩選關(guān)鍵基因,那個(gè)更好呢?還是用組合的方式來(lái)篩選@大魚(yú)海棠
大魚(yú)海棠:組合的方式只是為了。。虛假的工作量吧,多寫(xiě)幾段method。我不太認(rèn)可這種做法,尤其是需要其中的指標(biāo)時(shí)。比如LASSO和SVM一起用,那LASSO里的系數(shù)怎么辦?
DMY:那有沒(méi)有一個(gè)更好的組合呢?比如先差異篩選,再單COX,再隨機(jī)森林,最后多COX?
大魚(yú)海棠:這些方法最后都是結(jié)果導(dǎo)向型,沒(méi)有什么最好的組合。。
DMY:AUC值通常多少比較合適呢?必須0.7以上么?
大魚(yú)海棠:訓(xùn)練集我會(huì)建議0.8以上吧。
砍柴人:訓(xùn)練集0.8以上,那測(cè)試集可以得到多少?
大魚(yú)海棠:看運(yùn)氣
DMY:嗯,有時(shí)候經(jīng)常是在TCGA訓(xùn)練集很高,到了GEO驗(yàn)證的時(shí)候就很低了,不懂是不是數(shù)據(jù)需要?dú)w一化處理。
大魚(yú)海棠:要?dú)w一化處理
DMY:難怪呢,我平時(shí)都沒(méi)做歸一化,結(jié)果差別很大。有沒(méi)有同時(shí)對(duì)所有訓(xùn)練集和驗(yàn)證集進(jìn)行歸一化處理的方法呢?謝謝啦!
大魚(yú)海棠:z-score最方便。個(gè)人覺(jué)得0-1區(qū)間變換最嚴(yán)謹(jǐn),但是沒(méi)必要。
DMY:先取基因交集,然后合并所有數(shù)據(jù)集,再用Z-score歸一化,再拆分?jǐn)?shù)據(jù)進(jìn)行分析,是這個(gè)邏輯么?謝謝啦
大魚(yú)海棠:分別zscore,不會(huì)合并zscore。tcga數(shù)據(jù)要先log,用TPM。
DMY:謝謝啦,受益匪淺!
CGD:所以請(qǐng)問(wèn)是先將tcga的tpm數(shù)據(jù)zscore后再建模,然后在geo的zscore后的數(shù)據(jù)中驗(yàn)證模型是嗎?是這樣的順序嗎,感謝!
DMY:前面大魚(yú)海棠 有說(shuō),先在TCGA中對(duì)tpm進(jìn)行l(wèi)og2后再zscore
LGM問(wèn):能不能再眾籌個(gè)不同平臺(tái)數(shù)據(jù)的標(biāo)準(zhǔn)化?
DMY:感覺(jué)可行,數(shù)據(jù)清理確實(shí)很重要。確實(shí)跨平臺(tái)驗(yàn)證會(huì)面臨很多問(wèn)題,同一平臺(tái)也會(huì)有批次效應(yīng),所以我在處理多GEO數(shù)據(jù)集的時(shí)候都先去除批次效應(yīng)并合并后,再進(jìn)行下面分析。
大魚(yú)海棠:你們可以了解一下gene pair,完美回避批次。是一個(gè)比較熱的,回避標(biāo)準(zhǔn)化的,跨平臺(tái)數(shù)據(jù)處理理念,但是數(shù)據(jù)的量級(jí)會(huì)比較大。
The one:gene pair[強(qiáng)][強(qiáng)][強(qiáng)],知道這個(gè)東西,沒(méi)嘗試過(guò),晚上回去試下!
DMY:我前面看一些教程里面寫(xiě)隨機(jī)森林對(duì)二分類變量預(yù)測(cè)效果最佳,比如生死,患病與否,但是病人的生存數(shù)據(jù)里還有生存時(shí)間,應(yīng)該用二分類變量作為結(jié)局變量么?如生死,還是以連續(xù)性變量生存時(shí)間作為結(jié)局變量比較好,謝謝啦。
大魚(yú)海棠:有研究不關(guān)心時(shí)間,只關(guān)心生死的,看個(gè)人目的吧。隨機(jī)森林對(duì)二分類最佳也沒(méi)有這種說(shuō)法,看觀測(cè)和變量的比例。邏輯回歸這種就很robust,而且可以寫(xiě)出關(guān)系式,推薦的還是邏輯回歸。
DMY:那研究是否復(fù)發(fā),或者轉(zhuǎn)移,也是不錯(cuò)的選擇哈!
大魚(yú)海棠:是的。
Paul:老師您好,我想請(qǐng)一下xgboost會(huì)不會(huì)比隨機(jī)森林樹(shù)更好一些?
大魚(yú)海棠:沒(méi)有方法有絕對(duì)的優(yōu)勢(shì)。。不然老方法就完全淘汰了不是嗎?分類算法、聚類算法都是result-oriented。我相信。。你們也會(huì)試不同的方法得到自己expected的結(jié)果吧!
DMY:感覺(jué)都是先用各種方法先分析,那個(gè)結(jié)果好就用那個(gè),均衡來(lái)選擇,結(jié)果導(dǎo)向,今天又做到一個(gè)新知識(shí),謝謝大神!
DMY:請(qǐng)問(wèn)內(nèi)部驗(yàn)證應(yīng)該分配多少樣品比例比較好呢?有些文章按照每組50%來(lái)分配,有些按照80%訓(xùn)練和20%來(lái)分,那個(gè)更好呢?
Paul:7:3,1:1的都有用,結(jié)果導(dǎo)向。
大魚(yú)海棠:對(duì),結(jié)果導(dǎo)向。五折多一些,只要不太離譜。
贊美太陽(yáng):請(qǐng)教個(gè)問(wèn)題,為什么不用rfsrc這個(gè)函數(shù)篩選變量?
大魚(yú)海棠:沒(méi)有用新的函數(shù)包
贊美太陽(yáng):那么rfs之后可以自行再來(lái)一發(fā)var.select嗎?
大魚(yú)海棠:感覺(jué)沒(méi)必要
贊美太陽(yáng):嗯,我覺(jué)得只要能說(shuō)通就可以了。
總結(jié)
以上是生活随笔為你收集整理的随机森林需要分训练集测试集吗_讨论记录用随机森林对生存数据降维,筛选signature...的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 将数据、代码、栈放入不同的段
- 下一篇: 实验五 编写、调试具有多个段的程序