• 沒有找到結果。

本實驗共分為三個部分,分別就 feature 組合的方式、feature 表示方式以及 convolutional neural network 每層 filter 的數量這三方面來做實驗。實驗使用的類 神經網路是使用圖 4-5-1、圖 4-5-2 的 CNN 架構,每一組實驗的設定為:training data 為 258042 筆、訓練次數為 200 萬次、每次 50 個盤面、最初 10 萬次訓練忽略不計。

5.1 input feature 組合方式

本實驗嘗試使用不同組合的 input feature,觀察在不同 input features 組合的 情況下於圖 4-5-1 及圖 4-5-2 兩種 CNN 架構下對走步判斷的準確度。使用的特徵如 4.2

項目 <20% 20%<=acc<25% 25%<=acc<30% 30%<=acc<35% 35%<=acc<40% >=40% <30% >=30%

ori#1#I 0.00% 1.32% 16.18% 33.03% 40.66% 8.82% 17.50% 82.50%

ori#1.2#I 0.00% 2.37% 19.74% 40.79% 32.11% 5.00% 22.11% 77.89%

ori#1.3#I 0.00% 4.21% 18.42% 35.79% 34.21% 7.37% 22.63% 77.37%

ori#1.2.3#I 0.00% 1.75% 18.16% 37.54% 33.68% 8.86% 19.91% 80.09%

表 5-1-1 I-CNN 架構、各 ori input feature 組合準確度分布表

34

項目 <20% 20%<=acc<25% 25%<=acc<30% 30%<=acc<35% 35%<=acc<40% >=40% <30% >=30%

sim#1#II-40 0.00% 3.42% 18.68% 40.79% 30.79% 6.32% 22.11% 77.89% 在 training 的時候,對 training data 的準確度,最右側粗斜體字的兩欄分別代表準 確率小於 30%及大於等於 30%佔訓練總次數的百分比。

首先,由此兩組數據,可以看到在只有特徵盤面 1 的情況下,兩種 CNN 的架構的訓 練準確率皆是最高的。分別加入特徵盤面 2、3 後,I 和 II-40 的訓練準確率的分布有 些許降低。其中,相較於 sim#1.2#II-40、sim#1.3#II-40,ori#1.2#I、ori#1.3#I 的 下降幅度較大,不過 ori#1.2#I 和 ori#1.3#I 下降幅度非常接近,sim#1.2#II-40 的下 降幅度較 sim#1.3#II-40 大。

再來,由 ori#1.2.3#I 及 sim#1.2.3#II-40 的數據中,可以看見在 I 的 CNN 架構 下,當 2、3 兩種特徵盤面和 1 特徵盤面搭配作為 input feature 的時候,準確率較高 的次數百分比有上升,不過還是比原本只有 1 特徵盤面時所佔的次數百分比低;而在 II-40 的 CNN 架構下,sim#1.2.3#II-40 準確率較高的所佔百分比較 sim#1.3#II-40 低。

由以上結果可發現,在 I 的 CNN 架構下,2、3 兩種特徵盤面以 ori 的方式表示的 情況下,單獨和 1 特徵盤面使用的時候會造成訓練的效果降低,兩者搭配使用的時候,

效果會上升。由此我們推斷 I 的 CNN 架構無法完全學習到 2、3 兩種特徵盤面所給予的 資訊;不過,由表 5-1-1 的 ori#1.2#I、ori#1.3#I 及 ori#1.2.3#I 三組數據可以得知

35

2、3 特徵盤面有相輔相成的效果。在 II-40 的 CNN 架構下,2、3 兩種特徵盤面以 sim 的方式表示的情況下,跟在 I 的 CNN 架構的結果一樣,單獨 1 特徵盤面使用的時候,

訓練效果會降低;不同的是,在 2、3 兩種特徵盤面同時與 1 特徵盤面搭配時,效果較 1、3 兩種特徵盤面搭配的效果差。由此我們推斷 2 特徵盤面的表示方式有不適合之處,

代表藍、紅兩色棋子於棋盤上位置的特徵盤面在 sim 的表示方式下,被分解為兩個分 別表示藍色和紅色的特徵盤面,且皆以 1 表示,這可能導致 CNN 在訓練的過程產生對 此特徵盤面的誤解,誤認為藍、紅兩方是等價的、沒有敵我關係而產生錯誤的判斷。

36

5.2 feature 表示方法

本實驗將利用 II 的 CNN 架構中,調整每一層 convolutional layer 的 filter 數量,

藉以觀察在不同的 input feature 表示方法的情況下,其準確率的分布情形。II 後面 的數字代表著第一層 convolutional layer 的 filter 的數量,其他 convolutional layer 的 filter 數量為上一層的兩倍。

項目 <20% 20%<=acc<25% 25%<=acc<30% 30%<=acc<35% 35%<=acc<40% >=40% <30% >=30%

ori#1.2.3#II-10 0.26% 3.16% 22.37% 35.26% 34.21% 4.74% 25.79% 74.21%

ori#1.2.3#II-20 0.26% 2.89% 22.37% 33.16% 32.37% 8.95% 25.53% 74.47%

ori#1.2.3#II-30 0.00% 2.63% 18.42% 41.05% 30.79% 7.11% 21.05% 78.95%

ori#1.2.3#II-40 0.00% 2.63% 18.16% 39.21% 33.16% 6.84% 20.79% 79.21%

表 5-2-1 II-CNN 架構、1.2.3 ori input feature 各 filter 數準確度分布表

項目 <20% 20%<=acc<25% 25%<=acc<30% 30%<=acc<35% 35%<=acc<40% >=40% <30% >=30%

sim#1.2.3#II-10 0.00% 3.95% 20.00% 34.21% 33.16% 8.68% 23.95% 76.05% 況下,當每一層 convolutional layer 的 filter 數量增多時,準確率大於等於 30%所 佔的百分比有逐漸上升的趨勢;而在 sim 的表示方式、1.2.3 特徵盤面組合的情況下,

II-10、II-20、II-30 的準確度分布百分比接近,但是在 II-40 的狀況下,準確的分布 開始往較低的方向下降。

由此實驗可以看到,ori 較複雜的表示方式需要使用較多的 filter 去抽取 input feature 或上一層 convolutional layer 的特徵,隨著 filter 數量的增加,準確度的 分布有往高百分比移動的趨勢,逼近效果較好的 I CNN 架構的準確率分布。

相較於 ori 的表示方式,sim 在 II-10、II-20、II-30 的情況下,準確度的分布沒

37

有太大的變化;不過,在 II-40 的時候,準確度的分布往低百分比移動。我們認為 sim 的表示方式,較易使 II CNN 架構學習到我們想要的特徵,使用較少數量的 filter 就 可以達到一定的效果;當使用過多數量的 filter,將會開始出現 overfitting(或稱為 過度學習、過度訓練)的現象,也就是說,filter 數量過多將會使 CNN 失去 weight sharing 所帶來的容忍 noise 或不良 training data 的優勢,學習到錯誤的特徵、降低 訓練的效果。

38

相關文件