推薦序一 推薦序二 前言 *1章 數據科學家的成長之路1 1.1 算法與數據科學家1 1.1.1 數據科學、人工智能、機器學習等2 1.1.2 室內活動還是室外活動3 1.2 數據科學家不斷成長的幾個階段3 1.2.1 算法——如何構建數據分析模型5 1.2.2 用法——如何回頭看模型6 1.2.3 業務——如何產生更大價值7 1.2.4 戰略——如何更廣8 1.3 數據科學家的工作模式與組織結構9 1.3.1 數據驅動還是業務驅動9 1.3.2 數據科學家團隊的組織結構9 1.4 數據科學家的工作方法要點10 *2章 大數據探索及預處理13 2.1 大數據探索13 2.1.1 數值類型13 2.1.2 連續型數據的探索14 2.1.3 分類型數據的探索19 2.1.4 示例:數據探索20 2.2 數據預處理26 2.2.1 數據清洗26 2.2.2 數據變換29 2.2.3 數據歸約41 2.3 衍生指標的加工44 2.3.1 衍生指標概述45 2.3.2 將數值轉化為百分位數45 2.3.3 把類別變量替換為數值46 2.3.4 多變量組合47 2.3.5 從時間序列中提取特征47 第3章 預測模型的新技術49 3.1 集成學習49 3.1.1 Averaging方法49 3.1.2 Boosting方法51 3.2 Gradient Tree Boosting介紹53 3.2.1 梯度與梯度下降53 3.2.2 Gradient Tree Boosting算法的原理55 3.3 Gradient Tree Boosting的改進方向57 3.3.1 Gradient Tree Boosting的使用要點57 3.3.2 Regularization59 3.3.3 XGBoost介紹60 3.4 模型的*佳參數設置60 3.5 投票決定*終預測結果65 3.6 讓模型在訓練結束後還能被更新66 3.6.1 熱啟動67 3.6.2 增量學習67 3.7 多輸出預測68 3.7.1 Binary Relevance69 3.7.2 Classifier Chain70 3.7.3 Ensemble Classifier Chain70 3.8 案例:如何給客戶從數百個產品中尋找合適的產品71 3.8.1 問題提出72 3.8.2 建模思路72 3.8.3 模型訓練及應用73 第4章 序列分析76 4.1 通過客戶行為研究做出服務策略76 4.2 頻繁項集、關聯規則的挖掘77 4.2.1 基本概念77 4.2.2 頻繁或稀疏項集的挖掘78 4.2.3 關聯規則的挖掘86 4.3 序列模式的挖掘以及應用88 4.3.1 換種視角觀察項間的順序88 4.3.2 “事無巨細”還是“事有巨細”89 4.3.3 序列挖掘的相關算法介紹92 4.3.4 示例:挖掘購買物品的序列模式96 4.4 序列規則的挖掘以及應用101 4.4.1 將頻繁序列通過業務解讀轉換為行動指南101 4.4.2 序列規則的挖掘實現行動指南102 4.4.3 序列規則的挖掘算法102 4.4.4 示例:通過客戶購買產品的序列推薦合適的產品104 4.5 序列預測的挖掘以及應用107 4.5.1 序列規則與序列預測的關繫107 4.5.2 序列預測算法的介紹108 4.5.3 示例:客戶下一步會做什麼110 第5章 應用數據分析做出*優決策114 5.1 Prescriptive分析概述114 5.1.1 業務分析的3個層次115 5.1.2 為什麼需要Prescriptive分析116 5.1.3 什麼時候需要Prescriptive分析117 5.2 確定因素和非確定因素下的決策分析118 5.3 What-If分析和Goal Seeking分析121 5.4 優化技術介紹122 5.4.1 數據挖掘算法中常用的優化技術122 5.4.2 優化問題求解工具介紹127 5.4.3 C*PY優化工具在機器學習算法中的應用130 5.4.4 應用優化技術尋找*優產品推薦134 5.5 仿真分析135 5.5.1 蒙特卡洛的介紹135 5.5.2 采用蒙特卡洛方法進行重采樣137 5.6 馬爾可夫鏈及馬爾可夫決策過程143 5.6.1 馬爾可夫過程及馬爾可夫鏈145 5.6.2 馬爾可夫決策過程及應用工具148 5.6.3 應用馬爾可夫決策過程研究營銷策略及客戶生命周期價值151 第6章 深入探討CNN155 6.1 換個角度討論CNN155 6.1.1 卷積是在做什麼156 6.1.2 人臉檢測與人臉識別159 6.1.3 深度學習意味著什麼165 6.1.4 CNN的結構168 6.1.5 CNN的訓練及結果172 6.2 用CNN做人臉識別174 6.2.1 數據加載175 6.2.2 使用ImageDataGenerator175 6.2.3 定義模型和訓練模型176 6.2.4 詳細探究卷積*終的效果178 6.3 Embedding181 6.3.1 文本向量化的一般方法181 6.3.2 Word Embedding的原理及實現186 6.3.3 利用Word Embedding實現翻譯190 6.3.4 Embedding的用途不止於Word Embedding192 6.4 一個例子:文本分類193 6.4.1 采用傳統分類模型實現文本分類193 6.4.2 采用CNN進行文本分類196 6.4.3 采用FastText進行文本分類200 第7章 深入探討RNN201 7.1 兩種建模方法:Prediction 和 Sequence Labeling201 7.1.1 Prediction的特點201 7.1.2 Sequence Labeling的特點202 7.2 RNN及其變種的詳細原理203 7.2.1 RNN的Activation 函數204 7.2.2 RNN 的初及計算邏輯205 7.2.3 LSTM及計算邏輯205 7.2.4 GRU與計算邏輯206 7.2.5 深度RNN的原理207 7.2.6 RNN算法的輸入輸出形式208 7.3 利用LSTM預測股票價格209 7.3.1 模型構建及驗證209 7.3.2 模型應用的探討216 7.4 讓計算機學會寫唐詩216 7.4.1 構想:如何讓計算機能夠寫出唐詩216 7.4.2 構建:模型實現的過程218 7.5 預測客戶的下一個行為221 7.5.1 構想:如何利用LSTM實現客戶行為的預測221 7.5.2 構建:模型實現過程222 7.6 計算機,請告訴我你看到了什麼226 7.6.1 構想:如何讓計算機生成圖片描述226 7.6.2 實現:逐步構建圖片描述生成模型227 7.6.3 VQA232 第8章 深入探討GAN235 8.1 基本原理235 8.1.1 構想235 8.1.2 GAN的基本結構237 8.1.3 GAN模型訓練及應用過程240 8.1.4 GAN原理的再探索241 8.2 讓計算機書寫數字243 8.2.1 建模思路243 8.2.2 基本實現過程244 8.2.3 采用DCGAN來實現248 8.3 讓計算機畫一張人臉251 8.3.1 如何讓計算機理解我們的要求252 8.3.2 基本實現過程253 |