【发布时间】:2018-07-02 15:31:38
【问题描述】:
我试图在 Keras 中设置特定层的偏差值,但我没有找到任何方法。
例如可以通过以下代码设置权重:
model.layers[-1].set_weights(weights)
有没有办法设置偏差,可以设置权重的方式(如上)?
谁能在这方面帮助我?
【问题讨论】:
标签: keras
我试图在 Keras 中设置特定层的偏差值,但我没有找到任何方法。
例如可以通过以下代码设置权重:
model.layers[-1].set_weights(weights)
有没有办法设置偏差,可以设置权重的方式(如上)?
谁能在这方面帮助我?
【问题讨论】:
标签: keras
您可以为此使用K.set_value:K.set_value(model.layers[-1].weights[1], np.ones((bias_dim,)))
请注意,当您使用set_weights 时,您必须提供一个包含权重和偏差的列表,因此如果您只想设置权重而不设置偏差,您也可以使用K.set_value。
【讨论】:
model.layers[i].weights就可以看到
您可以通过设置偏差或权重或两者的约束来做到这一点。
在每一层中都有bias_constraint和kernel_constraint,它们分别用于偏差和权重。 如果您想将偏差值设置为 1,以下是示例。
model.add(Dense(1 ,bias_constraint=tf.keras.constraints.MinMaxNorm(
min_value=1.0, max_value=1.0, rate=1.0, axis=0), activation='softmax'))
【讨论】: