Python 图形已断开连接:无法获取图层处的张量张量值(“输入1:0”,形状=(无,299,299,3),dtype=float32);输入“U 1”;

Python 图形已断开连接:无法获取图层处的张量张量值(“输入1:0”,形状=(无,299,299,3),dtype=float32);输入“U 1”;,python,tensorflow,keras,deep-learning,Python,Tensorflow,Keras,Deep Learning,我正在尝试将热图用于exception模型(修改顶层): 导入tensorflow作为 进口cv2 将numpy作为np导入 标签=1 IMAGE_PATH='/home/piyush/Desktop/HV/HV_2/deep viz keras/images/doberman.png' img=tf.keras.preprocessing.image.load\u img(图像路径,目标大小=(299299)) img=tf.keras.preprocessing.image.img\u to

我正在尝试将热图用于
exception
模型(修改顶层):

导入tensorflow作为
进口cv2
将numpy作为np导入
标签=1
IMAGE_PATH='/home/piyush/Desktop/HV/HV_2/deep viz keras/images/doberman.png'
img=tf.keras.preprocessing.image.load\u img(图像路径,目标大小=(299299))
img=tf.keras.preprocessing.image.img\u to\u数组(img)
model_path='/home/piyush/Desktop/temp/model.h5'
model=tf.keras.models.load\u model(model\u路径)
输入=tf.keras.Input(形状=(299299,3))
#打印(model.summary())
#打印([model.get_layer('xception').layers中的层的layer.shape])
最终=tf.keras.Model(输入=Model.input,输出=Model.output)
打印(型号输入)
#提取器=tf.keras.Model(输入=输入,输出=[Model.layers中层的layer.output])
conv_layer=tf.keras.Model(输入=输入,输出=Model.get_layer('exception')。get_layer('block14_sepconv2_act')。输出)
如果运行此操作,则会出现以下错误:

        conv_layer = tf.keras.Model(inputs=inputs, outputs=model.get_layer('xception').get_layer('block14_sepconv2_act').output)

ValueError: Graph disconnected: cannot obtain value for tensor Tensor("input_1:0", shape=(None, 299, 299, 3), dtype=float32) at layer "input_1". The following previous layers were accessed without issue: []
你定义

inputs = tf.keras.Input(shape=(299,299,3))
但是千万不要在模型中使用这个变量。你可能只是想

inputs = model.inputs
因为您正在加载现有模型,而不是创建新模型。

已解决:

conv_层=tf.keras.Model(输入=Model.get_层('xception')。输入,输出=Model.get_层('xception')。get_层('block14_sepconv2_act')。输出)


模型断开连接的原因,因此输入和输出应该是同一个模型。

您的输入变量根本没有连接到模型。