如何使用tf作为theano从keras层编辑权重

时间:2016-09-06 15:32:58

标签: machine-learning tensorflow deep-learning theano keras

我有以下代码,在创建图层时使用Keras和Theano:

net.add(Dense(outdim))
Wlast = net.layers[-1].W
Wlast.set_value(Wlast.get_value(borrow=True) * 0.1)

TF有适当的转换吗?我试试这个:

net.add(Dense(outdim))
Wlast = net.layers[-1].W
K.set_value(Wlast, K.get_value(Wlast) * 0.1)

# before it I do some import and set session: 
# from Keras import backend as K
# K.set_session(session)

但我不确定这项工作是否适当......

Cuz我使用这一层作为概率输出: - 在Theano版本中,范围[-1,-1]中的概率向量 - 从另一方面来说,如果我使用这个Keras代码,概率偏差大于1(如果我手动减少这些输出权重0.1 - 概率分布变得与Theano密切相关)

1 个答案:

答案 0 :(得分:0)

正确的解决方案是使用Keras的lambdas,例如:

net.add(Dense(outdim))
net.add(Lambda(lambda x: x * 0.1))