|
深度學習的16堂課:CNN + RNN + GAN + DQN + DRL,看得懂、學得會、做得出!
|
|
Deep Learning Illustrated: A Visual, Interactive Guide to Artificial Intelligence |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Ⓞ 16 堂課引領入門,學得會、做得順的絕佳教材!
Ⓞ 最詳盡的深度學習基石書,CNN + RNN + GAN + DQN + DRL 各種模型學好學滿
初學者想要自學深度學習 (Deep Learning),可以在市面上找到一大堆「用 Python 學深度學習」、「用 xxx 框架快速上手深度學習」的書;也有不少書說「請從數學複習起!」,捲起袖子好好探究底層那些數學原理......但過早切入工具的學習、理論的探究,勢必對連深度學習的概念都還一知半解的初學者形成極大的學習門檻:
「我連什麼是深度學習?它是如何呈現、被使用的?都還模模糊糊,怎麼一下子就叫我 K Python、K 建模技術、K 數學......了?」
「程式號稱再怎麼短,始終還是讓人無感,模型跑出來準確率 95.7% → 96.3%...那就是深度學習的重點?」
【精心設計循序漸進 16 堂課,帶你無痛起步!】
為了徹底解決入門學習時的混亂感,本書精心設計循序漸進的 16 堂課,將帶你「無痛起步」,迅速掌握深度學習的重點。
本書共分成 4 大篇、16 堂課。第 1 篇會利用 4 堂課 (零程式!零數學!) 帶你從深度學習在【機器視覺】、【自然語言處理】、【藝術生成】和【遊戲對局】 4 大領域的應用面看起,這 4 堂課不光是介紹,內容會安插豐富的線上互動網站,讓讀者可以實際上網操作,立刻體驗深度學習各種技術是如何呈現的。不用懂程式、啃理論,本篇適合任何人閱讀,絕對看得懂、做得順,可以對深度學習瞬間有感!
有了第 1 篇這些知識做為基礎,你就可以抱著踏實的心情跟著第 2~4 篇這 12 堂課一一學習 4 大領域背後所用的技術,包括卷積神經網路 (CNN)、循環神經網路 (RNN)、對抗式生成網路 (GAN)、深度強化式學習 (DRL)...等等。學習時我們選擇了馬上就可以動手的 Google Colab 線上開發環境搭配 tf.Keras 框架來實作,閱讀內文時請務必搭配書中提供的範例程式動手演練。期盼透過這 16 堂課的學習,能夠讓學習曲線平滑、順暢,不用迂迴曲折地浪費時間。
最後要說明的是,本書所有範例都是最精簡的版本,以方便引領讀者理解 AI 的原理。"師父領進門,修行在個人,AI 才在萌芽階段,以後海闊天空,鼓勵大家不斷精進、勇往直前!"
本書特色
□滿滿延伸學習教材
.範例 + 旗標 Bonus 加值內容 → www.flag.com.tw/bk/st/F1383
.作者深度學習系列教學影片 → reurl.cc/mLj7jV
.更多互動學習資源 → 詳內文 16.6 節
□看得懂脈絡 – 不只通單一主題,也通學習脈絡
.絕對看得懂的神經網路基礎,不被損失函數/梯度下降/反向傳播/正規化/常規化...一拖拉庫技術名詞搞的暈頭轉向!
.各章章末提供新名詞脈絡整理,讓你隨時掌握學習視野!
□學得會技術 – 不只通技術,也通應用
.先熟悉機器視覺、自然語言處理、藝術生成、遊戲對局 4 大領域的應用,對為何學深度學習更有感!
.不急著 Coding、建模!上網就可以立即體驗生動的深度學習技術!
□做得出成果 – 不只通觀念,也通實作
Colab + tf.Keras 具體實踐 4 大應用,熱門深度學習技術學好學滿!
→機器視覺:CNN (卷積神經網路)
→自然語言處理:RNN (循環神經網路)
→藝術生成:GAN (對抗式生成網路)、DQN
→遊戲對局:DRL (深度強化式學習)
□詳細解說,流暢翻譯
本書由【施威銘研究室】監修,書中針對原書進行大量補充,並適當添加註解,幫助讀者更加理解內容!
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
目錄
Part01 深度學習簡介-從應用面看起
Ch01 生物視覺與機器視覺 (Biological and Machine Vision)
1.1 生物視覺 (Biological Vision)
1.2 機器視覺 (Machine Vision)
1.3 上 TensorFlow Playground 網站體驗深度學習
1.4 上限時塗鴉 (Quick Draw!) 網站體驗即時的深度學習運算能力
1.5 總結
Ch02 用機器處理自然語言 (Natural Language Processing)
2.1 深度學習 + 自然語言處理
2.2 將語言量化
2.3 Google Duplex 的自然語言功力
2.4 總結
Ch03 機器藝術 (Machine Arts):對抗式生成網路 (Generative Adversarial Network) 概述
3.1 對抗式生成網路的源起
3.2 經由「計算」生成假的人臉
3.3 風格轉移 (Style transfer) – CycleGAN
3.4 將自己手繪的塗鴉轉換成照片 – cGAN
3.5 憑文字敘述就生成擬真圖片 – StackGAN
3.6 使用深度學習進行影像處理
3.7 總結
Ch04 遊戲對局 (Game-Playing Machines):Alpha Go、DQN (Deep Q Network)、RL (Reinforcement Learning) 概述
4.1 強化式學習 (Reinforcement Learning)
4.2 深度強化式學習 (Deep Reinforcement Learning)
4.3 深度強化式學習的應用 (一):電子遊戲
4.4 深度強化式學習的應用 (二):棋盤類遊戲
4.5 深度強化式學習在真實世界的應用:操控物體
4.6 常用的深度強化式學習模擬環境
4.7 總結
Part02 深度學習的核心概念 - 神經網路 (Neural Network)
Ch05 先動手實作!5 行程式體驗神經網路模型
5.1 熟悉 Google Colab 執行環境
5.2 用 tf.Keras 套件建立淺層神經網路
5.3 總結
Ch06 神經網路的基礎:人工神經元和激活函數
6.1 認識生物神經網路
6.2 最早期的神經元:感知器 (Perceptron)
6.3 神經元的激活函數 (Activation Function)
6.4 激活函數的選擇
6.5 總結
Ch07 多神經元組成的神經網路
7.1 輸入層 (Input Layer)
7.2 密集層 (Dense Layer)
7.3 用密集神經網路辨識熱狗堡
7.4 用密集神經網路做多個速食的分類
7.5 回顧第 5 章的範例程式
7.6 總結
Ch08 訓練深度神經網路
8.1 損失函數 (Loss Function)
8.2 藉由訓練讓誤差值最小化
8.2.1 梯度下降法 (Gradient Descent)
8.2.2 學習率 (Learning rate)
8.2.3 批次量 (Batch-Size) 與隨機梯度下降法 (SGD)
8.2.4 從局部最小值 (Local Minimum) 脫離
8.3 反向傳播 (Back Propagation)
8.4 規劃隱藏層與各層神經元的數量
8.5 範例:建構多層神經網路
8.6 總結
Ch09 改善神經網路的訓練成效
9.1 權重初始化 (Weight Initialization)
9.2 解決梯度不穩定的問題
9.3 避免過度配適 (Overfitting) 的技巧
9.4 使用各種優化器 (Optimizer)
9.5 實作:用 tf.Keras 建構深度神經網路
9.6 改試試迴歸 (Regression) 範例
9.7 用 TensorBoard 視覺化判讀訓練結果
9.8 總結
Part03 深度學習的進階技術
Ch10 機器視覺實戰演練 - CNN (Convolutional Neural Network)
10.1 卷積神經網路 (CNN)
10.2 池化層 (Pooling Layer)
10.3 CNN 實作範例 (用 tf.Keras 重現 LeNet-5 經典架構)
10.4 進階的 CNN 技術 (用 tf.Keras 重現 AlexNet 與 VGGNet 架構)
10.5 殘差神經網路 (Residual Network)
10.6 機器視覺的各種應用
10.7 總結
Ch11 自然語言處理實戰演練 (一):資料預處理、建立詞向量空間
11.1 自然語言資料的預處理
11.2 用 word2vec 建立詞向量空間
11.3 總結
Ch12 自然語言處理實戰演練 (二):用密集神經網路、CNN 建立 NLP 模型
12.1 前置作業
12.2 進行簡單的資料預處理
12.3 用密集神經網路區分正評、負評
12.4 用 CNN 模型區分正評、負評
12.5 總結
Ch13 自然語言處理實戰演練 (三):RNN 循環神經網路
13.1 RNN 循環神經網路
13.2 LSTM (長短期記憶神經網路)
13.3 雙向 LSTM (Bi-LSTMs)
13.4 以「函數式 API」建構非序列式 NLP 模型
13.5 總結
Ch14 藝術生成實戰演練 - GAN (Generative Adversarial Network)
14.1 GAN 的基本概念
14.2 《限時塗鴉!》資料集
14.3 建構鑑別器 (Discriminator) 神經網路
14.4 建構生成器 (Generator) 神經網路
14.5 結合生成器與鑑別器, 建構對抗式生成網路
14.6 訓練 GAN
14.7 總結
Ch15 遊戲對局實戰演練 - DRL (Deep Reinforcement Learning)、DQN (Deep Q Network)
15.1 強化式學習 (Reinforcement Learning) 的基本概念
15.2 DQN 的基本概念
15.3 建構 DQN 代理人
15.4 與 OpenAI Gym 環境互動
15.5 DQN 以外的代理人訓練方式
15.6 總結
Part04 AI 與你
Ch16 打造自己的深度學習專案
16.1 探索方向
16.2 晉升更高階的專案
16.3 模型建構流程建議
16.4 軟體 2.0 (Software 2.0)
16.5 通用人工智慧 (AGI) 的進展
16.6 總結
附錄 A 使用 Google 的 Colab 雲端開發環境
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
作者簡介
Jon Krohn
擁有牛津大學神經科學博士學位,是 untapt (untapt.com) 公司的首席資料科學家。他在 Addison-Wesley 出版公司發表了《實作課程:用 TensorFlow 進行深度學習》、《實作課程:用深度學習進行自然語言處理》等一系列教學影片,備受好評。Jon 在紐約資料科學學院教授深度學習,並在哥倫比亞大學擔任客座講師。他自 2010 年以來,一直在神經資訊處理系統 (Neural Information Processing Systems,NIPS) 等知名學術期刊上發表機器學習相關論文。
Grant Beyleveld
untapt 公司的資料科學家,從事自然語言處理方面的深度學習研究。他是 deeplearningstudygroup.org 深度學習研究小組的創始成員之一,本書正是該小組熱烈討論誕生出的結晶。
Aglaé Bassens
比利時籍藝術家,目前在巴黎工作。她曾在拉斯金繪畫與美術學校 (Ruskin School of Drawing & Fine Art)、倫敦大學斯萊德美術學院 (UCL Slade School of Fine Art) 等地學習美術。除了插畫以外,她也創作靜物畫與壁畫。
|
|
|
|
|
|
|
|
|
|
|
|