• 沒有找到結果。

第三章 研究方法

3.5 實驗設計

立 政 治 大 學

N a

tio na

l C h engchi U ni ve rs it y

3.5 實驗設計

3.5.1 實驗流程

壓縮實驗整體流程如圖4-1所示,起初我們會分別訓練一個Benchmark model與Seed

model, Benchmark model所扮演的角色為一個比較標準,而Seed model則是作為剪枝的基 礎,兩者的差異主要在於訓練回合數的不同,假設Benchmark model的訓練回合數為N回合,

Seed model的訓練回合數為K(K為N的1/2或1/3),將多樣性演算法套用至Seed model做一次 性的剪枝後得到Compressed model,接著重新訓練N-K回合得到最終的Retrained model,並 和Benchmark model做參數量、FLOP與辨識準確率的比較。

此處與過去相關研究的不同之處在於他們皆是將經過完整訓練的模型進行壓縮後,再

額外花費許多回合數來做重新訓練,因此總訓練回合數會比較多一些,例如[18]在VGG16於 CIFAR-10資料集的壓縮實驗中用了350回合訓練模型,使用他們的方法對模型做壓縮後,再 重新訓練80回合,最後將總共花了430回合訓練所得到的壓縮模型與訓練350回合的模型做 比較,相比之下我們的Benchmark model和Retrained model,所花費的總訓練回合數是相同 的,因此可以確保在比較時的公平性。

圖3-16 壓縮實驗流程圖

0.7來做剪枝,並觀察壓縮後模型的參數量、FLOP、剪枝後的辨識準確率(Accuracy after pruning)與重新訓練後的辨識準確率(Accuracy after retrain),藉此找到一個可能的範圍,再

準確率表示的是我們將模型做剪枝後所得到的Compressed model,直接將測試資料集丟入 模型做預測所得到的準確率,而重新訓練後的準確率表示的是將模型做壓縮並重新訓練後 所得到的Retrained model,將測試資料集丟入做預測所得到的準確率。隨著相似度門檻值的 調降,我們可以發現到在某一個門檻值的區間,剪枝後的準確率會明顯降低,且其幅度並 非5%或10%,而是20%或30%以上,這也是我們稱其為剪枝後準確率斷層處的主要原因,重 新訓練後準確率的落差處就相對容易理解,即經過重新訓練後的模型,其準確率是否低於 比較基準Benchmark model,當重新訓練後的準確率已經低於Benchmark model或在其上下 一點點時,則表示壓縮程度已經到達一個臨界點,如果再試圖降低相似度門檻值,極有可

層的索引值,Benchmark model(N)、Seed model(K)與重新訓練(N-K)的訓練回合數,Batch大 小和Keras中即時資料增強(Real-time data augmentation)的參數設定。

由於我們在對Compressed model進行重新訓練時,有使用到Keras的即時資料增強,因 此每次訓練出來的Retrained model其辨識準確率會有些許差異,為了測試經過多樣性演算法 壓縮後模型在訓練時的穩定度,因此我們對相同Seed model套用相似度門檻值做剪枝所得 到的同一個Compressed model進行三次的重新訓練,觀察其辨識準確率的浮動程度,並將三 次當中最好以及平均的辨識準確率列於實驗結果表中。

VGG16

Low Conv2d_1~4 Batch size 128

Middle Conv2d_5~10 Data augmentation

High Conv2d_11~13 Rotation 15 degrees

Benchmark model (N) 300 epochs Width shift 0.1 (fraction) Seed model (K) 100 epochs Height shift 0.1 (fraction)

Retrain (N-K) 200 epochs Horizental flip TRUE

ResNet56

Low Conv2d_1~19 Batch size 128

Middle Conv2d_20~38 Data augmentation

High Conv2d_39~57 Rotation 0 degrees

Benchmark model (N) 200 epochs Width shift 0.1 (fraction) Seed model (K) 100 epochs Height shift 0.1 (fraction)

Retrain (N-K) 100 epochs Horizental flip TRUE

Middle Conv2d_8~14 Data augmentation

High Conv2d_15~21 Rotation 0 degrees

Benchmark model (N) 200 epochs Width shift 0.1 (fraction) Seed model (K) 100 epochs Height shift 0.1 (fraction)

Retrain (N-K) 100 epochs Horizental flip TRUE

DenseNet-40-12

Low Conv2d_1 && Conv2d_2~14 Batch size 64

Middle Conv2d_15~27 Data augmentation

High Conv2d_28~39 Rotation 15 degrees

Benchmark model (N) 300 epochs Width shift 5/32 (fraction) Seed model (K) 100 epochs Height shift 5/32 (fraction)

Retrain (N-K) 200 epochs Horizental flip TRUE

DenseNet-BC-40-12

Low Conv2d_1 && Conv2d_2~14 Batch size 64

Middle Conv2d_15~27 Data augmentation

High Conv2d_28~39 Rotation 15 degrees

Benchmark model (N) 300 epochs Width shift 5/32 (fraction) Seed model (K) 100 epochs Height shift 5/32 (fraction)

Retrain (N-K) 200 epochs Horizental flip TRUE

表3-1 各模型壓縮實驗設定

‧ 國

立 政 治 大 學

N a

tio na

l C h engchi U ni ve rs it y

相關文件