Python 如何删除Inception模型的最后一层

Python 如何删除Inception模型的最后一层,python,tensorflow,keras,Python,Tensorflow,Keras,大家好,我关注了Github的一个论坛,该论坛讨论了如何删除预训练模型的最后一层。然而,这对我不起作用;也许我做错了什么 我在跟踪,这是我的代码。我以为我所要做的就是model.layers[-2]。output,但它告诉我AttributeError:“Tensor”对象没有属性“summary” import tensorflow as tf import tensorflow.keras as keras import tensorflow.keras.backend as K impor

大家好,我关注了Github的一个论坛,该论坛讨论了如何删除预训练模型的最后一层。然而,这对我不起作用;也许我做错了什么

我在跟踪,这是我的代码。我以为我所要做的就是
model.layers[-2]。output
,但它告诉我
AttributeError:“Tensor”对象没有属性“summary”

import tensorflow as tf
import tensorflow.keras as keras
import tensorflow.keras.backend as K
import numpy as np
from tensorflow.keras.layers import Dense, Input, Layer
from tensorflow.keras.models import Model
from tensorflow.keras.applications.inception_v3 import InceptionV3


model = InceptionV3()
print(model.summary())

modele = model.layers[-2].output
print(modele.summary())

modele变量只是一个图层。你必须做到:

model = InceptionV3()
print(model.summary())

output = model.layers[-2].output
modele = Model(inputs = model.input, outputs = output)
print(modele.summary())

哇,这太奇怪了……有什么建议可以更好地理解这一点?我想我可以整天坐在那里阅读文档,但你们有什么策略可以提供吗?这是keras函数API。您可以在此处了解更多信息: