ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

传统推荐算法

2021-05-26 14:30:35  阅读:154  来源: 互联网

标签:特征 推荐 矩阵 用户 商品 算法 物品 传统 向量


模型名称基本原理例子优缺点
协同过滤

根据用户的行为历史生成用户--物品共现矩阵,以共线矩阵中的每一行作为用户向量,每一列作为商品向量。利用用户相似性和物品相似性进行推荐

Ex: 基于用户的观看历史,找到和目标用户看过同样视频的用户,然后找到这些相似用户喜欢看的其他视频,推荐给目标用户

共现矩阵

 

基于用户的协同过滤(UserCF)

如果用户兴趣相似,则他们对物品的喜好也相似

通过构建用户和商品的共现矩阵,以共线矩阵中的每一行作为用户向量,计算两两用户的相似性,通过相似用户对于某产品的兴趣,来衡量目标用户对该产品的兴趣

 

优点:

  • 解释性强

缺点:

  • 推荐结果头部效应明显
  • 泛化能力弱
  • 处理稀疏矩阵弱
  • 只能利用用户和物品的交互信息,无法有效引入用户的特征(年龄/性别)和商品特征(分类/描述)

热门商品容易和大量商品相似,导致一直推荐热门商品
冷品特征向量矩阵稀疏(因为较少用户对冷品有行为),缺乏相似性计算的数据,冷品很少和物品产生相似性,导致很少被推荐
解决方案:矩阵分解
只能利用用户和物品的交互信息,无法有效引入用户的特征(年龄/性别)和商品特征(分类/描述)
解决方案:能够综合不同特征的机器学习模型


 

基于商品的协同过滤(ItemCF)
喜欢商品A的用户也喜欢与A很相似商品B
通过构建用户和商品的共现矩阵,每一列作为商品向量,计算两两商品的相似性,已知用户的兴趣商品,推荐兴趣商品的相似商品

矩阵分解

将协同过滤算法中的共线矩阵分解为用户矩阵和物品矩阵,用户矩阵中的每一行为用户向量,物品矩阵中的每一列为物品向量,利用用户隐向量和物品隐向量的内积得到 用户u 对于 物品i 的预估评分, 根据评分进行排序并推荐

 

 

优点:

  • 泛化能力强(缓解了数据稀疏的问题)
  • 空间复杂度低(不需存储用户/商品相似矩阵,只需存储用户/商品隐向量)
  • 更好的扩展性和灵活性(用户/商品隐向量可以作为特征和其他特征一起作为模型的输入)

泛化能力较强的原因:
协同过滤中:两个用户没有相同的历史行为,则两用户相似度为0
矩阵分解:隐向量是由全局信息拟合来的,泛化能力强,使得任意用户和商品都会由预测分值
缺点:

  • 只能利用用户和物品的交互信息,无法有效引入用户的特征(年龄/性别)和商品特征(分类/描述)
    解决方案:能够综合不同特征的机器学习模型
逻辑回归

将推荐问题转化为类似CTR预估的二分类问题,将用户,物品,上下文等不同特征转换为特征向量,输入LR得到CTR,再按照预估CTR进行排序并推荐

 

 

特征:

  • 用户信息(年龄,性别)
  • 物品信息(属性,描述)
  • 场景信息(当前时间,地点)

训练样本:

  • 近期活跃人群

label:

  • 点击了广告的用户label为1,未点击的用户label为0

预测目标:

  • 用户点击广告的概率

优点

  • 综合用户/商品/场景等不同特征,生成较为全面的推荐模型
  • 数学意义的支撑:
  • 用户是否点击广告和一个偏心硬币是否为正面一样,服从伯努利分布。而逻辑回归的假设就是因变量Y服从伯努利分布
  • 可解释性强:可根据权重的不同解释特征是否重要 工程化需要:易于并行,模型简单,训练开销小

缺点

  • 只能使用单一特征而非交叉特征,表达力能力弱,损失信息,甚至出现“辛普森悖论"

辛普森悖论:在对样本集合进行分组研究时,在分组比较中占优势的一方,在汇总实验中反而是劣势的一方
比如视频推荐中,如果使用"性别”+“视频ID" 的组合特征计算点击率,和只用视频ID单一特征,会有不同的结果。因为汇总试验对高维特征进行了合并,损失了大量的信息

FM在逻辑回归的基础上,在模型中加入二阶特征交叉部分,尝试所有的两两交叉的特征组合。为每一维特征训练得到相应特征隐向量,通过隐向量间的内积运算得到交叉特征的权重 

优点:

  • 相比于逻辑回归,具有二阶特征交叉能力,模型的表达能力加强

缺点:

  • 无法提高特征交叉的维度
  • 只能支持到二阶特征组合,组合爆炸权重数量和训练复杂度都过高
FFM在FM模型的基础上,加入‘特征域’的概念,使得每个特征在和不同域的交叉特征时采用不同的隐向量 

优点:

  • 进一步加强特征交叉的能力

缺点:

  • 训练开销大

GBDT+LR

利用GBDT“自动化”构建特征工程、将原始特征向量转换为离散型特征向量,利用LR预估CTR

(GBDT和LR是独立的两步)

特征工程
GBDT

预测方式:把所有子树的结果加起来
基本结构:由决策回归树组成的森林,逐一生成决策树的方式生成森林,生成一颗新树的时候,利用样本标签值和当前的树林预测值之间的残差,构建新的子树
学习方式:梯度提升

特征选择
树中的每个节点的分裂,都是自然的特征选择的过程。
决策树的深度决定了特征交叉的阶数。如果树的深度为4,则通过3次节点分裂,最终的叶子节点是进行3阶特征组合后的结果

优点
  • 之前的特征工程, 人工或者半人工的特征组合和特征筛选,对业务经验和精力的投入要求高,改造目标函数和模型结构,增加特征交叉项的方式增强特征组合能力,对模型设计能力要求高
  • 目前的改进,输入原始的特征向量,由独立的模型完成特征工程,节约人工筛选和模型设计的精力
     
缺点
  • GBDT无法进行完全并行的训练, 更新所需的训练时间较长
LS-PLM

首先对样本进行“分片”,在每个“分片”内部构建LR,将每个样本的各“分片”概率和LR的得分进行加权平均,得到最终预估值

 

先对样本进行人群划分,再逐个进行建模

让CTR模型对不同的用户群体,不同的使用场景更有针对性,就把样本进行分类,比如想要预估女生对于女装广告的CTR,那么就把样本先分出“女性”子类

优点:

  • 模型结构类似于三层神经网络,具备较强的表达能力

缺点:

  • 相较于深度学习还是比较简单

标签:特征,推荐,矩阵,用户,商品,算法,物品,传统,向量
来源: https://blog.csdn.net/weixin_48412526/article/details/117290680

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有