• 沒有找到結果。

第二章 文獻探討

2.2 類神經網路

類神經網路是近年來熱門的話題,由於使用類神經網路時並不需要複雜的計算或 太多的假設,只需有一些輸出、輸入的例子就可以利用網路學習建立模式(model),

因此被應用在許多的領域中,如工業、醫療、股市預測、手寫辨識、商業等都有很大 的成效,近幾年來常被做為預測、醫療、分類的重要工具(鄒文杰,民 91)。

類神經網路最早由兩位數學家所提出(McCulloch 與 Pitts, 1943),到了 1950 年代 感知機(Perceptron)利用簡單的網路模式和簡單的學習法則,可以解決一些簡單的分類 問題,造成感知機曾經被廣泛被使用。1969 年時被其他學者證實感知機只能解決線

執行實驗與收集數據

分析資料 計算直交表中的 SN 比及β值 畫出 SN 比及β值的回應圖 執行兩階段最佳化程序

預估最佳水準組合下的 SN 比及β值

執行確認實驗

是否確認?

是 規劃實驗 定義問題

辨認理想函數

發展信號因子與雜音策略 確定控制因子及其水準值

選定直交表中並指派表中的控制因子

執行結果

性分類的問題,1980 年代這樣的情形有重大改變,有許多學者著手開始解決感知機 的問題,其中較重要的突破網路有霍普菲爾( Hopfield neural network;HNN)與倒傳遞 網路(back-propagation network;BPN),這兩個網路藉由隱藏單元(hidden unit)使用,

使得類神經網路可以解決更複雜的問題(Behzad 等,1990)。

神經生物學家和神經解剖專家在許多實驗後,發現人類腦細胞是由幾百億的神經 元細胞連結而成,於是許多的學者就模擬生物神經元網路而發明了類神經網路 (Kohonen, 1989)。類神經網路使用人工神經元簡單模擬生物神經元,利用神經元之間 的連結給於輸出輸入,利用學習法則來學習,這樣可以完成模式建立(Funahashi, 1989)。

類神經網路主要有兩種分類,分別為監督式學習網路(supervised learning network) 和非監督式學習網路(unsupervised learning network):

(1)監督式學習網路:在網路的訓練過程中,一組輸入值(input)必須有對應的輸出 值(output),利用和目標輸出值的差異進行網路學習,建立輸出值和輸入值的 規則模式,一般常被使用到的監督式學習網路有感知機、倒傳遞網路、學習向 量量化網路(learning vector quantization;LVQ)、放射基準機能網路(radial basis function;RBF)、反傳遞網路(counter-propagation network;CPN)等網路。

(2)非監督式學習網路:在網路的訓練過程中,只需要有輸入值而不需要輸出值,

這類的神經網路會自己學習找出聚類規則,自己產生對應的輸出,一般常見的網路有 自組織映射圖網路(self-organizing map;SOM)、自適應共振理論(adaptive resonance theory;ART)等網路。

類神經網路在運作前必須對網路結構和各階層的節點屬性作定義,然後輸入要訓 練的樣本,之後網路對輸入的樣本進行訓練。訓練結果後可以得到一輸出值,此時和 目標值作比較,調整網路連結的加權值來修正兩個值的誤差,經過重複多次的學習訓 練可以得到一個網路模式,最後會輸入一組測試樣本,這些樣本是用來評估所訓練網 路的精確度。

我們要決定一個類神經網路的好壞,常使用一個指標誤差均方根(root mean square error,RMSE),RMSE 越小越好。在選擇網路時先看訓練樣本的 RMSE 值,如 果訓練樣本(training)沒有辦法比較出優劣,這時要把測試(testing)樣本的 RMSE 加入 考慮,希望兩者 RMSE 同時小且趨於一致,也就訓練樣本和測試樣本這兩者的 RMSE 要越接近越好。

倒傳遞類神經網路模式最早出現在 1974 年,當時被命名為動態回饋演算法 (dynamic feedback algorithm),直到 1988 年才正式確定命名倒傳遞類神經網路,解決 了感知機只能解線性分類的問題,使得類神經網路領域有所突破(Nitta, 1994)。

倒傳遞類神經網路屬於監督式學習網路,由於它有學習精度高、回想(recall)速度 快、理論簡明、應用普遍,造成它最近幾年最常被使用的類神經網路。基本原理是利 用最陡坡降法(the gradient steepest descent method)的觀念,使得誤差函數越來越小來 提昇網路準確率。它最大的特點在於增加隱藏層,可以將輸入神經元之間的交互作用 表現出來,它所使用的轉換函數也和之前感知機時代有所不同,採用平滑可微分的轉 換函數,這兩個特點使得類神經網路在理論和模式開發上有重大的突破(Funahashi, 1989)。

倒傳遞類神經網路的架構如圖 2-4 所示,包含三個層級:輸入層、隱藏層、輸出 層。輸入層為讀取外界資訊用,而輸出層將網路訓練學習的結果讀出,這兩層的個數 依問題而定,最重要的是隱藏層的功用,負責將資料分類或是結果間關係作過濾的工 作。隱藏層的層級和各層級單元的個數有一些學者提出證明和建議,隱藏層層級一般 一至二層就可以解決大部分的問題,至於隱藏層各層級單元的個數要在 2n+1以下,其 中 n 為輸入層個數,也有學者提出第二層隱藏層單元的個數要為第一層的一半,但一 般都使用經驗法則加上試誤法。倒傳遞類神經網路最常使用的激發函數為雙彎曲函數 (sigmoid function),其定義為 f(x)= x

e + 1

1 ,當輸入值大於 3 時函數值會趨近於 1,

輸入值小於-3 時其函數值會趨近於 0,這個激發函數的值域是界於 0 和 1 之間。

圖 2-4 類神經網路架構:以倒傳遞類神經網路為例

‧‧

‧‧

‧‧

輸出層

隱藏層

輸入層 輸入向量

輸出向量

倒傳遞類神經網路的計算方式分為向前(forward)和向後(backward)兩方面。首 先,我們將資料從輸入層輸入後,網路會將這些資料直接送至隱藏層,隱藏層這時對 這些資料作加權計算,在利用事先定義的激發函數將加權後的值轉換成激發值傳送至 輸出層,輸出層也會和隱藏層做一樣的動作,將加權計算後的值給激發函數作計算,

最後把計算後的值輸出,因為倒傳遞類神經網路是監督式的學習網路,所以會有輸出 的目標值,這時網路會比較輸出值和目標值的差異,利用學習法則對權重作調整,一 直重複進行直到滿足停止條件,一般停止條件為訓練次數或是誤差值小於設定的值。

倒傳遞類神經網路的訓練過程如下:

(1) 設定網路架構,隱藏層層數及各層級神經元個數。

(2) 設定起始權重,一般由電腦自動隨機產生。

(3) 選擇網路訓練的激發函數。

(4) 設定學習率 (learning rate)、動量 (momentum)和學習次數。

(5) 利用輸入值和起始的權重,在隱藏層中計算各隱藏層神經元的輸出值。

(6) 利用隱藏層的輸入值和起始的權重,在輸出層中計算各輸出層神經元的輸出值。

(7) 求出輸出值和目標值的差異。

(8) 計算隱藏層神經元和輸出層神經元的修正差異量。

(9) 修正輸出層至隱藏層和隱藏層至輸出層的權重。

(10) 重複(5)~(9)步驟直到到達停止條件為止。

由於倒傳遞類神經網路在建立函數有很精確的效果,使用上方便快速,所以在本 研究中我們使用倒傳遞類神經網路來適配(fit)輸入層和輸出層的函數關係。

相關文件