TensorFlow学习笔记1-入门
TensorFlow学习笔记1-入门
作者: YunYuan
写在前面
本笔记是我学习TensorFlow官方文档中文版的读书笔记,由于尚未搭建好Github的个人博客的评论功能,故尚不方便与各位交流。如有问题,可邮箱联系。
TensorFlow运算的本质是有状态的数据流式图。TensorFlow的直译是“流动的张量”。
特点:计算模型简洁灵活,计算性能显著提升,支持更多的异构计算系统。
一些概念:
- 有向图(计算图):由节点(node)和边(edge)组成。节点表示运算操作,节点与节点之间的是边。整个计算图描述了计算流程。
- 节点:表示运算操作,每个节点可以有任意多的输入和任意多的输出。
- 边:在边中流动(flow)的是张量(tensor)。
- 有一种特殊的边没有数据流动,这种边是依赖控制。作用是让它的起始节点执行完再执行目标节点,从而进行控制。
简单的有向图示例如图:

其代码表示为:
import tensorflow as tf
b=tf.Variable(tf.zeros([100])) # 生成100维的向量,初始化为0
W=tf.Variable(tf.random_uniform([784,100],-1,1)) # 生成784x100的随机矩阵W
x=tf.placeholder(name="x") # 输入的Placeholder
relu=tf.nn.relu(tf.matmul(W, x)+b) # ReLU(Wx+b)
C=[...] # 根据ReLU函数的结果计算Cost
s=tf.Session()
for step in range(0, 10):
input=...construct 100-D input array... # 为输入创建一个100维的向量
result=s.run(C, feed_dict={x: input}) # 获取Cost,供给输入x
print(step, result)
在代码中,Variable表示参量,即你要训练的参数,而Placeholder表示输入数据,即训练集。
TensorFlow内建运算操作
- 标量运算:Add、Sub、Mul、Div、Exp、Log、Greater、Less、Equal
- 向量运算:Concat、Slice、Split、Constant、Rank、Shape、Shuffle
- 矩阵运算:MatMul、MatrixInverse、MatrixDeterminant
- 带状态的运算:Variable、Assign、AssignAdd
- 神经网络组件:SoftMax、Sigmoid、ReLU、Convolution2D、MaxPooling
- 存储、恢复:Save、Restore
- 队列及同步运算:Enqueue、Dequeue、MutexAcquire、MutexRelease
- 控制流:Merge、Switch、Enter、Leave、NextIteration
更进一步
sess.run()函数里的参数通常有两种:
一种是tensor,将
feed_dict中的数据送进计算图中计算一次,并取出tensor另一种是
train=optimizer.minimize(loss),即训练动作(对loss进行优化),每执行一次sess.run(train)会优化一次。
参考资料
- TensorFlow官方文档中文版
- 黄文坚 唐源, TensorDlow实战 , 201703, 电子工业出版社
TensorFlow学习笔记1-入门的更多相关文章
- tensorflow学习笔记二:入门基础 好教程 可用
http://www.cnblogs.com/denny402/p/5852083.html tensorflow学习笔记二:入门基础 TensorFlow用张量这种数据结构来表示所有的数据.用一 ...
- 深度学习-tensorflow学习笔记(2)-MNIST手写字体识别
深度学习-tensorflow学习笔记(2)-MNIST手写字体识别超级详细版 这是tf入门的第一个例子.minst应该是内置的数据集. 前置知识在学习笔记(1)里面讲过了 这里直接上代码 # -*- ...
- tensorflow学习笔记——使用TensorFlow操作MNIST数据(1)
续集请点击我:tensorflow学习笔记——使用TensorFlow操作MNIST数据(2) 本节开始学习使用tensorflow教程,当然从最简单的MNIST开始.这怎么说呢,就好比编程入门有He ...
- TensorFlow学习笔记(一)
[TensorFlow API](https://www.tensorflow.org/versions/r0.12/how_tos/variable_scope/index.html) Tensor ...
- Tensorflow学习笔记No.10
多输出模型 使用函数式API构建多输出模型完成多标签分类任务. 数据集下载链接:https://pan.baidu.com/s/1JtKt7KCR2lEqAirjIXzvgg 提取码:2kbc 1.读 ...
- Tensorflow学习笔记2:About Session, Graph, Operation and Tensor
简介 上一篇笔记:Tensorflow学习笔记1:Get Started 我们谈到Tensorflow是基于图(Graph)的计算系统.而图的节点则是由操作(Operation)来构成的,而图的各个节 ...
- python学习笔记--Django入门四 管理站点--二
接上一节 python学习笔记--Django入门四 管理站点 设置字段可选 编辑Book模块在email字段上加上blank=True,指定email字段为可选,代码如下: class Autho ...
- WebSocket学习笔记——无痛入门
WebSocket学习笔记——无痛入门 标签: websocket 2014-04-09 22:05 4987人阅读 评论(1) 收藏 举报 分类: 物联网学习笔记(37) 版权声明:本文为博主原 ...
- Tensorflow学习笔记2019.01.22
tensorflow学习笔记2 edit by Strangewx 2019.01.04 4.1 机器学习基础 4.1.1 一般结构: 初始化模型参数:通常随机赋值,简单模型赋值0 训练数据:一般打乱 ...
- Tensorflow学习笔记2019.01.03
tensorflow学习笔记: 3.2 Tensorflow中定义数据流图 张量知识矩阵的一个超集. 超集:如果一个集合S2中的每一个元素都在集合S1中,且集合S1中可能包含S2中没有的元素,则集合S ...
随机推荐
- [C] Re-execute itself from elf file.
Re-execute itself from elf file. #define _GNU_SOURCE #include <sched.h> #include <stdio.h&g ...
- AppDomain (转)
AppDomain是CLR的运行单元,它可以加载Assembly.创建对象以及执行程序.AppDomain是CLR实现代码隔离的基本机制. 每一个AppDomain可以单独运行.停止:每个AppDom ...
- mysql的sql语句优化方法面试题总结
mysql的sql语句优化方法面试题总结 不要写一些没有意义的查询,如需要生成一个空表结构: select col1,col2 into #t from t where 1=0 这类代码不会返回任何结 ...
- 前端之CSS基础
前端之CSS 1. CSS CSS定义如何显示HTML元素. 当浏览器读到一个样式表,他就会按照这个样式表来对文档进行格式化(渲染). 3.CSS语法 1)CSS实例 每个CSS由两部分组成: 选择器 ...
- 入手node
一.安装node(查询使用npm) 二.安装淘宝镜像(查询使用cnpm,安装淘宝镜像之后下载速度会更快) 三.安装相关资料时,在预安装的文件夹使用: shift + 右键, 打开命令行窗口,进入终端
- wordpress系统网站访问慢的解决方案
从2013年5月底开始,google在中国基本处于无法访问状态,谷歌官网 域名,香港域名均无法访问,就连之前的IP访问方法也都失效,而Google Adsense打不开,恐怕做谷歌联盟的站长也要倒霉了 ...
- 输vim /etc/rc.d/init.d/mysqld 报错 …..localdomain.pid
在安装MySQL的过程中出现以下错误: 本人解决方法是: ps aux | grep mysqld 罗列出所有关于mysqld的进程,然后把关于mysqld的进程都kill了.
- cmd获取管理员权限等
鼠标点点点的略过 可输入命令 runas /user:Administrator cmd 或 runas /noprofile /user:Administrator cmd Administrato ...
- FreeRTOS之taskYIELD()
摘自:http://www.mcuchina.com/article/2007/1227/article_59.html 1.taskYIELD() 比如我创建了8个优先级一样的task,并且没有 ...
- JavaWeb(七):EL表达式、自定义标签和JSTL
一.EL表达式 语法 el.jsp <%@page import="java.util.Date"%> <%@page import="com.atgu ...