このシリーズではE資格対策として、シラバスの内容を項目別にまとめています。

E資格まとめ

試験概要 ディープラーニングの理論を理解し、適切な手法を選択して実装する能力や知識を有しているかを認定する。 1.応用数学 (1)確率・統計 (2)情報理論 2.機…

DenseNet

DenseNetの概要

DenseNetは、画像認識に向けた畳み込みニューラルネットワーク(CNN)の一種で、主要部品として「Denseブロック」を使用するバックボーン設計です。Denseブロックは、サブブロック間の各層を密に全てスキップ接続する構造を有しており、それによって効率的でコンパクトな大規模な多層CNNモデルへの発展が可能となりました。

DenseNetはResNetの正当な進化版であり、ResNetの残差接続の路線を引き継ぎつつ、残差接続を極端に増やすというシンプルなアイデアで進化させました。具体的には、残差ブロックをサブブロックとみなし、N個ごとに更に大きなDenseブロックとしてまとめ、全ての残差ブロック間でスキップ接続する構造となっています。

このDenseブロックを主部品とする設計によって、勾配消失問題を回避しやすくなりました。各Denseブロック内では、勾配損失なく一気に各層へ逆伝搬されるため、200層程度のDenseNetでも、Denseなスキップ接続群によって、ResNetよりも効率的に学習することができました。

ImageNetに対する画像識別性能では、既にエラー率が飽和していましたが、より大規模なCNNバックボーンを効率的に構築できるDenseNetのような提案は、業界にとって重要な進歩となったのです。

DenseNetの登場と同時期に、人物姿勢推定向けの「Stacked Hourglassネットワーク」も登場しました。これも残差ブロックを発展させる研究で、DenseNetのDenseブロックとは異なる「Hourglassブロック」を提案しました。Denseブロックは構造がシンプルであるのに対して、Hourglassブロックにはブロック内で大きなボトルネックを形成するという特有のメリットがあります。

このように、DenseNetは、CNNの設計において、スキップ接続を用いた効率的で効果的な学習が可能なモデルで、画像認識の進化に大いに貢献しました。研究業界における重要な足跡として、CVPR2017のベストペーパーを受賞するなどの評価を得ています。

DenseNetの構造

DenseNetの基本構造は、直列型CNNの中に3~4個のDenseブロックを挟んだ直列構成です。Denseブロックは、全ての畳み込み層間を密にスキップ接続し、特徴マップを「チャンネル方向に」結合する構造を持っています。

引用:https://arxiv.org/pdf/1608.06993.pdf

このDenseブロックの使用により、特徴マップ同士が混じることなく再利用できるため、ResNetの路線を素直に発展させ、ImageNet画像認識の性能と効率を向上させることができました。

特徴マップのチャンネル方向の結合により再利用性が高まりますが、スキップ接続後に1 × 1の畳み込みを通じて、既定数のkチャンネルへチャンネル数の削減を行います。このチャンネル数の削減が、高度な表現力を保ちつつ、高速に学習できるようにする働きを持っています。具体的には、ボトルネックによってkチャンネルに表現量が制限されるため、計算効率が上がります。

DenseNetは、121層、169層、201層、264層の4種類のモデルが提案されており、それぞれに対応するパラメータ数も異なります。これらのモデルは、ResNetの34層、50層、101層、152層のモデルと比較して、パラメータ数が半分ほど少ない軽量モデルであるにも関わらず、認識精度の向上を実現しました。

DenseNetのこのような構造は、特徴の再利用と計算効率の向上をうまく組み合わせることで、パラメータの効率的な利用と高い認識性能を両立しています。特に、チャンネル方向の結合とチャンネル数の削減が、高速な学習と高い表現力のバランスを保つ上で重要な役割を果たしているといえます。

DenseNetの特徴

DenseNetの「Denseブロックを用いたバックボーン設計」には、ベースラインであるResNetと比べていくつかの利点があります。

  1. 勾配消失問題の緩和: DenseNetは、ResNetよりも更に深いCNNが構築可能です。勾配消失問題がより抑制されるため、より深いネットワークの設計が可能になります。
  2. 特徴マップの伝搬の強化: Denseブロック内で層間が全てスキップ接続されているため、特徴マップの伝搬が強化されます。これによって、特徴の情報がより効果的に転送されるようになります。
  3. 特徴マップの再利用の促進: Denseブロックにおいて、序盤や中盤の特徴も直接ショートカットされてチャンネル方向に結合されるため、特徴の再利用が容易になります。これは、学習の効率化と性能の向上に寄与します。
  4. 効率的なパラメータ数の削減: 例えば、1001層のResNetと比べて、DenseNet-BCは同程度以上の精度ながらも、パラメータ数を大幅に削減します。これにより、計算リソースの効率的な使用が可能となります。

DenseNetはResNetの進化版として位置づけられ、スキップ接続を極端に増やすことで、独特のCNNバックボーンを構築しています。特に「Denseブロック」の導入は、ResNetの残差ブロックに相当する部分で、サブブロック間の全てのスキップ接続とチャンネル方向の結合が、簡単なアイデアであるにも関わらず、軽量化と深いモデルの構築の成功をもたらしました。最大201層のモデルの構築など、より大規模な設計も可能となりました。このような特徴が、DenseNetが画像認識などのタスクで高い性能を発揮する要因となっています。

まとめ

最後までご覧いただきありがとうございました。