import tensorflow as tf
from tensorflow.examples.tutorials.mnist import input_data  #载入数据集
mnist = input_data.read_data_sets("MNIST_data",one_hot=True)  #每个批次的大小和总共有多少个批次
batch_size = 100
n_batch = mnist.train.num_examples // batch_size  #定义函数
def variable_summaries(var):with tf.name_scope('summaries'):mean = tf.reduce_mean(var)tf.summary.scalar('mean', mean) #平均值with tf.name_scope('stddev'):stddev = tf.sqrt(tf.reduce_mean(tf.square(var-mean)))tf.summary.scalar('stddev', stddev) #标准差tf.summary.scalar('max', tf.reduce_max(var))tf.summary.scalar('min', tf.reduce_min(var))tf.summary.histogram('histogram', var) #直方图#命名空间
with tf.name_scope("input"):#定义两个placeholder  x = tf.placeholder(tf.float32,[None,784], name = "x_input")  y = tf.placeholder(tf.float32,[None,10], name = "y_input")  with tf.name_scope("layer"):#创建一个简单的神经网络 with tf.name_scope('weights'):W = tf.Variable(tf.zeros([784,10]), name='W') variable_summaries(W)with tf.name_scope('biases'):    b = tf.Variable(tf.zeros([10]), name='b') variable_summaries(b)with tf.name_scope('wx_plus_b'):  wx_plus_b = tf.matmul(x,W)+bwith tf.name_scope('softmax'):prediction = tf.nn.softmax(wx_plus_b)  with tf.name_scope('loss'):#交叉熵代价函数 loss = tf.reduce_mean(tf.nn.softmax_cross_entropy_with_logits(labels=y, logits=prediction))  tf.summary.scalar('loss', loss)
with tf.name_scope('train'):#使用梯度下降法 train_step = tf.train.GradientDescentOptimizer(0.2).minimize(loss)  #初始化变量
init = tf.global_variables_initializer()  with tf.name_scope('accuracy'):with tf.name_scope('correct_prediction'):#结果存放在一个布尔型列表中  correct_prediction = tf.equal(tf.argmax(y,1),tf.argmax(prediction,1))#argmax返回一维张量中最大的值所在的位置  with tf.name_scope('accuracy'):#求准确率  accuracy = tf.reduce_mean(tf.cast(correct_prediction,tf.float32))  tf.summary.scalar('accuracy', accuracy)#合并所有的summary
merged = tf.summary.merge_all()with tf.Session() as sess:  sess.run(init)  writer = tf.summary.FileWriter("log/", sess.graph) #写入到的位置for epoch in range(51):  for batch in range(n_batch):  batch_xs,batch_ys =  mnist.train.next_batch(batch_size)  summary,_ = sess.run([merged,train_step],feed_dict={x:batch_xs, y:batch_ys})  writer.add_summary(summary,epoch)  acc = sess.run(accuracy,feed_dict={x:mnist.test.images,y:mnist.test.labels})  print("epoch " + str(epoch)+ "   acc " +str(acc)) 

运行程序,打开命令行界面,切换到 log 所在目录,输入

tensorboard --logdir= --logdir=C:\Users\Administrator\Desktop\Python\log

接着会返回一个链接,类似 http://PC-20160926YCLU:6006

打开谷歌浏览器或者火狐,输入网址即可查看搭建的网络结构以及识别准确率和损失函数的曲线图。

注意:如果对网络进行更改之后,在运行之前应该先删除log下的文件,在Jupyter中应该选择Kernel----->Restar & Run All, 否则新网络会和之前的混叠到一起。因为每次的网址都是一样的,在浏览器刷新页面即可。

使用Tensorboard绘制网络识别准确率和loss曲线相关推荐

  1. pytorch绘制并显示loss曲线和acc曲线,LeNet5识别图像准确率

    我用的是Anaconda3 ,用spyder编写pytorch的代码,在Anaconda3中新建了一个pytorch的虚拟环境(虚拟环境的名字就叫pytorch). 以下内容仅供参考哦~~ 1.首先打 ...

  2. Python绘制loss曲线、准确率曲线

    Python 绘制 loss 曲线.准确率曲线 使用 python 绘制网络训练过程中的的 loss 曲线以及准确率变化曲线,这里的主要思想就时先把想要的损失值以及准确率值保存下来,保存到 .txt ...

  3. 项目经历 - 卷积网络识别古日文

    学校做的小项目: 卷积网络识别古日文 Kuzushiji-MNIST数据集(此数据集专注于草书日语)下载 古日文中很重要的一个特征并且不同于现代日语的一点就是古日语含有变体假名(Hentaigana) ...

  4. 基于tensorflow、CNN网络识别花卉的种类(图像识别)

    基于tensorflow.CNN网络识别花卉的种类 这是一个图像识别项目,基于 tensorflow,现有的 CNN 网络可以识别四种花的种类.适合新手对使用 tensorflow进行一个完整的图像识 ...

  5. 神经网络--基于mnist数据集取得最高的识别准确率

    前言: Hello大家好,我是Dream. 今天来学习一下如何基于mnist数据集取得最高的识别准确率,本文是从零开始的,如有需要可自行跳至所需内容~ 本文目录: 1.调用库函数 2.调用数据集 3. ...

  6. resnet50网络结构_识别准确率从76.5%到82.4%的ResNet50系列图像分类模型养成之路

    简介 ResNet系列模型是在2015年提出的,一举在ILSVRC2015比赛,也就是著名的ImageNet图像分类挑战赛中取得冠军,因此ResNet的作者摘得CVPR2016最佳论文奖,其中resn ...

  7. 阿里达摩院再造AI抗疫技术:20秒判读CT影像,识别准确率达96%

    2020-02-16 13:22:25 允中 发自 凹非寺  量子位 报道 | 公众号 QbitAI 又是达摩院. 阿里方面最新消息,达摩院联合阿里云针对新冠肺炎临床诊断研发了一套全新AI诊断技术: ...

  8. 阿里达摩院再造AI抗疫技术:20秒判读CT影像,识别准确率达96%,河南率先启用...

    允中 发自 凹非寺  量子位 报道 | 公众号 QbitAI 又是达摩院. 阿里方面最新消息,达摩院联合阿里云针对新冠肺炎临床诊断研发了一套全新AI诊断技术: AI可以在20秒内准确地对新冠疑似案例C ...

  9. 百度语音识别技术负责人李先刚:如何利用Deep CNN大幅提升识别准确率?

     百度语音识别技术负责人李先刚:如何利用Deep CNN大幅提升识别准确率? 机器之心mp 2016-11-04 14:24:34 技术 百度 阅读(440) 评论(0) 机器之心原创 作者:赵云 ...

最新文章

  1. 一文清晰讲解机器学习中梯度下降算法(包括其变式算法)
  2. 解释一下c语言 for(;;) printf(*);,printf()函数的一个问题
  3. typora背景变黑
  4. Win2D 官方文章系列翻译 - 避免内存泄漏
  5. 一键生成HTML4和WAP站
  6. 一道异常处理执行顺序面试题的简单分析
  7. Angular html 页面里的井号 #
  8. JAVA实验报告九异常处理_JAVA实验报告_Java异常处理
  9. linux dd安装系统,通过DD命令安装Windows,并介绍几款DD镜像包
  10. luogu1082 [NOIp2012]同余方程 (扩展欧几里得)
  11. 太空大战背景移动的几种方式
  12. 〖Android〗屏幕触屏事件录制与回放
  13. 使用 Fiddler 调试 心知天气,stm32 esp8266获取天气api
  14. 5.RabbitMQ实战 --- 集群并处理失败
  15. 脑智前沿科普:脑深部电刺激治疗帕金森病的原理
  16. 中国行政区划shp地图数据-2022最新数据预览图
  17. js获取当前屏幕宽度方法
  18. DelayQueue用例
  19. UILabel发光字体
  20. 辣侃情恋男女的犀利段子

热门文章

  1. HTML5期末大作业:魔域私服网站设计——魔域私服游戏(1页) HTML+CSS+JavaScript 学生DW网页设计作业成品 html实训大作业
  2. SYN6-第六周上机实验-对称的空心数字梯形
  3. Android 中文 API —— AbsListView详述
  4. dgl._ffi.base.DGLError: [10:36:44] /opt/dgl/src/runtime/c_runtime_api.cc:88: Check failed: allow_mis
  5. 传感器发展历史(详细)
  6. c语言求两个数的乘积和商,输入两个整数,求出它们的商数
  7. 读取mnist数据集方法大全(train-images-idx3-ubyte.gz,train-labels.idx1-ubyte等)(python读取gzip文件)
  8. vis教程(加动画、加点击事件)
  9. 关于小米路由器设置密码的事
  10. ssm毕设项目高校教师科研能力评定系统40n60(java+VUE+Mybatis+Maven+Mysql+sprnig)