美文网首页
论文笔记之DeepFM: A Factorization-Mac

论文笔记之DeepFM: A Factorization-Mac

作者: 小弦弦喵喵喵 | 来源:发表于2020-06-08 17:19 被阅读0次

    DeepFM: A Factorization-Machine based Neural Network for CTR Prediction

    目标:CTR预估
    文中指出以前的CTR预估模型仅考虑low-order的特征交互或者仅考虑high-order的特征交互,或者需要手工设计特征。文中提出了DeepFM来同时学习low-order和high-order的特征交互,并且不需要手工设计特征。

    DeepFM

    DeepFM由两部分组成,FM部分和deep部分,它们共享相同的输入。
    对于每个特征i,有标量wi来描述它的重要性,有隐向量Vi来描述它和其他特征交互的影响。
    把Vi输入到FM部分中来对order-2的特征交互建模,把Vi输入到deep部分中来对high-order的特征交互建模。
    所有参数包括wi,Vi以及deep网络中的W(l),b(l)由组合后的模型共同训练(jointly train)。

    其中yFM是FM部分的输出,yDNN是deep部分的输出。

    FM Component

    图中的黑线对应<w,x>,表示特征本身的重要性。Inner Product units反应了order-2特征交互的影响。

    Deep Component

    对于embedding层,文中强调:
    1)不同的input field的向量长度可以是不同的,但它们的embedding长度都是k。
    2)FM中的隐向量V用来作为输入层到embedding层的权重。
    文中指出了这里FM隐向量V的用法和FNN中是不同的。FNN中先训练一个FM,再把其隐向量放入网络中作为初始化权重。而deepFM中,FM直接就是整个模型的一部分,是和deep部分一起学习得到的。
    embedding层的输出记为:

    ei表示第i个域的embedding,m是域的数量。
    把a(0)输入网络中,做前向传播

    最后输入到sigmoid函数中,

    值得注意的是FM模块和deep模块共享一个feature embedding,这带来了两个优点:
    1)学习到了原始特征的low-order和high-order特征交互。
    2)不需要对输入做专门的特征工程。

    Relationship with the other Neural Networks

    这一部分将DeepFM和其他的一些模型进行比较。
    FNN:FNN通过单独训练一个FM模型来做初始化。引入FM预训练的策略带来了两个限制:1)embedding的参数可能被FM过度影响。2)pre-training的引入会影响模型的效率。
    并且FNN仅仅捕捉了high-order的特征交互。相比之下,DeepFM不需要预训练,并且同时学习了high-order和low-order的特征交互。

    PNN:为了捕捉high-order的特征交互,PNN在embedding layer和第一个hidden layer之间加上了product layer。根据不同的product操作,有IPNN、OPNN和PNN。IPNN基于向量的inner product,OPNN基于outer product,PNN同时基于inner product和outer product。
    PNN忽略了low-order的特征交互。

    Wide & Deep
    Wide&Deep同时考虑了low-order和high-order的特征交互,然而需要做一些特征工程。

    总结

    相关文章

      网友评论

          本文标题:论文笔记之DeepFM: A Factorization-Mac

          本文链接:https://www.haomeiwen.com/subject/kjnrtktx.html