@Andrei1penguin1

Почему обучение модели застревает на валидационных потерях в 0.02?

Добрый день, для обучения используется keras в составе tensorflow, задача-регрессия ограничивающего прямоугольника, вот модель:
inputs = Input(shape=(300, 300, 1))
    x = DepthwiseConv2D((3, 3), padding="same")(inputs)
    x = BatchNormalization()(x)
    x = Activation("relu")(x)
    x = Conv2D(32, (1, 1), strides=2, padding="same")(x)
    x = BatchNormalization()(x)
    x = Activation("relu")(x)
    x = DepthwiseConv2D((3, 3), padding="same")(x)
    x = BatchNormalization()(x)
    x = Activation("relu")(x)
    x = Conv2D(64, (1, 1), strides=2, padding="same")(x)
    x = BatchNormalization()(x)
    x = Activation("relu")(x)
    x = DepthwiseConv2D((3, 3), padding="same")(x)
    x = BatchNormalization()(x)
    x = Activation("relu")(x)
    x = Conv2D(128, (1, 1), strides=2, padding="same")(x)
    x = BatchNormalization()(x)
    x = Activation("relu")(x)
    x = DepthwiseConv2D((3, 3), padding="same")(x)
    x = BatchNormalization()(x)
    x = Activation("relu")(x)
    x = Conv2D(128, (1, 1), strides=2, padding="same")(x)
    x = BatchNormalization()(x)
    x = Activation("relu")(x)
    x = Flatten()(x)
    x = Dense(512)(x)
    out = Dense(4, activation="sigmoid")(x)
    model = Model(inputs, out)
    model.compile(optimizer=RMSprop(learning_rate=0.001), loss="mse", metrics=[iou], run_eagerly=True)

То есть архитектура довольно схожа с MobileNet, обучение происходит при batch_size=128 и количество тренировочных и валидационных данных 2000 и 750 соответственно Результат модели-выдача x,y верхнего левого и правого нижнего углов, все метки нормализованы между 0 и 1 (сигмоида обоснована) Тем не менее уже после первых нескольких эпох (от 1 до 3) валидационная функция потерь застревает на 0.02 (0.0199-0.0203) и никуда из этого диапазона не выходит При этом другие модели работают хорошо Подскажите пожалуйста, в чем загвоздка?
  • Вопрос задан
  • 67 просмотров
Пригласить эксперта
Ответы на вопрос 1
freeExec
@freeExec
Участник OpenStreetMap
Может сеть не способна выдать нужный вам результат.
И потом, обычно боксы делают не как координаты углов, а как местоположение объекта и подгонку заранее заготовленных рамок с разными отношениями сторон.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы