DeepFM调参总结

一、结论

  1. 使用id类特征效果很好,很重要
  2. dropout对模型性能影响较大
  3. dnn层数对模型性能影响大
  4. 同样数据特征的情况下,deepfm比lr在AUC(ROC)的效果好0.02~0.03
  5. 只使用id类特征(用户id,物品id)比使用全部特征(包含用户id,物品id)的AUC值差0.005左右,但是训练速度和预测速度大幅度提升。

二、应用场景

2.1 指标选择

应用deepfm和lr模型的目的是给召回阶段的候选集合排序,故选择AUC为模型离线评测的指标。同时关注loss的变化情况。

2.2 数据情况

  1. 此实验对数据集是推荐领域对用户曝光和点击的数据。
  2. 模型的训练集是前2天到n天的数据(n可以调整)
  3. 模型的验证集是前1天的数据

三、实验数据

默认参数:epoch=1;optimizer=adam;loss=cross entropy;batch=256;

实验id特征embedding(隐向量)dnn结构dropoutAUCloss
1uid,itemid10dnn=(128,128)0AUC=0.731loss=1.18
2uid,itemid2dnn=(128,128)0AUC=0.733loss=1.12
3uid,itemid4dnn=(128,128)0AUC=0.731loss=1.08
4uid,itemid3dnn=(128,128)0.85AUC=0.746loss=1.17
5uid,itemid3dnn=(128,128)0.65AUC=0.736loss=1.11
6uid,itemid3dnn=(256,256)0.85AUC=0.744loss=1.07
7uid,itemid3dnn=(64,64)0.85AUC=0.745loss=1.24
8uid,itemid3dnn=(64,64,64)0.85AUC=0.770loss=0.667
9uid,itemid3dnn=(128,128,128)0.85AUC=0.772loss=0.800

结合训练时间,性能等实际情况,最优等参数如下:

特征: uid,itemid
embedding:3
dnn结构:(128,128,128)
dropout:0.85

四、实验思考

  1. 不同等应用场景,模型的性能指标应该有所差异
  2. 数据分布不一致对模型有怎样对影响
  3. 在推荐场景中,训练和验证数据是否应该排除top数据
  4. 还有哪些特征对排序模型有较大的用处(统计类特征)
  5. 为什么仅仅使用id类特征能够有较好的效果?
  6. 怎样在深度学习网络中快速调参(正好看到一篇论文)
    https://arxiv.org/pdf/2006.06863.pdf
  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
DeepFM模型调参需要注意以下几点: 1. 学习率(learning rate):学习率控制模型参数更新的速度,在训练过程中需要适当调整学习率大小,过小可能导致收敛速度慢,过大可能导致无法收敛。 2. 正则化(regularization):正则化可以防止模型过拟合,可以使用L1正则化和L2正则化来约束模型参数。 3. Embedding维度(embedding dimension):Embedding维度表示将高维离散特征映射到低维稠密向量的维度,需要根据数据的稀疏程度和特征的重要性进行调整。 4. Batch大小(batch size):Batch大小表示每次迭代使用的样本数量,过小可能导致梯度估计不准确,过大可能导致内存不足。通常需要根据数据量和计算资源进行选择。 5. 迭代次数(epoch):迭代次数表示模型训练的轮数,需要根据模型在验证集上的性能进行选择,避免过拟合或欠拟合。 6. 激活函数(activation function):DeepFM模型中的DNN部分使用了多个隐藏层,每个隐藏层都可以选择不同的激活函数,常用的有ReLU、Sigmoid和Tanh等。不同的激活函数对模型的性能有影响,需要进行尝试和比较。 7. Dropout:Dropout可以在训练过程中随机丢弃一些神经元,以减少过拟合的风险。可以尝试不同的Dropout概率来优化模型性能。 8. 批标准化(Batch Normalization):批标准化可以加速模型训练,提高模型的收敛速度,并且有一定的正则化效果。需要根据模型表现进行选择是否使用批标准化。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值