本文へスキップ
統計ロードマップ
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)                # ReLU

3. 転置 ─ 軸を入れ替える

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

関連記事