Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/282.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/10.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,我试图找出为什么在下面的两种方法中,当我尝试在Tensorflow中初始化变量时,方法2会抛出错误 import tensorflow as tf sess = tf.InteractiveSession() 方法1 此方法可以很好地返回正确的输出 with tf.variable_scope('layer_1'): W1 = tf.get_variable(name="weights1", shape=[3, 10], initializer=tf.zeros_initializer

我试图找出为什么在下面的两种方法中,当我尝试在Tensorflow中初始化变量时,方法2会抛出错误

import tensorflow as tf
sess = tf.InteractiveSession()
方法1

此方法可以很好地返回正确的输出

with tf.variable_scope('layer_1'):
    W1 = tf.get_variable(name="weights1", shape=[3, 10], initializer=tf.zeros_initializer())

sess.run(tf.global_variables_initializer())

print(sess.run(W1))
方法2

此方法会抛出一个错误

with tf.variable_scope('layer_2'):
    W2 = tf.get_variable(tf.zeros(shape=[3, 10], name="weights2"))

sess.run(tf.global_variables_initializer())

print(sess.run(W2))
我收到的方法2的错误消息是:

TypeError: Expected float32, got 'layer_2/' of type 'str' instead.
到的第一个(位置)参数是变量的
名称
。所以你的第二个代码相当于

tf.get_variable(name=tf.zeros(shape=[3, 10], name="weights2"))
尝试使用
tf.Tensor
作为变量名是行不通的(我很惊讶它之前没有给出错误)

你也许想改做

tf.Variable(tf.zeros(shape=[3, 10]), name="weights2")