推荐系统之deepfm模型

本文介绍了从传统机器学习模型如LR、FM到深度学习模型如Wide&Deep、DeepFM的发展历程。重点解析DeepFM模型,它由FM层和Deep层组成。FM层处理field和feature的关系,Deep层则是一个简单的DNN。文中还讨论了模型参数、输入处理和维度计算,并提出了在多-hot问题和模型迁移上的思考。
摘要由CSDN通过智能技术生成

    一般国内涉及到推荐模型的公司,发展历程为传统机器学习LR-->FM到深度学习wide&deep、deepfm、DCN...这些。目前我所在的公司采用的是online fm模型,准备向深度学习进军,所以最近也是在调研一些工业界用的比较多的模型,以此记录一下学习历程,因为自己本身对tensorflow不是很熟悉,一些看似简单的模型架构实现起来很困难(说到底就是线性代数学的差,矩阵维度傻傻算不清楚),所以博主准备从模型维度出发全面瓦解模型思想。

    如果你足够了解fm模型,那么deepfm也就非常简单了,他主要分为两部分

模型所需的参数

  • field_size(field数):F
  • feature_size(特征维度):M
  • hidden_factor(隐藏因子数):K
  • batch_size(每批次训练样本数):B(None)

构建的原始权重参数

  • feature_embeddings:[M,K]
  • feature_bias:[M,1]

    1.fm layer

    首先要弄清楚field size和feature size的概念和区别,在对于category特征时,例如特征sex列,有(man,woman,null)三个特征值,那么我们一般要先将特征one-hot一下为三个特征列,若某个用户性别时男,那么他的表示就是(1,0,0),女就是(0,1,0),以此递推null就是(0,0,1),那么性别这个特征就是一个field,他的feature size就是3个(男,女,null)。所

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值