本書的主要內(nèi)容有:定義產(chǎn)品目標,將其轉(zhuǎn)化為機器學習問題?焖俅罱ǖ谝粭l端到端流水線,創(chuàng)建初始數(shù)據(jù)集。訓練和評估機器學習模型,解決性能瓶頸。將模型部署到生產(chǎn)環(huán)境,持續(xù)監(jiān)控使用情況。
一句話推薦
本書介紹了設計、開發(fā)和部署機器學習應用的技能。
編輯推薦
你可從本書學到設計、開發(fā)和部署機器學習應用的技能。本書將帶你從產(chǎn)品構(gòu)思起步,不斷迭代,最終完成一款機器學習應用。無論你是數(shù)據(jù)科學家、軟件工程師,還是產(chǎn)品經(jīng)理,無論你資歷深淺,你都可以從本書學到真實機器學習應用開發(fā)各步驟所需工具和最佳實踐,掌握常見問題的解決方法。
本書作者是一位經(jīng)驗豐富的數(shù)據(jù)科學家,負責過人工智能教育項目。他在本書用代碼塊、插圖、軟件截屏和業(yè)界高手的訪談記錄,生動詮釋了機器學習概念,非常實用。本書第一部分教你規(guī)劃機器學習應用并為其制定成功標準。第二部分介紹機器學習基礎模型的開發(fā)方法,讓模型跑起來。第三部分介紹模型改進方法,實現(xiàn)最初產(chǎn)品構(gòu)思。第四部分則介紹模型部署和監(jiān)控策略。
專家推薦
機器學習最難的內(nèi)容是:提煉問題、調(diào)試模型和將模型部署給用戶使用。很多書都選擇跳過,而本書則重點講解它們。掌握本書內(nèi)容,你就可以嘗試將自己項目從最初創(chuàng)意變?yōu)橐豢钣杏绊懥Φ漠a(chǎn)品。
Alexander Gude
Intuit公司數(shù)據(jù)科學家
Emmanuel Ameisen現(xiàn)任Stripe公司機器學習工程師。他曾為Local Motion和Zipcar公司開發(fā)、部署預測分析和機器學習解決方案。他此前還曾負責Insight Data Science公司人工智能團隊,指導過150多個機器學習項目。他先后就讀于法國三所頂尖學府,分獲人工智能、計算機工程和管理三個理學碩士學位。
目錄
前言 .1
第一部分 讓機器學習要找對方法
第1 章 從產(chǎn)品目標到機器學習框架 15
1.1 評估什么可行 16
1.1.1 模型 18
1.1.2 數(shù)據(jù) 26
1.2 探索機器學習編輯器開發(fā)方案 . 29
1.2.1 嘗試全用機器學習完成:端到端框架 . 29
1.2.2 最簡方法:成為算法 31
1.2.3 中間地帶:從自己經(jīng)驗學習 . 32
1.3 Monica Rogati:如何選擇機器學習項目并安排其優(yōu)先級 34
1.4 小結(jié) 37
第2 章 制定方案 38
2.1 度量成功 38
2.1.1 業(yè)務指標. 40
2.1.2 模型性能. 40
2.1.3 新鮮度和分布偏移 . 44
2.1.4 速度 46
2.2 評估范圍和挑戰(zhàn) 47
2.2.1 利用領域知識 47
2.2.2 站在巨人肩上 49
2.3 機器學習編輯器方案 . 53
2.3.1 編輯器初步方案 . 53
2.3.2 永遠從簡單模型入手 54
2.4 不斷進步:從簡單方法入手 55
2.4.1 從簡易流水線入手 . 55
2.4.2 機器學習編輯器流水線 57
2.5 小結(jié) 59
第二部分 建成可用流水線
第3 章 搭建你的首條端到端流水線 63
3.1 最簡框架 63
3.2 機器學習編輯器原型 . 65
3.2.1 解析和清洗數(shù)據(jù) . 65
3.2.2 文本分詞. 67
3.2.3 生成特征. 67
3.3 測試工作流 . 69
3.3.1 用戶體驗. 70
3.3.2 建模結(jié)果. 70
3.4 機器學習編輯器原型評估 72
3.4.1 模型 73
3.4.2 用戶體驗. 74
3.5 小結(jié) 75
第4 章 獲取初始數(shù)據(jù)集 76
4.1 數(shù)據(jù)集迭代 . 76
4.2 探索你的首個數(shù)據(jù)集 . 78
4.2.1 高效始于簡單 78
4.2.2 洞察力和產(chǎn)品的關(guān)系 79
4.2.3 數(shù)據(jù)質(zhì)量規(guī)則 80
4.3 標注數(shù)據(jù),尋找趨勢 . 87
4.3.1 總結(jié)性統(tǒng)計信息 . 87
4.3.2 高效探索和標注 . 90
4.3.3 成為算法 106
4.3.4 數(shù)據(jù)趨勢 108
4.4 用數(shù)據(jù)指導特征和模型 . 109
4.4.1 創(chuàng)建特征,捕獲模式 . 109
4.4.2 機器學習編輯器特征 . 113
4.5 Robert Munro:你如何尋找、標注和使用數(shù)據(jù)? 114
4.6 小結(jié) . 116
第三部分 模型迭代
第5 章 訓練和評估模型 . 119
5.1 最簡合適模型 . 119
5.1.1 簡易模型 120
5.1.2 從模式到模型 122
5.1.3 切分數(shù)據(jù)集 . 124
5.1.4 機器學習編輯器數(shù)據(jù)切分 130
5.1.5 判斷模型表現(xiàn) 132
5.2 評估模型:超越準確率 . 135
5.2.1 對比數(shù)據(jù)和預測結(jié)果 . 135
5.2.2 混淆矩陣 136
5.2.3 ROC 曲線 137
5.2.4 校準曲線 139
5.2.5 用降維技術(shù)分析出錯樣例 141
5.2.6 Top-K 方法 . 142
5.2.7 其他模型 147
5.3 評估特征重要性 148
5.3.1 直接來自分類器 148
5.3.2 黑盒解釋器 . 149
5.4 小結(jié) . 152
第6 章 調(diào)試機器學習模型 . 153
6.1 軟件最佳實踐 . 153
6.2 調(diào)試連接:可視化和測試 . 156
6.2.1 從一個樣例開始 156
6.2.2 測機器學習代碼 164
6.3 調(diào)試模型訓練過程:讓模型學習 . 169
6.3.1 任務難度 170
6.3.2 最優(yōu)化問題 . 172
6.4 調(diào)試泛化能力:讓模型有用 174
6.4.1 數(shù)據(jù)泄露 175
6.4.2 過擬合 175
6.4.3 思考手頭任務 179
6.5 小結(jié) . 180
第7 章 用分類器生成寫作建議 181
7.1 從模型抽取建議 182
7.1.1 我們不用模型能實現(xiàn)什么? 182
7.1.2 抽取全局特征重要性 . 184
7.1.3 利用模型打的分值 185
7.1.4 抽取局部特征重要性 . 186
7.2 模型對比 188
7.2.1 模型v 1:建議就像統(tǒng)計報告 189
7.2.2 模型v 2:模型更強大但建議更模糊. 189
7.2.3 模型v3:建議可理解 191
7.3 生成編輯建議 . 192
7.4 小結(jié) . 197
第四部分 部署和監(jiān)控
第8 章 部署模型的注意事項 . 201
8.1 數(shù)據(jù)使用注意事項 202
8.1.1 數(shù)據(jù)所有權(quán) . 202
8.1.2 數(shù)據(jù)偏差 203
8.1.3 系統(tǒng)偏差 205
8.2 建模注意事項 . 205
8.2.1 反饋循環(huán) 206
8.2.2 模型更包容 . 207
8.2.3 思考預測背景 208
8.2.4 機器學習模型的對手 . 209
8.2.5 思考模型濫用和挪用風險 210
8.3 Chris Harland:交付實驗 . 211
8.4 小結(jié) . 214
第9 章 選擇部署方案 215
9.1 服務端部署 215
9.1.1 流式應用或API 216
9.1.2 批量預測 219
9.2 客戶端部署 221
9.2.1 部署到設備 . 222
9.2.2 用瀏覽器端交付 224
9.3 聯(lián)邦學習:一種混合方法 . 225
9.4 小結(jié) . 226
第10 章 搭建模型防護罩 228
10.1 故障應對舉措 228
10.1.1 檢查輸入和輸出 229
10.1.2 模型后盾 234
10.2 模型性能提高舉措 . 238
10.2.1 擴展模型,服務多用戶 . 238
10.2.2 模型和數(shù)據(jù)生命周期管理. 241
10.2.3 數(shù)據(jù)處理和有向無環(huán)圖 . 244
10.3 尋求用戶反饋 245
10.4 Chris Moody:賦予數(shù)據(jù)科學家部署模型的力量 248
10.5 小結(jié) 250
第11 章 監(jiān)控和更新模型 251
11.1 監(jiān)控可拯救系統(tǒng) 251
11.1.1 監(jiān)控告知刷新率 . 252
11.1.2 監(jiān)控模型,檢測濫用行為 . 253
11.2 選擇監(jiān)控內(nèi)容 254
11.2.1 性能指標 254
11.2.2 業(yè)務指標 256
11.3 機器學習系統(tǒng)的持續(xù)集成和交付 257
11.3.1 A/B 測試和實驗 . 259
11.3.2 其他方法 262
11.4 小結(jié) 263