2026-04-29·数学·⏱ 約 4 分
AI のための線形代数 ─ 5 つの概念だけで Transformer まで届く
ベクトル・内積・行列積・固有値・特異値分解 ─ 機械学習・DL に必要な線形代数を 5 つに絞り、Python 実装と直感解説で。
「AI には線形代数が必要」と言われますが、実際に必要な範囲は驚くほど狭い。本記事では 5 つの中核概念だけで、Transformer まで届く道筋を示します。
1. ベクトルと内積 ─ 類似度の言葉
内積は 2 ベクトルがどれくらい同じ方向を向いているか。コサイン類似度はここから来ます。
コサイン類似度
初回のみ Pyodide(~10MB)を CDN から読み込みます
🛠 実務での出番
Word2Vec / BERT の単語類似度、推薦システム、検索リランキングはすべて内積。
2. 行列積 ─ 線形変換
ニューラルネットの 1 層 = 行列積 + 活性化関数。線形回帰の予測 も行列積。
簡易 NN の forward pass
X = np.random.randn(32, 100) # 32 サンプル, 100 次元
W1 = np.random.randn(100, 64) * 0.1
b1 = np.zeros(64)
h = X @ W1 + b1 # 行列積で全結合
h = np.maximum(h, 0) # ReLU3. 転置 ─ 軸を入れ替える
。Transformer の attention で必須:
Q が問い合わせ ・ K がキー、内積 で『どのトークンに注目するか』が決まります。
4. 固有値分解 ─ 主成分分析(PCA)の根
が固有ベクトル ・ が固有値。共分散行列の固有ベクトル = データの主軸。これが PCA。
PCA を 3 行で
from sklearn.decomposition import PCA
pca = PCA(n_components=2)
X_2d = pca.fit_transform(X)
print('説明分散比:', pca.explained_variance_ratio_)5. SVD(特異値分解) ─ 万能ツール
任意の行列を 3 つに分解 できる魔法。応用例:
- 画像圧縮: 上位 k 個の特異値だけ残す
- 推薦システム: 評価行列の低ランク近似
- LSI(潜在意味解析): 単語-文書行列の SVD
- 最小二乗法: 数値的に安定した解法
勾配 ─ 学習の方向
勾配は 損失関数を最も急に増やす方向。学習はその逆向き(勾配降下)に進みます。
学習順
- [Phase 1 数学基礎](/math)(本サイト)
- [ベイズ統計と頻度論](/blog/bayes-vs-frequentist) ─ 行列の分布表現
- [scikit-learn 入門](/blog/sklearn-introduction) ─ 実装で確認
- [E 資格 教科書](/certs/e-shikaku/textbook) ─ Transformer の数式まで
まとめ
5 概念で Transformer まで届く ─ つまり 狭く深く やれば AI に必要な線形代数は十分です。完璧主義に走らずに、実装と数式を行き来して血肉化しましょう。
Sponsored / Recommended
本気で AI エンジニアを目指すなら ─ 関連スクール
以下は当サイトと提携しているスクールの紹介です。リンク経由でのお申込で運営費を支援できます(読者の皆様の追加負担はありません)。
Related Articles
関連記事
- 2026-04-30実装Slack Bot を LLM で作る ─ FastAPI + OpenAI で社内ツール化Slack の Slash Command と Events API を使い、社内チャンネル内で動く LLM Bot を構築。FastAPI バックエンド + OpenAI で 1 日で完成。
- 2026-04-30実装FastAPI 入門 ─ ML モデルを 5 分で API にするPython の高速 Web フレームワーク FastAPI を使って、ML モデルを REST API として公開する最短ルート。型ヒント・自動ドキュメント・非同期対応の 3 拍子。
- 2026-04-30実装Docker 入門 ─ ML 環境の再現性を担保する「自分の PC では動く問題」を解決する Docker。ML プロジェクトの Dockerfile・GPU 対応・docker-compose・Multi-Stage Build までを実用視点で。