AI Playground|為你打開神經網路的黑盒子 – 單個神經元工作方式

by KC
0 comment

人工智慧是一門科學,主要是探討使機器能夠模仿人類智慧或行為的技術,而許多人在思考人工智慧 (Artificial Intelligence)、機器學習 (Machine Learning)、神經網路 (Neural Networks)和深度學習 (Deep Learning)彼此間的關係時,除了用集合圖來表示外,另一個簡單方法就是將它們想像成俄羅斯娃娃,也就是每個術語本質上都是前一個術語的組成。也就是說,機器學習可以看成是人工智慧的一個子領域,深度學習是機器學習的一個子領域,而神經網路則是構成深度學習核心的機器學習技術。

人工智慧、機器學習、神經網路和深度學習彼此間的關係

神經網路是一種受人腦結構啟發的機器學習技術,專注於用來自動提取原始資料中的有用模式 (Patterns),然後使用這些模式或特徵 (Features)來學習執行某任務。由於神經網路的角色是構成深度學習演算法的一個重要支柱,所以對於初學者來說,您可以將深度學習視為較多層的大型神經網路將會更容易理解。

那神經網路是如何運作的呢?我們用一個簡單範例說明。首先,初學者可以先將神經網路看成是一個黑盒子,也是一台我們還不是真正瞭解其內部運作方式的機器。我們希望這台機器可以接受一定數量輸入,並有一定數量輸出。例如,我們希望對圖像進行分類(草莓或藍莓),那麼我們希望輸入資料會是圖片中的像素,輸出則是我們擁有的類別數(草莓跟藍莓兩個類別)。

「圖像分類」任務
「圖像分類」任務

機器有了輸入(圖片像素)和輸出(類別)後,要如何控制怎樣的輸入會產生怎樣的輸出呢?我們可以想像神經網路這個機器上面有無數個旋鈕,只要我們將這些旋鈕調到正確的位置,就可以將輸入的內容轉換成我們想要的輸出,而這些“旋鈕”就是所謂神經網路的參數。例如,給機器一張草莓圖像,但機器卻告訴我們這是藍莓,代表機器還沒有辦法給予我們想要的答案,那麼我們可以繼續調整機器的旋鈕(也就是所謂的調整參數)直到機器告訴我們它看到的圖像是草莓,此時黑盒子就是訓練好的模型。

現在就讓我們利用 AI Playground 平台作為學習工具,實際操作並了解神經網路相關工作方式與應用。其他更多詳細介紹可參考「從 AI 到 生成式 AI:40 個零程式的實作體驗,培養新世代人工智慧素養」這本書。

1. 單個神經元工作方式

  • 活動目的:利用互動式功能,瞭解單個神經元工作方式以及激勵函數的應用。
  • 活動網址:AI Playground
  • 使用環境:桌機及瀏覽器

Step 1. 登入神經網路活動平台

進入平台後,我們需先註冊一個免費帳號並登入,然後先點擊左側 ①「神經網路後,再點擊上方 ②「神經元,就可以按下 「next 一步一步開始進行探索。本篇文章會先從單個神經元工作方式開始,未來將會陸續介紹多個神經元工作方式以及神經網路工作方式,讀者可以藉由平台操作及本文介紹進行了解。

神經網路活動介面
神經網路活動介面

Step 2. 神經元輸入資料

直接點擊畫面上方「神經元」的選項,並按 next 至下方畫面。本互動網站主要提供大家一些神經網路基本認識,所以提供的資料不會太複雜。網站會先提供神經網路一份藍莓的資料(如下圖,含長度圓度兩個值),並將其當作進入神經元的輸入。

提供神經網路資料

Step 3. 資料運算

接下來我們可以按下 next 會看到有出現紅底的互動 (interactive) icon。可以看到神經元中間的數學過程,會將每個輸入(長度2 及圓度10)乘以一個權重(初始值是隨機數),加總後再加上一個特別數字 – 偏差(bias),也就是圖中的 0.21 (隨機值)。

輸入資料處理過程

Step 4. 調整權重

可以將滑鼠游標移在線上(也就是權重)。點擊如下圖中出現的 -/+ 來手動增加/減少權重的值。你將會發現神經元內的權重值也會跟著改變。權重值如果是正的將會以藍色線呈現,反之若是負的則會以橘色線表示。

調整權重

Step 5. 使用激勵函數 (Activation Function)

按下 next 後,會發現在神經元內原先的值,將會放進一個激勵函數(Activation Function)來做轉換,不會直接將加總後的值單純輸出。下圖的激勵函數是使用 sigmoid 函數,它會將加總後的值控制在 0 到 1 之間,避免任意擴大。

(補充:Sigmoid 是一個常用的激勵函數。它會把輸入是負數時的輸出,規範在0 ~ 0.5 之間;而輸入是正數時的輸出,規範在0.5 ~ 1 之間。也就是將所有輸出控制在0~1 之間。)

激勵函數 sigmoid

下圖則是另一個常用的激勵函數(Activation Function) ReLU。它主要是將輸出控制在非負數的狀況。

(補充:ReLU 是神經網路隱藏層中最簡單也是最常用的激勵函數,公式非常簡單,如果輸入是正值,則返回該值,否則返回 0。其用意是把負值的狀況排除掉。)

激勵函數 – ReLU

激勵函數在神經網路中是非常重要的,因為它可以將原先線性的關係變為非線性,也就是對無法用直線進行分隔的資料。
使用激勵函數得到的值就是此神經元最後輸出(也可以稱為激勵) 。

本活動的互動過程中,不管是使用哪一種激勵函數,平台會將更活躍的神經元以較亮的黃色顯示。使用者也可以將滑鼠移至神經元上面將可看到其背後數學公式。

黃色愈亮顯示神經元愈活躍

2. 神經元運作三個步驟

經由上面的互動講解後,相信讀者對單一神經元的工作方式將會認識許多。同時也可以讓初學者很快瞭解一個神經元運作的三個步驟(如下圖)。

神經元運作三個步驟
神經元運作三個步驟

本篇文章介紹神經網路中單個神經元的工作方式,藉由活動中的操作及說明,來了解在一個複雜的神經網路中,最基本的單個神經元是如何運作。接下來,我們將利用此基礎延伸到多個神經元的工作方式,並且學習如何來建立一個能辨識圖像任務的神經網路。藉由互動的 AI Playground 平台,與文章中 Step by Step 的說明,相信可以啟發下一代學生對神經網路的興趣與認識,並且能夠擴展到現在非常火紅的生成式 AI。後續文章也會在這些基礎上,讓大家學習更多觀念及有趣的專案。

如果大家想要了解多個神經元工作方式,或是神經網路與深度學習的相關基礎知識,可以參考這一本書【從 AI 到 生成式 AI:40 個零程式的實作體驗,培養新世代人工智慧素養】,或是 SimpleLearn|Online 課程,它將帶領讀者不會程式、不會數學也OK!的情況下,建立最完整的 AI 入門知識。

如果你喜歡這篇文章歡迎訂閱、分享(請載名出處)追蹤,並持續關注最新文章。同時 FB 及 IG 也會不定期提供國內外教育與科技新知。

Related Posts

Leave a Comment

error: Content is protected !!