Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/311.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 为什么我不能运行张量并得到错误“;变量未初始化";_Python_Tensorflow_Keras_Initialization_Tensor - Fatal编程技术网

Python 为什么我不能运行张量并得到错误“;变量未初始化";

Python 为什么我不能运行张量并得到错误“;变量未初始化";,python,tensorflow,keras,initialization,tensor,Python,Tensorflow,Keras,Initialization,Tensor,我使用的是tensorflow 1.15.0 我正在尝试使用sess.run()获取keras层的输出值。我确定我已经指定了图层的输入形状,我可以看到一个输出张量的正确形状。但当我试图得到张量值时,有错误 代码如下: import numpy as np import tensorflow as tf from tensorflow import keras from tensorflow.keras import layers sess = tf.Session() layer = laye

我使用的是tensorflow 1.15.0

我正在尝试使用sess.run()获取keras层的输出值。我确定我已经指定了图层的输入形状,我可以看到一个输出张量的正确形状。但当我试图得到张量值时,有错误

代码如下:

import numpy as np
import tensorflow as tf
from tensorflow import keras
from tensorflow.keras import layers

sess = tf.Session()
layer = layers.Dense(3)
x = tf.ones((1, 4))
y = layer(x)
layer.weights # I want to get weights value, print it first
结果如预期:

[,
]

但当我试图得到张量值时:

sess.run(layer.weights[0])
弹出一条很长的错误消息:(以下是核心消息)

FailedPremissionError:从容器localhost读取资源变量dense/kernel时出错。这可能意味着变量未初始化。未找到:容器localhost不存在。(找不到资源:localhost/dense/kernel)


有人能帮我解决这个问题吗?谢谢。

在使用变量之前,可能需要初始化变量(在密集层中),例如。在声明变量后但在使用它们之前,尝试添加以下行:

sess.run(tf.global_variables_initializer())
您还可以从列表中调用初始化变量