Caret模型训练和调参更多参数解读(2)
trainControl函數控制參數?
trainControl函數用于定義train函數運行的一些參數,如交叉驗證方式、模型評估函數、模型選擇標準、調參方式等。
部分參數解釋如下:
method: 重采樣方法”boot”, “cv”, “LOOCV”, “LGOCV”, “repeatedcv”, “timeslice”, “none” and “oob”。
oob只適用于random forest, bagged trees, bagged earth, bagged flexible discriminant analysis, 或 conditional tree forest models. ‘none’表示不進行重采樣。
repeatedcv是K-fold交叉驗證重復多次。
number: K-fold中的K或boot中的迭代次數。
repeats: 只適用于repeatedcv,重復K-fold`交叉驗證數次
method = "repeatedcv", number = 10 和 repeats = 3表示完整重復3次10-fold交叉驗證。
search:
選項是grid (矩陣調參)或random (隨機調參)
summaryFunction: 計算模型性能矩陣的函數,默認是defaultSummary;
twoClassSummary用來計算敏感性、特異性和AUC。
sampling: 在數據不平衡時的抽平方式。
down-sampling把所有類的樣品抽取到與最小的類樣品數一致;
up-sampling有放回的抽取使得所有類的樣品與最大的類樣品數一致。
實際上是否隨機采樣和用什么采樣方法獲得的結果一般是一致的。
https://topepo.github.io/caret/subsampling-for-class-imbalances.html
classProbs: 是(TRUE)否(FALSE)需要計算驗證集中樣品的分類概率。
seed: 通常在運行train程序前運行set.seed(1)就可以保證結果的可重復性。
但在使用并行計算時,根據技術不同,可能需要額外設置此參數。
index: 自定義訓練集
train函數控制參數?
metric: 模型度量標準;回歸分析默認使用RMSE, R-square和MAE (mean absolute error), 分類問題默認使用accuracy和Kappa;如果指定ROC值,需要指定trainControl的summaryFunction為twoClassSummary。
selectionFunction: Caret自帶了3個函數,best: 按照設定的metric值選擇評分最高或偏差最小的模型; oneSE選擇最簡單的其性能與最好模型的性能相差在一個標準差之內的模型(同時照顧性能和避免過擬合);tolerance選擇與最好的模型相差在給定閾值范圍內的最簡單模型。閾值為容忍度,計算方式為 $ (x-x{best})/x{best} * 100$。selectionFunction ="tolerance(tol=2)"表示允許2%的性能降低。
tuneGrid: 接受一個包含參數組合的數據框。列的名字是所用的機器學習方法函數可接受的參數名字。getModelInfo()$rf$parameters 可獲得方法rf的所有可調參數。
References
官方文檔 https://topepo.github.io/caret/model-training-and-tuning.html
部分中文解釋 https://blog.csdn.net/weixin_42712867/article/details/105337052
特征選擇 https://blog.csdn.net/jiabiao1602/article/details/44975741
調參的好例子 https://machinelearningmastery.com/tune-machine-learning-algorithms-in-r/
機器學習系列教程
從隨機森林開始,一步步理解決策樹、隨機森林、ROC/AUC、數據集、交叉驗證的概念和實踐。
文字能說清的用文字、圖片能展示的用、描述不清的用公式、公式還不清楚的寫個簡單代碼,一步步理清各個環節和概念。
再到成熟代碼應用、模型調參、模型比較、模型評估,學習整個機器學習需要用到的知識和技能。
機器學習算法 - 隨機森林之決策樹初探(1)
機器學習算法-隨機森林之決策樹R 代碼從頭暴力實現(2)
機器學習算法-隨機森林之決策樹R 代碼從頭暴力實現(3)
機器學習算法-隨機森林之理論概述
隨機森林拖了這么久,終于到實戰了。先分享很多套用于機器學習的多種癌癥表達數據集 https://file.biolab.si/biolab/supp/bi-cancer/projections/。
機器學習算法-隨機森林初探(1)
機器學習 模型評估指標 - ROC曲線和AUC值
機器學習 - 訓練集、驗證集、測試集
機器學習 - 隨機森林手動10 折交叉驗證
一個函數統一238個機器學習R包,這也太贊了吧
基于Caret和RandomForest包進行隨機森林分析的一般步驟 (1)
往期精品(點擊圖片直達文字對應教程)
后臺回復“生信寶典福利第一波”或點擊閱讀原文獲取教程合集
?
(請備注姓名-學校/企業-職務等)
總結
以上是生活随笔為你收集整理的Caret模型训练和调参更多参数解读(2)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 推荐我们在B站的生信程序基础课
- 下一篇: 好奇心、求知欲、理解力一直是我生命里最强