深い残差ネットワークの残差ブロック。ここでは、残差接続は2つのレイヤーをスキップする。
残差ニューラルネットワーク (別名:残差ネットワーク、ResNet )は[ 1] 、ウェイト層が層入力を参照して残差関数を学習する深層学習モデルである。残差ネットワークは、恒等写像を行うスキップ接続を持つネットワークであり、加算によってレイヤーの出力とマージされる。これは、強い正のバイアス重みによってゲートが開く「幹線道路ネットワーク」[ 2] のように振る舞う。これにより、数十から数百のレイヤーを持つ深層モデルを容易に学習させることができ、より深く学習する際にはより高い精度に近づくことができる。同一性スキップ接続は、よく「残差接続」と呼ばれ、1997年のLSTM ネットワーク[ 3] 、トランスフォーマー・モデル(BERT、ChatGPT などのGPTモデルなど)、AlphaGo Zeroシステム、AlphaStarシステム、AlphaFoldシステムでも使用されている。
残差ネットワークは、何愷明、張翔宇、任少卿、孫剣によって開発され、ImageNet 2015コンペティションで優勝した。[ 4] [ 5]
2012年にImageNet用に開発されたAlexNetモデルは、8層の畳み込みニューラルネットワークだった。オックスフォード大学 のVisual Geometry Group(VGG)が2014年に開発したニューラルネットワークは、3×3の畳み込み層を重ねることで19層の深さに近づいた。[ 6] しかし、より多くの層を積み重ねることは、「劣化」問題と呼ばれる学習精度の速やかな低下につながった.[ 7]
より深いネットワークが、より浅いネットワークに余分なレイヤーを積み重ねることで構築できるのであれば、より浅いネットワークよりも学習損失が大きくなることはないはずである。もし余分な層を同一性マッピングとして設定できれば、深いネットワークは浅いネットワークと同じ機能を表すことになる。オプティマイザは、パラメータ化された層に対して同一性マッピングに近づくことができないという仮説が成り立つ。
多層ニューラルネットワークモデルでは、ある数(例えば2層や3層)の積層層を持つサブネットワークを考える。このサブネットワークが実行する基本的な機能を𝐻 ( 𝑥 ) に定義する。ここで 𝑥 はこのサブネットワークへの入力である。残差学習のアイデアは、このサブネットワークを再パラメータ化し、パラメータ層に残差関数を表現させる。𝐹 ( 𝑥 ) := 𝐻 ( 𝑥 ) - 𝑥 . 出力 𝑦 は次のように表される:
y
=
F
(
x
)
+
x
{\displaystyle {\begin{aligned}y&=F(x)+x\end{aligned}}}
同一性マッピングの導入により、前方および後方パスでの信号伝播が容易になる。
[ 8]
畳み込み残差ブロックの2つのバリエーション。左:3x3の畳み込み層を2つ持つ基本ブロック。右:次元削減のための1x1畳み込み層(例えば1/4)、3x3畳み込み層、次元復元のためのもう1つの1x1畳み込み層を持つボトルネック・ブロック。
事前活性化残差ブロック[ 9] (ResNetV2も呼ばれる)は、残差関数を適用する前に活性化関数(例えば、非直線性や正規化)を適用する。正式には、前活性化残差ブロックの計算は次のように書くことができる:
x
ℓ
+
1
=
F
(
ϕ
(
x
ℓ
)
)
+
x
ℓ
{\displaystyle {\begin{aligned}x_{\ell +1}&=F(\phi (x_{\ell }))+x_{\ell }\end{aligned}}}
ここで 𝜙 は任意の非線型活性化(ReLUなど)または正規化(LayerNormなど)操作である。この設計により、残差ブロック間の非同一マッピングの数を減らすことができる。この設計は、200層から1000層以上のモデルの学習に使用された。
GPT-2以降、Transformer BlocksはPre-activation Blocksとして実装されることが主流となっています。これは、Transformerモデルの文献では、しばしば "pre-normalization "と呼ばれています。[ 10]
最初の GPT モデル で使用された Transformer アーキテクチャ。トランスフォーマーブロックは、マルチヘッドアテンションブロックとフィードフォワード多層パーセプトロン(MLP)ブロックの2つの残差ブロックから構成される。
Transformer ブロックは、2つの残差ブロックを積み重ねたものである。各残差ブロックは残差コネクションを持つ。最初の残差ブロックはマルチヘッドアテンションブロックであり、(自己)アテンション計算の後に線形投影を行う。
2番目の残差ブロックはフィードフォワード多層パーセプトロン(MLP)ブロックである。このブロックは「逆」ボトルネックブロックに類似しており、次元を増加させる線形射影層(これは畳み込みニューラルネットワークの文脈では1x1畳み込みに相当する)と、次元を減少させるもう1つの線形射影層を持つ。
トランスフォーマーブロックの深さは4層(直線投影)です。GPT-3 モデルには96のトランスフォーマー・ブロックがある(トランスフォーマーの文献では、トランスフォーマー・ブロックはしばしば「トランスフォーマー・レイヤー」と呼ばれる)。このモデルは、トランスフォーマーブロックの96x4層と、入力埋め込みと出力予測のための余分な層を含めて、約400の投影層の深さを持つ。
非常に深いトランスフォーマーモデルは、残差コネクションなしではうまく学習できない。[ 11]
1961年に出版されたFrank Rosenblatt著の本の中で、スキップ接続を持つ3層の多層パーセプトロン(MLP)モデルが紹介されている(第15章 p313)。このモデルは「交差結合システム」と呼ばれ、スキップ結合は交差結合の一形態である。[ 12]
最初のResidual Networkの論文では、生物学的システムに示唆されたとは主張していない。しかし、その後の研究で、Residual Networkは生物学的に妥当なアルゴリズムと関連づけられるようになった。.
[ 13]
[ 14]
2023年に『サイエンス 』誌に発表された研究で、昆虫(ミバエの幼虫)の脳の完全なコネクトーム が公開された。この研究では、ResNetsを含む人工ニューラルネットワークのスキップ接続に似た「多層ショートカット」が発見された。[ 15]
^ He, Kaiming; Zhang, Xiangyu; Ren, Shaoqing; Sun, Jian (10 December 2015). Deep Residual Learning for Image Recognition . arXiv :1512.03385 。
^ Srivastava, Rupesh Kumar; Greff, Klaus; Schmidhuber, Jürgen (3 May 2015). "Highway Networks". arXiv :1505.00387 [cs.LG ]。
^ Sepp Hochreiter ; Jürgen Schmidhuber (1997). “Long short-term memory” . Neural Computation 9 (8): 1735–1780. doi :10.1162/neco.1997.9.8.1735 . PMID 9377276 . https://www.researchgate.net/publication/13853244 .
^ Deng, Jia; Dong, Wei; Socher, Richard; Li, Li-Jia; Li, Kai; Fei-Fei, Li (2009). “ImageNet: A large-scale hierarchical image database” . CVPR . https://scholar.google.com/citations?view_op=view_citation&hl=en&user=rDfyQnIAAAAJ&citation_for_view=rDfyQnIAAAAJ:qjMakFHDy7sC .
^ “ILSVRC2015 Results ”. image-net.org . Template:Cite web の呼び出しエラー:引数 accessdate は必須です。
^ Simonyan, Karen; Zisserman, Andrew (2014). "Very Deep Convolutional Networks for Large-Scale Image Recognition". arXiv :1409.1556 [cs.CV ]。
^ He, Kaiming; Zhang, Xiangyu; Ren, Shaoqing; Sun, Jian (2016). "Delving Deep into Rectifiers: Surpassing Human-Level Performance on ImageNet Classification". arXiv :1502.01852 [cs.CV ]。
^ He, Kaiming; Zhang, Xiangyu. "Identity Mappings in Deep Residual Networks". arXiv :1603.05027 [cs.CV ]。
^ He, Kaiming; Zhang, Xiangyu; Ren, Shaoqing; Sun, Jian (2015). "Identity Mappings in Deep Residual Networks". arXiv :1603.05027 [cs.CV ]。
^ Radford (14 February 2019). “Language models are unsupervised multitask learners ”. 6 February 2021時点のオリジナルよりアーカイブ 。19 December 2020 閲覧。
^ Dong, Yihe; Cordonnier, Jean-Baptiste. "Attention is not all you need: pure attention loses rank doubly exponentially with depth". arXiv :2103.03404 [cs.LG ]。
^ Rosenblatt, Frank (1961). Principles of neurodynamics. perceptrons and the theory of brain mechanisms . https://safari.ethz.ch/digitaltechnik/spring2018/lib/exe/fetch.php?media=neurodynamics1962rosenblatt.pdf#page=327
^
Liao, Qianli; Poggio, Tomaso (2016). Bridging the Gaps Between Residual Learning, Recurrent Neural Networks and Visual Cortex .
^
Xiao, Will; Chen, Honglin; Liao, Qianli; Poggio, Tomaso (2018). Biologically-Plausible Learning Algorithms Can Scale to Large Datasets .
^ Winding, Michael; Pedigo, Benjamin; Barnes, Christopher; Patsolic, Heather; Park, Youngser; Kazimiers, Tom; Fushiki, Akira; Andrade, Ingrid et al. (10 Mar 2023). “The connectome of an insect brain” . Science 379 (6636): eadd9330. doi :10.1126/science.add9330 . PMC 7614541 . PMID 36893230 . https://www.ncbi.nlm.nih.gov/pmc/articles/PMC7614541/ .