Skip to main content
QUICK REVIEW

[論文レビュー] Bi-Real Net: Enhancing the Performance of 1-bit CNNs With Improved Representational Capability and Advanced Training Algorithm

Zechun Liu, Baoyuan Wu|arXiv (Cornell University)|Aug 1, 2018
Advanced Neural Network Applications参考文献 27被引用数 24
ひとこと要約

本稿では、1ビット畳み込みニューラルネットワークであるBi-Real Netを提案する。このネットワークは、1ビット畳み込み後の実数値活性化(符号関数の前)と次のブロックへの残差ショートカットを接続することで、表現能力を向上させる。さらに、符号関数の導関数をより精密に近似する訓練アルゴリズム、活性化の大きさを考慮した重み勾配、クリッピングに基づく事前学習を組み合わせることで、34層のネットワークでImageNetで62.2%のトップ1精度を達成。これは、計算コストの増加が最小限で、メモリ使用量も顕著に削減され、最先端の1ビットモデルを最大10%の相対的向上で上回る。

ABSTRACT

In this work, we study the 1-bit convolutional neural networks (CNNs), of which both the weights and activations are binary. While being efficient, the classification accuracy of the current 1-bit CNNs is much worse compared to their counterpart real-valued CNN models on the large-scale dataset, like ImageNet. To minimize the performance gap between the 1-bit and real-valued CNN models, we propose a novel model, dubbed Bi-Real net, which connects the real activations (after the 1-bit convolution and/or BatchNorm layer, before the sign function) to activations of the consecutive block, through an identity shortcut. Consequently, compared to the standard 1-bit CNN, the representational capability of the Bi-Real net is significantly enhanced and the additional cost on computation is negligible. Moreover, we develop a specific training algorithm including three technical novelties for 1- bit CNNs. Firstly, we derive a tight approximation to the derivative of the non-differentiable sign function with respect to activation. Secondly, we propose a magnitude-aware gradient with respect to the weight for updating the weight parameters. Thirdly, we pre-train the real-valued CNN model with a clip function, rather than the ReLU function, to better initialize the Bi-Real net. Experiments on ImageNet show that the Bi-Real net with the proposed training algorithm achieves 56.4% and 62.2% top-1 accuracy with 18 layers and 34 layers, respectively. Compared to the state-of-the-arts (e.g., XNOR Net), Bi-Real net achieves up to 10% higher top-1 accuracy with more memory saving and lower computational cost. Keywords: binary neural network, 1-bit CNNs, 1-layer-per-block

研究の動機と目的

  • ImageNetのような大規模データセットにおいて、標準的なバイナリ化モデルが実数値ネットワークに比べて顕著に精度が低下する問題に対処すること。
  • 計算コストやメモリ使用量を著しく増加させることなく、1ビットCNNの表現能力を向上させること。
  • 非微分可能な演算(例:符号関数)に起因する課題を克服するため、1ビットネットワークに特化した訓練アルゴリズムを開発すること。
  • バイナリ推論の効率的利点を維持しつつ、1ビットCNN分野における最先端の性能を達成すること。
  • 通常の1ビットネットワークで捨てられがちな、実数値の中間特徴量が、残差接続によって適切に保持されることで、モデル精度を顕著に向上させられることを示すこと。

提案手法

  • 1ビット畳み込みおよびBatchNormの後、符号関数の前における実数値活性化を、次のブロックの入力に直接接続する残差ショートカットを導入し、より豊かな特徴表現を維持する。
  • 従来のステップ関数の導関数に代わり、符号関数の導関数をより正確に近似するための区分的多項式近似を提案し、バックプロパゲーションにおける勾配の正確性を向上させる。
  • 実数値活性化の大きさを勾配計算に組み込むことで、重み更新用のマグニチュードに依存する勾配を設計し、最適化の安定性を向上させる。
  • 事前学習段階で、ReLUの代わりにクリップ関数を用いることで、フル精度モデルの初期化を改善し、バイナリ化された設定でも収束性を高める。
  • 最初と最後の層、および1×1ショートカットのみを実数値に保ち、他の層をバイナリ化するハイブリッドネットワーク設計を採用することで、メモリと計算コストを最小限に抑えつつ、重要な情報を保持する。
  • 2段階の訓練プロセスを採用:まずクリップ活性化を用いたフル精度ネットワークを事前学習し、次に提案された勾配法と近似手法を用いてバイナリ化ネットワークを微調整する。

実験結果

リサーチクエスチョン

  • RQ1計算コストやメモリ使用量を著しく増加させることなく、1ビットCNNの表現能力を顕著に向上させることは可能か?
  • RQ2バックプロパゲーションにおいて、非微分可能な符号関数をどのように近似すれば、1ビットネットワークの有効な訓練を可能にするか?
  • RQ31ビットCNN最適化において、活性化の大きさを重み勾配計算に組み込むことで、どのような影響が生じるか?
  • RQ4ReLUの代わりにクリップ関数を用いた事前学習が、1ビットネットワークの初期化と性能向上に寄与するか?
  • RQ5ImageNet上での精度、メモリ使用量、計算効率の観点から、提案されたBi-Real Netアーキテクチャは、最先端の1ビットモデルと比較してどのように差をつけるか?

主な発見

  • 18層のBi-Real Netは、ImageNetで56.4%のトップ1精度を達成し、従来の1ビットモデルを相対的に最大10%向上させる。
  • 34層のBi-Real Netは62.2%のトップ1精度を達成し、既存の1ビットネットワークに比べて強力なスケーラビリティと性能向上を示している。
  • Bi-Real Netは、フル精度ResNetと比較して、18層で11.1倍、34層で15.97倍のメモリ使用量削減を実現し、追加コストは最小限である。
  • XNORおよびビットカウント演算の効率性により、18層で11.06倍、34層で18.99倍の高速化が達成された。
  • 符号関数の導関数に対する提案された近似手法は、従来のステップ関数の導関数を用いた手法よりも、より安定的かつ効果的なバックプロパゲーションを実現している。
  • マグニチュードに依存する勾配とクリップベースの事前学習は、アブレーションスタディにより、収束性と最終的な精度向上に顕著な寄与を示している。

より良い研究を、今すぐ始めましょう

論文設計から論文執筆まで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。