Я хотел бы использовать слой сжатия AE для обучения простого классификатора или регрессора. На самом деле форма сжатого слоя (64,128), так как я могу преобразовать этот слой в целях классификации? Если я использую функцию выравнивания, мой новый слой имеет размер 8192 (полагаю, он слишком большой). Может ли кто-нибудь мне помочь?
Вот код:
input_img = Input(shape=(x_train1.shape[1], x_train1.shape[2])) # 0
conv1 = Convolution1D(16, 7, activation='relu', border_mode='same', init='glorot_normal',
W_regularizer=regularizers.l2(0.0005))(input_img) # 1
pool1 = MaxPooling1D(2, border_mode='same')(conv1) # 2
conv2 = Convolution1D(32, 5, activation='relu', border_mode='same', init='glorot_normal',
W_regularizer=regularizers.l2(0.0005))(pool1) # 3
pool2 = MaxPooling1D(2, border_mode='same')(conv2) # 4
conv3 = Convolution1D(64, 3, activation='relu', border_mode='same',
init='glorot_normal',W_regularizer=regularizers.l2(0.0005))(pool2) # 5
pool3 = MaxPooling1D(2, border_mode='same')(conv3) # 6
conv4 = Convolution1D(128, 3, activation='relu', border_mode='same', init='glorot_normal',
W_regularizer=regularizers.l2(0.0005))(pool3) # 7
pool4 = MaxPooling1D(2, border_mode='same')(conv4) # 8
stack_encoded = pool4
unpool4 = UpSampling1D(2)(pool4) # 9
deconv3 = Convolution1D(64, 3, activation='relu', border_mode='same',
init='glorot_normal',W_regularizer=regularizers.l2(0.0005))(unpool4) # 10
unpool3 = UpSampling1D(2)(deconv3) # 11
deconv2 = Convolution1D(32, 3, activation='relu', border_mode='same',
init='glorot_normal',W_regularizer=regularizers.l2(0.0005))(unpool3) # 12
unpool2 = UpSampling1D(2)(deconv2) # 13
deconv1 = Convolution1D(16, 5, activation='relu', border_mode='same',
init='glorot_normal',W_regularizer=regularizers.l2(0.0005))(unpool2) # 14
unpool1 = UpSampling1D(2)(deconv1) # 15
decoded = Convolution1D(1, 7, border_mode='same',
init='glorot_normal',W_regularizer=regularizers.l2(0.0005))(unpool1) # 16
Здесь сюжет_модель
Спасибо
Николас