kindle电子书

资源下载,尽在我的书库!
首页 > kindle电子书库 > 典藏频道 > 工农林医、科学科普、IT网络

构建实时机器学习系统

  • 作者: 多作者
  • 体积:5.90 MB
  • 语言:中文
  • 日期:2017-12-18
  • 推荐:

简介:重架构、重设计、重实战是本书撰写的指导思想。我们认为优秀的系统设计在于完备的思考和准备,因此本书对计算机编程和机器学习理论只有入门级的要求。

电子书详细介绍

 本书首先利用Pandas对美股秒级交易数据进行分析,利用Scikit-learn对股票变化方向进行预测,并在架构案例中,打造了一个以RabbitMQ为消息传导中枢的实时处理系统,利用Elasticsearch对数据进行实时可视化。

编辑推荐

《构建实时机器学习系统》特点:以全栈机器学习应用为目标
通过介绍Docker等部署工具,帮助读者加速掌握机器学习模型的产业化进程。不管你是就职于大公司,还是自己创业,希望《构建实时机器学习系统》的内容能够让你快速上线满意的机器学习系统,离梦想更近一点。
抓住机器学习主干,远离学院派
世界在变,机器学习也在不停地变。对于机器学习中的很多重要成员,如建模工具、分布式队列等,《构建实时机器学习系统》都会对其来龙去脉和发展趋势进行综述。希望通过这样的讨论,能够让读者对机器学习的发展趋势有自己的判断,在未来的成长中也能独占鳌头。
能读的代码,能跑的例子
《构建实时机器学习系统》力求避免代码的大段堆砌。所有案例代码都力求在20行以内,所有例子都通过多次可用性测试。同时我们也将源代码寄存在Github上面,随时进行更新排错。
实时股票交易实例数据
采用美股交易秒级数据作为案例数据,搭建实时机器学习平台,对数据进行存储、加工分析和可视化,并且对数据未来若干秒的走势进行预测。

作者简介

彭河森,资深机器学习科学家,曾在Google、Amazon、微软等公司从事一线机器学习构架和开发工作,参与了Google实时数据警报、Amazon产品广告自动化优化、微软必应广告等多项海量数据、延时要求苛刻的机器学习应用工作。也参与Scikit—learn、Airflow、R等多项开源项目。对机器学习项目的生存期管理、架构设计、软件开发以及应用关键有着丰富的经验。
汪涵,资深机器学习开发者,曾是Amazon、微软、Quantlab、晨星等公司一线机器学习开发人员,参与了AmazonAB检验服务、微软必应搜索问答系统等多项关键大数据处理和机器学习应用的构架和开发工作。对机器学习、自然语言处理有着深刻的体会。

 

目录

前言
第1部分 实时机器学习方法论
第1章 实时机器学习综述 2
1.1 什么是机器学习 2
1.2 机器学习发展的前世今生 3
1.2.1 历史上机器学习无法调和的难题 3
1.2.2 现代机器学习的新融合 4
1.3 机器学习领域分类 5
1.4 实时是个“万灵丹” 6
1.5 实时机器学习的分类 7
1.5.1 硬实时机器学习 7
1.5.2 软实时机器学习 7
1.5.3 批实时机器学习 8
1.6 实时应用对机器学习的要求 8
1.7 案例:Netflix在机器学习竞赛中学到的经验 9
1.7.1 Netflix 用户信息被逆向工程 9
1.7.2 Netflix 最终胜出者模型无法在生产环境中使用 9
1.8 实时机器学习模型的生存期 10
第2章 实时监督式机器学习 12
2.1 什么是监督式机器学习 12
2.1.1 “江湖门派”对预测模型的
不同看法 13
2.1.2 工业界的学术门派 14
2.1.3 实时机器学习实战的思路 15
2.2 怎样衡量监督式机器学习模型 16
2.2.1 统计量的优秀 16
2.2.2 应用业绩的优秀 20
2.3 实时线性分类器介绍 20
2.3.1 广义线性模型的定义 20
2.3.2 训练线性模型 21
2.3.3 冷启动问题 22
第3章 数据分析工具 Pandas 23
3.1 颠覆 R 的 Pandas 23
3.2 Pandas 的安装 24
3.3 利用 Pandas 分析实时股票报价数据 24
3.3.1 外部数据导入 25
3.3.2 数据分析基本操作 25
3.3.3 可视化操作 26
3.3.4 秒级收盘价变化率初探 28
3.4 数据分析的三个要点 30
3.4.1 不断验证假设 30
3.4.2 全面可视化,全面监控化 30
第4章 机器学习工具 Scikit—learn 31
4.1 如何站在风口上?向Scikit—learn 学习 31
4.1.1 传统的线下统计软件 R 31
4.1.2 底层软件黑盒子 Weka 32
4.1.3 跨界产品 Scikit—learn 33
4.1.4 Scikit—learn的优势 33
4.2 Scikit—learn 的安装 34
4.3 Scikit—learn 的主要模块 35
4.3.1 监督式、非监督式机器学习 35
4.3.2 建模函数fit和predict 36
4.3.3 数据预处理 38
4.3.4 自动化建模预测 Pipeline 39
4.4 利用 Scikit—learn 进行股票价格波动预测 40
4.4.1 数据导入和预处理 41
4.4.2 编写专有时间序列数据预处理模块 41
4.4.3 利用 Pipeline 进行建模 43
4.4.4 评价建模效果 43
4.4.5 引入成交量和高维交叉项进行建模 44
4.4.6 本书没有告诉你的 45
第2部分 实时机器学习架构
第5章 实时机器学习架构设计 48
5.1 设计实时机器学习架构的
四个要点 48
5.2 Lambda 架构和主要成员 49
5.2.1 实时响应层 49
5.2.2 快速处理层 50
5.2.3 批处理层 50
5.3 常用的实时机器学习架构 50
5.3.1 瀑布流架构 50
5.3.2 并行响应架构 51
5.3.3 实时更新模型混合架构 52
5.4 小结 53
第6章 集群部署工具 Docker 55
6.1 Docker 的前世今生 55
6.2 容器虚拟机的基本组成部分 56
6.3 Docker 引擎命令行工具 57
6.3.1 Docker 引擎的安装 57
6.3.2 Docker 引擎命令行的基本操作 58
6.4 通过 Dockerfile 配置容器虚拟机 61
6.4.1 利用 Dockerfile 配置基本容器虚拟机 62
6.4.2 利用 Dockerfile 进行虚拟机和宿主机之间的文件传输 62
6.5 服务器集群配置工具Docker Compose 64
6.5.1 Docker Compose 的安装 64
6.5.2 Docker Compose 的基本操作 64
6.5.3 利用 Docker Compose 创建网页计数器集群 65
6.6 远端服务器配置工具Docker Machine 68
6.6.1 Docker Machine 的安装 68
6.6.2 安装 Oracle VirtualBox 69
6.6.3 创建和管理 VirtualBox中的虚拟机 69
6.6.4 在 Docker Machine 和 VirtualBox的环境中运行集群 70
6.6.5 利用 Docker Machine 在 Digital Ocean 上配置运行集群 71
6.7 其他有潜力的 Docker 工具 73
第7章 实时消息队列和RabbitMQ 74
7.1 实时消息队列 74
7.2 AMQP 和 RabbitMQ 简介 76
7.3 RabbitMQ的主要构成部分 76
7.4 常用交换中心模式 78
7.4.1 直连结构 78
7.4.2 扇形结构 78
7.4.3 话题结构 79
7.4.4 报头结构 79
7.5 消息传导设计模式 79
7.5.1 任务队列 80
7.5.2 Pub/Sub 发布/监听 80
7.5.3 远程命令 81
7.6 利用 Docker 快速部署RabbitMQ 82
7.7 利用 RabbitMQ 开发队列服务 85
7.7.1 准备案例材料 86
7.7.2 实时报价存储服务 86
7.7.3 实时走势预测服务 89
7.7.4 整合运行实验 93
7.7.5 总结和改进 95
第8章 实战数据库综述 98
8.1 SQL 与 NoSQL,主流数据库分类 98
8.1.1 关系型数据库 99
8.1.2 非关系型数据库 NoSQL 99
8.2 数据库的性能 100
8.2.1 耐分割 100
8.2.2 一致性 101
8.2.3 可用性 101
8.2.4 CAP 定理 101
8.3 SQL和NoSQL对比 102
8.3.1 数据存储、读取方式 102
8.3.2 数据库的扩展方式 103
8.3.3 性能比较 103
8.4 数据库的发展趋势 103
8.4.1 不同数据库之间自动化同步更为方便 103
8.4.2 云数据库的兴起 104
8.4.3 底层和应用层多层化 104
8.5 MySQL 简介 105
8.6 Cassandra简介 105
8.6.1 Cassandra交互方式简介 105
8.6.2 利用Docker安装Cassandra 106
8.6.3 使用Cassandra存储数据 106
第9章 实时数据监控 ELK 集群 107
9.1 Elasticsearch、LogStash和Kibana 的前世今生 107
9.1.1 Elasticsearch 的平凡起家 108
9.1.2 LogStash 卑微的起源 108
9.1.3 Kibana 惊艳登场 109
9.1.4 ELK 协同作战 109
9.2 Elasticsearch 基本架构 109
9.2.1 文档 110
9.2.2 索引和文档类型 111
9.2.3 分片和冗余 112
9.2.4 Elasticsearch 和数据库进行比较 113
9.3 Elasticsearch 快速入门 113
9.3.1 用 Docker 运行 Elasticsearch 容器虚拟机 113
9.3.2 创建存储文档、文档类型和索引 114
9.3.3 搜索文档 117
9.3.4 对偶搜索 120
9.4 Kibana 快速入门 124
9.4.1 利用 Docker 搭建ELK 集群 125
9.4.2 配置索引格式 127
9.4.3 交互式搜索 128
9.4.4 可视化操作 129
9.4.5 实时检测面板 132
第10章 机器学习系统设计模式 134
10.1 设计模式的前世今生 134
10.1.1 单机设计模式逐渐式微 134
10.1.2 微服务取代设计模式的示例 135
10.1.3 微服务设计模式的兴起 137
10.2 读:高速键值模式 137
10.2.1 问题场景 137
10.2.2 解决方案 138
10.2.3 其他使用场景 139
10.3 读:缓存高速查询模式 139
10.3.1 问题场景 139
10.3.2 解决方案 139
10.3.3 适用场景 141
10.4 更新:异步数据库更新模式 141
10.4.1 问题场景 141
10.4.2 解决方案 141
10.4.3 使用场景案例 142
10.5 更新:请求重定向模式 144
10.5.1 问题场景 144
10.5.2 解决方案 144
10.5.3 更新流程 145
10.5.4 使用场景案例 146
10.6 处理:硬实时并行模式 146
10.6.1 问题场景 146
10.6.2 解决方案 147
10.6.3 使用场景案例 147
10.7 处理:分布式任务队列模式 148
10.7.1 问题场景 148
10.7.2 解决方案 149
10.7.3 Storm 作为分布式任务队列 150
10.7.4 适用场景 151
10.7.5 结构的演进 152
10.8 处理:批实时处理模式 152
10.8.1 问题场景 152
10.8.2 解决方案 152
10.8.3 适用场景 153
第3部分 未来展望
第11章 Serverless 架构 156
11.1 Serverless 架构的前世今生 156
11.2 Serverless 架构对实时
机器学习的影响 157
第12章 深度学习的风口 159
12.1 深度学习的前世今生 159
12.2 深度学习的难点 161
12.3 如何选择深度学习工具 161
12.3.1 与现有编程平台、技能整合的难易程度 162
12.3.2 此平台除做深度学习之外,还能做什么 163
12.3.3 深度学习平台的成熟程度 164
12.4 未来发展方向 165

我来说两句

本书评论

共有 0 条评论
图书分类
我的书库手机端
帮助中心
会员登录 ×
新用户注册 ×