Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/278.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/tensorflow/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 凯拉斯:如果我在训练了几个时代之后重新编译我的模型呢_Python_Tensorflow_Keras_Neural Network_Model Fitting - Fatal编程技术网

Python 凯拉斯:如果我在训练了几个时代之后重新编译我的模型呢

Python 凯拉斯:如果我在训练了几个时代之后重新编译我的模型呢,python,tensorflow,keras,neural-network,model-fitting,Python,Tensorflow,Keras,Neural Network,Model Fitting,我有一个模型,我想用学习率=0.8对它进行几次训练,然后设置学习率=0.4并继续训练。 但由于在编译模型时设定了学习率。。。那么,如果我在几个时代之后重新编译模型/权重,会发生什么呢 下面是我的代码:p.S(我的学习率是动态的) 动态学习率回调 callbacks = [ ReduceLROnPlateau(monitor='val_age_mean_absolute_error', factor = 0.5,

我有一个模型,我想用学习率=0.8对它进行几次训练,然后设置学习率=0.4并继续训练。 但由于在编译模型时设定了学习率。。。那么,如果我在几个时代之后重新编译模型/权重,会发生什么呢

下面是我的代码:p.S(我的学习率是动态的)

动态学习率回调

callbacks = [
  ReduceLROnPlateau(monitor='val_age_mean_absolute_error', 
                    factor = 0.5, 
                    patience = 7,
                    min_delta = 0.01, 
                    cooldown = 2,
                    min_lr = 0.0001,
                    mode = 'min')
]
训练

epochs=35
history = models.fit(train_gen, steps_per_epoch=len(trainset) / batch_size, epochs=epochs, callbacks=callbacks, validation_data=validation_gen, validation_steps=len(testset) / batch_size * 3)

重新编译模型时,权重将重置为“随机”


所以你应该使用
模型保存权重。保存权重('weights.h5')
然后编译模型,然后加载权重
模型。加载权重('weights.h5')

我的发现:当我用lr=0.8训练少数EOPCH时,然后用lr=0.4重新编译并开始训练。。。。我的模型没有更大的改进。
epochs=35
history = models.fit(train_gen, steps_per_epoch=len(trainset) / batch_size, epochs=epochs, callbacks=callbacks, validation_data=validation_gen, validation_steps=len(testset) / batch_size * 3)