TOP
0
0
即日起~6/30,暑期閱讀書展,好書7折起
深度學習與圍棋(簡體書)
滿額折

深度學習與圍棋(簡體書)

商品資訊

人民幣定價:99 元
定價
:NT$ 594 元
優惠價
87517
領券後再享88折起
海外經銷商無庫存,到貨日平均30天至45天
可得紅利積點:15 點
相關商品
商品簡介
作者簡介
名人/編輯推薦
目次

商品簡介

這是一本深入淺出且極富趣味的深度學習入門書。本書選取深度學習近年來最重大的突破之一 AlphaGo,將其背後的技術和原理娓娓道來,並配合一套基於 BetaGo 的開源代碼,帶領讀者從零開始一步步實現自己的“AlphaGo”。本書側重實踐,深入淺出,庖丁解牛般地將深度學習和AlphaGo這樣深奧的話題變得平易近人、觸手可及,內容非常精彩。
全書共分為3個部分:第一部分介紹機器學習和圍棋的基礎知識,並構建一個最簡圍棋機器人,作為後面章節內容的基礎;第二部分分層次深入介紹AlphaGo背後的機器學習和深度學習技術,包括樹搜索、神經網絡、深度學習機器人和強化學習,以及強化學習的幾個高級技巧,包括策略梯度、價值評估方法、演員-評價方法 3 類技術;第三部分將前面兩部分準備好的知識集成到一起,並最終引導讀者實現自己的AlphaGo,以及改進版AlphaGo Zero。讀完本書之後,讀者會對深度學習這個學科以及AlphaGo的技術細節有非常全面的瞭解,為進一步深入鑽研AI理論、拓展AI應用打下良好基礎。
本書不要求讀者對AI或圍棋有任何瞭解,只需要瞭解基本的Python語法以及基礎的線性代數和微積分知識。

作者簡介

馬克斯·帕佩拉(Max Pumperla)供職於Skymind公司,是一位專職研究深度學習的數據科學家和工程師。他是深度學習平臺Aetros的聯合創始人。
凱文·費格森(Kevin Ferguson)在分布式系統和數據科學領域擁有近20年的工作經驗。他是Honor公司的數據科學家,曾就職於谷歌和Meebo等公司。

馬克斯·帕佩拉和凱文·費格森都是經驗豐富的深度學習專家,擁有豐富的分布式系統和數據科學方面的知識。他們是開源圍棋機器人 BetaGo 的共同創造者。

名人/編輯推薦

1.本書是一本人工智能的實踐性入門教程,成功地把AlphaGo這個人工智能領域中最激動人心的裡程碑之一,轉化為一門優秀的入門課程;
2.采用Keras深度學習框架,用Python來實現代碼;
3.內容全面,層次劃分細致,基本上將AlphaGo背後所有的理論知識都覆蓋了;
4.提供配套源代碼。

圍棋這個古老的策略遊戲是AI研究的特別適用的案例。2016年,一個基於深度學習的系統戰勝了圍棋世界冠軍,震驚了整個圍棋界。不久之後,這個系統的升級版AlphaGo Zero利用深度強化學習掌握了圍棋技藝,輕松擊敗了其原始版本。讀者可以通過閱讀本書來學習潛藏在它們背後的深度學習技術,並構建屬於自己的圍棋機器人!

本書通過教讀者構建一個圍棋機器人來介紹深度學習技術。隨著閱讀的深入,讀者可以通過Python深度學習庫Keras采用更復雜的訓練方法和策略。讀者可以欣賞自己的機器人掌握圍棋技藝,並找出將學到的深度學習技術應用到其他廣泛的場景中的方法。

本書主要內容
● 構建一個遊戲 AI,並教會它自我改進。
● 用深度學習增強經典遊戲 AI 系統。
● 實現深度學習的神經網絡。
要閱讀本書,讀者只需具備基本的Python技巧和高中水平的數學知識,而不需要任何深度學習經驗。

目次

目 錄
第 一部分 基礎知識
第 1章 走近深度學習:機器學習入門 3
1.1 什麼是機器學習 4
1.1.1 機器學習與AI的關係 5
1.1.2 機器學習能做什麼,不能做什麼 6
1.2 機器學習示例 7
1.2.1 在軟件應用中使用機器學習 9
1.2.2 監督學習 11
1.2.3 無監督學習 12
1.2.4 強化學習 12
1.3 深度學習 13
1.4 閱讀本書能學到什麼 14
1.5 小結 15
第 2章 圍棋與機器學習 16
2.1 為什麼選擇遊戲 16
2.2 圍棋快速入門 17
2.2.1 了解棋盤 17
2.2.2 落子與吃子 18
2.2.3 終盤與勝負計算 19
2.2.4 理解劫爭 20
2.2.5 讓子 20
2.3 更多學習資源 20
2.4 我們可以教會計算機什麼 21
2.4.1 如何開局 21
2.4.2 搜索遊戲狀態 21
2.4.3 減少需要考慮的動作數量 22
2.4.4 評估遊戲狀態 22
2.5 如何評估圍棋AI的能力 23
2.5.1 傳統圍棋評級 23
2.5.2 對圍棋AI進行基準測試 24
2.6 小結 24
第3章 實現第 一個圍棋機器人 25
3.1 在Python中表達圍棋遊戲 25
3.1.1 實現圍棋棋盤 28
3.1.2 在圍棋中跟蹤相連的棋組:棋鏈 28
3.1.3 在棋盤上落子和提子 30
3.2 跟蹤遊戲狀態並檢查非法動作 32
3.2.1 自吃 33
3.2.2 劫爭 34
3.3 終盤 36
3.4 創建自己的第 一個機器人:理論上最弱的圍棋AI 37
3.5 使用Zobrist哈希加速棋局 41
3.6 人機對弈 46
3.7 小結 47
第二部分 機器學習和遊戲AI
第4章 使用樹搜索下棋 51
4.1 遊戲分類 52
4.2 利用極小化極大搜索預測對手 53
4.3 井字棋推演:一個極小化極大算法的示例 56
4.4 通過剪枝算法縮減搜索空間 58
4.4.1 通過棋局評估減少搜索深度 60
4.4.2 利用α-β剪枝縮減搜索寬度 63
4.5 使用蒙特卡洛樹搜索評估遊戲狀態 66
4.5.1 在Python中實現蒙特卡洛樹搜索 69
4.5.2 如何選擇繼續探索的分支 72
4.5.3 將蒙特卡洛樹搜索應用於圍棋 74
4.6 小結 76
第5章 神經網絡入門 77
5.1 一個簡單的用例:手寫數字分類 78
5.1.1 MNIST手寫數字數據集 78
5.1.2 MNIST數據的預處理 79
5.2 神經網絡基礎 85
5.2.1 將對率回歸描述為簡單的神經網絡 85
5.2.2 具有多個輸出維度的神經網絡 85
5.3 前饋網絡 86
5.4 我們的預測有多好?損失函數及優化 89
5.4.1 什麼是損失函數 89
5.4.2 均方誤差 89
5.4.3 在損失函數中找極小值 90
5.4.4 使用梯度下降法找極小值 91
5.4.5 損失函數的隨機梯度下降算法 92
5.4.6 通過網絡反向傳播梯度 93
5.5 在Python中逐步訓練神經網絡 95
5.5.1 Python中的神經網絡層 96
5.5.2 神經網絡中的激活層 97
5.5.3 在Python中實現稠密層 98
5.5.4 Python順序神經網絡 100
5.5.5 將網絡集成到手寫數字分類應用中 102
5.6 小結 103
第6章 為圍棋數據設計神經網絡 105
6.1 為神經網絡編碼圍棋棋局 107
6.2 生成樹搜索遊戲用作網絡訓練數據 109
6.3 使用Keras深度學習庫 112
6.3.1 了解Keras的設計原理 112
6.3.2 安裝Keras深度學習庫 113
6.3.3 熱身運動:在Keras中運行一個熟悉的示例 113
6.3.4 使用Keras中的前饋神經網絡進行動作預測 115
6.4 使用卷積網絡分析空間 119
6.4.1 卷積的直觀解釋 119
6.4.2 用Keras構建卷積神經網絡 122
6.4.3 用池化層縮減空間 123
6.5 預測圍棋動作概率 124
6.5.1 在最後一層使用softmax激活函數 125
6.5.2 分類問題的交叉熵損失函數 126
6.6 使用丟棄和線性整流單元構建更深的網絡 127
6.6.1 通過丟棄神經元對網絡進行正則化 128
6.6.2 線性整流單元激活函數 129
6.7 構建更強大的圍棋動作預測網絡 130
6.8 小結 133
第7章 從數據中學習:構建深度學習機器人 134
7.1 導入圍棋棋譜 135
7.1.1 SGF文件格式 136
7.1.2 從KGS下載圍棋棋譜並復盤 136
7.2 為深度學習準備圍棋數據 137
7.2.1 從SGF棋譜中復盤圍棋棋局 138
7.2.2 構建圍棋數據處理器 139
7.2.3 構建可以高效地加載數據的圍棋數據生成器 146
7.2.4 並行圍棋數據處理和生成器 147
7.3 基於真實棋局數據訓練深度學習模型 148
7.4 構建更逼真的圍棋數據編碼器 152
7.5 使用自適應梯度進行高效的訓練 155
7.5.1 在SGD中采用衰減和動量 155
7.5.2 使用Adagrad優化神經網絡 156
7.5.3 使用Adadelta優化自適應梯度 157
7.6 運行自己的實驗並評估性能 157
7.6.1 測試架構與超參數的指南 158
7.6.2 評估訓練與測試數據的性能指標 159
7.7 小結 160
第8章 實地部署圍棋機器人 162
8.1 用深度神經網絡創建動作預測代理 163
8.2 為圍棋機器人提供Web前端 165
8.3 在云端訓練與部署圍棋機器人 169
8.4 與其他機器人對話:圍棋文本協議 170
8.5 在本地與其他機器人對弈 172
8.5.1 機器人應該何時跳過回合或認輸 172
8.5.2 讓機器人與其他圍棋程序進行對弈 173
8.6 將圍棋機器人部署到在線圍棋服務器 178
8.7 小結 182
第9章 通過實踐學習:強化學習 183
9.1 強化學習周期 184
9.2 經驗包括哪些內容 185
9.3 建立一個有學習能力的代理 188
9.3.1 從某個概率分布中進行抽樣 189
9.3.2 剪裁概率分布 190
9.3.3 初始化一個代理實例 191
9.3.4 在磁盤上加載並保存代理 191
9.3.5 實現動作選擇 193
9.4 自我對弈:計算機程序進行實踐訓練的方式 194
9.4.1 經驗數據的表示 194
9.4.2 模擬棋局 197
9.5 小結 199
第 10章 基於策略梯度的強化學習 200
10.1 如何在隨機棋局中識別更佳的決策 201
10.2 使用梯度下降法修改神經網絡的策略 204
10.3 使用自我對弈進行訓練的幾個小技巧 208
10.3.1 評估學習的進展 208
10.3.2 衡量強度的細微差別 209
10.3.3 SGD優化器的微調 210
10.4 小結 213
第 11章 基於價值評估方法的強化學習 214
11.1 使用Q學習進行遊戲 214
11.2 在Keras中實現Q學習 218
11.2.1 在Keras中構建雙輸入網絡 218
11.2.2 用Keras實現ε貪婪策略 222
11.2.3 訓練一個行動-價值函數 225
11.3 小結 226
第 12章 基於演員-評價方法的強化學習 227
12.1 優勢能夠告訴我們哪些決策更加重要 227
12.1.1 什麼是優勢 228
12.1.2 在自我對弈過程中計算優勢值 230
12.2 為演員-評價學習設計神經網絡 232
12.3 用演員-評價代理下棋 234
12.4 用經驗數據訓練一個演員-評價代理 235
12.5 小結 240
第三部分 一加一大於二
第 13章 AlphaGo:全部集結 243
13.1 為AlphaGo訓練深度神經網絡 245
13.1.1 AlphaGo的網絡架構 246
13.1.2 AlphaGo棋盤編碼器 248
13.1.3 訓練AlphaGo風格的策略網絡 250
13.2 用策略網絡啟動自我對弈 252
13.3 從自我對弈數據衍生出一個價值網絡 254
13.4 用策略網絡和價值網絡做出更好的搜索 254
13.4.1 用神經網絡改進蒙特卡洛推演 255
13.4.2 用合並價值函數進行樹搜索 256
13.4.3 實現AlphaGo的搜索算法 258
13.5 訓練自己的AlphaGo可能遇到的實踐問題 263
13.6 小結 265
第 14章 AlphaGo Zero:將強化學習集成到樹搜索中 266
14.1 為樹搜索構建一個神經網絡 267
14.2 使用神經網絡來指導樹搜索 268
14.2.1 沿搜索樹下行 271
14.2.2 擴展搜索樹 274
14.2.3 選擇一個動作 276
14.3 訓練 277
14.4 用狄利克雷噪聲改進探索 281
14.5 處理超深度神經網絡的相關最新技術 282
14.5.1 批量歸一化 282
14.5.2 殘差網絡 283
14.6 探索額外資源 284
14.7 結語 285
14.8 小結 285
附錄A 數學基礎 286
附錄B 反向傳播算法 293
附錄C 圍棋程序與圍棋服務器 297
附錄D 用AWS來訓練和部署圍棋程序與圍棋服務器 300
附錄E 將機器人發布到OGS 307

您曾經瀏覽過的商品

購物須知

大陸出版品因裝訂品質及貨運條件與台灣出版品落差甚大,除封面破損、內頁脫落等較嚴重的狀態,其餘商品將正常出貨。

特別提醒:部分書籍附贈之內容(如音頻mp3或影片dvd等)已無實體光碟提供,需以QR CODE 連結至當地網站註冊“並通過驗證程序”,方可下載使用。

無現貨庫存之簡體書,將向海外調貨:
海外有庫存之書籍,等候約45個工作天;
海外無庫存之書籍,平均作業時間約60個工作天,然不保證確定可調到貨,尚請見諒。

為了保護您的權益,「三民網路書店」提供會員七日商品鑑賞期(收到商品為起始日)。

若要辦理退貨,請在商品鑑賞期內寄回,且商品必須是全新狀態與完整包裝(商品、附件、發票、隨貨贈品等)否則恕不接受退貨。

優惠價:87 517
海外經銷商無庫存,到貨日平均30天至45天

暢銷榜

客服中心

收藏

會員專區