單層神經網絡,也被稱為感知器(Perceptron),是最簡單的神經網絡模型。它由輸入層和輸出層組成,沒有隱藏層。我們通過一個簡單的例子來說明單層神經網絡的工作原理。
【資料圖】
假設我們要使用一個單層神經網絡來實現一個二進制輸入的邏輯AND運算。邏輯AND運算接受兩個輸入(0或1),當且僅當兩個輸入都為1時,輸出為1,其他情況下輸出為0。
單層神經網絡的結構如下:
1. 輸入層:有兩個節點,分別接收輸入x1和x2,代表二進制輸入。
2. 輸出層:有一個節點,用于輸出結果y,代表二進制輸出。
神經網絡的工作過程:
1. 初始化權重和偏置:權重w1、w2和偏置b是神經網絡的參數。我們可以隨機初始化這些參數,然后通過訓練來優化它們。例如,我們可以初始化w1=1,w2=1,b=-1.5。
2. 計算加權和:神經網絡接收輸入x1和x2后,計算加權和,即z = w1 * x1 + w2 * x2 + b。加權和表示輸入的線性組合。
3. 激活函數:我們使用階躍函數(Step function)作為激活函數。階躍函數的定義是:當z大于等于0時,輸出1,否則輸出0。用數學表示就是:y = 1 (z >= 0),y = 0 (z < 0)。
現在我們來看看神經網絡如何處理邏輯AND運算:
1. 輸入x1=0, x2=0:加權和z = 1 * 0 + 1 * 0 - 1.5 = -1.5,階躍函數輸出y = 0 (因為z < 0)。
2. 輸入x1=0, x2=1:加權和z = 1 * 0 + 1 * 1 - 1.5 = -0.5,階躍函數輸出y = 0 (因為z < 0)。
3. 輸入x1=1, x2=0:加權和z = 1 * 1 + 1 * 0 - 1.5 = -0.5,階躍函數輸出y = 0 (因為z < 0)。
4. 輸入x1=1, x2=1:加權和z = 1 * 1 + 1 * 1 - 1.5 = 0.5,階躍函數輸出y = 1 (因為z >= 0)。
從上面的例子可以看出,單層神經網絡成功實現了邏輯AND運算。這個簡單的網絡模型可以應用于線性可分問題,但對于更復雜的非線性問題,我們需要使用多層神經網絡。
標簽: