為了建構類神經網路 會將模型學習非線性、 從以下熟悉的模型結構開始: 形式的線性模型 $y'= b + w_1x_1 + w_2x_2 + w_3x_3$。
我們用視覺方式呈現這個方程式,如下所示:$x_1$, $x_2$ 和 $x_3$ 是三個輸入節點 (藍色),而 $y'$ 則是輸出節點 (綠色)。
運動 1
在上述模型中,權重和 bias 值是隨機的 初始化。請執行以下工作,熟悉 介面,並探索線性模型你可以 暫時忽略「Activation Function」下拉式選單;我們將介紹 會深入討論這些主題
按一下網路上方的「播放」按鈕 (▶️) 即可計算 輸入值的輸出節點:$x_1 = 1.00$、$x_2 = 2.00$,以及 $x_3 = $3.00 美元。
按一下第二個節點 輸入層, 擷取的值 至 2.50請注意,輸出節點的值會改變。選取輸出內容 並查看「計算」面板,瞭解輸出結果 。
按一下輸出節點 (綠色) 即可查看權重 ($w_1$、$w_2$、$w_3$),以及 調整 ($b$) 參數值。降低 $w_3$ (再次提醒您,輸出節點的值和下列計算方法的值) 已變更)。然後提高偏誤值。查看這些變更 已影響到模型輸出內容
新增圖層至網路
請注意,當您調整 練習 1,這項操作並未改變整體數學 說明輸入與輸出之間的關係模型仍是線性模型。
但是如果在網路的輸入層之間 再加入另一層 和輸出層?在類神經網路術語中 會呼叫輸入層和輸出層 「隱藏層」和節點 這些層中的 神經元。
隱藏層中每個神經元的值的計算方式與 線性模型的輸出內容:以其每個輸入的乘積總和 (前一層網路層中的神經元) 和專屬的權重參數 加上偏誤同樣地,進入下一層 (這裡是輸出層) 是以隱藏層的神經元值做為輸入內容
新的隱藏層可讓模型使用另一個 參數組這有助於我們的模型學習非線性關係嗎?
運動 2
我們已在模型中新增含有四個神經元的隱藏層。
按一下網路上方的「播放」按鈕 (▶️) 即可計算 四個隱藏層節點和輸入值的輸出節點 $x_1 = 1.00$、$x_2 = 2.00$ 和 $x_3 = 3.00$。
接著探索該模型,並用於回答下列問題。
嘗試修改模型參數,並觀察 隱藏層節點值和輸出值 (您可以查看 下方的計算面板可查看這些值 計算結果)。
這個模型能學習非線性嗎?
按一下隱藏層中的每個節點 下方計算的數值都是線性 (包括乘法和加法運算)。
如果點選輸出節點並查看計算結果 可能會發現也是線性計算方式線性 您對線性計算結果所執行的 線性關係,因此這個模型無法學習非線性