时间:2021-05-23
1.创建图
在tensorflow中,一个程序默认是建立一个图的,除了系统自动建立图以外,我们还可以手动建立图,并做一些其他的操作。
下面我们使用tf.Graph函数建立图,使用tf.get_default_graph函数来获取图,使用reset_default_graph对图进行重置。
import tensorflow as tfimport numpy as npc = tf.constant(1.5)g = tf.Graph()with g.as_default(): c1 = tf.constant(2.0) print(c1.graph) print(g) print(c.graph)g2 = tf.get_default_graph()print(g2)tf.reset_default_graph()g3 = tf.get_default_graph()print(g3)上述的代码运行结果如下所示:
根据上述的运行结果,c是在刚开始的默认图中建立的,所以打印的结果就是13376A1FE10,和g2获取的默认图的值是一样的,然后使用tf.Graph建立了一个新的图,并添加了变量c1,最后又对图进行了重置,替代了原来的默认图。
在使用reset_default_graph()函数的时候,要保证当前图中资源都已经全部进行了释放,否则将会报错。
2.获取张量
我们可以在图中通过名字得到其对应的元素,比如获取图中的变量和OP等元素。
import tensorflow as tfimport numpy as npg = tf.Graph()with g.as_default(): c1 = tf.constant(2.5, name='c1_constant') c2 = tf.Variable(1.5, dtype=tf.float32, name='c2_constant') add = tf.multiply(c1, c2, name='op_add') c_1 = g.get_tensor_by_name(name='c1_constant:0') c_2 = g.get_tensor_by_name(name='c2_constant:0') c_3 = g.get_tensor_by_name(name='op_add:0') print(c_1) print(c_2) print(c_3)在进行测试时,我们为元素添加了变量名,在设置变量名的时候,设置好的名字会自动添加后面的:0字符。一般我们可以将名字打印出来,在将打印好的名字进行回填。
3.获取节点操作
获取节点操作OP的方法和获取张量的方法非常类似,使用get_operation_by_name.下面是运行实例:
import tensorflow as tfimport numpy as npa = tf.constant([[1.0, 2.0]])b = tf.constant([[1.0], [3.0]])tensor_1 = tf.matmul(a, b, name='matmul_1')with tf.Session() as sess: sess.run(tf.global_variables_initializer()) t1 = tf.get_default_graph().get_operation_by_name(name='matmul_1') t2 = tf.get_default_graph().get_tensor_by_name(name='matmul_1:0') print(t1) print('t1: ', sess.run(t1)) print('t2: ', sess.run(t2))在上述的代码中,定义了一个OP操作,命名为matmul_1,在运行时我们将op打印出来,在使用名字后面加上:0我们就能得到OP运算的结果的tensor,注意这两者的区别。
我们还可以通过get_opreations函数获取图中的所有信息。此外,我们还可以使用tf.Grapg.as_graph_element函数将传入的对象返回为张量或者op。该函数具有验证和转换功能。
到此这篇关于TensorFlow使用Graph的基本操作的实现的文章就介绍到这了,更多相关TensorFlow Graph操作内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
简介深度学习需要熟悉使用一个框架,本人选择了TensorFlow,一边学习一边做项目,下面简要介绍TensorFlow中的基本常量、变量和运算操作,参考斯坦福大
『写在前面』以CTCBeamsearchdecoder为例,简单整理一下TensorFlow实现自定义Op的操作流程。基本的流程1.定义Op接口#include
一、Tensorflow安装1、Tensorflow介绍Tensorflow是广泛使用的实现机器学习以及其它涉及大量数学运算的算法库之一。Tensorflow由
tensorflow版本1.4获取变量维度是一个使用频繁的操作,在tensorflow中获取变量维度主要用到的操作有以下三种:Tensor.shapeTenso
本文实例为大家分享了tensorflow实现弹性网络回归算法,供大家参考,具体内容如下python代码:#用tensorflow实现弹性网络算法(多变量)#使用