以機器學習中的典型案例為主線,條分縷析梳理阿里云的平臺功能,講解如何用阿里云的機器學習平臺來實現各類應用,包括商家作弊檢測、生存預測、信用風險預測、用戶購買行為預測等,并完整地介紹了機器學習的基本原理與實踐技巧。
《機器學習在線:解析阿里云機器學習平臺》以機器學習中的典型案例為主線,條分縷析梳理阿里云的平臺功能,講解如何用阿里云的機器學習平臺來實現各類應用,包括商家作弊檢測、生存預測、信用風險預測、用戶購買行為預測等,并完整地介紹了機器學習的基本原理與實踐技巧。
前言
飛速發展的互聯網、物聯網每時每刻都在產生大量的數據,數據的價值也因此被提升到前所未有的高度:越來越多的人投身數據分析的領域,希望通過機器學習及深度學習,從數據中獲取更大的價值。另一方面,云計算的蓬勃發展極大地擴展了數據的存儲能力,它使計算可以同時使用成百上千臺機器,快速解決問題,而在計算完成后,又能及時釋放掉資源,控制成本。
在這樣的大背景下,機器學習算法平臺也獲得了飛速發展,積累了大量高效的機器學習算法組件,基于這些組件我們可以快速實現業務流程,解決具體問題。在為本書定書名時,受到王堅博士《在線》一書的影響,覺得用在線一詞來說明目前機器學習平臺的狀態非常恰當:豐富的算法功能可以在線使用、不需要購買硬件、不需要安裝配置各種環境;數據和計算資源一直處在在線狀態,不必擔心數據太大或計算資源不足的問題。
阿里云機器學習算法平臺不僅在阿里集團內部使用,也已對阿里集團外部開放,讀者可以通過阿里云官網試用或使用本書中介紹的功能。
機器學習平臺提供了一個舞臺,主角是其上面的近百種算法。本書的重點放在這些算法的使用上通過實際的數據和具體的場景,幫助讀者理解各算法所擅長處理的問題;另外,本書是根據機器學習的知識點由淺入深來逐步組織的,以降低閱讀本書的門檻,使讀者對所學的內容能產生清晰的印象。
在具體章節的組織上,阿里云機器學習平臺的介紹占兩個章節,即第1章和附錄A。第1章為平臺簡介,在內容組織上盡量減少文字說明,將最基本的內容用圖例來表示;附錄A介紹了些瑣碎但重要的事情,像如何試用、如何上傳數據以及預處理函數的詳細說明。第2章至第12章是按照機器學習的知識點逐步深入的思路來編排的。分類模型是機器學習理論和應用方面的重頭,首先是數值類型特征的二分類模型、擴展特征的類型、多分類模型;之后介紹聚類模型;然后是回歸模型;再后面介紹文本分析領域的應用(主題模型、向量化、關鍵詞等),根據文本描述進行預測、情感分析,并以電影數據為例,搭建推薦系統。深度學習的內容放在第12章,圍繞TensorFlow框架組件,介紹了一個能體現TensorFlow特點的Softmax模型的例子,然后介紹了使用深度學習DNN分類器的例子。
機器學習平臺降低了我們使用機器學習知識的門檻,將各個算法作為組件,即使不了解其背后的理論知識,讀者仍然可以仿照書中實例,將組件連接起來解決一些實際問題。希望本書能幫助讀者在機器學習的實踐中學習。
最后,感謝一起研發阿里云機器學習平臺的各位同事!感謝家人的理解和支持!
楊旭
2017年7月
2004年獲南開大學數學博士學位;隨后在南開大學信息學院從事博士后研究工作;2006年加入微軟亞洲研究院,進行符號計算、大規模矩陣計算及機器學習算法研究;2010年加入阿里巴巴,從事大數據相關的統計和機器學習算法研發。著有《重構大數據統計》。
第1章 阿里云機器學習1
1.1 產品特點1
1.2 名詞解釋2
1.3 構建機器學習實驗3
1.3.1 新建實驗3
1.3.2 使用組件搭建工作流4
1.3.3 運行實驗、查看結果5
1.3.4 模型部署、在線預測6
第2章 商家作弊行為檢測7
2.1 數據探索8
2.2 建模、預測和評估15
2.3 嘗試其他分類模型19
2.4 判斷商家作弊24
第3章 生存預測27
3.1 數據集一27
3.1.1 特征分析28
3.1.2 生存預測33
3.2 數據集二36
3.2.1 隨機森林模型39
3.2.2 樸素貝葉斯模型47
第4章 信用風險預測50
4.1 整體流程53
4.1.1 特征啞元化54
4.1.2 特征重要性57
4.2 模型效果評估61
4.3 減少模型特征的個數62
第5章 用戶購買行為預測65
5.1 數據探索66
5.2 思路68
5.2.1 用戶和品牌的各種特征69
5.2.2 二分類模型訓練71
5.3 計算訓練數據集71
5.3.1 原始數據劃分72
5.3.2 計算特征74
5.3.3 計算標簽89
5.4 二分類模型訓練90
5.4.1 正負樣本配比90
5.4.2 邏輯回歸算法92
5.4.3 隨機森林算法94
第6章 聚類與分類96
6.1 數據可視化97
6.2 K-Means聚類98
6.2.1 聚類、評估流程100
6.2.2 聚成兩類101
6.2.3 聚成三類103
6.3 K最近鄰算法104
6.3.1 使用KNN算法進行分類105
6.3.2 算法比較108
6.4 多分類模型109
6.4.1 使用樸素貝葉斯算法109
6.4.2 使用邏輯回歸多分類算法112
6.4.3 使用隨機森林算法115
6.4.4 各多分類模型效果對比118
第7章 葡萄酒品質預測119
7.1 數據探索120
7.2 線性回歸123
7.3 GBDT回歸125
第8章 文本分析127
8.1 分詞128
8.2 詞頻統計130
8.3 單詞的區分度131
8.4 字符串比較133
8.5 抽取關鍵詞、關鍵句139
8.5.1 原理簡介139
8.5.2 完整流程141
8.6 主題模型146
8.6.1 LDA模型147
8.6.2 新聞的主題模型149
8.6.3 數據預處理150
8.6.4 主題與原始分類的關系153
8.7 單詞映射為向量160
8.7.1 相近單詞162
8.7.2 單詞聚類165
8.8 組件使用小結168
第9章 基于用戶退貨描述的賠付預測170
9.1 思路171
9.2 訓練集的特征生成173
9.3 測試集的特征生成180
9.4 模型訓練、預測、評估181
9.5 提高召回率185
第10章 情感分析189
10.1 詞袋模型190
10.1.1 訓練集的特征生成192
10.1.2 測試集的特征生成196
10.1.3 模型訓練、預測、評估197
10.2 詞向量模型200
10.2.1 特征生成201
10.2.2 模型訓練206
第11章 影片推薦211
11.1 協同過濾212
11.2 整體流程213
11.3 預處理,過濾出好評信息215
11.4 計算影片間的相似度215
11.5 計算用戶可能喜歡的影片221
11.6 查看推薦效果224
第12章 支持深度學習框架227
12.1 TensorFlow組件簡介227
12.2 Softmax模型231
12.3 深度神經網絡234
附錄A237