4

私は現在レコメンダーシステムを学んでおり、協調フィルタリング、ユーザーCF、アイテムCFについて何かを学びました。これらのアルゴリズムを使用して、次のような問題を解決することは明らかです。

私の質問は次のような問題を解決する方法です:1)ユーザーがXXXもYYYを購入しました2)ユーザーがXXXを購入しYYYも購入しましたか?

更新:タイトルを次のように修正しました:「ユーザーはXXXを購入し、 YYYも表示しました」

4

4 に答える 4

2

これが本当に「推奨」であるかどうかはわかりませんが、Mahoutのドメイン間で推奨にどのようにアプローチするかをお伝えできます。2つDataModelのを構築します。1つはユーザーアイテムの購入に基づいて構築され、もう1つはユーザーアイテムのビューに基づいて構築されます。UserSimilarityまたは実装への入力として購入データを使用しますが、その後、実装へItemSimilarityの入力としてビューデータをフィードします。そうすれば、あなたはあなたが提案したものにもっと似たものを計算するでしょう。DataModelRecommender

于 2011-03-29T07:19:34.650 に答える
0

products と sold_products の 2 つのテーブルがあるとします。商品を販売するたびに、sold_products テーブルに追加されます。2 つのテーブルは product_id によって関連付けられていると言います。order_id は、sold_products で注文をグループ化するために使用されます。

お探しの商品の product_id は 1234 であると仮定します。

  1. 製品を含む過去 25 件の注文から order_ids のリストを取得します。

SELECT DISTINCT sold_products.order_id FROM sold_products WHERE product_id=1234 LIMIT 25

  1. そこから、すべての ID を角で区切られた文字列に入れます。

例: PO1234、PO435、PO3456....

  1. これらの注文から製品 ID を選択し、頻度でランク付けしたい

SELECT DISTINCT products.* FROM sold_products LEFT JOIN products on products.product_id=sold_products.product_id WHERE sold_products.order_id IN (PO1234,PO435,PO3456....) AND NOT sold_products.product_id=1234 GROUP BY sold_products.product_id ORDER BY COUNT( 1) 説明

于 2011-03-29T04:23:39.163 に答える
0

通常、2 つのデータセットが必要です。つまり、取引 ID と製品を最初に、訪問者 ID と製品を 2 番目に表示すると、任意の 2 つの製品が一緒に販売 (または表示) される信頼度 % に到達します。R (統計ソフトウェア) を使用し、「arules」と呼ばれるパッケージをインストールして、これらの推奨事項を簡単に生成できます。

これは、R で確認したいサンプル コードです。

setwd(“C:/Documents and Settings/rp/Desktop/output”); install.packages(“ルール”); ライブラリ(「アルル」); txn = read.transactions(file=”Transactions_sample.csv”, rm.duplicates= FALSE, format=”single”,sep=”,”,cols =c(1,2)); バスケットルール <- apriori(txn,parameter = list(sup = 0.5, conf = 0.9,target="rules")); インスペクト (basket_rules);

それがどのように機能するかを本当に理解したい場合は、http: //www.tatvic.com/resources にある製品購入パターン分析と名付けられたホワイト ペーパーをチェックしてみてください。 .

さらに、既製の API を使用する場合は、http://www.liftsuggest.com/how-lift-product-recommendation-worksで入手できます。

于 2011-04-01T00:17:23.893 に答える
0

OReilly の 'Programming Collective Intelligence' book の第 2 章を参照する必要があります。一致する製品、つまり「このアイテムを購入した顧客は次の製品も購入しています...」セクションを作成するには、次のことを行う必要があります。

  • まず、さまざまなユーザーの好みを収集します
  • 次に、同様のユーザーを見つけます
  • 次に、購入または気に入った他のアイテムを表示します。

上記の手順に関連するアルゴリズムがあります。詳細については、これらのアルゴリズムの python コードとともにその本に記載されています。

于 2011-03-29T07:33:49.780 に答える