Этот вопрос может быть слишком открытым, чтобы получить окончательный ответ, но, надеюсь, нет.
Алгоритмы машинного обучения, такие как SVM, GBM, Random Forest и т. Д., Как правило, имеют некоторые свободные параметры, которые, помимо некоторых правил большого пальца, необходимо настраивать для каждого набора данных. Обычно это делается с помощью некоторой техники повторной выборки (начальной загрузки, CV и т. Д.), Чтобы соответствовать набору параметров, дающих наилучшую ошибку обобщения.
Мой вопрос, ты можешь зайти слишком далеко? Люди говорят о поиске по сетке и так далее, но почему бы просто не рассматривать это как проблему оптимизации и детализировать до максимально возможного набора параметров? Я спросил о механике этого вопроса в этом вопросе, но он не получил большого внимания. Может быть, вопрос был задан плохо, но, возможно, сам вопрос представляет собой плохой подход, который люди обычно не делают?
Что меня беспокоит, так это отсутствие регуляризации. Путем повторной выборки я могу обнаружить, что лучшее количество деревьев, которые нужно вырастить в GBM для этого набора данных, - это 647 с глубиной взаимодействия 4, но насколько я могу быть уверен, что это будет верно для новых данных (при условии, что новая популяция идентично обучающему набору)? Без разумного значения «сокращения» до (или, если хотите, без информативной предварительной информации) повторной выборки кажется лучшим, что мы можем сделать. Я просто не слышу никаких разговоров об этом, поэтому меня удивляет, что я что-то упускаю.
Очевидно, что выполнение большого количества итераций приводит к большим вычислительным затратам, чтобы выжать из модели каждый последний бит предсказательной силы, поэтому ясно, что это то, что вы бы сделали, если бы у вас было время / решимость выполнить оптимизацию и каждый бит улучшение производительности является ценным.
источник
Ответы:
На этот вопрос есть однозначный ответ: «Да, безусловно, можно переопределить критерий выбора модели, основанный на перекрестной проверке, и получить модель, которая плохо обобщается! ». На мой взгляд, это, как представляется, не очень ценится, но является существенной ошибкой в применении методов машинного обучения и является основным направлением моих текущих исследований; Я написал две статьи на эту тему
GC Cawley и NLC Talbot, Чрезмерная подгонка при выборе модели и последующая систематическая ошибка выбора при оценке производительности, Journal of Machine Learning Research, 2010. Research, vol. 11, с. 2079-2107, июль 2010 г. ( www )
который демонстрирует, что чрезмерная подгонка при выборе модели является существенной проблемой в машинном обучении (и вы можете получить сильно смещенные оценки производительности, если вы сократите углы в выборе модели во время оценки производительности) и
GC Cawley и NLC Talbot, Предотвращение чрезмерной подгонки при выборе модели с помощью байесовской регуляризации гиперпараметров, Journal of Machine Learning Research, том 8, страницы 841-861, апрель 2007 г. ( www )
где критерий выбора модели на основе перекрестной проверки регуляризован, чтобы попытаться улучшить перетекание при выборе модели (что является ключевой проблемой, если вы используете ядро со многими гиперпараметрами).
Я сейчас пишу статью о выборе моделей на основе поиска по сетке, который показывает, что, безусловно, можно использовать сетку, которая слишком хороша, когда вы в конечном итоге получаете модель, которая статистически уступает модели, выбранной намного более грубая сетка (вопрос о StackExchange вдохновил меня на поиск по сетке).
Надеюсь это поможет.
PS Беспристрастная оценка производительности и надежный выбор модели действительно могут быть вычислительно дорогими, но по моему опыту это стоит того. Вложенная перекрестная проверка, где внешняя перекрестная проверка используется для оценки производительности, а внутренняя перекрестная проверка для выбора модели является хорошим базовым подходом.
источник
Было показано, что перекрестная проверка и начальная загрузка дают оценки частоты ошибок, которые почти беспристрастны, а в некоторых случаях более точны при начальной загрузке по перекрестной проверке. Проблема с другими методами, такими как повторное замещение, состоит в том, что, оценивая ошибку в том же наборе данных, который вы используете для классификатора, вы можете существенно недооценить частоту ошибок и привести к алгоритмам, которые содержат слишком много параметров и не будут предсказывать будущие значения с такой точностью, как алгоритм подходит для небольшого набора параметров. Ключом к использованию статистических методов является то, что данные, которые вы используете для классификации классификатора, являются типичными для данных, которые вы увидите в будущем, когда классы отсутствуют, и должны быть предсказаны классификатором. Если вы думаете, что будущие данные могут сильно отличаться, статистические методы не могут помочь, и я не
источник
Я подозреваю, что один из ответов здесь заключается в том, что в контексте оптимизации вы пытаетесь найти глобальный минимум
noisy
функции затрат. Таким образом, у вас есть все проблемы многомерной глобальной оптимизации и стохастического компонента, добавленного к функции стоимости.Многие из подходов для решения проблем локальных минимумов и дорогого пространства поиска сами имеют параметры, которые могут нуждаться в настройке, такие как методы имитации отжига или монте-карло.
Я подозреваю, что в идеальной вычислительно неограниченной вселенной вы могли бы попытаться найти глобальный минимум вашего пространства параметров с достаточно жесткими ограничениями на смещение и дисперсию вашей оценки функции ошибки. Не будет ли проблема в регуляризации этого сценария, поскольку вы можете пересмотреть образец до бесконечности.
Я подозреваю, что в реальном мире вы легко можете оказаться в локальном минимуме.
Как вы упомянули, это отдельная проблема, но она все еще оставляет вас открытыми для переоснащения из-за проблем с выборкой, связанных с доступными вам данными, и их связи с реальным базовым распределением пробного пространства.
источник
Это сильно зависит от алгоритма, но вы, конечно, можете - хотя в большинстве случаев это будет просто бесполезная трата усилий.
Таким образом, хорошо (на основе практики, представленной в хороших журналах) полная внешняя проверка выбора параметров - это не то, что вам строго необходимо делать (в отличие от проверки выбора функций), но только если оптимизация является поверхностной, а классификатор довольно нечувствителен к параметры.
источник
Да, параметры могут быть «перенастроены» на тренировочные и тестовые настройки во время перекрестной проверки или начальной загрузки. Однако есть несколько способов предотвратить это. Первый простой метод состоит в том, что вы делите свой набор данных на 3 раздела, один для тестирования (~ 20%), один для тестирования оптимизированных параметров (~ 20%) и один для подбора классификатора с заданными параметрами. Это возможно, только если у вас достаточно большой набор данных. В других случаях предлагается двойная перекрестная проверка.
Ромен Франсуа и Флоран Лангрогне, «Двойная перекрестная проверка для классификации на основе моделей», 2006
источник