基本形式
MLR模型是阿里巴巴12年提出(17年发表)点击率预估模型,它利用分段方式对数据进行拟合,相比LR模型,能够学习到更高阶的特征组合。其基本表达式如下
p(y=1∣x)=g(j=1∑mσ(ujTx)η(wjTx))(1)该模型的参数为Θ={u1,⋯,um,w1,⋯,wm}∈Rd×2m
σ(⋅)为分段函数,其参数为{u1,⋯,um}
η(⋅)为拟合函数,其参数为{w1,⋯,wm}
u和w都是d维的向量,d为特征的维度,即每个特征都有对应的两个权重
g是可以理解为**函数,将模型结果变成需要的形式,比如分类问题中变成概率。
该预测函数包含两个部,首先通过σ(ujTx)将当前特征分到m个不同的区域中,再用η(wjTx)函数进行预测,最终将这m个结果进行求和。如图所示,相当于先把数据映射到两个部分,再将这两个部分融合到一起。

论文指出对于LR模型不能正确分类的数据,MLR能够有较好的效果

特例形式
当σ(x)为softmax,η(x)为sigmoid,g(x)为x是,(1)式可以写成:
p(y=1∣x)=i=1∑m∑j=1mexp(ujTx)exp(uiTx)⋅1+exp(−wiTx)1
目标函数
目标函数如公式(2)所示
argΘminf(Θ)=loss(Θ)+λ∥Θ∥2,1+β∥Θ∥1(2) loss(Θ)根据不同场景下不同,比如二分类用交叉熵作为损失函数:
loss(Θ)=−t=1∑n[ytlog(p(yt=1∣xt,Θ))+(1−yt)log(p(yt=0∣xt,Θ))]
后面为正则项,其中
∥Θ∥1=∑ij∣θij∣是对每个参数的L1正则,保证所有参数的稀疏性;
∥Θ∥2,1=∑i=1d∑j=12mθij2是对L2正则的L1正则,根号里面是对某个特征的2m个参数的L2正则,外面是L1,这样是为了保证特征的稀疏性,做feature selection。
正则部分相当于对整体参数和按照特征分组的参数分别做了正则,既在最细粒度上筛选参数也在较粗的粒度上筛选特征。
例子
可参考 https://github.com/jkingfu/mlr/blob/master/model_mlr.py