ResNetは、ディープラーニングにおいてネットワーク層を深くした際に生じる学習停滞を解決するために開発された畳み込みニューラルネットワークのアーキテクチャです。スキップ接続を導入することで、何百層もの深層学習を安定して行えるようにしました。
ResNetとは
ResNet(Residual Network)とは、入力データをそのまま出力側に足し合わせるスキップ接続(Residual Connection)という仕組みを取り入れることで、勾配消失問題を回避し、極めて深い層を持つネットワークの学習を可能にした画期的なディープラーニングモデルです。
詳しく解説
ディープラーニングでは、ネットワークの層を深くするほど表現力が増す一方、層が深くなりすぎると逆伝播の勾配が途中で消えてしまう勾配消失問題や、パラメータ数が増えて精度が下がる劣化問題が発生していました。ResNetは、入力xを非線形変換したF(x)に、元の入力xをそのまま足し合わせる恒等写像(スキップ接続)を取り入れました。これにより、モデルは「残差(Residual)」と呼ばれる変換部分のみを学習すればよくなり、情報がスムーズに伝播するため、何百層もの深層学習でも安定した最適化が可能になりました。
具体例・使われ方
ResNetは、ILSVRC 2015の画像認識コンペティションで圧倒的な優勝を果たして以来、コンピュータビジョンの分野で広く利用されています。具体的な用途として、ImageNetを用いた高度な画像分類をはじめ、物体の検出やセグメンテーション、さらには医療画像の解析など、さまざまな画像認識タスクのバックボーンネットワークとして活用されています。
似た用語との違い
通常の畳み込みニューラルネットワークであるCNNとは異なり、ResNetにはスキップ接続が組み込まれている点が最大の違いです。通常のCNNでは層を深くすると学習が困難になりますが、ResNetはその制限を克服しています。また、後継モデルであるDenseNetなどとは、特徴量を足し合わせるか結合するかという点で異なります。
注意点
ResNetは非常に強力なアーキテクチャですが、ネットワークの層やパラメータ数が膨大になるため、学習や推論には高性能なGPUなどの莫大な計算資源が必要です。また、過学習を防ぐためには適切なデータ拡張や正則化手法を組み合わせる注意が必要です。