[論文レビュー] Towards Accurate Binary Convolutional Neural Network
この論文は ABC-Net を紹介します。複数の binary weight bases と複数の binary activations を用いて binary CNN を訓練するスキームで、ImageNet においてほぼフル精度に近い精度を実現しつつ、ビット演算を効率的に可能にします。
We introduce a novel scheme to train binary convolutional neural networks (CNNs) -- CNNs with weights and activations constrained to {-1,+1} at run-time. It has been known that using binary weights and activations drastically reduce memory size and accesses, and can replace arithmetic operations with more efficient bitwise operations, leading to much faster test-time inference and lower power consumption. However, previous works on binarizing CNNs usually result in severe prediction accuracy degradation. In this paper, we address this issue with two major innovations: (1) approximating full-precision weights with the linear combination of multiple binary weight bases; (2) employing multiple binary activations to alleviate information loss. The implementation of the resulting binary CNN, denoted as ABC-Net, is shown to achieve much closer performance to its full-precision counterpart, and even reach the comparable prediction accuracy on ImageNet and forest trail datasets, given adequate binary weight bases and activations.
研究の動機と目的
- モバイル/ハードウェア上での低メモリ・低電力CNN展開を、重みと活性化の2値化で実現する動機付け。
- 複数の binary bases の線形結合でフル精度の重みを近似する方法を提案。
- 複数の binary activations を用いて情報の流れを強化する。
- 適切な bases を用いれば binary CNN は ImageNet でフル精度に近づけることを示す。
提案手法
- 実数値の重みを M 個の binary weight bases の線形結合として表現し、B_m ∈ {-1,+1}。
- バックプロパゲーションを可能にするためにずらし正規化された実数値重みから B_m を計算する。
- straight-through estimators を用いて binary bases と activations をバックプロパゲートする。
- 実数値の activations を N 個の binary activations A_n の線形結合として表現し、係数 beta_n によってより豊かな情報伝達を可能にする。
- 畳み込みは M×N 個の binary 畳み込みの和として実行し、 activations も binary であればビット演算を可能にする。
- batch normalization と学習された shift パラメータを用いて複数の binary activations を安定化・最適化する。
実験結果
リサーチクエスチョン
- RQ1複数の binary weight bases と複数の binary activations を用いて、Binary CNN は ImageNet においてフル精度にどれだけ近づけることができるか?
- RQ2重み bases の数 M と activations の数 N を変えると分類精度にどのような影響があるか?
- RQ3binary bases による全体的な(またはチャネルごとの)重み近似は CNN のフル精度重みの代替になり得るか?
- RQ4大規模データセットでの既存の量子化/二値化手法と比較して ABC-Net はどうなのか?
主な発見
| モデル | W(ウェイトのビット幅) | A(アクティベーションのビット幅) | Top-1 | Top-5 |
|---|---|---|---|---|
| Full-Precision Resnet-18 | 32 | 32 | 69.3% | 89.2% |
| BWN | 1 | 32 | 60.8% | 83.0% |
| DoReFa-Net | 1 | 4 | 59.2% | 81.5% |
| XNOR-Net | 1 | 1 | 51.2% | 73.2% |
| BNN | 1 | 1 | 42.2% | 67.1% |
| ABC-Net [5 binary weight bases, 5 binary activations] | 1 | 1 | 65.0% | 85.9% |
| ABC-Net [5 binary weight bases, full-precision activations] | 1 | 32 | 68.3% | 87.9% |
- 5 基の binary weight bases と 5 基の binary activations を用いた ABC-Net は ImageNet の Top-1 65.0% と Top-5 85.9% を達成し、ResNet-18 でフル精度性能に近づく(Top-1 69.3%、Top-5 89.2%)。
- M と N を増やすと精度が一貫して向上し、より大きな構成はフル精度モデルとの差を小さくする(例: M=5, N=5 は Top-1 ギャップを約4.3% に縮小)。
- 最先端の binary/low-precision ネットワーク(BWN, XNOR-Net, BNN, DoReFa-Net)と比較して、複数の bases/activations を用いた ABC-Net は Top-1/Top-5 精度を大幅に向上させつつ、重みと activations を binary のまま維持している。
- チャネル-wise 重み近似は全重み近似よりより細かなモデリングが可能だが、トレーニングコストが増える。
- フル精度 activations を binary weights と組み合わせること(またはその逆)も競争力のある結果を生む,ABC-Net の設計の柔軟性を示している。
より良い研究を、今すぐ始めましょう
論文設計から論文執筆まで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。