使用Keras画神经网络准确性图教程


Posted in Python onJune 15, 2020

1.在搭建网络开始时,会调用到 keras.models的Sequential()方法,返回一个model参数表示模型

2.model参数里面有个fit()方法,用于把训练集传进网络。fit()返回一个参数,该参数包含训练集和验证集的准确性acc和错误值loss,用这些数据画成图表即可。

如:

history=model.fit(x_train, y_train, batch_size=32, epochs=5, validation_split=0.25) #获取数据
 
#########画图
acc = history.history['acc']  #获取训练集准确性数据
val_acc = history.history['val_acc'] #获取验证集准确性数据
loss = history.history['loss']   #获取训练集错误值数据
val_loss = history.history['val_loss'] #获取验证集错误值数据
epochs = range(1,len(acc)+1)
plt.plot(epochs,acc,'bo',label='Trainning acc')  #以epochs为横坐标,以训练集准确性为纵坐标
plt.plot(epochs,val_acc,'b',label='Vaildation acc') #以epochs为横坐标,以验证集准确性为纵坐标
plt.legend() #绘制图例,即标明图中的线段代表何种含义
 
plt.figure() #创建一个新的图表
plt.plot(epochs,loss,'bo',label='Trainning loss')
plt.plot(epochs,val_loss,'b',label='Vaildation loss')
plt.legend() ##绘制图例,即标明图中的线段代表何种含义
 
plt.show() #显示所有图表

得到效果:

使用Keras画神经网络准确性图教程

完整代码:

import keras
from keras.datasets import mnist
from keras.layers import Conv2D, MaxPool2D, Dense, Flatten,Dropout
from keras.models import Sequential
import matplotlib.pyplot as plt
 
(x_train, y_train), (x_test, y_test) = mnist.load_data()
x_train = x_train.reshape(-1, 28, 28, 1)
x_test = x_test.reshape(-1, 28, 28, 1)
x_train = x_train / 255.
x_test = x_test / 255.
 
y_train = keras.utils.to_categorical(y_train)
y_test = keras.utils.to_categorical(y_test)
 
model = Sequential()
model.add(Conv2D(20,(5,5),strides=(1,1),input_shape=(28,28,1),padding='valid',activation='relu',kernel_initializer='uniform'))
model.add(MaxPool2D(pool_size=(2,2),strides=(2,2)))
model.add(Conv2D(64,(5,5),strides=(1,1),padding='valid',activation='relu',kernel_initializer='uniform'))
model.add(MaxPool2D(pool_size=(2,2),strides=(2,2)))
model.add(Flatten())
model.add(Dense(500,activation='relu'))
model.add(Dropout(0.2))
model.add(Dense(10,activation='softmax'))
model.compile('sgd', loss='categorical_crossentropy', metrics=['accuracy']) #随机梯度下降
 
history=model.fit(x_train, y_train, batch_size=32, epochs=5, validation_split=0.25) #获取数据
 
#########画图
acc = history.history['acc']  #获取训练集准确性数据
val_acc = history.history['val_acc'] #获取验证集准确性数据
loss = history.history['loss']   #获取训练集错误值数据
val_loss = history.history['val_loss'] #获取验证集错误值数据
epochs = range(1,len(acc)+1)
plt.plot(epochs,acc,'bo',label='Trainning acc')  #以epochs为横坐标,以训练集准确性为纵坐标
plt.plot(epochs,val_acc,'b',label='Vaildation acc') #以epochs为横坐标,以验证集准确性为纵坐标
plt.legend() #绘制图例,即标明图中的线段代表何种含义
 
plt.figure() #创建一个新的图表
plt.plot(epochs,loss,'bo',label='Trainning loss')
plt.plot(epochs,val_loss,'b',label='Vaildation loss')
plt.legend() ##绘制图例,即标明图中的线段代表何种含义

以上这篇使用Keras画神经网络准确性图教程就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python写的创建文件夹自定义函数mkdir()
Aug 25 Python
举例讲解Python程序与系统shell交互的方式
Apr 09 Python
Python代码调试的几种方法总结
Apr 15 Python
Python的Django框架中的数据库配置指南
Jul 17 Python
Python可变参数*args和**kwargs用法实例小结
Apr 27 Python
pyside+pyqt实现鼠标右键菜单功能
Dec 08 Python
python并发编程 Process对象的其他属性方法join方法详解
Aug 20 Python
关于Python 常用获取元素 Driver 总结
Nov 24 Python
python实现指定ip端口扫描方式
Dec 17 Python
python如何调用字典的key
May 25 Python
keras自定义损失函数并且模型加载的写法介绍
Jun 15 Python
Python数据可视化常用4大绘图库原理详解
Oct 23 Python
在tensorflow下利用plt画论文中loss,acc等曲线图实例
Jun 15 #Python
python中元组的用法整理
Jun 15 #Python
详解Python设计模式之策略模式
Jun 15 #Python
python能做哪方面的工作
Jun 15 #Python
python实现二分类和多分类的ROC曲线教程
Jun 15 #Python
python属于解释型语言么
Jun 15 #Python
python要安装在哪个盘
Jun 15 #Python
You might like
PHP队列用法实例
2014/11/05 PHP
PHP中iconv函数知识汇总
2015/07/02 PHP
thinkphp隐藏index.php/home并允许访问其他模块的实现方法
2016/10/13 PHP
PHP实现创建一个RPC服务操作示例
2020/02/23 PHP
js获取客户端网卡的IP地址、MAC地址
2014/03/26 Javascript
javascript检测浏览器的缩放状态实现代码
2014/09/28 Javascript
简单纯js实现点击切换TAB标签实例
2015/08/23 Javascript
纯css下拉菜单 无需js
2016/08/15 Javascript
浅谈MVC+EF easyui dataGrid 动态加载分页表格
2016/11/10 Javascript
jQuery动态移除和添加背景图片的方法详解
2017/03/07 Javascript
angular 基于ng-messages的表单验证实例
2017/05/04 Javascript
BootStrap导航栏问题记录
2017/07/31 Javascript
jQuery实现下拉菜单动态添加数据点击滑出收起其他功能
2018/06/14 jQuery
微信小程序全局变量改变监听的实现方法
2019/07/15 Javascript
从零撸一个pc端vue的ui组件库( 计数器组件 )
2019/08/08 Javascript
vue+elementui 对话框取消 表单验证重置示例
2019/10/29 Javascript
Python3搜索及替换文件中文本的方法
2015/05/22 Python
全面分析Python的优点和缺点
2018/02/07 Python
python使用socket创建tcp服务器和客户端
2018/04/12 Python
Python处理命令行参数模块optpars用法实例分析
2018/05/31 Python
pyspark操作MongoDB的方法步骤
2019/01/04 Python
Python Selenium 之数据驱动测试的实现
2019/08/01 Python
Python3 利用face_recognition实现人脸识别的方法
2020/03/13 Python
通过实例简单了解python yield使用方法
2020/08/06 Python
详解移动端HTML5页面端去掉input输入框的白色背景和边框(兼容Android和ios)
2016/12/15 HTML / CSS
缅甸网上购物:Shop.com.mm
2017/12/05 全球购物
新西兰廉价汽车租赁:Snap Rentals
2018/09/14 全球购物
网络工程专业毕业生推荐信
2013/10/28 职场文书
大学班级干部的自我评价分享
2014/02/10 职场文书
2014党支部对照检查材料思想汇报
2014/10/05 职场文书
财政局个人总结
2015/03/04 职场文书
2015年监理工作总结范文
2015/04/07 职场文书
田径运动会通讯稿
2015/07/18 职场文书
浅谈vue2的$refs在vue3组合式API中的替代方法
2021/04/18 Vue.js
Ajax常用封装库——Axios的使用
2021/05/08 Javascript
Python深度学习之实现卷积神经网络
2021/06/05 Python