Vowpal Wabbit тасует данные в нескольких онлайн-проходах?
Vowpal Wabbit автоматически перемешивает свои данные после каждой эпохи / прохода? Я надеюсь, что созданный файл кэша будет содержать метаданные тасования, которые необходимы для онлайн-алгоритмов, таких как стандартный метод SGD VW по умолчанию. Например
vw -d train.txt -c --passes 50 -f train.model
Если нет, у меня есть скрипт резервного копирования, который вручную перетасовывает данные при каждом проходе
# Create the initial regressor file
vw -d train.txt -f train.model
# For the next 49 passes, shuffle and then update the regressor file
for i in {0..49}
do
<some script: train.txt --> shuffled_data.txt>
vw -d shuffled_data.txt -i train.model -f train.model
done
Если VW автоматически не тасует, есть ли более эффективный способ выполнения вышеуказанного блока кода? Вики VW, к сожалению, неясна в отношении этого. Благодарю.
1 ответ
Нет, это не тасует. Могу поспорить, что не стоит тасовать данные. Перестановка очень интенсивна при вводе / выводе. Хотя может быть лучше сделать два прохода с разным порядком перемешивания, чем два прохода без перемешивания, с точки зрения конвергенции это, вероятно, так же дорого, как 10 проходов без перемешивания.