推荐系统基础知识——逻辑回归模型族、因子分解机模型族、组合模型

本文详细介绍了逻辑回归模型族,包括其在CTR预测中的应用,特征向量的处理,以及如何通过分片线性模型、混合逻辑回归和GBDT进行特征组合和过拟合问题的克服。重点讨论了FM和FFM在处理稀疏数据和特征交叉方面的优势。

逻辑回归模型族

LR

  • 流程

    • 将用户年龄、性别、物品属性、物品描述、当前时间、当前地点等特征转换成数值型特征向量

    • 确定逻辑回归优化目标(以优化“点击率(Click Through Rate, CTR)”为例),训练模型

    • 将特征向量输入模型得到点击物品概率,并根据概率排序得到推荐列表

  • 形式化定义

    • 特征向量

      x=(x1,x2,…,xn)T \boldsymbol{x}=\left(x_{1}, x_{2}, \ldots, x_{n}\right)^{\mathrm{T}} x=(x1,x2,,xn)T

    • 整体形式

      f(x)=11+e−(w⋅x+b) f(x)=\frac{1}{1+\mathrm{e}^{-(w \cdot x+b)}} f(x)=1+e(wx+b)1

    • 目标函数

      {P(y=1∣x;w)=fw(x)P(y=0∣x;w)=1−fw(x) \left\{\begin{array}{l} P(y=1 \mid \boldsymbol{x} ; \boldsymbol{w})=f_{w}(\boldsymbol{x}) \\ P(y=0 \mid \boldsymbol{x} ; \boldsymbol{w})=1-f_{w}(\boldsymbol{x}) \end{array}\right. {P(y=1x;w)=fw(x)P(y=0x;w)=1fw(x)

      P(y∣x;w)=(fw(x))y(1−fw(x))1−y P(y \mid \boldsymbol{x} ; \boldsymbol{w})=\left(f_{w}(\boldsymbol{x})\right)^{y}\left(1-f_{w}(\boldsymbol{x})\right)^{1-y} P(yx;w)=(fw(x))y(1fw(x))1y

      L(w)=∏i=1mP(y∣x;w) L(\boldsymbol{w})=\prod_{i=1}^{m} P(y \mid \boldsymbol{x} ; \boldsymbol{w}) L(w)=i=1mP(yx;w)

      J(w)=−1ml(w)=−1mlog⁡L(w)=−1m(∑i=1m(yilog⁡fw(xi)+(1−yi)log⁡(1−fw(xi))) \begin{gathered} J(\boldsymbol{w})=-\frac{1}{m} l(\boldsymbol{w})=-\frac{1}{m} \log L(\boldsymbol{w}) \\ =-\frac{1}{m}\left(\sum_{i=1}^{m}\left(y^{i} \log f_{w}\left(x^{i}\right)+\left(1-y^{i}\right) \log \left(1-f_{w}\left(x^{i}\right)\right)\right)\right. \end{gathered} J(w)=m1l(w)=m1logL(w)=m1(i=1m(yilogfw(xi)+(1yi)log(1fw(xi)))

  • 逻辑回归优势

    • 逻辑回归假设因变量服从伯努利分布,与CTR的含义保持一致(点击与不点击)

    • 可解释性强

    • 模型简单,资源开销小

  • 逻辑回归局限性

    • 表达能力不强

大规模分片线性模型(混合逻辑回归)

Large Scale Piece-wise Linear Model, LS-PLM

Mixed Logistic Regression, MLR

  • 动机:在CTR预估问题中,目的若是预估女性受众点击女装广告的CTR,则我们不希望把男性用户点击数码类产品的样本数据也考虑进来。为了让CTR模型针对不同用户群体、不同使用场景更有针对性,其采用的方法是先对全量样本进行聚类,再对每个分类用逻辑回归进行CTR预估

  • 数学形式

    f(x)=∑i=1mπi(x)⋅ηi(x)=∑i=1meμi⋅x∑j=1meμj⋅x⋅⋅11+e−wi⋅x f(x)=\sum_{i=1}^{m} \pi_{i}(x) \cdot \eta_{i}(x)=\sum_{i=1}^{m} \frac{\mathrm{e}^{\mu_{i} \cdot x}}{\sum_{j=1}^{m} \mathrm{e}^{\mu_{j} \cdot x} \cdot} \cdot \frac{1}{1+\mathrm{e}^{-w_{i} \cdot x}} f(x)=i=1mπi(x)ηi(x)=i=1mj=1meμjxeμix1+ewix1

    • 首先用聚类函数π\piπ对样本进行分类(Softmax),再用LR预估CTR

    • 其实上述分片中的概率πi(x)\pi _i(x)πi(x)相当于一种对于不同“类别”的Attention Score,分别与各自类别下的CTR相乘得到最终输出

因子分解机模型族

Factorization Machine, FM

  • 仅利用单一特征而非交叉特征时,有时不仅是信息损失的问题,甚至会得出错误结论(“辛普森悖论”)

POLY2

POLY2

  • POLY2采用特征暴力组合

    ∅POLY⁡2(w,x)=∑j1=1n−1∑j2=j1+1nwh(j1,j2)xj1xj2 \emptyset \operatorname{POLY} 2(\boldsymbol{w}, \boldsymbol{x})=\sum_{j_{1}=1}^{n-1} \sum_{j_{2}=j_{1}+1}^{n} w_{h\left(j_{1}, j_{2}\right)} x_{j_{1}} x_{j_{2}} POLY2(w,x)=j1=1n1j2=j1+1nwh(j1,j2)xj1xj2
    本质上仍是线性模型

  • 缺陷

    • 大部分特征采用one-hot编码,本身就非常稀疏,再经过特征交叉变得更加稀疏,使训练权重无法得到有效训练,无法收敛

    • 权重参数数量由nnn上升到n2n^2n2,增加训练复杂度

因子分解机

Factorization Machine, FM

  • 数学形式

    ∅FM⁡(w,x)=∑j1=1n∑j2=j1+1n(wj1⋅wj2)xj1xj2 \emptyset \operatorname{FM}(\boldsymbol{w}, \boldsymbol{x})=\sum_{j_{1}=1}^{n} \sum_{j_{2}=j_{1}+1}^{n}\left(\boldsymbol{w}_{j_{1}} \cdot w_{j_{2}}\right) x_{j_{1}} x_{j_{2}} FM(w,x)=j1=1nj2=j1+1n(wj1wj2)xj1xj2

    • FM使用两个向量的内积(wj1⋅wj2)\left(w_{j_{1}} \cdot w_{j_{2}}\right)(wj1wj2)取代了单一的权重系数wh(j1,j2)w_{h\left(j_{1}, j_{2}\right)}wh(j1,j2)。实际上,FM为每个特征学习了一个隐权重向量(Latent Vector),在特征交叉时使用两个特征隐向量的内积作为交叉特征的权重

    • 与POLY2对比,将参数数量从n2n^2n2降到了nknknkkkk为隐向量维度),减小了训练开销

    • 与矩阵分解中引入的隐向量有异曲同工之妙,FM中的隐向量更好地解决了数据稀疏性的问题。假设有ABABABBCBCBCACACAC三种特征组合,若只有BCBCBCACACAC出现在了样本中,那么POLY2无法学习到特征组合ABABAB的权重。FM通过对BCBCBCACACAC的学习,隐式地学习到了特征BBBAAA的隐向量,从而特征组合ABABAB的权重可以被有效计算,这是POLY2无法实现的

    • 相比POLY2,FM虽然丢失了某些具体特征组合的精确记忆能力,但是泛化能力大大提高

域感知因子分解机

Field-aware Factorization Machine, FFM

  • 数学形式

    ∅FFM⁡(w,x)=∑j1=1n∑j2=j1+1n(wj1,f2⋅wj2,f1)xj1xj2 \emptyset \operatorname{FFM}(\boldsymbol{w}, \boldsymbol{x})=\sum_{j_{1}=1}^{n} \sum_{j_{2}=j_{1}+1}^{n}\left(\boldsymbol{w}_{j_{1}, f_{2}} \cdot \boldsymbol{w}_{j_{2}, f_{1}}\right) x_{j_{1}} x_{j_{2}} FFM(w,x)=j1=1nj2=j1+1n(wj1,f2wj2,f1)xj1xj2

    • FFM引入了特征域感知(Field-aware),增强模型表达能力

    • “域”代表特征域,例如性别特征域中包含三个特征:男、女、未知。FFM为每个特征针对不同的域(注意不是针对每个特征,是针对每个特征域)引入了域感知的概念。假设有fff个特征域,则每个特征的权重数量由FM的111个增加到了fff个,所以隐向量数量共有n⋅fn \cdot fnf

    • 在每一对交叉特征计算时,采用交叉特征域的隐向量进行计算(选择与对方域对应的隐向量作内积)

    • FFM复杂度提升为kn2kn^2kn2

组合模型

  • FM系列模型虽然通过引入特征交叉提升了模型表达能力,但FM系列只能做到二阶交叉,如果继续提高特征交叉维度,会产生组合爆炸和计算复杂度过高的问题

GBDT + LR

  • 概述:利用GBDT自动进行特征筛选和组合,进而生成新的离散特征向量,再把该特征向量当作LR模型输入,预估CTR(有点Stacking的意思)

    在这里插入图片描述

    • GBDT构建离散特征和LR预估CTR是独立训练的

    • 回归树中每个节点的分裂是一个自然的特征选择的过程,而多层节点的结构则对特征进行了有效的自动组合

  • GBDT进行特征转换的过程

    在这里插入图片描述

    • 输入样本(特征向量)后,在每个子树分别落入叶节点,将落入的叶节点位置置1,其余置0,将每个子树的离散向量拼接起来即为GBDT得到的离散特征向量

    • 其实决策树的深度决定了特征交叉的阶数,经过三次节点分裂其实就是进行了三阶特征交叉。这种特征组合能力是FM不具备的

    • 但GBDT容易过拟合,且这种特征转换方式丢失了大量特征的数值信息

一、机器学习推荐系统课程简介伴随着大数据时代的到来,作为发掘数据规律的重要手段,机器学习已经受到了越来越多的关注。而作为机器学习算法在大数据上的典型应用,推荐系统已成为各行业互联网公司营销体系中不可或缺的一部分,而且已经带来了真实可见的收益。目前,推荐系统机器学习已经成为各大公司的发力重点,众多知名公司(如亚马逊、netflix、facebook、阿里巴巴、京东、腾讯、新浪、头条等)都在着眼于将蕴含在庞大数据中的宝藏发掘出来,懂机器学习算法的大数据工程师也成为了新时代最紧缺的人才。尚硅谷精心打造出了机器学习推荐系统课程,将机器学习理论与推荐系统项目实战并重,对机器学习推荐系统基础知识做了系统的梳理和阐述,并通过电影推荐网站的具体项目进行了实战演练。为有志于增加大数据项目经验、扩展机器学习发展方向的工程师提供最好的学习平台。二、课程内容和目标本课程主要分为两部分,机器学习推荐系统基础,与电影推荐系统项目实战。第一部分主要是机器学习推荐系统基础理论的讲解,涉及到各种重要概念和基础算法,并对一些算法用python做了实现;第二部分以电影网站作为业务应用场景,介绍推荐系统的开发实战。其中包括了如统计推荐、基于LFM的离线推荐、基于模型的实时推荐、基于内容的推荐等多个模块的代码实现,并与各种工具进行整合互接,构成完整的项目应用。通过理论和实际的紧密结合,可以使学员对推荐系统这一大数据应用有充分的认识和理解,在项目实战中对大数据的相关工具和知识做系统的回顾,并且可以掌握基本算法,入门机器学习这一前沿领域,为未来发展提供更多的选择,打开通向算法工程师的大门。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值