機器學習之路 : Caffe、Keras、scikit-learn 實戰
內容描述
《機器學習之路——Caffe、Keras、scikit-learn實戰》內容提要
機器學習需要一條脫離過高理論門檻的入門之路。
《機器學習篇》從小紅帽採蘑菇的故事開篇,介紹了基礎的機器學習分類模型的訓練(第1 章)。
如何評估、調試模型?如何合理地發掘事物的特徵?如何利用幾個模型共同發揮作用?後續章節一步一步講述瞭如何優化模型,更好地完成分類預測任務(第2 章)
並且初步嘗試將這些技術運用到金融股票交易中(第3 章)。自然界好的非線性模型莫過於人類的大腦。
《深度學習篇》從介紹並對比一些常見的深度學習框架開始(第4 章)
講解了DNN 模型的直觀原理,嘗試給出一些簡單的生物學解釋,完成簡單的圖片識別任務(第5 章)。
後續章節在此基礎上,完成更為復雜的圖片識別CNN 模型(第6 章)。
接著,本書展示了使用Caffe 完成一個完整的圖片識別項目,從準備數據集,到完成識別任務(第7 章)。
後面簡單描述了RNN 模型(第8 章),
接著展示了一個將深度學習技術落地到圖片處理領域的項目(第9 章)。
《機器學習篇》適合能看懂Python 代碼,對機器學習感興趣,期望入門的讀者。
海報:
目錄大綱
第1篇機器學習篇
第1章初識機器學習2
1.1機器學習——賦予機器“學習”的靈魂2
1.1.1小紅帽識別毒蘑菇2
1.1.2三種機器學習問題6
1.1.3常用符號6
1.1.4回顧7
1.2 KNN——相似的鄰居請投票7
1.2.1模型原理7
1.2.2鳶尾花卉數據集(IRIS) 9
1.2.3訓練模型9
1.2.4評估模型12
1.2.5關於KNN 14
1.2.6運用KNN模型15
1.2.7回顧16
1.3邏輯分類I:線性分類模型16
1.3.1參數化的模型16
1.3.2邏輯分類:預測18
1.3.3邏輯分類:評估22
1.3.4邏輯分類:訓練23
1.3.5回顧24
1.4邏輯分類II:線性分類模型24
1.4.1尋找模型的權重24
1.4.2去均值和歸一化31
1.4.3實現33
1.4.4回顧34
第2章機器學習進階35
2.1特徵工程35
2.1.1泰坦尼克號生存預測35
2.1.2兩類特徵38
2.1.3構造非線性特徵41
2.1.4回顧45
2.2調試模型46
2.2.1模型調試的目標46
2.2. 2調試模型49
2.2.3回顧52
2.3分類模型評估指標53
2.3.1混淆矩陣係指 53
2.3.2評估曲線58
2.3.3回顧61
2.4回歸模型61
2.4.1回歸與分類61
2.4.2線性回歸62
2.4.3波士頓房價預測66
2.4.4泰坦尼克號生存預測:回歸預測特徵年齡Age 69
2.4.5線性模型與非線性模型72
2.4.6回顧73
2.5決策樹模型73
2.5.1信息與編碼74
2.5.2決策樹76
2.5.3對比線性模型和決策樹模型的表現77
2.5.4回顧79
2.6模型融合80
2.6.1融合成群體(Ensamble) 80
2.6.2 Bagging:隨機森林(Random Forest) 82
2.6.3 Boosting:GBDT 83
2.6.4 Stacking 86
2.6.5泰坦尼克號生存預測:小結93
2.6.6回顧94
第3章實戰:股票量化95
3.1第1步:構造童話世界95
3.1.1股票是什麼95
3.1.2當機器學習與量化交易走在一起96
3.1.3構造一個童話世界96
3.1.4回顧100
3.2第二步:應用機器學習100
3.2.1構建特徵數據100
3.2.2回歸預測股票價格103
3.2.3分類預測股票漲跌108
3.2.4通過決策樹分類,繪製決策圖112
3.2.5回顧114
3.3第三 :在真實世界應用機器學習114
3.3.1回測115
3.3.2基於特徵的交易預測119
3.3.3破滅的童話——真實世界的機器學習122
第二篇深度學習篇
第4章深度學習:背景和工具126
4.1背景126
4.1.1人工智能——為機器賦予人的智能126
4.1.2圖靈測試126
4.1.3強人工智能vs弱人工智能127
4.1.4機器學習和深度學習128
4.1.5過度的幻想128
4.1.6回顧129
4.2深度學習框架簡介129
4.2.1評測方式130
4.2.2評測對象131
4.2.3深度學習框架評測131
4.2.4小結135
4.3深度學習框架快速上手135
4.3.1符號主義135
4.3.2 MNIST 136
4.3.3 Keras完成邏輯分類138
4.3.4回顧141
4.4 Caffe實現邏輯分類模型141
4.4.1 Caffe訓練MNIST概覽142
4.4.2 Caffe簡介144
4.4.3準備數據集145
4.4 .4準備模型146
4.4.5模型訓練流程149
4.4.6使用模型149
4.4.7 Caffe的Python接口150
4.4.8回顧151
第5章深層學習模型152
5.1解密生物智能154
5.1.1實驗一:大腦 的材料154
5.1.2實驗二:探索腦皮層的功能區域156
5.1.3實驗三:不同的皮層組織——區別在於函數算法158
5.1.4實驗四:可替換的皮層模塊——神經元組成的學習模型161
5.1.5模擬神經元162
5.1.6生物結構帶來的啟發163
5.1.7回顧164
5.2 DNN神經網絡模型164
5.2.1線性內核和非線性激活164
5.2.2 DNN、CNN、RNN 165
5.2.3邏輯分類:一層神經網絡166
5.2.4更多的神經元167
5.2.5增加Hidden Layer(隱層) 168
5.2.6 ReLu激活函數170
5.2.7理解隱層171
5.2.8回顧172
5.3神經元的深層網絡結構172
5.3.1問題:更寬or更深172
5.3.2鍊式法則:深層模型訓練更快173
5.3.3生物:深層模型匹配生物的層級識別模式175
5.3.4深層網絡結構177
5.3.5回顧178
5.4典型的DNN深層網絡模型:MLP 178
5.4.1優化梯度下降179
5.4.2處理過擬合:Dropout 181
5.4.3 MLP模型182
5.4.4回顧185
5.5 Caffe實現MLP 185
5.5.1搭建MLP 185
5.5.2訓 模型189
5.5.3回顧190
第6章學習空間特徵191
6.1預處理空間數據192
6.1.1像素排列展開的特徵向量帶來的問題192
6.1.2過濾冗餘194
6.1.3生成數據195
6.1.4回顧198
6.2描述圖片的空間特徵:特徵圖199
6.2.1圖片的捲積運算. 199
6.2.2卷積指令和特徵圖201
6.2.3回顧206
6.3 CNN模型I:卷積神經網絡原理206
6.3. 1卷積神經元207
6.3.2卷積層208
6.3.3多層卷積211
6.3.4回顧216
6.4 CNN模型II:圖片識別216
6.4.1連接分類模型216
6.4.2貓狗分類217
6.4. 3反思CNN與DNN的結合:融合訓練221
6.4.4深度學習與生物視覺222
6.4.5回顧224
6.5 CNN的實現模型224
6.5.1 ImageNet簡介224
6.5.2 Googlenet模型和Inception結構226
6.5.3 VGG模型228
6.5.4其他模型231
6.5.5回顧232
6.6微訓練模型(fine-tuning) 232
6.6.1二次訓練一個成熟的模型232
6.6.2微訓練在ImageNet訓練好的模型233
6.6.3回顧239
第7章Caffe實例:狗狗品種辨別240
7 .1準備圖片數據240
7.1.1蒐集狗狗圖片240
7.1.2清洗數據241
7.1.3標準化數據242
7.1.4回顧243
7.2訓練模型243
7.2.1生成樣本集244
7.2.2生成訓練、測試數據集245
7.2.3生成lmdb 246
7.2.4生成去均值文件. 247
7.2.5更改prototxt文件247
7.2.6訓練模型249
7.2.7回顧249
7.3使用生成的模型進行分類249
7.3.1更改deploy.prototxt 249
7.3.2加載模型250
7.3.3回顧257
第8章漫談時間序列模型258
8.1 Embedding 259
8.1.1簡單的文本識別. 260
8.1.2深度學習從讀懂詞義開始261
8.1.3遊戲:詞義運算. 264
8.1.4回顧264
8.2輸出序列的模型265
8.2.1 RNN 265
8.2.2 LSTM 266
8.2.3並用人工特徵和深度學習特徵——一個NLP模型的優化歷程268
8.2.4反思:讓模型擁有不同的能力270
8.2.5回顧273
8.3深度學習:原理篇總結273
8.3.1原理小結273
8.3.2使用建議275
第9章用深度學習做個藝術畫家——模仿實現PRISMA 277
9.1機器學習初探藝 作畫278
9.1.1藝術作畫概念基礎278
9.1.2直觀感受一下機器藝術家279
9.1.3一個有意思的實驗280
9.1.4機器藝術作畫的願景281
9.1.5回顧282
9.2實現秒級藝術作畫282
9.2. 1主要實現思路分解講解283
9.2.2使用統計參數期望與標準差尋找mask 290
9.2.3工程代碼封裝結構及使用示例299
9.2.4回顧和後記302
附錄A機器學習環境部署303
附錄B深度學習環境部署307
附錄C隨書代碼運行環境部署312
作者介紹
阿布:多年互聯網金融技術從業經驗,曾就職於奇虎360、百度互聯網證券、百度金融等互聯網型金融公司,現自由職業,個人量化交易者,擅長個人中小資金量化交易領域系統開發,以及為中小型量化私募資金提供技術解決方案、技術支持、量化培訓等工作。
胥嘉幸:北京大學碩士,先後就職於百度金融證券、百度糯米搜索部門。多年致力於大數據機器學習方面的研究,有深厚的數學功底和理論支撐。在將機器學習技術融於傳統金融量化領域方面頗有研究。