简体   繁体   English

AssertionError:无法计算 output 张量(“dense_17/Sigmoid:0”,shape=(None,1),dtype=float32)

[英]AssertionError: Could not compute output Tensor(“dense_17/Sigmoid:0”, shape=(None, 1), dtype=float32)

I'm trying to train DC-CNN model for text classification on a given dataset.我正在尝试训练 DC-CNN model 对给定数据集进行文本分类。 What am I doing wrong here?我在这里做错了什么?

Code for Model: Model 的代码:

def define_model(length, vocab_size):
    # channel 1
    inputs1 = Input(shape=(length,))
    embedding1 = Embedding(vocab_size, 100)(inputs1)
    conv1 = Conv1D(filters=32, kernel_size=4, activation='relu')(embedding1)
    drop1 = Dropout(0.5)(conv1)
    pool1 = MaxPooling1D(pool_size=1)(drop1)
    flat1 = Flatten()(pool1)
 

    # channel 2
    inputs2 = Input(shape=(length,))
    embedding2 = Embedding(vocab_size, 100)(inputs2)
    conv2 = Conv1D(filters=32, kernel_size=6, activation='relu')(embedding2)
    drop2 = Dropout(0.5)(conv2)
    pool2 = MaxPooling1D(pool_size=1)(drop2)
    flat2 = Flatten()(pool2)


 
    merged = concatenate([flat1, flat2])
    
    # interpretation
    dense1 = Dense(10, activation='relu')(merged)
    outputs = Dense(1, activation='sigmoid')(dense1)
    model = Model(inputs=[inputs1, inputs2], outputs=outputs)

    # compile
    model.compile(loss='binary_crossentropy', optimizer='adam', metrics=['accuracy'])

    # summarize
    print(model.summary())

   
    return model

model = define_model(length, vocab_size)
model.fit([trainX], array(trainLabels), epochs=10, batch_size=16)

I am getting this error:我收到此错误:

AssertionError: in user code:

    /usr/local/lib/python3.6/dist-packages/tensorflow/python/keras/engine/training.py:806 train_function  *
        return step_function(self, iterator)
    /usr/local/lib/python3.6/dist-packages/tensorflow/python/keras/engine/training.py:796 step_function  **
        outputs = model.distribute_strategy.run(run_step, args=(data,))
    /usr/local/lib/python3.6/dist-packages/tensorflow/python/distribute/distribute_lib.py:1211 run
        return self._extended.call_for_each_replica(fn, args=args, kwargs=kwargs)
    /usr/local/lib/python3.6/dist-packages/tensorflow/python/distribute/distribute_lib.py:2585 call_for_each_replica
        return self._call_for_each_replica(fn, args, kwargs)
    /usr/local/lib/python3.6/dist-packages/tensorflow/python/distribute/distribute_lib.py:2945 _call_for_each_replica
        return fn(*args, **kwargs)
    /usr/local/lib/python3.6/dist-packages/tensorflow/python/keras/engine/training.py:789 run_step  **
        outputs = model.train_step(data)
    /usr/local/lib/python3.6/dist-packages/tensorflow/python/keras/engine/training.py:747 train_step
        y_pred = self(x, training=True)
    /usr/local/lib/python3.6/dist-packages/tensorflow/python/keras/engine/base_layer.py:985 __call__
        outputs = call_fn(inputs, *args, **kwargs)
    /usr/local/lib/python3.6/dist-packages/tensorflow/python/keras/engine/functional.py:386 call
        inputs, training=training, mask=mask)
    /usr/local/lib/python3.6/dist-packages/tensorflow/python/keras/engine/functional.py:517 _run_internal_graph
        assert x_id in tensor_dict, 'Could not compute output ' + str(x)

    AssertionError: Could not compute output Tensor("dense_17/Sigmoid:0", shape=(None, 1), dtype=float32)

I have tried to reshape the inputs "trainX" and "trainLabels" by using this code but I got the same error我试图通过使用此代码来重塑输入“trainX”和“trainLabels”,但我得到了同样的错误

trainX=np.reshape(trainX,(40, 50))
trainLabels=np.reshape(trainLabels,(40, 1))

This is the summary of the model:这是model的总结:

__________________________________________________________________________________________________
Layer (type)                    Output Shape         Param #     Connected to                     
==================================================================================================
input_17 (InputLayer)           [(None, 20)]         0                                            
__________________________________________________________________________________________________
input_18 (InputLayer)           [(None, 20)]         0                                            
__________________________________________________________________________________________________
embedding_16 (Embedding)        (None, 20, 100)      541100      input_17[0][0]                   
__________________________________________________________________________________________________
embedding_17 (Embedding)        (None, 20, 100)      541100      input_18[0][0]                   
__________________________________________________________________________________________________
conv1d_16 (Conv1D)              (None, 17, 32)       12832       embedding_16[0][0]               
__________________________________________________________________________________________________
conv1d_17 (Conv1D)              (None, 15, 32)       19232       embedding_17[0][0]               
__________________________________________________________________________________________________
dropout_16 (Dropout)            (None, 17, 32)       0           conv1d_16[0][0]                  
__________________________________________________________________________________________________
dropout_17 (Dropout)            (None, 15, 32)       0           conv1d_17[0][0]                  
__________________________________________________________________________________________________
max_pooling1d_16 (MaxPooling1D) (None, 17, 32)       0           dropout_16[0][0]                 
__________________________________________________________________________________________________
max_pooling1d_17 (MaxPooling1D) (None, 15, 32)       0           dropout_17[0][0]                 
__________________________________________________________________________________________________
flatten_16 (Flatten)            (None, 544)          0           max_pooling1d_16[0][0]           
__________________________________________________________________________________________________
flatten_17 (Flatten)            (None, 480)          0           max_pooling1d_17[0][0]           
__________________________________________________________________________________________________
concatenate_8 (Concatenate)     (None, 1024)         0           flatten_16[0][0]                 
                                                                 flatten_17[0][0]                 
__________________________________________________________________________________________________
dense_16 (Dense)                (None, 10)           10250       concatenate_8[0][0]              
__________________________________________________________________________________________________
dense_17 (Dense)                (None, 1)            11          dense_16[0][0]                   
==================================================================================================
Total params: 1,124,525
Trainable params: 1,124,525
Non-trainable params: 0

How can I fix this error Please?请问我该如何解决这个错误?

since you have 2 inputs in keras model, so you have to split your trainX in to 2 different arrays, or a tuple of 2 arrays. since you have 2 inputs in keras model, so you have to split your trainX in to 2 different arrays, or a tuple of 2 arrays. you cannot give single array as input.您不能将单个数组作为输入。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 错误:断言错误:无法计算输出张量(“dense_2/truediv:0”,形状=(无,无,1),dtype=float32) - Error: AssertionError: Could not compute output Tensor(“dense_2/truediv:0”, shape=(None, None, 1), dtype=float32) AssertionError:无法计算 output 张量(“softmax_layer/Identity:0”,shape=(None, 27, 8870),dtype=float32) - AssertionError: Could not compute output Tensor(“softmax_layer/Identity:0”, shape=(None, 27, 8870), dtype=float32) python - ValueError: Tensor Tensor("dense_2/Softmax:0", shape=(?, 43), dtype=float32) 不是这个图的一个元素 - python - ValueError: Tensor Tensor("dense_2/Softmax:0", shape=(?, 43), dtype=float32) is not an element of this graph Tensor(“dense_2/Softmax:0”, shape=(?, 10), dtype=float32) 不是该图的元素 - Tensor(“dense_2/Softmax:0”, shape=(?, 10), dtype=float32) is not an element of this graph ValueError:收到呼叫 arguments: • inputs=tf.Tensor(shape=(None, 1), dtype=float32) • training=None - ValueError : Call arguments received: • inputs=tf.Tensor(shape=(None, 1), dtype=float32) • training=None ValueError:模型输出“Tensor(“activation_1/Identity:0”, shape=(?, 3), dtype=float32)”的形状无效 - ValueError: Model output "Tensor("activation_1/Identity:0", shape=(?, 3), dtype=float32)" has invalid shape ValueError: Tensor("ExponentialDecay_4:0", shape=(), dtype=float32) - ValueError: Tensor("ExponentialDecay_4:0", shape=(), dtype=float32) 图断开连接:无法在“input_1”层获取张量 Tensor("input_1:0", shape=(None, 299, 299, 3), dtype=float32) 的值 - Graph disconnected: cannot obtain value for tensor Tensor("input_1:0", shape=(None, 299, 299, 3), dtype=float32) at layer "input_1" 类型错误:添加的图层必须是类图层的实例。 找到:Tensor("concatenate_6/concat:0", shape=(None, 4608), dtype=float32) - TypeError: The added layer must be an instance of class Layer. Found: Tensor("concatenate_6/concat:0", shape=(None, 4608), dtype=float32) 图表断开:无法在“input_5”层获取张量 Tensor(“input_5:0”, shape=(None, None, None, 128), dtype=float32) 的值 - Graph disconnected: cannot obtain value for tensor Tensor(“input_5:0”, shape=(None, None, None, 128), dtype=float32) at layer “input_5”
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM