Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/tensorflow/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 什么时候我必须在Tensorflow中初始化变量?_Python_Tensorflow - Fatal编程技术网

Python 什么时候我必须在Tensorflow中初始化变量?

Python 什么时候我必须在Tensorflow中初始化变量?,python,tensorflow,Python,Tensorflow,我试图理解张量流,以及如何理解它,首先要创建操作和变量,将它们添加到图形中,然后在会话中执行这些操作。 那么为什么在这段代码中我不必使用initialize_all_variables()方法呢? 我试图添加init=tf.initialize\u all_variables(),然后添加sess.run(init),但这是错误的。为什么在没有初始化的情况下可以工作 import tensorflow as tf import numpy as np x = tf.placeholder('f

我试图理解张量流,以及如何理解它,首先要创建操作和变量,将它们添加到图形中,然后在会话中执行这些操作。 那么为什么在这段代码中我不必使用initialize_all_variables()方法呢? 我试图添加
init=tf.initialize\u all_variables()
,然后添加
sess.run(init)
,但这是错误的。为什么在没有初始化的情况下可以工作

import tensorflow as tf 
import numpy as np
x = tf.placeholder('float', [2,3])
y = x*2
z = tf.Variable([[1,1,1],[1,1,1]], name = "z")
with tf.Session() as sess:
    x_data = np.arange(1,7).reshape((2,3))
    z.assign(x_data)
    res = sess.run(y, feed_dict = {x:x_data})
    print(res.dtype, z.dtype, z.get_shape())`

不允许读取未初始化的值。在上述情况下,您没有读取
z
,因此不需要对其进行初始化

如果查看
variables.py
可以看到
initialize\u all\u variables是一个连接到所有初始化器的组节点

def initialize_variables(var_list, name="init"):
...

 return control_flow_ops.group(
        *[v.initializer for v in var_list], name=name)
查看
z.initializer
,您可以看到它是一个
Assign
节点。因此,在TensorFlow中计算
tf.初始化所有变量
与在
z.赋值(…