Я создал созданную модель для 16 помеченных изображений, все размещены в 1 локальном каталоге. Размер этой модели составляет 300 МБ на моем локальном диске. Теперь я увеличил эту существующую модель еще на 2 типа изображений меток и поместил их в один и тот же локальный каталог вместе с 16 ранее помеченными изображениями. Размер этой новой модели на моем локальном диске составляет всего 100 МБ, хотя он предсказывает правильный вывод. Это правильно построено? Я не уверен, почему размер этой модели уменьшен.
Изменения в коде меняются только в методе createModel: -
def createModel():
#model = Sequential()
#model.add(Conv2D(20,(5,5),padding="same",input_shape=inputShape))
#model.add(Activation("relu"))
#model.add(MaxPooling2D(pool_size=(2, 2), strides=(2, 2)))
#model.add(Conv2D(50, (5, 5), padding="same"))
#model.add(Activation("relu"))
#model.add(MaxPooling2D(pool_size=(2, 2), strides=(2, 2)))
#model.add(Flatten())
#model.add(Dense(500))
#model.add(Activation("relu"))
#model.add(Dense(output_dim=16))
#model.add(Activation("softmax"))
model = load_model('test')
model.pop()
model.pop()
for layer in model.layers:
layer.trainable = False
model.add(Dense(output_dim=18,name='newDen',activation='softmax'))
opt = Adam(lr=INIT_LR, decay=INIT_LR / EPOCHS)
model.compile(loss="categorical_crossentropy", optimizer=opt,
metrics=
["accuracy"])
return model
Ранее создал модель, используя закомментированные строки, а затем переобучил существующую модель I, удалив последние 2 слоя.