• 沒有找到結果。

三種類神經方法的最佳參數設定與驗證

第四章 系統實作與驗證分析

4.2 三種類神經方法的最佳參數設定與驗證

在建構倒傳遞網路時,要設定的參數分別有學習循環次數(iteration)、學習 率(learning rate)、動量係數、以及隱藏層的節點數目(hidden node),而隱藏層的 數目通常會設定為一層,因為過多的隱藏層往往會造成過度訓練以及訓練時間過 長,除非訓練結果不如預期,才會增加隱藏層的數目。

在決定學習循環次數時,常見的方法有兩種。第一種方法為在固定學習率以 及動量係數的情況下,進行網路訓練,直到獲得可以接受的RMSE(root mean square error)。一般而言,隨著學習循環次數的增加,RMSE 會跟著減少且趨於 穩定,因此學習循環的次數會選在趨於平穩後(假設為 m 次)的 n 次,n 的多寡則 由訓練者自行主觀決定,學習循環次數為m + n 次,此方法所決定的學習循環次 數具有較省時的優點,但缺點為有時會無法找出更佳的RMSE;第二種方法所產 生的學習循環次數並不固定,在每一次不同參數組合的網路訓練中,設定當出現 一最少的RMSE 時,若再經過 n 次循環皆沒有更小的 RMSE 值,則停止訓練,n 值的決定亦是由訓練者主觀決定,此方法可以確保得到較佳的RMSE 值,但學 習循環次數較不固定,可能會造成訓練時間過長。由於本研究希望可以確保找出 較佳的RMSE,因此採取第二種方法。

而有關學習率、動量係數以及隱藏層節點數的設定,則需經過學習訓練才可 以得知怎樣的參數組合才會得到較佳的RMSE。在本研究中,學習率設定為 0.1、

0.15、0.2 及 0.25,動量係數設定為 0.85、0.9 及 0.95,隱藏層節點數則是設定 為[1-8],總共需實驗 4 × 3 × 4 = 96 次。表 4.2 列出不同的參數組合所得到 的 RMSE 及錯誤辨識率,經過實驗發現,動量係數的設定對於 RMSE 的結果影響很 小,且動量係數=0.85 的表現較佳,因此只列出動量係數=0.85 的結果。

表4.2 倒傳遞網路訓練結果(動量係數=0.85) 0.1 4 0.0122 0.0245 0.0085 0.2 4 0.0094 0.0290 0.0075 0.1 5 0.0097 0.0195 0.008 0.2 5 0.0083 0.0249 0.008

由表4.2 可知,當固定隱藏層節點數時,學習率在 RMSE(Training)的表現相 對而言以 0.15 最佳;而在學習率等於 0.15 的情況下,以隱藏層節點數=7 時,

RMSE(Training)表現最佳,但在 RMSE(Testing)表現卻很明顯不佳,這代表在隱 藏層節點數=7 時產生過度學習的現象,所以較佳的參數設定值為學習率=

0.15,隱藏層節點數=5,動量係數=0.85,此時的錯誤辨識率為 0.8%,即正 確率達(Training)=99.2%且正確率達(Testing)=99.5%,代表倒傳遞網路在晶圓

缺陷點群聚圖案的辨識上有很好的效果。

4.2.2 半徑式函數網路的訓練及結果

在建構半徑式函數網路時,要考慮的參數分為兩類,分別是非監督式階段的 參數和監督式階段的參數。非監督式階段要設定的參數主要為分類數(cluster numbers)和學習循環次數;而在監督式階段主要分為學習循環次數、隱藏層數、

隱藏層節點數、學習率、動量係數。

分類數的設定一般都是依據分類數目來做決定,因此在本研究中設定分類數 目為4,若將分類數設定超過 4,根據實驗,RMSE 反而會隨著而分類數增加,

如表4.3 所示。在非監督階段學習循環次數較不影響之後的 RMSE 值,只要能夠 達到收斂即可,根據實驗,將學習循環數目定為500 即可得到穩定的收斂值。

在設定監督式階段的參數方面,學習循環數目定為 3000;隱藏層數一般設 定為零層或一層即可得到很好的效果,若效果不如預期,則再增加隱藏層數。在 本研究中,學習率設定為0.1、0.15、2,動量係數設定為 0.85、0.9 及 0.95,隱 藏層節點數為 1-10、15、20、25、35、40。

經過實驗可知,在有一層隱藏層的情況下,動量係數和學習率的不同對於 RMSE 影響較不大,而是隱藏層節點數對於 RMSE 的影響較顯著。相對而言,在動 量係數=0.9、學習率=0.15 時,訓練效果較佳。表 4.4 和表 4.5 列出半徑式函 數網路的訓練結果。表 4.4 是在無隱藏層情況下的訓練結果,表 4.5 是在有一層 隱藏層下的訓練結果。

由表4.4 和表 4.5 可以發現,當在隱藏層數=0 時,訓練效果非常不理想。

而在隱藏層數=1 時,RMSE(Training)會在一開始隨著隱藏層節點數的增加而減 少,而當隱藏層節點數超過5 以後,RMSE(Training)的數值皆介在 0.075~0.090 間,代表在隱藏層節點數超過5 以後,不會因為節點數的增加而使訓練效果更 佳,而又節點數越小訓練時間越短,因此隱藏層節點數設定為6。

表4.3 半徑式函數網路在不同分類數下的RMSE值 學習率 RMSE(TRAINING) RMSE(TESTING) 正確率

0.1 0.212 0.2171 0.855

1 0.3346 0.3372 0.7455 11 0.07966 0.0695 0.936625 2 0.1339 0.1549 0.90385 12 0.085906 0.0726 0.93495 3 0.13431 0.1553 0.89665 13 0.07298 0.0704 0.93975 4 0.11226 0.1199 0.9105 14 0.08743 0.07794 0.929975 5 0.091815 0.0832 0.928275 15 0.08105 0.07516 0.937175 6 0.0782 0.073 0.934975 20 0.080921 0.07476 0.936625 7 0.082 0.07014 0.9322 25 0.086902 0.07142 0.9294 8 0.077938 0.07479 0.935525 30 0.079629 0.08074 0.9383 9 0.081136 0.0835 0.936075 35 0.07763 0.06969 0.9394 10 0.08104 0.07037 0.9344 40 0.07504 0.07156 0.93495

因此,較佳的半徑式函數網路的參數設定為:分類數=4、學習循環次數(非

Y=-0.0083*X2-0.0067*X5-24+0.34*X3+0.00056*X4-0.16*X1+0.0013*X1^2-0.00000 23*X2^2-0.0017*X3^2+0.0000026*X3^3+0.00024*X1*X2+0.00031*X1*X3+0.00005 6*X2*X3-0.0000011*X1*X2*X3+0.00000069*X4*X5-0.000000011*X4^2-0.0000016*

X3*X4

由於將輸入變數代入此多項式後,所得到的 Y 為一連續變數,所以在做分 類時,以最靠近的分類值(1、2、3、4)作為分類的結果。舉例來說,若輸入某一 組輸入變數得到的 Y 為1.12,則將此組資料判定為第 1 類,即牛眼圖案。

表 4.6 列出 1800 筆資料中的 12 筆資料作為如何判斷分類結果的範例。而表

44.0467 914.5045 185.4649 12379.88 1.796327 1 1.101382 Y 45.83051 1011.137 166.4346 10366.08 2.027246 1 1.201424 Y 46.85725 1084.422 175.7717 12672.28 2.52388 1 1.169475 Y 77.36798 465.5773 234.1151 8405.098 4.851248 2 2.181471 Y 77.57294 417.8484 218.5468 8324.593 3.536955 2 2.606308 N 79.32839 337.1428 228.3883 7779.9 4.751358 2 2.360574 Y 82.41424 343.0652 233.2244 9205.352 3.449371 3 2.723854 Y 80.07208 362.2863 221.8576 9068.983 4.020375 3 2.739541 Y 81.06624 346.1201 224.4333 8924.351 5.843649 3 2.770722 Y 81.15166 390.6349 179.875 10364.92 4.09724 4 4.310472 Y 82.56437 309.8086 180.6909 9867.309 5.420941 4 4.093597 Y 81.48467 325.544 187.5102 10371.87 7.572677 4 3.881505 Y

表4.7 自組性演算法訓練結果

0.0228251 0.0214522 0.9389 0.940

由辨識正確率(Training)=93.89%且辨識正確率(Testing)=94%,可以發現

0.027268 0.021452 93.9%

相關文件