Как я могу интерпретировать RMSE для небольшого набора данных? - PullRequest
0 голосов
/ 28 октября 2019

Я обучаю сеть с 7 уровнями кодирования (conv, BN, relu, maxpool) и 5 ​​уровнями декодирования (conv, BN, relu, Upsampling).

Входные данные представляют собой матрицу размером 64 * 2000, а выходные данные представляют собой матрицу 125 * 256. Цель сети - интерпретировать необработанные данные, записанные датчиком, и прогнозировать скорость волны в соответствующей среде.

Я пытался обучить сеть с набором данных 200, 2000, 6000. Я использую как валидацию (0.1), так и тест. Независимо от того, насколько большой или маленький мой набор данных, я застряну с той же ошибкой проверки и проверки, которая не может предсказать ожидаемое свойство. Я ожидаю и RMSE 10-25, и я получаю RMSE 60-70. (RMSE начинается в 1540-1550, что абсолютно логично, и в конце концов, в 60-70 гг. он застрял с любым количеством эпох, размером партии или любым оптимизатором.)

Я ожидаю, что если я обучу свою сеть на небольшом наборе данныхЯ получаю большую среднеквадратичную величину в моем тестовом наборе данных по сравнению с набором данных, скажем, в 30 раз больше. Как я могу интерпретировать то, что я наблюдаю здесь? Я учу шум?

1 Ответ

0 голосов
/ 28 октября 2019

Это случай переоснащения, потому что ваша потеря слишком велика на этапе тестирования. Это простая проблема обобщения. Основная проблема заключается в минимизации потерь или RMSE. Проблемы могут быть такими, как

  1. Конфигурация модели
  2. Слишком мало данных
  3. Слишком меньше слоев
  4. Выбор оптимизатора и скорости обучения
  5. При предварительной обработке изображений может возникнуть шум данных

Поэтому попробуйте поэкспериментировать с оптимизаторами, инициализаторами, регуляризациями и попробуйте другие метрики, чтобы оценить вашу модель.

...