倒傳遞神經網路的全名為倒傳遞法則之多層前向式全連結神經 網路(multi-layer feed-forward fully-connection neural network back- propagation rule),此網路屬於監督式學習網路,適用於診斷、預測、
分類等方面。
倒傳遞神經網路之基本原理是利用「最陡坡降法」(gradient steepest descent method)的觀念,將表達網路實際輸出與目標輸出 之差異的誤差函數最小化,並透過加權值的不斷調整,來達成網路 的訓練。當輸入每一筆學習範例資料時,在輸出層會得到預測的輸 出值,令目標輸出值和預測值間的差異為誤差函數。接著將誤差函 數予以微分求其最小化,網路即利用微分產生的結果調整層與層之 間的權值,調整的幅度和誤差函數對該權值的敏感程度成正比。網 路就是藉由權值不斷的改變而達到學習的效果。
倒傳遞神經網路中有三項重要參數的設定:(1)隱藏層處理單 元數目;(2)隱藏層層數;(3)學習速率。但這些參數並無一明確 的設定值,往往需透過試誤法找出最佳的值。一般參數擬定準則摘 要如下:
1. 隱藏層處理單元數目之選定:神經元數目越多,類神經網路結果 越精確,誤差值越小,缺點就是收斂速度慢,系統資源可能耗費 在沒有價值的虛工上面;但若太少則不足以收斂,誤差值會較 大,權衡兩者,以取適當之數目為宜。通常,隱藏層神經元數目 可依下列二個原則來決定:
(1)隱藏層神經元個數= (輸入層神經元個數+輸出層神經元個數)
2
1
(2)隱藏層神經元個數=(輸入層神經元個數+輸出層神經元個數)0.5
2. 隱藏層層數的選定:一般問題採用一層隱藏層,較複雜的問題才 採用兩層的隱藏層,因隱藏層若是太少時,無法表示變數間的交 互作用,若層數太多時則可能使得誤差函數陷入極小值,導致誤 差振盪發生,進而無法收斂的情況。
3. 學習速率:學習速率越高越容易快速逼近實際值,因為學習速率 為網路的修正加權向量,但學習速率過高會產生修正過量的問題 發生;若太小則會有時間上的考量,依照經驗約取0.1 到 1.0 的 值會有良好的收斂性(倒傳遞類神經網路之原理詳見附錄3)。
3-2 影響船隻異動之颱風範圍
依據花蓮港務局提供民國 85 至 92 年的船隻動態表,表中記載 著颱風發生之時間、颱風名稱、颱風中心之經緯度、行進方向速度、
七級與十級風半徑、颱風中心與瞬間最大風速及船隻的動態等資 料。經過分析此船隻動態表得知,熱帶性低氣壓均未對花蓮港船隻 造成影響,因此,研究中所選擇之研究對象為颱風規模 1 至颱風規 模5 共 46 個之颱風。
經由整理分析花蓮港所提供之船隻動態表得知,凡是沿著花蓮 港通過或直接穿過花蓮港之颱風,船隻若未出港避風,則必會斷纜,
如安珀(Amber, 86)、瑞伯(Zeb, 87)、象神(Xangsane, 89)、桃芝
(Toraji, 90),其路徑見附錄 2。
表3-1 為整理颱風規模 4 與颱風規模 5 各個颱風之船隻異動指 數,由表3-1 可知,在颱風規模 4 以上之颱風其船隻異動指數除了 辛樂克(Sinlake)及梅米(Maemi)為 2 以外,其餘皆為 3 以上,
因此,船隻在颱風規模4 以上之颱風來襲之時,皆需出港避風。
表3-1 颱風規模 4 與颱風規模 5 各個颱風之船隻異動指數
颱風規模4 颱風規模 5 颱風名 船隻異動
指數 颱風名 船隻異動
指數 颱風名 船隻異 動指數 杜鵑 3 溫妮 4 賀伯 4
柯吉拉 3 伊莎 4 碧莉絲 4
奇洛基 3 戴兒 3 莎莉 4 魏萊特 3 盧碧 4 艾文 4
尹布都 4 瑞伯 4 芭比絲 4
蘇迪勒 4 羅西 3 梅米 2 辛樂克 2
簡及曾(1999)定義波浪開始明顯增大之時間,當做增大起始時 刻,並計算此起始時刻至波高達到最大時之時間間距為增大作用時 間;同樣選取波高開始明顯消退之時間當做消退起始時刻,並計算此 起始時刻至波高消退回復至平常波高值之時間當做消退作用時間,而 颱風波浪之總作用時間則為兩者之總合。簡及曾(1999)指出花蓮港 之颱風波浪的總作用時間大部份為1 至 2 日,本文將附錄 1 之船隻動 態中記錄之湧浪產生、船隻出港及船隻斷纜之時間往前推算兩日,當 做颱風波浪影響花蓮港船隻停泊之起始點。本文將船隻停泊受颱風波 浪影響之起始點與產生船隻異動之時間調整成格林威治時間(GMT)
後,且對照當時颱風之經緯度,繪製出不同颱風規模所產生船隻異動 點之可能區域,分別示如圖3-1 至圖 3-5。
由圖3-1 至圖 3-5 中可知,在颱風規模為 3 以下時,需較靠近花 蓮港才會有船隻可能需出港避難或斷纜的可能,但在颱風規模4 跟颱 風規模5 時,卻從東經 125°開始就產生了船隻異動,比較圖 3-1 至圖 3-5 可知,颱風規模越大者,其船隻異動之區域離花蓮港越遠,即越 早產生船隻異動。因圖 3-2 的颱風規模 2,由於颱風之筆數不多,因 此,亦較難觀察出此規則。另外使花蓮港產生船隻異動指數為2 以上 之颱風,皆位於花蓮港之東南方。由圖 3-1 可知颱風規模 1 之船隻異 動區域位於東經120 至東經o 135 及北緯o 14o至北緯22.5o;由圖 3-2 可 知,颱風規模2 之船隻異動區域位於東經125 至東經o 135 及北緯o 14o至 北緯21o;由圖 3-3可知,颱風規模3之船隻異動區域位於東經122.5o 至東經135 及北緯o 14o至北緯22.5o;由圖 3-4 可知,颱風規模 4 之船 隻異動區域位於東經125 至東經o 136 及北緯o 12.5o至北緯22o;由圖3-5 可知,颱風規模5之船隻異動區域位於東經125 至東經o 137 及北緯o 12o 至北緯23 。綜合上述颱風產生船隻異動區域大約在東經o 120 至東經o 138 及北緯o 10 至北緯o 23 。因此,本研究將此影響船隻異動的颱風所o 在範圍定於東經120o ~140o、北緯10o ~ 25o之間,且此範圍亦為本模 式模擬學習時選擇的颱風。
圖 3-1 颱風規模 1 影響船隻異動的範圍
圖 3-2 颱風規模 2 影響船隻異動的範圍
圖 3-3 颱風規模 3 影響船隻異動的範圍
圖 3-4 颱風規模 4 影響船隻異動的範圍
圖 3-5 颱風規模 5 影響船隻異動的範圍
3-3 學習與驗證的颱風
本研究所選擇之學習範例為含蓋5種颱風規模、4種船隻異動指 數及9種颱風路徑之颱風共36 個,分別為奧托(Otto)、桃芝(Toraji)、 瑪姬(Maggie)、山姆(Sam)、科羅旺(Krovanh)、薩恩(Zane)、
歐珀(Opal)、彼得(Peter)、蒂娜(Tina)、葛樂禮(Gloria)、奇比
(Chebi)、艾文(Ivan)、丹恩(Dan)、梅米(Maeimi)、莎莉(Sally)、
戴兒(Dale)、羅西(Rosie)、杜鵑(Dujuan)、象神(Xangsane)、艾 陶(Etau)、雷馬遜(Rammasun)、歐佳(Olga)、尹布都(Imbudo)、
溫妮(Winnie)、伊莎(Isa)、瑞伯(Zeb)、賀伯(Herb)、貝絲(Beth)、
維琪(Vicki)、奇洛基(Kiroji)、凱特(Kate)、海燕(Haiyan)、辛
Sinlake Violet Amber Babs
等做為研究中類神經之學習範例。其颱風路徑圖如圖 3-6(a)~圖3-6
(c)。
其他十場颱風則當為已建立模式之驗證範例,分別為尤特
(Utor)、碧利斯(Bilis)、楊妮(Yanni)、柯吉拉(Kujira)、盧比(Lupit)、 米勒(Melor)、莫拉克(Morakot)、蘇迪勒(Soudelor)、貝碧佳
(Bebinca)、巴比崙(Prapiroon),其颱風路徑圖如圖 3-7。
圖3-6(a) 學習範例颱風的路徑圖
圖3-6(b) 學習範例颱風的路徑圖(續)
圖3-6(c) 學習範例颱風的路徑圖(續)
圖3-7 驗證颱風之路徑圖 3-4 模式之建立
在建立倒傳遞網路模式時,需要決定一些合適的參數,使網路有
較佳的預測能力,譬如,決定何種變數輸入網路、輸入參數選取的方 法、類神經網路參數(如學習速率、轉移函數、神經元數等參數)及 選擇學習範例等,以下依序介紹有關本研究之模式架構流程。
3-4-1 輸入參數
由第二章影響因子之討論可知,影響船隻動態的因子有颱風路徑
、颱風規模、颱風中心之經緯度、颱風風速以及颱風中心與花蓮港之 角度。
3-4-2 類神經網路架構及參數之選擇
若擁有已知各個颱風輸入參數的時序資料以及輸出參數之時序 資料,因此,可採用類神經中同時具有輸入及輸出參數監督式學習中 的倒傳遞類神經網路,並利用 matlab 軟體的類神經網路工具箱來建 立網路。
六個輸入參數分別為颱風路徑、颱風中心之經度、颱風中心之緯 度、颱風規模、颱風中心與花蓮港之方位角度及颱風風速。在輸出層 的1個單元,即為要預測之船隻異動指數。在最佳化(Optimization), 求取最小的目標函數,一般使用最陡坡降法,而Levenberg-Marquardt 演算法因適合較廣泛之問題,且收斂快速而常被使用。此法以Hessian 矩陣形式逼近方式,將牛頓法的步驟表示如下:
Xk Xk [JTJ I] JTe
1 −1
+ = − +µ (3-1)
其中:
J:是 Jacobian矩陣,包含網路誤差對於權重值和偏權值的一 階微分;
e:網路誤差的向量。
上式當µ=0 時,即剛好是使用近似化Hessian矩陣的牛頓法;當µ值 很大時,上式變成具有小步階且大的梯度的下降優點。牛頓法在誤差
移向牛頓法。因此,在每個成功的步階(即在此步階內性能函數降低)
之後,就降低µ值,只有當一個暫時的步階將增加係能函數時才增加 µ值。在這種方式中,性能函數在此演算法的每個疊代上總是會被降
低。Levenberg-Marquardt演算法能快速的收斂,減少網路學習之時
間,因此,本文選擇Levenberg-Marquardt演算法為本模式之訓練函
數(在matlab 軟體之表示為trainlm),其訓練參數如下表3-2 所示:
表3-2 函數trainlm的訓練參數
訓練參數
(matlab 之表示法) 內定值 描述
Net.trainParam.mem_reduc 1 用於記憶/速度交換的係數 Net.trainParam.mu 0.001 動量的初始值
Net.trainParam.mu_dec 0.1 動量的減少係數 Net.trainParam.mu_inc 10 動量增加係數 Net.trainParam.mu_max e 10 動量的最大值
一般而言,隱藏層之層數最佳為 1至 2層‧由 3-1節所述隱藏層 之神經元數目計算之原則,在本模式中之輸入參數有 6個,而每筆颱 風資料皆有4筆,因此本模式之輸入神經元為6×4=24個,輸出層為 1個,計算隱藏層之神經元數目=( ) 12.5
1 2 4
6× + = ,為求最佳之神經元 個數,本研究將測試隱藏層神經元為12、17、22、27、32個狀況。
雙彎曲轉換函數(logsig)二種。表 3-3為不同轉換函數及不同神經 元數之模式預測誤差均方,由表3-3知當神經元數為 27且轉換函數 為正切轉換函數時有最小之誤差均方,此網路架構之模式有最佳的學 習效果。
一般而言,第二層隱藏層之神經元數約為第一層之半,且為偶數
一般而言,第二層隱藏層之神經元數約為第一層之半,且為偶數