24小时热门版块排行榜    

查看: 1814  |  回复: 1

sjtu2012

银虫 (著名写手)

[交流] 智能推送,智慧推送等推荐算法已经有很多了,怎么判断比较各种算法的好坏呢? 已有1人参与

有测试各种已有算法的公共Benchmark测试平台吗?
回复此楼

» 收录本帖的淘帖专辑推荐

ML相关

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

无人机

新虫 (正式写手)


小木虫: 金币+0.5, 给个红包,谢谢回帖
1)评价推荐系统优劣的方法

   mahout中提供了为用户推荐物品的工具,但如何评价推荐的item是否和实际情况相符合。在机器学习和AI领域,习惯的是利用一部分数据作为训练集数据,而留出一部分实际用户喜好的数据作为测试集数据,通过估计出的值与实际测试值之间的均差、均方根等方法下的大小来评判,通常是值越小说明推荐的情况和实际值越接近,若其值为0说明完全吻合。
   由于评判通过推荐系统得出的估计值和实际值之间的得分(通过均差、均方根等得到)直接关系到推荐系统的优劣,所以这里就有必要对此作出必要分析(由于均差方式简单,这里就以它为例)。
        Item1        Item2        Item3
实际值        3.0        5.0        4.0


估计值        3.5        2.0        5.0


差值        0.5        3.0        1.0


均差        = (0.5 + 3.0 + 1.0)/ 3 = 1.5
   上面就展示了评价已定推荐系统根据均差方法测定其得分的过程,由于存在Item2,导致该系统得分偏高。当然在项目中自己也可以通过代码测试系统的得分(即优劣)。


2)下面的代码可以评估推荐系统的性能:
package com.loogn.valuaterecommender;





import org.apache.mahout.cf.taste.impl.model.file.*;//FileDataModel

import org.apache.mahout.cf.taste.model.*;//DAtaModel

import org.apache.mahout.cf.taste.impl.neighborhood.*;

import org.apache.mahout.cf.taste.impl.recommender.*;

import org.apache.mahout.cf.taste.impl.similarity.*;

import org.apache.mahout.cf.taste.neighborhood.*;

import org.apache.mahout.cf.taste.similarity.*;

import org.apache.mahout.cf.taste.recommender.*;

import org.apache.mahout.common.RandomUtils;

import org.apache.mahout.cf.taste.impl.eval.*;

import org.apache.mahout.cf.taste.eval.*;

import org.apache.mahout.cf.taste.common.TasteException;



import java.io.*;



public class ValuateRecommender {

    /**

     *

     * @param args

     * @throws Exception

     */

    public static void main(String[] args) throws Exception{

        /**

         * 只用于结果可重复的例子

         */

        RandomUtils.useTestSeed();

        /**

         * 加载数据文件

         */

        DataModel model = new FileDataModel(new

                File("C:\\Users\\ZhouQiang\\Desktop\\my own task\\intro.csv");



      

        /**

         * 创建评价器

         */

        RecommenderEvaluator evaluator = new

        AverageAbsoluteDifferenceRecommenderEvaluator();

      

        /**

         * 建立推荐系统

         */

        RecommenderBuilder builder = new RecommenderBuilder() {

            @Override

            public Recommender buildRecommender(DataModel model)

                throws TasteException {

                UserSimilarity similarity = new PearsonCorrelationSimilarity(model);

                UserNeighborhood neighborhood = new

                    NearestNUserNeighborhood(3,similarity,model);

                return

                    new GenericUserBasedRecommender(model,neighborhood,similarity);

            }

            };

           

            /**

             * 70%的数据作训练集,剩下30%的数据作测试集

             */

            double score = evaluator.evaluate(builder, null, model, 0.7, 1.0);

            System.out.println("评价得分:" + score);        // 输出评价得分

           

        }



}
2楼2014-09-19 15:33:25
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 sjtu2012 的主题更新
普通表情 高级回复 (可上传附件)
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 投票:  有多少人是今天查系统知道结果的? +17 爱看书的可乐 2026-08-26 19/950 2026-09-02 00:19 by xiangy672
[基金申请] 为什么国自然不能直接公布 +5 bjdxyxy 2026-08-26 5/250 2026-09-01 17:54 by 小伟大博士
[文学芳草园] 梦想 +5 myrtle 2026-08-26 7/350 2026-09-01 15:18 by myrtle
[基金申请] 学科评审组评审是指会评吗? +4 瞬息宇宙 2026-08-31 4/200 2026-09-01 14:58 by jiaoxg
[基金申请] 为什么资助数各大高校都创新高,自己申请怎么就这么难 +13 Kittylucky 2026-08-27 14/700 2026-09-01 11:06 by feng6531
[论文投稿] 小白求助 投论文要求的highlights应该如何写 5+3 l1963982152 2026-08-29 4/200 2026-09-01 09:04 by 北京莱茵编辑
[基金申请] 怎么看青基中了没有啊 +6 叶九微 2026-08-26 6/300 2026-08-31 23:54 by yudaoqian88
[基金申请] 国社科又开始会评了,不知道这次命运如何 +7 雨打竹帘 2026-08-30 11/550 2026-08-31 23:16 by hittle2008
[基金申请] 中青基了要发朋友圈吗? +7 349506619 2026-08-28 7/350 2026-08-31 13:39 by 冼亮淀粉酶
[基金申请] 基金不中,共勉 +12 eulota 2026-08-26 12/600 2026-08-31 08:42 by ZJTJZ
[基金申请] 有没有仍没收到信息的 +7 德尚中行 2026-08-27 8/400 2026-08-30 20:52 by purplejack
[基金申请] 国自然评审意见 +13 wangmingqi 2026-08-28 19/950 2026-08-29 10:22 by Poppy1104
[基金申请] 系统查不到 +11 董八千 2026-08-26 11/550 2026-08-28 18:06 by Leogzhya
[基金申请] 基金系统什么内容也没有 30+4 winsaint 2026-08-27 9/450 2026-08-28 11:06 by maolC
[基金申请] 怎么查啊 +6 huang1991js 2026-08-26 6/300 2026-08-28 08:42 by winsaint
[基金申请] 为什么 国际(地区)合作与交流项目 没有放榜? 10+3 majunge000 2026-08-26 11/550 2026-08-27 08:42 by 北京莱茵编辑
[基金申请] 我不理解! +15 Edward_pc 2026-08-26 23/1150 2026-08-26 20:34 by zzuzxg
[基金申请] 国合里面能看到了 +7 一怀馨秋 2026-08-26 7/350 2026-08-26 11:23 by zhaosm1982
[基金申请] 国际合作可查了,中了面上 (EPI+1)(金币+50) +18 Ldrop2023 2026-08-26 18/900 2026-08-26 11:15 by cmrandy
[基金申请] 国合可查了 +3 paperzjh 2026-08-26 3/150 2026-08-26 10:41 by LemmonTr
信息提示
请填处理意见