| 作者 |
| [法]阿尔伯特·比费特(Albert Bifet)[西班牙]理查德·戈华达 (Richard Gavaldà)[新西兰] 杰弗里·福尔摩斯(Geoffrey Holmes)[新西兰]伯恩哈德·普法林格(Bernhard Pfahringer)刘铁岩 陈薇 王太峰 高飞 |
| 丛书名 |
| 智能科学与技术丛书 |
| 出版社 |
| 机械工业出版社 |
| ISBN |
| 9781912191114 |
| 简要 |
| 简介 |
| 内容简介书籍计算机书籍 ---------------------------数据流机器学习:MOA实例--------------------------- 这本书首先简要介绍了机器学习的主题,涵盖了大数据挖掘、数据流挖掘的基本方法,以及一个简单的MOA示例。接下来进行更详细的讨论,其中有关于草图技术、变更、分类、集成方法、回归、聚类和频繁模式挖掘的章节。这些章节中的大部分内容包括练习、基于MOA的实验,或者两者都有。最后,本书讨论了MOA软件,涵盖了MOA图形用户界面、命令行、其API的使用以及MOA中新方法的开发。对于那些想要使用数据流挖掘作为工具的读者、数据流挖掘的研究人员,以及想要为MOA创建新算法的程序员来说,这本书将是一个重要的参考。 ---------------------------分布式机器学习:算法、理论与实践--------------------------- 介绍分布式机器学习的现状,深入分析其中的核心技术问题,并且讨论该领域未来的发展方向。 全书共12章。第1章是绪论,向大家展示分布式机器学习这个领域的全景。第2章介绍机器学习的基础知识。第3章到第8章是本书的核心部分,向大家细致地讲解分布式机器学习的框架及其各个功能模块。其中第3章给出整个分布式机器学习框架的综述,而第4章到第8章则分别针对其中的数据与模型划分模块、单机优化模块、通信模块、数据与模型聚合模块加以介绍。接下来的三章是对前面内容的总结与升华。其中第9章介绍由分布式机器学习框架中不同选项所组合出来的各式各样的分布式机器学习算法,第10章讨论这些算法的理论性质,第11章则介绍几个主流的分布式机器学习系统(包括Spark MLlib 迭代式MapReduce系统,Multiverso参数服务器系统,TensorFlow数据流系统)。最后的第12章是全书的结语,在对全书内容进行简要总结之后,着重讨论分布式机器学习这个领域未来的发展方向。 本书基于微软亚洲研究院机器学习研究团队多年的研究成果和实践经验写成,既可以作为研究生从事分布式机器学习方向研究的参考文献,也可以作为人工智能从业者进行算法选择和系统设计的工具书。 人工智能大潮中,市场上已有许多机器学习书籍,但是分布式机器学习的专门书籍还很少见。本书是希望学习和了解分布式机器学习的读者的福音。 |
| 目录 |
---------------------------数据流机器学习:MOA实例--------------------------- 译者序 前言 第一部分 概述 第1章 简介 2 1.1 大数据 2 1.1.1 工具:开源革命 4 1.1.2 大数据带来的挑战 4 1.2 实时分析 6 1.2.1 数据流 6 1.2.2 时间和内存 6 1.2.3 应用一览 6 1.3 关于本书 7 第2章 大数据流挖掘 8 2.1 算法 8 2.2 分类算法 9 2.2.1 如何在数据流中评估分类器 10 2.2.2 多数类分类器 11 2.2.3 无变化分类器 11 2.2.4 惰性分类器 11 2.2.5 朴素贝叶斯分类器 12 2.2.6 决策树分类器 12 2.2.7 集成分类器 13 2.3 回归算法 13 2.4 聚类算法 14 2.5 频繁模式挖掘 14 第3章 MOA的实际操作介绍 16 3.1 入门开始 16 3.2 分类模型的图形用户界面 18 3.3 用命令行操作 23 第二部分 数据流挖掘 第4章 数据流和Sketch数据结构 26 4.1 背景知识:近似算法 27 4.2 集中不等式 28 4.3 取样 30 4.4 统计总数 31 4.5 去重统计 32 4.5.1 线性计数 33 4.5.2 科恩对数计数器 33 4.5.3 Flajolet-Martin计数器和HyperLogLog算法 34 4.5.4 应用:图论的计算距离函数 36 4.5.5 讨论:对数与线性 37 4.6 频率问题 37 4.6.1 SpaceSaving sketch 38 4.6.2 CM-Sketch算法 40 4.6.3 CountSketch算法 42 4.6.4 时刻计算 44 4.7 滑动窗口的指数矩形图 45 4.8 分布式sketch计算的可合并性 47 4.9 一些技术方面的讨论和其他资料 48 4.9.1 哈希函数 48 4.9.2 创建(, )近似算法 49 4.9.3 其他sketch技术 49 4.10 练习 50 第5章 处理变化 52 5.1 数据流中变化的定义 52 5.2 评估器 56 5.2.1 滑动窗口和线性评估器 57 5.2.2 指数加权移动平均评估器 57 5.2.3 单维度卡尔曼滤波器 58 5.3 变化探测 58 5.3.1 评估变化探测 59 5.3.2 CUSUM测试和Page-Hinkley测试 59 5.3.3 统计测试 60 5.3.4 漂移探测法 61 5.3.5 自适应滑动窗口算法 62 5.4 与其他Sketch和多维数据结合 64 5.5 练习 64 第6章 分类 66 6.1 分类器评估 67 6.1.1 误差估算 68 6.1.2 分布评估 69 6.1.3 性能的评估测量 70 6.1.4 统计显著性 72 6.1.5 测量挖掘成本 73 6.2 基线分类器 73 6.2.1 多数类 73 6.2.2 无变化分类器 74 6.2.3 朴素贝叶斯 74 6.2.4 多项式朴素贝叶斯 77 6.3 决策树 78 6.3.1 估算切分标准 79 6.3.2 Hoeffding决策树 80 6.3.3 CVFDT 82 6.3.4 VFDTc和UFFT 83 6.3.5 Hoeffding适应树 84 6.4 处理数字属性 85 6.4.1 VFML 85 6.4.2 穷举二叉树 86 6.4.3 Greenwald和 Khanna的分位数摘要 86 6.4.4 高斯近似 87 6.5 感知器模型 88 6.6 惰性学习 89 6.7 多标签分类器 89 6.8 主动学习 91 6.8.1 随机策略 92 6.8.2 固定不确定策略 93 6.8.3 可变不确定策略 93 6.8.4 随机不确定策略 94 6.9 概念演变 94 6.10 MOA实战操作 95 第7章 集成方法 99 7.1 准确率加权集成 99 7.2 加权多数算法 100 7.3 堆叠算法 102 7.4 装袋算法 102 7.4.1 在线装袋算法 103 7.4.2 装袋算法如何应对数据流变化 103 7.4.3 杠杆装袋算法 103 7.5 提升算法 104 7.6 Hoeffding树集成算法 105 7.6.1 Hoeffding选项树算法 105 7.6.2 随机森林算法 105 7.6.3 有限的Hoeffding树的感知器堆叠 106 7.6.4 自适应大小的Hoeffding树算法 107 7.7 重复性概念 107 7.8 MOA实战操作 108 第8章 回归 110 8.1 什么是回归 110 8.2 如何评估回归 111 8.3 感知器学习 112 8.4 惰性学习 112 8.5 决策树学习 112 8.6 决策规则 113 8.7 MOA中的回归 114 第9章 聚类 115 9.1 聚类的评估方法 116 9.2 k-means算法 117 9.3 BIRCH、BICO和CluStream 118 9.4 基于密度的方法: DBSCAN和Den-Stream 120 9.5 ClusTree 121 9.6 StreamKM++:核心集 122 9.7 延伸阅读 123 9.8 MOA实战操作 124 第10章 频繁模式挖掘 127 10.1 什么是模式挖掘 127 10.1.1 模式的定义和例子 127 10.1.2 频繁模式挖掘的批量算法 129 10.1.3 闭合模式和最大模式 131 10.2 数据流中频繁模式挖掘的方法 131 10.3 如何在数据流中进行频繁项集挖掘 134 10.3.1 简化为高频繁项 134 10.3.2 Moment算法 135 10.3.3 频繁模式数据流算法 135 10.3.4 IncMine算法 136 10.4 数据流的频繁子图挖掘 137 10.4.1 WinGraphMiner框架 138 10.4.2 AdaGraphMiner框架 139 10.5 延伸阅读 140 10.6 练习 141 第三部分 MOA软件 第11章 MOA及其软件体系 144 11.1 MOA架构 145 11.2 安装 145 11.3 MOA的近期发展 145 11.4 MOA扩展包 146 11.5 ADAMS优化 147 11.6 MEKA优化 149 11.7 OpenML环境 150 11.8 StreamDM软件 150 11.9 Streams工具 151 11.10 Apache SAMOA 流媒体ML库 151 第12章 图形用户界面 154 12.1 初识图形用户界面 154 12.2 分类和回归 154 12.2.1 主要任务一览 156 12.2.2 数据源和数据生成器 157 12.2.3 贝叶斯分类器一览 160 12.2.4 决策树一览 160 12.2.5 元分类器(集成)一览 161 12.2.6 函数分类器一览 162 12.2.7 漂移分类器一览 162 12.2.8 主动学习分类器 163 12.3 聚类 163 12.3.1 数据源和数据生成器 163 12.3.2 数据流聚类算法一览 163 12.3.3 如何进行可视化和数据分析 164 第13章 用命令行操作 166 13.1 给分类和回归创建学习任务 166 13.2 给分类和回归创建评估任务 167 13.3 给分类和回归创建学习与评估任务 167 13.4 两种分类器的对比 168 第14章 调用API 170 14.1 MOA对象 170 14.2 选项 170 14.3 示例:先序评估 173 第15章 在MOA中开发新的方法 175 15.1 MOA中的主要类 175 15.2 创建新的分类器 176 15.3 编译分类器 183 15.4 MOA中的良好编程方法 183 参考文献 185 ---------------------------分布式机器学习:算法、理论与实践--------------------------- 序言一 序言二 前 言 作者介绍 第1章 绪论/ 1 1.1 人工智能及其飞速发展/ 2 1.2 大规模、分布式机器学习/ 4 1.3 本书的安排/ 6 参考文献/ 7 第2章 机器学习基础/ 9 2.1 机器学习的基本概念/ 10 2.2 机器学习的基本流程/ 13 2.3 常用的损失函数/ 16 2.3.1 Hinge损失函数/ 16 2.3.2 指数损失函数/ 16 2.3.3 交叉熵损失函数/ 17 2.4 常用的机器学习模型/ 18 2.4.1 线性模型/ 18 2.4.2 核方法与支持向量机/ 18 2.4.3 决策树与Boosting/ 21 2.4.4 神经网络/ 23 2.5 常用的优化方法/ 32 2.6 机器学习理论/ 33 2.6.1 机器学习算法的泛化误差/ 34 2.6.2 泛化误差的分解/ 34 2.6.3 基于容度的估计误差的上界/ 35 2.7 总结/ 36 参考文献/ 36 第3章 分布式机器学习框架/ 41 3.1 大数据与大模型的挑战/ 42 3.2 分布式机器学习的基本流程/ 44 3.3 数据与模型划分模块/ 46 3.4 单机优化模块/ 48 3.5 通信模块/ 48 3.5.1 通信的内容/ 48 3.5.2 通信的拓扑结构/ 49 3.5.3 通信的步调/ 51 3.5.4 通信的频率/ 52 3.6 数据与模型聚合模块/ 53 3.7 分布式机器学习理论/ 54 3.8 分布式机器学习系统/ 55 3.9 总结/ 56 参考文献/ 57 第4章 单机优化之确定性算法/ 61 4.1 基本概述/ 62 4.1.1 机器学习的优化框架/ 62 4.1.2 优化算法的分类和发展历史/ 65 4.2 一阶确定性算法/ 67 4.2.1 梯度下降法/ 67 4.2.2 投影次梯度下降法/ 69 4.2.3 近端梯度下降法/ 70 4.2.4 Frank-Wolfe算法/ 71 4.2.5 Nesterov加速法/ 72 4.2.6 坐标下降法/ 75 4.3 二阶确定性算法/ 75 4.3.1 牛顿法/ 76 4.3.2 拟牛顿法/ 77 4.4 对偶方法/ 78 4.5 总结/ 81 参考文献/ 8 第5章 单机优化之随机算法/ 85 5.1 基本随机优化算法/ 86 5.1.1 随机梯度下降法/ 86 5.1.2 随机坐标下降法/ 88 5.1.3 随机拟牛顿法/ 91 5.1.4 随机对偶坐标上升法/ 93 5.1.5 小结/ 95 5.2 随机优化算法的改进/ 96 5.2.1 方差缩减方法/ 96 5.2.2 算法组合方法/ 100 5.3 非凸随机优化算法/ 101 5.3.1 Ada系列算法/ 102 5.3.2 非凸理论分析/ 104 5.3.3 逃离鞍点问题/ 106 5.3.4 等级优化算法/ 107 5.4 总结/ 109 参考文献/ 109 第6章 数据与模型并行/ 113 6.1 基本概述/ 114 6.2 计算并行模式/ 117 6.3 数据并行模式/ 119 6.3.1 数据样本划分/ 120 6.3.2 数据维度划分/ 123 6.4 模型并行模式/ 123 6.4.1 线性模型/ 123 6.4.2 神经网络/ 127 6.5 总结/ 133 参考文献/ 133 第7章 通信机制/ 135 7.1 基本概述/ 136 7.2 通信的内容/ 137 7.2.1 参数或参数的更新/ 137 7.2.2 计算的中间结果/ 137 7.2.3 讨论/ 138 7.3 通信的拓扑结构/ 139 7.3.1 基于迭代式MapReduce/AllReduce的通信拓扑/ 140 7.3.2 基于参数服务器的通信拓扑/ 142 7.3.3 基于数据流的通信拓扑/ 143 7.3.4 讨论/ 145 7.4 通信的步调/ 145 7.4.1 同步通信/ 146 7.4.2 异步通信/ 147 7.4.3 同步和异步的平衡/ 148 7.4.4 讨论/ 150 7.5 通信的频率/ 150 7.5.1 时域滤波/ 150 7.5.2 空域滤波/ 153 7.5.3 讨论/ 155 7.6 总结/ 156 参考文献/ 156 第8章 数据与模型聚合/ 159 8.1 基本概述/ 160 8.2 基于模型加和的聚合方法/ 160 8.2.1 基于全部模型加和的聚合/ 160 8.2.2 基于部分模型加和的聚合/ 162 8.3 基于模型集成的聚合方法/ 167 8.3.1 基于输出加和的聚合/ 168 8.3.2 基于投票的聚合/ 171 8.4 总结/ 174 参考文献/ 174 第9章 分布式机器学习算法/ 177 9.1 基本概述/ 178 9.2 同步算法/ 179 9.2.1 同步SGD方法/ 179 9.2.2 模型平均方法及其改进/ 182 9.2.3 ADMM算法/ 183 9.2.4 弹性平均SGD算法/ 185 9.2.5 讨论/ 186 9.3 异步算法/ 187 9.3.1 异步SGD/ 187 9.3.2 Hogwild!算法/ 189 9.3.3 Cyclades算法/ 190 9.3.4 带延迟处理的异步算法/ 192 9.3.5 异步方法的进一步加速/ 199 9.3.6 讨论/ 199 9.4 同步和异步的对比与融合/ 199 9.4.1 同步和异步算法的实验对比/ 199 9.4.2 同步和异步的融合/ 201 9.5 模型并行算法/ 203 9.5.1 DistBelief/ 203 9.5.2 AlexNet/ 204 9.6 总结/ 205 参考文献/ 205 第10章 分布式机器学习理论/ 209 10.1 基本概述/ 210 10.2 收敛性分析/ 210 10.2.1 优化目标和算法/ 211 10.2.2 数据和模型并行/ 213 10.2.3 同步和异步/ 215 10.3 加速比分析/ 217 10.3.1 从收敛速率到加速比/ 218 10.3.2 通信量的下界/ 219 10.4 泛化分析/ 221 10.4.1 优化的局限性/ 222 10.4.2 具有更好泛化能力的非凸优化算法/ 224 10.5 总结/ 226 参考文献/ 226 第11章 分布式机器学习系统/ 229 11.1 基本概述/ 230 11.2 基于IMR的分布式机器学习系统/ 231 11.2.1 IMR和Spark/ 231 11.2.2 Spark MLlib/ 234 11.3 基于参数服务器的分布式机器学习系统/ 236 11.3.1 参数服务器/ 236 11.3.2 Multiverso参数服务器/ 237 11.4 基于数据流的分布式机器学习系统/ 241 11.4.1 数据流/ 241 11.4.2 TensorFlow数据流系统/ 243 11.5 实战比较/ 248 11.6 总结/ 252 参考文献/ 252 第12章 结语/ 255 12.1 全书总结/ 256 12.2 未来展望/ 257 索引/ 260 |