10. 深層学習アーキテクチャ概観
10. 深層学習アーキテクチャ概観
主要な深層学習アーキテクチャの歴史的発展と特徴。CNN(画像)、RNN/LSTM(系列)、Transformer(汎用)。各アーキテクチャの適用領域と設計原理。
最終更新:2025年11月
1. 歴史的発展
1.1 深層学習の時代区分
- 1950-80年代:パーセプトロン、Backpropagation
- 1990年代:LeNet(CNN)、LSTM
- 2006年:深層信念ネットワーク(Hinton)、「深層学習」復興
- 2012年:AlexNet、ImageNetでのブレイクスルー
- 2017年:Transformer("Attention Is All You Need")
- 2018年〜:BERT、GPT、大規模言語モデル時代
- 2020年〜:ViT、基盤モデル、マルチモーダル
1.2 アーキテクチャの系譜
CNN系:LeNet → AlexNet → VGG → GoogLeNet → ResNet → EfficientNet → ConvNeXt
RNN系:SimpleRNN → LSTM → GRU → Attention-RNN → Transformer
Transformer系:Transformer → BERT/GPT → ViT → Swin → LLaMA
2. 畳み込みニューラルネットワーク(CNN)
2.1 基本構成要素
畳み込み層:
局所結合、重み共有。空間的な特徴抽出。パラメータ効率が高い。
- カーネルサイズ:3×3が標準
- ストライド:ダウンサンプリング
- パディング:空間サイズ維持
- チャネル数:特徴量の次元
プーリング層:
空間解像度の削減。Max Pooling、Average Pooling。
現代では畳み込み(stride=2)で代替することも多い。
2.2 代表的アーキテクチャ
LeNet-5(LeCun et al., 1998)
手書き文字認識。CNN の原型。
AlexNet(Krizhevsky et al., 2012)
ImageNet優勝。ReLU、Dropout、GPU訓練。深層学習ブームの起点。
VGG(Simonyan & Zisserman, 2015)
3×3カーネルの積み重ね。シンプルで深い。
GoogLeNet / Inception(Szegedy et al., 2015)
Inceptionモジュール。複数スケールの並列処理。
ResNet(He et al., 2016)
残差接続。100層以上の訓練を可能に。以降の標準。
EfficientNet(Tan & Le, 2019)
幅・深さ・解像度の複合スケーリング。
ConvNeXt(Liu et al., 2022)
Transformer時代のCNN。ViTに匹敵する性能。
主要論文:
- LeCun et al. (1998) "Gradient-Based Learning Applied to Document Recognition", Proc. IEEE
- Krizhevsky et al. (2012) "ImageNet Classification with Deep CNNs (AlexNet)", NeurIPS
- He et al. (2016) "Deep Residual Learning for Image Recognition", CVPR
- Liu et al. (2022) "A ConvNet for the 2020s (ConvNeXt)", CVPR
2.3 応用
- 画像分類
- 物体検出(YOLO, Faster R-CNN)
- セグメンテーション(U-Net, Mask R-CNN)
- 生成(DCGAN, StyleGAN)
- 医療画像解析
3. 再帰型ニューラルネットワーク(RNN)
3.1 基本構造
系列データの処理。隠れ状態を時間ステップ間で伝播。
$h_t = f(W_h h_{t-1} + W_x x_t + b)$
課題:勾配消失・爆発、長期依存の学習困難。
3.2 LSTM(Long Short-Term Memory)
ゲート機構による長期記憶の保持。
- 忘却ゲート:何を忘れるか
- 入力ゲート:何を記憶するか
- 出力ゲート:何を出力するか
- セル状態:長期記憶
主要論文:
- Hochreiter & Schmidhuber (1997) "Long Short-Term Memory", Neural Computation
3.3 GRU(Gated Recurrent Unit)
LSTMの簡略化版。ゲートを2つに削減。性能は同等。
- 更新ゲート
- リセットゲート
主要論文:
- Cho et al. (2014) "Learning Phrase Representations using RNN Encoder-Decoder", EMNLP
3.4 発展と限界
Bidirectional RNN:双方向処理。
Stacked RNN:多層化。
Attention-RNN:Seq2Seqの改良。機械翻訳で成功。
限界:
- 逐次処理で並列化困難
- 長距離依存の限界
- Transformerに置き換えられる
→ 詳細は RNN/LSTMの詳細と限界
3.5 現在の用途
Transformerに主流を譲ったが、以下で依然有用:
- リアルタイムストリーム処理
- メモリ制約環境
- 短い系列処理
- オンライン学習
4. Transformer
4.1 Self-Attention
系列内の全位置間の関係を直接計算。並列処理可能。
$\text{Attention}(Q, K, V) = \text{softmax}\left(\frac{QK^T}{\sqrt{d_k}}\right)V$
Multi-Head Attention:複数の注意ヘッドで異なる関係を学習。
4.2 アーキテクチャ
- Encoder:双方向Self-Attention + FFN
- Decoder:Masked Self-Attention + Cross-Attention + FFN
- 位置エンコーディング:順序情報の付与
- 残差接続 + LayerNorm:訓練安定化
4.3 主要変種
Encoder-only(BERT系):
双方向文脈理解。分類、NER、QAに適する。
Decoder-only(GPT系):
自己回帰生成。LLMの主流。
Encoder-Decoder(T5系):
翻訳、要約などSeq2Seqタスク。
主要論文:
- Vaswani et al. (2017) "Attention Is All You Need", NeurIPS
- Devlin et al. (2019) "BERT: Pre-training of Deep Bidirectional Transformers", NAACL
- Radford et al. (2018, 2019) "Improving Language Understanding by Generative Pre-Training (GPT)"
- Raffel et al. (2020) "Exploring the Limits of Transfer Learning with a Unified Text-to-Text Transformer (T5)", JMLR
→ 詳細は Transformer革命
5. Vision Transformer(ViT)
5.1 概要
画像をパッチに分割し、Transformerで処理。CNNの帰納バイアスなしで画像認識。
手順:
- 画像を16×16パッチに分割
- 各パッチを線形射影で埋め込み
- 位置エンコーディングを追加
- CLSトークンを先頭に追加
- Transformerエンコーダで処理
- CLSトークンから分類
5.2 発展
DeiT(Touvron et al., 2021)
データ効率の改善。蒸留トークン。ImageNetのみで訓練可能に。
Swin Transformer(Liu et al., 2021)
階層的構造、シフトウィンドウ注意。物体検出・セグメンテーションで優秀。
主要論文:
- Dosovitskiy et al. (2021) "An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale", ICLR
- Touvron et al. (2021) "Training data-efficient image transformers (DeiT)", ICML
- Liu et al. (2021) "Swin Transformer: Hierarchical Vision Transformer using Shifted Windows", ICCV
5.3 CNN vs ViT
- 小データ:CNN優位(帰納バイアス)
- 大データ:ViT優位(表現力)
- ハイブリッド:CNN特徴 + Transformer処理
6. アーキテクチャ比較と選択
6.1 特性比較
| 特性 | CNN | RNN/LSTM | Transformer |
|---|---|---|---|
| 帰納バイアス | 局所性、並進不変性 | 時間的順序 | 弱い(位置エンコーディング) |
| 並列化 | 高 | 低(逐次) | 高 |
| 長距離依存 | 受容野に制限 | 困難 | 優秀 |
| 計算量 | O(n) | O(n) | O(n²) |
| データ効率 | 高 | 中 | 低(大規模で優位) |
6.2 用途別推奨
- 画像分類(小データ):CNN(ResNet, EfficientNet)
- 画像分類(大データ):ViT, Swin Transformer
- 物体検出:CNN + FPN、DETR、Swin
- NLP(汎用):Transformer(BERT, GPT)
- 生成(画像):拡散モデル(U-Net + Attention)
- 生成(テキスト):Decoder-only Transformer
- リアルタイム系列:LSTM, GRU, Mamba
6.3 最新動向
- Transformerの効率化:FlashAttention、線形Attention
- State Space Models:Mamba、S4(Transformerの代替)
- Mixture of Experts:条件付き計算で効率化
- ハイブリッドアーキテクチャ:CNN + Transformer
7. 参考文献
教科書・サーベイ
- Goodfellow et al. (2016) "Deep Learning", MIT Press
- Prince (2023) "Understanding Deep Learning", MIT Press
- Khan et al. (2022) "Transformers in Vision: A Survey", ACM Computing Surveys
歴史的レビュー
- LeCun, Bengio & Hinton (2015) "Deep learning", Nature
- Schmidhuber (2015) "Deep Learning in Neural Networks: An Overview", Neural Networks