阿里云天池大賽賽題解析——機(jī)器學(xué)習(xí)篇
鏈接:https://pan.baidu.com/s/1KbzZm6Y4VwPMzds4-N7Pyw?pwd=pahv?
提取碼:pahv

《阿里云天池大賽賽題解析——機(jī)器學(xué)習(xí)篇》聚焦機(jī)器學(xué)習(xí)算法建模及相關(guān)技術(shù),以工業(yè)蒸汽量預(yù)測、天貓用戶重復(fù)購買預(yù)測、O2O優(yōu)惠券預(yù)測和阿里云安全惡意程序檢測等四個天池經(jīng)典賽題作為實戰(zhàn)案例,針對實際賽題按照賽題理解、數(shù)據(jù)探索、特征工程、模型訓(xùn)練、模型驗證、特征優(yōu)化、模型融合等步驟,將賽題的解決方案從0到1層層拆解、詳細(xì)說明,在展現(xiàn)專業(yè)選手解題過程的同時,配以豐富的相關(guān)技術(shù)知識作為補(bǔ)充。
《阿里云天池大賽賽題解析——機(jī)器學(xué)習(xí)篇》從經(jīng)典商業(yè)案例出發(fā),內(nèi)容由淺入深、層層遞進(jìn),既可以作為專業(yè)開發(fā)者的參考用書,也可以作為參賽新手研讀專業(yè)算法的實戰(zhàn)手冊。
作者簡介
本書由阿里云天池平臺編寫。
天池平臺已經(jīng)舉辦了超過 200 場來自真實業(yè)務(wù)場景的競賽,每場賽事沉淀的課題和數(shù)據(jù)集,將在天池保留和開放。天池平臺已成為在校學(xué)生踏入職場前的虛擬實踐基地,也成為聚集40萬數(shù)據(jù)人才,孵化2000余家數(shù)據(jù)創(chuàng)新工作室的數(shù)據(jù)智能大社區(qū)。
精彩書評
人工智能是引領(lǐng)新一輪科技革命和產(chǎn)業(yè)變革的戰(zhàn)略性技術(shù),是推動我國科技跨越式發(fā)展、產(chǎn)業(yè)優(yōu)化升級、生產(chǎn)力整體躍升的重要戰(zhàn)略資源。人工智能的發(fā)展需要與產(chǎn)業(yè)緊密融合,除了基礎(chǔ)數(shù)據(jù)和平臺技術(shù)的突破創(chuàng)新,還需要搭好人工智能與應(yīng)用場景有效銜接的橋梁。高校在人工智能人才培養(yǎng)的過程中,要重視人工智能技術(shù)與產(chǎn)業(yè)的結(jié)合,基于真實的業(yè)務(wù)數(shù)據(jù)和時間場景,通過知識深度和高度的構(gòu)筑幫助學(xué)生成長,夯實基礎(chǔ),深化專業(yè),復(fù)合知識,加強(qiáng)實踐。本書以簡單易懂的方式介紹了人工智能算法的實踐操作,讓學(xué)生在有限的時間內(nèi),能生動領(lǐng)會人工智能關(guān)鍵技術(shù)的應(yīng)用,為進(jìn)一步深入研究人工智能問題打下良好的基礎(chǔ)。
——中國工程院院士,清華大學(xué)教授、清華大學(xué)信息科學(xué)技術(shù)學(xué)院院長、清華大學(xué)腦與認(rèn)知科學(xué)研究院院長,中國人工智能學(xué)會理事長 戴瓊海
本書是面向AI開發(fā)者的實戰(zhàn)類技術(shù)圖書,聚焦機(jī)器學(xué)習(xí)算法建模及相關(guān)技術(shù),以四個天池經(jīng)典賽題作為實戰(zhàn)案例,內(nèi)容由淺入深、層層遞進(jìn),值得一讀。
——浙江大學(xué)研究生院副院長、軟件學(xué)院常務(wù)副院長 卜佳俊
本書以天池大賽的四個應(yīng)用場景為背景,全面展示了數(shù)據(jù)特征分析、模型方法、解題思路、具體的數(shù)據(jù)處理技巧和代碼等,不僅能為讀者參加比賽提供參考,而且能提升讀者利用機(jī)器學(xué)習(xí)解決實際問題的能力。
——北京大學(xué)信息科學(xué)技術(shù)學(xué)院計算機(jī)系教授 高軍
天池大賽提供了一個“云”上的練兵場,讓所有對人工智能應(yīng)用感興趣的開發(fā)者都能很容易地觸達(dá)業(yè)界的實際需求和場景?;谔斐氐膶嶋H案例,本書向讀者提供了一手的體感和經(jīng)驗,非常值得一讀。
——阿里巴巴副總裁 賈揚(yáng)清
天池大數(shù)據(jù)競賽的參賽經(jīng)歷,對我個人的能力和職業(yè)發(fā)展起到了積極影響,而賽題的解決方案可以用于解決工業(yè)界的眾多實際問題,相信無論在校學(xué)生還是互聯(lián)網(wǎng)從業(yè)者,都可以從本書中獲益良多。
——天池比賽冠軍,快手科技技術(shù)專家 李森棟
訓(xùn)練數(shù)據(jù)的收集和處理能力已經(jīng)成為人工智能系統(tǒng)設(shè)計中的必要因素,而天池大賽為廣大缺乏上述能力的研究人員提供了一個很好的學(xué)習(xí)與訓(xùn)練平臺,本書值得推薦給大家。
——清華大學(xué)計算機(jī)系教授 劉奕群
多年來,阿里云的天池大賽深受海內(nèi)外熱愛人工智能的學(xué)生的歡迎,大賽提供了海量的實際應(yīng)用場景數(shù)據(jù),其都是學(xué)生在校園場景中難以觸及的。本書由具有豐富實戰(zhàn)經(jīng)驗的大賽選手和組織者精心完成,內(nèi)容翔實,我非常樂意把它推薦給人工智能愛好者和學(xué)習(xí)者。
——新加坡南洋理工大學(xué)計算機(jī)科學(xué)與工程學(xué)院院長 苗春燕
本書從賽題理解到解決方案,將整個實操過程展現(xiàn)得淋漓盡致,帶你深入了解機(jī)器學(xué)習(xí)算法的真實應(yīng)用。天池為年輕人提供了一個展示與交流的平臺,期待越來越多的青年學(xué)子與天池一起成長。
——清華大學(xué)計算機(jī)系教授 唐杰
大數(shù)據(jù)驅(qū)動這一計算范式可從人機(jī)物交互所涌現(xiàn)的海量數(shù)據(jù)中預(yù)測人類社會的生活模式、經(jīng)濟(jì)形態(tài)和生產(chǎn)方式等,本書從算法的角度介紹了在線經(jīng)濟(jì)領(lǐng)域中從大數(shù)據(jù)到知識、從知識到?jīng)Q策的過程,凸顯了“知其意,悟其理,守其則,踐其行”的初衷。
——浙江大學(xué)人工智能研究所所長 吳飛
本書通過幾個經(jīng)典賽題,詳細(xì)剖析了數(shù)據(jù)挖掘?qū)崙?zhàn)中常用的步驟和方法,為大數(shù)據(jù)參賽者鋪墊了一條捷徑。本書教你內(nèi)練算法理論,外練代碼招式,見招拆招,快速成為天池論劍中的佼佼者。
——天池比賽冠軍,菜鳥網(wǎng)絡(luò)科技有限公司高級算法工程師 姚易辰
阿里云歷時七年,精心打造天池大賽平臺,其有效服務(wù)于阿里經(jīng)濟(jì)體、阿里云客戶、高校學(xué)生及社會各個行業(yè)。此書對天池大賽機(jī)器學(xué)習(xí)部分的賽題進(jìn)行了全方位的系統(tǒng)性梳理,是一本真正意義上的實操手冊。
——蘇州大學(xué)計算機(jī)學(xué)院院長 張民
本書系統(tǒng)地介紹了天池多個機(jī)器學(xué)習(xí)比賽的全流程,不管是入門小白,還是競賽愛好者,都能從中收獲甚多。從機(jī)器學(xué)習(xí)競賽小白,到天池比賽冠軍,再到天池比賽出題人,非常感謝阿里云天池平臺伴我一路成長。
——天池比賽冠軍,螞蟻金服AI圖機(jī)器學(xué)習(xí)方向負(fù)責(zé)人 張志強(qiáng)
目錄
賽題一 工業(yè)蒸汽量預(yù)測
1 賽題理解 2
1.1 賽題背景 2
1.2 賽題目標(biāo) 2
1.3 數(shù)據(jù)概覽 2
1.4 評估指標(biāo) 3
1.5 賽題模型 4
2 數(shù)據(jù)探索 6
2.1 理論知識 6
2.1.1 變量識別 6
2.1.2 變量分析 6
2.1.3 缺失值處理 10
2.1.4 異常值處理 11
2.1.5 變量轉(zhuǎn)換 14
2.1.6 新變量生成 15
2.2 賽題數(shù)據(jù)探索 16
2.2.1 導(dǎo)入工具包 16
2.2.2 讀取數(shù)據(jù) 16
2.2.3 查看數(shù)據(jù) 16
2.2.4 可視化數(shù)據(jù)分布 18
2.2.5 查看特征變量的相關(guān)性 26
3 特征工程 33
3.1 特征工程的重要性和處理 33
3.2 數(shù)據(jù)預(yù)處理和特征處理 33
3.2.1 數(shù)據(jù)預(yù)處理 33
3.2.2 特征處理 34
3.3 特征降維 38
3.3.1 特征選擇 39
3.3.2 線性降維 44
3.4 賽題特征工程 45
3.4.1 異常值分析 45
3.4.2 最大值和最小值的
歸一化 46
3.4.3 查看數(shù)據(jù)分布 47
3.4.4 特征相關(guān)性 48
3.4.5 特征降維 48
3.4.6 多重共線性分析 49
3.4.7 PCA處理 50
4 模型訓(xùn)練 52
4.1 回歸及相關(guān)模型 52
4.1.1 回歸的概念 52
4.1.2 回歸模型訓(xùn)練和預(yù)測 52
4.1.3 線性回歸模型 52
4.1.4 K近鄰回歸模型 54
4.1.5 決策樹回歸模型 55
4.1.6 集成學(xué)習(xí)回歸模型 58
4.2 賽題模型訓(xùn)練 61
4.2.1 導(dǎo)入相關(guān)庫 61
4.2.2 切分?jǐn)?shù)據(jù) 62
4.2.3 多元線性回歸 62
4.2.4 K近鄰回歸 62
4.2.5 隨機(jī)森林回歸 63
4.2.6 LGB模型回歸 63
5 模型驗證 64
5.1 模型評估的概念和方法 64
5.1.1 欠擬合與過擬合 64
5.1.2 模型的泛化與正則化 68
5.1.3 回歸模型的評估指標(biāo)和
調(diào)用方法 70
5.1.4 交叉驗證 72
5.2 模型調(diào)參 75
5.2.1 調(diào)參 75
5.2.2 網(wǎng)格搜索 76
5.2.3 學(xué)習(xí)曲線 77
5.2.4 驗證曲線 78
5.3 賽題模型驗證和調(diào)參 78
5.3.1 模型過擬合與欠擬合 78
5.3.2 模型正則化 81
5.3.3 模型交叉驗證 82
5.3.4 模型超參空間及調(diào)參 85
5.3.5 學(xué)習(xí)曲線和驗證曲線 89
6 特征優(yōu)化 93
6.1 特征優(yōu)化的方法 93
6.1.1 合成特征 93
6.1.2 特征的簡單變換 93
6.1.3 用決策樹創(chuàng)造新特征 94
6.1.4 特征組合 94
6.2 賽題特征優(yōu)化 96
6.2.1 導(dǎo)入數(shù)據(jù) 96
6.2.2 特征構(gòu)造方法 96
6.2.3 特征構(gòu)造函數(shù) 96
6.2.4 特征降維處理 96
6.2.5 模型訓(xùn)練和評估 97
7 模型融合 100
7.1 模型優(yōu)化 100
7.1.1 模型學(xué)習(xí)曲線 100
7.1.2 模型融合提升技術(shù) 100
7.1.3 預(yù)測結(jié)果融合策略 102
7.1.4 其他提升方法 105
7.2 賽題模型融合 106
7.2.1 導(dǎo)入工具包 106
7.2.2 獲取訓(xùn)練數(shù)據(jù)和測試
數(shù)據(jù) 106
7.2.3 模型評價函數(shù) 107
7.2.4 采用網(wǎng)格搜索訓(xùn)練
模型 107
7.2.5 單一模型預(yù)測效果 109
7.2.6 模型融合Boosting方法 115
7.2.7 多模型預(yù)測Bagging
方法 118
7.2.8 多模型融合Stacking
方法 119
7.2.9 模型驗證 127
7.2.10 使用lr_reg和lgb_reg
進(jìn)行融合預(yù)測 127
賽題二 天貓用戶重復(fù)購買預(yù)測
1 賽題理解 130
1.1 賽題背景 130
1.2 數(shù)據(jù)介紹 131
1.3 評估指標(biāo) 133
1.4 賽題分析 134
2 數(shù)據(jù)探索 137
2.1 理論知識 137
2.1.1 缺失數(shù)據(jù)處理 137
2.1.2 不均衡樣本 138
2.1.3 常見的數(shù)據(jù)分布 141
2.2 賽題數(shù)據(jù)探索 144
2.2.1 導(dǎo)入工具包 145
2.2.2 讀取數(shù)據(jù) 145
2.2.3 數(shù)據(jù)集樣例查看 145
2.2.4 查看數(shù)據(jù)類型和數(shù)據(jù)
大小 146
2.2.5 查看缺失值 147
2.2.6 觀察數(shù)據(jù)分布 148
2.2.7 探查影響復(fù)購的各種
因素 150
3 特征工程 155
3.1 特征工程介紹 155
3.1.1 特征工程的概念 155
3.1.2 特征歸一化 155
3.1.3 類別型特征的轉(zhuǎn)換 156
3.1.4 高維組合特征的處理 156
3.1.5 組合特征 157
3.1.6 文本表示模型 157
3.2 賽題特征工程思路 158
3.3 賽題特征工程構(gòu)造 160
3.3.1 工具導(dǎo)入 160
3.3.2 數(shù)據(jù)讀取 160
3.3.3 對數(shù)據(jù)進(jìn)行內(nèi)存壓縮 161
3.3.4 數(shù)據(jù)處理 163
3.3.5 定義特征統(tǒng)計函數(shù) 164
3.3.6 提取統(tǒng)計特征 166
3.3.7 利用Countvector和
TF-IDF提取特征 170
3.3.8 嵌入特征 170
3.3.9 Stacking分類特征 171
4 模型訓(xùn)練 179
4.1 分類的概念 179
4.2 分類相關(guān)模型 179
4.2.1 邏輯回歸分類模型 179
4.2.2 K近鄰分類模型 180
4.2.3 高斯貝葉斯分類模型 182
4.2.4 決策樹分類模型 182
4.2.5 集成學(xué)習(xí)分類模型 183
5 模型驗證 186
5.1 模型驗證指標(biāo) 186
5.1.1 準(zhǔn)確度 186
5.1.2 查準(zhǔn)率和查全率 188
5.1.3 F1值 189
5.1.4 分類報告 189
5.1.5 混淆矩陣 189
5.1.6 ROC 190
5.1.7 AUC曲線 190
5.2 賽題模型驗證和評估 190
5.2.1 基礎(chǔ)代碼 190
5.2.2 簡單驗證 191
5.2.3 設(shè)置交叉驗證方式 192
5.2.4 模型調(diào)參 194
5.2.5 混淆矩陣 195
5.2.6 不同的分類模型 198
5.2.7 自己封裝模型 205
6 特征優(yōu)化 211
6.1 特征選擇技巧 211
6.2 賽題特征優(yōu)化 213
6.2.1 基礎(chǔ)代碼 213
6.2.2 缺失值補(bǔ)全 213
6.2.3 特征選擇 213
賽題三 O2O優(yōu)惠券預(yù)測
1 賽題理解 222
1.1 賽題介紹 222
1.2 賽題分析 223
2 數(shù)據(jù)探索 225
2.1 理論知識 225
2.1.1 數(shù)據(jù)探索的定義 225
2.1.2 數(shù)據(jù)探索的目的 226
2.1.3 相關(guān)Python包 226
2.2 初步的數(shù)據(jù)探索 226
2.2.1 數(shù)據(jù)讀取 226
2.2.2 數(shù)據(jù)查看 227
2.2.3 數(shù)據(jù)邊界探索 231
2.2.4 訓(xùn)練集與測試集的
相關(guān)性 232
2.2.5 數(shù)據(jù)統(tǒng)計 236
2.3 數(shù)據(jù)分布 238
2.3.1 對文本數(shù)據(jù)的數(shù)值化
處理 238
2.3.2 數(shù)據(jù)分布可視化 242
3 特征工程 246
3.1 賽題特征工程思路 246
3.2 賽題特征構(gòu)建 248
3.2.1 工具函數(shù) 248
3.2.2 特征群生成函數(shù) 250
3.2.3 特征集成函數(shù) 256
3.2.4 特征輸出 257
3.3 對特征進(jìn)行探索 260
3.3.1 特征讀取函數(shù) 260
3.3.2 特征總覽 261
3.3.3 查看特征的分布 262
3.3.4 特征相關(guān)性分析 265
4 模型訓(xùn)練 266
4.1 模型訓(xùn)練與評估 266
4.2 不同算法模型的性能對比 271
4.2.1 樸素貝葉斯 271
4.2.2 邏輯回歸 271
4.2.3 決策樹 272
4.2.4 隨機(jī)森林 272
4.2.5 XGBoost 273
4.2.6 LightGBM 274
4.2.7 不同特征效果對比 274
4.3 結(jié)果輸出 274
5 模型驗證 276
5.1 評估指標(biāo) 276
5.2 交叉驗證 276
5.3 模型比較 279
5.4 驗證結(jié)果可視化 282
5.5 結(jié)果分析 289
5.6 模型調(diào)參 290
5.7 實際方案 292
6 提交結(jié)果 299
6.1 整合及輸出結(jié)果 299
6.2 結(jié)果提交及線上驗證 302
賽題四 阿里云安全惡意程序檢測
1 賽題理解 306
1.1 賽題介紹 306
1.2 賽題分析 307
2 數(shù)據(jù)探索 310
2.1 訓(xùn)練集數(shù)據(jù)探索 310
2.1.1 數(shù)據(jù)特征類型 310
2.1.2 數(shù)據(jù)分布 311
2.1.3 缺失值 312
2.1.4 異常值 312
2.1.5 標(biāo)簽分布 313
2.2 測試集數(shù)據(jù)探索 314
2.2.1 數(shù)據(jù)信息 314
2.2.2 缺失值 315
2.2.3 數(shù)據(jù)分布 315
2.2.4 異常值 315
2.3 數(shù)據(jù)集聯(lián)合分析 316
2.3.1 file_id分析 316
2.3.2 API分析 317
3 特征工程與基線模型 318
3.1 特征工程概述 318
3.1.1 特征工程介紹 318
3.1.2 構(gòu)造特征 318
3.1.3 特征選擇 319
3.2 構(gòu)造線下驗證集 319
3.2.1 評估穿越 319
3.2.2 訓(xùn)練集和測試集的特征
差異性 320
3.2.3 訓(xùn)練集和測試集的分布
差異性 320
3.3 基線模型 320
3.3.1 數(shù)據(jù)讀取 320
3.3.2 特征工程 321
3.3.3 基線構(gòu)建 322
3.3.4 特征重要性分析 324
3.3.5 模型測試 325
4 高階數(shù)據(jù)探索 326
4.1 變量分析 326
4.2 高階數(shù)據(jù)探索實戰(zhàn) 329
4.2.1 數(shù)據(jù)讀取 329
4.2.2 多變量交叉探索 329
5 特征工程進(jìn)階與方案優(yōu)化 343
5.1 pivot特征構(gòu)建 343
5.1.1 pivot特征 343
5.1.2 pivot特征構(gòu)建時間 343
5.1.3 pivot特征構(gòu)建細(xì)節(jié)和
特點(diǎn) 343
5.2 業(yè)務(wù)理解和結(jié)果分析 344
5.2.1 結(jié)合模型理解業(yè)務(wù) 344
5.2.2 多分類問題預(yù)測結(jié)果
分析 344
5.3 特征工程進(jìn)階實踐 344
5.3.1 特征工程基礎(chǔ)部分 344
5.3.2 特征工程進(jìn)階部分 348
5.3.3 基于LightGBM的模型
驗證 349
5.3.4 模型結(jié)果分析 351
5.3.5 模型測試 354
6 優(yōu)化技巧與解決方案升級 355
6.1 優(yōu)化技巧:Python處理大數(shù)據(jù)
的技巧 355
6.1.1 內(nèi)存管理控制 355
6.1.2 加速數(shù)據(jù)處理的技巧 356
6.1.3 其他開源工具包 356
6.2 深度學(xué)習(xí)解決方案:TextCNN
建模 358
6.2.1 問題轉(zhuǎn)化 358
6.2.2 TextCNN建模 358
6.2.3 數(shù)據(jù)預(yù)處理 360
6.2.4 TextCNN網(wǎng)絡(luò)結(jié)構(gòu) 361
6.2.5 TextCNN訓(xùn)練和測試 362
6.2.6 結(jié)果提交 364
7 開源方案學(xué)習(xí) 365
查看全部↓