A Personalized Recommendation System for Netease Dating Site VLDB-2014 Netease Corp.
目录 文章简介与相关工作 推荐系统概述 推荐系统 – 数据分析模块 推荐系统 – 推荐模块 实验 总结
文章简介 网易花田社区推荐系统。 什么是花田?
相关工作 传统典型推荐算法: Content Based Filtering 通过利用物品特征的描述和用户(历史)兴趣的记录,比如喜爱的物品特点,进行确定最能匹配用户喜爱的物品。 缺陷: 预先处理产品以得到它们的特征,现实中很难; 推荐给某个用户的产品往往和此用户消费过的产品很相似,无法发现用户并不熟悉但具有潜在兴趣的产品。
相关工作 Collaboration Filtering 利用已有用户群过去的行为或意见预测当前用户最可能喜欢哪些东西或对哪些东西感兴趣。 基于用户最近邻推荐:如果两个用户过去对产品有相似的喜好,那么他们对产品仍有类似的喜好; 基于物品最近邻推荐:如果某个用户喜欢某种产品,那么他现在仍喜欢与此产品类似的产品。 缺陷: 冷启动:新用户,新产品; 可扩展性:可能涉及数以百万计的用户对成千上万种产品的评分(e.g., KNN)。 传统CF推荐算法通常需要计算每对用户或产品之间的相似度,然后把这些相似度存放至电脑的主存钟以便高效的产生推荐。当用户或产品的数量较大时,这类算法会被电脑主存大小所限制。
相关工作 Hybrid Filtering 组合CBF和CF。 加权(weighted)组合:独立应用CBF和CF对产品预测评分,然后加权。 混合(mixed)组合:独立应用CBF和CF预测产品列表,然后组合列表。 序贯(sequential)组合:评分较少时使用CBF,评分到一定程度,使用CF。 传统CF推荐算法通常需要计算每对用户或产品之间的相似度,然后把这些相似度存放至电脑的主存钟以便高效的产生推荐。当用户或产品的数量较大时,这类算法会被电脑主存大小所限制。
相关工作 传统推荐算法的缺点: 主要关注热门用户和热门物品; 仅覆盖部分用户,且忽略长尾用户 无法有效解决冷启动问题。 (典型案例Google Adsense) 国外某音乐网站下载量统计 在线音乐流行度
系统概述 本文提出一种基于回归的混合推荐系统。 首先,从海量用户数据中抽取用户基本属性; 然后,通过采用机器学习方法(如决策树和逻辑回归)构建用户偏好模型; 最后,根据用户偏好模型推荐适当的约会对象。 优点: 考虑了用户偏好和用户匹配度; 考虑了用户满意度和系统平衡要素(如新用户高优先权)。
1. 系统前端产生大量的信息:登陆、查看事件、消息发送事件、检索、请求推荐等等。 2. 全局信息:在线用户数、新注册用户数。 3. 基本用户信息:性别、种族、年龄、收入、教育等等。 数据分析模块:计算各种指数。 推荐系统模块:通过机器学习方法推荐约会对象。
数据分析模块 Activity:用户活跃度。 分别代表b的权重和尺度参数。 b动作在d天出现的次数。 d天用户的活跃度。 各种操作的集合: 用户登陆、趋势、消息、评论、表扬等。 W()和N()代表权重函数和归一化函数
数据分析模块 Security :综合用户信息的真实性和用户每天使用系统的状况。 此参数用来描述用户是否真实可信赖。通过 是否上传头像; 头像是否真实; 收入与其工作、职位、教育是否匹配; 被别人屏蔽和举报的情况; 最后综合算的用户可靠度的值(0~1),从而避免恶意用户和低质量用户被推荐,提高真诚用户的推荐力度。计算方法与上面类似。
数据分析模块 Popularity 综合被赞赏数、评论数、被查看次数、消息等信息来表示一个人的流行程度。 利用求Activity中的方法计算。 如果用户高Activity,但是低Popularity,可以被认为是一些欺诈用户或机器人。
数据分析模块 Enthusiasm 用来表示用户对陌生人的主动性,通过历史沟通数据和信息反馈。 所响应用户数 对此用户发起请求数
推荐模块 处理流程: 通过用户偏好检索出基本候选约会对象(Lucene); 抽取候选用户的特征:基本属性特征、匹配度和喜好度等; 利用用户排名模型对候选用户打分; 分数最后还要经过策略模型进行调整。 三个部分: User Matching Model User Preference Model User Rating Prediction Model
Matching model 本模型处理基本的匹配问题。 建立决策树,训练的样本来自于样例用户的基本信息(年龄、收入、 教育等),其标签信息来自于样例用户的反馈(like or dislike)。 训练过程使用的事C4.5算法和GINI系数。
PREFERENCE MODEL 上述模型仅考虑了基本的匹配问题,但是没有考虑到用户的偏好。 本系统会对每一个用户训练处一个偏好模型。 训练的数据来自于历史的用户约会行为。预测的值是用户的反应。 积极响应:发送消息、点击喜欢或加粉; 消极响应:对消息不回复或加入黑名单; 没有反应。 同样采用决策树方法,训练模型进行预测。 如果预测结果是积极的,则会获得更高的推荐分数,反之亦然。
User RATING PREDICTION MODEL 前述的很多维度,如匹配度、喜好度、活跃度、可靠度、流行度、 热度、是否是新注册用户等,通过逻辑回归方法建立用户排名预测 模型。对候选用户进行排名。 在逻辑回归计算过程中,X1,X2,… ,Xn是特征向量,n是维度。 候选用户推荐概率的回归形式如下:
实验 两个指标: 用户覆盖度; 用户满意度。
用户覆盖度 所有用户覆盖度(All User) 新用户覆盖度(New User) 活跃用户覆盖度(Active User)
用户满意度 点击率(Click Ratio) 深度点击率(Deep Click Ratio) 用户活跃度(User Activity)
近期工作
近期工作 推进上海项目的交接工作。 完成小论文的试验和撰写工作。 深入学习实时数据处理与挖掘工作,多读一些前沿论文和工业 界实现案例。 确定毕业论文的选题,并做一些前期的工作。
谢谢