構(gòu)建可靠的機(jī)器學(xué)習(xí)系統(tǒng) [美]凱茜·陳 [愛爾蘭]尼爾·理查德·墨菲 等 [美]克蘭蒂·帕里薩
定 價(jià):139 元
- 作者:[美]凱茜·陳 [愛爾蘭]尼爾·理查德·墨菲 [美]克蘭蒂·帕里薩 [美]D. 斯卡利 [美]托德·安德伍德
- 出版時(shí)間:2025/4/1
- ISBN:9787111772187
- 出 版 社:機(jī)械工業(yè)出版社
- 中圖法分類:TP181
- 頁碼:
- 紙張:膠版紙
- 版次:
- 開本:16開
本書融合作者構(gòu)建、運(yùn)維和擴(kuò)展大型機(jī)器學(xué)習(xí)系統(tǒng)的經(jīng)驗(yàn),通過豐富的示例,詳細(xì)講解如何運(yùn)行高效、可靠的機(jī)器學(xué)習(xí)系統(tǒng)。本書首先概述機(jī)器學(xué)習(xí)相關(guān)概念和數(shù)據(jù)管理原則,涵蓋數(shù)據(jù)管理、機(jī)器學(xué)習(xí)模型、評(píng)估質(zhì)量、特征、公平性、隱私等主題;然后介紹機(jī)器學(xué)習(xí)模型及其生命周期;最后講述如何將機(jī)器學(xué)習(xí)引入組織,以及引入后組織會(huì)發(fā)生什么等復(fù)雜問題。
無論你是小型初創(chuàng)公司還是跨國公司的一員,這本實(shí)用的書向數(shù)據(jù)科學(xué)家、軟件和網(wǎng)站可靠性工程師、產(chǎn)品經(jīng)理和企業(yè)主展示了如何在你的組織中可靠、有效且負(fù)責(zé)地運(yùn)行并建立 ML。你將深入了解從如何在生產(chǎn)環(huán)境中監(jiān)控模型到如何在產(chǎn)品組織中運(yùn)行一個(gè)好的模型開發(fā)團(tuán)隊(duì)的所有事情。
本書贊譽(yù)
不管你是否做過數(shù)據(jù)科學(xué)工作、具備專業(yè)的機(jī)器學(xué)習(xí)(ML)和統(tǒng)計(jì)學(xué)基礎(chǔ)知識(shí)、逐行閱讀了Tensorflow的源代碼,也不管你是否從頭實(shí)現(xiàn)過自己的分布式機(jī)器學(xué)習(xí)訓(xùn)練,在你部署一個(gè)基于機(jī)器學(xué)習(xí)的真實(shí)系統(tǒng)之前,你都將從閱讀本書中受益。這正是即將部署的成千上萬個(gè)機(jī)器學(xué)習(xí)項(xiàng)目所需要的,因?yàn)檫@些部署項(xiàng)目的實(shí)用性是一把雙刃劍。部署的項(xiàng)目越有用,有關(guān)安全、保障、依賴于你的付費(fèi)客戶、公平性或基于你的系統(tǒng)所做出的決策的風(fēng)險(xiǎn)就越高。本書詳盡地介紹了當(dāng)你有這種級(jí)別的責(zé)任時(shí)需要運(yùn)行的操作,你可以放心,這是幾十年的經(jīng)驗(yàn)積累。
—Andrew Moore,Google Cloud AI副總裁兼總經(jīng)理
如果我們這些從事機(jī)器學(xué)習(xí)的人能夠應(yīng)用軟件工程的最佳實(shí)踐,那么MLOps就不會(huì)如此痛苦了。這是一本軟件工程最佳實(shí)踐指南,由世界頂級(jí)專家精心編寫且內(nèi)容全面。
—Chip Huyen,Designing Machine Learning Systems的作者
這本書是構(gòu)建真實(shí)世界機(jī)器學(xué)習(xí)系統(tǒng)的人的書。它為思考開發(fā)機(jī)器學(xué)習(xí)產(chǎn)品的復(fù)雜而微妙的問題提供了藍(lán)圖。
—Brian Spiering,數(shù)據(jù)科學(xué)講師
譯者序
目前,大語言模型異;鸨,而在大模型時(shí)代,MLOps的形態(tài)也發(fā)生了一定的變化,訓(xùn)練模型的范式完全變了,不再需要大量訓(xùn)練過程,每一次調(diào)整prompt都是在訓(xùn)練一個(gè)新模型,由于訓(xùn)練變得很容易,因此訓(xùn)練變得更頻繁了。所帶來的結(jié)果就是,模型的評(píng)估也變得更頻繁了,MLOps的作用體現(xiàn)得更明顯了。一旦確定了某個(gè)可用模型,訓(xùn)練步驟就結(jié)束了,接下來,模型的上線發(fā)布策略、在線性能監(jiān)控、檢查漂移、檢查SLO就和傳統(tǒng)的MLOps無異了?梢哉f除了訓(xùn)練以外,所有傳統(tǒng)機(jī)器學(xué)習(xí)的步驟在大模型時(shí)代都需要進(jìn)行一遍,這更加體現(xiàn)了MLOps的重要性。本書詳細(xì)介紹了MLOps的各個(gè)階段,如果你想趕上這一波AI的浪潮,那么本書可以說是的。
拋開抓住大語言模型的機(jī)遇不談,本書對(duì)于想學(xué)習(xí)如何落地一個(gè)可靠的企業(yè)級(jí)AI應(yīng)用的人來說,也是一本不可多得的好書。要落地一個(gè)AI應(yīng)用,開發(fā)模型真的只是其中的一小步,其余工程方面的大量工作,就請(qǐng)大家跟著本書作者一點(diǎn)點(diǎn)學(xué)習(xí)吧。
由于譯者水平有限,因此難免會(huì)有疏漏之處,如果有任何問題,歡迎大家指正。
林然
2024年于深圳
Cathy Chen曾擔(dān)任谷歌的技術(shù)項(xiàng)目經(jīng)理、產(chǎn)品經(jīng)理和工程經(jīng)理。
Niall Richard Murphy是ML和SRE領(lǐng)域一家初創(chuàng)公司的首席執(zhí)行官,曾在Amazon、Google、Microsoft工作過。
Kranti Parisa是Dialpad的副總裁兼產(chǎn)品工程主管。
D. Sculley是Kaggle的首席執(zhí)行官和Google第三方機(jī)器學(xué)習(xí)生態(tài)系統(tǒng)的總經(jīng)理。
Todd Underwood是Google機(jī)器學(xué)習(xí)SRE的高級(jí)總監(jiān)和創(chuàng)始人。
目錄
序1
前言5
第1章 引言15
1.1 機(jī)器學(xué)習(xí)的生命周期15
1.1.1 數(shù)據(jù)收集與分析16
1.1.2 機(jī)器學(xué)習(xí)訓(xùn)練管道17
1.1.3 構(gòu)建與驗(yàn)證應(yīng)用程序19
1.1.4 質(zhì)量和性能評(píng)估19
1.1.5 定義與度量服務(wù)等級(jí)目標(biāo)20
1.1.6 發(fā)布21
1.1.7 監(jiān)控和反饋循環(huán)23
1.2 循環(huán)中的教訓(xùn)25
第2章 數(shù)據(jù)管理原則26
2.1 數(shù)據(jù)即責(zé)任27
2.2 機(jī)器學(xué)習(xí)管道的數(shù)據(jù)敏感性31
2.3 數(shù)據(jù)的階段32
2.3.1 創(chuàng)建33
2.3.2 提取35
2.3.3 處理36
2.3.4 存儲(chǔ)39
2.3.5 管理40
2.3.6 分析與可視化41
2.4 數(shù)據(jù)可靠性41
2.4.1 持久性42
2.4.2 一致性42
2.4.3 版本控制44
2.4.4 性能44
2.4.5 可用性44
2.5 數(shù)據(jù)完整性44
2.5.1 安全性45
2.5.2 隱私45
2.5.3 政策與合規(guī)47
2.6 總結(jié)48
第3章 模型的基本介紹50
3.1 什么是模型50
3.2 基本的模型創(chuàng)建工作流51
3.3 模型架構(gòu)、模型定義與訓(xùn)練過的模型53
3.4 漏洞在哪里54
3.4.1 訓(xùn)練數(shù)據(jù)54
3.4.2 標(biāo)簽56
3.4.3 訓(xùn)練方法57
3.5 基礎(chǔ)設(shè)施及管道60
3.5.1 平臺(tái)60
3.5.2 特征生成60
3.5.3 升級(jí)和修復(fù)61
3.6 對(duì)任何模型提出的一系列實(shí)用問題62
3.7 一個(gè)機(jī)器學(xué)習(xí)系統(tǒng)示例63
3.7.1 紗線產(chǎn)品點(diǎn)擊預(yù)測(cè)模型64
3.7.2 特征64
3.7.3 特征標(biāo)簽65
3.7.4 模型更新66
3.7.5 模型服務(wù)66
3.7.6 常見故障67
3.8 總結(jié)68
第4章 特征與訓(xùn)練數(shù)據(jù)69
4.1 特征69
4.1.1 特征選擇和工程71
4.1.2 特征的生命周期72
4.1.3 特征系統(tǒng)74
4.2 標(biāo)簽78
4.3 人工生成的標(biāo)簽79
4.3.1 標(biāo)注勞動(dòng)力80
4.3.2 衡量人工標(biāo)注質(zhì)量80
4.3.3 標(biāo)注平臺(tái)81
4.3.4 主動(dòng)學(xué)習(xí)和AI輔助標(biāo)注81
4.3.5 文檔和標(biāo)注員培訓(xùn)82
4.4 元數(shù)據(jù)82
4.4.1 元數(shù)據(jù)系統(tǒng)概述82
4.4.2 數(shù)據(jù)集元數(shù)據(jù)83
4.4.3 特征元數(shù)據(jù)84
4.4.4 標(biāo)簽元數(shù)據(jù)85
4.4.5 管道元數(shù)據(jù)85
4.5 數(shù)據(jù)隱私和公平性86
4.5.1 隱私86
4.5.2 公平性87
4.6 總結(jié)87
第5章 評(píng)估模型的有效性和質(zhì)量88
5.1 評(píng)估模型的有效性88
5.2 評(píng)估模型質(zhì)量91
5.2.1 離線評(píng)估91
5.2.2 評(píng)估分布92
5.2.3 一些有用的指標(biāo)95
5.3 實(shí)施驗(yàn)證和評(píng)估101
5.4 總結(jié)101
第6章 機(jī)器學(xué)習(xí)系統(tǒng)中的公平性、隱私和道德103
6.1 公平性104
6.1.1 公平性的定義107
6.1.2 達(dá)到公平111
6.1.3 公平是一個(gè)過程而不是終點(diǎn)113
6.1.4 簡短的法律說明114
6.2 隱私114
6.2.1 保護(hù)隱私的方法116
6.2.2 簡短的法律說明118
6.3 負(fù)責(zé)任的AI119
6.3.1 模型解釋119
6.3.2 有效性121
6.3.3 社會(huì)和文化適當(dāng)性123
6.4 機(jī)器學(xué)習(xí)管道中負(fù)責(zé)任的AI123
6.4.1 用例頭腦風(fēng)暴123
6.4.2 數(shù)據(jù)收集和清洗124
6.4.3 模型創(chuàng)建和訓(xùn)練124
6.4.4 模型驗(yàn)證和質(zhì)量評(píng)估124
6.4.5 模型部署125
6.4.6 市場(chǎng)產(chǎn)品125
6.5 總結(jié)125
第7章 訓(xùn)練系統(tǒng)127
7.1 需求128
7.2 基本訓(xùn)練系統(tǒng)的實(shí)施129
7.2.1 特征130
7.2.2 特征存儲(chǔ)131
7.2.3 模型管理系統(tǒng)131
7.2.4 編排132
7.2.5 質(zhì)量評(píng)估133
7.2.6 監(jiān)控133
7.3 一般可靠性原則134
7.3.1 大多數(shù)失敗不會(huì)是機(jī)器學(xué)習(xí)失敗134
7.3.2 模型將被重新訓(xùn)練134
7.3.3 模型將同時(shí)有多個(gè)版本135
7.3.4 好的模型會(huì)變壞135
7.3.5 數(shù)據(jù)將不可用136
7.3.6 模型應(yīng)該是可改進(jìn)的137
7.3.7 特征會(huì)添加和更改137
7.3.8 模型可能訓(xùn)練得過快138
7.3.9 資源利用很重要139
7.3.10 利用率!=效率140
7.3.11 中斷包括恢復(fù)時(shí)間142
7.4 常見的訓(xùn)練可靠性問題142
7.4.1 數(shù)據(jù)敏感性142
7.4.2 YarnIt的數(shù)據(jù)問題示例142
7.4.3 可重現(xiàn)性143
7.4.4 YarnIt的可重現(xiàn)性問題示例144
7.4.5 計(jì)算資源量146
7.4.6 YarnIt的資源量問題示例146
7.5 結(jié)構(gòu)可靠性147
7.5.1 組織挑戰(zhàn)147
7.5.2 道德和公平性考慮148
7.6 總結(jié)148
第8章 服務(wù)149
8.1 模型服務(wù)的關(guān)鍵問題150
8.1.1 我們模型的負(fù)載是什么150
8.1.2 我們模型的預(yù)測(cè)延遲需求是多少150
8.1.3 模型在哪里運(yùn)行151
8.1.4 我們的模型需要怎樣的硬件153
8.1.5 服務(wù)模型要如何存儲(chǔ)、加載、版本控制和更新154
8.1.6 用于服務(wù)的特征管道是什么樣子的154
8.2 模型服務(wù)架構(gòu)155
8.2.1 離線服務(wù)(批量推理)155
8.2.2 在線服務(wù)(在線推理)158
8.2.3 模型即服務(wù)160
8.2.4 邊緣服務(wù)162
8.2.5 選擇架構(gòu)164
8.3 模型API設(shè)計(jì)165
8.4 服務(wù)于準(zhǔn)確性還是彈性166
8.5 擴(kuò)展167
8.5.1 彈性伸縮168
8.5.2 緩存168
8.6 災(zāi)難恢復(fù)168
8.7 道德和公平性考慮169
8.8 總結(jié)170
第9章 模型的監(jiān)控和可觀測(cè)性171
9.1 什么是生產(chǎn)環(huán)境監(jiān)控以及為什么要這么做171
9.1.1 它是什么樣的172
9.1.2 機(jī)器學(xué)習(xí)為監(jiān)控帶來的問題173
9.1.3 為何在生產(chǎn)中需要持續(xù)的機(jī)器學(xué)習(xí)可觀測(cè)性174
9.2 機(jī)器學(xué)習(xí)生產(chǎn)監(jiān)控中的問題175
9.2.1 開發(fā)的難點(diǎn)與服務(wù)的難點(diǎn)175
9.2.2 需要在觀念上有所轉(zhuǎn)變177
9.3 機(jī)器學(xué)習(xí)模型監(jiān)控的最佳實(shí)踐177
9.3.1 通用的預(yù)服務(wù)模型建議178
9.3.2 訓(xùn)練與重新訓(xùn)練179
9.3.3 模型驗(yàn)證(試運(yùn)行前)182
9.3.4 服務(wù)185
9.3.5 其他需要考慮的事情193
9.3.6 監(jiān)控策略的高層級(jí)建議198
9.4 總結(jié)200
第10章 持續(xù)機(jī)器學(xué)習(xí)201
10.1 剖析持續(xù)機(jī)器學(xué)習(xí)系統(tǒng)202
10.1.1 訓(xùn)練樣本202
10.1.2 訓(xùn)練標(biāo)簽202
10.1.3 過濾掉壞數(shù)據(jù)203
10.1.4 特征存儲(chǔ)和數(shù)據(jù)管理203
10.1.5模型更新204
10.1.6將更新后的模型推送到服務(wù)中204
10.2 對(duì)持續(xù)機(jī)器學(xué)習(xí)系統(tǒng)的觀察205
10.2.1 外部世界的事件可能影響我們的系統(tǒng)205
10.2.2 模型可以影響其自身的訓(xùn)練數(shù)據(jù)207
10.2.3時(shí)間效應(yīng)會(huì)出現(xiàn)在多種時(shí)間維度上208
10.2.4 應(yīng)急響應(yīng)必須實(shí)時(shí)進(jìn)行209
10.2.5 新發(fā)布需要分階段的提升和穩(wěn)定的基線213
10.2.6 模型必須被管理,而不是交付即完成215
10.3 持續(xù)性組織216
10.4 重新思考非持續(xù)機(jī)器學(xué)習(xí)系統(tǒng)218
10.5總結(jié)218
第11章 事故響應(yīng)220
11.1 事故管理基礎(chǔ)221
11.1.1 事故的生命周期221
11.1.2 事故響應(yīng)角色222
11.2 剖析以機(jī)器學(xué)習(xí)為中心的故障224
11.3術(shù)語提醒:模型224
11.4 故事時(shí)間225
11.4.1 故事1:搜索但沒有找到225
11.4.2 故事2:突然間無用的伙伴229
11.4.3 故事3:推薦你尋找新的供應(yīng)商235
11.5 機(jī)器學(xué)習(xí)事故管理原則242
11.5.1 指導(dǎo)原則243
11.5.2模型開發(fā)人員或數(shù)據(jù)科學(xué)家244
11.5.3 軟件工程師245
11.5.4 機(jī)器學(xué)習(xí)站點(diǎn)可靠性工程師或機(jī)器學(xué)習(xí)生產(chǎn)工程師246
11.5.5 產(chǎn)品經(jīng)理或業(yè)務(wù)負(fù)責(zé)人249
11.6 特殊話題250
11.6.1 生產(chǎn)工程師以及機(jī)器學(xué)習(xí)工程與建模250
11.6.2 符合道德的待命工程師宣言251
11.7 總結(jié)253
第12章 產(chǎn)品和機(jī)器學(xué)習(xí)如何交互255
12.1 不同類型的產(chǎn)品255
12.2 敏捷機(jī)器學(xué)習(xí)256
12.3 機(jī)器學(xué)習(xí)產(chǎn)品開發(fā)階段256
12.3.1 發(fā)現(xiàn)和定義256
12.3.2 業(yè)務(wù)目標(biāo)設(shè)定258
12.3.3 MVP構(gòu)建和驗(yàn)證260
12.3.4 模型和產(chǎn)品開發(fā)261
12.3.5 部署261
12.3.6 支持和維護(hù)262
12.4 構(gòu)建還是購買262
12.4.1 模型263
12.4.2 數(shù)據(jù)處理基礎(chǔ)設(shè)施264
12.4.3 端到端平臺(tái)264
12.4.4 用以做出決策的評(píng)分方法265
12.4.5 做出決策266
12.5 由機(jī)器學(xué)習(xí)提供支持的樣例YarnIt商店功能266
12.5.1 按總銷售額展示受歡迎的紗線266
12.5.2 基于瀏覽歷史的推薦267
12.5.3 交叉銷售和向上銷售267
12.5.4 基于內(nèi)容的過濾267
12.5.5 協(xié)同過濾267
12.6 總結(jié)269
第13章 將機(jī)器學(xué)習(xí)集成到你的組織中270
13.1 本章假設(shè)271
13.1.1 基于領(lǐng)導(dǎo)者的視角271
13.1.2 細(xì)節(jié)很重要271
13.1.3 機(jī)器學(xué)習(xí)需要了解業(yè)務(wù)271
13.1.4 你做出的最重要的假設(shè)273
13.1.5 機(jī)器學(xué)習(xí)的價(jià)值273
13.2 重大組織風(fēng)險(xiǎn)274
13.2.1 機(jī)器學(xué)習(xí)不是魔法274
13.2.2 思維模型慣性275
13.2.3 在不同文化中正確表述風(fēng)險(xiǎn)275
13.2.4 孤立的團(tuán)隊(duì)并不能解決所有問題276
13.3 實(shí)施模型276
13.3.1 記住目標(biāo)277
13.3.2 綠地還是棕地277
13.3.3 機(jī)器學(xué)習(xí)的角色和職責(zé)278
13.3.4 如何雇用機(jī)器學(xué)習(xí)人員279
13.4 組織設(shè)計(jì)和激勵(lì)279
13.4.1 戰(zhàn)略280
13.4.2 結(jié)構(gòu)281
13.4.3 流程282
13.4.4 獎(jiǎng)勵(lì)282
13.4.5 人員283
13.4.6 關(guān)于排序的說明283
13.5 總結(jié)284
第14章 實(shí)用的機(jī)器學(xué)習(xí)組織實(shí)施示例285
14.1 場(chǎng)景1:一個(gè)新的集中式機(jī)器學(xué)習(xí)團(tuán)隊(duì)285
14.1.1 背景和組織描述285
14.1.2 流程286
14.1.3 獎(jiǎng)勵(lì)287
14.1.4 人員287
14.1.5 默認(rèn)實(shí)施288
14.2 場(chǎng)景2:分散式機(jī)器學(xué)習(xí)基礎(chǔ)設(shè)施和專業(yè)知識(shí)289
14.2.1 背景和組織描述289
14.2.2 流程289
14.2.3 獎(jiǎng)勵(lì)290
14.2.4 人員290
14.2.5 默認(rèn)實(shí)施291
14.3 場(chǎng)景3:混合使用集中式基礎(chǔ)設(shè)施/分散式建模291
14.3.1 背景和組織描述292
14.3.2 流程292
14.3.3 獎(jiǎng)勵(lì)292
14.3.4 人員293
14.3.5 默認(rèn)實(shí)施293
14.4 總結(jié)293
第15章 案例研究:實(shí)踐中的MLOps296
15.1 在機(jī)器學(xué)習(xí)管道中適應(yīng)隱私和數(shù)據(jù)保留政策296
15.1.1 背景296
15.1.2問題和解決方案297
15.1.3 要點(diǎn)299
15.2 影響流量的持續(xù)機(jī)器學(xué)習(xí)模型299
15.2.1 背景299
15.2.2 問題和解決方案300
15.2.3 要點(diǎn)301