mahout 为约会数据集推荐

这篇博客介绍了如何利用mahout库处理预处理后的约会数据集,通过实现基于用户的协同过滤算法,使用欧氏距离计算相似度,并设置近邻数量为2。博主展示了评估程序的代码,最终得到的平均绝对误差评分为0.8415841584158418。
摘要由CSDN通过智能技术生成

在http://libimseti.cz中下载约会的数据集

里面的ratings.dat有257MB,以逗号分隔,包含用户ID,档案ID和评分(档案ID和用户ID不是采用同一个匿名方法)

这个数据集经过了预处理,剔除了生成评分个数不到20个的用户,也剔除了对每个档案都给出相同分值的用户

根据《mahout 实战》中所说,最优的配置是基于用户的推荐,采用欧氏距离,近邻数量为2.

由此写出的评估程序如下:

    public static void evaluateDateData() throws IOException, TasteException
    {
        DataModel model = new FileDataModel(new File("F:\\mahout\\libimseti\\libimseti-complete\\libimseti\\ratings.dat"));
        RecommenderEvaluator evaluator = new AverageAbsoluteDifferenceRecommenderEvaluator();
        RecommenderBuilder builder = new RecommenderBuilder(){

            @Override
            public Recommender buildRecommender(DataModel model)
                    throws TasteException {
                // TODO Auto-generated method stub
                UserSimilarit

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值