Влияние --oaa 2 и --loss_function = logistic в Vowpal Wabbit
Какие параметры я должен использовать в VW для задачи двоичной классификации? Например, давайте использоватьrcv1_small.dat, ядумал лучше использовать функцию логистических потерь (или шарнир), и нет смысла использовать--oaa 2
, Тем не менее, эмпирические результаты (с прогрессивной валидацией 0/1 потерь во всех 4 экспериментах) показывают, что наилучшая комбинация--oaa 2
без логистических потерь (то есть с квадратическими потерями по умолчанию):
cd vowpal_wabbit/test/train-sets
cat rcv1_small.dat | vw --binary
# average loss = 0.0861
cat rcv1_small.dat | vw --binary --loss_function=logistic
# average loss = 0.0909
cat rcv1_small.dat | sed 's/^-1/2/' | vw --oaa 2
# average loss = 0.0857
cat rcv1_small.dat | sed 's/^-1/2/' | vw --oaa 2 --loss_function=logistic
# average loss = 0.0934
Мой основной вопрос:Зачем--oaa 2
не дает точно такие же результаты, как--binary
(в вышеуказанной настройке)?
Мои второстепенные вопросы: почему оптимизация логистических потерь не улучшает потери 0/1 (по сравнению с оптимизацией квадратичных потерь по умолчанию)? Это специфика этого конкретного набора данных?