⚡ 编程实验室🏗️ HTML🎨 CSS⚡ JavaScript🐍 Python🗄️ SQL☕ Java⚛️ React💚 Vue🟢 Node.js⚙️ C语言🐘 PHP🐹 Go🔷 TypeScript🐬 MySQL🔧 C++🎯 C#🦀 Rust🅱️ Bootstrap💡 jQuery🎸 Django🍃 MongoDB👗 Sass🎪 Kotlin📊 R语言📋 XML📊 Excel🐘 PostgreSQL🐳 Docker🅰️ Angular🎮 游戏🏠 网站首页

R随机森林

使用randomForest包构建随机森林模型,进行特征重要性评估与调参 · 难度:入门 · +15XP

随机森林:集成学习的利器

随机森林由多棵决策树组成,每棵树在随机子集上训练,最终通过投票(分类)或平均(回归)得到结果,有效降低过拟合。

1. 加载包与数据

library(randomForest)
data(iris)
set.seed(42)

2. 训练随机森林

rf_model <- randomForest(Species ~ ., data=iris, ntree=100, mtry=2)
print(rf_model)

3. 特征重要性

importance(rf_model)
varImpPlot(rf_model, main='特征重要性')

4. 预测与混淆矩阵

pred_rf <- predict(rf_model, iris)
table(pred_rf, iris$Species)

5. 调参:寻找最优mtry

tune_result <- tuneRF(iris[,1:4], iris$Species, ntreeTry=100, stepFactor=1.5)
print(tune_result)

随机森林关键参数:

参数说明
ntree树的数目,越大越稳定
mtry每个节点随机选择的特征数
importance是否计算特征重要性

练习提示:mtcars数据集用随机森林回归mpg,查看特征重要性并绘图。

Ctrl+Enter
🚀 升级VIP
解锁全部课程+AI助手

🏆 学习排行

加载中...

📊 统计

📖 71 篇
0 完成
🔥 0