gpt4 book ai didi

python - ValueError : Attempt to convert a value (None) with an unsupported type () to a Tensor. 展平层

转载 作者:行者123 更新时间:2023-12-04 07:36:31 36 4
gpt4 key购买 nike

我正在尝试使用 Keras 的 VGG16,我标记了 include_top=false但我遇到了错误,说 ValueError: Attempt to convert a value (None) with an unsupported type (<class 'NoneType'>) to a Tensor.这是代码:

input_shape = (150,150,3)
model_1 = VGG16(weights='imagenet',include_top=False,input_shape=input_shape)
Last_layer=model_1.layers[-1].output
print(Last_layer)
print(type(Last_layer))
Model_Vgg=keras.layers.Flatten()(Last_layer) #<---- error rised here

#Model_Vgg=keras.Model(model.input,layer_output)

Model_Vgg = layers.Dropout(0.5)(Model_Vgg)


Model_Vgg = layers.Dense(units=3, activation='softmax') (Model_Vgg)

model = keras.Model(inputs =model_1.input,outputs = Model_Vgg )
model.compile(loss='categorical_crossentropy',optimizer=optimizers.SGD(lr=0.005708),metrics=['accuracy'])

monitor = EarlyStopping(monitor='accuracy',patience=50, mode='auto', restore_best_weights=True)
model.fit(X_Train,Y_Train,callbacks=[monitor],epochs=280,verbose=0)
(loss, accuracy) = model.evaluate(X_Test, Y_Test, batch_size=32, verbose=50)
print("[INFO] loss={:.4f}, accuracy: {:.4f}%".format(loss,accuracy * 100))
它表明 print(type(Last_layer)) = <class 'keras.engine.keras_tensor.KerasTensor'>我不知道为什么该行指的是 None 类型对象

最佳答案

我对代码有同样的问题:

from keras.layers import Dense, Flatten
x = vgg.output(Flatten())
然后我把它改成
from tensorflow.keras import layers
x = layers.Flatten()(vgg.output)
它奏效了。

关于python - ValueError : Attempt to convert a value (None) with an unsupported type (<class 'NoneType' >) to a Tensor. 展平层,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67711358/

36 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com