DEIM Forum 2017 B3-3

ニューラルネットワークの全結合層におけるパラメータ削減手法の比較
佐々木健太†

佐々木勇和††

鬼塚真††† 大阪大学工学部電子情報工学科 〒 565–0871 大阪府吹田市山田丘 2-1†† 大阪大学大学院情報科学研究科 〒 565–0871 大阪府吹田市山田丘 1-5
E-mail: †{sasaki.kenta,sasaki,onizuka}@ist.osaka-u.ac.jp
あらましディープニューラルネットワークは画像認識や音声認識などの分野で高い精度を達成している．一方で，大規模な環境で学習したディープニューラルネットワークを携帯端末などのハードウェア資源の限られた環境で利用する際には，その計算コスト，消費電力及びメモリ使用量などが技術的な課題となる．これらの課題の一因となり得るのがディープニューラルネットワークの膨大な数のパラメータである．ディープニューラルネットワークのパラメー
タは多くの場合で過剰であることが知られており，パラメータを削減する様々な手法が提案されている．そこで本稿
では，結合単位でパラメータを削減する手法とユニット単位でパラメータを削減する手法の２つの既存手法に注目する．これら 2 つの既存手法を 3 種類のネットワークの全結合層に対して適用し，パラメータ削減後の認識精度の観点から比較を行う．
キーワード ニューラルネットワーク，圧縮，深層学習

1. は じ め に
近年，画像認識や音声認識の分野においては多層のニューラ
ルネットワークであるディープニューラルネットワーク（以下表1

ニューラルネットワークのパラメータ数（ [2] をもとに作成）

ネットワーク名

データセットパラメータ数タイプ

LeNet-300-100 [3]

MNIST

266K

FFNN（注 1）

LeNet-5 [3]

MNIST

431K

CNN（注 2）AlexNet [4]ImageNet

61M

CNN

DNN）が高い精度を達成しており，自動運転や機械翻訳など

VGG-16 [5]ImageNet

138M

CNN

様々な分野への応用が期待されている．DNN の応用分野が広GoogLeNet [6]ImageNet

13M

CNN

ResNet-50 [7]ImageNet

25M

CNN

ResNet-152 [7]ImageNet

60M

CNNなどのこれまで DNN が利用されてこなかった幅広い環境におSqueezeNet [8]ImageNet

1.2M

CNN

いても，DNN を利用したいという要求が高まりつつある．しDeepSpeech [9]

WSJ

8M

RNN（注 3）

かしながら，多くの DNN は豊富なハードウェア資源を持つ計

DeepSpeech-2 [10] Baidu internal

67M

RNN

NeuralTalk [11]6.8M

RNN+LSTM（注 4）

がるにつれて，スマートフォンやウェアラブル端末，ドローン

算機上での動作を前提としており，スマートフォンなどのハー

Flickr-8K

ドウェア資源の限られた環境上で実行する際には，計算コスト，
消費電力およびメモリ使用量の大きさ等が技術的な課題とな

ここで，LeNet-300-100 [3]，LeNet-5 [3] は手書き数字のる．十分なハードウェア資源を持つサーバーにデータを送信し認識を行うネットワークであり，AlexNet [4]，VGG-16 [5]，てサーバー側で処理を行う手法も考えられるが，そのためには

GoogLeNet [6]，ResNet-50 [7]，ResNet-152 [7]，SqueezeNet

当然ながら通信環境が必須となり，通信帯域や遅延，プライバ[8] は一般画像の認識を行うネットワークである．そして，Deep-

シーやセキュリティーなどの問題が生じる [1]．そのため DNN

Speech [9]，Deepseech2 [10] は音声認識を行うネットワークであの用途によっては，外部にデータを送信することなくクライア

り，NeuralTalk [11] は画像から説明文の生成を行うネットワー

ント側で処理を行うことが望まれる場合があると考えられ，そクである．最近では，主に画像認識分野において GoogLeNet やの場合には DNN を利用することのハードウェア要求の高さがSqueezeNet などのように，パラメータ数の非常に多い全結合層問題となる．

を極力用いず畳込み層を主体としたネットワークが多く提案さ

DNN のハードウェア要求の高さの一因として，DNN のパラ

れており，これらのネットワークは AlexNet や VGGNet など

メータ数の多さが挙げられる．DNN のパラメータとはネットの畳込み層と複数の全結合層を併用するネットワークよりもパ

ワークの結合の重みとバイアスの値である．表 1. に代表的なラメータ数を抑えることができる傾向にある．特に SqueezeNet

ニューラルネットワークのパラメータ数を示す．表 1. に示すよはネットワークの設計段階からパラメータ数を減らすことを念

うに，DNN は非常に多くのパラメータを持っており，DNN のモデルサイズが増大する要因となっている．

（注 1）：Feedforward neural network（注 2）：Convolutional neural network（注 3）：Recurrent neural network（注 4）：Long short-term memory

頭に置いて作られたネットワークであり，AlexNet の 50 分の 1

ネットワーク汎化性能を向上させること，あるいはより少ないという非常に少ないパラメータ数で AlexNet と同程度の精度を学習データで効率的に学習を行うことなどを主要な目的として達成している．パラメータ数が多いことは，モデルを保存するいる点で，本稿の方向性と異なっている．

ために多くのストレージを必要とするだけでなく，実行時にはニューラルネットワークの大規模化・複雑化が進んでいる状

メモリ使用量が増加し，DRAM へのアクセスが増えることに況下で，いくつかの DNN のパラメータについて非常に冗長性

よる消費電力の増加にも繋がることが指摘されている [12] [13]．

が高いことが Denil らによる研究 [14] によって明らかにされて一方で，DNN のパラメータの多くが冗長であることが知られている．このような事実から，学習済みの DNN において不要ないる [14]．そのため，予測の精度を維持したまま DNN のパラ

パラメータの削減を行うことによって DNN のモデルサイズを

メータ数を削減する様々な手法が提案されている [1, 12, 15–20]．

圧縮する手法の研究が近年盛んにおこなわれており，以下でそ

本稿では，DNN のパラメータ削減手法のうち，先行研究におれらの研究の一部について述べる．

いて十分な比較が行われていない DNN の不要な結合あるいは近年の大規模なネットワークに対してパラメータ数の削減

ユニットを削減（Pruning）する手法に注目する．結合単位でを目的として結合の削減を行った研究として Han らによる研パラメータを削減する手法とユニット単位でパラメータを削減

究 [12] がある．Han らによる研究では，重みの絶対値を評価する手法の２つの既存手法 [12] [16] について，LeNet-300-100，

指標とした結合の削減と再学習を繰り返すことで，AlexNet や

LeNet-5，そして ImageNet のデータセットにおいて学習を行っ

VGGNet などの大規模なネットワークにおいても精度を維持た後に，Oxford 102 Category Flower Dataset 向けに転移学習したままパラメータ数を 9 倍から 13 倍圧縮することに成功を行った CaﬀeNet の 3 種類のネットワークの全結合層に対ししている．そして，この手法を他の手法と組み合わせた Deepて適用し，パラメータ削減後の認識精度の観点から評価を行う．

Compression と呼ばれる手法 [1] も Han らによって提案され以降の本稿の構成は以下の通りである．まず，2. で関連研究ており，モデルサイズをさらに圧縮することに成功している．

について述べる．そして，3. で本稿で用いた手法について説明

また，圧縮したモデルを効率的に処理するためのハードウェア

し，4. において実験の設定と結果について述べる．最後に，5.

も Han らによって提案されている [24]．また，Han らによるにおいて結論を述べたうえで今後の課題についても述べる．

結合の削減の手法では，一度削減された結合は再学習を行って

2. 関 連 研 究も復元されることはなかったが，Guo らによる研究 [15] では，Han らの手法を発展させ再学習中に動的に結合の削減と復元を本稿が注目するニューラルネットワークの不要な結合やユニッ行うことによって AlexNet において精度を維持したままパラ

トの削減を行う手法については，主にニューラルネットワーク

メータを 17.7 倍圧縮することに成功しており，パラメータ削の汎化性能を向上させる手段として古くから様々な手法が提案

減時の再学習に必要なエポック数も Han らによる手法と比べされており，それらは Reed らによる研究 [21] にまとめられてて少なくて済むことが報告されている．

いる．Reed らの研究 [21] では，結合の削減を行う手法の多くは大きく 2 つのグループに分けられるとしている．

1 つ目のグループは学習済みのネットワークを用いて，ある

また，結合単位ではなくユニット単位でパラメータの削減を行う手法も提案されている．He らによる研究 [16] では，ユニットの削減を行う際の評価指標として 3 種類の評価指標を提案し結合（あるいはユニット）の削減がネットワークの損失関数にそれらの比較を行っており，He らの研究で対象としたネット

どの程度影響を与えるのかを見積もることによって削減する結

ワークにおいては，ユニットの出力側の結合の重みの値の L1

合を決める手法のグループである．すべての結合についてそのノルムを用いた評価指標が最も良い性能を示したことが報告さ

削減がネットワークの損失関数に与える影響を計算することはれている．また，ユニット単位でパラメータを削減するその他

大規模なネットワークでは難しいため，様々な近似的な手法がの手法としては，重みの値が類似しているユニット同士を統合提案されている．代表的なものとしては，ネットワークの損失する手法 [17] も提案されている．

関数の各重みについての二階偏微分を利用して結合の重要度をここまで述べた手法は，本稿で注目する何らかの手段でネッ測る Optimal Brain Damage と呼ばれる手法 [22] が挙げられトワークの結合，あるいはユニットの削減を行う手法のグルーる．しかしながら，二階偏微分の計算は計算コストが大きく，プであったが，結合，あるいはユニットの削減を行う手法以外

大規模なネットワークでの利用には不向きである．もう一方のにもニューラルネットワークのパラメータ数を削減するため

グループは，ネットワークの学習の際に損失関数に何らかのペの様々な手法が提案されている．例としては，Denton らによナルティ項を追加することで学習の途中でより小規模なモデる研究 [18] が挙げられる．Denton らの研究では，ニューラル

ルを学習させる手法のグループである．主にネットワークの過ネットワークのパラメータ行列を行列分解の手法のひとつであ学習を防ぐ正則化の手法として用いられる重み減衰（Weight

る SVD（Singular Value Decomposition）を用いて近似を行

Decay）[23] などがこちらのグループにあたる．また，遺伝的うことによってパラメータ数を削減する手法が提案されている．

アルゴリズムを用いた手法などどちらのグループにも属さな

しかしながら，Denton らの手法は，パラメータの削減よりもい手法についてもまとめられている．しかしながら，これらのニューラルネットワークによる推論にかかる時間の短縮に重点

研究はパラメータ数の削減を目的としたものではなく，ネット

を置いており，Pruning を行う手法と比べるとパラメータ数のワークの表現能力を制限することによって過学習を防ぐことで削減効果は大きくないことが報告されている [1]．

また，異なる結合同士で重みの値を共有する手法 [19] も Chen
らによって提案されている．Chen らによる手法はネットワー
クの結合をハッシュ関数を用いてランダムにグループ化し，同じグループの結合で一つのパラメータを共有することによって

DNN のモデルサイズを削減することに成功している．
パラメータを表現するための bit 数を削減する手法 [25] [26]についても数多くの研究がなされており，重みの値を二値化する手法 [27] なども提案されている．これらの研究の多くはネットワークの推論時だけでなく学習時の効率化も主な目的としている点で本稿で注目した学習済みのモデルを圧縮する手法と大図 1 結合単位でのパラメータの削減

きく異なっている．また，パラメータの数を減らすのではなくパラメータ当たりのデータサイズを削減しているという点でも畳込み層の圧縮については今後の課題とする．Han らによって本稿が注目した手法とアプローチが異なっている．

提案された手法の概要を図 2 に示す．Han らによって提案されDNN のモデルを圧縮するためのその他の手法としては，訓た手法は図 2 に示すような 3 つのステップから構成される．

練済みの大規模なネットワークの出力を利用して，より小規模
なネットワークを学習させる蒸留と呼ばれる手法 [20] なども提案されている．
本章では DNN のモデルサイズの圧縮に関連する研究について述べたが，結合単位でパラメータを削減する手法とユニット単位でパラメータを削減する手法の比較は多くは行われていな
い．また，難しいタスクを学習したネットワークモデルを転移
学習によってより易しいタスク向けに学習させ直した際には，ネットワークのパラメータに冗長性が生じると考えられるが，転移学習を行ったネットワークモデルに対してパラメータの削減を行った研究もほとんど行われていない．そこで，本稿では

図 2 結合の削減の手順（ [12] をもとに作成）

結合単位でパラメータを削減する手法とユニット単位でパラメータを削減する手法の２つの既存手法 [12] [16] を難しいタス

第 1 ステップでは，通常のネットワークの学習と同様に学習

クから比較的易しいタスクへの転移学習を行ったネットワーク

を行う．第 2 ステップでは，第 1 ステップで学習した重みの絶を含む 3 つのネットワークに対して適用して評価を行った．

対値が閾値よりも小さな結合を削減する．結合の削減に用いる

3. 手法の説明

閾値については [12] で提案されている手法に従い，ασl とした．
但し，α はネットワーク全体のパラメータ削減率を調整するた

本稿では，ニューラルネットワークのパラメータを削減する

めに選ぶパラメータであり，σl は各層の結合の重みの標準偏差手法の中でも，既存研究において十分な比較が行われていないである．本稿では，このパラメータの α を変えて実験を行うこ

結合単位でパラメータの削減を行う手法とユニット単位でパラとで最終的なパラメータ削減率を調整して評価を行った．また，メータの削減を行う手法に注目する．本稿では，これら 2 種類

Han らによる研究においては，層によってパラメータの削減にの既存手法を全結合層のパラメータがネットワーク全体のパラ

よるネットワークの認識精度への影響が異なっていることが示

メータ数の大部分を占める LeNet-300-100 と LeNet-5，Oxford

されており，レイヤー単位で結合の削減を行った場合の精度の102 category flower dataset 向けに学習を行った CaﬀeNet の低下を確認する予備的な解析を行うことによって層ごとに閾値

3 種類のネットワークの全結合層に対して適用し，パラメータを調整を行っているが，各層の閾値について最適な値を決定す

削減後の認識精度の観点から比較を行う．

るのは非常に難しい問題であることから，本稿ではネットワー

3. 1 結合単位でのパラメータの削減

クのすべての層において同じ値のパラメータ α を用いる．第 2

本稿では結合単位でのパラメータの削減については Han ら

ステップにおいて結合の削減を行ったネットワークは予測の精による研究 [12] で提案されている手法を用いた．

度が大きく低下してしまうため，第 3 ステップにおいて結合の結合単位でのパラメータの削減は図 1 に示されるように，ネッ

削減されたネットワークの再学習を行いパラメータの値を調整

トワークの不要な結合を削減することによってパラメータの削する．第 3 ステップの再学習においては，重みの値の初期化は減を行う手法である．

行わず，前のステップで学習済みの重みの値を初期値として学

結合単位でのパラメータの削減については Han らによる研習を行う．また，第 3 ステップでの学習時のデータセットとし

究 [12] で提案されている手法を用いる．Han らによる研究でては第 1 ステップで用いたデータセットと同じものを用いた．

は全結合層だけでなく畳込み層に対しても結合の削減を適用し第 2 ステップの結合の削減と第 3 ステップの再学習を繰り返すているが，本稿では全結合層に対してのみ結合の削減を行い，ことによって段階的に結合の数を減らすことができる．

3. 2 ユニット単位でのパラメータの削減
次に，ユニット単位でのパラメータの削減手法について説明する．ユニット単位でのパラメータの削減は図 3 に示されるよ

onorm という指標が最も効果的であったとしている．l 番目の層の i 番目のユニットの onorm は以下のように定式化されている．

うに，ネットワークの不要なユニットを削減することによってパラメータの削減を行う手法である．

onorm(l, i) =

1
N l+1

∑

N l+1
l+1
|wij
|

(1)

j=1

l
ここで N l は l 番目の層の出力ユニットの数を表し，wijはl番目の層の結合の重みを表す．本稿ではユニットを削減する際の評価基準としてこの onorm を採用した．He らはユニットの削除は他のユニットの onorm に影響を与えることを指摘しつ
つも，onorm による評価を一度だけ行ってユニットを onorm
順にソートしてより onorm の小さいユニットを一度に削減した後に再学習を行っている．本稿でも同様に onorm による評価と削減を一度のみ行う．本稿においては，ユニットの削減は
図3

ユニット単位でのパラメータの削減

図 3 に示すようにネットワークの全結合部分の両端である入力と出力に相当するユニットに対しては適用しない．

ユニット単位での結合のパラメータの削減については He ら

4. 実

験

による研究 [16] で提案されている手法を参考にする．図 4 にユ
ニット単位でのパラメータ削減手法の概要を示す．ユニット単位でのパラメータ削減手法は図 4 に示す 3 つのステップから構成される．

4. 1 データセット
まず，LeNet-300-100 及び LeNet-5 での実験においては手書
き数字の画像データセットである MNIST データセット（注 5）を用いた．MNIST データセットは 10 カテゴリのラベル付けがなされた 28 × 28 ピクセルのグレースケール画像のデータセット
であり，6 万枚の訓練用データセットと 1 万枚のテスト用デー
タセットで構成される．

CaﬀeNet においては，Nilsback ら [28] によって作成された
Oxford 102 Category Flower Dataset を用いた．このデータセットは 102 カテゴリのラベル付けがなされた花のカラー画像のデータセットであり，1, 020 枚の訓練用データセットと 6, 149
枚のテスト用データセット，そして 1, 020 枚の検証用データセットで構成されている．本稿では，後述の Caﬀe Model Zoo
図4

ユニットの削減の手順

ユニット単位でパラメータを削減する手法においても，結合単位でパラメータを削減する手法と同様に，まず通常のネット
ワークの学習と同様に学習を行う．そして，学習したネットワー
クにおいて，各層のユニットについてその重要度を測るための評価値を求め，評価値についてユニットのソートを行う．そして，設定したユニットの削減率に従って評価値の低いユニット
からユニットの削減を行う．本稿ではユニットの削減率を変化させることで，パラメータの削減率を調整して評価を行った．
ユニットの削減を行ったネットワークは精度が大きく低下する
ため，ユニットの削減を行った後に再学習を行う．その際には，結合単位でパラメータを削減する手法と同様に，学習済みの重みを初期値として，最初の学習で用いたデータセットと同
じデータセットで学習を行う．He らによる研究ではニューラ
ルネットワークのユニットを削減する際の評価指標として３種類の評価基準を比較し，He らが対象としたネットワークにおいては注目するユニットの出力側の重みの L1 ノルムを用いたに記載されている学習方法に従い，訓練用データセットとテス
ト用データセットを入れ替えて実験を行い（すなわち，6, 149
枚のデータを訓練用に，1, 020 枚のデータをテスト用に用いた），検証用データセットについては利用しなかった．

4. 2 パラメータ削減の対象としたネットワーク
4. 2. 1 LeNet-300-100
LeNet-300-100 は，3 つの全結合層のみで構成される比較的構造の単純なネットワークである．学習率や正則化項の係数な
どの学習時のパラメータについては Caﬀe の MNIST チュート
リアルを参考に設定した．異なる初期値で 5 回学習を行い，テスト用データ 1 万件において最も高い精度を達成したモデルをパラメータ削減の対象とした．LeNet-300-100 の各層のバイア
スを除くパラメータ数を表 2 に示す．

4. 2. 2 LeNet-5
LeNet-5 は全結合層のみで構成されている LeNet300-100 と異なり，畳込み層と全結合層を併用したネットワークである．
各層のバイアスを除くパラメータ数を表 3 に示す．学習率など（注 5）：http://yann.lecun.com/exdb/mnist/表 2 LeNet-300-100 の各層のバイアスを除くパラメータ数

Category Flower Dataset に合わせて 1, 000 から 102 に変更

パラメータ数 ネットワーク全体に占める割合

し，この層のパラメータのみを初期化する．最後に，Oxford

全結合層 1235.2K

88.35%

102 Category Flower Dataset の訓練用データ 6, 149 枚を用い全結合層 230K

11.27%

全結合層 3

1K

0.38%てバッチサイズ 50 で 5 万イテレーションの学習を行った．この合計

266.2K時，ネットワークの最後の全結合層は他のレイヤーの 10 倍の学習率で学習を行った．学習率などのパラメータの設定についの学習時のパラメータについては Caﬀe の MNIST チュートリ
アルを参考に設定した．LeNet-5 においても LeNet-300-100 と同様に異なる初期値で 5 回学習を行い，テスト用データにおいて最も高い精度を達成したモデルをパラメータ削減の対象とした．

ても Caﬀe Model Zoo の記述に従った．本稿では Caﬀe Model

Zoo の手法と異なり，ネットワークの過学習を防ぐために学習時に全結合層のユニットを確率的に無視して学習を行う手法である DropOut [30] は適用しなかった．初期値を変えて 3 回学習を行い，テスト用データにおいて最も高い精度を達成したモ
デルをパラメータ削減の対象とした．このモデルのテストデー

表 3 LeNet-5 の各層のバイアスを除くパラメータ数
パラメータ数 ネットワーク全体に占める割合
畳込み層 1

0.5K

0.12%

畳込み層 225K

5.81%

全結合層 1400K

92.92%

全結合層 25K

1.16%

タにおける認識精度 (top-1) は 91.82% であった．本稿で用いたネットワークの各層のバイアスを除くパラメータ数を表 4 に示す．
表 4 CaﬀeNet(Modified) の各層のバイアスを除くパラメータ数
パラメータ数

ネットワーク全体に占める割合

畳込み層 135K

0.06%

畳込み層 2

307K

0.54%

畳込み層 3

885K

1.54%

畳込み層 4

664K

1.16%

畳込み層 5

442K

0.77%

CaﬀeNet とは，Krizhevsky らによって提案され，2012 年

全結合層 1

38M

65.91%に画像認識のコンペティションである ImageNet Large Scale

全結合層 2

17M

29.29%

Visual Recognition Challenge(ILSVRC) [29] において優勝し全結合層 3

418K

0.73%

た AlexNet に対して Pooling 層と Normalization 層を入れ替

合計

57M

合計

430.5K4. 2. 3 Oxford 102 Category Flower Dataset を学習させた CaﬀeNet

えるなどの若干の変更を行ったネットワークであり，Caﬀe によって提供されている．本稿では，ImageNet のデータセッ

4. 3 実 験 設 定

トではなく，Oxford 102 Category Flower Dataset を学習さ

本稿では，ディープラーニングフレームワークである Caﬀe

せた CaﬀeNet に対してパラメータの削減を行った．Oxford[31] とその Python 向けインターフェースである PyCaﬀe を用

102 Category Flower Dataset を学習する CaﬀeNet は Caﬀe

いて実験を行った．

（注 6）

で提供されている．CaﬀeNet の出力層のユニッ

本稿では，すべてのネットワークの学習・再学習においてミトの数が ImageNet のタスクに合わせて 1000 ユニットなのにニバッチによる確率的勾配降下法を用いた学習を行い，その際対して，本稿で用いたネットワークは Oxford 102 Category

L2 ノルムによる正則化とモメンタム法を適用した．また誤差

Flower Dataset に合わせて出力ユニットの数が 102 ユニット関数としては交差エントロピー誤差関数を用いた．出力層以外に変更されている．本稿では，Caﬀe Model Zoo で提供されの活性化関数としては正規化線形関数を用い，出力層の活性化

Model Zooているモデルの学習方法（注 7）に従って ImageNet データセッ

関数としてはソフトマックス関数を用いた．

トで学習を行った CaﬀeNet を Oxford 102 Category Flower

まず，LeNet-300-100 において結合の削減を行う際には，削Dataset 向けに fine-tuning による転移学習を行った．手順とし減の閾値を決めるパラメータ α を 0.6 から 2.8 の範囲で変えてては，まず 1, 000 カテゴリのラベル付けがなされた ImageNet実験を行い，結合の削減と再学習 10 万イテレーションのセットの ILSVRC2012 データセットを用いて CaﬀeNet の学習を行をそれぞれ 5 回ずつ繰り返した後の最終的なパラメータ削減率う．本稿では，ILSVRC2012 データセットでの学習は実際にはと精度を評価した．ユニットの削減においては，各層について行わず，学習済みのモデルをダウンロードして利用した （注 8）．

全てのユニットを He らによる研究で用いられた評価指標であ

この学習済みモデルは ILSVRC2012 の検証用データセットにる onorm の低いものから削減し，その後 10 万イテレーション

おいて 57.4% の認識精度（top-1）を達成している．次に，ネッの再学習を行うことによってユニットの削減を行った．LeNet-5

トワークの最後の全結合層の出力ユニットの数を Oxford 102

においても同様に，結合の削減を行う際には，削減の閾値を決めるパラメータ α を 0.7 から 2.8 の範囲で変えて実験を行い，（注 6）：https://github.com/BVLC/caﬀe/wiki/Model-Zoo結合の削減と再学習 10 万イテレーションのセットをそれぞれ 5（注 7）：https://gist.github.com/jimgoo/0179e52305ca768a601f

回ずつ繰り返した後の最終的なパラメータ削減率と精度を評価（注 8）：https://github.com/BVLC/caﬀe/tree/master/models/

bvlc reference caﬀenet

した．LeNet-5 においても LeNet-300-100 と同様にバッチサイズは 64 を用いた．ユニットの削減においては，削減の対象となる層のユニットを評価指標である onorm が低いユニットから削減し，その後 10 万イテレーションの再学習を行うことによってユニットの削減を行った．LeNet-300-100 および LeNet-5 の再学習を行う際の学習率や正則化項の係数などのパラメータについては，初期の学習を行った際に用いた Caﬀe の MNIST
チュートリアルのパラメータを参考に設定した．Oxford 102

Category Flower Dataset を学習させた CaﬀeNet において結合の削減を行う際には，削減の閾値を決定する際のパラメータの α を 0.5 から 2.6 の範囲で変えて実験を行い，結合の削減と再学習 5 万イテレーションのセットをそれぞれ 3 回ずつ繰り返した後の最終的なパラメータ削減率と認識精度を評価した．
ユニットの削減においては，各層について全てのユニットを評
価指標である onorm が低いユニットから削減し，その後 5 万

図 5 LeNet-300-100 におけるパラメータ削減の結果（注 9）

イテレーションの再学習を行うことによってユニットの削減を行った．その際，削減の対象となる全てのユニット層においてユニットの削減率が等しくなるようにユニットの削減を行った．

Oxford 102 Category Flower Dataset を学習させた CaﬀeNetの再学習を行う際の学習率や正則化項の係数などのパラメー

ないネットワークを学習させた際のパラメータ削減率と精度の関係も「小規模モデル」としてプロットしている．LeNet-5 のパラメータ削減前の認識精度は 99.10% であった．

タについては，初期の学習を行った際に利用した Caﬀe Model

Zoo のパラメータを参考に設定した．
4. 4 評 価 結 果
3 つの全結合層から構成される LeNet-300-100 に対して結合の削減とユニットの削減それぞれの手法でパラメータの削減を行なった場合の全結合層のパラメータの削減率とテストデータ
における認識精度の関係を図 5 に示す，LeNet-300-100 のパラメータ削減前のテストデータにおける認識精度は 98.34% であり，この値を「baseline」としてプロットしている．
「baseline」
については，パラメータの削減を行っていないが比較のため図中に直線でプロットしている．また，学習済みのネットワークのパラメータを削減するのではなく，最初からパラメータ数の少ないネットワークを学習させた際のパラメータ削減率と精度の関係も「小規模モデル」としてプロットしている．その際に図 6 LeNet-5 におけるパラメータ削減の結果（注 9）は，ユニット単位でのパラメータの削減を行ったネットワークとネットワークの構造が同じになるようにネットワークの定義

LeNet-300-100 と LeNet-5 においては，いずれのネットワー

し，異なる初期値で 5 回学習を行い最も精度の高かったものをクにおいても結合単位でのパラメータの削減はユニット単位でプロットした．

のパラメータの削減に比べて精度を維持したままより多くの

LeNet-300-100 においては入力側から見て 1 つ目の全結合層パラメータを削減することに成功していることが分かった．削がネットワーク全体のパラメータの 90% 近くを占めており，2減後のネットワークにおいて結合単位での削減はユニット単位

つめの全結合層のユニットの削減はパラメータ削減率及び削減

でのパラメータの削減と比べてより多くのユニットを保持で後の精度に与える影響が小さいことから，LeNet-300-100 におきるために，より高い表現力を維持できる点が一因として考けるユニット単位でのパラメータの削減の手法においては，2えられる．特に，ユニット単位でのパラメータの削減に関して

つめの全結合層のユニットの削減率を 70% に固定し，1 つ目のは，大規模なモデルのパラメータを削減するのではなく，最初全結合層のユニットの削減率を変化させることによってネット

からパラメータ数の少ないモデルを学習させた場合と認識精度

ワーク全体での削減率を調整した．

にほとんど差が無い結果となった．MNIST のデータセットに

次に，LeNet-5 に対して結合の削減とユニットの削減それぞ

おいてはネットワークの初期値によらず，小規模なネットワー

れの手法でパラメータの削減を行なった場合の全結合層のパラ

クでも十分学習を行うことが可能であり，大規模なネットワー

メータの削減率と認識精度の関係を図 6 に示す，パラメータ削
減前のネットワークの認識精度を「baseline」としてプロット（注 9）：ただし「baseline」はパラメータ削減を行っていないが比較のため直線

し，LeNet-300-100 と同様の手順で最初からパラメータ数の少でプロットしているクで学習した重みを利用することによる恩恵が得られなかっ表 5 CaﬀeNet における結合単位でのパラメータ削減時の各層のパラメータ削減率たためであると考えられる．LeNet-5 での実験結果においてパラメータ削減率（%）

LeNet-300-100 での実験結果よりも各手法間で性能の差が小さ
いのは，LeNet-5 においては畳込み層のパラメータが削減され

α

全結合層 1 全結合層 2 全結合層 3 全結合層全体

精度 (%)

0.5

49.54

47.13

57.21

48.86

91.66

0.6

57.54

55.14

64.99

56.86

91.39

クの精度に与える影響が比較的小さいためであると考えられる．

0.8

70.96

69.04

76.44

70.42

91.16

最後に，Oxford 102 category flower dataset 向けに学習を

1.0

80.97

79.77

83.74

80.62

91.11

行った CaﬀeNet に対して結合の削減の手法とユニットの削減

1.3

90.51

90.27

90.01

90.43

91.02

の手法をれぞれを用いてパラメータの削減を行った場合の全結

1.5

94.16

94.28

92.45

94.18

90.69

1.6

95.44

95.64

93.38

95.49

90.53

1.7

96.41

96.66

94.20

96.47

89.84

1.8

97.17

97.43

94.88

97.23

89.94

プロットしている．CaﬀeNet のパラメータ削減前の Oxford

1.9

97.75

98.02

95.45

97.81

89.45

ずに残っているため全結合層のパラメータの削減がネットワー

合層のパラメータ削減率と認識精度の関係を図 7 に示す．パラメータ削減前のネットワークの認識精度を baseline として

102 category flower dataset のテストデータにおける認識精度

2.0

98.20

98.45

95.94

98.26

89.56

（top-1）は 91.82% であった．CaﬀeNet においては ImageNet

2.2

98.80

99.03

96.74

98.85

88.97

で学習したモデルからの転移学習を行っているため，小規模な

2.4

99.19

99.40

97.41

99.24

87.74

2.6

99.46

99.64

97.95

99.50

87.08

モデルを最初から学習した場合についての実験は行っていない．
また，結合単位でのパラメータの削減を行った際のパラメータ

α と各層のパラメータ削減率とネットワークの認識精度は表 5のようになった．

性も考えられる．データセットのサイズが精度の低下の原因であると仮定すると，大規模な学習データが存在する転移学習前のデータセットにおいてパラメータの削減と再学習を行った後で転移学習を行うことによってより高い予測精度を維持できると期待できる．

5. 結論

本稿では，ニューラルネットワークの結合単位でパラメータを削減する手法とユニット単位でパラメータを削減する手法の２つの既存手法を LeNet-300-100，LeNet-5，そして Oxford

102 Category Flower Dataset 向けに学習を行った CaﬀeNet の
3 種類のネットワークの全結合層に対して適用し評価を行った．
その結果，LeNet-300-100 及び LeNet-5 においては結合単位でのパラメータを削減する手法がより優れた性能を示したのに対して，Oxford 102 Category Flower Dataset 向けに学習を行っ
図 7 CaﬀeNet におけるパラメータ削減の結果（注 9）Oxford 102 category flower dataset 向けに学習を行った CaffeNet においては，結合単位でのパラメータ削減がユニット単位
でのパラメータ削減にやや劣る結果となった．LeNet-300-100
及び LeNet-5 での実験と異なる結果が出た要因としては Oxford

102 category flower dataset 向けに学習を行った CaﬀeNet に
おいてはパラメータ削減前のネットワークにおけるパラメータ

た CaﬀeNet においてはユニット単位でのパラメータの削減を行う手法がやや優れた性能を示す結果となり，対象とするネットワーク等の条件によって良い性能を示すパラメータ削減手法が異なることが明らかとなった．また，本稿においては各層ごとのパラメータの削減率の調整は基本的に行っていないが，今後の課題として各層のパラメータの冗長性に応じてパラメータの削減率を調整することも検討したい．その際には，各層のパラメータの削減率をどのように決定するのかが課題となる．

の冗長性が非常に大きいという点や，結合の削減と再学習のセットの繰り返しの回数，各層のパラメータ削減率などいくつかの要因が考えられるため，この点についてはさらなる検証を必要とする．
また，CaﬀeNet における実験においてはパラメータ削減後の予測精度がパラメータ削減前のモデルをやや下回る結果となった．再学習時のハイパーパラメータの設定が原因である可能性も考えられるが，再学習に用いたデータセットのサイズがパラメータを削減したモデルの学習を行うのに十分でなかった可能文

献[1] S. Han, H. Mao, and W.J. Dally, “Deep compression: Compressing deep neural network with pruning, trained quantization and huﬀman coding,” International Conference on
Learning Representations (ICLR), 2016.
[2] S. Han, J. Pool, S. Narang, H. Mao, S. Tang, E. Elsen,
B. Catanzaro, J. Tran, and W.J. Dally, “DSD: regularizing deep neural networks with dense-sparse-dense training
flow,” Computing Research Repository, vol.abs/1607.04381,
2016.

[3] Y. LeCun, L. Bottou, Y. Bengio, and P. Haﬀner, “Gradientbased learning applied to document recognition,” Proceedings of the IEEE, vol.86, no.11, pp.2278–2324, 1998.
[4] A. Krizhevsky, I. Sutskever, and G.E. Hinton, “Imagenet
classification with deep convolutional neural networks,” Advances in Neural Information Processing Systems, pp.1097–
1105, 2012.
[5] K. Simonyan, and A. Zisserman, “Very deep convolutional
networks for large-scale image recognition,” Computing Research Repository, vol.abs/1409.1556, 2014.
[6] C. Szegedy, W. Liu, Y. Jia, P. Sermanet, S. Reed,
D. Anguelov, D. Erhan, V. Vanhoucke, and A. Rabinovich,“Going deeper with convolutions,” Proceedings of CVPR,
pp.1–9, 2015.
[7] K. He, X. Zhang, S. Ren, and J. Sun, “Deep residual learning for image recognition,” Computing Research Repository,
vol.abs/1512.03385, 2015.
[8] F.N. Iandola, M.W. Moskewicz, K. Ashraf, S. Han, W.J.
Dally, and K. Keutzer, “Squeezenet: Alexnet-level accuracy
with 50x fewer parameters and <1mb model size,” Computing Research Repository, vol.abs/1602.07360, 2016.
[9] A.Y. Hannun, C. Case, J. Casper, B. Catanzaro, G. Diamos, E. Elsen, R. Prenger, S. Satheesh, S. Sengupta,
A. Coates, and A.Y. Ng, “Deep speech: Scaling up end-toend speech recognition,” Computing Research Repository,
vol.abs/1412.5567, 2014.
[10] D. Amodei, R. Anubhai, E. Battenberg, C. Case, J. Casper,
B. Catanzaro, J. Chen, M. Chrzanowski, A. Coates, G. Diamos, E. Elsen, J. Engel, L. Fan, C. Fougner, T. Han, A.Y.
Hannun, B. Jun, P. LeGresley, L. Lin, S. Narang, A.Y. Ng,
S. Ozair, R. Prenger, J. Raiman, S. Satheesh, D. Seetapun,
S. Sengupta, Y. Wang, Z. Wang, C. Wang, B. Xiao, D. Yogatama, J. Zhan, and Z. Zhu, “Deep speech 2: End-to-end
speech recognition in english and mandarin,” Computing
Research Repository, vol.abs/1512.02595, 2015.
[11] A. Karpathy, and L. Fei-Fei, “Deep visual-semantic alignments for generating image descriptions,” Proceedings ofthe IEEE Conference on Computer Vision and Pattern
Recognition, pp.3128–3137, 2015.
[12] S. Han, J. Pool, J. Tran, and W. Dally, “Learning bothweights and connections for eﬃcient neural network,” Advances in Neural Information Processing Systems, pp.1135–
1143, 2015.
[13] M. Horowitz, “1.1 computing’s energy problem (and what
we can do about it),” Solid-State Circuits Conference Digest of Technical Papers (ISSCC), 2014 IEEE International,
pp.10–14, 2014.
[14] M. Denil, B. Shakibi, L. Dinh, M. Ranzato, and N. de Freitas, “Predicting parameters in deep learning,” Advancesin Neural Information Processing Systems, pp.2148–2156,
2013.
[15] Y. Guo, A. Yao, and Y. Chen, “Dynamic network surgery
for eﬃcient dnns,” Advances In Neural Information Processing Systems, pp.1379–1387, 2016.
[16] T. He, Y. Fan, Y. Qian, T. Tan, and K. Yu, “Reshaping
deep neural network for fast decoding by node-pruning,”2014 IEEE International Conference on Acoustics, Speechand Signal Processing (ICASSP), pp.245–249, 2014.
[17] S. Srinivas, and R.V. Babu, “Data-free parameter pruningfor deep neural networks,” Computing Research Repository,
vol.abs/1507.06149, 2015.
[18] E. Denton, W. Zaremba, J. Bruna, Y. LeCun, and R. Fergus, “Exploiting linear structure within convolutional networks for eﬃcient evaluation,” Computing Research Repository, vol.abs/1404.0736, 2014.
[19] W. Chen, J.T. Wilson, S. Tyree, K.Q. Weinberger,
and Y. Chen, “Compressing neural networks withthe hashing trick,” Computing Research Repository,

vol.abs/1504.04788, 2015.
[20] G. Hinton, O. Vinyals, and J. Dean, “Distilling the knowledge in a neural network,” arXiv preprint arXiv:1503.02531,
2015.
[21] R. Reed, “Pruning algorithms-a survey,” IEEE transactions
on Neural Networks, vol.4, no.5, pp.740–747, 1993.
[22] Y. LeCun, J.S. Denker, S.A. Solla, R.E. Howard, and L.D.
Jackel, “Optimal brain damage,” Advances in Neural Information Processing Systems, vol.2, pp.598–605, 1989.
[23] D.C. Plaut, S.J. Nowlan, and G. Hinton, “Experiments onlearning by back propagation,” , 1986.
[24] S. Han, X. Liu, H. Mao, J. Pu, A. Pedram, M.A. Horowitz,
and W.J. Dally, “EIE: eﬃcient inference engine on compressed deep neural network,” Computing Research Repository, vol.abs/1602.01528, 2016.
[25] S. Gupta, A. Agrawal, K. Gopalakrishnan, and P. Narayanan,“Deep learning with limited numerical precision,” Computing Research Repository, vol.392, 2015.
[26] V. Vanhoucke, A. Senior, and M.Z. Mao, “Improving the
speed of neural networks on cpus,” Proceedings of Deep
Learning and Unsupervised Feature Learning NIPS Workshop, vol.1, p.4, 2011.
[27] M. Courbariaux, Y. Bengio, and J.P. David, “Binaryconnect: Training deep neural networks with binary weights
during propagations,” Advances in Neural Information Processing Systems, pp.3123–3131, 2015.
[28] M.E. Nilsback, and A. Zisserman, “Automated flower classification over a large number of classes,” Proceedings ofthe Indian Conference on Computer Vision, Graphics andImage Processing, 2008.
[29] O. Russakovsky, J. Deng, H. Su, J. Krause, S. Satheesh,
S. Ma, Z. Huang, A. Karpathy, A. Khosla, M. Bernstein,
A.C. Berg, and L. Fei-Fei, “Imagenet large scale visual
recognition challenge,” International Journal of Computer
Vision, vol.115, no.3, pp.211–252, 2015.
[30] N. Srivastava, G.E. Hinton, A. Krizhevsky, I. Sutskever, and
R. Salakhutdinov, “Dropout: a simple way to prevent neural networks from overfitting.,” Journal of Machine Learning
Research, vol.15, no.1, pp.1929–1958, 2014.
[31] Y. Jia, E. Shelhamer, J. Donahue, S. Karayev, J. Long,
R. Girshick, S. Guadarrama, and T. Darrell, “Caﬀe: Convolutional architecture for fast feature embedding,” Proceedings of ACM Multimedia, pp.675–678, 2014.