首页 Paddle框架 帖子详情
Adam使用fleet.distributed_optimizer后损失完全没有下降,不使用时损失正常下降
收藏
快速回复
Paddle框架 问答深度学习模型训练 665 5
Adam使用fleet.distributed_optimizer后损失完全没有下降,不使用时损失正常下降
收藏
快速回复
Paddle框架 问答深度学习模型训练 665 5

paddle fluid 1.6版本,我的代码使用了fleet的pserver训练方式,在MPI中运行,没有在paddlecloud中运行。提前将所有数据文件平均分给50个节点。训练的时候使用了fleet.distributed_optimizer的Adam优化器,但是每个batch损失不下降。我尝试过调整学习率(1.0~1e-4)、batch_size和gradient clip(10 ~ 0.01),但是都没有效果。但是,当我不使用fleet.distributed_optimizer,直接用Adam优化时,每个batch损失下降。
所以,我应当怎样调整我的模型,还是fleet.distributed_optimizer这个方法有问题呢。

0
收藏
回复
全部评论(5)
时间顺序
AIStudio786085
#2 回复于2019-10

本地,小数据集有验证效果么? 是否能收敛?

0
回复
AIStudio784534
#3 回复于2019-11
@seiriosPlus

本地小数据集损失会不断下降。

0
回复
AIStudio784534
#4 回复于2019-11
@seiriosPlus

二分类任务,使用fleet.distributed_optimizer,打印了最终sigmoid层的输出,发现学习率从0.001改到1.0,每个batch的梯度都是1.9e-5左右,输出都是0.5左右。似乎学习率对学习过程没有影响。

0
回复
AIStudio784534
#5 回复于2019-11
@seiriosPlus

请问这个怎么解决呢?

0
回复
AIStudio786085
#6 回复于2019-11

沟通后,发现用户使用的模式错误, 已经参考文档在重新训练

0
回复
需求/bug反馈?一键提issue告诉我们
发现bug?如果您知道修复办法,欢迎提pr直接参与建设飞桨~
在@后输入用户全名并按空格结束,可艾特全站任一用户