G検定(ジェネラリスト検定)
きょうちょうふぃるたりんぐ
協調フィルタリング
Collaborative Filtering
協調フィルタリングは、多くの利用者の好みのデータを使い、自分と興味が似ている人を見つけて、その人たちが好むものを薦める方法です。
詳しい説明
利用者の好みのデータから薦める方法
協調フィルタリング(collaborative filtering)は、ある利用者が興味を持ちそうなコンテンツを見つけるために、利用者の集まりが示した好みのデータを使う方法です。Breese、Heckerman、Kadie の論文 Empirical Analysis of Predictive Algorithms for Collaborative Filtering(1998年、UAI で発表、Microsoft Research)は、協調フィルタリングを推薦システム(recommender systems)とも呼ばれるものとして紹介しています。この論文は、collaborative filtering という語について Resnick and Varian(1997)を引用しています。
この方法は、次の前提の上に成り立っています。興味を持てるコンテンツを見つけるよい方法は、自分と似た興味を持つ他の人を見つけ、その似た利用者が好むタイトルを薦めることである、という前提です。
コンテンツ自体の特徴を使う方法との違い
Breese らは協調フィルタリングを、コンテンツ自体の特徴に基づいて探す方法と対比し、それを補う方法として説明しています。
| 観点 | コンテンツ自体の特徴に基づく方法 | 協調フィルタリング |
|---|---|---|
| 手がかりにするもの | コンテンツが持つ特徴 | 利用者の集まりの好みのデータ |
| 薦める考え方 | 特徴をもとに探す | 似た興味を持つ利用者が好むものを薦める |
G検定シラバスでは、コンテンツ自体の特徴に基づく方法はコンテンツベースフィルタリングとして、協調フィルタリングと並ぶキーワードに挙げられています。
メモリベースの予測: 他の利用者の評価の重みつき和
Breese らは、代表的な計算方法としてメモリベース(memory-based)の協調フィルタリングを説明しています。予測の対象となる利用者をアクティブユーザー(active user)と呼びます。メモリベースの方法では、アクティブユーザーの評価(vote)を、次の2つをもとに予測します。
1. アクティブユーザーについて分かっている一部の情報
2. 利用者のデータベースから計算した重み
アクティブユーザーがある項目 j に付けると予測される評価は、他の利用者がその項目に付けた評価の重みつき和であると仮定します。つまり、他の利用者の評価に重みを掛けて足し合わせたものを、アクティブユーザーの評価の予測値とします。
シラバス上の位置
G検定シラバス2024では、協調フィルタリングは中項目8の教師なし学習のキーワードに含まれています。同じ中項目には、トピックモデル、潜在的ディリクレ配分法、コンテンツベースフィルタリング、コールドスタート問題、k-means法、t-SNE、クラスタリング、次元削減、主成分分析、多次元尺度構成法、特異値分解、デンドログラムが並んでいます。コンテンツベースフィルタリングとコールドスタート問題は、それぞれの項目で説明します。
試験で問われること
G検定
- 協調フィルタリングは、利用者の集まりが示した好みのデータを使って、興味を持ちそうなコンテンツを見つける方法です。推薦システムとも呼ばれます。
- 前提になる考え方は、似た興味を持つ他の利用者を見つけ、その利用者が好むタイトルを薦めることです。
- コンテンツ自体の特徴に基づく方法(コンテンツベースフィルタリング)と対比して理解します。手がかりにするのがコンテンツの特徴か、利用者の好みのデータかが違います。
- メモリベースの協調フィルタリングでは、予測の対象の利用者(アクティブユーザー)がある項目に付ける評価を、他の利用者の評価の重みつき和として予測します。重みは利用者のデータベースから計算します。
- シラバスでは、中項目8の教師なし学習のキーワードとして、コンテンツベースフィルタリングやコールドスタート問題と並んで挙げられています。
最終更新日: 2026/09/23