iT邦幫忙

2023 iThome 鐵人賽

DAY 6
1

前言

昨天與各位分享了深度學習的小知識,不知道各位是否有看到激活函數這個東西呢?今天就來稍微分享一下激活函數(Activation Function)是甚麼以及它的用途,還有幾個常見的激活函數吧!

正文

甚麼是激活函數?

激活函數(Activation Function)是神經網路中的一個關鍵元件,它用於在神經元或神經網絡的輸入和輸出之間引入非線性關係。激活函數必須是非線性的函數,這樣才能增加神經元對非線性規則的學習能力

常見的激活函數

以下是常見的激活函數

步進函數(step function)

這個函數只要值大於0,輸出的結果就會是1,相反的,只要結果小於或等於0,輸出的結果就會是0,簡單來說就是一個極端的函數—不是1就是0,因此這種激活函數並不理想。

https://ithelp.ithome.com.tw/upload/images/20230915/20161913TZziKIvOJk.png

sigmoid函數

為了避免輸出值太極端的情況,因此改用連續數值來取代非0即1的結果,此函數的做法就是將其輸出成0到1的連續數值,以下是數學式和圖形

https://ithelp.ithome.com.tw/upload/images/20230915/20161913bhguFJ3fNW.png

https://ithelp.ithome.com.tw/upload/images/20230915/20161913Fslxijdjjs.png

tanh函數

此函數跟sigmoid函數很像,不同的地方是sigmoid函數是將輸出控制在0到1,而tanh函數則是控制到-1到1之間,以下是數學式和圖形

https://ithelp.ithome.com.tw/upload/images/20230915/20161913rSZZenXnqV.png

https://ithelp.ithome.com.tw/upload/images/20230915/20161913TLXYKRex9P.png

ReLU函數

此函數是最常用的激活函數,其計算方式是將小於0的值輸出都為0,大於0的值則輸出不變,其實它的本質上是2個不同的線性函數加起來組成的一個非線性函數

https://ithelp.ithome.com.tw/upload/images/20230915/20161913BHfBwulN7t.png

如果記不住的話不妨試試看下面的比手畫腳法XD

https://ithelp.ithome.com.tw/upload/images/20230915/20161913hsZWyqVbXi.png

圖源:Reddit

總結

以上就是小弟我今天有關於激活函數的小知識,明天將會更進一步說明Tensorflow,那我們明天見!

參考連結:維基百科


上一篇
[DAY05]關於深度學習
下一篇
[DAY07]TensorFlow&keras介紹
系列文
Autoencoder與GAN:生成與重建的完美結合30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言