本書主要涉及數(shù)據(jù)工程與人工智能算法原理、大數(shù)據(jù)平臺技術、人工智能算法在大數(shù)據(jù)平臺上的實現(xiàn)等,共7章。第1章介紹大數(shù)據(jù)與人工智能的歷史、應用;第2章介紹數(shù)據(jù)工程;第3章介紹大數(shù)據(jù)平臺;第4章介紹人工智能基礎算法的原理;第5章以第4章為基礎,介紹深度學習相關內容;第6章介紹當前熱門的強化學習技術;第7章為數(shù)據(jù)分析與深度學習項目實踐。
本書可作為希望快速了解和入門大數(shù)據(jù)與人工智能領域知識的本科生、研究生的參考書,也可供互聯(lián)網(wǎng)領域中對人工智能算法感興趣的工程技術人員參考使用。
對如何快速把握大數(shù)據(jù)與人工智能的精髓、避免陷入過多的數(shù)學細節(jié)推導的問題,以及人工智能算法和大數(shù)據(jù)平臺技術的結合問題,本書作者做出了不懈探索。
1.選材上,不僅分別單獨講授人工智能和大數(shù)據(jù),還突出兩者相結合的內容。
2.內容上,突出淺顯易懂,繁雜的數(shù)學推導適當做減法,宏觀的介紹和實戰(zhàn)技能適當做加法。
3.結構上,由淺入深,由宏觀到比微觀,由基礎知識到新技術,由理論到實踐。
本書主要突出優(yōu)點如下:
1.知識點覆蓋全。本書共七章,對大數(shù)據(jù)與人工智能領域的常用基礎技術、算法、模型均有介紹,保障讀者知識體系的完整性。
2.知識點覆蓋新。本書緊跟本領域最新研究成果。尤其重點介紹了深度學習基礎知識及其應用。深度學習是當前人工智能領域的潮流和趨勢。另外,本書新版所增加的強化學習是機器學習新興起的一個類別,在許多領域都具有重要作用,具有研究價值。
3.知識點難易程度嚴格控制。有利于讀者構建完整、清晰的知識體系,抓住主干,避免鉆進個別牛角尖。
4.理論與實戰(zhàn)相結合。本書不僅介紹了理論知識,還注重問題建模、數(shù)據(jù)分析、算法實現(xiàn)、模型應用等實戰(zhàn)技能。
5.知識脈絡構建有特色。本書認為,當前人工智能取得重要進展的最根本原因是大數(shù)據(jù),絕不能把兩者割裂開來。
姚海鵬,北京郵電大學副教授, 主要研究方向為未來網(wǎng)絡體系架構、網(wǎng)絡大數(shù)據(jù)、物聯(lián)網(wǎng)等。
劉韻潔,中國工程院院士,現(xiàn)任中國聯(lián)通科技委主任,兼任國家信息化專家咨詢委員會委員、國務院三網(wǎng)融合專家組成員、中國通信學會常務理事、中國互聯(lián)網(wǎng)協(xié)會常務理事,國家未來網(wǎng)絡試驗設施重大科技基礎設施項目負責人,面向服務的未來互聯(lián)網(wǎng)體系結構及機制研究973項目首席科學家,獲得“2014中國互聯(lián)網(wǎng)年度人物”特別貢獻獎。
目 錄
第 1章 緒論 1
1.1 日益增長的數(shù)據(jù) 1
1.1.1 大數(shù)據(jù)基本概念 1
1.1.2 大數(shù)據(jù)發(fā)展歷程 2
1.1.3 大數(shù)據(jù)的特征 3
1.1.4 大數(shù)據(jù)的基本認識 3
1.2 人工智能 4
1.2.1 認識人工智能 4
1.2.2 人工智能的派別與發(fā)展史 4
1.2.3 人工智能的現(xiàn)狀與應用 5
1.2.4 當人工智能遇上大數(shù)據(jù) 7
1.3 大數(shù)據(jù)與人工智能的機遇與挑戰(zhàn) 7
1.3.1 大數(shù)據(jù)與人工智能面臨的難題 7
1.3.2 大數(shù)據(jù)與人工智能的前景 8
第 2章 數(shù)據(jù)工程 10
2.1 數(shù)據(jù)的多樣性 10
2.1.1 數(shù)據(jù)格式的多樣性 10
2.1.2 數(shù)據(jù)來源的多樣性 11
2.1.3 數(shù)據(jù)用途的多樣性 11
2.2 數(shù)據(jù)工程的一般流程 12
2.3 數(shù)據(jù)的獲取 13
2.3.1 數(shù)據(jù)來源 14
2.3.2 數(shù)據(jù)采集方法 14
2.3.3 大數(shù)據(jù)采集平臺 15
2.4 數(shù)據(jù)的存儲與數(shù)據(jù)倉庫 16
2.4.1 數(shù)據(jù)存儲 16
2.4.2 數(shù)據(jù)倉庫 16
2.5 數(shù)據(jù)的預處理技術 17
2.5.1 數(shù)據(jù)預處理的目的 17
2.5.2 數(shù)據(jù)清理 18
2.5.3 數(shù)據(jù)集成 19
2.5.4 數(shù)據(jù)變換 19
2.5.5 數(shù)據(jù)歸約 19
2.6 模型的構建與評估 20
2.6.1 模型的構建 20
2.6.2 評價指標 20
2.7 數(shù)據(jù)的可視化 22
2.7.1 可視化的發(fā)展 22
2.7.2 可視化工具 23
第3章 大數(shù)據(jù)框架 28
3.1 Hadoop簡介 28
3.1.1 Hadoop的由來 28
3.1.2 MapReduce和HDFS 28
3.2 Hadoop大數(shù)據(jù)處理框架 30
3.2.1 HDFS組件與運行機制 30
3.2.2 MapReduce組件與運行機制 33
3.2.3 YARN框架和運行機制 34
3.2.4 Hadoop相關技術 35
3.2.5 Hadoop的安裝 36
3.3 MapReduce編程 39
3.3.1 MapReduce綜述 39
3.3.2 Map階段 40
3.3.3 Shuffle階段 40
3.3.4 Reduce階段 41
3.4 Spark簡介 41
3.4.1 Spark概述 41
3.4.2 Spark基本概念 42
3.4.3 Spark生態(tài)系統(tǒng) 42
3.4.4 Spark組件與運行機制 44
3.4.5 Spark的安裝 44
3.5 Storm簡介 47
3.5.1 Storm概述 47
3.5.2 Storm組件和運行機制 48
3.5.3 Storm的應用 50
3.5.4 Storm的安裝 50
3.6 Flink簡介 53
3.6.1 Flink概述 53
3.6.2 Flink組件和運行機制 54
3.6.3 Flink的應用 55
3.6.4 Flink的安裝和實例講解 56
第4章 機器學習算法 58
4.1 機器學習緒論 58
4.1.1 機器學習基本概念 58
4.1.2 評價標準 59
4.1.3 機器模型的數(shù)學基礎 61
4.2 決策樹理論 64
4.2.1 決策樹模型 65
4.2.2 決策樹的訓練 67
4.2.3 本節(jié)小結 72
4.3 樸素貝葉斯理論 72
4.4 線性回歸 75
4.5 邏輯斯蒂回歸 77
4.5.1 二分類邏輯回歸模型 77
4.5.2 二分類邏輯斯蒂回歸的訓練 79
4.5.3 Softmax分類器 81
4.5.4 邏輯斯蒂回歸和softmax的應用 81
4.5.5 本節(jié)小結 82
4.6 支持向量機 82
4.6.1 間隔 83
4.6.2 支持向量機的原始形式 84
4.6.3 支持向量機的對偶形式 85
4.6.4 特征空間的隱式映射:核函數(shù) 87
4.6.5 支持向量機拓展 88
4.6.6 支持向量機的應用 89
4.7 集成學習 89
4.7.1 基礎概念 89
4.7.2 Boosting 91
4.7.3 Bagging 94
4.7.4 Stacking 95
4.8 神經(jīng)網(wǎng)絡 95
4.8.1 生物神經(jīng)元和人工神經(jīng)元 95
4.8.2 感知機 97
4.8.3 BP神經(jīng)網(wǎng)絡 98
4.8.4 Sklearn中的神經(jīng)網(wǎng)絡 100
4.8.5 本節(jié)小結 101
4.9 聚類 101
4.9.1 聚類思想 101
4.9.2 性能計算和距離計算 101
4.9.3 原型聚類 102
4.9.4 密度聚類 103
4.9.5 層次聚類 104
4.9.6 Sklearn中的聚類 105
4.9.7 本節(jié)小結 105
4.10 降維與特征選擇 105
4.10.1 維數(shù)爆炸與降維 105
4.10.2 降維技術 106
4.10.3 特征選擇技術 108
4.10.4 Sklearn中的降維 108
4.10.5 本節(jié)小結 108
第5章 深度學習簡介 110
5.1 從神經(jīng)網(wǎng)絡到深度神經(jīng)網(wǎng)絡 110
5.1.1 深度學習應用 110
5.1.2 深度神經(jīng)網(wǎng)絡的困難 111
5.2 卷積神經(jīng)網(wǎng)絡 112
5.2.1 卷積神經(jīng)網(wǎng)絡的生物學基礎 112
5.2.2 卷積神經(jīng)網(wǎng)絡結構 113
5.3 循環(huán)神經(jīng)網(wǎng)絡 116
5.3.1 循環(huán)神經(jīng)網(wǎng)絡簡介 116
5.3.2 循環(huán)神經(jīng)網(wǎng)絡結構 116
5.4 生成對抗網(wǎng)絡 118
5.4.1 生成對抗網(wǎng)絡簡介 118
5.4.2 生成對抗網(wǎng)絡結構 119
第6章 強化學習簡介 124
6.1 有限馬爾可夫決策過程 125
6.1.1 目標和獎勵 125
6.1.2 回報和分幕 126
6.1.3 策略和值函數(shù) 127
6.1.4 最優(yōu)策略和最優(yōu)狀態(tài)值函數(shù) 127
6.2 動態(tài)規(guī)劃 129
6.2.1 策略評估 129
6.2.2 策略改進 132
6.2.3 策略迭代 133
6.2.4 價值迭代 134
6.3 時序差分學習 135
6.3.1 時序差分預測 136
6.3.2 TD(0)學習 136
6.3.3 Sarsa算法 137
6.3.4 Q學習算法 138
6.4 策略梯度方法 139
6.4.1 策略梯度定理 140
6.4.2 蒙特卡羅策略梯度 141
6.4.3 “Actor-Critic”方法 142
6.5 深度強化學習 143
6.5.1 深度Q-learning 143
6.5.2 深度確定性策略梯度 146
第7章 數(shù)據(jù)分析實例 149
7.1 基本數(shù)據(jù)分析 149
7.1.1 數(shù)據(jù)介紹 149
7.1.2 數(shù)據(jù)導入與數(shù)據(jù)初識 149
7.1.3 分類 152
7.1.4 回歸 153
7.1.5 降維 154
7.2 深度學習項目實戰(zhàn) 155
7.2.1 Tensorflow與Keras安裝部署 155
7.2.2 使用卷積神經(jīng)網(wǎng)絡進行手寫數(shù)字識別 156
7.2.3 使用LSTM進行文本情感分類 158
參考文獻 162
附錄A 矩陣基礎 163
附錄B 梯度下降 166
附錄C 拉格朗日對偶性 169
附錄D Python語法知識 172
附錄E Java語法基礎介紹 184