Keras ConvLSTM2D: зачем использовать усредненный пул3d и как регрессировать - PullRequest
0 голосов
/ 23 марта 2019

я изучал Keras ConvLSTM2D: ValueError на выходном слое

Я хочу использовать тот же код, но я хочу сделать регрессию (одно значение). Я не знаю, как это сделать. И я также не понимаю использование последних слоев этого почтового кода. Почему используется средний опрос3d?

код по ссылке

model = Sequential()

model.add(ConvLSTM2D(
        filters=40,
        kernel_size=(3, 3),
        input_shape=(None, 135, 240, 1),
        padding='same',
        return_sequences=True))
model.add(BatchNormalization())

model.add(ConvLSTM2D(
        filters=40,
        kernel_size=(3, 3),
        padding='same',
        return_sequences=True))
model.add(BatchNormalization())

model.add(ConvLSTM2D(
        filters=40,
        kernel_size=(3, 3),
        padding='same',
        return_sequences=True))
model.add(BatchNormalization())

model.add(AveragePooling3D((1, 135, 240)))
model.add(Reshape((-1, 40)))
model.add(Dense(
        units=9,
        activation='sigmoid'))

model.compile(
        loss='categorical_crossentropy',
        optimizer='adadelta'
)
...