類神經網路:互動式練習

在以下互動練習中,你將進一步探索神經網路的內部運作機制。首先,你將了解參數和超參數的變化如何影響網路的預測結果。然後,你將運用所學知識訓練一個神經網路來擬合非線性資料。

練習1

以下組件使用以下配置設定神經網路:

  • 輸入層包含 3 個神經元0.00其值分別為0.000.00
  • 隱藏層包含4個神經元
  • 輸出層(1個神經元)
  • ReLU激活函數應用於所有隱藏層節點和輸出節點

查看網路的初始設定(注意:暫時不要點擊▶️>|按鈕),然後完成小工具下面的任務。

任務1

神經網路模型的三個輸入特徵的值均為0.00 。點擊網路中的每個節點即可查看所有初始化值。在點擊「播放 ( ▶️ )」按鈕之前,請先回答以下問題:

你認為會產生什麼樣的產出值:正值、負值還是 0?
正輸出值
負輸出值
輸出值為 0

現在點擊網路圖上方的播放(▶️)按鈕,觀察所有隱藏層節點和輸出節點的數值如何變化。你上面的答案正確嗎?

任務 2

在修改神經網路之前,請先回答以下問題:

如果在神經網路的第一個隱藏層之後再增加一個隱藏層,並給這個新層 3 個節點,同時保持所有輸入和權重/偏移參數不變,那麼其他哪些節點的計算會受到影響?
網路中除輸入節點外的所有節點
僅第一隱藏層中的節點
僅輸出節點

現在修改神經網絡,新增一個包含 3 個節點的新隱藏層,如下所示:

  1. 點選文字「1 個隱藏圖層」左側的「 +」按鈕,在輸出圖層之前新增一個新的隱藏圖層。
  2. 點選新隱藏圖層上方的「+」按鈕兩次,即可新增 2 個節點到該圖層。

你上面的答案正確嗎?

任務3

點選網路圖第一層隱藏區域中從上往下數的第二個節點。在對網路配置進行任何變更之前,請回答以下問題:

如果更改權重 w 12 (顯示在第一個輸入節點 x 1下方)的值,對於某些輸入值,哪些其他節點的計算可能會受到影響?
沒有任何
第一隱藏層中的第二個節點、第二隱藏層中的所有節點、輸出節點。
第一隱藏層、第二隱藏層和輸出層中的所有節點。

現在,點擊權重 w 12的文字方塊(顯示在第一個輸入節點 x 1下方),將其值變更為5.00 ,然後按 Enter 鍵。觀察圖表的更新。

你的答案正確嗎?驗證答案時要小心:如果節點值沒有改變,是否代表底層運算也沒有改變?

練習 2

分類資料模組特徵交叉練習中,您手動建立了特徵交叉來擬合非線性資料。現在,您將嘗試建立一個神經網絡,使其能夠在訓練過程中自動學習如何擬合非線性資料。

你的任務:配置一個神經網絡,使其能夠將下圖中的橙色點與藍色點分開,在訓練資料和測試資料上實現小於 0.2 的損失。

指示:

在下面的互動式元件中:

  1. 透過嘗試以下一些配置設定來修改神經網路超參數:
    • 在網路圖中,按一下「隱藏圖層」標題左側的+-按鈕,即可新增或刪除隱藏圖層。
    • 點選隱藏層列上方的+-按鈕,即可新增或刪除神經元到隱藏層。
    • 透過從圖表上方的「學習率」下拉式選單中選擇新值來變更學習率。
    • 透過從圖表上方的「啟動」下拉式選單中選擇新值來變更激活函數。
  2. 點選圖表上方的播放(▶️)按鈕,使用指定的參數訓練神經網路模型。
  3. 觀察模型在訓練過程中擬合資料的視覺化效果,以及輸出部分中的測試損失訓練損失值。
  4. 如果模型在測試集和訓練集上的損失值均未低於 0.2,請按一下“重設”,然後使用不同的組態設定重複步驟 1-3。重複此過程,直至獲得理想結果。