使用doSMP和foreach的并行随机森林大大增加了内存使用量(在Windo
发布时间:2020-12-14 04:23:08 所属栏目:Windows 来源:网络整理
导读:当串行执行随机森林时,它在我的系统上使用8GB的RAM,当并行执行它时,它使用超过两倍的RAM(18GB).如果并行执行此操作,如何将其保持在8GB?这是代码: install.packages('foreach')install.packages('doSMP')install.packages('randomForest')library('foreach'
当串行执行随机森林时,它在我的系统上使用8GB的RAM,当并行执行它时,它使用超过两倍的RAM(18GB).如果并行执行此操作,如何将其保持在8GB?这是代码:
install.packages('foreach') install.packages('doSMP') install.packages('randomForest') library('foreach') library('doSMP') library('randomForest') NbrOfCores <- 8 workers <- startWorkers(NbrOfCores) # number of cores registerDoSMP(workers) getDoParName() # check name of parallel backend getDoParVersion() # check version of parallel backend getDoParWorkers() # check number of workers #creating data and setting options for random forests #if your run this please adapt it so it won't crash your system! This amount of data uses up to 18GB of RAM. x <- matrix(runif(500000),100000) y <- gl(2,50000) #options set.seed(1) ntree=1000 ntree2 <- ntree/NbrOfCores gc() #running serialized version of random forests system.time( rf1 <- randomForest(x,y,ntree = ntree)) gc() #running parallel version of random forests system.time( rf2 <- foreach(ntree = rep(ntree2,8),.combine = combine,.packages = "randomForest") %dopar% randomForest(x,ntree = ntree))
首先,SMP将复制输入,以便每个进程都可以获得自己的副本.这可以通过使用多核来转义,但还有另一个问题 – 每次调用randomForest也会生成输入的内部副本.
最好的做法是通过使randomForest删除森林模型本身(使用keep.forest = FALSE)并进行测试以及训练(使用xtest和可能的ytest参数)来减少一些用法. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- Windows上的奇怪Python错误,在调试器下工作
- dll – RegAsm – / codebase选项何时适用?
- 在Windows Azure中部署WebApi的位置:作为网站还是作为云服
- 使用SOS.dll进行事后验证.NET调试
- windows-server-2012 – windows server 2012解决方案与vga
- wpf – 如何在Window 8存储应用程序中访问Parent的DataCont
- Windows NNTP服务器软件
- dll – 为什么Xamarin.Android会重新映射汇编请求?
- netcore开发windows普通服务(非Web)并一键发布到服务器
- .net – 无法保存applicationHost.config文件
推荐文章
站长推荐
- .net – 如何绘制水平线并居中?
- 应用程序无法正常启动0xc000007b解决方法
- windows-server-2012 – 当用户的UPN后缀在Activ
- Windows上的PostgreSQL Stack Builder安装代理设
- 在Microsoft技术堆栈上构建SOA
- 在WiX中的对话框(InstallUISequence)之间插入自定
- 在Windows MVC 3中将JSON反序列化为没有默认构造
- Xamarin 学习笔记 - 配置环境(Windows & iOS
- .net – 我将如何执行WPF Windows应用程序的许可
- ESP-EYE V2.1 开发板 WINDOWS 10下上手过程
热点阅读