圖1 Stripe-Wise Pruning與幾種主流Pruning方式的區(qū)別

神經(jīng)網(wǎng)絡的具有結(jié)構和參數(shù)這兩個屬性,這兩個屬性都具有重要意義。本文指出神經(jīng)網(wǎng)絡的濾波器除了通常使用的參數(shù)屬性以外,還有一種形狀屬性。形狀屬性之前一直隱含在參數(shù)中,通過訓練每個濾波器的參數(shù)使其獲得不同的形狀。濾波器的形狀屬性具有重要的意義。具有合適形狀的濾波器,即使參數(shù)是隨機的,也能具有較好的性能。

因此本文通過一種名為濾波器骨架(Filter Skeleton,F(xiàn)S)的模塊來顯性地學習濾波器的形狀(如圖中①)。當訓練結(jié)束,我們可以將FS乘回參數(shù)上,因此不會引入額外的參數(shù)(如圖中②)。

image.png

圖2 PFF方法流程示意圖

對于不在骨架上的參數(shù),使用逐條裁剪的方法將其整條(stripe,1*1濾波器)裁剪掉。

具體的,首先通過卷積計算順序的變換,可以將濾波器從Filter wise等價變換為stripe wise(如圖中③)。接下來就可以使用正常的濾波器剪枝方法對其進行裁剪(如圖中④)。

該方法的創(chuàng)新點包括:

(1) 提出濾波器除了參數(shù)屬性外,還存在形狀屬性,并且形狀屬性具有重要意義。

(2) 提出濾波器骨架的模塊來學習濾波器的形狀,并可以指導模型剪枝。

(3) 通過變換普通卷積為Stripe-Wise Convolution,結(jié)構化的實現(xiàn)逐條剪枝后的模型。

1605775387982084.png
1605775392395680.png

逐條剪枝算法在CIFAR10和ImageNet數(shù)據(jù)集上達到了SOTA效果。

分享到

songjy

相關推薦