Python 我不能理解张量流系统
我不能理解Tensorflow系统。 首先,我写Python 我不能理解张量流系统,python,numpy,tensorflow,Python,Numpy,Tensorflow,我不能理解Tensorflow系统。 首先,我写 #coding:UTF-8 from __future__ import absolute_import from __future__ import division from __future__ import print_function import tensorflow as tf const1 = tf.constant(2) const2 = tf.constant(3) add_op = tf.add(const1,cons
#coding:UTF-8
from __future__ import absolute_import
from __future__ import division
from __future__ import print_function
import tensorflow as tf
const1 = tf.constant(2)
const2 = tf.constant(3)
add_op = tf.add(const1,const2)
with tf.Session() as sess:
result = sess.run(add_op)
print(result)
然后打印出5张。
第二,我写了
#coding:UTF-8
from __future__ import absolute_import
from __future__ import division
from __future__ import print_function
import tensorflow as tf
const1 = tf.constant(2)
const2 = tf.constant(3)
add_op = tf.add(const1,const2)
print(add_op)
然后打印出张量(“Add:0”,shape=(),dtype=int32)。
我无法理解这个系统。
我使用Python和其他语言,所以我认为tf.add()
方法是add方法。但是,在Tensorflow的情况下,它似乎有所不同。
为什么是这部分
with tf.Session() as sess:
result = sess.run(add_op)
print(result)
必要吗?
这一部分有哪些功能?我建议阅读TensorFlow的官方指南,了解图书馆的核心概念,例如这里似乎存在的问题: 每个TensorFlow程序由两部分组成:
- 简单的补充:让我们看看您的示例,您的代码是
这将在图形中创建两个常量节点,并创建第二个节点将它们相加。从图形上看,这看起来像:const1 = tf.constant(2) const2 = tf.constant(3) add_op = tf.add(const1,const2)
- 为了使它更复杂一点,假设您有一个输入
,并想向其中添加一个常量x
。那么您的代码将是:3
你的图表是const1 = tf.constant(2) x = tf.placeholder(tf.float32) add_op = tf.add(const1,x)
x
是什么-只是它将是一个float32
。
如果你有一个GPU,你会注意到TensorFlow甚至还没有接触到GPU。即使你有一个拥有数百万训练图像的巨大神经网络,这一步也是以毫秒为单位的,因为不需要做“真正的”工作
现在是第二部分:运行上面定义的图。这就是工作发生的地方!
我们通过创建tf.Session
来启动TensorFlow,然后通过调用sess.run()
可以运行任何东西
在第二个示例中,我们现在必须告诉TensorFlow我们的值x
:
with tf.Session() as sess:
result = sess.run(add_op, {x: 5.0})
print(result)
tl;dr:每个TensorFlow程序都有两个部分:1。构建计算图,以及2。运行此图表。使用
tf.add
仅定义图形,但尚未执行任何添加。要运行此图,请使用与第一段代码相同的sess.run()
。thx!!你的答案对我来说很好,可以理解得很好。我有一个问题,我可以调用tf。会话方法是激活函数吗?我读了Tensorflow教程,但我不能很好地理解这部分。很好的解释,特别是对于初学者。
with tf.Session() as sess:
result = sess.run(add_op, {x: 5.0})
print(result)