深度學習入門python版小魚書筆記1感知機

2021-10-21 17:55:09 字數 2141 閱讀 1512

與門

def and(x1,x2):

w1,w2,theta = 0.5,0.5,0.7

tmp = x1*w1 + x2*w2

if tmp <= theta:

return 0

elif tmp > theta:

return 1

def and(x1,x2):

x = np.array([x1,x2])

w = np.array([0.5,0.5])

b = -0.7 # theta命名為偏置b

tmp = np.sum(w*x) +b

if(tmp <= 0):

return 0

else:

return 1

偏置和權重w1,

w2w1,w2

w1,w

2的作用是不一樣的,具體的說,w1w1

w1和w 2w2

w2是控制輸入訊號的重要性引數, 而偏置

是調整神

經元被激

活的容易

程度\color

而偏置是調整

神經元被

啟用的容

易程度(輸出訊號為1的程度)的引數

比如,若b

bb為−

0.1-0.1

−0.1

,則只要輸入訊號的加權綜合超過0.1

0.10.

1,神經元就會被啟用,但是如果b為-20,則輸入訊號的加權必須超過20

2020

,神經元才會被啟用。

像這樣,偏置的值決定了神經元被啟用的容易程度。另外,這裡我們將w1w1

w1和w 2w2

w2稱為權重,將b稱為偏置,但是根據上下文,有時也會將b,w

1,w2

b,w1,w2

b,w1,w

2這些引數統稱為權重

實現與非門和或門

推薦書目 《計算機系統要素,從零開始構建現代計算機》

def xor(x1,x2): # 異或門是或門,與非門的與

s1 = nand(x1,x2)

s2 = or(x1, x2)

y = and(s1,s2)

return y

def nand(x1,x2):

x = np.array([x1,x2])

w = np.array([-0.5,-0.5])

b = 0.7

tmp = np.sum(w*x) + b

if tmp <= 0:

return 0

else:

return 1

def or(x1,x2):

x = np.array([x1,x2])

w = np.array([0.5,0.5)]

b = -0.2

tmp =np.sum(w*x) + b

if tmp <= 0:

return 0

else:

return 1

Python深度學習 01深度學習入門

深度學習是機器學習與神經網路 人工智慧 圖形化建模 優化 模型識別和訊號處理等技術融合後產生的乙個領域。簡單來說,深度神經網路是一種用多層抽象來表示概念或者特徵的方式。深度學習使用多層機器學習模型對資料進行有監督學習或者無監督學習。在學習深度學習核心思想時,採取如圖所示的的通用方法 注意 單隱藏層神...

Python之深度學習入門

1 python語言的特點 是乙個簡單 易讀 易記的程式語言,而且是開源的,可以自由使用,可以用類似英語的語法編寫程式,編譯起來並不費力,此外,python不僅可以寫出可讀性高的 還可以寫出效能高 處理速度快 的 在需要處理大規模資料或者要求快速響應的情況下可以穩妥完成。2 學習深度學習主要使用的外...

深度學習入門系列一 Python入門

1.1 python安裝 安裝完成後可以在命令列輸入python version檢查版本,然後輸入python可啟動直譯器。1.2 python直譯器 我們可以在python直譯器中輸入簡單的python ctrl d退出python直譯器 簡易樓梯 type 布林值變數 列表字典 if語句 for...