Урок 10: Валидация и воспроизводимость
Валидация(проверка)
Разбейте наш набор данных на обучающую и проверочную выборки. Мы будем использовать проверочную выборку для проверки эффективности нашей модели. Размер проверочной выборки составляет 20% от всего нашего набора данных. Настройте размер с помощью параметра valid_p
в функции
Валидация выполняется путем передачи валидационного набора в метод fit во время обучения. Полученные метрики показывают производительность модели по сравнению с нашим валидационным набором.
MAE_val | RMSE_val | Loss_val | RegLoss_val | epoch | MAE | RMSE | Loss | RegLoss | |
---|---|---|---|---|---|---|---|---|---|
0 | 151.067062 | 159.602341 | 2.067798 | 0.0 | 0 | 75.920654 | 89.007133 | 0.699122 | 0.0 |
1 | 147.524399 | 155.866516 | 2.007845 | 0.0 | 1 | 74.146973 | 86.745255 | 0.676098 | 0.0 |
2 | 143.015457 | 151.105865 | 1.931547 | 0.0 | 2 | 71.729416 | 84.111290 | 0.645402 | 0.0 |
3 | 137.148010 | 144.921494 | 1.832287 | 0.0 | 3 | 68.274185 | 80.496658 | 0.602091 | 0.0 |
4 | 129.434494 | 136.787064 | 1.701819 | 0.0 | 4 | 64.227638 | 75.879417 | 0.549886 | 0.0 |
... | ... | ... | ... | ... | ... | ... | ... | ... | ... |
180 | 7.111052 | 9.061026 | 0.011818 | 0.0 | 180 | 4.582942 | 6.183656 | 0.004233 | 0.0 |
181 | 7.106644 | 9.057316 | 0.011808 | 0.0 | 181 | 4.587008 | 6.228304 | 0.004246 | 0.0 |
182 | 7.100244 | 9.049046 | 0.011786 | 0.0 | 182 | 4.592853 | 6.206255 | 0.004245 | 0.0 |
183 | 7.102000 | 9.050427 | 0.011790 | 0.0 | 183 | 4.603105 | 6.197680 | 0.004274 | 0.0 |
184 | 7.101621 | 9.050205 | 0.011789 | 0.0 | 184 | 4.579907 | 6.184962 | 0.004225 | 0.0 |
185 rows × 9 columns
Для изучения продвинутых методов проверки и тестирования обратитесь к руководству Тестирование и кросс-валидация в разделе Как сделать.
Воспроизводимость
Вариабельность результатов заключается в том, что SGD находит разные оптимумы при разных запусках. Большая часть случайности происходит из-за случайной инициализации весов, различных скоростей обучения и разного перемешивания данных в дата-лоадере. Мы можем контролировать генератор случайных чисел, установив его начальное значение (seed):
Чтобы получать идентичные результаты при каждом запуске модели, необходимо перед её обучением явно установить одно и то же случайное число в качестве начального значения генератора случайных чисел (random seed).
Last updated