浅谈keras的深度模型训练过程及结果记录方式


Posted in Python onJanuary 24, 2020

记录训练过程

history=model.fit(X_train, Y_train, epochs=epochs,batch_size=batch_size,validation_split=0.1)

将训练过程记录在history中

利用时间记录模型

import time
model_id = np.int64(time.strftime('%Y%m%d%H%M', time.localtime(time.time())))
model.save('./VGG16'+str(model_id)+'.h5')

保存模型及结构图

from keras.utils import plot_model
model.save('/opt/Data1/lixiang/letter_recognition/models/VGG16'+str(model_id)+'.h5')
plot_model(model, to_file='/opt/Data1/lixiang/letter_recognition/models/VGG16'+str(model_id)+'.png')

绘制训练过程曲线

import matplotlib.pyplot as plt
fig = plt.figure()#新建一张图
plt.plot(history.history['acc'],label='training acc')
plt.plot(history.history['val_acc'],label='val acc')
plt.title('model accuracy')
plt.ylabel('accuracy')
plt.xlabel('epoch')
plt.legend(loc='lower right')
fig.savefig('VGG16'+str(model_id)+'acc.png')
fig = plt.figure()
plt.plot(history.history['loss'],label='training loss')
plt.plot(history.history['val_loss'], label='val loss')
plt.title('model loss')
plt.ylabel('loss')
plt.xlabel('epoch')
plt.legend(loc='upper right')
fig.savefig('VGG16'+str(model_id)+'loss.png')

文件记录最终训练结果

logFilePath = './log.txt'
fobj = open(logFilePath, 'a')
fobj.write('model id: ' + str(model_id)+'\n')
fobj.write('epoch: '+ str(epochs) +'\n')
fobj.write('x_train shape: ' + str(X_train.shape) + '\n')
fobj.write('x_test shape: ' + str(X_test.shape)+'\n')
fobj.write('training accuracy: ' + str(history.history['acc'][-1]) + '\n')
fobj.write('model evaluation results: ' + str(score[0]) + ' ' +str(score[-1])+'\n')
fobj.write('---------------------------------------------------------------------------\n')
fobj.write('\n')
fobj.close()

以字典格式保存训练中间过程

import pickle
file = open('./models/history.pkl', 'wb')
pickle.dump(history.history, file)
file.close()

以上这篇浅谈keras的深度模型训练过程及结果记录方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python实现猜数字游戏(无重复数字)示例分享
Mar 29 Python
python类继承用法实例分析
Oct 10 Python
Python脚本实现DNSPod DNS动态解析域名
Feb 14 Python
python使用cStringIO实现临时内存文件访问的方法
Mar 26 Python
python实现读取命令行参数的方法
May 22 Python
Python的Django应用程序解决AJAX跨域访问问题的方法
May 31 Python
python代码 if not x: 和 if x is not None: 和 if not x is None:使用介绍
Sep 21 Python
Python模块结构与布局操作方法实例分析
Jul 24 Python
Python之多线程爬虫抓取网页图片的示例代码
Jan 10 Python
django框架模型层功能、组成与用法分析
Jul 30 Python
pygame用blit()实现动画效果的示例代码
May 28 Python
Python用access判断文件是否被占用的实例方法
Dec 17 Python
关于Keras模型可视化教程及关键问题的解决
Jan 24 #Python
基于keras 模型、结构、权重保存的实现
Jan 24 #Python
Python 文件数据读写的具体实现
Jan 24 #Python
利用keras加载训练好的.H5文件,并实现预测图片
Jan 24 #Python
keras模型可视化,层可视化及kernel可视化实例
Jan 24 #Python
keras 特征图可视化实例(中间层)
Jan 24 #Python
基于keras输出中间层结果的2种实现方式
Jan 24 #Python
You might like
Zend Studio 实用快捷键一览表(精心整理)
2013/08/10 PHP
Symfony的安装和配置方法
2016/03/17 PHP
PHP hex2bin()函数用法讲解
2019/02/25 PHP
Thinkphp 框架配置操作之配置加载与读取配置实例分析
2020/05/15 PHP
WordPress伪静态规则设置代码实例
2020/12/10 PHP
jQuery中文入门指南,翻译加实例,jQuery的起点教程
2007/01/13 Javascript
input 输入框内的输入事件详细分析
2010/03/17 Javascript
Javascript 设计模式(二) 闭包
2010/05/26 Javascript
从数据结构分析看:用for each...in 比 for...in 要快些
2013/04/17 Javascript
jQuery之尺寸调整组件的深入解析
2013/06/19 Javascript
js中通过父级进行查找定位元素
2014/06/15 Javascript
jQuery实现简单网页遮罩层/弹出层效果兼容IE6、IE7
2014/06/16 Javascript
jQuery+css实现的tab切换标签(兼容各浏览器)
2016/01/28 Javascript
JavaScript的instanceof运算符学习教程
2016/06/08 Javascript
Js apply方法详解
2017/02/16 Javascript
React 组件中的 bind(this)示例代码
2018/09/16 Javascript
vue实现鼠标移入移出事件代码实例
2019/03/27 Javascript
vue自定义组件(通过Vue.use()来使用)即install的用法说明
2020/08/11 Javascript
[07:40]DOTA2每周TOP10 精彩击杀集锦vol.4
2014/06/25 DOTA
在Python中执行系统命令的方法示例详解
2017/09/14 Python
PyCharm中代码字体大小调整方法
2019/07/29 Python
python matplotlib库直方图绘制详解
2019/08/10 Python
Python统计学一数据的概括性度量详解
2020/03/03 Python
pycharm设置默认的UTF-8编码模式的方法详解
2020/06/01 Python
基于python实现ROC曲线绘制广场解析
2020/06/28 Python
时装界的“朋克之母”:Vivienne Westwood
2017/07/06 全球购物
澳大利亚最大的百货公司:Myer
2018/12/21 全球购物
荷兰网上药店:Drogisterij.net
2019/09/03 全球购物
超市营业员求职简历的自我评价
2013/10/17 职场文书
政法大学毕业生自荐信范文
2014/01/01 职场文书
2014年小学英语教师工作总
2014/12/03 职场文书
2014年乡镇纪委工作总结
2014/12/19 职场文书
大学生求职自荐信
2015/03/24 职场文书
村级干部党员公开承诺事项
2015/05/04 职场文书
python爬取网页版QQ空间,生成各类图表
2021/06/02 Python
插件导致ECharts被全量引入的坑示例解析
2022/09/23 Javascript