ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
| この記事の要点 |
|---|
|
本稿は AI / 機械学習に必要な線形代数 の入門です。難しく聞こえる線形代数ですが、AI ではほぼ 「ベクトル / 行列を計算する」 という 1 点に集約されます。
なぜ AI に線形代数が必要なのか
現代の AI、特にディープラーニングは 大量の数値を行列としてまとめて計算 することで動いています。
| 場面 | 線形代数の役割 |
|---|---|
| 画像入力 | ピクセルは行列(白黒)またはテンソル(RGB は 3 階) |
| テキスト入力 | 単語をベクトルに変換(Embedding)して扱う |
| ニューラルネット 1 層 | 本質は 「入力ベクトル × 重み行列 + バイアス」(アフィン変換) |
| 畳み込み (CNN) | カーネル行列をスライドさせて行列積を取る |
| Attention (Transformer) | Q × K^T を計算しスコアを得る — まさに行列積 |
| GPU が速い理由 | 行列積を 並列計算 するのに最適化されているから |
最低限おさえる概念
| 概念 | 意味 | AI での使われ方 |
|---|---|---|
| スカラー / ベクトル / 行列 / テンソル | 0 / 1 / 2 / N 次元の数値配列 | データもパラメータも全部これ |
| 内積 (dot product) | 2 つのベクトルの要素積の和 | 類似度計算 / Attention スコア |
| 行列積 (matmul) | 行列同士の積 | NN の各層の計算 |
| 転置 (transpose) | 行と列を入れ替える | Attention の K^T、バックプロパゲーション |
| ノルム (norm) | ベクトルの「長さ」(L1 / L2) | 正則化 / 損失関数 / コサイン類似度 |
| 逆行列 (inverse) | A × A^(-1) = I になる行列 | 線形回帰の閉形式解 |
| 固有値・固有ベクトル | A·v = λ·v を満たす v と λ | PCA、グラフ解析 |
| SVD (特異値分解) | 任意の行列を A = U·Σ·V^T に分解 | 次元削減 / 推薦システム / LSA |
| 固有値分解 | 正方行列を P·D·P^(-1) の形に分解 | PCA、共分散行列の対角化 |
| ランク (rank) | 独立な行・列の数 | 過学習・データの本質的次元の判定 |
具体的にどう使われているか
| 手法 | 本質 |
|---|---|
| 線形回帰 | y = X·w + b の w を最小二乗で解く(正規方程式 = 行列計算) |
| PCA (主成分分析) | 共分散行列の 固有値分解(または SVD)で次元削減 |
| ニューラルネット | 各層は 「行列積 + 非線形関数」 の繰り返し |
| Word Embedding | 単語を 低次元ベクトル に圧縮 (Word2Vec / GloVe) |
| 推薦システム | 行列因子分解 (Matrix Factorization) でユーザ×アイテム行列を分解 |
| Transformer / Attention | Q (Query), K (Key), V (Value) の 行列積でスコア計算 |
実装で出てくる典型コード
|
import numpy as np |
学習のステップ
| 段階 | 学ぶ内容 |
|---|---|
| 1. 計算ができる | ベクトル・行列の足し算・かけ算・転置・逆行列を手で計算できる |
| 2. 幾何的に分かる | 行列を「空間の変換 (回転・拡大・射影)」として理解する |
| 3. 固有値が分かる | 「変換しても向きが変わらない方向 = 固有ベクトル」「その伸び率 = 固有値」が腹落ちする |
| 4. SVD まで進む | SVD が「データの主軸を見つける万能ツール」と分かる |
| 5. AI 実装で使える | NumPy / PyTorch で行列演算を読める・書ける |
つまずきやすいポイント
- 行列積は順序が重要: A·B ≠ B·A(可換ではない)
- 形 (shape) を常に意識する: (m, n) × (n, k) = (m, k) のように内側の次元が一致しないとエラー
- 逆行列は「正方行列」かつ「ランクが完全」でないと存在しない — 一般のデータ行列には使えないので疑似逆行列 (Moore-Penrose) や SVD を使う
- 固有値分解は正方行列限定、SVD は任意の行列に使える(より汎用)
- 大規模行列の固有値・SVD は計算量が大きいので、PCA でも一部の主成分のみ計算する近似手法を使う
使える教材・ライブラリ
| 種類 | 名前 |
|---|---|
| 教科書(日本語) | 「世界基準MIT教科書 Strang: 線形代数イントロダクション」 / 「ヨビノリ たくみ: 大学線形代数」 |
| 教科書(英語) | Gilbert Strang「Introduction to Linear Algebra」/「Linear Algebra Done Right」(Axler) |
| 動画 | 3Blue1Brown 「Essence of Linear Algebra」(幾何的に圧倒的に分かりやすい) |
| 計算ライブラリ | NumPy(基礎)/ PyTorch / TensorFlow / JAX(自動微分つき) |
| 可視化 | matplotlib / seaborn |
関連
- 親: AI に必要な数学
- 姉妹: ディープラーニング / 機械学習
- 応用先: Transformer / Embedding / Diffusion Model
ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子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
コメントを削除してもよろしいでしょうか?