ResNet の一番の利点は? 【Q and A 記事】

Q. 「ResNetの一番の利点は」?

このQ and A記事では,ResNetの利点点は? という質問に対して,管理人なりの回答を行う.言い換えると,「(ResNet以前の)従来型CNNバックーンと最も異なっていた点は?」という質問であるとも言える.

ちなみに,ここでいう「ResNet以前の従来型のCNN」とは,直前に提案され,スタンダードになりつつあったVGGNetInceptionNetなどのバックボーン構造をさすものとする.

2. Answer

2.1 Answer 1:残差表現の直列化.

ResNetの残差ブロック
図1. ResNetの残差ブロック
ResNetのネットワーク構造
図2. ResNet のネットワーク構造

残差表現の直列構成により,Encoder CNNを構成するようにした」というのが,Answerである.

ResNetの研究は,残差ブロック $F(\bm{x})$の「畳み込み層ReLU畳込み層」を1セットとみなし,その入り口と出口を残差接続(スキップ接続)で繋ぐ,残差ブロック表現(図1)の超Deep化を提案した(図2).

図1・図2の青色パスの残差接続(スキップ接続)部分がないものが,従来のVGGNetなどの構造であった.それが図2のように,「残差ブロックとスキップ経路の並列」を直列につないでいくことにより,ResNetは超深い50~150層の構成でも,勾配逆伝搬と順伝搬を,奥の方のブロックまで分散させやすくなった.おかげで,劣化問題なしに超深いネットワークも学習できるようになった.より詳しい話は,以下のResNet記事を参考にされたい.

2.2 Answer 2 :ワイド化ではなく、超直列化により性能向上

一方,当時はVGGNetのような直列路線ではなく,それと対照的な「並列化路線」のCNN構造の研究も試されていた.具体的には,ブロック内のワイド化(InceptionNetブロックなど)がそれに相当する

しかしそれまでの「AlexNet→VGGNet」の直列化路線を,ResNetは一気に超多層化することに成功した.つまり,「(InceptionNetなどのような)ワイド化路線ではなく超直列化」したことも,Questionの「一番の違い」の答えであるとも言える.ただし,残差接続の提案による超多層化したので,Answer 1の「残差表現の超直列の利用」が,従来CNNとの1番異なる点ではある.

ResNetはその後,WideResNetやResNeXtなど,「ResNetに,極端なワイド化(並列化)」を加える改善路線も登場して,CNNの性能改善に寄与した.したがって,結局は時系列的に,最初に「ResNetの残差接続が,極端なワイド化よりも先に登場しただけ」であるとも言える.

関連記事

関連書籍