モデル解説 Page 4/5

NLP基盤アーキテクチャ(5モデル)+ 具体的モデル(8モデル)── 全13モデル

📅 NLPモデルの3つの時代

第1世代:RNN時代
〜2017
RNN → LSTM → GRU → Seq2Seq
系列データを逐次処理
弱点:並列処理不可、長期依存が困難
第2世代:Transformer時代
2017〜
Transformer → BERT / GPT / T5
Attention機構で並列処理
転機:「Attention Is All You Need」論文
第3世代:LLM時代
2020〜
GPT-3 → ChatGPT → GPT-4
巨大モデル+RLHF+RAG
スケーリング則:大きいほど賢い

基盤 RNN ─ 再帰型ニューラルネットワーク

Recurrent Neural Network。前の時刻の出力(隠れ状態)を次の時刻の入力に戻すことで、系列データ(テキスト、時系列)を処理。

RNNの基本構造

x₁ (今日)
h₁
y₁
h₁→
x₂ (は)
h₂
y₂
h₂→
x₃ (天気)
h₃
y₃
h₃→
x₄ (です)
h₄
y₄

隠れ状態 h を次の時刻に渡す=「記憶」を引き継ぐ

弱点:長い系列で勾配が消失/爆発する → 遠くの単語の情報が届かない。「昨日…(100語後)…美味しかった」の関係を学習できない。

基盤 LSTM & GRU ─ RNNの勾配消失を解決

LSTM (1997)

Long Short-Term Memory

3つのゲートで情報の流れを制御:

忘却ゲート:不要な情報を捨てる
入力ゲート:新しい情報を書き込む
出力ゲート:次に渡す情報を選択

+ セル状態(Cell State)で長期記憶を保持

GRU (2014)

Gated Recurrent Unit

LSTMの簡略版。ゲートを2つに削減:

更新ゲート:忘却と入力を1つに統合
リセットゲート:過去の情報をどこまで使うか

✓ パラメータが少なく計算が速い
✓ 精度はLSTMとほぼ同等

LSTM vs GRU:ゲート3つ(LSTM)vs 2つ(GRU)。セル状態あり(LSTM)vs なし(GRU)。GRUは軽いがLSTMと同等の性能。

基盤 CNN(NLPでの利用)

画像認識で有名なCNNだが、テキスト分類にも使える。単語の並びに1Dの畳み込みを適用して局所的なパターン(n-gram的特徴)を抽出。

今日
天気
良い
です
↑ 1Dフィルター(窓サイズ3)がスライドして特徴を抽出
RNN vs CNN(NLP):RNNは順番に処理(遅い・長期依存が苦手)、CNNは並列処理可能(速い)だが、文の長距離依存関係は捉えにくい。→ 両方の弱点を解決したのがTransformer。

2017 Transformer ─ NLPの革命

Attention Is All You Need」論文で発表。RNNもCNNも使わず、Self-Attention(自己注意機構)だけで系列データを処理。現代NLPの全ての基盤。

Transformerの全体構造

Encoder(エンコーダ)
Self-Attention
Feed Forward
× N層(通常6層)
入力全体を理解する
Decoder(デコーダ)
Masked Self-Attention
Cross-Attention
(Encoder出力を参照)
Feed Forward
× N層
出力を1語ずつ生成

Self-Attentionの仕組み

各単語が他の全単語との関連度(Attention重み)を計算。

入力から3つのベクトルを生成:
Q (Query)
K (Key)
V (Value)
Attention(Q,K,V) =
softmax(QKT / √dk) × V
QとKの内積 → 関連度 → Vを重み付け合計
Transformerの4大ポイント(超頻出):
① Self-Attention(全単語間の関係を並列計算)
② 位置エンコーディング(Positional Encoding:語順情報を追加)
③ Multi-Head Attention(複数のAttentionを並列実行)
④ RNN/CNNを使わない → 並列処理で高速

⚔️ BERT vs GPT ─ Transformerの2大派閥

BERT (2018)

Bidirectional Encoder Representations from Transformers

Encoderのみ使用。Google開発。

双方向(Bidirectional)
「今日 は [MASK] です」
→ 前後の文脈から [MASK] を予測
天気

事前学習タスク:

① MLM(Masked Language Model):15%の単語を隠して予測
② NSP(Next Sentence Prediction):2文が連続するか判定

得意:文分類、感情分析、質問応答

GPT (2018〜)

Generative Pre-trained Transformer

Decoderのみ使用。OpenAI開発。

一方向(左→右)
「今日 は 天気」
→ 次の単語を予測
良い →...

事前学習タスク:

次の単語を予測する自己回帰学習のみ。
スケーリング則で巨大化(GPT-2→3→4)

得意:文章生成、対話、翻訳

超重要な対比(ほぼ確実に出る):
BERT → Encoder双方向 + 理解タスク + Google
GPT → Decoder一方向 + 生成タスク + OpenAI

📝 単語ベクトル系モデル(Transformer以前)

モデル特徴文脈考慮ポイント
Word2Vec2013 単語をベクトルに変換。CBOW(周辺→中心)とSkip-gram(中心→周辺)の2方式 ✗ 固定 「王−男+女=女王」のベクトル演算が有名
fastText2016 サブワード(部分文字列)単位で学習。Facebook開発 ✗ 固定 未知語にも対応(部分一致で推測可能)
ELMo2018 双方向LSTMで文脈に応じた動的ベクトルを生成 ✓ 文脈依存 「bank」が銀行/土手で異なるベクトルになる
進化の流れ:Word2Vec / fastText(静的:1単語=1ベクトル)→ ELMo(動的:文脈で変化)→ BERT / GPT(Transformerで高精度な文脈理解)

2014 Seq2Seq ─ 機械翻訳の基盤

Sequence to Sequence。入力系列をエンコーダで固定長ベクトルに圧縮し、デコーダで別の系列を生成。機械翻訳の基礎。

入力(英語)
I
am
a cat
Encoder
(RNN/LSTM)
固定長
ベクトル
Decoder
(RNN/LSTM)
出力(日本語)
猫です
Seq2Seq + Attention:固定長ベクトルに圧縮すると情報が失われる問題があった。Attention機構を追加することで、デコーダが入力の各単語を直接参照できるようになった。→ これがTransformerへの布石。

🔄 T5 & BART ─ エンコーダ・デコーダ型

T5 (2019)

Text-to-Text Transfer Transformer

Google開発。全てのNLPタスクを「テキスト→テキスト」に統一

翻訳: "translate: I am a cat" → "私は猫です"
要約: "summarize: [長い文]" → "要約文"
分類: "classify: [文]" → "positive"

タスクの指示もテキストで与える

BART (2019)

Bidirectional and Auto-Regressive Transformers

Facebook開発。入力にノイズを加え、元の文を復元するノイズ除去型事前学習

ノイズの種類:
・単語のマスク
・単語の削除
・文の順序入れ替え
→ 元の正しい文を復元させる

特に要約タスクに強い

Transformerの使い方3パターン:
Encoderのみ → BERT(理解・分類タスク)
Decoderのみ → GPT(生成タスク)
Encoder+Decoder → T5, BART(翻訳・要約など入力→出力タスク)

📊 全13モデル比較表

カテゴリモデルベース核心アイデア得意タスク
基盤 RNN再帰(前の出力を戻す)系列データ全般
LSTM1997RNN3ゲート+セル状態長い系列
GRU2014RNN2ゲート(LSTM簡略版)軽量な系列処理
CNN1D畳み込みテキスト分類
革命 Transformer2017Self-Attention全NLPタスク
埋め込み Word2Vec2013CBOW / Skip-gram単語ベクトル
fastText2016サブワード学習未知語対応
ELMo2018LSTM文脈依存ベクトル文脈理解
理解 BERT2018Enc双方向+MLM分類・QA
生成 GPT2018〜Dec一方向+自己回帰文章生成・対話
翻訳 Seq2Seq2014RNNEnc-Dec+固定長ベクトル機械翻訳
Enc+Dec T52019Transformer全タスクをText-to-Text翻訳・要約・分類
BART2019Transformerノイズ除去型事前学習要約