Spark2.x管理与开发-Spark MLlib-MLlib概述

Posted on 2020-08-13 17:21  MissRong  阅读(197)  评论(0)    收藏  举报

Spark2.x管理与开发-Spark MLlib-MLlib概述

MLlib是Spark的可以扩展的机器学习库

MLlib概述

Spark在机器学习有得天独厚的优势

double wucha = 1.0

while(wucha >= 0.1){

建模

wucha -= 某个值

}

(1)机器学习算法一般都有很多个步骤迭代计算的过程,机器学习的计算需要在多次迭代后,获得足够小的误差,或者足够收敛才会停止。

迭代时,如果使用MapReduce计算模型,每次都要读写硬盘,会导致非常大的IO消耗和CPU消耗。

而Spark基于内存的计算模型天生就擅长迭代计算,每个步骤直接在内存中完成,只有在必要时,才会操作硬盘和网络。

所以说spark是机器学习比较理想的平台。

(2)从通信的角度讲,MapReduce中JobTracker好TaskTracker之间由于通过heartbeat的方式通信和传递数据,会导致执行速度慢。

spark使用akka netty通信系统,通信效率很高。

Mllib 是spark对常用的机器学习算法实现的库,同时包括相关测试和数据生成器

spark设计的初衷就是为了支持一些迭代的job,这正好符合很多机器学习算法的特点。

博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3