>100 Views
August 09, 16
スライド概要
2016/8/5
Deep Learning JP:
http://deeplearning.jp/seminar-2/
DL輪読会資料
Bridging the Gaps Between Residual Learning, Recurrent Neural Networks and Visual Cortex Qianli Liao and Tomaso Poggio Center for Brains, Minds and Machines, McGovern Institute, MIT April 12, 2016 D2 金子 貴輝
選考理由 • 視覚野のモデル化にRNN? • 再帰構造の必要性についての新しい視点? • arXivの論文で査読はまだのよう 2
内容 • • • • • • 概要 導入 Residual NetworkとRNNの等価性 Multi-stage完全再帰処理へのRNNの一般化 関連研究 実験 – データセットと訓練詳細 – 共有重みでのResNet – 多状態(完全/不完全)再帰NN • 議論 3
概要 • ある種のRNNとResNetが等価であること,そ れらが視覚の腹側経路のモデルとして尤もら しいことを示す 4
導入 • 画像認識で高精度なResNetは,人間の後頭 葉の腹側経路よりかなり深い(1000層ぐらい) • 一方,新皮質の再帰接続は,注意や誤差逆 伝播に関わると考えられてきた • この再帰接続も込みで考えると,腹側経路も ResNetと同じぐらい深いと捉えられる • RNNでモデル化して,CIFAR10で有効性を実 証する 5
ResNetとRNNの等価性 – 概観 • ResNetの重みを共有すると足し合わせるRNNと等価 – 動的システムとしての定式化 • パラメータが変わらないなら,この動的システムは「均 質」で「時間不変」といえる • 均質(homogeneous)とは初期入力しかないという意味 6
多状態完全再帰計算へのRNNの一般化 – 腹側経路に相当するRNNのモデルを定義する • 領野ごとに相互接続しているRNN – Pre-netとPost-net • RNNの前後に付け足して全体でBP • Pre-netは3x3畳み込みレイヤー • Post-netは[batchNormalization, ReLu, 全体平均プーリング, (Fully Connected か1x1 conv)] • Pre-netは3層にするとより網膜らしい,精度も少し上がる 7
多状態完全再帰計算へのRNNの一般化 – 遷移行列 • • • • 時間ごとに遷移の仕方を変えて従来のResNetも表現 BRCx2は(BatchNormalization,ReLu,Conv)の2回繰り返し サイズは32x32->16x16->8x8->4x4,中間層は入出力の平均サイズ 畳み込みは2x2 8
多状態完全再帰計算へのRNNの一般化 – 共有対非共有 • 重みを共有するとは,初期値を同一にして,勾配を元の 勾配の合計にしてやること – 表記:展開された深さとread-out time • 深さはpost-netにデータが届くまでに掛かった時間で考え る.伝達に係る時間を1とし,伝達されるまで状態は未定 義とする 9
多状態完全再帰計算へのRNNの一般化 – 系列vs静的な入出力 • 時系列入出力も本来可能だが,time-specific normalizationなBNを 使っているので幾つかではできない – Batch Normalization • 全ての時間で同じパラメータでBNすると良くなさそう,時間ごとに平 均分散を計算すると良い精度 • パラメータを増やして実際に影響があったタスクは少なかった • この方法は時間長さが固定でないタスクには修正が必要 10
関連研究 – 多層のRNNモデルとは層間のフィードバック接続, ResNetのようなショートカット,畳込みと多段NNでの 接続という点で異なる – RecursiveNNや畳込みRNNとの違いはショートカットを 持つかどうか – Highway Networkはフィードフォワードだがより一般的 なショートカットを持つ 11
実験:データセットと訓練詳細 • CIFAR10の画像32x32 color • Momentum=0.9,nb_epoch=60,batchsize=64 • lr=0<=epoch<40のとき0.01, 40<=epoch<50のとき 0.001, 50<=epoch<60のとき0.0001 • softmax と cross entropyを使用 • post-netのBN以外,学習できるスケーリングとシフトの パラメータを使用しなかった • 重みは論文[9]で初期化 • MatConvNetを使って実装 12
実験:共有重みでのResNet – 時間を通して重みを共有 • 共有しない場合が青,する場合が緑 • 1-state ResNet, 3-state ResNetに加え,フィードバック接続を含む2state FRNN • 訓練誤差と検定誤差,エポックごとに • read-out timeはt=10ただし3-stateは9(それぞれ3) • 共有してもロバスト,フィードバック接続の勝利 13
実験 – 全ての畳み込みレイヤで重みを共有 • • • • • パラメータを極力減らしてみる 3-state ResNetで時間も状態でもパラメータ共有 state間は2x2max pooling with stride 2で繋がる 学習率を変えるタイミングを100,120,140にしている stateの数を30,64で実験 14
実験:多状態(完全/不完全)再帰NN – read-out timeの影響 • 共有2-statesでread-out timeを変化させて比較 • パラメータ数が変化している理由は不明 15
実験 – より多くの状態でのより大きいモデル • 3-states Fully RNNでvalid errorが7.47% • 状態間の接続のオーダーを小さくしてコストを下げてみる,隣接モ デルも比較 • 4-statesでかなり重い,他のパラメータ数をいじると3-statesに負け る,計算コストの削減は課題 • ここでは3層の3x3畳み込みNNを使用( Conv-BN-ReLU-Conv-BNReLU-Conv),1層より1%のvalid error改善 16
実験 – read-out timeでの一般化 • 訓練時と異なるread-out timeでテストした際の誤差 17
議論 – 深いほどよいのは,再帰計算できるからかも – ResNetのパラメータを共有してRNNにしても平気 – フィードバックと時間を無視してきた視覚野のモ デルが進歩した 18