iT邦幫忙

2021 iThome 鐵人賽

DAY 14
0
AI & Data

30天搞懂機器學習是否搞錯了什麼系列 第 14

【Day 14】深度學習(Deep Learning)

深度學習歷史

深度學習三步驟

  1. 定義一個模型
  2. 衡量函式的好壞
  3. 找到最好的函式

步驟一:定義一個模型

  • 類神經網路(Neural Network)

可以使用不同的方法來連接Neural Network,就可以得到不同的結構,而將所有的weights跟bias集合起來就是這個Network的參數 https://chart.googleapis.com/chart?cht=tx&chl=%5Ctheta。接下來我會介紹連接這些神經元(Neuron)的方法。

全連接前饋網路(Fully Connect Feedforward Network)

是最常見的一種連接方式,做法是把Neuron排成一排一排,下圖中有6個Neuron,就兩個兩個一排,然後每一個Neuron都會根據訓練資料找出一組weight跟bias。經過計算藍色的Neuron的輸出如下所示。

如果我們今天都知道一個Neural Network裡面的參數,它就等於是一個function,它的輸入是一個vector,輸出是另外一個vector。而如果我們還不知道參數,只是決定好結構,就等於是在定義一個function set,也就是定義一個模型了。

下圖為整個Network的架構,這個架構layer跟layer之間,每個Neuron兩兩間都有連接,因此稱為全連接(Fully Connected),而這個架構是從 layer 1 到 2,2 到 3 由前往後傳遞,所以稱為前饋網路(Feedforward Network)
輸入的地方稱為Input Layer,輸出的地方稱為Output Layer,而其他地方我們則稱為Hidden Layer。

什麼是Deep?

  • 有很多Hidden layer

至於幾層才算Deep,每個人都有不同的定義。

矩陣運算

我們把Neuron的function稱之為Activation function,它不一定要是Sigmoid function,可以替換成其他function,現在Sigmoid function已經很少在做使用。

因此可以將整個Neural Network的運算表示成下圖所示。通常會使用矩陣去運算,因為這樣可以讓我們使用GPU加速矩陣的運算。

Output Layer

我們可以把Output layer之前的部分看做是一個特徵提取器(Feature Extractor),它就可以取代我們之前在做的特徵轉換(Feature transformation),所以在最後一個Hidden layer的輸出就可以當作我們新的Feature。
而Output layer就是一個Multi-calss的分類器(Classifier),所以我們會在最後一個Layer加上Softmax。

應用範例

  • 輸入一張手寫數字的圖片,輸出這個圖片對應的數字。

假設輸入是一個解析度 https://chart.googleapis.com/chart?cht=tx&chl=16%20%5Ctimes%2016 的圖片,總共有256個pixel,對機器來說它就是一個256維的vector,每一個pixel對應到一個維度,可以假設有塗黑的地方就是 1,沒有塗黑的就是 0。而輸出代表了一個機率分佈(Probability Distribution),總共有10維,就可以看成是輸出對應到每一個數字的機率。

而整個辨識手寫數字的架構就如下圖所示,你需要自己決定你的Layer跟Neuron數量。

FAQ

步驟二:衡量函式的好壞

假設有一張圖片跟它的Label,我們就可以知道它的目標vector,而我們將那張圖片當作輸入,得出一個結果,接著就跟之前我們在做Multi-calss Classification一樣,去計算預測跟實際的交叉熵(Cross entropy),那我們就是要讓Cross entropy越小越好。

於是我們將每一筆訓練資料的Cross entropy加起來,就會得到Total Loss,所以我們就是要找一個function讓Loss最小,或是找一組參數可以讓Loss最小。

步驟三:找到最好的函式

  • 梯度下降法(Gradient Descent)

梯度下降法在前面幾篇文章都有介紹過,這邊就不再贅述。


參考資料

李宏毅老師 - ML Lecture 6


上一篇
【Day 13】邏輯迴歸(Logistic Regression)(下)
下一篇
【Day 15】反向傳播(Backpropagation)
系列文
30天搞懂機器學習是否搞錯了什麼30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言