Я работаю над рукописной проблемой распознавания di git, использующей OpenCV для предварительной обработки и Keras / Tensorflow для вывода. Я обучил модель по рукописному набору данных MNIST di git, где каждое изображение имеет размер 28x28 пикселей. Сейчас я работаю с новым набором цифр и планирую продолжить обучение с исходной архитектурой модели и перенести обучение через инициализацию веса.
Итак, вот моя проблема : я возникла проблема с потерей некоторых функций при уменьшении до 28x28 пикселей. Вот пример
Это должно быть два, и крошечный пробел в верхнем l oop важен, чтобы помочь дифференцировать его от 9 или 8. Но моя предварительно обработанная версия теряет пробел, поэтому l oop выглядит закрытым.
Я отправил еще один вопрос о том, как выполнить сокращение без потери функций. С другой стороны, возможно, я хотел бы уменьшить размер до большего размера, например 56x56 пикселей , где я с меньшей вероятностью потеряю такие функции. Как я могу настроить все так, чтобы этот новый размер сливался с моделью, не делая предварительно обученные веса бесполезными?
Вот определение предварительно обученной модели:
def define_model(learning_rate, momentum):
model = Sequential()
model.add(Conv2D(32, (3,3), activation = 'relu', kernel_initializer = 'he_uniform', input_shape=(28,28,1)))
model.add(MaxPooling2D((2,2)))
model.add(Conv2D(64, (3,3), activation = 'relu', kernel_initializer = 'he_uniform'))
model.add(Conv2D(64, (3,3), activation = 'relu', kernel_initializer = 'he_uniform'))
model.add(MaxPooling2D((2,2)))
model.add(Flatten())
model.add(Dense(100, activation='relu', kernel_initializer='he_uniform'))
model.add(Dense(10, activation='softmax'))
opt = SGD(lr=learning_rate, momentum=momentum)
model.compile(optimizer=opt, loss='categorical_crossentropy', metrics=['accuracy'])
return model
Вот одна из моих идей: увеличьте размер ядра max-pool после первого слоя так, чтобы вывод этого слоя имел ту же форму, как если бы я использовал изображения размером 28x28 пикселей. (но разве это не заставит меня потерять эту функцию в любом случае?)