統計ロードマップ
2026-04-30·実装·⏱ 約 4

推薦システム 入門 ─ 協調フィルタリングからニューラル推薦へ

Amazon・Netflix・YouTube の中身を支える推薦アルゴリズム。協調フィルタリング・行列分解・Two-Tower・LLM 活用までの主要手法を整理します。

推薦システム は EC・動画配信・SNS のコア機能。Amazon の売上の 35%、Netflix 視聴の 80% が推薦経由とも言われます。本記事で主要手法を整理。

3 系統の推薦アプローチ

  • 協調フィルタリング(CF): ユーザー × アイテム行列の類似度 / 行列分解
  • コンテンツベース: アイテム特徴量 + ユーザープロファイル
  • ハイブリッド: CF + コンテンツ + メタデータの統合

1. 協調フィルタリング ─ 古典の鉄板

User-User CF

似た嗜好を持つユーザーが好きなアイテムを薦める。コサイン類似度や Pearson 相関で計算。

Item-Item CF

アイテム同士の類似度を計算。Amazon の『この商品を買った人は…』はこれ。

行列分解(Matrix Factorization)

評価行列 と低ランク近似。 がユーザー埋め込み、 がアイテム埋め込み。Netflix Prize で有名に。

2. ニューラル推薦 ─ 現代の主流

Two-Tower モデル

ユーザーとアイテムをそれぞれ NN(タワー)で埋め込み、内積で関連度を計算。検索時は ANN(近似最近傍)で高速。

Two-Tower の最小実装
import torch.nn as nn

class TwoTower(nn.Module):
    def __init__(self, user_dim, item_dim, emb_dim=64):
        super().__init__()
        self.user_tower = nn.Sequential(
            nn.Linear(user_dim, 128), nn.ReLU(),
            nn.Linear(128, emb_dim),
        )
        self.item_tower = nn.Sequential(
            nn.Linear(item_dim, 128), nn.ReLU(),
            nn.Linear(128, emb_dim),
        )

    def forward(self, user_feat, item_feat):
        u = self.user_tower(user_feat)
        i = self.item_tower(item_feat)
        return (u * i).sum(dim=-1)  # 内積

Sequential Recommendation

ユーザーの 行動履歴 をシーケンスとして Transformer に入れる。SASRec / BERT4Rec が代表。

本番運用 ─ 2 段階アーキテクチャ

  1. 候補生成(Retrieval): 数百万アイテムから上位 100〜1000 を高速抽出 ─ Two-Tower + ANN
  2. 順位付け(Ranking): 候補の中からスコアリング ─ DLRM・Wide&Deep など重い NN
  3. ビジネスルール: 多様性確保・在庫考慮・スポンサー枠

評価指標

  • Precision@k / Recall@k: 上位 k 件の精度 ・ 再現率
  • NDCG: 順位を考慮した正解度
  • MRR: 最初の正解の逆順位
  • CTR ・ CVR ・ Watch Time: ビジネス側の指標

Cold Start 問題

新ユーザー・新アイテムには履歴がない。対策:

  • コンテンツベース: メタデータでスタート
  • LLM 活用: テキスト埋め込みで類似アイテム検索
  • ヒューリスティック: 人気順・新着順をしばらく
  • Bandit アルゴリズム: 探索と活用のバランス

学習リソース

  • [線形代数を AI 視点で](/blog/linear-algebra-for-ai) ─ 行列分解の基礎
  • [Transformer の数学](/blog/transformer-math) ─ Sequential Rec の前提
  • [MLOps 基礎](/blog/mlops-basics) ─ 本番運用のための知識
  • [E 資格 ロードマップ](/certs/e-shikaku/roadmap)
Related Articles

関連記事