我是theano的新手所以也许这是一个简单的问题。 如果我有一个功能
f = theano.function(
inputs=[x],
outputs=[y],
updates=update)
和y取决于我想用
更新的ww = w + tr_rate * (pos_associations-neg_associations)
我可以写
wparameters = [w]
update = [(wparam,
wparam + tr_rate * (pos_associations-neg_associations)) for wparam in wparameters]
它将使用更新规则更新函数f。
但是如果y依赖于另一个变量,比如z,我想用其他规则更新,比如说
z = z + tr_rate*(x - vis)
如何将两个规则组合在一起?
答案 0 :(得分:0)
update += [(z, z + tr_rate*(x - vis))]
这有用吗?
答案 1 :(得分:0)
我找到了自己的答案,如果它可以帮助其他人,我会发布它。 您可以创建变量更新,然后使用.append函数来定义新规则。
所以,而不是
wparameters = [w]
update = [(wparam,
wparam + tr_rate * (pos_associations-neg_associations)) for wparam in wparameters]
您可以附加新规则并写下:
wparameters = [w]
zparameters = [z]
update = []
for wparam, zparam in zip(wparameters, bparameters):
update.append((wparam, wparam + tr_rate*(pos_associations - neg_associations)))
update.append((zparam, zparam + tr_rate*(x - vis))