內容提要
作為認知科學的延伸,數據科學一方面應該越來越引起廣大大數據工作者的重視,另一方面也要撩開自己的神秘面紗,以最為親民的姿態和每位大數據工作者成為親密無間的戰友,為用科學的思維方式進行工作做好理論準備。《數據科學家養成手冊》從眾多先賢及科學家的軼事講起,以逐步歸納和遞進的脈絡總結出科學及數據科學所應關注的要點,然後在生產的各個環節中對這些要點逐一進行討論與落實,從更高、更廣的視角回看科學及數據科學在各個生產環節的縮影。《數據科學家養成手冊》並不以高深的數學理論研究作為目的,也不以某一種計算機語言編程作為主線脈絡,而是在一個個看似孤立的故事與工程中不斷拾遺,並試著從中悟出一些道理。
《數據科學家養成手冊》適合大數據從業人員和對大數據相關知識感興趣的人,初級和中級程式設計師、架構師及希望通過對數據的感知改進工作的人,產品經理、運營經理、數據分析師、資料庫開發工程師等對數據分析工作敏感的人,以及所有對數據科學感興趣並希望逐步深入了解數據科學知識體系的人閱讀。
目錄
認知篇
第1章 什麼是科學家 2
1.1 從太陽東升西落開始 2
1.1.1 農曆 2
1.1.2 公曆 5
1.1.3 小結 7
1.2 阿基米德愛洗澡? 7
1.3 托勒密的秘密 10
1.4 牛頓為什麼那么牛 11
1.4.1 蘋果和三大定律 11
1.4.2 極限和微積分 12
1.5 高斯——高,實在是高 15
1.6 離經叛道的愛因斯坦 17
1.7 本章小結 20
第2章 什麼是科學 23
2.1 科學之科 23
2.2 邊界的迷茫 23
2.3 科學之殤 26
2.4 本章小結 27
第3章 數據與數學 28
3.1 什麼是數據 28
3.2 數學的奧妙 29
3.2.1 《幾何原本》 29
3.2.2 《九章算術》 30
3.2.3 高等數學 34
3.3 本章小結 37
第4章 數據科學的使命 38
4.1 走近數據科學 38
4.1.1 介質 38
4.1.2 從信息到數據 41
4.1.3 數據科學的本質 43
4.2 萬能的數據科學 44
4.2.1 測量 44
4.2.2 統計計算 47
4.2.3 指標 52
4.3 使命必達 53
4.3.1 高效生產 53
4.3.2 破除迷信 56
4.3.3 目標一致與不一致 57
4.4 本章小結 58
第5章 矛盾的世界 59
5.1 古希臘——學者高產的國度 59
5.2 矛盾無處不在 61
5.3 世界究竟是否可知 63
5.4 薛丁格的“喵星人” 64
5.5 本章小結 66
第6章 實驗和哲學 68
6.1 樸素的認知方法 68
6.1.1 眼見為實 69
6.1.2 歸納與總結 70
6.2 哲學靠譜嗎 71
6.3 數學的盡頭是哲學 72
6.4 本章小結 73
第7章 辯證思維 74
7.1 要不要辯證有多大區別 74
7.2 誰對誰錯 76
7.3 做到客觀不容易 77
7.4 觀念的存弭 79
7.5 本章小結 82
分化篇
第8章 統計學 86
8.1 數理統計鼻祖—阿道夫·凱特勒 86
8.2 統計就是統共合計 88
8.3 數據來源 90
8.4 抽樣 91
8.5 對照實驗 91
8.6 誤差 94
8.6.1 抽樣誤差 94
8.6.2 非抽樣誤差 96
8.7 概括性度量 97
8.7.1 集中趨勢度量 98
8.7.2 離散程度度量 100
8.7.3 小結 100
8.8 機率與分布 100
8.8.1 數學期望 102
8.8.2 常態分配 103
8.8.3 其他分布 106
8.9 統計學與大數據 107
第9章 資訊理論 109
9.1 模擬信號 109
9.2 信息量與信息熵 110
9.3 香農公式 111
9.4 數位訊號 112
9.5 編碼與壓縮 113
9.5.1 無損壓縮 114
9.5.2 有損壓縮 117
9.6 本章小結 126
第10章 混沌論 127
10.1 洛倫茲在想什麼 128
10.2 羅伯特·梅的養魚計畫 129
10.3 有限的大腦,無限的維 130
10.4 謀殺上帝的拉普拉斯 132
10.5 龐加萊不是省油的燈 134
10.6 未知居然還能做預測 137
10.7 本章小結 137
第11章 算法學 139
11.1 離散的世界 139
11.2 成本的度量 142
11.3 窮舉法——暴力破解 143
11.4 分治法——化繁為簡 152
11.5 回溯法——能省則省 154
11.6 貪心法——局部最優 155
11.7 疊代法——步步逼近 156
11.7.1 牛頓法 157
11.7.2 梯度下降法 158
11.7.3 遺傳算法 159
11.8 機器學習——自動歸納 161
11.8.1 非監督學習 162
11.8.2 監督學習 164
11.8.3 強化學習 176
11.9 神經網路——深度學習 178
11.9.1 神經元 178
11.9.2 BP神經網路 180
11.9.3 損失函式 181
11.9.4 非線性分類 183
11.9.5 激勵函式 187
11.9.6 卷積神經網路 189
11.9.7 循環神經網路 191
11.9.8 小結 194
11.10 本章小結 195
實踐篇
第12章 數據採集 198
12.1 數據的源頭 198
12.2 日誌收集 199
12.2.1 實時上傳 200
12.2.2 延時上傳 203
12.2.3 加密問題 204
12.2.4 壓縮問題 205
12.2.5 連線方式 206
12.2.6 訊息格式 208
12.2.7 維度分解 210
12.3 這只是不靠譜的開始 211
12.4 本章小結 212
第13章 數據存儲 213
13.1 讀寫不對等 213
13.1.1 讀多寫少 214
13.1.2 讀少寫多 214
13.1.3 讀寫都多 215
13.2 進快還是出快 216
13.2.1 最快寫入 216
13.2.2 讀出最快 218
13.3 檔案還是資料庫 218
13.4 要不要支持事務 219
13.5 表分區和索引 221
13.5.1 表分區 222
13.5.2 索引 222
13.6 穩定最重要 225
13.7 安全性和副本 226
13.7.1 RAID 226
13.7.2 軟冗餘 228
13.8 本章小結 229
第14章 數據統計 230
14.1 此“統計”恐非彼“統計” 230
14.2 要精確還是要簡潔 234
14.3 統計是萬能的嗎 235
14.4 注意性能 237
14.5 本章小結 238
第15章 數據建模 239
15.1 模型是寶貴的財富 240
15.2 量化是關鍵 241
15.3 該算法出馬了 241
15.3.1 統計學模型 242
15.3.2 線性關係 243
15.3.3 複雜的非線性關係 243
15.4 算法的哲學 244
15.5 本章小結 245
第16章 數據可視化與分析 247
16.1 看得見,摸得著 247
16.2 顏色很重要 247
16.3 別說布局沒有用 249
16.3.1 由上而下,由簡而繁 249
16.3.2 總-分,分-總,總-分-總 251
16.3.3 毗鄰吸引 252
16.4 有圖就別要表格 253
16.5 分析的內涵 254
16.5.1 相關性分析 255
16.5.2 預測分析 256
16.5.3 其他分析 257
16.6 有趣的統計套用 257
16.6.1 不規則圖形的面積 258
16.6.2 套出你的實話 258
16.6.3 巧測圓周率 259
16.7 仁者見仁,智者見智 260
16.8 永恆的困惑 261
16.9 本章小結 263
第17章 數據決策 264
17.1 決策就是“拍腦袋” 264
17.2 哪裡有物質,哪裡就有數據 265
17.2.1 目的的統一 265
17.2.2 數據勝於雄辯 266
17.3 這是風險博弈 267
17.3.1 性價比優先 267
17.3.2 小疊代至上 268
17.3.3 不要“輸不起” 268
17.3.4 留得青山在 269
17.4 本章小結 270
第18章 案例分析 272
18.1 K線圖裡的秘密 272
18.1.1 什麼是市場 273
18.1.2 誰在控制價格 273
18.1.3 貨幣價格的形成 276
18.1.4 零和博弈 277
18.1.5 漲跌都盈利 278
18.1.6 價格的預測 279
18.1.7 形態 280
18.1.8 K線圖周期 282
18.1.9 造市商與點差 283
18.1.10 科學分析 284
18.1.11 小結 317
18.2 數學能救命 317
18.2.1 陰雲下的大西洋 317
18.2.2 護航船隊的救星 318
18.2.3 數學家的天下 324
18.2.4 小結 324
18.3 人人都能運籌帷幄 325
第19章 與本書相關內容的問與答 326
後記 333
附錄A 335
A.1 VMware Workstation的安裝 335
A.1.1 VMware簡介 335
A.1.2 安裝準備工作 335
A.2 CentOS虛擬機的安裝 338
A.2.1 下載DVD鏡像 338
A.2.2 創建VMware虛擬機 338
A.3 Ubuntu虛擬機的安裝 344
A.4 Python語言簡介 350
A.4.1 安裝Python 350
A.4.2 Hello Python 350
A.4.3 行與縮進 350
A.4.4 變數類型 351
A.4.5 循環語句 352
A.4.6 函式 353
A.4.7 模組 354
A.4.8 小結 354
A.5 Scikit-learn庫簡介 355
A.6 安裝Theano 356
A.7 安裝Keras 356
A.8 安裝MySQL 357
A.9 安裝MySQL-Python驅動 358
A.10 MT4平台簡介 359
參考文獻 363