1. 程式人生 > >神經網路學習筆記(十二):異或問題

神經網路學習筆記(十二):異或問題

       在Rosenblatt單層感知機中已經對異或問題做了介紹,並論證說明了只適用於線性分類問題的Rosenblatt感知機無法對異或問題進行分類。然而非線性問題是普遍存在的,下面就使用帶隱藏節點的神經網路來解決異或問題。

異或問題:

        異或(XOR)問題可以看做是單位正方形的四個角,響應的輸入模式為(0,0),(0,1),(1,1),(1,0)。第一個和第三個模式屬於類0,即


輸入模式(0,0)和(1,1)是單位正方形的兩個相對的角,但它們產生相同的結果是0。另一方面,輸入模式(0,1)和(1,0)是單位正方形另一對相對的角,但是它們屬於類1,即



      很顯然,無法找出一條直線作為決策邊界可以使(0,0)和(1,1)在一個區域,而(1,0)和(0,1)在另一個區域。然而,可以使用如下圖所示的一層有兩個隱藏神經元的隱藏層來解決異或問題。

                                

這裡做如下假設:

1、每一個神經元都由一個McCulloch-Pitts模型(見第一講)表示,使用閾值函式作為它的啟用函式。

2、位元符號0和1,分別由0和+1表示。

隱藏層頂部的神經元標註為“Neuron 1”,有


該隱藏神經元構造的決策邊界斜率等於-1,在下圖最上面的圖中給出器位置,隱藏層底部的神經元標註為“Neuron 2”,有


隱藏元構造的決策邊界方向和位置由下圖中間的圖給出。

       輸出層的神經元標註為“Neuron 3”,有


輸出神經元的功能是對兩個隱藏神經元形成的決策邊界構造線性組合。這個計算結果由下圖中最下面的圖給出。底部隱藏神經元由一個興奮(正)連結到輸出神經元,而頂部隱藏神經元由一個更強的抑制(負)連線到輸出神經元。當兩個隱藏神經元都斷開時,這種情況當輸入訊號(0,0)發生時,輸出神經元保持斷開。當兩個隱藏神經元都接通時,這種情況當輸入訊號時(1,1)是發生,輸出神經元也保持斷開。當輸入模式是(0,1)或(1,0)時,輸出神經元是連通的,因為正的權值連向了底部隱藏神經元。