• 推荐系统-CTR-FM


    FM简介

    解决的问题:

    1、特征组合问题

      传统的特征组合是在原始特征的基础上进行横向和纵向的分析,尽管对模型的准确率有一定的提高,但是由于人为组合的成分比较多,且人脑的存储和精力有限,还是不能很好的挖掘特征间的深层关系。
      FM(Factor Machine)因子分解机,因子分解机在对特征进行组合时,不仅考虑了特征间的线性组合,还考虑了特征间的交叉组合。

    2、数据稀疏问题

      数据稀疏问题主要是由,对原始特征进行one-hot编码造成的。数据稀疏对模型训练的影响:一个是训练时间长;另一个是模型准确率不高。
      FM在进行特征组合之前,要对稀疏数据进行Embedding处理,Embedding可以将one-hot编码之后的数据统一到相同的维度。这是一个由高维稀疏向低维稠密的转变。

    一、FM的网络结构图

    二、FM的网络结构介绍

    1、Sparse Features

      Input:Field 1......Field N是对原始数据进行one-hot编码以后的数据,所以数据比较稀疏。

    2、Dense Embeddings

    Embedding的网络结构图


      将Sparse Features部分的输出输入到Embedding层,可将高维稀疏数据转化为低维稠密的数据。这样相当于变相的提取Sparse Features中的重要特征。
      Embedding层的特点:1、尽管输入特征的长度不同,但是输出的长度都一样;2、Embedding层的参数其实是全连接的Weights。

    3、FM Layer

      FM Layer的输入包括:Sparse Features部分的输出和Dense Embeddings层的输出。
      FM Layer的输出包括Inner Product(内积)和Sparse Features部分的输出的线性变换。
    FM的公式:

    进一步展开


    内积举一个简单的例子:



    下面对非线性部分的公式进行化简。

    化简后该部分的复杂度由O(knn)变为O(k*n)。
    非线性部分的化简主要利用的原理是:

    4、Output Units

    Reference

    https://xueshu.baidu.com/usercenter/paper/show?paperid=b4073416c77339fb66794106f1543955&site=xueshu_se

  • 相关阅读:
    [STL]string类型的getline函数
    win10热键体验
    二分查找
    时间复杂度和空间复杂度分析
    url中?的作用
    结构体的使用
    【学CG系列】web之审查元素
    STL——翻转字符串
    8.17积累(杂)
    input开关按钮
  • 原文地址:https://www.cnblogs.com/wisteria68/p/13470331.html
Copyright © 2020-2023  润新知