本書(shū)介紹了人工智能領(lǐng)域常用的方法,包括搜索、統(tǒng)計(jì)學(xué)習(xí)、深度學(xué)習(xí)和自動(dòng)機(jī)器學(xué)習(xí)等內(nèi)容。各章節(jié)涉及的問(wèn)題均根據(jù)歷史典故或現(xiàn)實(shí)生活引出,并使用通俗易懂的方式提出問(wèn)題及其解決方法。因此,讀者在閱讀本書(shū)時(shí)不會(huì)感到枯燥無(wú)味,也不需要具備人工智能相關(guān)的知識(shí)背景。書(shū)中包含很多代碼示例,每個(gè)示例均有詳細(xì)的解釋,有助于讀者進(jìn)一步理解相應(yīng)的算法。在學(xué)完本書(shū)后,讀者將初步具備使用人工智能算法解決生活中實(shí)際問(wèn)題的能力。
本書(shū)可作為高校人工智能及相關(guān)專業(yè)的教材,也可供計(jì)算機(jī)相關(guān)領(lǐng)域從業(yè)人員參考使用。
(1)由淺入深 通俗易懂
本書(shū)旨在以通俗、易懂的方式讓讀者掌握人工智能的基本技術(shù)。描述問(wèn)題及解答方案時(shí)不使用復(fù)雜的公式,也不使用晦澀難懂的專業(yè)術(shù)語(yǔ),因此讀者無(wú)需具備相關(guān)領(lǐng)域的專業(yè)知識(shí)即可開(kāi)始閱讀本書(shū)。
(2)案例豐富 代碼詳解
除了相關(guān)理論知識(shí)外,本書(shū)還選取了多個(gè)典型的應(yīng)用案例,每個(gè)案例均給出了代碼實(shí)現(xiàn)以及詳細(xì)的解釋,有助于讀者進(jìn)一步理解相應(yīng)的算法原理。
(3)立體資源 多元服務(wù)
本書(shū)配套教學(xué)PPT、教學(xué)大綱、教案、案例素材、文獻(xiàn)導(dǎo)讀及視頻等豐富的教學(xué)輔助資源,全方位服務(wù)于教師教學(xué)。
周慶國(guó),蘭州大學(xué)信息科學(xué)與工程學(xué)院教授,博導(dǎo),中國(guó)計(jì)算機(jī)學(xué)會(huì)(CCF)高級(jí)會(huì)員,首批全國(guó)萬(wàn)名優(yōu)秀創(chuàng)新創(chuàng)業(yè)導(dǎo)師,教育部“新世紀(jì)優(yōu)秀人才支持計(jì)劃”入選者,寧夏回族自治區(qū)高等學(xué)校特聘教授,青海省“高端創(chuàng)新人才千人計(jì)劃”(引進(jìn)領(lǐng)軍人才)入選者,蘭州大學(xué)開(kāi)源軟件與實(shí)時(shí)系統(tǒng)教育部工程研究中心副主任,蘭州大學(xué)計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)研究所所長(zhǎng),蘭州大學(xué)分布式與嵌入式系統(tǒng)實(shí)驗(yàn)室主任。目前主要從事實(shí)時(shí)系統(tǒng)、嵌入式系統(tǒng)、人工智能的研究,2017年研制了甘肅省第一輛無(wú)人駕駛試驗(yàn)車。近年來(lái)榮獲甘肅省科技進(jìn)步二等獎(jiǎng)(1/8)、第一屆全國(guó)高等學(xué)校計(jì)算機(jī)教育教學(xué)青年教師優(yōu)秀論文獎(jiǎng)一等獎(jiǎng)、蘭州大學(xué)教學(xué)成果獎(jiǎng)一等獎(jiǎng)(1/5)等榮譽(yù),牽頭編制了《甘肅省網(wǎng)絡(luò)空間安全綱要》。
雍賓賓,蘭州大學(xué)信息科學(xué)與工程學(xué)院副教授,碩士生導(dǎo)師。主要從事高性能計(jì)算、深度學(xué)習(xí)和自動(dòng)駕駛相關(guān)研究。2018年獲ACM蘭州分區(qū)優(yōu)秀博士,2019年獲得谷歌獎(jiǎng)教金,2021年獲得華為云與計(jì)算先鋒教師。共發(fā)表學(xué)術(shù)論文三十余篇,承擔(dān)5項(xiàng)教育部產(chǎn)學(xué)合作項(xiàng)目。
人工智能技術(shù)基礎(chǔ) 1
內(nèi)容提要 1
前 言 2
目 錄 4
第 一章 趣談/漫話人工智能 11
1.1 一個(gè)古老的職業(yè) 11
1.2 最后的觀(占)星大師 12
1.3 中世紀(jì)的宇宙模型 13
1.4 八卦中的秘密 14
1.5 另一個(gè)蘋(píng)果 16
1.6 神經(jīng)網(wǎng)絡(luò)發(fā)展 20
1.7 新時(shí)代的煉金術(shù) 21
1.8 深度學(xué)習(xí)和大數(shù)據(jù) 22
1.9 最后的圍棋大師 23
本章小結(jié) 24
習(xí)題 24
第二章 學(xué)習(xí)在于實(shí)踐-編程環(huán)境和基礎(chǔ) 25
2.1編程環(huán)境管家-Anaconda管理工具 25
2.1.1 Anaconda 簡(jiǎn)介 25
2.1.2 如何安裝 25
2.1.3 環(huán)境管理 28
2.2簡(jiǎn)明膠水語(yǔ)言-Python 29
2.2.1 簡(jiǎn)介 29
2.2.2 安裝 29
2.2.3 基礎(chǔ)語(yǔ)法 30
2.2.4 解決兔子繁殖問(wèn)題 35
2.3 面向數(shù)組的計(jì)算-NumPy 36
2.3.1 簡(jiǎn)介 36
2.3.2 安裝 36
2.3.3 基礎(chǔ)語(yǔ)法 37
2.3.4 案例 38
2.4 機(jī)器學(xué)習(xí)百寶箱-Sklearn 41
2.4.1 簡(jiǎn)介 41
2.4.2 安裝 41
2.5 大道至簡(jiǎn)-keras 42
2.5.1 簡(jiǎn)介 42
2.5.2 安裝 42
本章小結(jié) 43
習(xí)題 43
第三章 窮舉的魅力-搜索 44
3.1驢友的困惑-經(jīng)典旅行問(wèn)題 44
3.1.1 七橋問(wèn)題 44
3.1.2 旅行商問(wèn)題 45
3.1.3 迷宮問(wèn)題 46
3.2搜索的積木-基礎(chǔ)數(shù)據(jù)結(jié)構(gòu) 46
3.2.1 樹(shù) 46
3.2.2 圖 47
3.2.3 !49
3.2.4 優(yōu)先隊(duì)列 50
3.3林深時(shí)見(jiàn)鹿-深度優(yōu)先搜索 51
3.3.1 寬度優(yōu)先搜索簡(jiǎn)介 51
3.3.2 使用DFS解決七橋問(wèn)題 54
3.3.3 使用DFS解決旅行商問(wèn)題 55
3.3.4 使用DFS解決迷宮問(wèn)題 57
3.4近水樓臺(tái)先得月-廣度優(yōu)先搜索 59
3.4.1 廣度優(yōu)先搜索簡(jiǎn)介 59
3.4.2使用BFS解決七橋問(wèn)題 59
3.4.3 使用BFS解決旅行商問(wèn)題 59
3.4.4 使用BFS解決迷宮問(wèn)題 60
本章小結(jié) 60
習(xí)題 60
第四章 計(jì)算機(jī)里的物競(jìng)天擇-進(jìn)化算法 61
4.1 生物的演化規(guī)律-物種起源 61
4.2程序的優(yōu)化方法-遺傳算法 61
4.2.1 遺傳學(xué)的啟發(fā) 61
4.2.2 遺傳定律 62
4.2.3 遺傳算法 62
4.3基因優(yōu)化的模擬-交叉變異 64
4.3.1 基因的二進(jìn)制表示 64
4.3.2 適應(yīng)度的選擇方法 65
4.3.3 基因交叉計(jì)算 66
4.3.4 基因變異 67
4.4更高級(jí)的程序優(yōu)化-進(jìn)化算法 67
4.4.1 進(jìn)化算法原理 67
4.4.2 數(shù)值優(yōu)化應(yīng)用實(shí)踐 67
4.4.3 進(jìn)化算法庫(kù)Geatpy 69
4.5橫看成嶺側(cè)成峰-多目標(biāo)優(yōu)化 72
4.5.1 帕累托最優(yōu) 73
4.5.2 多目標(biāo)優(yōu)化算法 73
4.5.3 多目標(biāo)優(yōu)化實(shí)踐 73
4.6麻雀雖小五臟俱全-其它進(jìn)化算法 75
4.6.1 粒子群優(yōu)化算法 75
4.6.2 蟻群算法 76
本章小結(jié) 77
習(xí)題 77
第五章 數(shù)據(jù)即規(guī)律-統(tǒng)計(jì)學(xué)習(xí) 78
5.1 潤(rùn)物細(xì)無(wú)聲-教師和學(xué)習(xí) 78
5.2 理想中的世界-線性模型 80
5.3 物以類聚,人以群分-聚類 86
5.4 如何做出選擇-決策樹(shù) 87
5.5 維度的秘密-支持向量機(jī) 90
5.6 三個(gè)臭皮匠頂個(gè)諸葛亮--集成機(jī)器學(xué)習(xí) 93
5.7 本章小結(jié) 94
5.8 習(xí)題 95
第六章 描述萬(wàn)物的規(guī)律-神經(jīng)網(wǎng)絡(luò) 96
6.1 最簡(jiǎn)單的神經(jīng)網(wǎng)絡(luò)模型-感知機(jī) 96
6.2 神經(jīng)網(wǎng)絡(luò)的核心-非線性激活函數(shù) 97
6.3 感知機(jī)的缺陷-解決找茬(異或)難題 99
6.4 萬(wàn)能的神經(jīng)網(wǎng)絡(luò)-通用函數(shù)擬合 103
6.5 魔方缺了一面-利用反向傳播求解神經(jīng)網(wǎng)絡(luò) 106
6.6 構(gòu)建神經(jīng)網(wǎng)絡(luò)的積木-keras API函數(shù) 109
6.7 開(kāi)始動(dòng)手-神經(jīng)網(wǎng)絡(luò)應(yīng)用 112
本章小結(jié) 116
習(xí)題 116
第七章 抽象的威力-深度學(xué)習(xí) 117
7.1被麻醉的貓-生物視覺(jué)原理 117
7.2深度學(xué)習(xí)的視覺(jué)-CNN模型 118
7.2.1 彩色圖片數(shù)據(jù)組成 119
7.2.2 CNN是怎么工作的 119
7.2.3 CNN學(xué)到了什么 122
7.2.4 CNN應(yīng)用實(shí)例—貓狗大戰(zhàn) 123
7.3瞻前顧后的深度模型-RNN 130
7.3.1 RNN模型結(jié)構(gòu) 130
7.3.2 往前看和往后看——雙向RNN 132
7.3.3 RNN的其他應(yīng)用 132
7.4 最大的煩惱就是記性太好-長(zhǎng)短期記憶網(wǎng)絡(luò) 132
7.4.1 梯度消失和梯度爆炸問(wèn)題 132
7.5 本章小結(jié) 140
7.6 習(xí)題 140
7.7 拓展閱讀 141
第八章 深度學(xué)習(xí)的集市 142
8.1學(xué)會(huì)識(shí)別不同的圖像-圖像分類 142
8.2尋找物體的相框-目標(biāo)檢測(cè) 150
8.2.1 數(shù)據(jù)集 150
8.2.2 基本原理 152
8.2.3 知名目標(biāo)檢測(cè)模型 153
8.3學(xué)會(huì)區(qū)分不同的物體邊界-語(yǔ)義分割 158
8.3.1 數(shù)據(jù)集 158
8.3.2 基本原理 161
8.3.3 知名語(yǔ)義分割模型 161
本章小結(jié) 163
習(xí)題 163
第九章 基于關(guān)系的網(wǎng)絡(luò)-GNN 164
9.1 關(guān)系的表述-又是圖結(jié)構(gòu) 164
9.1.1 靈活處理非歐數(shù)據(jù)的GNN 164
9.1.2 定義及概念介紹 165
9.2解決社交問(wèn)題-原理和實(shí)踐 167
9.2.1 GCN原理介紹 167
9.2.2 GCN的應(yīng)用——微博用戶性別預(yù)測(cè)(節(jié)點(diǎn)分類) 167
9.2.3 GCN的應(yīng)用——閑魚(yú)垃圾評(píng)論識(shí)別(邊分類) 169
9.2.4 基于keras的GCN代碼解析 171
9.3 改進(jìn)GCN模型-GAT原理及應(yīng)用 179
9.3.1 GAT原理介紹 179
9.3.2 GAT的應(yīng)用——微博用戶性別預(yù)測(cè) 180
9.3.3 基于keras的GAT代碼解析 181
本章小結(jié) 184
習(xí)題 184
拓展閱讀 184
第十章 巴甫洛夫的狗-智能體學(xué)習(xí) 185
10.1 靈感來(lái)源-反射學(xué)習(xí) 185
10.2 向狗學(xué)習(xí)-強(qiáng)化學(xué)習(xí) 185
10.2.1 發(fā)展歷程 185
10.2.2 強(qiáng)化學(xué)習(xí)范式 186
10.2.3 值函數(shù)與策略函數(shù) 189
10.2.4 MDP求解方法 190
10.3 實(shí)現(xiàn)強(qiáng)化學(xué)習(xí)-兩種策略 191
10.3.1 Off-policy學(xué)習(xí) 191
10.3.2 On-policy學(xué)習(xí) 191
10.4 引入萬(wàn)能的神經(jīng)網(wǎng)絡(luò)-深度強(qiáng)化學(xué)習(xí) 192
10.4.1 基于值函數(shù)的方法 193
10.4.2 基于策略梯度方法 193
10.5 解決更復(fù)雜的問(wèn)題-分布式強(qiáng)化學(xué)習(xí) 194
10.5.1 Impala 194
10.5.2 SeedRL 195
10.5.3 Ape-X 196
10.5.4 Acme 196
10.6 史上最強(qiáng)大的狗-阿爾法狗(AlphaGo) 196
10.6.1 圍棋簡(jiǎn)介 196
10.6.2 AlphaGo算法運(yùn)行原理 197
10.6.3 與AlphaGo下棋小例子 199
10.7 走向更強(qiáng)-高級(jí)強(qiáng)化學(xué)習(xí) 200
10.7.1 分層強(qiáng)化學(xué)習(xí) 200
10.7.2 逆強(qiáng)化學(xué)習(xí) 200
10.7.3 元強(qiáng)化學(xué)習(xí) 201
10.7.4 多智能體強(qiáng)化學(xué)習(xí) 201
本章小結(jié) 202
第十一章 學(xué)會(huì)藝術(shù)創(chuàng)作-生成學(xué)習(xí) 203
11.1 和梵高學(xué)習(xí)畫(huà)畫(huà)-風(fēng)格遷移模型 203
11.1.1 深度學(xué)習(xí)作畫(huà) 203
11.1.2 第 一個(gè)風(fēng)格遷移神經(jīng)網(wǎng)絡(luò) 205
11.1.3 固定風(fēng)格任意內(nèi)容的快速風(fēng)格遷移 206
11.1.4 基于keras實(shí)現(xiàn)的Gatys風(fēng)格遷移模型 207
11.2 失業(yè)的畫(huà)家-生成對(duì)抗網(wǎng)絡(luò) 214
11.2.1 對(duì)抗生成模型GAN 214
11.2.2 GAN原理解析 214
11.2.3 基于DCGAN的手寫(xiě)體數(shù)字生成 217
11.3 深度學(xué)習(xí)也“脆弱”-對(duì)抗攻擊 221
11.4復(fù)活的唐詩(shī)-大規(guī)模預(yù)訓(xùn)練模型 223
11.4.1 大規(guī)模預(yù)訓(xùn)練”語(yǔ)言模型 223
11.4.2 BERT和GPT原理淺析 225
11.4.3 基于BERT和GPT的詩(shī)歌生成 226
本章小結(jié) 227
習(xí)題 227
拓展閱讀 227
第十二章 學(xué)習(xí)使我快樂(lè)-自動(dòng)學(xué)習(xí) 228
12.1 如何實(shí)現(xiàn)自動(dòng)學(xué)習(xí)-AutoML原理 228
12.1.1 算法模型選擇 229
12.1.2 超參數(shù)優(yōu)化 230
12.1.3 網(wǎng)絡(luò)結(jié)構(gòu)優(yōu)化 234
12.2 動(dòng)手實(shí)踐-AutoML實(shí)例 234
12.2.1 Auto-sklearn 234
12.2.2 分布式H2O 235
12.3 自動(dòng)深度學(xué)習(xí)-AutoDL 236
12.3.1 深度學(xué)習(xí)概述 236
12.3.2 深度學(xué)習(xí)參數(shù)調(diào)節(jié) 236
12.4 自動(dòng)強(qiáng)化學(xué)習(xí)-AutoRL 237
12.5 自動(dòng)圖神經(jīng)網(wǎng)絡(luò)-AutoGL 238
12.5.1 圖神經(jīng)網(wǎng)絡(luò)簡(jiǎn)介 238
12.5.2 自動(dòng)圖神經(jīng)網(wǎng)絡(luò) 239
本章小結(jié) 242
參考文獻(xiàn) 243