BSP*_*BSP 6 neural-network deep-learning keras tensorflow
我正在研究如何在图层中设置自定义权重。
下面是我使用的代码
batch_size = 64
input_dim = 12
units = 64
output_size = 1 # labels are from 0 to 9
# Build the RNN model
def build_model(allow_cudnn_kernel=True):
lstm_layer = keras.layers.RNN(
keras.layers.LSTMCell(units), input_shape=(None, input_dim))
model = keras.models.Sequential(
[
lstm_layer,
keras.layers.BatchNormalization(),
keras.layers.Dense(output_size),
]
)
return model
model = build_model()
model.compile(
loss=keras.losses.MeanSquaredError(),
optimizer="Adam",
metrics=["accuracy"],
)
model.fit(
x_train, y_train, validation_data=(x_val, y_val), batch_size=batch_size, epochs=15
)
Run Code Online (Sandbox Code Playgroud)
模型概要
谁能帮我如何在上面的代码中设置权重?提前致谢。
小智 8
您可以使用set_weights方法来做到这一点。
例如,如果您想设置 的权重,LSTM Layer可以使用以下命令访问它:model.layers[0]Custom Weightsmy_weights_matrixCustom Weights
model.layers[0].set_weights([my_weights_matrix])
Run Code Online (Sandbox Code Playgroud)
如果您不希望在训练期间修改权重,则必须使用代码冻结该层model.layers[0].trainable = False。
如果您遇到任何其他问题,请告诉我,我很乐意为您提供帮助。
希望这可以帮助。快乐学习!
| 归档时间: |
|
| 查看次数: |
2862 次 |
| 最近记录: |