RMSpropは、勾配の二乗の移動平均で各パラメータの歩幅を調整する適応的最適化アルゴリズムです。AdaGradが「学習が進むほど学習率がゼロに近づく」問題を抱えたのに対し、RMSpropは古い勾配の影響を減衰させる——本記事は数式の暗記より、「なぜ勾配の振れ幅で学習率を割るのか」——更新設計の系譜——に焦点を当てます。
学習パイプラインでの位置
勾配の二乗を見る理由
ニューラルネットの重みは、層や役割によって勾配の大きさが大きく異なります。ある重みは勾配が常に大きく振れ、別の重みは小さく安定する——地形がパラメータごとに違う、というイメージです。
RMSpropは、各パラメータについて勾配の二乗の移動平均(Root Mean Squareに近い統計)を蓄え、その値で実効的な学習率を割り算でスケールします。
| 勾配の性質 | RMSpropの反応 | 試験向け |
|---|---|---|
| 大きく振れる | 二乗平均が大きい→歩幅を抑える | 暴走を防ぎやすい |
| 小さく安定 | 二乗平均が小さい→相対的に進みやすい | 更新の不均衡を緩和 |
G-145の定義——勾配の二乗の移動平均を利用して学習率を調整する——が試験の核心です。
AdaGradとの対比
RMSpropの前段に、AdaGradがあります。どちらも「パラメータごとに学習率を縮める」適応系ですが、蓄え方が異なります。
| 観点 | AdaGrad | RMSprop |
|---|---|---|
| 勾配二乗の扱い | 過去を累積(減衰なし) | 移動平均(古い情報を減衰) |
| 長期学習 | 学習率が小さくなりすぎることがある | その問題を緩和(G-145の解説) |
| 試験の整理 | 適応系の祖先 | AdaGrad改良として説明されることが多い |
試験では「RMSprop=AdaGradと全く同じ」とは答えません。学習率がゼロに近づく問題への応答——という差分がポイントです。
Adamへの系譜
Adamは、Momentum(一次モーメント)とRMSprop的な二次モーメントを組み合わせた手法として説明されます(TF-398)。
| 手法 | 使う統計 | 試験向け |
|---|---|---|
| SGD | 現在の勾配のみ | 全パラメータ同じ学習率(G-141) |
| Momentum | 勾配の移動平均(一次) | 勢いを足す |
| RMSprop | 勾配二乗の移動平均 | 歩幅をパラメータごとにスケール |
| Adam | 一次+二次モーメント | 定番の適応的手法(TF-079) |
| AdamW | Adam+重み減衰の分離 | LLM学習で広い |
現場ではAdam・AdamWが主流でも、試験ではRMSprop単体の定義(G-145)と、Adamとの親子関係の両方が問われます。
試験で押さえるポイント
- 定義 — 勾配の二乗の移動平均で学習率を調整する最適化手法(G-145)
- 目的 — パラメータごとの勾配スケール差を吸収し、学習を安定化
- 背景 — AdaGradの学習率が小さくなりすぎる問題を緩和
- 系譜 — Adamの二次モーメントに近い。Momentumとは別の軸
- 層 — 最適化手法 ≠ 損失関数 ≠ データ拡張 ≠ 誤差逆伝播
すり替えに注意
| 誤った説明 | 正しい理解 |
|---|---|
| RMSprop=Adam | 二次モーメント系 vs 一次+二次の統合 |
| RMSprop=誤差逆伝播法 | 更新手法 vs 勾配の計算(TF-075) |
| RMSprop=データ拡張 | 最適化 vs 学習データの加工(TF-399のAdamすり替えと同型) |
| RMSprop=損失関数 | 重みの更新 vs 誤差の定義 |
| 適応的=学習率が完全自動 | ベース学習率などハイパーパラメータは設定する(TF-052) |
| RMSprop=L2正則化 | 歩幅調整 vs 重みペナルティ(G-167) |
よくある質問
RMSpropは何をする最適化手法ですか?
各パラメータについて、過去の勾配の二乗の移動平均を計算し、その大きさに応じて実効的な学習率をスケールして重みを更新する手法です。勾配が大きく振れるパラメータの歩幅を抑え、学習を安定させやすい点が特徴です。
RMSpropとAdamは同じですか?
同じではありません。RMSpropは勾配の二乗の移動平均で歩幅を調整する適応的手法です。Adamはその考え(二次モーメント)に加え、勾配の一次モーメント(Momentumに近い)も組み合わせた手法です。AdamはRMSpropとMomentumの要素を統合した、と整理します。
RMSpropはデータ拡張手法ですか?
いいえ。RMSpropは学習時にパラメータを更新する最適化アルゴリズムです。正解ラベルを自動生成するデータ拡張手法ではありません。最適化手法とデータ前処理は別の層として整理します。