推荐系统笔记

推荐系统中各种指标含义

  • PV:
    • 即Page View,表示访问量,具体指网站或页面或电商中某一物品的浏览量。
  • UV:
    • 即Unique Visitor,表示独立访客。根据IP地址来区分访客数,即使在一段时间内重复访问,也只算是一个UV。
  • UV价值:
    • UV价值 = 销售额 / 访客数。表示每位访客带来多少销售额。
    • 例如今天该宝贝的销售额为10000元,该宝贝有50个访客。就意味着平均每个访客能带来200块钱。uv价值就是200。
    • UV价值 = 销售额 / 访客数
      销售额 = 访客数 * 转化率 * 客单价
      因此: UV价值 = 转化率 * 客单价
  • CTR:
    • 即Click-Through-Rate,点击率。
    • 计算公式:CTR = 实际点击次数 / 展示量。
    • 可以理解为一个物品被展示出来的次数作为总次数,把用户点击并进入该物品的次数占总次数的比例叫点击率。
  • PVCTR:
    • 即pv点击率
    • PVCTR = (某物品) 点击量 / pv 页面访问量
  • UVCTR:
    • 即uv点击率
    • UVCTR = (某物品) 点击量 / uv 独立访客访问量
    • uv点击率相对pv点击率的优势在于,它不受用户重复浏览某个产品的影响。
  • GMV:
    • 即Gross Merchandise Volume,成交总额。
  • 曝光点击率:
    • 即点击量/曝光次数。
    • 曝光点击率适合支持上拉/下拉翻页的产品,比如Feed流。相比pv点击率,曝光点击率的分母随用户刷屏次数增加而变大,能更真实的记录每一屏的转化情况。
  • UV转化率:
    • 点击uv / 进入uv
  • 环比:
    • 表示本次统计段与相连的上次统计段之间的比较。
    • 例如2020年4月份与2020年3月份相比较,叫环比。11月比10月,12月比11月,1月比上年12月,就像一个环一样
  • 同比:
    • 指今年第n月与去年第n月比。
    • 同比发展速度主要是为了消除季节变动的影响,用以说明本期发展水平与去年同期发展水平对比而达到的相对发展速度。
    • 如,本期2月比去年2月,本期6月比去年6月等。
  • SPU、SKU、销售属性、CSPU:
    • SPU:Standard Product Unit (标准产品单位),即“款”,如:苹果6;
    • SKU:Stock Keeping Uint (库存量单位),为保存库存控制的最小可用单位,即“款 + 规格、颜色等”,如:苹果6-土豪金-16G-4999元-1000件;
    • 销售属性:组成SKU的特殊属性,它会影响买家的购买和卖家的库存管理,如服装的"颜色"、“套餐"和"尺码”。
    • CSPU:CSPU = SPU + 销售属性
    • SKU = CSPU + 价格 + 库存

FM-Factorization Machine(因子分解机)

  • FM (因子分解机) 与MF (矩阵分解) 的区别:
    • 首先可以简单的理解为:FM (因子分解机) 是MF (矩阵分解) 的全能版本,MF(矩阵分解) 是FM (因子分解机) 的一种简单存在形式。
    • MF (矩阵分解) 的方法是在操作和分解用户-物品矩阵,而FM (因子分解机) 方法则将用户和物品都进行了one-hot编码作为了预测评分的特征,并且解决了稀疏数据下的特征组合问题。
  • FM (因子分解机) 简介:
    • 因子分解机(Factorization Machine, FM)是由Steffen Rendle提出的一种基于矩阵分解思想的机器学习算法,FM的提出是为了解决大规模稀疏数据中的特征组合问题。
    • 假设我们从电影评论系统中获取了这么一组交互数据(见下图),其中包含用户集合,物品(这里为电影)集合。根据以上数据构造了如图所示的实值特征向量,蓝色框框内代表用户的one-hot编码,橙色框框内代表电影的one-hot编码,黄色框框内代表用户评论过的其他物品,并做了归一化,绿色框框内表示评论的时间,紫色框框内表示最近评论过的物品;最后一列为标签向量Target y,表示用户对该物品的一个评分(若将FM用于ctr预估,则y值表示是否点击,可用于线上系统的精排)。

FM (因子分解机)输入特征向量和标签

图1 FM (因子分解机) 输入特征向量和标签
  • FM (因子分解机) 模型目标函数:

    • FM在特征线性组合的前提下增加了特征交叉项(二元交叉),公式如下:
      FM (因子分解机) 模型目标函数
      在这里插入图片描述
    • 该公式中的前面两项就是我们熟知的线性模型,后面一个就是我们需要学习的交叉组合特征,这正是FM与线性模型不同的地方。
    • 前面两项中的w是输入特征的参数,最后一项中的<vi,vj>是输入特征i,j间的交叉参数,v是k维向量。
    • 那么为什么要通过向量v的学习方式而不是简单的wij参数呢?这是因为在稀疏条件下,这样向量的表示方法打破了特征的独立性,能够更好地挖掘特征之间的相关性。
    • 以上述电影为例,我们要估计用户A和电影ST的关系w(A&ST),以便更好地预测y。如果是简单地考虑特征之间的共现情况来估计w(A&ST),从已有的训练样本来看,这两者并没有共现,因此学习出来的w(A&ST)=0。而实际上,A和ST应该是存在某种联系的,从用户角度来看,A和B都看过SW,而B还看过ST,说明A也可能喜欢ST,说明A很有可能也喜欢ST。而通过向量v来表示用户和电影,任意两两之间的交互都会影响v的更新,从前面举的例子就可以看过,A和B看过SW,这样的交互关系就会导致v(ST)的学习更新,因此通过向量v的学习方式能够更好的挖掘特征间的相互关系,尤其在稀疏条件下。
  • FM (因子分解机) 模型的计算复杂度:

    • 可能有人会问,这样两两交叉的复杂度应该O(k*n2)吧,其实,通过数学公式的巧妙转化一下,就可以变成O(kn)了。转化公式如下所示,其实就是利用了2xy = (x+y)2 – x2 – y2的思路。
      转化公式
  • FM (因子分解机) 模型的学习方法:

    • 前面提到FM目标函数可以在线性时间内完成,那么对于大多数的损失函数而言,FM里面的参数w和v更新通过随机梯度下降SGD的方法同样可以在线性时间内完成,比如logit loss,hinge loss,square loss,模型参数的梯度计算如下:
      FM模型的学习方法
  • FM (因子分解机) 模型延伸-多元交叉:

    • 前面提到到都是二元交叉,其实可以延伸到多元交叉,目标函数如下:(看起来复杂度好像很高,其实也是可以在线性时间内完成的)
      多元交叉
  • FM (因子分解机) vs MF (矩阵分解):

    • 「输入数据的形式不同」 一般来说,FM的输入数据是一个实值特征向量(如图1的每一行),相当于是对多个one-hot特征的拼接;MF的输入数据是一个二元组,为用户ID,为物品ID。往往对于FM和MF理解的难点在于此,一个数据形式为one-hot,一个数据形式为标号ID。只不过MF中的数据只有user和item,因此可以通过标号ID直接查询对应的隐向量,而FM则需要通过one-hot的形式与隐向量矩阵做乘得到对应的隐向量。
    • 「融合附加信息的方式不同」 他们输入数据的形式决定了他们融合附加信息的形式不同。直观来讲,FM融合附加信息的方式更直接。比如FM融合边信息直接在列的维度拼接特征即可,比如增加性别、年龄等信息;而MF融合边信息不能直接在输入数据上拼接,而是需要通过增加正则项约束,或者在预测函数上做文章。

参考博客: https://blog.csdn.net/qq_23269761/article/details/81355383.
https://cloud.tencent.com/developer/article/1648749

Logistic Loss函数、Logistics回归与极大似然估计

参考博客:
https://www.zybuluo.com/frank-shaw/note/143260
其中重点如下:
Logistics回归
Logistic Loss函数
极大似然估计

推荐(召回?)算法的分类

基于模型的推荐算法,是与基于Memory的推荐算法相对的,基于Memory的推荐算法,主要是将所有的用户数据,读入内存,进行运算;当数据量特别大时,显然这种方法是不靠谱的,因此出现了基于模型的推荐算法,依托于一些机器学习的模型,通过离线进行训练,在线进行推荐。

电商网站:ItemCF
新闻、社交网站:UserCF

ItemBased CF

参考博客:https://www.cnblogs.com/by-dream/p/9016289.html

推荐系统中点击率CTR预估模型:LR逻辑回归、FM因子分解机

  • 数据:
    • 正样本:用户点击过的物品
    • 负样本:用户未点击过物品,或者更科学的构造负样本方法
  • 特征向量的构建
    • 特征向量大致可分为三部分:用户基本画像(如性别、省份、喜欢的颜色等),物品画像(如类别、品牌、颜色等),连接属性(如该物品颜色是否属于用户喜欢的颜色列表中、该物品是否被用户分享过等)。
    • 这些特征中有one-hot类型,也有实数类型。大致形状如图1所示。
  • LR逻辑回归模型中的特征选择
    • 逻辑回归以线性回归为支持,会求得每个特征的权重w(w1, w2, w3, … …, wn,),然后线性加权wTx+b,最后外面加一层sigmoid函数引入非线性因素。
    • 对于求得的特征权重,我们可以根据其大小的排序,确定特征的重要程度,并以此为根据进行特征筛选。
    • 如上所述,有些特征为one-hot类型,如表示性别会变为三列:(男,女,未知),男则为(1, 0, 0),女则为(0, 1, 0),因此性别这个特征最终权重为这三列权重的平均值。
    • 值得注意的是one-hot类型的特征和实值型特征的权重应该分开来比较。
    • 实值型特征中较为重要的是:长期交易商品偏好、点击浏览、交易偏好商品字典、偏好颜色、偏好商品。
    • one-hot型特征中较为重要的是:交易点击主题列表、点击主题、点击购买列表、偏好商品、社区和交易共同点击商品。
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
深度学习在推荐系统领域有着广泛的应用。下面是一些关于深度学习推荐系统笔记: 1. 数据表示:深度学习推荐系统通常使用向量表示用户和物品,将它们映射到低维空间中。常见的方法包括使用Embedding层将用户和物品ID转换为密集向量表示。 2. 神经网络模型:深度学习推荐系统使用神经网络模型来学习用户和物品之间的复杂交互关系。常见的模型包括多层感知机(Multi-Layer Perceptron,MLP)、卷积神经网络(Convolutional Neural Networks,CNN)和循环神经网络(Recurrent Neural Networks,RNN)等。 3. 个性化排序:深度学习推荐系统可以通过学习用户行为数据,预测用户对物品的喜好程度,并根据预测结果对物品进行个性化排序。常见的模型包括基于DNN的排序模型和序列模型,如Wide & Deep模型、DeepFM模型和Transformer模型等。 4. 强化学习:深度学习推荐系统可以与强化学习相结合,通过与环境交互来优化推荐策略。常见的方法包括使用深度Q网络(Deep Q-Network,DQN)和策略梯度方法等。 5. 多任务学习:深度学习推荐系统可以同时处理多个任务,如点击率预测、商品推荐和用户画像等。多任务学习可以通过共享模型参数来提高模型的泛化能力和效果。 6. 可解释性:深度学习模型在推荐系统中通常具有较强的表达能力,但其可解释性较差。为了提高可解释性,可以使用注意力机制、解释性模型和推荐解释等方法。 这些是深度学习推荐系统的一些关键概念和技术。当然,实际应用中需要根据具体问题和数据进行选择和调整。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值