tensorflow零起点快速入门(1)
导入:
其中的TF_CPP_MIN_LOG_LEVEL据说是为了忽略警告,但是我这里没有意义(numpy的一些警告)
import tensorflow as tf
import os
os.environ["TF_CPP_MIN_LOG_LEVEL"]='3'
常量字符串运算:
其中,log_device_placement参数配置到回话Session中,可以在运行时显示使用的是哪部分的资源(CPU,gpu)
hello=tf.constant('Hello')
cfig=tf.ConfigProto(log_device_placement=True)
sess=tf.Session(config=cfig)
dss=sess.run(hello)
print(dss)
sess.close()
常量矩阵运算:
sess=tf.Session()
a=tf.constant([1,2,3,4,5,6],shape=[2,3],name='a')
b=tf.constant([1,2,3,4,5,6],shape=[3,2],name='b')
c=tf.matmul(a,b)
xss=sess.run(c)
print(xss)
sess.close()
常量数字运算:
tf.add可以这里使用a+b的形式,name自动取得
sess=tf.Session()
a=tf.constant(1,name='ta')
b=tf.constant(2,name='tb')
#c=a+b
c=tf.add(a,b,name='tc')
sess=tf.Session()
xss=sess.run(c)
print(xss)
保存Tensorboard图:
保存图的过程中,提供相应的路径,然后保存sess.graph,是所有运行过的图。
xsum=tf.summary.FileWriter(".",sess.graph)
保存后,打开tensorboard:使用类型cmd命令:打开服务,然后浏览graph项
tensorboard --logdir="."
tensorboard还可以看到其它如直方图,结构图,分布图等部分。
获取默认tensorboard图,显示变量:
gg=tf.get_default_graph()
op1=gg.get_operations()
print(op1)
print(op1[1].node_def)
原始信息:(因为之前有一个字符串常量运行过,所以这里会记录第一个是Const)之前进行过矩阵运算,第一个a为矩阵,其信息则通过op[1].node_def显示出来了



变量计算:
变量计算需要使用tf.global_variables_initializer()进行初始化变量,否则可能报错。
x=tf.constant(1.0,name='input')
w=tf.Variable(0.8,name='weight')
y=tf.multiply(w,x,name='output')
sess=tf.Session()
sess.run(tf.global_variables_initializer())
ans=sess.run(y)
xsum=tf.summary.FileWriter('.',sess.graph)
print(ans)
sess.close()
对应图:

占位符运算演示:
定义好变量后,通过字典格式输入数据,获取结果并打印出来。
x=tf.placeholder(tf.float32,name='x')
y=tf.placeholder(tf.float32,name='y')
z=tf.add(x,y,name='z')
ss=tf.Session()
xsum=tf.summary.FileWriter('.',ss.graph)
xss=ss.run(z,feed_dict={x:1,y:2})
print(xss)
对应图:

eval可以解释字符串表达式
输出d为12
dss='10+2'
d=eval(dss)
d
tensorflow零起点快速入门(1)的更多相关文章
- tensorflow零起点快速入门(3)
创造并运行数据 创造了-3到3的32条数据,然后通过sess.run获取并显示输出数据. x=tf.linspace(-3.0,3.0,32) print(x) sess=tf.Session() r ...
- tensorflow零起点快速入门(2)
指定设备与矩阵乘法 使用tf.device("/gpu:0")用于指定设备进行运算. 在使用jupyter notebook的时候,可能会出现使用异常,需要使用config=tf. ...
- tensorflow零起点快速入门(5) --强化学习摘录截图
tf.random_normal_initializer tf的GraphKeys用法 tf.reduce_mean tf.squared_difference 非tf中的zip,python的zip ...
- tensorflow零起点快速入门(4) --入门常用API
tf.reduce_mean https://blog.csdn.net/he_min/article/details/78694383 计算均值,全部数字的均值,纵向一维的均值,横向一维的均值 tf ...
- TensorFlow 2.0 快速入门指南 | iBooker·ApacheCN
原文:TensorFlow 2.0 Quick Start Guide 协议:CC BY-NC-SA 4.0 自豪地采用谷歌翻译 不要担心自己的形象,只关心如何实现目标.--<原则>,生活 ...
- 序言 - PHP零基础快速入门
我为什么要写<PHP零基础快速入门>? 原因: PHP 真心简单,适合零基础的人快速入门掌握,身边的人学习一两周上手开发的比比皆是: 市面上的文章或书籍对初学者并不友好,多半枯燥乏味,我相 ...
- 零基础快速入门web学习路线(含视频教程)
下面小编专门为广大web学习爱好者汇总了一条完整的自学线路:零基础快速入门web学习路线(含视频教程)(绝对纯干货)适合初学者的最新WEB前端学习路线汇总! 在当下来说web前端开发工程师可谓是高福利 ...
- 零基础快速入门SpringBoot2.0 (一)
零基础快速入门SpringBoot2.0 (一) 一.SpringBoot2.x依赖环境和版本新特性说明 简介:讲解新版本依赖环境和springboot2新特性概述 1.依赖版本jdk8以上, Spr ...
- 小D课堂 - 零基础入门SpringBoot2.X到实战_第1节零基础快速入门SpringBoot2.0_1、SpringBoot2.x课程介绍和高手系列知识点
1 ======================1.零基础快速入门SpringBoot2.0 5节课 =========================== 1.SpringBoot2.x课程全套介绍 ...
随机推荐
- python并发——信号量
信号量通常用于保护数量有限的资源,例如数据库服务器.在资源数量固定的任何情况下,都应该使用有界信号量.在生成任何工作线程前,应该在主线程中初始化信号量. 工作线程生成后,当需要连接服务器时,这些线程将 ...
- CentOs7:ssh远程登录错误WARNING:REMOTE HOST IDENTIFICATION HAS CHANGED解决简单办法
错误及解决办法如下图所示. 第一步:cd ~/.ssh 第二步:vi known_hosts 第三步:删除与访问ip相关条目 附参考链接: https://www.cnblogs.com/york-h ...
- 使用create-react-app创建项目(一)——端口配置
在package.json文件中找到 "scripts",在start中添加"set PORT=8000" "scripts": { &qu ...
- 转载: Windows下两种iocp实现的差距
转自:http://blog.csdn.net/oldworm/article/details/6171430 之前几天说过,因为经典iocp实现(以下简称经典实现)多个io线程绑定在一个iocp上, ...
- 前端知识点回顾——HTML,CSS篇
前端知识点回顾篇--是我当初刚转行为了面试而将自己学过的前端知识整理成的一份笔记,个人目的性很强,仅供参考. doctype 有什么用 doctype是一种标准通用标记语言的文档类型声明,目的是告诉标 ...
- 2.基于AOP自定义注解Annotation的实现
上一篇中分析了AOP的实现原理, 总结为: 判断对象是否需要被代理?@Aspect注解的实现是根据切入点表达式 代理之后需要做什么,就是那些通知,本质上是实现了MethodInterceptor的拦截 ...
- 客户端连接虚拟机上的MYSQL报错
这个原因是因为虚拟机的数据库拒绝其他主机访问 所以需要设置虚拟机的mysql 打开mysql mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' ID ...
- LC 835. Image Overlap
Two images A and B are given, represented as binary, square matrices of the same size. (A binary ma ...
- Ubuntu下使用AMD APP编写OpenCL程序
对于Ubuntu或其近亲(Lubuntu.Kubuntu.Mint等)编写OpenCL程序也不会太难.由于本例用的是AMD APP SDK,因此需要AMD的GPU以及相关驱动.首先,去AMD官网下载G ...
- js如何控制select展开
找了一圈也没找到靠谱的方案,后来通过动态的控制select的size属性实现了. 这也算是一种方法吧. 先判断option的数量n,然后把select的size调整到n,当用户选择后,再把size设置 ...