了解 Keras model.summary()

Understanding keras model.summary()

我正在尝试理解 keras 中的 model.summary(),我的代码为:

model = Sequential([
        Dense(3,activation='relu',input_shape=(6,)),
        Dense(3,activation='relu'),
        Dense(1),
    ])
model.compile(optimizer='adam',
                 loss='mean_squared_error',
                  metrics=['mae','mape','mse','cosine']
                 )

当我 print(model.summary()) 我得到输出

_________________________________________________________________
Layer (type)                 Output Shape              Param #   
=================================================================
dense_16 (Dense)             (None, 3)                 21        
_________________________________________________________________
dense_17 (Dense)             (None, 3)                 12        
_________________________________________________________________
dense_18 (Dense)             (None, 1)                 4         
=================================================================
Total params: 37
Trainable params: 37
Non-trainable params: 0
_________________________________________________________________
None

对于我描述的模型输入层,我无法理解 dense_16、dense_17 和 dense_18 的含义。

这些只是您图层的名称。如果您没有明确指定图层名称,它们将自动命名和编号。

这些只是 Keras 自动生成的层的名称。要手动命名图层,请将关键字参数 name='my_custon_name' 传递给要命名的每个图层。请注意,图层名称在模型中必须是唯一的。

层名称对于调试和获取代码中的特定层很有用,例如使用 model.get_layer(layer_name)