因子分解机(Factorization machine,FM),DIFM模型

本文涉及的产品
交互式建模 PAI-DSW,5000CU*H 3个月
模型在线服务 PAI-EAS,A10/V100等 500元 1个月
模型训练 PAI-DLC,5000CU*H 3个月
简介: 因子分解机(Factorization machine,FM),DIFM模型

因子分解机(Factorization machine,FM)



已经被成功地应用于各种推荐系统中。同时,许多的研究工作聚焦于从特征交互角度来提升FM模型的效果,如DeepFM将FM和DNN进行结合,建模特征之间的二阶和高阶交互,AFM通过引入attention思想,建模不同特征交互的重要性。


但是上述工作忽略了样本的独特性,举例来说,当样本是<青少年,女性,学生,喜欢粉色>,预测是否会点击<连衣裙>,此时女性这个特征会起到较为关键的作用;当样本是<青少年,女性,学生,喜欢蓝色>,预测是否会点击<笔记本>,此时女性这个特征就相对来说没有那么重要。因此,同一个特征在不同样本中应该被赋予不同的重要程度以更好地反映其具体贡献。


下图是IFM的模型结构:


image.png



其中,FEN结构如下:


image.png


在IFM中,使用DNN结构来计算input-aware factors,这种方式是bit-wise level的,也就是说,特征的embedding的不同元素之间会相互影响;另一方面,在CTR预估领域,使用NN网络来学习input-aware factors是否是最有效的,这一点也有待商榷。


本文在IFM的基础上,在网络中加入了transformer,进一步在vector-wise level学习input-aware factors,提出了Dual Input-aware Factorization Machine (DIFM)。Dual这里我们翻译为双重,意思是既包括bit-wise的建模,又包括vector-wise的建模。接下来,一起来看一下DIFM网络结构。


DIFM模型



DIFM的结构如下图所示:


image.png

接下来,按照从下到上的顺序,依次介绍模型的几个部分:


1 Sparse Input and Embedding Layer:稀疏输入和嵌入层


假设输入样本中有h个域,每个域中只有一位取值为1,其余取值为0,那么经过embeding层,共得到h个长度为k的embedding向量。将这些向量转置后横向拼接,得到Ex:


image.png


2 Dual-Factor Estimating Networks (Dual-FEN) Layer:双因子估计网络 (Dual-FEN) 层


这一层也是论文的主要创新点所在,其结构如下,主要包含vector-wise part和bit-wise part。


vector-vise part

vector-vise part主要借鉴transformer中encoder的block结构,其结构如下:


image.png


首先,针对embedding layer的输出Ex,首先reshape为h*k的矩阵:


image.png


随后,分别经过Multi-Head Self Attention和Residual Network得到两部分输出,同transformer的block结构,论文也加入了Residual Network部分来保存原始embedding向量的有效信息。具体地,Multi-Head Self Attention的计算过程如下:


image.png

image.png

image.png


而Residual Network的计算如下:


image.png


随后两部分进行对位相加,并经过激活函数激活,得到vector-wise part的输出,计作Ovec。


bit-wise part

bit-wise part同IFM,其结构如下,输入为Ex,经过多层全连接网络,输出计作Obit:

image.png


Combination Layer


这一层主要是将vector-wise part和bit-wise part的输出进行结合,但二者输出维度不相同,需要通过矩阵分别转化为长度为h的向量:


image.png


随后,二者进行对位相加:


image.png


Reweighting Layer


经过Combination Layer得到输出mx,就可以对样本每个特征的一次项权重和embedding向量进行refine,计算公式如下:


image.png


Prediction Layer

DIFM的预测公式如下所示:


image.png


同FM一样,DIFM在预测时,也可以对公式进行相应的化简,其结果如下:


image.png



目录
相关文章
|
6月前
|
机器学习/深度学习 运维 算法
Machine Learning机器学习之向量机(Support Vector Machine,SVM)
Machine Learning机器学习之向量机(Support Vector Machine,SVM)
|
23天前
|
机器学习/深度学习 存储 数据可视化
基于机器学习的地震预测(Earthquake Prediction with Machine Learning)(上)
基于机器学习的地震预测(Earthquake Prediction with Machine Learning)
32 0
|
23天前
|
机器学习/深度学习 存储 算法
基于机器学习的地震预测(Earthquake Prediction with Machine Learning)(下)
基于机器学习的地震预测(Earthquake Prediction with Machine Learning)
24 0
|
机器学习/深度学习 测试技术 数据库
MGM、MolGPT、PAR、Uni-Mol、K-Bert、MolCLR…你都掌握了吗?一文总结生物制药必备经典模型(2)
MGM、MolGPT、PAR、Uni-Mol、K-Bert、MolCLR…你都掌握了吗?一文总结生物制药必备经典模型
237 0
|
机器学习/深度学习 人工智能 自然语言处理
MGM、MolGPT、PAR、Uni-Mol、K-Bert、MolCLR…你都掌握了吗?一文总结生物制药必备经典模型(1)
MGM、MolGPT、PAR、Uni-Mol、K-Bert、MolCLR…你都掌握了吗?一文总结生物制药必备经典模型
203 0
|
机器学习/深度学习 人工智能 搜索推荐
Wide&Deep、DCN、xDeepFM、DIN、GateNet、IPRec…你都掌握了吗?一文总结推荐系统必备经典模型(三)(3)
Wide&Deep、DCN、xDeepFM、DIN、GateNet、IPRec…你都掌握了吗?一文总结推荐系统必备经典模型(三)
302 0
|
机器学习/深度学习 搜索推荐
Wide&Deep、DCN、xDeepFM、DIN、GateNet、IPRec…你都掌握了吗?一文总结推荐系统必备经典模型(三)(2)
Wide&Deep、DCN、xDeepFM、DIN、GateNet、IPRec…你都掌握了吗?一文总结推荐系统必备经典模型(三)
243 0
|
机器学习/深度学习 搜索推荐 算法
Wide&Deep、DCN、xDeepFM、DIN、GateNet、IPRec…你都掌握了吗?一文总结推荐系统必备经典模型(三)(1)
Wide&Deep、DCN、xDeepFM、DIN、GateNet、IPRec…你都掌握了吗?一文总结推荐系统必备经典模型(三)
209 0
|
机器学习/深度学习 编解码 固态存储
RRC detection、CornerNet、M2Det、FOCS…你都掌握了吗?一文总结目标检测必备经典模型(1)
RRC detection、CornerNet、M2Det、FOCS…你都掌握了吗?一文总结目标检测必备经典模型
120 0
|
人工智能 搜索推荐 API
RRC detection、CornerNet、M2Det、FOCS…你都掌握了吗?一文总结目标检测必备经典模型(3)
RRC detection、CornerNet、M2Det、FOCS…你都掌握了吗?一文总结目标检测必备经典模型
209 0