【发布时间】:2020-03-15 20:03:49
【问题描述】:
有人告诉我这种类型的实验。 第一步是训练一个 CNN 并保持权重,第二步是使用这些权重来重新训练这个 CNN,但这一次是向你的训练集添加更多数据(微调)。
我想这有点像迁移学习,但需要训练 CNN。 有没有办法在训练 CNN 之前选择权重并将这些选择的权重归档?
所以到目前为止我所做的是训练我的 CNN 模型并将权重保存到 h5 文件中,代码如下
model.compile(loss='categorical_crossentropy', optimizer=opt,metrics=['accuracy'])
validation_data=(x_testcnn, y_test))
checkpoint_path= 'scratchmodel.best.h5'
save_dir = os.path.join(os.getcwd(), 'weights')
cp_callback = tf.keras.callbacks.ModelCheckpoint(filepath=checkpoint_path,
save_weights_only=True,
verbose=1)
cnnhistory=model.fit(x_traincnn,
y_train,
batch_size=16,
epochs=400,
validation_data=(x_testcnn,y_test),
callbacks=[cp_callback])
现在我想用相同的权重重新训练相同的 CNN,但这次将数据添加到训练集中。 有没有办法做到这一点? 感谢您的帮助。
【问题讨论】:
-
请说明您到目前为止所尝试的内容,以及您遇到的具体问题。请不要将整个问题转嫁给其他人来解决。
-
谢谢,我尽量说清楚了
-
在文档中找不到这些信息吗?
-
我还没有找到任何关于它的信息
标签: python conv-neural-network