我们知道mahout的算法分为三大类:分类、聚类、推荐算法,这一篇博客就简单介绍一下推荐算法。
我们可以通过推荐算法可以向客户推荐商品,根据该用户对某些商品的打分,可以找到与他有相似品味和审美的人群,再根据这些人群进行分析,推荐出商品
举一个小例子如下,进行具体分析
数据准备:
第一个字段是userId, 第二个字段是商品ID,第三个是评分
1,00,1
1,01,2
1,02,5
1,03,5
1,04,5
2,00,1
2,01,2
2,02,5
2,05,4.5
2,06,5
3,01,2.5
3,02,5
3,03,4
3,04,3
4,00,5
4,01,5
4,02,5
4,03,0
根据上面的图,可以明确的看出用户1和2都是对商品00、01、02有相同的评分,用户2和用户3对02商品都是5分,而用户2和用户4对商品的评分完全不同,所以1、3是2用户的相似人群,可以根据1、3用户对2用户进行推荐,推荐的是2用户没有购买过的商品,有图上可以看到,1、3用户都购买过而2用户没有买过就是商品03、04,所以就能向2用户推荐03、04商品
mahout的maven依赖:
<dependency>
<groupId>org.apache.mahout</groupId>
<artifactId>mahout-core</artifactId>
<version>0.9</version>
</dependency>
<dependency>
<groupId>org.apache.mahout</groupId>
<artifactId>mahout-math</artifactId>
<version>0.9</version>
</dependency>
<dependency>
<groupId>org.apache.mahout</groupId>
<artifactId>mahout-integration</artifactId>
<version>0.9</version>
</dependency>
代码:
import org.apache.mahout.cf.taste