December 14, 2023

深度學習到底如何運作?

認識神經網路

神經元(Neuron)

neuron

構造

運作方式

neuron_method.svg

感知器(Perceptron)

perceptron.png

構造

以圖像來思考,綠色為正的權重,紅色為負的權重,顏色愈亮代表與0的差距越大。神經元透過權重來計算下一層神經元所注重的圖像。而我們可以將我們所要的圖像外的權重值都改為0。如果想要確認圖形的邊,可以在外圍的偏移改為負的權重,就可以得到最大的加權總和。

什麼是邏輯函數(Sigmoid Function),這個函數有什麼特別之處?

我們想要計算權重的總和,加權總和可能為任意實數,但我們需要將加權總和壓縮在0到1之間(不包含0且不包含1)以便利用,sigmoid function(邏輯函數)就是使加權總和壓縮在0到1之間的工具,如圖。

sigmoid_function.png

眼尖的人應該有發現,方程式內的稱為激勵函數,而下文介紹的是邏輯函數,事實上,邏輯函數只是激勵函數的一種,激勵函數還有ReLU、tanh、Maxout函數等等,範圍也不僅限於0或1之間,不過那是另一個故事了

那到底為甚麼要套入激勵函數呢,因為如果不這麼做,會導致方程式為線性函數,那為甚麼會是線性函數呢?以國中數學舉例來說,f(x) = 2x +1,g(x) = 3f(x) + 2,則f(x)帶入後會得到g(x) = 3(2x+1) +1,g(x)= 6x+4,還是一個線性函數。

這代表你只要給了每個輸出都獨立對一個輸出,一開始就是因為沒有加上這個邏輯函數導致原函數是線性的,這個線性函數解決不了exclusive or的問題。

如圖,一條線是無法分開綠色的點與紅色的點的。這也導致連結主義學派沒落好一段時間……

exclusive_or.webp

多層感知機

運作方式

perceptron_method.svg

layer.png

多層感知機是一種前向傳遞類神經網路,還有一點要注意的是隱藏層並不是越多越好。

也有反向傳遞的方式,在損失函數調整偏值後,會重新調整先前所有權重的值,用來降低誤差

其餘更詳細歡迎看:機器學習-神經網路-多層感知機


資料來源:

But what is a neural network? | Chapter 1, Deep learning

Demystifying the XOR problem

About this Post

此文章由 IHCT 所撰寫,版權聲明:CC BY-NC 4.0.

#深度學習