| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 人工智能 -> 利用R语言Tidymodel包,对随机森林R语言实现 -> 正文阅读 |
|
[人工智能]利用R语言Tidymodel包,对随机森林R语言实现 |
? 本人也是才学习tidymodel包,运用其中的随机森林引擎,完成随机森林算法的R语言实现。 数据简介本文利用的数据是随机数据,只是为了实现运行的“工具人数据罢了”,如果想进一步印证代码,可以在下方下载我的数据,不过没必要其实~ 不多废话,直接上代码,我也是在学习,代码仅供参考,肯定不够完善,可以提出宝贵的建议,感谢。 随机森林R语言实现再重申一下,完全可以用R自带的randomForest包实现,但是本文只用tidymodel实现。除此之外,建议读者自行了解下tibble数据科学类型。
导入数据集并划分训练集和测试集
这里我要着重强调 ? transform(V12 = factor(V12))%>% ? #注意类别那一栏的数据一定是factor类型,并且不能只用as_tibble来转换,因为as_tibble只能转单个数据,但是不能直接转整列,很关键,否则后面的函数有报错。 创建食谱
建立模型
这里顺便教一下,怎么查看tidymodel支持的算法,并且直接使用包里的标准代码 1.addins -选择Generate parship model specifications ?2.选择需要的算法模型 比如我选的随机森林后,点击下方绿色按钮就会生成 ?rand_forest_randomForest_spec <- 其中mtry = tune(), min_n = tune()两个参数需要后面经过调参确定,不过随机森林主要的参数我用的是mtry和trees 建立工作流
交叉验证
??交叉验证不是本文的主要内容,读者可以自行学习哈,这里我设置的五折 调参
?这里注意的是level的参数,这是为了让机器估计最优的mtry和trees的组合。 ? ? ? ? ? 如图所示,依照这样的组合,总共会计算5*6=3次,估计最优的mtry和trees组合,tidymodel比较方便的是,程序会自己寻找最优的组合,不需要我们自己查看,不过也能自己查看。
?这是计算的每个组合的AUC值和accura值,画出的折线图,要是想自己查看准确数值,
?以下就是我说的程序识别最优的组合,
?可以看到有五个组合都是相近的,我认为程序或许进一步会根据标准误的大小从这五个选择一个。 拟合模型
没啥说的,引入工作流,然后再导入刚才选好的参数,对训练集进行分类。 预测并且评估模型
?评估模型可以看到,模型是由75%的准确率的,大概就是这样啦。 应用模型对需要分类的数据分类
?把结果保存到excel方便查看。 小结大概就是这么个过程,有问题欢迎提问,不过我也刚接触,读者可以多查查,然后一起交流,感谢~数据和结果可以自己下载。 分享一个学习tidymodel的网站,好像是作者团队的。Tidymodels |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/27 2:30:17- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |