这篇文章主要为大家分析了tensorflow张量的示例分析的相关知识点,内容详细易懂,操作细节合理,具有一定参考价值。如果感兴趣的话,不妨跟着跟随小编一起来看看,下面跟着小编一起深入学习“tensorflow张量的示例分析”的知识吧。
下面以示例的方式对张量做进一步的介绍。
很多指令(也就是结点)都能创建张量,比如tf.constant()等,小程这里举几个例子,重点演示对张量的操作。
代码如下:
import tensorflow as tf
f = tf.constant(100)
s = tf.constant(200)
sum = tf.add(f, s)
with tf.Session() as sess:
print(sess.run(sum))
代码构建的图大概是这样的:
可以看到,张量f、s与sum,都是由相应的指令(tf.constant与tf.add)产生的。在使用session评估张量sum时,整个图的结点(指令)才被执行。
以上代码使用的是默认的图(没有指定就使用默认图),也可以创建一个新的图来使用,比如可以这样写代码:
这段代码构建的图跟上面的类似,只是每个结点有了命名,截图如下:
代码如下:
import tensorflow as tf
f = tf.ones([3], dtype=tf.int32)
s = tf.constant([1,2,3], dtype=tf.int32)
sum = tf.add(f, s)
with tf.Session() as sess:
print(sum.eval())
这段代码的解释如下:
这段代码构建的图跟示例1的一样,只是张量的类型与值不同,执行的结果如截图:
前面小程有介绍过,张量可以有若干维,0维是常量,1维是矢量(vector),2维是矩阵。
以下代码演示了0、1、2维的张量:
执行结果如下:
使用函数get_shap()可以获取维度信息,比如:
执行结果如下:
代码如下:
执行结果:
对于矩阵张量,可以修改它的行列数,或者维度,比如这样:
变量也是张量,指令tf.Variable()创建一个变量,并设置一个值,但是,tf对于变量的赋值是很“奇怪”的,tf.Variable(xxx)并不会赋值,必需像以下那样执行tf.global_variables_initializer()才会赋值。在使用变量之前,必须先赋值,否则会引发异常:
变量的特点是可以赋以新的值,但需要注意,tf.assign()返回的是一个指令(结点),在这个指令执行之前,变量并不会赋以新的值,详情可以参考下面的代码说明:
执行结果是这样的:
关于“tensorflow张量的示例分析”就介绍到这了,更多相关内容可以搜索亿速云以前的文章,希望能够帮助大家答疑解惑,请多多支持亿速云网站!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。