作者celestialgod (天)
看板R_Language
標題[分享] R的parallel套件 (snow, foreach)
時間Sat Nov 26 15:33:30 2016
[關鍵字]: foreach, snow, snowfall
[出處]:
http://chingchuan-chen.github.io/posts/2016/11/26/R-parallel-pkgs
[重點摘要]:
有些程式不能全部靠RcppParallel加速
所以想說只能靠R的一些平行套件來解決
但是平行套件其實不少,那哪一個又有比較好的performance?
有興趣可以到出處網址去看
--
R資料整理套件系列文:
magrittr #1LhSWhpH (R_Language) https://goo.gl/OBto1x
data.table #1LhW7Tvj (R_Language) https://goo.gl/QFtp17
dplyr(上.下) #1LhpJCfB,#1Lhw8b-s (R_Language) https://goo.gl/GcfNoP
tidyr #1Liqls1R (R_Language) https://goo.gl/pcq5nq
pipeR #1NXESRm5 (R_Language) https://goo.gl/cDIzTh
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 36.235.43.180
※ 文章網址: https://webptt.com/m.aspx?n=bbs/R_Language/M.1480145613.A.F57.html
1F:推 sxskr1001: 感謝版大的資源,不知是否有推薦的GPU套件介紹,謝謝! 11/26 21:22
2F:推 sxskr1001: 結果發現版大的網站裡有介紹,當我沒問XD 11/26 21:26
3F:→ f496328mm: 之前用snow+apply家族做平行 是還不錯 11/26 22:21
4F:→ f496328mm: 不過發現dplyr更強 主要是很多好用的函數 11/26 22:22
5F:推 f496328mm: 想問問看 學到最後是不是還是要用 C++ 11/26 22:26
6F:→ f496328mm: 因為速度快超多 看很多快速的套件都是用C++ 寫 11/26 22:27
7F:→ f496328mm: 目前建model 做預測 找到一個套件 可以cpu效能全開 11/26 22:28
dplyr 跟 plyr 要處理的問題不太一樣
dplyr會比較偏重在data.frame上
plyr則是任意資料類型,dplyr也是單線程在做
在一些case下,plyr::dlply + rbindlist會比 dplyr, data.table快上不少
但是這也是要depends on 資料量
至於C++,則是看你有沒有能力刻出演算法而決定
如果可以,當然用C++做加速是一個不錯的方案
中間還包含你要去學C++語法,使用Rcpp相關套件的時間付出
對於有些人來說不是那麼合算下,可以不去考慮
有些人可能需要學個半年C++才刻的出比用R還快的演算法來使用,這部分很難講...
所以你如果真的有遇到程式效率問題,就嘗試花時間去碰C++
看怎麼用C++去解決你的效率問題吧
至於multi-core建模,現在h2o滿方便,試試看用那個應該就能解決很多問題了
8F:推 f496328mm: 第一次聽到h2o google之後 感覺是蠻強大的套件 11/26 23:38
9F:→ f496328mm: 我目前是用xgboost建model 11/26 23:38
10F:推 f496328mm: 大大有用過h2o嗎? 稍微看一些別人的介紹 11/26 23:44
11F:→ f496328mm: 感覺超強大 包含幾乎所有machine learning algorithm 11/26 23:45
有用過,我就是用了覺得還不錯,才會寫上來XD
※ 編輯: celestialgod (36.235.43.180), 11/27/2016 03:07:09
12F:推 cywhale: 平常也都是snow or foreach, 看來也可用snowfall 謝分享~ 11/27 07:51
13F:→ f496328mm: 改天來玩玩h2o好了 既然大大這麼推 11/27 09:34
14F:推 clansoda: 我個人的感覺是他的演算法比R裡面泛用的package有優化過 11/27 10:01
15F:→ clansoda: 不管是regression還是classification的效果都比較好 11/27 10:02
16F:推 f496328mm: 這麼強啊,那我真的要試試看了,如果能增加model準確率 11/27 12:18
17F:→ f496328mm: 就太棒啦 11/27 12:18
18F:→ clansoda: 些微增加拉= = 重點還是對的feature吧XDD 11/27 12:40
19F:推 f496328mm: 現在已經找到一些重要feature了 還在試著找其他變數 11/27 14:47
20F:→ f496328mm: 離目標只差不到0.05的準確度 所以有進步就是好事 11/27 14:48
21F:→ f496328mm: fitting到最後 差距就只是幾個百分比而已 11/27 14:50
22F:推 JX660: 感謝分享資訊 h2o 看起來值得研究 11/27 18:04
23F:推 f496328mm: 結果這篇變成h2o了XD 11/27 18:39