Я пытаюсь реализовать поиск сетки или более сложный поиск гиперпараметра в Vowpal Wabbit. Существует ли относительно простой способ получить значение функции потерь, полученное в наборе валидации (holdout in vw) для этой цели? VW должен был вычислить его, например. для каждого количества проходов, поскольку ранняя остановка происходит в зависимости от ее стоимости.Получить потерю удержания в Vowpal Wabbit
Пока что я объединил это, создав отдельный файл с набором данных валидации, сохраняя предсказания разных моделей в этом наборе данных и сравнивая их производительность на питоне, тем самым вызывая ненужную трату данных. Но, может быть, есть способ явно использовать оценки vw holdout?
См. '--holdout_after' (и' vw -h | grep holdout'). Тем не менее, я также обычно готовлю отдельный набор валидации, поэтому я могу сравнить модели, обученные различным формам обучения, и составить график обучения. Я также вычисляю потерю поезда (ошибка поезда) для оценки количества переобучения. Я могу предоставить некоторые скрипты. –
Спасибо! Я был бы очень признателен, если бы вы использовали сценарии для обучения кривым. Вычисляют ли они прогрессивные потери на каждом этапе обучения? Что касается удержания, я пытался использовать '--holdout_after', но я не знаю, как получить от этого потери, или сохранить предсказания для удержания после каждого прохода. Похоже, что vw '-p' флаг, когда обучение означает сохранение предсказаний по набору поездов, а не по удержанию. – kurtosis
См. Https://github.com/JohnLangford/vowpal_wabbit/pull/841 (мои другие сценарии слишком специфичны для моих собственных экспериментальных установок, что не полезно для кого-либо еще) –