实验3-4 数据结构-张量

1)已知两个张量[1,3,5,7]和[2,4,4,8],编写一个模型,计算两个张量的加法,输出结果,并在tensorboard中显示

2)已知张量[1,2,3,4,5,6,7,8,9,10,11,12]有12个元素,利用tf.reshape()将其形状转换为[2,3,2]的三维张量

要求:程序+截图

1)已知两个张量[1,3,5,7]和[2,4,4,8],编写一个模型,计算两个张量的加法,输出结果,并在tensorboard中显示

①第一步

TensorBoard是TensorFlow自带的一个强大的可视化工具,也是一个web应用程序套件。通过TensorFlow程序运行过程中产生的日志文件可视化TensorFlow的程序运行状态,它与TensorFlow跑在两个不同的进程中。

启动tensorboard:

打开anaconda prompt:

激活环境activate tensorflow

切换到根目录:cd /

切换到日志存放的目录:cd log

查看文件:dir

启动tensorboard:tensorboard --logdir=C:\log

TensorBoard目前支持7种可视化,即SCALARS、IMAGES、AUDIO、GRAPHS、
DISTRIBUTIONS、HISTOGRAMS、EMBEDDINGS,这七种可视化的主要功能如下:

lSCALARS:展示训练过程中的准确率、损失值、权重/偏置的变化情况
lIMAGES:展示训练过程中的图像
lAUDIO:展示训练过程中的音频
lGRAPHS:展示模型的数据流图,以及训练在各个设备上消耗的内存和时间
lDISTRIBUTIONS:展示训练过程中记录的数据的分布图
lHISTOGRAMS:展示训练过程中记录的数据的柱状图
lEMBEDDINGS:展示此向量后的投影分布

计算图的概念

计算图实际上描述的是需要依次完成的计算单元以及这些计算单元之间的相互依赖关系。由一组节点和一组有向边构成。

①每一个计算都被称为节点(operation,简称op)

②节点之间的边描述了计算之间的依赖关系

③一个节点获得0 个或多个张量,产生0 个或多个张量

计算图描述了一组需要依次序完成的计算单元以及这些计算单元之间相互依赖的关系。图中的节点表示某一具体的计算单元,如张量以及张量之间的乘积,点积等。

计算图中的节点就是操作(Operation)

一次加法是一个操作
一次乘法是一个操作
构建一些变量的初始值也是一个操作
每个运算操作都有属性,它在构建图的时候就需要确定下来
操作也可以和计算设备绑定,指定操作在某个设备上执行
操作之间存在顺序关系,这些操作之间的依赖就是“边”
如果操作A的输入是操作B执行的结果,那么这个操作A就依赖于操作B。

TensorBoard的启动:
不需要额外安装,安装TensorFlow时已自动完成。
在Anaconda Prompt中先进入日志存放的目录,再运行TensorBoard,并将日志的地址指向程
序日志输出的地址,命令为:tensorboard--logdir= /path/log(路径自己定)

启动tensorboard服务的端口默认为为6006
通过--port参数可以改变启动服务的端口

②第二步

import tensorflow as tf
#清除default graph和不断增加的节点
tf.reset_default_graph()#logdir改为自己机器上的合适路径
logdir = 'C:/log'
#定义一个简单的计算图,实现两个张量的加法
a = tf.constant([1,3,5,7],dtype = tf.int32)
b = tf.constant([2,4,4,8],dtype = tf.int32)
result = tf.add(a,b)
with tf.Session() as sess:print(sess.run(result))
#生成一个写日志的writer,并将当前的TensorFlow计算图写入日志
writer = tf.summary.FileWriter(logdir,tf.get_default_graph())
writer.close()

③第三步

TensorBoard是一个在本地启动的服务,启动完成后在浏览器输入网址:http://localhost:6006(一般都是电脑名称)即可进行访问。

查看TensorBoard内所执行完毕的计算图

2)已知张量[1,2,3,4,5,6,7,8,9,10,11,12]有12个元素,利用tf.reshape()将其形状转换为[2,3,2]的三维张量

import tensorflow as tf  #导入tensorflow类库,别名为tf
#定义c1是一维张量,共有12个元素
c1 = tf.constant([1,2,3,4,5,6,7,8,9,10,11,12],dtype = tf.float32,name = "c1")
c2 = tf.reshape(c1,[2,3,2])
with tf.Session() as sess:sess.run(tf.global_variables_initializer())print(sess.run(c1))print(sess.run(c2))

TensorFlow实验(2)相关推荐

  1. tensorflow 实验过程可重复

    在做科研时使用tensorflow作为算法开发工具.后来有了更好用的pytorch之后,由于很多基础代码都是用tensorflow编写的,所以,就没有转到pytorch上来. 最近在写论文,比较重视算 ...

  2. 【嵌入式AI】CNN模型压缩(剪枝,量化)详解与tensorflow实验

    1,CNN模型压缩综述 1 模型压缩的必要性及可行性 (1)必要性:首先是资源受限,其次在许多网络结构中,如VGG-16网络,参数数量1亿3千多万,占用500MB空间,需要进行309亿次浮点运算才能完 ...

  3. TensorFlow实验(1)

    实验1-2 搭建深度学习开发环境 1)安装Anaconda 2)创建虚拟环境: 3)激活环境 4)安装tensorflow 5)安装jupyter notebook 安装完成之后,运行第一个程序&qu ...

  4. 【神经网络】tensorflow实验10 -- 人工神经网络(1)

    1. 实验目的 ①理解并掌握误差反向传播算法: ②能够使用单层和多层神经网络,完成多分类任务: ③了解常用的激活函数. 2. 实验内容 ①设计单层和多层神经网络结构,并使用TensorFlow建立模型 ...

  5. TensorFlow实验(3)

    模型的保存与恢复 我们来简单实现一下模型的保存与恢复 训练完TensorFlow模型后,可将其保存为文件,以便于预测新数据时直接加载使用. TensorFlow模型主要包含网络的设计或者图以及已经训练 ...

  6. 在阿里云Kubernetes容器服务上打造TensorFlow实验室

    简介 Jupyter notebook是强大的数据分析工具,它能够帮助快速开发并且实现机器学习代码的共享,是数据科学团队用来做数据实验和组内合作的利器,也是机器学习初学者入门这一个领域的好起点. 而T ...

  7. 还在用Tensorboard?机器学习实验管理平台大盘点

    文 | SisyphusBJ 源 | Pytorch Lightning wandb.ai comet.ml neptune.ai allegro trains mlflow guild.ai sac ...

  8. TensorFlow 智能移动项目:1~5

    原文:Intelligent mobile projects with TensorFlow 协议:CC BY-NC-SA 4.0 译者:飞龙 本文来自[ApacheCN 深度学习 译文集],采用译后 ...

  9. 深度学习实现案例(Tensorflow、PaddlePaddle)

    深度学习实验案例 文章目录 深度学习实验案例 一.基础理论 实验一:自定义感知机 实验二:验证图像卷积运算效果 二.Tensorflow 实验一:查看Tensorflow版本 实验二:Hellowor ...

最新文章

  1. 将一个3 * 4的二维数组转换为4 * 3的二维数组
  2. mysql 解释 游标赋值_Mysql_游标
  3. 【OpenCV 例程200篇】55. 可分离卷积核
  4. php订阅号借权,php订阅号借权
  5. 关于xcode6打包以及上线前企业部署测试的说明 --转自张诚教授微博
  6. 2012,新的一年,新的开始
  7. 电力系统微型计算机继电保护试题,全国2010年4月自考电力系统微型计算机继电保护试题...
  8. 软件测试简历项目经验该怎么写?【两年经验】
  9. matlab随机欠采样,欠采样技术
  10. R语言-上海二手房数据分析
  11. qlv视频怎么转换成mp4格式工厂?如何用格式工厂将qlv格式转换成mp4格式?
  12. Assembler - Debug
  13. 台湾大学林轩田机器学习基石课程学习笔记4 -- Feasibility of Learning
  14. 同一个基站连接两个核心网AMF POOL的场景分析及带AMF重选的注册流程
  15. YOLOv3: An Incremental Improvement (YOLOv3 论文翻译)
  16. shell脚本编程笔记(十)—— 正则表达式
  17. Google封锁整个co.cc子域只能临时止血难以长治久安
  18. excel公式编辑器_为Excel大舞台安装“聚光灯”,快速聚焦数据,从此告别眼疲劳...
  19. [坑]删除我的电脑中的各种云盘图标(WPS云、微盘云...)
  20. PHP生成PDF Mpdf扩展

热门文章

  1. matlab里用fix函数,Matlab基本函数-fix函数
  2. vue click事件_Vue.js---实现前后端分离架构中前端页面搭建(二)
  3. 计算机组成原理第八章课后答案6,计算机组成原理 第八章 复习
  4. 拼的html页面乱,页面分页html拼接
  5. BugkuCTF-MISC题蜜雪冰城~
  6. 计算机专业英语第07章,计算机专业英语 -第7章1.ppt
  7. python20个常用语法_这20个常规Python语法你都搞明白了吗?
  8. 攻击linux的samba,Samba 中间人攻击漏洞(CVE-2015-5296)
  9. java多态的两种形式_java核心(八):继承与方法重写、final、多态性的两种描述形式...
  10. java开发有日志存表的吗_Java日志信息存库(logback篇)