算法是人工智能技術(shù)的核心。本書介紹了人工智能的基礎(chǔ)算法,全 書共10 章,涉及維度法、距離度量算法、K 均值聚類算法、誤差計(jì)算、 爬山算法、模擬退火算法、Nelder-Mead 算法和線性回歸算法等。書中 所有算法均配以具體的數(shù)值計(jì)算來進(jìn)行講解,讀者可以自行嘗試。每章 都配有程序示例,GitHub 上有多種語(yǔ)言版本的示例代碼可供下載。 本書適合作為人工智能入門讀者以及對(duì)人工智能算法感興趣的讀者 閱讀參考。
欲建高樓,必重基礎(chǔ)。本書講授諸如維度法、距離度量算法、聚類算法、誤差計(jì)算、爬山算法、模擬退火算法、Nelder-Mead算法和線性回歸算法等人工智能基礎(chǔ)算法。本書中所有算法均配以具體的數(shù)值計(jì)算示例。 人工智能算法系列圖書的目標(biāo)讀者是那些沒有良好數(shù)學(xué)基礎(chǔ),又對(duì)人工智能感興趣的人。本書讀者只需具有基本的大學(xué)代數(shù)和計(jì)算機(jī)編程知識(shí),任何超出這個(gè)范圍的內(nèi)容都會(huì)在書中詳細(xì)說明。本書為讀者提供配套的示例程序代碼, 當(dāng)前已有Java、C#、R、C/C 和Python的語(yǔ)言版本,還有社區(qū)支持維護(hù)的Scala語(yǔ)言版本。
杰弗瑞·希頓(Jeffery Heaton)既是一位活躍的技術(shù)博主、開源貢獻(xiàn)者,也是十多本圖書的作者。他的專業(yè)領(lǐng)域包括數(shù)據(jù)科學(xué)、預(yù)測(cè)建模、數(shù)據(jù)挖掘、大數(shù)據(jù)、商務(wù)智能和人工智能等。他擁有華盛頓大學(xué)信息管理學(xué)碩士學(xué)位,是IEEE的高級(jí)會(huì)員、Sun認(rèn)證Java程序員、開源機(jī)器學(xué)習(xí)框架Encog的首席開發(fā)人員。
第 1 章 AI 入門 1
1.1 與人類大腦的聯(lián)系 2
1.1.1 大腦和真實(shí)世界 3
1.1.2 缸中之腦 5
1.2 對(duì)問題建模 6
1.2.1 大腦和真實(shí)世界 7
1.2.2 回歸分析 9
1.2.3 聚類問題 10
1.2.4 時(shí)序問題 10
1.3 對(duì)輸入/ 輸出建模 11
1.3.1 一個(gè)簡(jiǎn)單的例子 15
1.3.2 燃油效率 16
1.3.3 向算法傳入圖像 18
1.3.4 金融算法 20
1.4 理解訓(xùn)練過程 21
1.4.1 評(píng)估成果 22
1.4.2 批量學(xué)習(xí)和在線學(xué)習(xí) 22
1.4.3 監(jiān)督學(xué)習(xí)和非監(jiān)督學(xué)習(xí) 23
1.4.4 隨機(jī)學(xué)習(xí)和確定學(xué)習(xí) 23
1.5 本章小結(jié) 23
第 2 章 數(shù)據(jù)歸一化 25
2.1 計(jì)量尺度 25
2.2 觀測(cè)值歸一化 29
2.2.1 名義量歸一化 30
2.2.2 順序量歸一化 32
2.2.3 順序量解歸一化 34
2.2.4 數(shù)字量歸一化 35
2.2.5 數(shù)字量解歸一化 37
2.3 其他歸一化方法 38
2.3.1 倒數(shù)歸一化 38
2.3.2 倒數(shù)解歸一化 38
2.3.3 理解等邊編碼法 39
2.3.4 等邊編碼法的實(shí)現(xiàn) 41
2.4 本章小結(jié) 45
第3 章 距離度量 47
3.1 理解向量 47
3.2 計(jì)算向量距離 49
3.2.1 歐氏距離 49
3.2.2 曼哈頓距離 51
3.2.3 切比雪夫距離 53
3.3 光學(xué)字符識(shí)別 54
3.4 本章小結(jié) 57
第4 章 隨機(jī)數(shù)生成 59
4.1 偽隨機(jī)數(shù)生成算法的概念 60
4.2 隨機(jī)數(shù)分布類型 61
4.3 輪盤模擬法 64
4.4 偽隨機(jī)數(shù)生成算法 65
4.4.1 線性同余生成法 66
4.4.2 進(jìn)位乘數(shù)法 67
4.4.3 梅森旋轉(zhuǎn)算法 68
4.4.4 Box-Muller 轉(zhuǎn)換法 70
4.5 用蒙特卡洛方法估算PI 值 72
4.6 本章小結(jié) 74
第5 章 K 均值聚類算法 75
5.1 理解訓(xùn)練集 77
5.1.1 非監(jiān)督學(xué)習(xí) 77
5.1.2 監(jiān)督學(xué)習(xí) 80
5.2 理解K 均值算法 80
5.2.1 分配 81
5.2.2 更新 83
5.3 K 均值算法的初始化 84
5.3.1 隨機(jī)K 均值初始化 84
5.3.2 K 均值算法的Forgy 初始化 87
5.4 本章小結(jié) 90
第6 章 誤差計(jì)算 91
6.1 方差和誤差 92
6.2 均方根誤差 93
6.3 均方誤差 93
6.4 誤差計(jì)算方法的比較 94
6.5 本章小結(jié) 96
第7 章 邁向機(jī)器學(xué)習(xí) 97
7.1 多項(xiàng)式系數(shù) 99
7.2 訓(xùn)練入門 101
7.3 徑向基函數(shù)網(wǎng)絡(luò) 103
7.3.1 徑向基函數(shù) 104
7.3.2 徑向基函數(shù)網(wǎng)絡(luò) 107
7.3.3 實(shí)現(xiàn)徑向基函數(shù)網(wǎng)絡(luò) 109
7.3.4 應(yīng)用徑向基函數(shù)網(wǎng)絡(luò) 113
7.4 本章小結(jié) 115
第8 章 優(yōu)化訓(xùn)練 117
8.1 爬山算法 117
8.2 模擬退火算法 121
8.2.1 模擬退火算法的應(yīng)用 122
8.2.2 模擬退火算法 123
8.2.3 冷卻進(jìn)度 126
8.2.4 退火概率 127
8.3 Nelder-Mead 算法 128
8.3.1 反射 130
8.3.2 擴(kuò)張操作 131
8.3.3 收縮操作 132
8.4 Nelder-Mead 算法的終止條件 133
8.5 本章小結(jié) 134
第9 章 離散優(yōu)化 135
9.1 旅行商問題 135
9.1.1 旅行商問題簡(jiǎn)要說明 136
9.1.2 旅行商問題求解的實(shí)現(xiàn) 137
9.2 環(huán)形旅行商問題 138
9.3 背包問題 139
9.3.1 背包問題簡(jiǎn)要說明 140
9.3.2 背包問題求解的實(shí)現(xiàn) 141
9.4 本章小結(jié) 143
第 10 章 線性回歸 144
10.1 線性回歸 144
10.1.1 最小二乘法擬合 146
10.1.2 最小二乘法擬合示例 148
10.1.3 安斯庫(kù)姆四重奏 149
10.1.4 鮑魚數(shù)據(jù)集 151
10.2 廣義線性模型 152
10.3 本章小結(jié) 155
附錄A 示例代碼使用說明 157
A.1 讀懂人工智能系列書簡(jiǎn)介 157
A.2 保持更新 157
A.3 獲取示例代碼 158
A.4 示例代碼的內(nèi)容 159
A.5 如何為項(xiàng)目做貢獻(xiàn) 163
參考資料 164