首页 > 解决方案 > 如何手动将权重设置为 keras 中默认权重的输入特征?

问题描述

我从每个时代获取默认权重。对于现有权重,我必须用手动选择的权重替换以前的权重。如何为每个时代设置权重?

classifier = Sequential()
classifier.add(Dense(output_dim = 100, activation = 'relu', input_dim = 8))
classifier.add(Dense(output_dim = 50, activation = 'relu', input_dim = 5))
classifier.add(Dense(output_dim = 1 , activation = 'sigmoid'))
print_weights = LambdaCallback(on_epoch_end=lambda batch, logs: print(classifier.layers[0].get_weights()))
classifier.compile(loss='binary_crossentropy',optimizer='adam',metrics = ['accuracy'])
classifier.fit(x_train,y_train,batch_size=100,nb_epoch=10,validation_data=(x_test, y_test),callbacks = [print_weights])

标签: pythonmachine-learningkerasdeep-learning

解决方案


尝试train_on_batch在循环中使用而不是fit手动layer.set_weights(weights)设置权重。


推荐阅读