オープンソースjava推奨システムTaste(1)-基本的なItem-based推奨
1632 ワード
http://terryma.blog.sohu.com/58889892.html
推薦システムに注目してしばらくして、意外にも何の産出もなくて、恥ずかしくて、恥ずかしいです.ここ数日オープンソースのjava推薦システムTasteを勉強して、いくつかの心得があって、ゆっくりと貼ってきました.Item-based推奨が生成された場合:4人のユーザu 1,u 2,u 3,u 4があると仮定する 製品にはn個のc 1、c 2、c 3ステップがあります:1.ユーザーの製品に対する採点を見つけます.2.製品間の類似度を特定します.3.特定のユーザを推薦することができる.その中で人工的に作る必要があるのは製品間の類似度に対して、採点を与えて、これは比較的に面倒なことで、n個の製品があれば、Nが必要です!個の採点.Tasteで実装する場合、必要なコードは次のとおりです.
1.データセットを確立し、主なデータ内容はユーザーの製品に対する採点である:("0"); final Item item2 = new GenericItem("1"); final Item item 3=new GenericItem("2");itemの類似度を再記録 final Collection correlations = new ArrayList(2); correlations.add(new GenericItemCorrelation.ItemItemCorrelation(item1, item2, 1.0)); Correlations.add(new GenericItem Correlation.Item Item Correlation(item 1,item 3,0.5);3.推奨生成 final ItemCorrelation correlation = new GenericItemCorrelation(correlations); final Recommender recommender=GenericItemBasedRecommender(dataModel,correlation);4.最終生成推奨 final List recommended = recommender.recommend("test1", 1); final RecommendedItem firstRecommended = recommended.get(0);
推薦システムに注目してしばらくして、意外にも何の産出もなくて、恥ずかしくて、恥ずかしいです.ここ数日オープンソースのjava推薦システムTasteを勉強して、いくつかの心得があって、ゆっくりと貼ってきました.Item-based推奨が生成された場合:4人のユーザu 1,u 2,u 3,u 4があると仮定する 製品にはn個のc 1、c 2、c 3ステップがあります:1.ユーザーの製品に対する採点を見つけます.2.製品間の類似度を特定します.3.特定のユーザを推薦することができる.その中で人工的に作る必要があるのは製品間の類似度に対して、採点を与えて、これは比較的に面倒なことで、n個の製品があれば、Nが必要です!個の採点.Tasteで実装する場合、必要なコードは次のとおりです.
1.データセットを確立し、主なデータ内容はユーザーの製品に対する採点である:
DataModel model = new FileDataModel(new File("data.txt"));
.item類似度を確立し、集合例:先建物(ここに3つの品物がある) final Item item1 = new GenericItem