分布式機器學習:算法、理論與實踐 ( 簡體 字) |
作者:劉鐵巖 陳薇 王太峰 高飛 | 類別:1. -> 程式設計 -> 機器學習 |
譯者: |
出版社:機械工業出版社 | 3dWoo書號: 50023 詢問書籍請說出此書號!【缺書】 NT售價: 445 元 |
出版日:10/1/2018 |
頁數:260 |
光碟數:0 |
|
站長推薦: |
印刷:黑白印刷 | 語系: ( 簡體 版 ) |
|
加入購物車 │加到我的最愛 (請先登入會員) |
ISBN:9787111609186 |
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 序 |
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證) |
作者序: |
譯者序: |
前言:近年來,人工智能取得了飛速的發展,實現了一個又一個技術突破。這些成功的幕后英雄是海量的訓練數據、超大規模的機器學習模型以及分布式的訓練系統。一系列有關分布式機器學習的研究工作,從并行模式、跨機通信到聚合機制,從算法設計、理論推導到系統構建,都在如火如荼地展開。人們不僅發表了大量的學術論文,也開發出一批實用性很強的分布式機器學習系統。本書的目的是向讀者全面展示分布式機器學習的現狀,深入分析其中的核心技術問題,并且討論該領域未來發展的方向。本書既可以作為研究生從事分布式機器學習方向研究的參考文獻,也可以作為人工智能從業者進行算法選擇和系統設計的工具書。
全書共12章。第1章是緒論,向大家展示分布式機器學習這個領域的全景。第2章介紹機器學習的基礎知識,其中涉及的基本概念、模型和理論,會為讀者在后續章節中更好地理解分布式機器學習的各項技術奠定基礎。第3章到第8章是本書的核心部分,向大家細致地講解分布式機器學習的框架及其各個功能模塊。其中第3章對整個分布式機器學習框架做綜述,而第4章到第8章則針對其中的數據與模型劃分模塊、單機優化模塊、通信模塊、數據與模型聚合模塊分別加以介紹,展示每個模塊的不同選項并討論其長處與短板。接下來的三章是對前面內容的總結與升華。其中第9章介紹由分布式機器學習框架中不同選項所組合出來的各式各樣的分布式機器學習算法,第10章討論這些算法的理論性質(例如收斂性),第11章則介紹幾個主流的分布式機器學習系統(包括Spark MLlib、Multiverso參數服務器系統和TensorFlow數據流系統)。最后的第12章是全書的結語,在對全書內容進行簡要總結之后,著重討論分布式機器學習這個領域未來的發展方向。
有關本書的寫作,因為涉及分布式機器學習的不同側面,不同的章節對讀者預備知識的要求有所不同。尤其是涉及優化算法和學習理論的部分,要求讀者對于最優化理論和概率統計有一定的知識儲備。不過,如果讀者的目的只是熟悉主流的分布式機器學習框架和系統,則可以跳過這些相對艱深的章節,因為其余章節自成體系,對于理論部分沒有過多的依賴。
我仍然清晰地記得,兩年以前華章公司的姚蕾編輯多次找到我,希望我能撰寫一本關于分布式機器學習的圖書。一方面被姚蕾的誠意打動,另一方面也考慮到這樣一本書對于在校研究生和人工智能從業者可能有所幫助,我最終欣然應允。然而,平時工作過于繁忙,真正可以用來寫書的時間非常有限,所以一晃就是兩年的時光,直至今日本書才與讀者見面,內心十分慚愧。
回顧這兩年的寫作過程,有很多人需要感謝。首先,我要感謝本書的聯合作者:陳薇博士負責書中與優化算法和學習理論有關的內容,王太峰和高飛則主要負責通信機制、聚合模式和分布式機器學習系統等方面的內容。沒有他們夜以繼日的努力,本書無法成文。在寫作過程中,本書的各位作者得到了家人的大力支持。寫書之路實屬不易,如果沒有她(他)們的默默奉獻,作者們很難集中精力,攻克這個艱巨的任務。其次,我要感謝諸多為本書的寫作做出過重要貢獻的人:我在中國科學技術大學的博士生鄭書新花費了大量的精力和時間幫助我們整理了全書的參考文獻;北京大學的孟琪同學則幫助我們對全書做了細致的校驗;華章公司的編輯姚蕾和遲振春對我們的書稿提出了很多寶貴的意見;普林斯頓大學教授、中國科學院院士鄂維南博士,以及南京大學教授周志華博士分別為本書題寫了推薦序。正是因為這么多幕后英雄的奉獻,本書才得以順利面世。最后,我還要感謝微軟亞洲研究院院長洪小文博士,他的大力支持使得我們在分布式機器學習這個領域做出了很多高質量的研究工作,也使得我們有機會把這些成果記錄下來,編纂成書,與更多的同行分享。
慚愧的是,即便耗時兩載,即便集合了多人的智慧和努力,本書的寫作仍然略顯倉促。加之分布式機器學習這個領域飛速發展,本書成稿之時,又有很多新的研究成果發表,難以周全覆蓋。再則,本書的作者才疏學淺,書中難免有疏漏、錯誤之處,還望讀者海涵,不吝告知,日后加以勘誤,不勝感激。
劉鐵巖
于北京中關村
2018年6月 |
內容簡介:本書旨在全面介紹分布式機器學習的現狀,深入分析其中的核心技術問題,并且討論該領域未來的發展方向。
全書共12章。第1章是緒論,向大家展示分布式機器學習這個領域的全景。第2章介紹機器學習的基礎知識。第3章到第8章是本書的核心部分,向大家細致地講解分布式機器學習的框架及其各個功能模塊。其中第3章給出整個分布式機器學習框架的綜述,而第4章到第8章則分別針對其中的數據與模型劃分模塊、單機優化模塊、通信模塊、數據與模型聚合模塊加以介紹。接下來的三章是對前面內容的總結與升華。其中第9章介紹由分布式機器學習框架中不同選項所組合出來的各式各樣的分布式機器學習算法,第10章討論這些算法的理論性質,第11章則介紹幾個主流的分布式機器學習系統(包括Spark MLlib 迭代式MapReduce系統,Multiverso參數服務器系統,TensorFlow數據流系統)。最后的第12章是全書的結語,在對全書內容進行簡要總結之后,著重討論分布式機器學習這個領域未來的發展方向。
本書基于微軟亞洲研究院機器學習研究團隊多年的研究成果和實踐經驗寫成,既可以作為研究生從事分布式機器學習方向研究的參考文獻,也可以作為人工智能從業者進行算法選擇和系統設計的工具書。 |
目錄:序言一 序言二 前 言 作者介紹 第1章 緒論/ 1 1.1 人工智能及其飛速發展/ 2 1.2 大規模、分布式機器學習/ 4 1.3 本書的安排/ 6 參考文獻/ 7 第2章 機器學習基礎/ 9 2.1 機器學習的基本概念/ 10 2.2 機器學習的基本流程/ 13 2.3 常用的損失函數/ 16 2.3.1 Hinge損失函數/ 16 2.3.2 指數損失函數/ 16 2.3.3 交叉熵損失函數/ 17 2.4 常用的機器學習模型/ 18 2.4.1 線性模型/ 18 2.4.2 核方法與支持向量機/ 18 2.4.3 決策樹與Boosting/ 21 2.4.4 神經網絡/ 23 2.5 常用的優化方法/ 32 2.6 機器學習理論/ 33 2.6.1 機器學習算法的泛化誤差/ 34 2.6.2 泛化誤差的分解/ 34 2.6.3 基于容度的估計誤差的上界/ 35 2.7 總結/ 36 參考文獻/ 36 第3章 分布式機器學習框架/ 41 3.1 大數據與大模型的挑戰/ 42 3.2 分布式機器學習的基本流程/ 44 3.3 數據與模型劃分模塊/ 46 3.4 單機優化模塊/ 48 3.5 通信模塊/ 48 3.5.1 通信的內容/ 48 3.5.2 通信的拓撲結構/ 49 3.5.3 通信的步調/ 51 3.5.4 通信的頻率/ 52 3.6 數據與模型聚合模塊/ 53 3.7 分布式機器學習理論/ 54 3.8 分布式機器學習系統/ 55 3.9 總結/ 56 參考文獻/ 57 第4章 單機優化之確定性算法/ 61 4.1 基本概述/ 62 4.1.1 機器學習的優化框架/ 62 4.1.2 優化算法的分類和發展歷史/ 65 4.2 一階確定性算法/ 67 4.2.1 梯度下降法/ 67 4.2.2 投影次梯度下降法/ 69 4.2.3 近端梯度下降法/ 70 4.2.4 Frank-Wolfe算法/ 71 4.2.5 Nesterov加速法/ 72 4.2.6 坐標下降法/ 75 4.3 二階確定性算法/ 75 4.3.1 牛頓法/ 76 4.3.2 擬牛頓法/ 77 4.4 對偶方法/ 78 4.5 總結/ 81 參考文獻/ 8 第5章 單機優化之隨機算法/ 85 5.1 基本隨機優化算法/ 86 5.1.1 隨機梯度下降法/ 86 5.1.2 隨機坐標下降法/ 88 5.1.3 隨機擬牛頓法/ 91 5.1.4 隨機對偶坐標上升法/ 93 5.1.5 小結/ 95 5.2 隨機優化算法的改進/ 96 5.2.1 方差縮減方法/ 96 5.2.2 算法組合方法/ 100 5.3 非凸隨機優化算法/ 101 5.3.1 Ada系列算法/ 102 5.3.2 非凸理論分析/ 104 5.3.3 逃離鞍點問題/ 106 5.3.4 等級優化算法/ 107 5.4 總結/ 109 參考文獻/ 109 第6章 數據與模型并行/ 113 6.1 基本概述/ 114 6.2 計算并行模式/ 117 6.3 數據并行模式/ 119 6.3.1 數據樣本劃分/ 120 6.3.2 數據維度劃分/ 123 6.4 模型并行模式/ 123 6.4.1 線性模型/ 123 6.4.2 神經網絡/ 127 6.5 總結/ 133 參考文獻/ 133 第7章 通信機制/ 135 7.1 基本概述/ 136 7.2 通信的內容/ 137 7.2.1 參數或參數的更新/ 137 7.2.2 計算的中間結果/ 137 7.2.3 討論/ 138 7.3 通信的拓撲結構/ 139 7.3.1 基于迭代式MapReduce/AllReduce的通信拓撲/ 140 7.3.2 基于參數服務器的通信拓撲/ 142 7.3.3 基于數據流的通信拓撲/ 143 7.3.4 討論/ 145 7.4 通信的步調/ 145 7.4.1 同步通信/ 146 7.4.2 異步通信/ 147 7.4.3 同步和異步的平衡/ 148 7.4.4 討論/ 150 7.5 通信的頻率/ 150 7.5.1 時域濾波/ 150 7.5.2 空域濾波/ 153 7.5.3 討論/ 155 7.6 總結/ 156 參考文獻/ 156 第8章 數據與模型聚合/ 159 8.1 基本概述/ 160 8.2 基于模型加和的聚合方法/ 160 8.2.1 基于全部模型加和的聚合/ 160 8.2.2 基于部分模型加和的聚合/ 162 8.3 基于模型集成的聚合方法/ 167 8.3.1 基于輸出加和的聚合/ 168 8.3.2 基于投票的聚合/ 171 8.4 總結/ 174 參考文獻/ 174 第9章 分布式機器學習算法/ 177 9.1 基本概述/ 178 9.2 同步算法/ 179 9.2.1 同步SGD方法/ 179 9.2.2 模型平均方法及其改進/ 182 9.2.3 ADMM算法/ 183 9.2.4 彈性平均SGD算法/ 185 9.2.5 討論/ 186 9.3 異步算法/ 187 9.3.1 異步SGD/ 187 9.3.2 Hogwild!算法/ 189 9.3.3 Cyclades算法/ 190 9.3.4 帶延遲處理的異步算法/ 192 9.3.5 異步方法的進一步加速/ 199 9.3.6 討論/ 199 9.4 同步和異步的對比與融合/ 199 9.4.1 同步和異步算法的實驗對比/ 199 9.4.2 同步和異步的融合/ 201 9.5 模型并行算法/ 203 9.5.1 DistBelief/ 203 9.5.2 AlexNet/ 204 9.6 總結/ 205 參考文獻/ 205 第10章 分布式機器學習理論/ 209 10.1 基本概述/ 210 10.2 收斂性分析/ 210 10.2.1 優化目標和算法/ 211 10.2.2 數據和模型并行/ 213 10.2.3 同步和異步/ 215 10.3 加速比分析/ 217 10.3.1 從收斂速率到加速比/ 218 10.3.2 通信量的下界/ 219 10.4 泛化分析/ 221 10.4.1 優化的局限性/ 222 10.4.2 具有更好泛化能力的非凸優化算法/ 224 10.5 總結/ 226 參考文獻/ 226 第11章 分布式機器學習系統/ 229 11.1 基本概述/ 230 11.2 基于IMR的分布式機器學習系統/ 231 11.2.1 IMR和Spark/ 231 11.2.2 Spark MLlib/ 234 11.3 基于參數服務器的分布式機器學習系統/ 236 11.3.1 參數服務器/ 236 11.3.2 Multiverso參數服務器/ 237 11.4 基于數據流的分布式機器學習系統/ 241 11.4.1 數據流/ 241 11.4.2 TensorFlow數據流系統/ 243 11.5 實戰比較/ 248 11.6 總結/ 252 參考文獻/ 252 第12章 結語/ 255 12.1 全書總結/ 256 12.2 未來展望/ 257 索引/ 260 |
序: |