第四章 類神經網路預測模式
第二節 倒傳遞類神經網路
類神經網路的發展,目前較多研究選用多曾前向式之倒傳遞類神經網 路(Back-propagation Networks, BPN),此種網路具有一層的輸入層(input layer)、一層或以上的隱藏層(hidden layer)、以及一層的輸入層(output layer)。BPN 常用以處理非線性的問題,其網路的學習方式採用監督式學 習法,網路的訓練演算法是由屬於錯誤更正學習法則的倒傳遞演算法來 訓練網路的鍵結值。
一般BPN的架構,輸入層與輸出層用來表現輸入項與輸出值,且兩者 間的神經元數目依問題的型式決定;隱藏層神經元數目需以試誤法決 定,隱藏層的層數可以依問題複雜度由一層增加到數層(38)。網路中靠相 關權重連結各層間的神經元,輸入值由輸入層直接傳入隱藏層,經加權 累加後再透過活化函數轉換可得一輸出值,同理再傳入輸出層。常使用 的活化函數形式如S形函數:
( )
xx e
F −
= + 1
1
(14)由於此非線性函數的可微分特徵,可利用最陡坡降法在學習過程中修 正權重與偏權值,使誤差逐次減小,達到學習的目的。
倒傳遞演算法的網路訓練方式包含兩個階段:前饋階段以及倒傳遞階 段。在前饋階段,輸入訊息從輸入層經由隱藏層加權運算,經活化函數 轉換處理後,再傳向輸出層計算網路輸出值,每一層的神經元只影響下
一層的神經元的狀態;若在輸出層得不到目標輸出值,轉為倒傳遞階段, 數E最小化的數值方法有很多種:如梯度法(gradient method)、牛頓法 (Newton method)、最陡坡降法(steepest descent method)、共軛梯度法
(38-40,47,48)
BPN 通常包含大量的連結權重參數需要調整,而在訓練的過程中因 收歛速度慢且需設定龐大的迭代次數,過程中目標函數易陷入局部解,
為改善類神經網路的訓練情形,研究選用變動的學習速率的方式提升倒 傳遞演算法的搜尋效率。
本研究對BPN 之網路架構設定、資料的設定、以及訓練函數的選擇,
過程如下:
(1) 架構設定條件與限制
i. 先決定隱藏層的數目,以確定網路的大小。對於本研究預測 AIT的問題,提出具有兩層隱藏層的網路架構較Albahri與 George(15)提出一層隱藏層,更能有效解決過多的未知參數。
ii. 隱藏層個數的選擇,關係著網路參數的多寡以及影響網路描 述問題的能力。研究以Albahri與George(15)提出之[6,1]網路架 構,其第一層隱藏層具有6 個神經元,將其 6 分為[2,4]、[3,3]、
[4,2]與[5,1]。作為三層網路架構之隱藏層個數的起始值,但 由於[4,2]及[5,1]會造成過多的參數,影響預測AIT之結果,故 研究目前先討論[2,4]及[3,3]兩種起始值的網路架構。
(2) 資料的設定
i. 對於輸入資料的處理,設定訓練資料以及試驗資料,將其分 子結構分類資料正規化(normalize)至-1 至 1 的範圍間。
ii. 目標輸出值選用之S 形活化函數,
( )
xv e
F −
= + 1
1
,其目標數出值介於0 至 1 之間。
(3) 訓練函數的選擇
i. 最陡坡降演算法:建議採用變動學習速率,可提高搜尋效率。
選用結合動量訓練之適應性學習速率演算法,當前一次的誤 差總和下降,提高學習速率,反之誤差值增加,學習速率降 低。(學習遞增比例為 1.05,學習遞減比例為 0.7)
ii. 共軛梯度法演算法:延著共軛方向進行線性搜尋以決定權重 與偏權值的改變量,較最陡坡降法有更快的收斂速度。
在BPN的輸入項部分,過去文獻以物質之物理化學特性為主,如利用 沸點、絕對溫度及絕對體積,或是以Susuki(12)針對物質提出之6 種描述因 子(臨界壓力Pc、
20
0C下之參數PA、零級指標0χ
、絕對電量的總和QT、醛 類Iald及酮類Iket的指標)作為網路的輸層部分。多數研究主要發展QSPR-ANN模式,以物質之物理化學特性預測其性質(10, 37,42-46),如AIT等。
少數研究採用SGC-ANN作為AIT之預測模式。
第三節 結果與討論
首先將483 筆資料分為 400 筆訓練資料及 83 筆試驗資料,採用Albahri 建議之分子結構表進行分類(15),選定兩層式網路架構[6,1],設定訓練次 數為500000 次,活化函數的型式為S形函數
( )
xx e
F −
= + 1
1
,採用可變動的學習速率之演算法,並與第三章提出之分子結構分類表之BPN進行比 較,結果顯示如 表 18。
表 18 訓練資料不同分子結構分類之 BPN 其 (R2)比較
Model R
2Max Err(K) Avg Err(K) Max Err(%) Avg Err(%) 表 12 分類之BPN 0.9638 94.836 13.3861 15.8367 2.0827 Albahri 分類之 BPN 0.937 105.7639 19.105 17.7374 2.9743
表 19 試驗資料不同分子結構分類之 BPN 其 (Q2)比較
Model Q
2Max Err(K) Avg Err(K) Max Err(%) Avg Err(%) 表 12 分類之BPN 0.3433 515.6348 81.4618 1824.427 36.2355 Albahri 分類之 BPN 0.1271 890.8092 97.8762 573.8062 26.4887
表 18 與 表 19 顯示,採用 表 12 之分類方式作為BPN網路的輸入層 部份,較Albahri與George建議之分類方式(15),訓練資料其(R2)分別為 0.9638 與 0.937,但是對試驗資料上的表現(Q2)為 0.3433 與 0.1271。顯示 以Albahri與George建議之分類方式,雖然訓練資料之性能預測(R2)可藉由 訓練提升,但對試驗資料的預測能力(Q2)實為不足,故採用 表 12 之分類 方式作為後續研究之輸入層部分。
以 表 12 為例,其輸入層的個數約為 45 個,如採取Albahri與George 建議的網路架構(15),該類神經網路的調整參數可達(45*6+6)+(6*1+1)=283 個,由於建立AIT預測模式的實驗數據約 300-400 個,因此前述的類神經 網路架構對於非模式選定資料的物質之預測能力有限。研究希望採用3 層式的類神經網路架構來解決此問題,假定將網路架構設為[3,5,1]的型 式,則整體系統的可調參數(45*3+3)+(3*5+5)+(5*1+1)=164 個,整個系統 的可調參數較原先Albahri與George的研究少 119 個,因此不論在網路訓 練學習與預測聯想均能有效的提升。
為了決定適當的隱藏層神經元個數,研究由[2,4,1]網路架構開始訓 練,再逐一增加第二層隱藏層神經元之個數至[2,7,1],再者由[3,3,1]網路 架構開始訓練,繼續增加第二層隱藏層神經元之個數至[3,6,1],期望使誤 差變化不大時之最少神經元個數,即為最適當的神經元個數。
將各層網路架構的性能預測(R2)及預測能力(Q2)列出,如
表 20 及 表 21 配合 圖 6 至 圖 12 得知,先就其預測能力(Q2)大小判 斷,挑選出網路架構[2,4,1]、[2,6,1]、 [3,3,1]及[3,5,1]具較大之(Q2)進行比 較。其餘架構如[2,5,1]、[2,7,1]、[3,4,1]與[3,6,1],因試驗資料之預測能力 (Q2)較小,且由 圖 7、圖 9、圖 11 及 圖 13 看出具有較大之偏離,故不
就網路架構[2,4,1]、[2,6,1]、 [3,3,1]及[3,5,1]進行討論,發現在試驗資 料的表現,其[3,3,1]架構之 圖 10 也具有偏離的現象,故只針對[2,4,1]、
[2,6,1]、及[3,5,1]架構加以選擇。雖然[2,4,1]及[2,6,1]架構在試驗資料之(Q2) 較[3,5,1]為高,但是由 圖 6、圖 8 之試驗資料表現較 圖 12 之[3,5,1]架構 為分散;且在訓練資料中,[2,4,1]及[2,6,1]架構其性能預測的表現(R2)遠 不及[3,5,1]架構,故選用[3,5,1]為最佳的網路架構。
針對研究建議[3,5,1]網路架構之BPN,檢視 83 筆試驗資料,如 表 22 列出下列物質其預測之能力有限,誤差皆比平均誤差68.0528K大者,如 N,N-Dimethylbenzenamine若以不同網路架構預測,其誤差可高達 1000K 左右。但若以整體的試驗資料預測效果,已達到與前述非線性模式提出 之平均誤差69.8K。
BPN採用最陡坡降演算法(GD)作為搜尋的指標,在提升BPN的搜尋速 率之過程中,利用加入慣性項(GDM)或是採用研究提出之具變動的學習 速率之演算法(GDX),皆有助於提升BPN之學習速率。但由於過程仍需要 相當大的迭代次數與較多的調整權重,因此建議使用共軛梯度法(CGF、
CGB),可省去搜尋過程花費的時間,並在較短的時間內達到設定的指 標,且學習速率較最陡坡降為佳。
表 23 與 表 24 以[3,5,1]網路架構,選用不同方式的演算方式,比 較預測模式之性能指標(R2)與預測能力(Q2),在此加入迭代的次數作為比
較。由此可知,使用共軛梯度法之演算過程,較過去之最陡坡降法之過 程以較少的迭代次數即可完成訓練,不論在訓練資料或是試驗資料的表 現上,皆與使用最陡坡降法之資料表現相等。
表 20 不同網路架構性能預測(R2)
Model R
2Max Err(K) Avg Err(K) Max Err(%) Avg Err(%) [2,4,1] 0.896 128.7082 24.1261 22.1202 3.7908 [2,5,1] 0.8792 132.5682 25.5933 22.6334 3.9376 [2,6,1] 0.896 141.438 24.2659 20.0294 3.7343 [2,7,1] 0.892 147.5469 24.6244 22.004 3.7774 [3,3,1] 0.9249 104.8747 20.3544 19.8523 3.2054 [3,4,1] 0.9312 121.0966 19.4503 20.3763 3.0258 [3,5,1] 0.9351 114.3215 19.2682 20.2224 3.0014 [3,6,1] 0.9035 132.9269 23.0511 22.1863 3.6112
表 21 不同網路架構預測能力(Q2)
Model Q
2Max Err(K) Avg Err(K) Max Err(%) Avg Err(%)
[2,4,1] 0.401 235.8167 66.8581 41.2782 10.3973
[2,5,1] 0.209 560.0427 78.1663 370.9941 15.904
[2,6,1] 0.4175 228.4323 67.9344 42.9199 10.7927
[2,7,1] 0.2799 490.6302 72.849 45.2348 11.0421
[3,3,1] 0.3104 320.6245 76.8013 47.9969 11.7137
[3,4,1] 0.2442 573.2674 77.7206 47.0846 11.3102
[3,5,1] 0.3355 247.5574 68.0528 50.9626 10.8981
[3,6,1] 0.1352 431.5155 72.7619 135.5669 12.5254
表 22 試驗資料預測能力有限之物質
Compound name CAS Formula AIT(K)
1,3-Cyclohexadiene 592-57-4 C
6H
8633*
Acetaldehyde 75-07-0
C2H4O758.15
N,N-Dimethylbenzenamine 121-69-7
C8H11N644.26
4-Hydroxy-4-methyl-2-pentanone 123-42-2
C6H12O2835.37
表 23 [3,5,1]架構不同演算法之預測能力(R
2)
Algorithm R
2Max Err(K) Avg Err(K) Max Err(%) Avg Err(%) epoochs GD 0.862 161.3651 27.9872 23.5788 4.2432 500000 GDM 0.8568 142.3912 28.521 21.3996 4.3575 500000 GDX 0.9351 114.3215 19.2682 20.2224 0.9351 500000
CGF 0.9229 125.9494 20.7117 18.1849 3.2524 2461 CGB 0.9235 108.2624 20.9606 17.6824 3.1987 1949
表 24 [3,5,1]架構不同演算法之預測能力(Q
2)
Algorithm Q
2Max Err(K) Avg Err(K) Max Err(%) Avg Err(%) epoochs GD 0.3106 220.003 66.7686 43.1462 10.4269 500000 GDM 0.3566 192.1346 66.3195 33.9451 10.1899 500000 GDX 0.3355 247.5574 68.0528 50.9626 10.8981 500000
CGF 0.3241 323.934 71.2066 83.6896 11.9073 2461
CGB 0.4605 223.2779 66.6307 62.0354 10.7346 1949
450 500 550 600 650 700 750 800 850 900 950 1000 450
500 550 600 650 700 750 800 850 900 950 1000
[2-4-1]
Predicted Value
Experimental Value
(a)訓練資料
450 500 550 600 650 700 750 800 850 900 950 1000
450 500 550 600 650 700 750 800 850 900 950 1000
[2-4-1]
Predicted Value
Experimental Value
(b)試驗資料
450 500 550 600 650 700 750 800 850 900 950 1000 450
500 550 600 650 700 750 800 850 900 950 1000
[2-5-1]
Predicted Value
Experimental Value
(a)訓練資料
200 300 400 500 600 700 800 900 1000
200 300 400 500 600 700 800 900 1000
[2-5-1]
Predicted Value
Experimental Value
(b)試驗資料
圖 7 BPNN [2,5,1]網路結構預測結果與實驗數據比較圖
450 500 550 600 650 700 750 800 850 900 950 1000 450
500 550 600 650 700 750 800 850 900 950 1000
[2-6-1]
Predicted Value
Experimental Value
(a)訓練資料
450 500 550 600 650 700 750 800 850 900 950 1000
450 500 550 600 650 700 750 800 850 900 950 1000
[2-6-1]
Predicted Value
Experimental Value
(b)試驗資料
450 500 550 600 650 700 750 800 850 900 950 1000 450
500 550 600 650 700 750 800 850 900 950 1000
[2-7-1]
Predicted Value
Experimental Value
(a)訓練資料
500 600 700 800 900 1000 1100
500 600 700 800 900 1000 1100
[2-7-1]
Predicted Value
Experimental Value
(b)試驗資料
圖 9 BPNN [2,7,1]網路結構預測結果與實驗數據比較圖
450 500 550 600 650 700 750 800 850 900 950 1000 450
500 550 600 650 700 750 800 850 900 950 1000
[3-3-1]
Predicted Value
Experimental Value
(a)訓練資料
500 600 700 800 900 1000 1100
500 600 700 800 900 1000 1100
[3-3-1]
Predicted Value
Experimental Value
(b)試驗資料
450 500 550 600 650 700 750 800 850 900 950 1000 450
500 550 600 650 700 750 800 850 900 950 1000
[3-4-1]
Predicted Value
Experimental Value
(a)訓練資料
500 600 700 800 900 1000 1100 1200 1300
500 600 700 800 900 1000 1100 1200 1300
[3-4-1]
Predicted Value
Experimental Value
(b)試驗資料
圖 11 BPNN [3,4,1]網路結構預測結果與實驗數據比較圖
450 500 550 600 650 700 750 800 850 900 950 1000 450
500 550 600 650 700 750 800 850 900 950 1000
[3-5-1]
Predicted Value
Experimental Value
(a)訓練資料
450 500 550 600 650 700 750 800 850 900 950 1000
450 500 550 600 650 700 750 800 850 900 950 1000
[3-5-1]
Predicted Value
Experimental Value
(b)試驗資料
450 500 550 600 650 700 750 800 850 900 950 1000 450
500 550 600 650 700 750 800 850 900 950 1000
[3-6-1]
Predicted Value
Experimental Value
(a)訓練資料
300 400 500 600 700 800 900 1000
300 400 500 600 700 800 900 1000
[3-6-1]
Predicted Value
Experimental Value
(b)試驗資料
圖 13 BPNN [3,6,1]網路結構預測結果與實驗數據比較圖