# 深度學習筆記(一)
阿新 • • 發佈:2018-12-17
從感知機到神經網路
感知機中:作為神經網路的起源演算法,感知機有若干輸入,而只有一個輸出 這裡以最簡單的一層感知機舉例:
此時,x1對應的權重為W1,x2對應的權重為W2,而W1和W2權重的大小對應著x1與x2各自重要程度,而他們的乘積和共同決定y的值,
#感知機啟用函式
def step_func(x):
if x>0:
y=1#此時神經元被啟用
else:
y=0#未被啟用
t=x1*W1+x2*W2
step_func(t)
此時y啟用函式影象為:
而對於神經網路,在啟用函式之前幾乎是一樣的,而對於啟用函式,神經網路則進行了極為重要的改進,同樣是x1W1+x2
#感知機啟用函式
import numpy as np
def sigmoid(x):
if 1/(1+np.exp(-x))
t=x1*W1+x2*W2
y=sigmoid(t)
此時啟用函式影象為: 可以看到,此時影象為平滑的曲線,即啟用函式此時是可導而且是連續漸進變化的,相對於階躍啟用函式具有更好的性質。 此時,我們通過計算上層訊號傳播值,可以更加具體而精準地把握啟用訊號(重要程度)的強弱,而不是非0即1的籠統概括。如,sigmoid(1)=0.7310585786,sigmoid(2)=0.88079707,sigmoid(3)=0.95257 而step_func(1)=1, step_func(2)=1, step_func(3)=1 此外,sigmoid啟用函式可導的性質
綜上,我們可以看到,感知機與神經網路層的最主要區別就是啟用函式性質的不同,至於這些性質的重要性後面會有更明顯的體現。