²é¿´: 1750  |  »Ø¸´: 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 µÄÖ÷Ìâ¸üÐÂ
×î¾ßÈËÆøÈÈÌûÍÆ¼ö [²é¿´È«²¿] ×÷Õß »Ø/¿´ ×îºó·¢±í
[¿¼ÑÐ] ²ÄÁϹ¤³Ìר˶283Çóµ÷¼Á 5+5 £¬£¡£¿ 2026-03-02 7/350 2026-03-02 20:27 by hypershenger
[¿¼ÑÐ] 290·Ö²ÄÁϹ¤³Ì085601Çóµ÷¼Á Êý¶þÓ¢Ò» +5 llx0610 2026-03-02 5/250 2026-03-02 20:20 by hypershenger
[¿¼ÑÐ] 0854×Ü·Ö272 +3 ´òС¾ÍÊÇÀÏʵÈË 2026-03-02 4/200 2026-03-02 19:49 by Çóµ÷¼Ázz
[¿¼ÑÐ] 275Çóµ÷¼Á +7 Ã÷Ô¶Çóѧ 2026-03-01 7/350 2026-03-02 19:22 by zhukairuo
[¿¼ÑÐ] ²ÄÁϵ÷¼Á +3 ºã˳×ÔÈ» 2026-03-02 3/150 2026-03-02 18:49 by L135790
[¿¼ÑÐ] ¸ß·Ö×Ó»¯Ñ§ÓëÎïÀíµ÷¼Á +6 ºÃºÃºÃ1233 2026-02-28 15/750 2026-03-02 18:47 by caszguilin
[¿¼ÑÐ] Ò»Ö¾Ô¸¶«±±´óѧ»¯Ñ§314·ÖÇóµ÷¼Á +3 lr1212.. 2026-03-02 3/150 2026-03-02 17:36 by yeahyou
[¿¼ÑÐ] 0703 ×Ü·Ö319Çóµ÷¼Á +3 Xinyuu 2026-03-02 3/150 2026-03-02 17:20 by houyaoxu
[¿¼ÑÐ] »¶Ó­²É¿ó¡¢µØÖÊ¡¢ÑÒÍÁ¡¢¼ÆËã»ú¡¢È˹¤ÖÇÄܵÈרҵµÄͬѧ±¨¿¼ +6 pin8023 2026-02-28 8/400 2026-03-02 17:13 by 0854¶×µ÷¼Á
[¿¼ÑÐ] »¯¹¤×¨Ë¶348£¬Ò»Ö¾Ô¸985Çóµ÷¼Á +6 ¸¥¸ñ¸ö 2026-02-28 9/450 2026-03-02 14:09 by liyongv
[¿¼²©] ³ÏÕÐũҵ²©Ê¿ +3 ÐÄÐÀÏòÈÙ 2026-02-28 3/150 2026-03-02 13:33 by ʱ¼ä²»¹·
[¿¼ÑÐ] 291 Çóµ÷¼Á +3 »¯¹¤2026½ì±ÏÒµÉ 2026-03-02 3/150 2026-03-02 12:55 by houyaoxu
[»ù½ðÉêÇë] ÃæÉÏÄ£°å¸Ä²»ÁËÒ³±ß¾à°É£¿ +6 ieewxg 2026-02-25 7/350 2026-03-02 12:44 by stidwellNK
[¿¼ÑÐ] ²ÄÁÏѧ˶318Çóµ÷¼Á +14 February_Feb 2026-03-01 16/800 2026-03-02 11:17 by yuchj
[»ù½ðÉêÇë] ´Ë³É¹û²»Äܵ¼ÈëÔ­Òò£ºÔªÊý¾Ý±ØÌîÐÅÏ¢²»ÍêÕû£¬¿É ½øÐв¹³ä¡£ +4 Kittylucky 2026-03-02 5/250 2026-03-02 11:07 by jurkat.1640
[¿¼ÑÐ] µ÷¼Á +3 13853210211 2026-03-02 4/200 2026-03-02 10:16 by 13853210211
[¿¼ÑÐ] 279Çóµ÷¼Á +3 dua1 2026-03-01 4/200 2026-03-02 00:23 by ´óÁ³µ°×Ó
[¿¼ÑÐ] Ò»Ö¾Ô¸ÖÐÄÏ´óѧÀíѧ»¯Ñ§ +4 15779376950 2026-03-01 5/250 2026-03-01 19:00 by Fff-1
[¿¼ÑÐ] 317Ò»Ö¾Ô¸»ªÄÏÀí¹¤µçÆø¹¤³ÌÇóµ÷¼Á +6 Soliloquy_Q 2026-02-28 11/550 2026-03-01 11:14 by ¸èliekkas
[¿¼ÑÐ] ѰÕÒµ÷¼Á +4 LYidhsjabdj 2026-02-28 4/200 2026-03-01 10:56 by sunny81
ÐÅÏ¢Ìáʾ
ÇëÌî´¦ÀíÒâ¼û