Python 无入站节点-Keras CNN模型

Python 无入站节点-Keras CNN模型,python,keras-layer,Python,Keras Layer,我在keras培训了一名CNN模型,其结构如下 model_11 = Sequential() #Convolutional Layers model_11.add(Reshape((55, 1))) model_11.add(Conv1D(50, kernel_size=5, strides=1, padding="same", activation = 'relu')) model_11.add(Conv1D(24, kernel_size=4, strides=5,

我在keras培训了一名CNN模型,其结构如下

model_11 = Sequential()

#Convolutional Layers
model_11.add(Reshape((55, 1)))
model_11.add(Conv1D(50, kernel_size=5, strides=1, padding="same", activation = 'relu'))
model_11.add(Conv1D(24, kernel_size=4, strides=5, padding="same", activation = 'relu'))
model_11.add(Conv1D(23, kernel_size=2, strides=1, padding="same", activation = 'relu'))

#Dense Layers
model_11.add(Flatten())
model_11.add(Dense(units=30, activation='relu'))
model_11.add(Dense(units=15, activation='relu'))

model_11.add(Dense(units=1, activation='sigmoid'))

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

#Fit the model
model_11.fit(X_train, y_train, epochs=20, batch_size=20)


现在,我尝试了以下

model_11.layers[-3].output


这给了我以下错误

AttributeError:Layer Density_40没有入站节点。


有许多关于多个入站节点的解决方案,但到目前为止,我还没有看到任何关于无入站节点的解决方案。尽管如此,该模型运行良好(二元分类)。

这是因为当您定义一个
顺序的
而不指定第一层的输入形状时,计算图仅在
拟合
函数期间创建,因此层的输入和输出张量(以及节点)不会被计算

如果需要访问图层的输出张量,请为顺序模型中的第一个图层指定输入形状。因此,第一层定义如下:

model_11.add(Reshape((55, 1), input_shape=(55,))
现在
model_11.layers[-3]。输出将返回一个张量