前天下班浏览朋友圈,雪晴数据网转发了一篇译文,大数据工具比较:R 语言和 Spark 谁更胜一筹?,原作者测试了在限定为单机环境下,使用Kaggle提供的手写识别的数据在R和Spark平台
运行不同算法的对比速度,结论有一下几个:主成分分析R要4小时,Spark要10秒逻辑回归:R运行7小时,Spark约5分钟朴素贝叶斯,因为算法太简单,差异不那么巨大(45s和9s)决策树:R完全跑不起来,Spark花20秒在整篇文章作者的测试非常武断,有很多误导观众的信息。R再怎么样也不会如此不济,下面会逐条针对原文做补充。
当然,这里面我还想强调:在使用算法解决问题的过程中,以下几大行为必须纠正(或者叫做流氓法则):不贴源代码,是耍流氓张冠李戴,完全复制,不做任何优化就对比,更是耍流氓不考虑业务场景乱用算法,就是耍流氓不考虑数据形态以及精度要求,拿算法的帽子乱盖,还是耍流氓我们也来玩玩测试首先提供一下我的环境,11年购入的Thinkpad T420,i7-2640M,4核心,8G内存;R版本Windows 64位原生编译版本,未做Blas库的任何优化。在这台玩魔兽现在都有点卡的老爷机上,
以上几个算法在单机版的R平台上测试速度为:主成分分析为 1.64s二分类逻辑回归 5s,多分类逻辑回归为58s决策树使用更高级的GBDT,3s同时为了表明不是流氓,给出代码library(data.table
...
继续阅读
(75)