ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
| この記事の要点 |
|---|
|
本稿は AI / 機械学習に必要な微積分 の入門です。AI の学習プロセスは「誤差を微分して、勾配方向にパラメータを少し動かす」の繰り返しなので、微積分が中核にあります。
なぜ AI に微積分が必要なのか
AI モデルの学習は、ほぼ例外なく以下のループです。
| ステップ | やっていること |
|---|---|
| 1. 順伝播 (Forward) | 入力からモデルの予測値を計算 |
| 2. 損失計算 | 予測値と正解の誤差(損失 Loss)を計算 |
| 3. 逆伝播 (Backward) | 損失を各パラメータで偏微分(勾配を計算) |
| 4. パラメータ更新 | 勾配の反対方向に少しだけパラメータを動かす |
3 と 4 がまさに微積分。この更新を何百万回も繰り返すことでモデルが賢くなります。
最低限おさえる概念
| 概念 | 意味 | AI での使われ方 |
|---|---|---|
| 微分 (derivative) | 関数のある点での接線の傾き | 1 パラメータの最適化 |
| 偏微分 (partial derivative) | 多変数関数を 1 変数だけで 微分 | 各パラメータの寄与を測る |
| 勾配 (gradient) | すべての偏微分を並べたベクトル ∇f | パラメータを動かす方向 |
| 連鎖律 (chain rule) | 合成関数 f(g(x)) の微分 = f\'(g(x)) · g\'(x) | 多層ネットの勾配計算(バックプロパゲーション) |
| 勾配降下法 (Gradient Descent) | 勾配の反対方向にパラメータを更新 | ほぼ全ての学習アルゴリズムの土台 |
| ヤコビ行列 (Jacobian) | ベクトル → ベクトル関数の偏微分行列 | 多次元の連鎖律 |
| ヘシアン (Hessian) | 2 階偏微分の行列 | 2 次最適化(Newton 法など) |
| テイラー展開 | 関数を多項式で局所近似 | 最適化アルゴリズムの理論基盤 |
| 積分 (integral) | 面積・確率の合計 | 期待値・確率密度の周辺化 |
勾配降下法とは(一番大事)
パラメータ w を、損失 L(w) が小さくなる方向に少しずつ動かすアルゴリズムです。
| 式 | 意味 |
|---|---|
w ← w - η · ∇L(w) | w を勾配 ∇L の反対方向に、学習率 η ぶんだけ動かす |
これだけで ニューラルネットも線形回帰もロジスティック回帰も学習できるのが、勾配降下法の強力さです。
| 派生手法 | 違い |
|---|---|
| SGD (確率的勾配降下法) | 全データではなくランダムな 1 サンプル / ミニバッチで勾配を近似 |
| Momentum | 過去の勾配方向に慣性を持たせる(坂を転がるイメージ) |
| AdaGrad / RMSProp | パラメータごとに学習率を自動調整 |
| Adam | Momentum + RMSProp。現代の事実上の標準 |
連鎖律とバックプロパゲーション
ニューラルネットは 関数の合成 (L = f3(f2(f1(x)))) なので、L を w で微分するには連鎖律が必要です。
|
例: L = (y - σ(w·x))² |
これを各層ごとに後ろから順番に計算するのが バックプロパゲーション (誤差逆伝播) です。手で書くと辛いですが、PyTorch / TensorFlow の 自動微分が中で全部やってくれます。
自動微分(autograd)の実装例
|
import torch |
学習のステップ
| 段階 | 学ぶ内容 |
|---|---|
| 1. 微分の意味 | 「接線の傾き = 一瞬の変化率」が直感的に分かる |
| 2. 多変数の偏微分 | 2 変数関数の偏微分が計算できる |
| 3. 連鎖律 | 合成関数の微分を 外から内へ 連鎖律で求められる |
| 4. 勾配降下法 | 勾配の反対方向に動かすと最小化できると分かる |
| 5. 自動微分 | PyTorch の backward() が連鎖律を自動でやっていると分かる |
つまずきやすいポイント
- 勾配の符号: 損失を減らしたいので勾配の反対方向に進む。プラスマイナスを間違えると損失が爆発する
- 学習率 η の大きさ: 大きすぎると発散、小さすぎると収束が遅い
- 勾配消失: ディープなネットで勾配が 0 に近づく問題(sigmoid 多用、ReLU で改善)
- 勾配爆発: 反対に勾配が大きくなりすぎる問題(勾配クリッピング、層正規化で対処)
- 局所最適解: 勾配降下法は大域最適とは限らない場所で止まる。ただし高次元では実用上問題になりにくい(鞍点が主な障害)
使える教材・ライブラリ
| 種類 | 名前 |
|---|---|
| 教科書(日本語) | 「マセマ 微分積分 キャンパス・ゼミ」 / 「ヨビノリ たくみ: 大学微分積分」 |
| 動画 | 3Blue1Brown 「Essence of Calculus」(直感重視で秀逸) |
| AI 視点の教材 | 「ゼロから作る Deep Learning」(斎藤康毅) — バックプロパゲーションを Python で実装 |
| 自動微分ライブラリ | PyTorch / TensorFlow / JAX(autograd) |
関連
- 親: AI に必要な数学
- 姉妹: ディープラーニング / 機械学習
- 応用: ファインチューニング / 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
コメントを削除してもよろしいでしょうか?