机器学习算法特点:迭代运算

损失函数最小化训练过程中,在巨大参数空间中迭代寻找最优解

比如:主题模型、回归、矩阵分解、SVM、深度学习

分布式机器学习的挑战:

- 网络通信效率

- 不同节点执行速度不同:加快慢任务

- 容错性

机器学习简介:

数据并行vs模型并行:

数据并行

模型并行

分布式机器学习范型:

其他情形

MPI:容错性差、集群规模小、扩展性低

GPU:目前处理规模中等(6-10GB)

1. 同步范型(严格情形每轮迭代进行数据同步)

快等慢,计算资源浪费;网络通信多

eg:MapReduce迭代计算、BSP模型属于严格同步范型

2. 异步范型(任意时刻读取更新全局参数)

若部分任务迭代严重落后会拉低效果

3. 部分同步范型(主要研究方向)

eg:SSP模型

MapReduce迭代计算模型

BSP(Bulk Synchronous Parallel)计算模型

“桥接模型”:介于纯硬件、纯编程模式之间的模型

许多相关工作已验证BSP模型的健壮性、性能可预测性和可扩展性

优点:

缺点:

资源利用率低、网络通信多、计算效率低

图计算框架也用BSP:比如Pregel、Giraph

SSP(Stale Synchronous Parallel)计算模型

阈值s=0时,SSP退化为BSP同步模型;s=+inf时,SSP演化为完全异步模型

分布式机器学习架构:

MapReduce系列架构:

Cloudera Oryx、Apache Mahout,两者类似。

Spark及MLBase:

Spark

2. MLBase

参数服务器(Parameter Server):

比如:Google能处理百亿参数的深度机器学习框架DistBelief

1. 架构

2. 一致性模型

需要设计新型的参数副本一致性均衡正确性和并发度。往往通过受限的异步并行方式(类似于部分同步并行)

1)时钟界异步并行(Clock-bounded Asynchronous Parallel,CAP)

2)值界异步并行(Value-bounded Asynchronous Parallel,VAP)

不考虑时钟值而是参数的更新积累数值。

也可以集成CAP和VAP。有理论可以证明:对于随机梯度下降等常见机器学习算法,VAP可以保证算法收敛性。

3. SSPTable

《大数据日知录》读书笔记-ch15机器学习:范型与架构的更多相关文章

  1. 一. 数据分片和路由 <<大数据日知录>> 读书笔记

    本章主要讲解大数据下如何做数据分片,所谓分片,即将大量数据分散在不同的节点,同时每个存储节点还要做副本备份. 而一般的抽象分片方法是, 先将数据映射到一个分片空间,这是多对一的关系,即一个数据分片区间 ...

  2. 二. 大数据常用的算法和数据结构 <<大数据日知录>> 读书笔记

    基本上是hash实用的各种举例 布隆过滤器 Bloom Filter 常用来检测某个原色是否是巨量数据集合中的成员,优势是节省空间,不会有漏判(已经存在的数据肯定能够查找到),缺点是有误判(不存在的数 ...

  3. 读&lt;大数据日知录:架构与算法&gt;有感

    前一段时间, 一个老师建议我能够学学 '大数据' 和 '机器学习', 他说这必定是今后的热点, 学会了, 你就是香饽饽.在此之前, 我对大数据, 机器学习并没有非常深的认识, 总觉得它们是那么的缥缈, ...

  4. 《大数据日知录》读书笔记-ch1数据分片与路由

    目前主流大数据存储使用横向扩展(scale out)而非传统数据库纵向扩展(scale up)的方式.因此涉及数据分片.数据路由(routing).数据一致性问题 二级映射关系:key-partiti ...

  5. 《大数据日知录》读书笔记-ch2数据复制与一致性

    CAP理论:Consistency,Availability,Partition tolerance 对于一个分布式数据系统,CAP三要素不可兼得,至多实现其二.要么AP,要么CP,不存在CAP.分布 ...

  6. 《大数据日知录》读书笔记-ch16机器学习:分布式算法

    计算广告:逻辑回归 千次展示收益eCPM(Effective Cost Per Mille) eCPM= CTR * BidPrice 优化算法 训练数据使用:在线学习(online learning ...

  7. 《大数据日知录》读书笔记-ch11大规模批处理系统

    MapReduce: 计算模型: 实例1:单词统计 实例2:链接反转 实例3:页面点击统计 系统架构: 在Map阶段还可以执行可选的Combiner操作,类似于Reduce,但是在Mapper sid ...

  8. 《大数据日知录》读书笔记-ch3大数据常用的算法与数据结构

    布隆过滤器(bloom filter,BF): 二进制向量数据结构,时空效率很好,尤其是空间效率极高.作用:检测某个元素在某个巨量集合中存在. 构造: 查询: 不会发生漏判(false negativ ...

  9. [转载] leveldb日知录

    原文: http://www.cnblogs.com/haippy/archive/2011/12/04/2276064.html 对leveldb非常好的一篇学习总结文章 郑重声明:本篇博客是自己学 ...

随机推荐

  1. jQuary总结7:动画操作,显示与隐藏 淡入淡出, 滑入滑出

    1 jquery提供了三组基本动画,这些动画都是标准的.有规律的效果,jquery还提供了自定义动画的功能. 2 显示与隐藏: show([speed],[easing],[callback]) 显示 ...

  2. [转]ubuntu linux下DNS重启后丢失(不是Network-manager造成的情况)

    从网上得知 /etc/resolv.conf中的DNS配置是从/etc/resolvconf/resolv.conf.d/head中加载而来,所以每回改resolv.conf都会失效,在此文件里面已经 ...

  3. .NET基础 (07)异常的处理

    异常的处理1 如何针对不同的异常进行捕捉2 如何使用Conditional特性3 如何避免类型转换时的异常 异常的处理 1 如何针对不同的异常进行捕捉 C#中一个try块可以有多个catch块,每个c ...

  4. 修改阿里云ECS服务器的系统时区

    1.前提 由于公司有在印尼的项目,所以购买了阿里云在新加坡机房的服务器(在印尼还没有),印尼当地使用的是东七区的时间,所以领导要求修改阿里云ECS系统的时区. 2.动手 修改阿里云ECS服务器系统的时 ...

  5. Tomcat安装JPress

    上线代码有两种方式,第一种方式是直接将程序目录放在webapps目录下面,这种方式大家已经明白了,就不多说了.第二种方式是使用开发工具将程序打包成war包,然后上传到webapps目录下面.下面让我们 ...

  6. memcached整理の编译

    memcached是一个自由&开放源码, 高性能,分布式的内存对象缓存系统. nosql相对于传统关系型数据库的"行与列",NoSQL 的鲜明特点为k-v 存储(memca ...

  7. MIDA Converter Basic patched for RAD Studio 10.1.2 Berlin (VCL转换到FMX)

    Mida is the only way to try to convert your project from VCL to FireMonkey. Version after version, M ...

  8. DELPHI XE5/6/7 android 无线真机调试

    一.下载adbWireless 地址:http://sj.zol.com.cn/detail/41/40834.shtml 安装,需要ROOT权限. 运adbWireless.界面很简单,就一个大按钮 ...

  9. 使用Razor视图引擎来生成邮件内容

    邮件的内容其实是就HTML,传统的做法都是通过在程序中拼接字符串来生成邮件的内容,生成困难,维护也困难.Razor是MVC里面使用的视图引擎,用来生成HTML非常方便,ZKEACMS中就是使用了Raz ...

  10. NOIP simulation

    NOIP 模拟赛Day 1题目名称LGTB 玩扫雷LGTB 学分块LGTB 打THD英文代号mine divide thd时限1 秒1 秒1 秒输入文件mine.in divide.in thd.in ...