【发布时间】:2018-03-17 13:10:06
【问题描述】:
我想在 tensorflow 中实现一个多任务学习框架。我目前正在实现这样的东西(伪代码)
define_reg_cost()
define_clas_cost()
reg_optimizer.(reg_learning_rate).min(reg_cost)
clas_optimizer.(clas_learning_rate).min(clas_cost)
for num_iterations:
reg_optimizer.run()
clas_optimizer.run()
这对我来说似乎不是正确的方法。 我有两个损失函数,我想学习权重,以在同一个优化器中以不同的学习率最小化这两个损失。 我基本上希望梯度优化器做这样的更新:
weight_updated = 权重 - learning_rate_1 * d(loss1)/dw - learning_rate_2 * d(loss2)/dw
关于如何做到这一点的任何提示(可能使用 optimizer.apply_gradients())?
【问题讨论】:
-
您可以通过重新实现“最小化”来摆脱 2 个优化器,从而允许多个学习率。看看:stackoverflow.com/questions/34945554/…
标签: python-3.x tensorflow deep-learning