防止AI模型训练过程中的中断解决办法

ai模型训练中断截图

我们在进行较长期的模型训练过程中偶尔会碰到一些让我们尴尬的问题,比如意外断电,或者因为运行第三方程序导致出现的内存不足直接断开,那么这种时候我们也就只能重新再去跑一遍吗?今天刚好遇到这个问题,这里写一篇关于模型训练中断的解决办法!

AI模型训练中断
AI模型训练中断截图

因为个人电脑娱乐用的没有使用专业的GPU服务器来进行训练,今天处理其他大数据意外崩了。

其实要想修复的核心就是你在每次训练有没有使用回调函数,这个非常重要,如果训练过程中你没有对模型权重进行保存那么断开了是真没有办法。

# 回调函数

checkpoint = callbacks.ModelCheckpoint('需要保存的模型权重文件名.h5', save_best_only=True, monitor='val_loss', mode='min')

上面是模型权重保存的核心代码,然后我们在训练的时候在mode.fix中添加callbacks加入进去,这样确保及时的对权重进行保存。见下面代码

history = model.fit(X_train, y_train, epochs=50000, batch_size=512, validation_data=(X_val, y_val),callbacks=[checkpoint, stop_at_99_acc])

 如果你有上面的模型权重保存代码,那么下面开始重新编辑一个文件,然后只要加入一行代码就可以接着之前保存的模型权重继续训练了。

model.load_weights(‘需要保存的模型权重文件名.h5′)#这段代码添加到回调函数前面即可,其他不需要动,再次运行代码即可。