Keras - Flatten 扁平化层
Flatten 用于扁平化输入。例如,如果将扁平化应用于输入形状为 (batch_size, 2,2) 的层,则该层的输出形状将为 (batch_size, 4)
Flatten 有一个参数,如下所示
keras.layers.Flatten(data_format = None)
data_format 是一个可选参数,用于在从一种数据格式切换到另一种数据格式时保留权重顺序。它接受 channels_last 或 channels_first 作为值。 channels_last 是默认值,它将输入形状标识为 (batch_size, ..., channels),而 channels_first 将输入形状标识为 (batch_size, channels, ...)
使用 Flatten 层的一个简单示例如下 −
>>> from keras.models import Sequential >>> from keras.layers import Activation, Dense, Flatten >>> >>> >>> model = Sequential() >>> layer_1 = Dense(16, input_shape=(8,8)) >>> model.add(layer_1) >>> layer_2 = Flatten() >>> model.add(layer_2) >>> layer_2.input_shape (None, 8, 16) >>> layer_2.output_shape (None, 128) >>>
其中,第二层输入形状为 (None, 8, 16),并且被展平为 (None, 128)。