如何在Theano中合并两个更新?

时间:2017-06-05 06:07:53

标签: theano

例如,我将成本函数最小化:J = J1 + a*J2。为了计算J1,我使用theano.scan返回一个更新对象(让我们称之为update1),为扫描函数中涉及的共享变量指定更新规则。然后我使用T.grad来计算J1的渐变。同样,我使用theano.scan计算J2,它返回另一个更新对象(让我们称之为update2)。我的问题是如何将这两个更新合并为一个更新,以便我可以使用该单个更新规则来实现梯度下降?

谢谢。

p / s:如果问题不明确,我会尝试添加更多细节。

1 个答案:

答案 0 :(得分:0)

对于那些仍对此问题感兴趣的人,这是一个简单的答案。

updates = update1
for var in update2:
    updates[var] = update2[var]