推荐系统 FM因式分解
创始人
2024-06-01 04:13:39
0

reference:知乎 FM算法解析

  • LR算法没有二阶交叉
    在这里插入图片描述
    如果是id类特征,这里的x是0/1,raw的特征输入就是float,当然,在我的理解里,一般会把raw的特征进行分桶,还是映射到0/1特征,不然这个wiw_iwi​的功能也太重了…?(想想其实是没有道理的)

其实为什么常把连续值的变量进行分桶,我也不是很清楚… 只是大家都这么干…似乎效果会更好

  • poly2算法引入二阶交叉
    二阶交叉能提升模型的表达能力(辛普森悖论)
    先进行特征的笛卡尔积,然后在赋予这个笛卡尔积各值一个权重。举例:

    3个特征分别是:

    • f1国家( 候选集为{中国,美国,加拿大} )
    • f2性别( 候选集为{男,女} )
    • f3人群( 候选集为{青年,中年,老年} )

    poly2算法就是先对特征进行笛卡尔积获得交叉特征,然后在交叉特征的基础上做LR,所以在此时会生成三个新二阶特征

    • f1f2国家x性别( 候选集为{中国男,中国女,美国男,美国女,加拿大男,加拿大女} )
    • f1f3国家x人群( 候选集为{中国青年,中国中年,中国老年,美国青年,美国中年,美国老年,加拿大青年,加拿大中年,加拿大老年} )
    • f2f3性别x人群( 候选集为{男青年,男中年,男老年,女青年,女中年,女老年} )。

    可以看到,此时二阶特征的候选集就一下子大了很多,每一个候选项都会对应一个权重(当特征为1的时候,该权重生效;特征为0的时候,权重就不生效,也不会得到反向传播的梯度进行自我更新),所以此时二阶交叉特征的权重变成了6+9+6=21个(一阶特征的权重有3+2+3=8个)。我举的例子中一阶特征候选集不大,但实际中一阶特征候选集是会比较大的(也就是常说的特征稀疏),比如类目特征可能就有几百上千维,再和另一个比较稀疏的特征进行笛卡尔积,二阶交叉特征的权重数量就会陡增,同时也因为两个稀疏特征的共现概率更低了,所以训练收敛难度会更高。

  • FM进行计算简化

    • 先将特征映射成稠密的隐向量,可以理解为one-hot的候选集映射到一个embedding-lookup table中
    • 复杂度分析
      • 参数量复杂度
      • 计算时间复杂度 O(kn2)O(kn^2)O(kn2) --> O(kn)O(kn)O(kn)
  • 其实现在大部分的W&D的模型里面,one-hot向量映射到embedding向量的过程,就是因式分解的一个过程;wide侧的手动特征交叉则是POLY2的思想

  • 复杂度分析:

相关内容

热门资讯

喜欢穿一身黑的男生性格(喜欢穿... 今天百科达人给各位分享喜欢穿一身黑的男生性格的知识,其中也会对喜欢穿一身黑衣服的男人人好相处吗进行解...
发春是什么意思(思春和发春是什... 本篇文章极速百科给大家谈谈发春是什么意思,以及思春和发春是什么意思对应的知识点,希望对各位有所帮助,...
网络用语zl是什么意思(zl是... 今天给各位分享网络用语zl是什么意思的知识,其中也会对zl是啥意思是什么网络用语进行解释,如果能碰巧...
为什么酷狗音乐自己唱的歌不能下... 本篇文章极速百科小编给大家谈谈为什么酷狗音乐自己唱的歌不能下载到本地?,以及为什么酷狗下载的歌曲不是...
华为下载未安装的文件去哪找(华... 今天百科达人给各位分享华为下载未安装的文件去哪找的知识,其中也会对华为下载未安装的文件去哪找到进行解...
怎么往应用助手里添加应用(应用... 今天百科达人给各位分享怎么往应用助手里添加应用的知识,其中也会对应用助手怎么添加微信进行解释,如果能...
家里可以做假山养金鱼吗(假山能... 今天百科达人给各位分享家里可以做假山养金鱼吗的知识,其中也会对假山能放鱼缸里吗进行解释,如果能碰巧解...
一帆风顺二龙腾飞三阳开泰祝福语... 本篇文章极速百科给大家谈谈一帆风顺二龙腾飞三阳开泰祝福语,以及一帆风顺二龙腾飞三阳开泰祝福语结婚对应...
四分五裂是什么生肖什么动物(四... 本篇文章极速百科小编给大家谈谈四分五裂是什么生肖什么动物,以及四分五裂打一生肖是什么对应的知识点,希...
美团联名卡审核成功待激活(美团... 今天百科达人给各位分享美团联名卡审核成功待激活的知识,其中也会对美团联名卡审核未通过进行解释,如果能...