推荐系统
ユーザベースの協調フィルタリングアルゴリズム(UserCF)
1.1基本的な考え方
計算するためのアルゴリズム二人のユーザ間の類似度は、類似度は、本明細書中にユーザの関心二類似性を指します。
ユーザのため仮定するユーザUおよびVは、Nは、(U)N、および(v)それらが持っているのに使用される正帰還アイテムのセットを、次いで、類似度は、uおよびvジャカード式で計算することができます。
またはコサイン類似度によるそれらの類似度を計算します:
例えば
仮定ユーザAの記事{B、D}であった行動、物品B {、C、F}のユーザが行動し、類似度コサイン類似度は、AとBのために計算されました。
= =
実際には、上記ユーザ類似度計算式は粗すぎる、次のセクションでは、ユーザ類似度計算に改良されたアルゴリズムを導入します。
1.2計算効率を向上させます
この方法は、それぞれ二人のユーザ間の類似性、複雑さを計算する必要があります。多くのユーザーの数は、この方法は非常に時間がかかる場合、大ユーザ数と無依存(即ち夜十二時)との間には、それは完全に不要であるこれらのユーザのために計算される場合は特に。したがって、我々は最初の0は、その後、ユーザ間の類似性の非零度を算出することができるかどうかを決定する必要があります。
マトリックスのために、ユーザの逆リスト、テーブル内のそれ自身のライン上の各項目に第1の2次元オブジェクトから構築されました。uがアイテムの挙動を生じ、ユーザは、Uが行に追加される場合、テーブルの行ごとに、最初の要素は、アイテムです。ユーザのリストの各行について、その任意の2つの間の類似性の存在のユーザー。
その後、同時にKラインの反転リストに現れ、ユーザUとユーザVならスパース行列Cの確立は、その後、一緒にUおよびV kを、これら2つの項目が、C [U] [V] =されている現象を生成することK。最初に、Cの個々の要素がゼロです。
ユーザUおよびVのうちの任意の2つのために、テーブル内のユーザーのドロップダウンリストの二次元列の各行を横断する、請求C [U] [V]とC [V] [U]は一つ。トラバーサルが完了した後従って、C [U]の値を[V]に等しいです。
見られ、行列は対称行列です。
すべてのユーザー間のペアワイズ類似性を計算した後、UserCFアルゴリズムは、ユーザへの彼の最も近いk個のユーザーの関心のお気に入りのアイテムは、以下の式対策項目のユーザu、iの関心のレベルに推薦します。
ユーザーとユーザーの関心uがk個の最も近いのリストが含まれて、私は、ユーザーのリストは、ユーザの類似性に興味を持っていた項目の動作はuとユーザvは、vは私のようなユーザー項目の度合いを表している(ここで使用しているため暗黙的なフィードバックデータ)ので、すべて= 1、単一のアクションです。
1.3アルゴリズムのパラメータ
パラメータkは、その推薦アルゴリズムの指標がいくつかの列の影響を与えることになる、重要なパラメータUserCFアルゴリズムです。
-
精度(精度と再現率):精度と再現率パラメータkは、線形関係ではなく、推薦システムの高精度を得るために重要適切なKを選択します。
-
人気:Kが大きいほど、より多くの人気UserCFはアイテムをお勧めします。
-
カバレッジ:大きいK、大きな人気、従ってカバレッジ小さくしています。
1.4の改良:UserCF-IIFアルゴリズム
懐疑的なこの部分。
1.5 UserCF欠陥アルゴリズム
実際には、もう少し協調フィルタリングアルゴリズムのアイテムを使用するために、業界でUserCFアルゴリズムの使用(ItemCF)ベースです。
主な欠点のUserCFは以下のとおりです。
- ユーザーの数が増えると、すべてのペアごとの類似ユーザーの時間の間に利害の計算は複雑さが成長し、そして乗ユーザーの数との間に正の相関。
- UserCFアルゴリズムは、推奨結果の説得力のある説明をすることは困難です。
2.協調フィルタリングアルゴリズムの物品(ItemCF)ベース
2.1基本的な考え方
彼らは、ユーザーに好き前に他の項目と同様の項目を推奨するアルゴリズム。あなたは、「データマイニングの概要」を購入した場合たとえば、私はあなたに、「機械学習」をお勧めします。
ItemCFアルゴリズム財間の類似性を分析するために、ユーザーの過去の行動記録を計算します場合は、商品Aのユーザーの最も気に入った商品Bのような項目A、その後、物品Bは一定の類似性を有する考えてみます。これは、推奨結果について合理的な説明を行うことが容易になります。
仮定、アイテムAとアイテムBのようなユーザの数であり、ユーザの数のようなAとBの両方が好きであり、その後、アイテムAとアイテムBの類似性(さらにBのような人のユーザAの数のような)であります:
式には疑問を持っている:もしBが原因となり、(I Bのような人のようなので、A)特定の人気アイテムと他の項目は非常に似ている非常に熱い商品は、それが1に近くなりますです。したがって、我々は重み係数B項目罰で、式にいくつかの変更を行い、式となっています。
2.2計算
全集は、記事を想定して初のフルゼロ行列Cを確立することです。
ユーザーのために - 関心のある項目のリスト:
項目は、リスト内のユーザーの興味に表示された場合、およびインクリメントされています。このようトラバーサルの後、最終的な行列Cを得ました:
各二つのアイテム間の類似度を取得した後、ItemCFユーザUはアイテムIの関心の式により算出されます。
iは、物品のN(u)は、ユーザが好きなアイテムの集合であり、S(I、K)は、アイテム類似度J、アイテムのKセットIアイテムに最も類似していると仮定し、物品は、(関心のあるユーザU jのあります記事のユーザーのu jが生じた場合、暗黙的なフィードバックデータセットに対して、動作ができるように= 1)、uがその項目I、ユーザの関心は次のとおりです。
2.3アルゴリズムのパラメータ
Kパラメータは、その推薦アルゴリズムの指標がいくつかの列の影響を与えることになる、重要なパラメータItemCFアルゴリズムです。
-
精度(精度と再現率):精度と再現率パラメータkは正の相関または負の相関はないが、推薦システムの高精度を得るために重要適切なKを選択します。
-
人気:としてKが増加すると、徐々に改善される推薦結果の人気が、ある程度、人気のK増加は、有意な変化は存在しない場合。
-
カバレッジ:Kの大きなカバレッジが対応して減少することができます。
ユーザアクティビティの記事の類似性(ItemCF-IUF)に2.4影響
ユーザーが自分の類似性に関心リストの二十から二項目を貢献する必要がありますので、彼らは、アイテムの数に関心のあるユーザーのリストで一緒に出演しているためItemCFでは、両者の間の類似性は財を生産することができます。しかし、異なるユーザの寄与は同じではありません。
例えば、図書館員はJingdongはに関する書籍の90%を買ったが、ほとんどは彼の関心はありません。そして若いアーティストは、5つの小説を買ったが、彼らは自分の興味あります。だから、彼はペアワイズ類似性を買った本のための司書は、はるかに少ない若手作家を超えています。
したがって、アクティブユーザ、非アクティブなユーザーに比べ、より小さなアイテムの寄与との間の類似性。ジョンS.ブリーズ紙がでIUF(インバースユーザー度数)の概念を提案しました。uはユーザu IUFパラメータ、その後、ユーザーの好みのリスト項目であるN(U)を仮定します。
IUF項目増加類似パラメータ式
アルゴリズムは、として記録さ ItemCF-IUF。
実際には、例えば上記の司書として過剰ユーザのために、単に一般的な関心リスト項目を無視し、データセットに類似度の算出には含まれません。
2.5物品正規類似
でKarypis 紙が挙げ:でItemCFを、類似度行列が最大値(最大1大丈夫に設定されている?)はによると、あなたが推薦精度を向上させることができる正規化した場合。
推薦結果の精度を向上させることに加えて、正規化はまた、カバレッジおよび多様推薦結果を改善することができます。
例えば、
A及びBは、物品との間のクラスAの類似度が0.5、クラスBの物品0.6との類似度である2つの項目が存在すると仮定し、クラスAとクラスBの商品記事0.2との類似度。ユーザは、5件の記事Aおよびクラス5クラスBの記事を気に入った場合、クラスB比較的大きな物品との間の類似度ので、この場合には、アルゴリズムItemCF項目は、ユーザBに推薦されています。類似の正規化処理の後に、クラスAの物品との間の類似度が1となるユーザが5つの物品Aおよびクラスを気に入った場合、クラスBの物品1との間の類似性の程度は、この場合には、5クラスBの項目は、システムは、クラスAとB級品アイテムの数はほぼ等しくなければならない彼に推薦。どのような種類の商品間の類似度、その項目が何であるかの中下層階級の間の類似性が高いそのクラス内のクラスの?
正規化されていない場合、一般的な、より人気のあるクラスでは、その種類のアイテムの類似性も大きく、それが低い推奨カバレッジが得られ、商品の人気のクラスをお勧めする傾向があります。
欠陥2.6 ItemCFアルゴリズム
上記:より人気クラス、そのクラスオブジェクト内の類似度大きいです。また、最も人気のある商品の異なる領域間の類似性は、多くの場合、非常に高いです。
例えば、
高齢者がニュースネットワークを読むのが好き、他のニュース番組を見ていません。彼らはニュースネットワークを読んだ後、すぐに国内のドラマの中央8セットを見るためにチャンネルを変更し、他のテレビ番組は、(ドラマなど)はほとんど見えません。そして、データItemCFアルゴリズムは、我々は簡単にテレビのニュースネットワークのプライムタイム、および(例えば南京ゼロなど)他のニュースネットワークのニュース番組との類似性との類似度の高いが非常に低いことを信じることができます。これは明らかに不合理です。
このような問題のために、単独のユーザデータは解決できない、データ項目の内容を導入する必要があります。これは、協調フィルタリングの範囲を超えています。
3. UserCF VS ItemCFU
現実には、アプリケーションUserCFとItemCFアルゴリズム
会社 | アルゴリズム | 使用 |
---|---|---|
ディグ | UserCF | パーソナライズウェブ記事勧告 |
GroupLens | UserCF | パーソナライズされたニュースの推薦 |
ネットフリックス | ItemCF | 映画の推薦 |
アマゾン | ItemCF | ショッピング推奨 |
なぜニュースはUserCFアルゴリズムを推奨し、ショッピングサイトはItemCFアルゴリズムを使用していますか?
推奨される結果UserCFアルゴリズムは、ホットスポットに焦点を当てて小グループの同じような興味を持つもの、ターゲットユーザーを反映し、推薦結果ItemCFアルゴリズム対象ユーザの維持に関心の歴史に焦点を当てています。言い換えれば、UserCFはItemCFより、社会的、およびよりパーソナライズされた勧告をお勧めします。
UserCFとItemCFアルゴリズムの比較
UseCF | ItemCF | |
---|---|---|
演奏 | 、ユーザーシーンの数が少ないために適した非常に多くのユーザーが、ユーザーの費用との間の類似性行列を計算する場合 | 非常に多くのアイテムが、類似性マトリックスは、物品のコストとの間で計算された場合にアイテムの数に適用されるには、ユーザーシナリオの数よりも著しく小さいです |
フィールド | 関心の適時強い、ユーザーのパーソナライズあまり目立たないエリア | 長尾アイテムパーソナライズされた区域のための豊富な、強力なユーザーの需要を |
リアルタイム | 新しいユーザの行動は必ずしも推薦結果の即時の変化につながりません | 新規ユーザーの行動を推奨リアルタイムの変化の結果につながります |
コールドスタート |
新しいユーザーの行動が商品の少量を生産するときにユーザ類似テーブルは、一般的に随時オフラインで計算されているので、私たちは、すぐに彼をお勧めすることはできません。 ときに、新しいラインアイテム物品を製造するために、ユーザの行動がある場合、記事を他のユーザーに与えることができる同様のユーザにお勧めします |
長い項目を生成するために、新しいユーザーの行動などとして、あなたは彼がアイテムに似て他の項目をお勧めすることができ ますが、他のユーザーに新しいアイテムをお勧めすることができます前にした後、商品の類似性テーブルを更新しなければならない(オフラインで) |
推奨理由 | そのユーザーがその説得力の説明を提供することは困難推奨 | 推薦理由として、ユーザーの過去の行動を使用して、ユーザーを説得するのは簡単です |