電腦如何思考?——類神經網路



什麼是類神經網路? 資料的輸入與輸出 輸出機率值

資料搜集 訓練類神經網路 貓狗圖片分類

輸入像素資料 類神經網路的數學方法 健康評分系統

訓練類神經網路

在上個章節,我們學習到資料搜集,以及討論它會牽涉的問題,

接著,讓我們進入到訓練類神經網路的階段,概觀地了解訓練時會經歷哪些流程。

在訓練完類神經網路之後,我們會在下個章節介紹如何應用類神經網路。

(還記得在上個章節的資料搜集嗎?)

(我們為了避免討論的情境太過複雜,將訓練資料集重新整理成以下的十張照片)

(按下進行迭代後,請仔細觀察訓練類神經網路的過程)

編號
1
2
3
4
5
6
7
8
9
10
圖片
類別
讀取
讀取圖片
並計算輸出值
調整權重
重新
計算輸出值
w11:
0.2
w12:
0.4
w13:
0.6
...
...
wnn:
0.2
w11:
0.5
w12:
0.4
w13:
0.1
...
wnn:
0.1
此張圖片是狗的機率y1 : 0.31
此張圖片是貓的機率y1 : 0.31

(下方的表格是每張圖片在每次迭代所計算出的輸出值)

知識補充

w11、w12、w13、...、 wnn 這些符號代表什麼意思?

在類神經網路中,wab這個符號表示「權重」,至於下標的數字,則表示這個權重是從「前一層的第a顆類神經元」到「後一層的第b顆類神經元」,例如一個類神經網路中有一層中的第3顆類神經元與下一層的第4顆神經元連接起來的權重,就會表示成w34

「迭代」是什麼意思?

「迭代」在電腦科學領域,是常見的詞彙,通常在描述一個循環,但更詳盡的意思我們暫不討論。在類神經網路訓練的過程中,類神經網路會在每次迭代把每一筆資料都讀取過,並且提取資料中的特徵,調整類神經網路中的權重,讓輸出的判斷結果更符合我們給予的訓練資料集。

思考一下,回答問題

問題一

觀察類神經網路訓練的過程後,說說看每次迭代有經歷哪些流程吧。

問題二

雖然在上述的內容當中,沒有提到類神經網路是依據什麼調整權重,

但試著想看看,類神經網路會在每次迭代中依照什麼調整權重?

問題三

觀察類神經網路訓練的過程,在每次迭代中,連續讀取貓咪圖片的時候,

輸出值有什麼樣的變化呢?為什麼會有這樣的變化呢?

問題四

觀察每張圖片經過數次迭代之後,輸出值有什麼變化?為什麼有這樣的變化呢?

問題五

如果類神經網路訓練的結果不如預期,像是貓狗的類別一直判斷錯誤,

可能是哪裡出現問題呢?

重點總結

在這個章節中,我們了解到類神經網路的訓練過程,這個過程包含,

讀取圖片、調整權重,以及計算輸出值。當然,實際上的情況還有一些細節還沒討論到,

而且上述的情況是針對圖片做分類,事實上類神經網路也可以應用在語音的資料,

或是商業上的資料,例如:鳥類叫聲的分類、顧客購買行為的分類。

不過,在不同的情境中使用類神經網路,基本上都不脫離「讀取」、「調整權重」、「計算輸出值」

在上個章節中,我們了解到資料的正確性或數量會影響類神經網路的訓練結果,

所以在上述的例子中,我們也可以思考看看,如果訓練完的成果不如預期,

問題是否會出現在資料搜集的階段。然而,類神經網路的訓練過程是「程式」寫成的,

所以在檢查問題所在時,也可以思考看看程式的部分是不是寫錯了。

回到最上方