Я задавался вопросом, отличается ли использование перекрестной проверки для нахождения наилучших параметров настройки для различных методов машинного обучения от отслеживания данных?
Ваше беспокойство находится на правильном месте, и по этой теме есть много литературы, например
- Коули, GC & Talbot, NLC: О чрезмерной подгонке при выборе модели и смещении последующего выбора при оценке эффективности, Журнал исследований в области машинного обучения, 11, 2079-2107 (2010).
- Boulesteix, A.-L .: Чрезмерный оптимизм в исследованиях биоинформатики., Bioinformatics, 26, 437-439 (2010). DOI: 10.1093 / биоинформатика / btp648
- Елизаров, М .; Guillemot, V .; Tenenhaus, A .; Strimmer, K. & Boulesteix, A.-L .: Чрезмерный оптимизм в биоинформатике: иллюстрация., Биоинформатика, 26, 1990-1998 (2010). DOI: 10.1093 / биоинформатика / btq323
Проблема заключается в том, что настройка гиперпараметра с перекрестной проверкой является процессом оптимизации, управляемой данными, и все равно будет склонна соответствовать вашему набору данных (меньше, чем настройка из-за ошибки повторного замещения, но все же). Попытка использовать результаты перекрестной проверки настройки в качестве «независимой» меры производительности - это все равно, что съесть пирог (= настройка) и сохранить (= оценить итоговую производительность модели).
Это не означает, что вы не должны использовать перекрестную проверку для настройки гиперпараметра. Это просто означает, что вы можете использовать его только для одной цели. Либо оптимизируйте, либо измерьте производительность модели в целях проверки.
Решение состоит в том, что вам нужно сделать независимую проверку для измерения качества модели, полученной с настроенными гиперпараметрами. Это называется вложенной или двойной проверкой. Здесь вы найдете ряд вопросов и ответов по этим темам.
Концептуально, я хотел бы сказать, что обучение включает в себя все виды причудливых шагов, чтобы соответствовать не только «обычным» параметрам модели, но также соответствовать (автонастройке) гиперпараметрам. Таким образом, оптимизация λ на основе данных, безусловно, является частью обучения модели.
Как правило, вы также можете сказать, что обучение модели - это все, что нужно сделать, прежде чем вы получите готовую к использованию функцию окончательного черного ящика, способную генерировать прогнозы для новых случаев.
PS: я нахожу терминологию «тестирование против валидации» очень запутанной, потому что в моей области «валидация» означает доказательство того, что окончательная модель соответствует цели, и поэтому другие люди называют тестирование, а не валидацию. Я предпочитаю называть внутренний набор тестов «набором тестов настройки», а внешний - «набором финальных тестов проверки» или тому подобное.
Обновить:
Так что, если моя модель (т.е. мой параметр настройки в этом случае) не проходит внешнюю проверку, что мне тогда делать?
Как правило, это не то, что просто происходит: есть типичные ситуации, которые могут вызвать такой сбой. И все такие ситуации, о которых я знаю, являются переобучающими ситуациями. Вы должны знать, что, хотя регуляризация помогает сократить необходимое количество обучающих случаев, оптимизация на основе данных требует больших объемов данных.
Мои рекомендации:
Как правило, вы (должны) уже иметь приблизительные ожидания, например, какую производительность следует достичь, какую производительность вы считаете подозрительно привлекательной. Или есть спецификации, какую производительность вам нужно достичь и базовую производительность. Исходя из этого и количества доступных вариантов обучения (для выбранной вами схемы разбиения), рассчитайте ожидаемую неопределенность для внутренних (настраивающих) тестов. Если эта неопределенность указывает на то, что вы не сможете получить значимые сравнения, не проводите оптимизацию на основе данных.
Вы должны проверить, насколько стабильны оба полученных прогноза с выбранным λ и оптимальным λ, найденным процедурой автонастройки. Если λ не является достаточно стабильным в отношении различных разбиений ваших данных, оптимизация не сработала.
Если вы обнаружите, что либо вы не сможете выполнить оптимизацию на основе данных, либо что она все-таки не сработала, вы можете выбрать λ исходя из своего экспертного знания, например, из опыта работы с аналогичными данными. Или из-за знания, что если вы обнаружите, что оптимизация не удалась, вам потребуется более сильная регуляризация: переоснащение, которое приводит к неудаче, приводит к слишком сложным моделям.