Spark MLlib 算法系列之 LR

Spark MLlib 介绍

Spark之所以在机器学习方面具有得天独厚的优势,有以下几点原因:

(1)机器学习算法一般都有很多个步骤迭代计算的过程,机器学习的计算需要在多次迭代后获得足够小的误差或者足够收敛才会停止,迭代时如果使用 Hadoop 的 MapReduce 计算框架,每次计算都要读/写磁盘以及任务的启动等工作,这回导致非常大的 I/O 和 CPU 消耗。而 Spark 基于内存的计算模型天生就擅长迭代计算,多个步骤计算直接在内存中完成,只有在必要时才会操作磁盘和网络,所以说 Spark 正是机器学习的理想的平台。

(2)从通信的角度讲,如果使用 Hadoop 的 MapReduce 计算框架,JobTracker 和 TaskTracker 之间由于是通过 heartbeat 的方式来进行的通信和传递数据,会导致非常慢的执行速度,而 Spark 具有出色而高效的 Akka 和 Netty 通信系统,通信效率极高。

MLlib(Machine Learnig lib) 是 Spark 对常用的机器学习算法的实现库,同时包括相关的测试和数据生成器。Spark 的设计初衷就是为了支持一些迭代的 Job, 这正好符合很多机器学习算法的特点。MLlib 目前支持 4 种常见的机器学习问题: 分类、回归、聚类和协同过滤,MLlib 在 Spark 整个生态系统中的位置如图下图所示。

笔者希望将上述几类算法进行整理,完成 Spark MLlib 一个系列的算法介绍,供大家一起分享参考,作者才疏学浅,资料里难免出现错误,如有发现请不吝指正,谢谢!

参考文献:

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

编辑于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏人工智能头条

实战Google深度学习框架:TensorFlow计算加速

2505

Apache Spark中使用DataFrame的统计和数学函数

我们在Apache Spark 1.3版本中引入了DataFrame功能, 使得Apache Spark更容易用. 受到R语言和Python中数据框架的启发, ...

1.2K6
来自专栏IT派

TOP20你用了几个?Python人工智能与机器学习开源项目

相对于2016年的报告,2018年《Top 20 Python AI and Machine Learning projects on Github》报告主...

852
来自专栏yl 成长笔记

相似图像搜索从训练到服务全过程

最近完成了一个以图搜图的项目,项目总共用时三个多月。记录一下项目中用到机器学习的地方,以及各种踩过的坑。

1233
来自专栏新智元

【重磅】Jeff Dean等提出自动化分层模型,优化CPU、GPU等异构环境,性能提升超 60%

谷歌大脑Jeff Dean等人最新提出一种分层模型,这是一种灵活的端到端方法,用于优化CPU、GPU等的自动化设备配置。该方法在多个主要神经网络模型上测...

2977
来自专栏CSDN技术头条

基于Hadoop集群的大规模分布式深度学习

前言 在过去的十年里,Yahoo一直持续投资建设和扩展Apache Hadoop集群,到目前为止共有超过4万台服务器和600PB数据分布在19个集群上。正如在2...

19210
来自专栏人工智能头条

雅虎开源CaffeOnSpark:基于Hadoop/Spark的分布式深度学习

1205
来自专栏FreeBuf

基于大数据和机器学习的Web异常参数检测系统Demo实现

前 言 如何在网络安全领域利用数据科学解决安全问题一直是一个火热的话题,讨论算法和实现的文章也不少。前段时间看到楚安的文章《数据科学在Web威胁感知中的应...

2448
来自专栏深度学习之tensorflow实战篇

pangrank算法--PageRank算法并行实现

前言 Google通过PageRank算法模型,实现了对全互联网网页的打分。但对于海量数据的处理,在单机下是不可能实现,所以如何将PageRank并行计算,将是...

2814
来自专栏YG小书屋

Query Auto Completion自动完成查询(一)

当我们用搜索引擎或其他工具搜索内容时,输入框下方的提示内容会根据你的输入进行调整展示。这个过程我们称之为Query Auto Completion(QAC)。用...

721

扫码关注云+社区