基于Apache Mahout的推荐引擎与欺诈异常检测
1. Apache Mahout推荐引擎评估
在构建推荐引擎时,我们需要确保返回的推荐是有意义的。最可靠的方法是在实际系统中对真实用户进行A/B测试,例如A组接收随机推荐的物品,B组接收推荐引擎推荐的物品。但这种方法并不总是可行或实际的,因此我们可以通过离线统计评估来进行估计。
一种常用的方法是使用k折交叉验证,将数据集划分为多个子集,一部分用于训练推荐引擎,其余部分用于测试其对未知用户的推荐效果。
Mahout实现了 RecommenderEvaluator 类,它将数据集分为两部分。默认情况下,90%的数据用于生成推荐,其余数据与估计的偏好值进行比较以测试匹配度。该类不直接接受推荐器对象,而是需要实现 RecommenderBuilder 接口的类来构建推荐器对象进行测试。
以下是具体实现步骤:
1. 创建一个实现 RecommenderBuilder 接口的类:
public class BookRecommender implements RecommenderBuilder {
public Recommender buildRecommender(DataModel dataModel) {
UserSimilarity similarity =
new PearsonCorrelationSimilarity(model);
UserNeighbor
订阅专栏 解锁全文
715

被折叠的 条评论
为什么被折叠?



