AIの基礎 入門

レコメンドシステムRecommendation System

過去の記録から好みそうなものを選んでくれる仕組み

ポイント
  • レコメンドシステムは過去の記録から次に好みそうなものを順に選んでくれる仕組みです。
  • 方法は大きく二つに分かれます。商品どうしの似ている点を見る側と、好みの近い人を見る側です。
  • 星評価や「いいね」だけを使うのではありません。最後まで見たか、何秒で飛ばしたかといった行動のほうがずっと大きな材料です。
  • 記録のない新しい利用者や新しい商品には、推薦がうまく働きません。これをコールドスタート問題と呼びます。
  • よく言い当てればいいというものではありません。似たものばかり出続けると、狭い柵の中に閉じ込められます。
目次

1たとえで理解する

近所のカフェに何か月も通うと、注文が短くなります。いつも頼むものを覚えていて先に用意してくれたり、新しく入った豆が好みに合いそうだとさりげなく勧めてくれたりします。過去の記録から次に好みそうなものを選んでくれるこの働きがレコメンドシステムです。

勧め方は二つに分かれます。一つは、飲んだもの同士の似ている点を見る側です。いつも香ばしい豆を選んでいた客に、似た味わいの新しい豆を勧めるやり方です。もう一つは、客同士の似ている点を見る側です。好みが重なる常連の何人かが新しいメニューを気に入っていたなら、まだ飲んだことのない客にも勧めてみるわけです。

初めて来た客の前では、どちらの方法も行き詰まります。残っている記録がないので、見当を付ける材料もないからです。

2くわしく

材料は星評価ではなく行動です

星評価をきちんと付ける人はごくわずかです。だから最近の推薦は、人が残そうとして残したものではなく、ただ動いた結果として残った痕跡を主に使います。何を押したか、どれくらい留まったか、最後まで見たか3秒で飛ばしたか、カートに入れて買わなかったか、といったことです。

こうした痕跡は量が膨大にあるのが長所で、意味があいまいなのが短所です。長く留まったのが面白かったからか難しかったからかは記録だけではわからず、誤って押したものも関心として数えられてしまいます。だから信号ごとに重みを変え、複数の痕跡を重ねて見ます。

商品どうしの似ている点を見る方法

本のジャンルと著者、音楽のテンポと楽器、商品説明に使われた言葉を数の並びに変えておけば、商品と商品の間の距離を測れます。自分が気に入ったものの近くにあるものを取り出してくれるやり方です。

この方法は、新しく入ってきた商品にもすぐ使えます。まだ誰も買っていなくても、説明さえあれば位置を決められるからです。代わりに、いつも似たものばかり返ってくるのが弱点です。一度怖い映画を見ると、怖い映画ばかり続くようなものです。

好みの近い人を見る方法

もう一つの道もあります。自分と選んだものが大きく重なる人たちを探し、その人たちが気に入っていて自分がまだ見ていないものを勧める方法です。商品の中身をまったく知らなくてもよく、記録さえあれば動きます。

こちらは思いがけない発見が出るのが強みです。ジャンルも説明もまったく重ならないのに、なぜか驚くほど合うものがこの方法から出てきます。代わりに記録がある程度たまっている必要があり、人が集まる人気商品ばかりが上に上がり続ける偏りも生まれます。

実際のサービスは二段階でふるいにかけます

商品が数百万点あるところで、一つひとつに点数を付けるわけにはいきません。だからまず、大まかで速い方法で候補を数百件まで絞ります。そのあと、この候補だけを対象に精密なモデルが順番を付けます。

最後には規則がもう一度手を加えます。同じ種類が連続しないように混ぜたり、新しく出たものをわざと差し込んだり、すでに買った商品を外したりします。画面に見える一覧は、こうして何重もの過程を経てきた結果です。

うまく言い当てているかはどう確かめるか

過去の記録を半分に分け、前半だけを見せて後半を言い当てさせる方法をまず使います。それから実際の利用者を二つの群れに分け、違う推薦を見せて結果を比べます。

ですが、ここに落とし穴があります。クリック率だけを目標にすると、刺激的な題名ばかりが上に上がってきます。だからよく言い当てたかどうかだけでなく、どれくらい多様か、どれくらい新しいものに出会わせたか、長く見ても満足していたかを一緒に測ります。目先の一回だけを言い当てても、後になって飽きられてしまえば、良い推薦だったとは言えないからです。

3もう少し正確に

レコメンドシステムは、利用者と項目をそれぞれ数の並びに変えたあと、両者がどれだけ合うかを点数として計算する問題として扱います。好みの近い人を探す方式は協調フィルタリング(Collaborative Filtering、協調濾過)と呼ばれ、商品の中身を使う方式は内容ベース推薦と呼ばれます。実際のサービスは両方を混ぜて使い、そこに時間帯や機器といった状況の情報をさらに加えます。

たとえがずれる点があります。カフェの店主は客を見分けて良いものを勧めますが、レコメンドシステムは好みを理解しているわけではありません。一緒に起きたことを数えて確率を付けているだけなので、うっかり一度押しただけのものも関心として数えられます。そしてカフェの店主の目標は客の満足ですが、サービスの推薦はたいていそのサービスが定めた目標を高める方向に合わせられています。何を目標に置くかが、画面に表示される一覧を丸ごと変えます。

4やってみる

5よくある誤解

  • 推薦は自分の心を読んでいると思われがちですが、実際には自分と似た行動をした人たちの記録を数えて確率を付けているだけです。

  • 推薦が合うのは会話を盗み聞きしているからだと見なされがちですが、実際には検索とクリックの記録だけでも驚くほどよく合います。

  • よく言い当てるほど良い推薦だと思われがちですが、実際にはすでに好きなものばかり見せ続けると、新しいものに出会う機会が消えてしまいます。

7ひとこと要約

つまりレコメンドシステムは過去の行動記録から似た商品と似た人を探し、次に好みそうなものを順に差し出す仕組みです。

誤りや、もっと良いたとえがありますか? 修正を提案する · 最終更新2026-09-02