注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計算機/網(wǎng)絡(luò)人工智能構(gòu)建實時機器學(xué)習(xí)系統(tǒng)

構(gòu)建實時機器學(xué)習(xí)系統(tǒng)

構(gòu)建實時機器學(xué)習(xí)系統(tǒng)

定 價:¥59.00

作 者: 彭河森,汪涵 著
出版社: 機械工業(yè)出版社
叢編項:
標(biāo) 簽: 暫缺

ISBN: 9787111575573 出版時間: 2017-09-01 包裝: 平裝
開本: 16開 頁數(shù): 字?jǐn)?shù):  

內(nèi)容簡介

  本書是國內(nèi)少有的從系統(tǒng)構(gòu)架角度介紹機器學(xué)習(xí)應(yīng)用的圖書,總結(jié)了筆者多年來在Google、微軟工作中積累的精華。書中內(nèi)容可以從工具、理論和案例三條線路來概括:工具方面,除了數(shù)據(jù)分析工具Pandas、機器學(xué)習(xí)工具Scikit Learn和Docker以外,還介紹了RabbitMQ、Elasticsearch,以及MySQL、Cassandra數(shù)據(jù)庫等。理論方面,不僅介紹了監(jiān)督式機器學(xué)習(xí)基礎(chǔ)、衡量和評價方法,機器學(xué)習(xí)的常見構(gòu)架,還在本書末尾對機器學(xué)習(xí)構(gòu)架的設(shè)計模式進行了總結(jié),這樣的總結(jié)也屬國內(nèi)外業(yè)界首創(chuàng)。案例方面,采用美股交易秒級數(shù)據(jù)作為案例數(shù)據(jù),利用Pandas對秒級交易數(shù)據(jù)進行分析,利用Scikit Learn對股票變化方向進行預(yù)測,還打造了一個以RabbitMQ為消息傳導(dǎo)中樞的實時處理系統(tǒng)。

作者簡介

  彭河森,資深機器學(xué)習(xí)科學(xué)家,曾在Google、Amaz*n、微軟等公司從事一線機器學(xué)習(xí)構(gòu)架和開發(fā)工作,參與了Google實時數(shù)據(jù)警報、Amazo*產(chǎn)品廣告自動化優(yōu)化、微軟必應(yīng)廣告等多項海量數(shù)據(jù)、延時要求苛刻的機器學(xué)習(xí)應(yīng)用工作。也參與Scikit-learn、Airflow、R等多項開源項目。對機器學(xué)習(xí)項目的生存期管理、架構(gòu)設(shè)計、軟件開發(fā)以及應(yīng)用關(guān)鍵有著豐富的經(jīng)驗。汪涵,資深機器學(xué)習(xí)開發(fā)者,曾是Amaz*n、微軟、Quantlab、晨星等公司一線機器學(xué)習(xí)開發(fā)人員,參與了Amazo*AB檢驗服務(wù)、微軟必應(yīng)搜索問答系統(tǒng)等多項關(guān)鍵大數(shù)據(jù)處理和機器學(xué)習(xí)應(yīng)用的構(gòu)架和開發(fā)工作。對機器學(xué)習(xí)、自然語言處理有著深刻的體會。

圖書目錄

前 言
第1部分 實時機器學(xué)習(xí)方法論
第1章 實時機器學(xué)習(xí)綜述 2
1.1 什么是機器學(xué)習(xí) 2
1.2 機器學(xué)習(xí)發(fā)展的前世今生 3
1.2.1 歷史上機器學(xué)習(xí)無法調(diào)和的難題 3
1.2.2 現(xiàn)代機器學(xué)習(xí)的新融合 4
1.3 機器學(xué)習(xí)領(lǐng)域分類 5
1.4 實時是個“萬靈丹” 6
1.5 實時機器學(xué)習(xí)的分類 7
1.5.1 硬實時機器學(xué)習(xí) 7
1.5.2 軟實時機器學(xué)習(xí) 7
1.5.3 批實時機器學(xué)習(xí) 8
1.6 實時應(yīng)用對機器學(xué)習(xí)的要求 8
1.7 案例:Netflix在機器學(xué)習(xí)競賽中學(xué)到的經(jīng)驗 9
1.7.1 Netflix 用戶信息被逆向工程 9
1.7.2 Netflix 最終勝出者模型無法在生產(chǎn)環(huán)境中使用 9
1.8 實時機器學(xué)習(xí)模型的生存期 10
第2章 實時監(jiān)督式機器學(xué)習(xí) 12
2.1 什么是監(jiān)督式機器學(xué)習(xí) 12
2.1.1 “江湖門派”對預(yù)測模型的
不同看法 13
2.1.2 工業(yè)界的學(xué)術(shù)門派 14
2.1.3 實時機器學(xué)習(xí)實戰(zhàn)的思路 15
2.2 怎樣衡量監(jiān)督式機器學(xué)習(xí)模型 16
2.2.1 統(tǒng)計量的優(yōu)秀 16
2.2.2 應(yīng)用業(yè)績的優(yōu)秀 20
2.3 實時線性分類器介紹 20
2.3.1 廣義線性模型的定義 20
2.3.2 訓(xùn)練線性模型 21
2.3.3 冷啟動問題 22
第3章 數(shù)據(jù)分析工具 Pandas 23
3.1 顛覆 R 的 Pandas 23
3.2 Pandas 的安裝 24
3.3 利用 Pandas 分析實時股票報價數(shù)據(jù) 24
3.3.1 外部數(shù)據(jù)導(dǎo)入 25
3.3.2 數(shù)據(jù)分析基本操作 25
3.3.3 可視化操作 26
3.3.4 秒級收盤價變化率初探 28
3.4 數(shù)據(jù)分析的三個要點 30
3.4.1 不斷驗證假設(shè) 30
3.4.2 全面可視化,全面監(jiān)控化 30
第4章 機器學(xué)習(xí)工具 Scikit-learn 31
4.1 如何站在風(fēng)口上?向Scikit-learn 學(xué)習(xí) 31
4.1.1 傳統(tǒng)的線下統(tǒng)計軟件 R 31
4.1.2 底層軟件黑盒子 Weka 32
4.1.3 跨界產(chǎn)品 Scikit-learn 33
4.1.4 Scikit-learn的優(yōu)勢 33
4.2 Scikit-learn 的安裝 34
4.3 Scikit-learn 的主要模塊 35
4.3.1 監(jiān)督式、非監(jiān)督式機器學(xué)習(xí) 35
4.3.2 建模函數(shù)fit和predict 36
4.3.3 數(shù)據(jù)預(yù)處理 38
4.3.4 自動化建模預(yù)測 Pipeline 39
4.4 利用 Scikit-learn 進行股票價格波動預(yù)測 40
4.4.1 數(shù)據(jù)導(dǎo)入和預(yù)處理 41
4.4.2 編寫專有時間序列數(shù)據(jù)預(yù)處理模塊 41
4.4.3 利用 Pipeline 進行建模 43
4.4.4 評價建模效果 43
4.4.5 引入成交量和高維交叉項進行建模 44
4.4.6 本書沒有告訴你的 45
第2部分 實時機器學(xué)習(xí)架構(gòu)
第5章 實時機器學(xué)習(xí)架構(gòu)設(shè)計 48
5.1 設(shè)計實時機器學(xué)習(xí)架構(gòu)的
四個要點 48
5.2 Lambda 架構(gòu)和主要成員 49
5.2.1 實時響應(yīng)層 49
5.2.2 快速處理層 50
5.2.3 批處理層 50
5.3 常用的實時機器學(xué)習(xí)架構(gòu) 50
5.3.1 瀑布流架構(gòu) 50
5.3.2 并行響應(yīng)架構(gòu) 51
5.3.3 實時更新模型混合架構(gòu) 52
5.4 小結(jié) 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 服務(wù)器集群配置工具Docker Compose 64
6.5.1 Docker Compose 的安裝 64
6.5.2 Docker Compose 的基本操作 64
6.5.3 利用 Docker Compose 創(chuàng)建網(wǎng)頁計數(shù)器集群 65
6.6 遠(yuǎn)端服務(wù)器配置工具Docker Machine 68
6.6.1 Docker Machine 的安裝 68
6.6.2 安裝 Oracle VirtualBox 69
6.6.3 創(chuàng)建和管理 VirtualBox中的虛擬機 69
6.6.4 在 Docker Machine 和 VirtualBox的環(huán)境中運行集群 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的主要構(gòu)成部分 76
7.4 常用交換中心模式 78
7.4.1 直連結(jié)構(gòu) 78
7.4.2 扇形結(jié)構(gòu) 78
7.4.3 話題結(jié)構(gòu) 79
7.4.4 報頭結(jié)構(gòu) 79
7.5 消息傳導(dǎo)設(shè)計模式 79
7.5.1 任務(wù)隊列 80
7.5.2 Pub/Sub 發(fā)布/監(jiān)聽 80
7.5.3 遠(yuǎn)程命令 81
7.6 利用 Docker 快速部署RabbitMQ 82
7.7 利用 RabbitMQ 開發(fā)隊列服務(wù) 85
7.7.1 準(zhǔn)備案例材料 86
7.7.2 實時報價存儲服務(wù) 86
7.7.3 實時走勢預(yù)測服務(wù) 89
7.7.4 整合運行實驗 93
7.7.5 總結(jié)和改進 95
第8章 實戰(zhàn)數(shù)據(jù)庫綜述 98
8.1 SQL 與 NoSQL,主流數(shù)據(jù)庫分類 98
8.1.1 關(guān)系型數(shù)據(jù)庫 99
8.1.2 非關(guān)系型數(shù)據(jù)庫 NoSQL 99
8.2 數(shù)據(jù)庫的性能 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 數(shù)據(jù)存儲、讀取方式 102
8.3.2 數(shù)據(jù)庫的擴展方式 103
8.3.3 性能比較 103
8.4 數(shù)據(jù)庫的發(fā)展趨勢 103
8.4.1 不同數(shù)據(jù)庫之間自動化同步更為方便 103
8.4.2 云數(shù)據(jù)庫的興起 104
8.4.3 底層和應(yīng)用層多層化 104
8.5 MySQL 簡介 105
8.6 Cassandra簡介 105
8.6.1 Cassandra交互方式簡介 105
8.6.2 利用Docker安裝Cassandra 106
8.6.3 使用Cassandra存儲數(shù)據(jù) 106
第9章 實時數(shù)據(jù)監(jiān)控 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 協(xié)同作戰(zhàn) 109
9.2 Elasticsearch 基本架構(gòu) 109
9.2.1 文檔 110
9.2.2 索引和文檔類型 111
9.2.3 分片和冗余 112
9.2.4 Elasticsearch 和數(shù)據(jù)庫進行比較 113
9.3 Elasticsearch 快速入門 113
9.3.1 用 Docker 運行 Elasticsearch 容器虛擬機 113
9.3.2 創(chuàng)建存儲文檔、文檔類型和索引 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章 機器學(xué)習(xí)系統(tǒng)設(shè)計模式 134
10.1  設(shè)計模式的前世今生 134
10.1.1 單機設(shè)計模式逐漸式微 134
10.1.2 微服務(wù)取代設(shè)計模式的示例 135
10.1.3 微服務(wù)設(shè)計模式的興起 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 更新:異步數(shù)據(jù)庫更新模式 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 處理:分布式任務(wù)隊列模式 148
10.7.1 問題場景 148
10.7.2 解決方案 149
10.7.3 Storm 作為分布式任務(wù)隊列 150
10.7.4 適用場景 151
10.7.5 結(jié)構(gòu)的演進 152
10.8 處理:批實時處理模式 152
10.8.1 問題場景 152
10.8.2 解決方案 152
10.8.3 適用場景 153
第3部分 未來展望
第11章 Serverless 架構(gòu) 156
11.1 Serverless 架構(gòu)的前世今生 156
11.2 Serverless 架構(gòu)對實時
機器學(xué)習(xí)的影響 157
第12章 深度學(xué)習(xí)的風(fēng)口 159
12.1 深度學(xué)習(xí)的前世今生 159
12.2 深度學(xué)習(xí)的難點 161
12.3 如何選擇深度學(xué)習(xí)工具 161
12.3.1 與現(xiàn)有編程平臺、技能整合的難易程度 162
12.3.2 此平臺除做深度學(xué)習(xí)之外,還能做什么 163
12.3.3 深度學(xué)習(xí)平臺的成熟程度 164
12.4 未來發(fā)展方向 165

本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) www.dappsexplained.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號