ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
| この記事の要点 |
|---|
|
本稿は AI / 機械学習に必要な最適化 の入門です。AI モデルの学習は 「損失関数を最小にするパラメータを探す」最適化問題そのもの。最適化を理解すれば、なぜ Adam が標準なのか・なぜ収束しないのかが分かるようになります。
なぜ AI に最適化が必要なのか
| 場面 | 最適化の役割 |
|---|---|
| ニューラルネット学習 | 損失関数を最小にする重み w を探す |
| SVM | マージン最大化(制約付き 2 次計画) |
| 線形回帰 | 最小二乗法(解析解 or 勾配降下) |
| 強化学習 | 期待報酬を最大にする方策を探す |
| ハイパーパラメータチューニング | ベイズ最適化 / グリッド / Optuna |
| 推論時の探索 | ビームサーチ / モンテカルロ木探索 |
| LoRA / プルーニング | 少ないパラメータで損失を最小化 |
最適化問題の分類
| 分類軸 | 種類 | 例 |
|---|---|---|
| 制約の有無 | 制約なし / 制約あり | NN 学習(制約なし)/ SVM(制約あり) |
| 凸性 | 凸 / 非凸 | 線形回帰(凸)/ NN(非凸) |
| 変数の種類 | 連続 / 離散 / 混合 | パラメータ調整 / ハイパラ選択 |
| 微分可能性 | 滑らか / 非滑らか | L2 正則化(滑らか)/ L1 正則化(非滑らか) |
| 確率性 | 決定論的 / 確率的 | バッチ最適化 / SGD |
主要なアルゴリズム
| 手法 | 更新式の要点 | 特徴 |
|---|---|---|
| 勾配降下法 (GD) | w ← w - η·∇L | シンプル。全データで勾配計算(遅い) |
| SGD | 1 サンプル/ミニバッチで勾配近似 | 速い・ノイズあり・並列化容易 |
| Momentum | v ← β·v + ∇L; w ← w - η·v | 慣性で局所最適・鞍点を脱出しやすい |
| Nesterov | Momentum の改良(先読み) | 収束が速い |
| AdaGrad | パラメータごとに学習率を 勾配の累積で割る | スパース勾配に強い。長期的に学習率が落ちすぎる欠点 |
| RMSProp | AdaGrad を指数移動平均にした版 | 長期学習でも止まりにくい |
| Adam | Momentum + RMSProp | 現代の事実上の標準 |
| AdamW | Adam に重み減衰を正しく分離 | Transformer 系で標準 |
| Newton 法 | ヘシアン(2 階微分)を使う | 収束は速いが大規模 NN には重すぎる |
| L-BFGS | 準ニュートン法 | 小〜中規模問題で強い |
勾配降下法のチューニング要素
| 要素 | 意味と効果 |
|---|---|
| 学習率 (learning rate) η | 1 ステップで動かす量。大きすぎ→発散、小さすぎ→停滞 |
| 学習率スケジューリング | warmup / cosine decay / step decay などで段階的に変化 |
| バッチサイズ | 小→ノイズ大・汎化良 / 大→安定・並列効率良 |
| 重み減衰 (Weight Decay) λ | L2 正則化と等価。過学習を抑える |
| 勾配クリッピング | 勾配の大きさに上限を設けて爆発を防ぐ |
| 勾配累積 (Gradient Accumulation) | 少ない GPU メモリで大きなバッチを擬似的に再現 |
制約付き最適化
| 手法 | 用途 |
|---|---|
| ラグランジュ未定乗数法 | 等式制約付き最適化(SVM の双対問題など) |
| KKT 条件 | 不等式制約も含む一般的な最適性条件 |
| 線形計画 (LP) | 線形目的関数 + 線形制約。シンプレックス法 / 内点法 |
| 2 次計画 (QP) | SVM の主問題など |
| 射影勾配法 | 各ステップ後に制約領域に射影する |
離散最適化・ブラックボックス最適化
| 手法 | 用途 |
|---|---|
| ベイズ最適化 | 評価が高コストなハイパーパラメータ探索 |
| 進化計算 / 遺伝的アルゴリズム | 離散・複雑探索空間 |
| シミュレーテッドアニーリング | 離散最適化の古典 |
| Optuna / Hyperopt | ハイパラチューニングの実装 |
典型コード(PyTorch)
|
import torch |
学習のステップ
| 段階 | 学ぶ内容 |
|---|---|
| 1. 凸性と局所最適 | 凸関数なら局所最適 = 大域最適、と知っている |
| 2. 勾配降下法 | 勾配の反対方向に動く意味が分かる |
| 3. SGD・Momentum・Adam | 違いと使い分けが説明できる |
| 4. 学習率スケジューリング | warmup / cosine decay の効果を理解 |
| 5. 制約付き最適化 | SVM の双対問題などラグランジュを理解 |
つまずきやすいポイント
- 学習率が一番影響する。まずはここを変える
- Adam は 1e-3 〜 1e-4、SGD は 1e-2 〜 1e-1 が初期値の目安
- 非凸最適化(NN)は理論保証がない。実験的に Adam + 適切な学習率が経験的に強い
- 収束しないときは: 学習率を下げる / 勾配クリッピング / バッチサイズを変える / Optimizer を変える
- 過学習は最適化の問題ではなく汎化の問題。早期停止 / 正則化 / データ拡張で対処
- Adam は汎化が SGD に劣ることがある(画像系で SGD + Momentum が選ばれる場面も)
使える教材・ライブラリ
| 種類 | 名前 |
|---|---|
| 教科書(日本語) | 「これなら分かる最適化数学」(金谷健一) / 「機械学習プロフェッショナルシリーズ: 連続最適化」 |
| 教科書(英語) | 「Convex Optimization」(Boyd & Vandenberghe) — 凸最適化の決定版・無料 PDF あり |
| 動画 | Boyd の Stanford 講義(YouTube 公開) |
| ライブラリ | PyTorch torch.optim / SciPy scipy.optimize / CVXPY(凸最適化)/ Optuna(ハイパラ) |
関連
- 親: AI に必要な数学
- 姉妹: ディープラーニング / 機械学習
- 応用: ファインチューニング / LLM / Transformer
ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
子ページはありません
人気ページ
- 1 Eclipseで「サーバーに追加または除去できるリソースがありません。」の原因と対処法
- 2 tomcat の起動 / 停止ログと catalina.log・catalina.out の違い
- 3 【Javascript】base urlを取得する方法
- 4 YouTube Data API (v3) のエラー一覧|403系エラーの確認ポイント
- 5 Spring Frameworkのアノテーション一覧
- 6 Laravelのエラー一覧|原因と対処の入口ページ
- 7 3D グラフィックスとは?Unity・OpenGL・DirectX の基礎
- 8 【Spring】@Valueアノテーションとは
- 9 CATALINA_HOME の確認方法 (Linux / Mac)
- 10 【Spring】@Autowiredアノテーションとは
最近更新/作成されたページ
- 最適化とは?AI 学習を支える勾配降下法・Adam・凸最適化の基礎 NEW 2026-05-14 01:13:08
- 情報理論とは?AI 必須のエントロピー・交差エントロピー・KL の基礎 NEW 2026-05-14 01:12:58
- 確率統計とは?AI に必要な確率分布・ベイズ・最尤推定の基礎 NEW 2026-05-14 01:12:44
- 微積分とは?AI 学習を支える勾配降下法・連鎖律・自動微分の基礎 NEW 2026-05-14 01:12:39
- 線形代数とは?AI に必要な行列・ベクトル・固有値・SVD の基礎 NEW 2026-05-14 01:12:34
- AIの基礎概念:LLM/Transformer/Attention/RAG/エージェント など必須キーワード NEW 2026-05-13 12:19:18
- Diffusion Model とは?画像生成 AI の仕組み・Stable Diffusion NEW 2026-05-13 12:18:15
- マルチモーダル AI とは?GPT-4o・Gemini・Claude の使い方 NEW 2026-05-13 12:18:14
- トークン / コンテキストウィンドウとは?料金・上限・最適化 NEW 2026-05-13 12:18:14
- ファインチューニングとは?LoRA・QLoRA・SFT・RLHF/DPO NEW 2026-05-13 12:18:13
- AIエージェントとは?Tool Use・LangGraph・MCP・実装例 NEW 2026-05-13 12:18:13
- RAG (検索拡張生成) とは?仕組み・実装・LangChain 例 NEW 2026-05-13 12:18:12
- Prompt Engineering とは?技法・Chain-of-Thought・実践例 NEW 2026-05-13 12:18:12
- Attention (注意機構) とは?Q/K/V・Multi-Head の仕組み NEW 2026-05-13 12:18:11
- Embedding (埋め込み) とは?ベクトル化・類似検索・RAG NEW 2026-05-13 12:18:11
コメントを削除してもよろしいでしょうか?