通过python的matplotlib包将Tensorflow数据进行可视化的方法


Posted in Python onJanuary 09, 2019

使用matplotlib中的一些函数将tensorflow中的数据可视化,更加便于分析

import tensorflow as tf
import numpy as np
import matplotlib.pyplot as plt

def add_layer(inputs, in_size, out_size, activation_function=None):
  Weights = tf.Variable(tf.random_normal([in_size, out_size]))
  biases = tf.Variable(tf.zeros([1, out_size]) + 0.1)
  Wx_plus_b = tf.matmul(inputs, Weights) + biases
  if activation_function is None:
    outputs = Wx_plus_b
  else:
    outputs = activation_function(Wx_plus_b)
  return outputs

# Make up some real data
x_data = np.linspace(-1, 1, 300)[:, np.newaxis]
noise = np.random.normal(0, 0.05, x_data.shape)
y_data = np.square(x_data) - 0.5 + noise


# define placeholder for inputs to network
xs = tf.placeholder(tf.float32, [None, 1])
ys = tf.placeholder(tf.float32, [None, 1])
# add hidden layer
l1 = add_layer(xs, 1, 10, activation_function=tf.nn.relu)
# add output layer
prediction = add_layer(l1, 10, 1, activation_function=None)

# the error between prediction and real data
loss = tf.reduce_mean(tf.reduce_sum(tf.square(ys-prediction), reduction_indices=[1]))
train_step = tf.train.GradientDescentOptimizer(0.1).minimize(loss)
# important step

#initialize_all_variables已被弃用,使用tf.global_variables_initializer代替。 
init = tf.global_variables_initializer()
sess = tf.Session()
sess.run(init)

# plot the real data
fig = plt.figure()
ax = fig.add_subplot(1,1,1)
ax.scatter(x_data, y_data)
plt.ion() #使plt不会在show之后停止而是继续运行
plt.show()


for i in range(1000):
  # training
  sess.run(train_step, feed_dict={xs: x_data, ys: y_data})
  if i % 50 == 0:
    # to visualize the result and improvement
    try:
      ax.lines.remove(lines[0]) #在每一次绘图之前先讲上一次绘图删除,使得画面更加清晰
    except Exception:
      pass
    prediction_value = sess.run(prediction, feed_dict={xs: x_data})
    # plot the prediction
    lines = ax.plot(x_data, prediction_value, 'r-', lw=5) #'r-'指绘制一个红色的线
    plt.pause(1) #指等待一秒钟

运行结果如下:(实际效果应该是动态的,应当使用ipython运行,使用jupyter运行则图片不是动态的)

通过python的matplotlib包将Tensorflow数据进行可视化的方法

注意:initialize_all_variables已被弃用,使用tf.global_variables_initializer代替。

以上这篇通过python的matplotlib包将Tensorflow数据进行可视化的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python实现忽略大小写对字符串列表排序的方法
Sep 25 Python
Python实现单词拼写检查
Apr 25 Python
Python易忽视知识点小结
May 25 Python
Flask框架的学习指南之用户登录管理
Nov 20 Python
python 多线程对post请求服务器测试并发的方法
Jun 13 Python
python中的函数递归和迭代原理解析
Nov 14 Python
tensorflow 变长序列存储实例
Jan 20 Python
Python捕获异常堆栈信息的几种方法(小结)
May 18 Python
详解Django中异步任务之django-celery
Nov 05 Python
python爬虫基础之urllib的使用
Dec 31 Python
Python实现曲线拟合的最小二乘法
Feb 19 Python
Python&Matlab实现樱花的绘制
Apr 07 Python
python pcm音频添加头转成Wav格式文件的方法
Jan 09 #Python
python基于C/S模式实现聊天室功能
Jan 09 #Python
python 通过麦克风录音 生成wav文件的方法
Jan 09 #Python
Python 利用pydub库操作音频文件的方法
Jan 09 #Python
Python简单过滤字母和数字的方法小结
Jan 09 #Python
使用python批量化音乐文件格式转换的实例
Jan 09 #Python
python+ffmpeg批量去视频开头的方法
Jan 09 #Python
You might like
PHP可逆加密/解密函数分享
2012/09/25 PHP
ThinkPHP3.1新特性之命名范围的使用
2014/06/19 PHP
php自动加载方式集合
2016/04/04 PHP
Javascript实现的分页函数
2006/12/22 Javascript
jquery pagination插件实现无刷新分页代码
2009/10/13 Javascript
javascript中的new使用
2010/03/20 Javascript
Javascript处理DOM元素事件实现代码
2012/05/23 Javascript
JavaScript函数获取事件源的小例子
2014/05/14 Javascript
JSON+HTML实现国家省市联动选择效果
2014/05/18 Javascript
详解JavaScript的AngularJS框架中的表达式与指令
2016/03/05 Javascript
无需 Flash 使用 jQuery 复制文字到剪贴板
2016/04/26 Javascript
用jQuery获取table中行id和td值的实现代码
2016/05/19 Javascript
JS实现刷新父页面不弹出提示框的方法
2016/06/22 Javascript
el表达式 写入bootstrap表格数据页面的实例代码
2017/01/11 Javascript
微信小程序实现缓存根据不同的id来进行设置和读取缓存
2017/06/12 Javascript
JS自动生成动态HTML验证码页面
2017/06/14 Javascript
JavaScript中in和hasOwnProperty区别详解
2017/08/04 Javascript
Vue引用第三方datepicker插件无法监听datepicker输入框的值的解决
2018/01/27 Javascript
js+html5实现手机九宫格密码解锁功能
2018/07/30 Javascript
vue 修改 data 数据问题并实时显示的方法
2018/08/27 Javascript
vue实现扫码功能
2020/01/17 Javascript
ant-design-vue 时间选择器赋值默认时间的操作
2020/10/27 Javascript
[20:30]职业巡回赛回顾
2018/08/09 DOTA
深入讨论Python函数的参数的默认值所引发的问题的原因
2015/03/30 Python
Python下使用Psyco模块优化运行速度
2015/04/05 Python
机器学习10大经典算法详解
2017/12/07 Python
详谈python3 numpy-loadtxt的编码问题
2018/04/29 Python
对matplotlib改变colorbar位置和方向的方法详解
2018/12/13 Python
Python实现二维曲线拟合的方法
2018/12/29 Python
Python2.7版os.path.isdir中文路径返回false的解决方法
2019/06/21 Python
大学毕业生的自我鉴定
2013/11/30 职场文书
我们的节日元宵活动方案
2014/08/23 职场文书
销售员试用期自我评价
2014/09/15 职场文书
教师自查自纠工作情况报告
2014/10/29 职场文书
Python利用FlashText算法实现替换字符串
2022/03/31 Python
MutationObserver在页面水印实现起到的作用详解
2022/07/07 Javascript