Потери и точность сходятся, но модель все еще улучшается - PullRequest
0 голосов
/ 15 апреля 2019

Я использую tensorflow-gpu 1.9.0 для совместимости с версиями CUDA и cuDNN на наших машинах с графическим процессором.Это может быть актуально.

У меня есть сверточный автоэнкодер для извлечения признаков медицинских изображений.Не беспокоясь о возможном переоснащении, я могу сказать, насколько «хороша» текущая модель, просто взглянув на выходное изображение по сравнению с входным (поскольку автоэнкодер пытается восстановить входные данные, используя только узкие места).Я знаю, что модель не обязательно извлекает больше полезных функций, тем лучше она восстанавливает входные данные, но это не проблема и не вопрос.

Моя проблема заключается в следующем: потери в тренировке и точность сходятся примерно через 45 эпох,Если я посмотрю на вывод, то смогу ясно увидеть, что форма напоминает исходное изображение (я не могу показать эти изображения здесь).Если я продолжу тренировать модель, потери не продолжат уменьшаться (и при этом точность не увеличивается), , но , модель будет лучше восстанавливать входные данные.Я могу сказать, просто сравнив вход и выход рядом.

Я обучил модель до 1000 эпох.Восстановленные изображения намного лучше, чем у моделей 45 эпох, но потери одинаковы для обеих моделей (0,0070), одинаковы с точностью.

Это совершенно неожиданное поведение.Как может модель улучшиться, если потери останутся прежними?

Я использую функцию потерь binary_crossentropy.

1 Ответ

0 голосов
/ 15 апреля 2019

Вы можете добавить метрику (https://keras.io/metrics/), которая измеряет некоторую другую ошибку, такую ​​как MSE, и рассказать нам, как она работает.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...