Mahort共同推薦の簡単な例
3476 ワード
上の文章は共同で濾過するインストールと配置を紹介して、このはいくつかの共同で濾過する簡単な例を探して、見てみます.
Mahortは、強力な協同フィルタアルゴリズムを提供してくれます.新たにMavenベースのプロジェクトを作成する必要があります.
pom.xmlは導入するカバンが必要です.
まずテストのデータを用意しなければなりません. in action』の例:
Mahoustの三つの異なる推奨コードを使って、先ほど提供したデータを実行します.Mahoustの推奨インターフェースを見てみます.
どう使いますか
1.ユーザーの共同推薦に基づくコード:
2.Itemに基づく共同フィルタのコード:
3.SlopeOne推奨アルゴリズム
Mahortは、強力な協同フィルタアルゴリズムを提供してくれます.新たにMavenベースのプロジェクトを作成する必要があります.
pom.xmlは導入するカバンが必要です.
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>mahouttest</groupId>
<artifactId>mahouttest</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>
<name>mahouttest</name>
<url>http://maven.apache.org</url>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.8.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.mahout</groupId>
<artifactId>mahout-core</artifactId>
<version>0.8-SNAPSHOT</version>
<type>jar</type>
<scope>compile</scope>
</dependency>
</dependencies>
ここで導入したのは最新のMahoustバッグです.地元のMavenライブラリにインストールする必要があります.まずテストのデータを用意しなければなりません. in action』の例:
1,101,5
1,102,3
1,103,2.5
2,101,2
2,102,2.5
2,103,5
2,104,2
3,101,2.5
3,104,4
3,105,4.5
3,107,5
4,101,5
4,103,3
4,104,4.5
4,106,4
5,101,4
5,102,3
5,103,2
5,104,4
5,105,3.5
5,106,4
具体的な対応の関係図は以下の通りです.Mahoustの三つの異なる推奨コードを使って、先ほど提供したデータを実行します.Mahoustの推奨インターフェースを見てみます.
どう使いますか
1.ユーザーの共同推薦に基づくコード:
DataModel model =new FileDataModel(new File("data/intro.csv"));
UserSimilarity similarity =new PearsonCorrelationSimilarity(model);
UserNeighborhood neighborhood =new NearestNUserNeighborhood(2,similarity,model);
Recommender recommender= new GenericUserBasedRecommender(model,neighborhood,similarity);
List<RecommendedItem> recommendations =recommender.recommend(1, 1);
for(RecommendedItem recommendation :recommendations){
System.out.println(recommendation);
}
実行後の結果は、RecommandedItem[item:104,value:4.257081]2.Itemに基づく共同フィルタのコード:
DataModel model =new FileDataModel(new File("data/intro.csv"));
ItemSimilarity similarity =new PearsonCorrelationSimilarity(model);
Recommender recommender= new GenericItemBasedRecommender(model,similarity);
List<RecommendedItem> recommendations =recommender.recommend(1, 1);
for(RecommendedItem recommendation :recommendations){
System.out.println(recommendation);
}
実行後の結果は、RecommandedItem[item:104,value:5.0]3.SlopeOne推奨アルゴリズム
DataModel model =new FileDataModel(new File("data/intro.csv"));
Recommender recommender= new SlopeOneRecommender(model);
List<RecommendedItem> recommendations =recommender.recommend(1, 1);
for(RecommendedItem recommendation :recommendations){
System.out.println(recommendation);
}
実行結果は、RecommandedItem[item:105,value:5.75]