80-20 или 80-10-10 для обучения моделям машинного обучения? - PullRequest
0 голосов
/ 18 марта 2020

У меня очень базовый c вопрос.

1) Когда рекомендуется хранить часть данных для проверки и когда это не нужно? Например, когда мы можем сказать, что лучше иметь 80% тренировок, 10% проверок и 10% тестов, а когда можно сказать, что достаточно просто 80% тренировок и 20% тестов?

2) Также, используется ли K-Cross Validation go с простым разделением (обучение-тестирование)?

1 Ответ

0 голосов
/ 18 марта 2020

Я считаю более ценным иметь набор для обучения и проверки, если у меня есть набор данных ограниченного размера. В любом случае, набор проверки по сути является тестовым набором. Причина этого заключается в том, что вы хотите, чтобы ваша модель могла экстраполировать, имея высокую точность данных, на которых она обучена, а также высокую точность данных, которых она не видела раньше. Набор проверки позволяет вам определить, так ли это. Я обычно беру не менее 10% данных и делаю их проверочными. Важно, чтобы данные проверки выбирались случайным образом, чтобы их распределение вероятностей совпадало с распределением обучающего набора. Затем я отслеживаю потери проверки и сохраняю модель с наименьшими потерями проверки. Я также использую регулируемую скорость обучения. Для этого Keras имеет два полезных обратных вызова, ModelCheckpoint и ReduceLROnPlateau. Документация здесь . С помощью набора проверки вы можете отслеживать потерю проверки во время обучения и выяснить, правильно ли тренируется ваша модель (точность обучения) и правильно ли она экстраполируется (потеря проверки). В среднем потери при проверке должны уменьшаться с увеличением точности модели. Если потери при проверке начинают увеличиваться с высокой точностью обучения, ваша модель переоснащается, и вы можете предпринять корректирующие действия, такие как добавление слоев, регуляризаторов или уменьшение сложности модели. Документация для этого здесь и здесь . Чтобы понять, почему я использую регулируемую скорость обучения, см. Ответ на вопрос о переполнении стека здесь .

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