TensorFlow-OP(控制)
mergeswichenterleave
TensorFlow-IO
TensorFlow - IO 在 tf.data 之前,一般使用 QueueRunner,但 QueueRunner 基于 Python 的多线程及队列等,效率不够高,所以 Google发布了tf.data,其基于C++的多线程及队列,彻底提高了效率。所以不建议使用 QueueRunner 了,取而代之,使用 tf.data 模块吧:简单、高效。 preload直接将数据设置为常量,加载到TensorFlow的graph中。 12345678import tensorflow as tfx1 = tf.constant([2,3,4])x2 = tf.constant([4,0,1])y = tf.add(x1,x2)with tf.Session() as sess: print(sess.run(y)) feed_dict使用Python代码获取数据,通过给run()或者eval()函数输入feed_dict参数,传入数据,可以启动运算过程。 1234with tf.Session(): input = tf.placeholder(tf.float32) c...
TensorFlow-OP(计算)
TensorFlow-OP元素op 求和 1tf.add(x,y,name=None) 减法 1tf.sub(x,y,name=None) 乘法 1tf.mutipy(x,y,name=None) 除法 1tf.div(x,y,name=None) 取模 1tf.mod(x,y,name=None) 求绝对值 1tf.abs(x,name=None) 取反 1tf.neg(x,name=None) 赋值 1tf.sign(x,name=None) 返回符号 1tf.inv(x,name=None) 计算平方 1tf.square(x,name=None) 开根号 1tf.sqrt(x,name=None) 计算e的次方 1tf.exp(x,name=None) 计算log 1tf.log(x,name=None) 返回最大值 1tf.maximum(x,y,name=None) 返回最小值 1tf.minimum(x,y,name=None) 三角函数cos 1tf.cos(x,name=None) 三角函数s...
TensorFlow-Queue & Thread
TensorFlow-Queue & Thread 使用TensorFlow进行异步计算 Queue tf.queue.* 分类 tf.queue.FIFOQueue :按入列顺序出列的队列 tf.queue.RandomShuffleQueue :随机顺序出列的队列 tf.queue.PaddingFIFOQueue :以固定长度批量出列的队列 tf.queue.PriorityQueue :带优先级出列的队列 基本方法(tf.queue.queuebase) dequeue(name=None) Dequeues one element from this queue.If the queue is empty when this operation executes, it will block until there is an element to dequeue. The tuple of tensors that was dequeued. dequeuemany(n,name=None) Dequeues and con...
TensorFlow-Summary&Tensorboard
tensorflow 数据可视化 tf.summary 在TensorFlow中,最常用的可视化方法有三种途径,分别为TensorFlow与OpenCv的混合编程、利用Matpltlib进行可视化、利用TensorFlow自带的可视化工具TensorBoard进行可视化。 原理介绍tf.summary中相关的方法会输出一个含tensor的Summary protocol buffer,这是一种能够被tensorboard模块解析的结构化数据格式。 protocol buffer(protobuf)是谷歌专用的数据序列化工具。速度更快,但格式要求更严格,应用范围可能更小。 用法详解1. tf.summary.scalar用来显示标量信息: 123tf.summary.scalar(tags, values, collections=None, name=None)例如:tf.summary.scalar('mean', mean)一般在画loss,accuary时会用到这个函数。 参数说明: name:生成节点的名字,也会作为TensorBoard中的...
TensorFlow-Variable &Constant & Random
类说明tf.variable创建1234# Create two variables.weights = tf.Variable(tf.random_normal([784, 200], stddev=0.35), name="weights")biases = tf.Variable(tf.zeros([200]), name="biases") 一个Variable操作存放变量的值。 一个初始化op将变量设置为初始值。这事实上是一个tf.assign操作. 初始值的操作,例如示例中对biases变量的zeros操作也被加入了graph。 初始化12345678910111213141516171819# Add an op to initialize the variables.init_op = tf.initialize_all_variables()# Later, when launching the modelwith tf.Session() as sess: # Run th...
TensorFlow-code Bazel
Bazel 对TensorFlow编译过程中bazel的行为解析。了解bazel构建TensorFlow的方法,有助于对源码和源码框架的理解。 结构概念:Workspace Packages TargetsWorkspace (根文件夹)一个workspace就是一个project(项目)的根目录。workspace里包含构建这个项目所需的源文件,以及symboliclinks(符号链接)。每个workspace目录都必须有一个名为WORKSPACE的文件。这个WORKSPACE文件可能是空的。也可能包含构建项目所需的外部依赖。 Package (子文件夹)在一个workspace中package是主要的代码组织单元。一个package就是一个相关文件的集合。也是一个这些相关文件之间的规范。一个package被定义为一个目录.这个目录里必须包含一个名为BUILD的文件。package目录必须在workspace目录下。package包含其目录中的所有文件.以及其下的所有子目录。但是不包含那些包含了BUILD文件的子目录. Targetpackage是一个容器,即目录。他里面的...
TensorFlow-code Swig
前端多语言编程环境与后端C++实现系统的通道归功于 Swig 的包装器 TensorFlow使用Bazel的构建工具,在系统编译之前启动Swig的代码生成过程,通过tensorflow.i自动生成了两个适配 (Wrapper)文件: pywrap_tensorflow_internal.py: 负责对接上层 Python 调用; pywrap_tensorflow_internal.cc: 负责对接下层 C API 调用。 pywrap_tensorflow_internal.py 模块被导入时,会加载_pywrap_tensorflow_internal.so动态链接库,它里面包含了所有运行时接口的符号。而pywrap_tensorflow_internal.cc中,则注册了一个函数符号表,实现Python接口和C接口的映射。运行时,就可以通过映射表,找到Python接口在C层的实现了。 https://blog.csdn.net/u013510838/article/details/84103503













