推荐系统之Mahout学习(二)

本文介绍了Mahout中表示用户偏好的Preference接口,包括userId、itemId和偏好值的概念。并提供了一个实例,说明如何创建和使用GenericPreference。在遇到log4j配置问题时,建议将mahout的日志配置文件移动到项目资源目录下。同时,文章还列举了在Linux环境下编辑文件常用的命令。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

偏好数组Preference

在Mahout中,用户的喜好被抽象为一个Preference,包含了userId,itemId和偏好值(user对item的偏好)。Preference是一个接口,它有一个通用的实现是GenericPreference。
API

UserPreferenceArray     API

实例:

    import org.apache.mahout.cf.taste.impl.model.GenericPreference;
    import org.apache.mahout.cf.taste.impl.model.GenericUserPreferenceArray;
    import org.apache.mahout.cf.taste.model.Preference;
    import org.apache.mahout.cf.taste.model.PreferenceArray;
    
    public class CreatePreferenceArray {
        private CreatePreferenceArray(){
        //实现构造方法
        }
        public static void main(String[] args){
        PreferenceArray User1Preference = new GenericUserPreferenceArray(3);//创建三个元素
        //第一组
        User1Preference.setUserID(0,1L);
        User1Preference.setItemID(0,101L);
        User1Preference.setValue(0,2.0f);
        //第二组
        User1Prefetence.setItemID(1,102L);
        User1Prefetence.setValue(1,3.0f);
         //第三组
        User1Preference.setItemID(2,103L);
        User1Preference.setValue(2,4.0f);
        Preference pref = User1Preference.get(1);//a materialized Preference representation of the preference at i.   
        System.out.println(pref);//输出数据的抽象表示
        System.out.println(User1Preference);//输出UserID为1的物品的偏好度
        }
    }

如果运行时报错出现log4j:ERROR则需要把mahout中日志文件log4j.properties移动到项目中的src/resources中。

输出结果:
输出结果

有关linux会用到的命令:
esc //退出输入模式
shif+: //进入命令行
:w 保存
:q 退出
:wq 保存退出,等价于 shift + zz
:x 保存退出,等价于:wq
:q! 强制退出
:set nu 显示行号
:set nonu 隐藏行号

log4j参考:
http://www.cnblogs.com/ITEagle/archive/2010/04/23/1718365.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值