場景化機器學習 Machine Learning for Business: Using Amazon Sagemaker and Jupyter

Doug Hudgeon,Richard Nichol 範東來譯

  • 場景化機器學習-preview-1
  • 場景化機器學習-preview-2
場景化機器學習-preview-1

買這商品的人也買了...

商品描述

本書展示瞭如何在業務場景中應用機器學習,以使業務流程更快、更靈活地適應變化。
本書分為三個部分。
第一部分介紹有效的決策如何幫助公司提高生產率以保持競爭力,
闡釋如何使用開源工具和AWS工具將機器學習應用於業務決策中。
第二部分以虛擬人物為主線,研究六個場景,這些場景展示瞭如何使用機器學習來制定各種業務決策。
第三部分討論如何在Web上設置和共享機器學習模型,以便公司使用機器學習進行決策,
還介紹了一些案例,表明公司如何應對使用機器學習進行決策時所帶來的變化。

作者簡介

Doug Hudgeon

業務自動化專家,Managed Functions公司CEO,擅長釐清並簡化複雜的業務流程,
能夠將信息技術、財務和運營結合在一起,創造穩健高效的運營體系,
在幫助公司實現數字化轉型和組建機器學習團隊等方面擁有豐富的經驗。

Richard Nichol

Faethm公司數據科學部門負責人,在信息通信技術、金融、交通運輸等領域具有豐富的經驗,
擅長通過機器學習技術挖掘數據的商業價值,從而幫助公司大幅提高生產率。


【譯者簡介】
範東來

Spark Contributor,大數據架構師,著有《Spark海量數據處理:技術詳解與平台實戰》
《Hadoop海量數據處理:技術詳解與項目實戰》,譯有《解讀NoSQL》《神經網絡算法與實現:基於Java語言》等。

目錄大綱

第 一部分 場景化機器學習
第 1章 機器學習如何應用於業務 2
1.1 為什麽我們的業務系統如此糟糕 3
1.2 為什麽如今自動化很重要 5
1.2.1 什麽是生產率 6
1.2.2 機器學習如何提高生產率 6
1.3 機器如何做出決策 7
1.3.1 人:是否基於規則 7
1.3.2 你能相信一個基於模式的答案嗎 8
1.3.3 機器學習如何能提升你的業務系統 8
1.4 機器能幫Karen做決策嗎 9
1.4.1 目標變量 10
1.4.2 特徵 10
1.5 機器如何學習 10
1.6 在你的公司落實使用機器學習進行決策 13
1.7 工具 14
1.7.1 AWS和SageMaker是什麽,它們如何幫助你 14
1.7.2 Jupyter筆記本是什麽 15
1.8 配置SageMaker為解決第 2~7章中的場景做準備 15
1.9 是時候行動了 16
1.10 小結 16

第二部分 公司機器學習的六個場景
第 2章 你是否應該將採購訂單發送給技術審批人 18
2.1 決策 18
2.2 數據 19
2.3 開始你的訓練過程 20
2.4 運行Jupyter筆記本並進行預測 21
2.4.1 第 一部分:加載並檢查數據 24
2.4.2 第二部分:將數據轉換為正確的格式 27
2.4.3 第三部分:創建訓練集、驗證集和測試集 30
2.4.4 第四部分:訓練模型 32
2.4.5 第五部分:部署模型 33
2.4.6 第六部分:測試模型 34
2.5 刪除端點並停止你的筆記本實例 35
2.5.1 刪除端點 36
2.5.2 停止筆記本實例 37
2.6 小結 38

第3章 你是否應該致電客戶以防客戶流失 39
3.1 你在決策什麽 40
3.2 處理流程 40
3.3 準備數據集 41
3.3.1 轉換操作1:標準化數據 42
3.3.2 轉換操作2:計算周與周之間的變化 43
3.4 XGBoost基礎 43
3.4.1 XGBoost的工作原理 43
3.4.2 機器學習模型如何確定函數的AUC的好壞 45
3.5 準備構建模型 47
3.5.1 將數據集上傳到S3 47
3.5.2 在SageMaker上設置筆記本 48
3.6 構建模型 49
3.6.1 第 一部分:加載並檢查數據 50
3.6.2 第二部分:將數據轉換為正確的格式 52
3.6.3 第三部分:創建訓練集、驗證集和測試集 53
3.6.4 第四部分:訓練模型 55
3.6.5 第五部分:部署模型 57
3.6.6 第六部分:測試模型 57
3.7 刪除端點並停止筆記本實例 60
3.7.1 刪除端點 60
3.7.2 停止筆記本實例 60
3.8 檢查以確保端點已被刪除 60
3.9 小結 61

第4章 你是否應該將事件上報給支持團隊 62
4.1 你在決策什麽 62
4.2 處理流程 63
4.3 準備數據集 63
4.4 NLP 65
4.4.1 生成詞向量 65
4.4.2 決定每組包含多少單詞 67
4.5 BlazingText及其工作原理 68
4.6 準備構建模型 69
4.6.1 將數據集上傳到S3 69
4.6.2 在SageMaker上設置筆記本 70
4.7 構建模型 70
4.7.1 第 一部分:加載並檢查數據 71
4.7.2 第二部分:將數據轉換為正確的格式 74
4.7.3 第三部分:創建訓練集和驗證集 76
4.7.4 第四部分:訓練模型 77
4.7.5 第五部分:部署模型 79
4.7.6 第六部分:測試模型 79
4.8 刪除端點並停止你的筆記本實例 80
4.8.1 刪除端點 80
4.8.2 停止筆記本實例 80
4.9 檢查以確保端點已被刪除 81
4.10 小結 81

第5章 你是否應該質疑供應商發送給你的發票 82
5.1 你在決策什麽 82
5.2 處理流程 84
5.3 準備數據集 85
5.4 什麽是異常 86
5.5 監督機器學習與無監督機器學習 87
5.6 隨機裁剪森林及其工作原理 88
5.6.1 樣本1 88
5.6.2 樣本2 90
5.7 準備構建模型 94
5.7.1 將數據集上傳到S3 94
5.7.2 在SageMaker上設置筆記本 94
5.8 構建模型 95
5.8.1 第 一部分:加載並檢查數據 96
5.8.2 第二部分:將數據轉換為正確的格式 99
5.8.3 第三部分:創建訓練集和驗證集 100
5.8.4 第四部分:訓練模型 100
5.8.5 第五部分:部署模型 101
5.8.6 第六部分:測試模型 102
5.9 刪除端點並停止筆記本實例 104
5.9.1 刪除端點 104
5.9.2 停止筆記本實例 104
5.10 檢查以確保端點已被刪除 105
5.11 小結 105

第6章 預測你公司的每月能耗 106
6.1 你在決策什麽 106
6.1.1 時間序列數據介紹 107
6.1.2 Kiara的時間序列數據:每日能耗 109
6.2 加載處理時間序列數據的Jupyter筆記本 109
6.3 準備數據集:繪制時間序列數據 111
6.3.1 通過循環展示數據列 113
6.3.2 創建多個圖表 114
6.4 神經網絡是什麽 116
6.5 準備構建模型 116
6.5.1 將數據集上傳到S3 117
6.5.2 在SageMaker上設置筆記本 117
6.6 構建模型 117
6.6.1 第 一部分:加載並檢查數據 118
6.6.2 第二部分:將數據轉換為正確的格式 119
6.6.3 第三部分:創建訓練集和測試集 122
6.6.4 第四部分:訓練模型 125
6.6.5 第五部分:部署模型 128
6.6.6 第六部分:進行預測並繪制結果 128
6.7 刪除端點並停止你的筆記本實例 132
6.7.1 刪除端點 133
6.7.2 停止筆記本實例 133
6.8 檢查以確保端點已被刪除 133
6.9 小結 134

第7 章 優化你公司的每月能耗預測 135
7.1 DeepAR對周期性事件的處理能力 135
7.2 DeepAR的最大優勢:整合相關的時間序列 137
7.3 整合額外的數據集到Kiara的能耗模型 137
7.4 準備構建模型 138
7.4.1 下載我們準備的筆記本 138
7.4.2 在SageMaker上設置文件夾 139
7.4.3 將筆記本上傳到SageMaker 139
7.4.4 從S3存儲桶下載數據集 139
7.4.5 在S3上創建文件夾以保存你的數據 139
7.4.6 將數據集上傳到你的AWS存儲桶 139
7.5 構建模型 140
7.5.1 第 一部分:設置筆記本 140
7.5.2 第二部分:導入數據集 141
7.5.3 第三部分:將數據轉換為正確的格式 143
7.5.4 第四部分:創建訓練集和測試集 145
7.5.5 第五部分:配置模型並設置服務器以構建模型 147
7.5.6 第六部分:進行預測並繪制結果 151
7.6 刪除端點並停止你的筆記本實例 154
7.6.1 刪除端點 154
7.6.2 停止筆記本實例 154
7.7 檢查以確保端點已被刪除 154
7.8 小結 155

第三部分 將機器學習應用到生產環境中
第8章 通過Web提供預測服務 158
8.1 為什麽通過Web提供決策和預測服務這麽難 158
8.2 本章的步驟概述 159
8.3 SageMaker端點 159
8.4 設置SageMaker端點 160
8.4.1 上傳筆記本 161
8.4.2 上傳數據 163
8.4.3 運行筆記本並創建端點 165
8.5 設置無服務器API端點 166
8.5.1 在AWS賬戶上設置AWS證書 167
8.5.2 在本地電腦上設置AWS證書 168
8.5.3 配置證書 169
8.6 創建Web端點 170
8.6.1 安裝Chalice 171
8.6.2 創建Hello World API 172
8.6.3 添加為SageMaker端點提供服務的代碼 173
8.6.4 配置權限 175
8.6.5 更新requirements.txt文件 176
8.6.6 部署Chalice 176
8.7 提供決策服務 176
8.8 小結 177

第9章 案例研究 179
9.1 案例研究1:WorkPac 180
9.1.1 項目設計 181
9.1.2 第 一階段:準備並測試模型 181
9.1.3 第二階段:實施POC 183
9.1.4 第三階段:將流程嵌入公司的運營中 183
9.1.5 接下來的工作 183
9.1.6 吸取的教訓 183
9.2 案例研究2:Faethm 184
9.2.1 AI核心 184
9.2.2 使用機器學習優化Faethm公司的流程 184
9.2.3 第 一階段:獲取數據 185
9.2.4 第二階段:識別特徵 186
9.2.5 第三階段:驗證結果 186
9.2.6 第四階段:應用到生產環境中 186
9.3 結論 187
9.3.1 觀點1:建立信任 187
9.3.2 觀點2:正確獲取數據 187
9.3.3 觀點3:設計操作模式以充分利用機器學習能力 187
9.3.4 觀點4:在各個方面都使用了機器學習後,你的公司看起來怎麽樣 187
9.4 小結 188
附錄A 註冊AWS 189
附錄B 設置並使用S3以存儲文件 195
附錄C 設置並使用AWS SageMaker來構建機器學習系統 204
附錄D 停止全部服務 208
附錄E 安裝Python 211