使用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 logging日志模块以及多进程日志详解
Apr 18 Python
python print 按逗号或空格分隔的方法
May 02 Python
Python实现的绘制三维双螺旋线图形功能示例
Jun 23 Python
python用fsolve、leastsq对非线性方程组求解
Dec 15 Python
Python使用folium excel绘制point
Jan 03 Python
python实现转圈打印矩阵
Mar 02 Python
Python二叉树的镜像转换实现方法示例
Mar 06 Python
PyCharm安装Markdown插件的两种方法
Jun 24 Python
python 使用pdfminer3k 读取PDF文档的例子
Aug 27 Python
python框架django项目部署相关知识详解
Nov 04 Python
在django admin详情表单显示中添加自定义控件的实现
Mar 11 Python
Python定时任务APScheduler安装及使用解析
Aug 07 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/08/28 PHP
PHP获取当前日期和时间及格式化方法参数
2015/05/11 PHP
PHP文件缓存类实现代码
2015/10/26 PHP
浅谈PHP中的数据传输CURL
2016/09/06 PHP
IFrame跨域高度自适应实现代码
2012/08/16 Javascript
jQuery中读取json文件示例代码
2013/05/10 Javascript
使用javascript实现有效时间的控制,并显示将要过期的时间
2014/01/02 Javascript
实用框架(iframe)操作代码
2014/10/23 Javascript
浅谈JS日期(Date)处理函数
2014/12/07 Javascript
javascript实现带节日和农历的日历特效
2015/02/01 Javascript
JQuery boxy插件在IE中边角图片不显示问题的解决
2015/05/20 Javascript
$.extend 的一个小问题
2015/06/18 Javascript
javascript日期操作详解(脚本之家整理)
2015/09/05 Javascript
在AngularJS框架中处理数据建模的方式解析
2016/03/05 Javascript
JavaScript中Object值合并方法详解
2017/12/22 Javascript
WebSocket的通信过程与实现方法详解
2018/04/29 Javascript
VuePress 中如何增加用户登录功能
2019/11/29 Javascript
[34:56]Ti4冒泡赛LGD vs Liquid 1
2014/07/14 DOTA
[01:46]辉夜杯—打造中国DOTA新格局
2015/12/25 DOTA
[46:20]CHAOS vs Alliacne 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/16 DOTA
web.py中调用文件夹内模板的方法
2014/08/26 Python
python有证书的加密解密实现方法
2014/11/19 Python
python字典get()方法用法分析
2015/04/17 Python
利用Python的装饰器解决Bottle框架中用户验证问题
2015/04/24 Python
不知道这5种下划线的含义,你就不算真的会Python!
2018/10/09 Python
Python中几种属性访问的区别与用法详解
2018/10/10 Python
对python遍历文件夹中的所有jpg文件的实例详解
2018/12/08 Python
Django网络框架之创建虚拟开发环境操作示例
2019/06/06 Python
Python获取统计自己的qq群成员信息的方法
2019/11/15 Python
HTML5之SVG 2D入门1—SVG(可缩放矢量图形)概述
2013/01/30 HTML / CSS
HTML5本地存储之Web Storage详解
2016/07/04 HTML / CSS
Nordgreen台湾官网:极简北欧设计手表
2019/08/21 全球购物
澳大利亚买卖正宗二手奢侈品交易平台:Luxe.It.Fwd
2019/10/16 全球购物
摄影展策划方案
2014/06/02 职场文书
家长意见书
2015/06/04 职场文书
幼师必备:幼儿园期末教师评语50条
2019/11/01 职场文书