|
-- 會員 / 註冊 --
|
|
|
|
決心打底!Python 深度學習基礎養成 ( 繁體 字) |
作者:我妻 幸長 著, 吳嘉芳 譯, 施威銘研究室 監修 | 類別:1. -> 程式設計 -> Python 2. -> 程式設計 -> 深度學習 |
譯者: |
出版社:旗標出版 | 3dWoo書號: 53059 詢問書籍請說出此書號!【缺書】 NT定價: 690 元 折扣價: 545 元
|
出版日:7/9/2020 |
頁數: |
光碟數:0 |
|
站長推薦: |
印刷:黑白印刷 | 語系: ( 繁體 版 ) |
|
加入購物車 │加到我的最愛 (請先登入會員) |
ISBN:9789863126331 |
作者序 | 譯者序 | 前言 | 內容簡介 | 目錄 | 序 |
(簡體書上所述之下載連結耗時費功, 恕不適用在台灣, 若讀者需要請自行嘗試, 恕不保證) |
作者序: |
譯者序: |
前言:Python 基礎紮根 ? 正面迎戰數學 ? 神經網路底層概念, 該學的一次搞定!
□惡補深度學習的數學基礎, 手工算最清楚! 對數/指數/向量/矩陣/矩陣乘積/微分/偏微分/全微分/鏈鎖法則
□紮實打好 Python 與常用套件的基礎 list/tuple/條件式/迴圈/函式/類別/reshape/transpose/NumPy/Matplotlib/scikit-learn
□零框架!硬派拆解深度學習演算法背後的數學運算 DNN 反向傳播/CNN 反向傳播/mini-batch SGD/Dropout/AdaGrad
□詳細解說, 流暢翻譯 本書由【施威銘研究室】監修, 書中針對原書進行大量補充, 並適當添加註解, 幫助讀者更加理解內容! |
內容簡介:色彩:黑白 附件:書附檔案下載 (詳內文) 一步步拆解複雜的數學算式, 一筆筆手工算給你看, 硬派學習才能紮穩根基!
「想要學好深度學習, 深入了解底層各種演算法的運算細節絕對有其必要!」相信不少初學者正抱持著相同的想法, 希望好好熟悉 mini-batch 反向傳播、梯度下降等各種深度學習演算法的細節, 但多數的情況卻可能一直碰壁...
原因很簡單, 當你深究神經網路的底層運算, 會發現種種演算法的背後統統都是數學, 學寫程式還行, 滿滿的數學算式卻很容易讓人打退堂鼓, 但是, 真有決心學好基礎千萬不要就此放棄!
其實神經網路底層並沒用到多深的數學, 只需要向量、矩陣等線性代數, 以及偏微分、鏈鎖法則等微分技巧, 掌握這些就綽綽有餘, 但為什麼一堆數學算式總是讓人看了頭昏腦脹?因為數學光用看的是「無感」的!既然無法逃避, 我們就帶你跟數學來個正面對決!當遇到看起來很複雜的數學算式時, 我們會先一步步手工算給你看, 再用 Python + NumPy 算一遍來驗證, 完成這兩個步驟後保證清楚了解各種算式的涵義!
而針對深度學習的精髓-mini-batch 反向傳播運算, 我們也將硬派拆解背後的數學運算, 你將清楚看到 DNN、CNN 神經網路所有「反」著算來進行優化的細節, 這絕對是其他深度學習書籍少見的紮實內容。
若你之前看了一大堆深度學習書籍或網路文章, 始終對數學心存畏懼, 也對底層的運算似懂非懂, 請跟著本書潛心修練, 一定可以紮實養成深度學習的基礎! |
目錄:Ch01 深度學習基礎養成指引
Ch02 深度學習需要的 Python 語法與運算套件
2-1 安裝 Python 環境
2-2 Python 的基本語法 2-2-1 資料型別 (Data Type) 與變數 (Variable) 2-2-2 算符 (Operator) 2-2-3 list 型別 2-2-4 tuple 型別 2-2-5 dict 型別 2-2-6 if 判斷式 2-2-7 for 迴圈 2-2-8 while 迴圈 2-2-9 串列生成式 (list Comprehensions) 2-2-10 函式 (Function) 2-2-11 變數的有效範圍 (Scope Rule) 2-2-12 類別 (Class) 2-2-13 繼承 (Inheritance)
2-3 NumPy 快速上手 2-3-1 匯入 NumPy 套件 2-3-2 NumPy 的陣列 2-3-3 其他建立陣列的方式 2-3-4 再以圖解看陣列的軸 (axis) 2-3-5 利用 reshape() 改變陣列形狀 2-3-6 陣列間對應元素 (element-wise) 的運算 2-3-7 擴張 (Broadcasting) 2-3-8 陣列元素的存取 2-3-9 切片 (Slicing) 2-3-10 陣列轉置 (transpose) 2-3-11 其他常用的 NumPy 函式
2-4 Matplotlib 快速上手 2-4-1 將一堆資料點繪成圖表 2-4-2 裝飾圖表內容 2-4-3 繪製散佈圖 2-4-4 將數值以圖像呈現
Ch03 深度學習需要的數學知識
3-1 數學符號與運算式 3-1-1 利用 sigma (Σ) 表示總和 3-1-2 自然底數 3-1-3 自然對數
3-2 線性代數 3-2-1 純量 (Scalar) 3-2-2 向量 (Vector) 3-2-3 矩陣 (Matrix) 3-2-4 張量 (Tensor) 3-2-5 純量與矩陣乘積 3-2-6 對應元素 (element wise) 的乘積 3-2-7 矩陣乘積 (Matrix multiplication) 3-2-8 矩陣轉置 (Transpose)
3-3 微分 3-3-1 常微分 3-3-2 微分的公式 3-3-3 鏈鎖法則 (Chain Rule) 3-3-4 偏微分 3-3-5 全微分 3-3-6 多變數的鏈鎖法則
Ch04 神經網路的基礎
4-1 認識人類神經網路
4-2 單一神經元的人工神經網路
4-3 多層神經網路架構
4-4 再從實作認識「激活函數」 4-4-1 階梯函數 (Step function) 4-4-2 Sigmoid 函數 4-4-3 tanh 函數 4-4-4 ReLU 函數 4-4-5 Leaky ReLU 4-4-6 恆等函數 4-4-7 Softmax 函數
4-5 神經網路最廣泛的應用:迴歸與分類
4-6 實戰演練 (一):實作「單一神經元 + 單一輸出」的神經網路 4-6-1 單一神經元的架構 4-6-2 程式內容說明 4-6-3 實驗:看看權重與偏值對輸出值的影響
4-7 實戰演練 (二):實作「多層 + 單一輸出」的神經網路 4-7-1 神經網路的架構 4-7-2 程式內容說明 4-7-3 權重與偏值對輸出的影響
4-8 實戰演練 (三):實作「多層 + 多個輸出」的神經網路 4-8-1 神經網路的架構 4-8-2 程式內容說明 4-8-3 利用輸出結果替輸入資料做分類
Ch05 訓練神經網路
5-1 訓練神經網路的基本概念
5-2 用損失函數 (Loss Function) 計算誤差 5-2-1 均方誤差 (Mean-Square Error, MSE) 5-2-2 交叉熵 (Cross Entropy)
5-3 認識修正權重的方法 - 梯度下降法 (Gradient Descent) 5-3-1 梯度下降法的基本概念 5-3-2 利用「梯度下降法」找到誤差值最低點所對應的權重
5-4 計算梯度 (Gradient), 了解權重參數對誤差的影響 5-4-1 用「反向傳播法 (Back Propagation)」計算各層間單一權重的梯度 5-4-2 四組單一權重梯度算式的微分推導 5-4-3 梯度下降法的數學算式
5-5 訓練前的資料準備工作 5-5-1 將資料切割成「訓練資料集」與「測試資料集」 5-5-2 分批訓練的概念
5-6 將分批訓練概念引入梯度計算 5-6-1 將輸入資料、預測結果轉換成矩陣形式 5-6-2 將輸入矩陣傳入神經網路, 進行前向傳播運算 5-6-3 權重矩陣的梯度計算 (反向傳播運算)
5-7 實作演練:模擬數據讓神經網路訓練
Ch06 深度學習實戰演練
6-1 訓練神經網路常遇到的問題
6-1-1 陷入局部最小值 (Local minimum) 6-1-2 過度配適 (Overfitting) 的問題 6-1-3 梯度消失 (Vanishing gradient)
6-2 避免過度配適的方法 6-2-1 找出最佳的層數與神經元數 6-2-2 減少訓練週期 6-2-3 資料擴張 (Data Augmentation) 6-2-4 常規化 (Regularization) 6-2-5 丟棄法 (Dropout)
6-3 避免發生局部最小值的方法 6-3-1 Momentum 優化演算法 6-3-2 AdaGrad 優化演算法 6-3-3 RMSProp 優化演算法 6-3-4 Adam 優化演算法
6-4 實作演練 (一):使用神經網路替鳶尾花分類 6-4-1 範例概要說明 6-4-2 載入資料集並做前置處理 6-4-3 設定神經網路各初始值 6-4-4 用 Python 類別定義各層的運算 6-4-5 將前向傳播、反向傳播、修正權重、計算誤差等運算撰寫成函式 6-4-6 開始訓練神經網路 6-4-7 執行程式, 看看訓練成果
6-5 實作演練 (二):解決訓練成效不佳的問題 6-5-1 導入 Adagrad 演算法 6-5-2 導入丟棄法 (Dropout) 6-5-3 導入 Adagrad + Dropout 6-5-4 驗證 4 種組合的訓練成果 6-5-5 實際拿神經網路模型預測全新資料
Ch07 卷積神經網路 (CNN)
7-1 卷積神經網路 (CNN) 的基本概念 7-1-1 為什麼使用 CNN? 7-1-2 卷積神經網路 (CNN) 的基本架構 7-1-3 卷積層 (Convolution Layer) 的運算 7-1-4 池化層 (Pooling Layer) 的運算 7-1-5 池化層 → 密集層 (Dense Layer) 的運算 7-1-6 填補 (Padding) 與步長 (Stride) 的概念 7-1-7 訓練 CNN 網路的方法 7-1-8 整理本節使用的變數
7-2 認識 im2col 與 col2im 演算法
7-3 卷積層的程式實作
7-4 池化層的程式實作
7-5 密集層的程式實作
7-6 實戰演練 (一):實作卷積神經網路 7-6-1 載入手寫數字資料集 7-6-2 CNN 網路的結構 7-6-3 開始訓練 CNN 神經網路 7-6-4 執行程式, 看看訓練成果 7-6-5 實際拿 CNN 模型預測資料 7-6-6 回頭檢視卷積層的功用
7-7 實戰演練 (二):實作層數更多的 CNN 網路
Ch08 RNN、LSTM、GRU、GAN、VAE、DRL、DQN...各種深度學習技術
8-1 循環神經網路 (RNN) 8-1-1 RNN 的基本概要 8-1-2 LSTM (長短期記憶神經網路) 8-1-3 LSTM 的改良版 - GRU
8-2 生成模型與 GAN、VAE 8-2-1 GAN 8-2-2 VAE
8-3 深層強化學習 (Deep reinforcement learning) 8-3-1 強化式學習 8-3-2 深層強化學習 |
序: |
|