在守护程序模式下 运行 时,如何从 Vowpal Wabbit 获取原始预测 (-r)?
How do I get the raw predictions (-r) from Vowpal Wabbit when running in daemon mode?
使用下面的方法,我能够将原始预测和最终预测都作为文件获得:
cat train.vw.txt | vw -c -k --passes 30 --ngram 5 -b 28 --l1 0.00000001 --l2 0.0000001 --loss_function=logistic -f model.vw --compressed --oaa 3
cat test.vw.txt | vw -t -i model.vw --link=logistic -r raw.txt -p predictions.txt
但是,当我 运行 VW 作为守护程序时,我无法获得原始预测:
vw -t -i model.vw --daemon --port 26542 --link=logistic
我是否可以传递特定参数或参数来获得原始预测?我更喜欢原始预测,而不是最终预测。谢谢
--raw_predictions
是一种 hack(语义取决于使用的缩减)并且在 --daemon
模式下不受支持。 (像 --output_probabilities
这样的东西会很有用而且不难实现,它可以在守护进程模式下工作,但到目前为止还没有人有时间实现它。)
作为变通方法,您可以在管道中 运行 VW,因此它读取标准输入并将概率写入标准输出:
cat test.data | vw -t -i model.vw --link=logistic -r /dev/stdout | script.sh
在支持 /dev/stdout
(和 /dev/stderr
)的系统上,您可以试试这个:
vw -t -i model.vw --daemon --port 26542 --link=logistic -r /dev/stdout
守护程序会将原始预测写入标准输出,在本例中,标准输出最终与本地主机端口 26542 位于同一位置。
行的相对顺序是有保证的,因为每个示例中处理不同打印的代码(例如非原始与原始)始终是连续的。
自November 2015以来,获得概率的最简单方法是使用--oaa=N --loss_function=logistic --probabilities -p probs.txt
。 (或者如果您需要标签相关的功能:--csoaa_ldf=mc --loss_function=logistic --probabilities -p probs.txt
。)
--probabilities
也可以与 --daemon
一起使用。应该不再需要使用 --raw_predictions
.
根据 https://github.com/VowpalWabbit/vowpal_wabbit/issues/1118 你可以尝试在命令行中添加 --scores
选项:
vw --scores -t -i model.vw --daemon --port 26542
它对我的 oaa 模型有帮助。
使用下面的方法,我能够将原始预测和最终预测都作为文件获得:
cat train.vw.txt | vw -c -k --passes 30 --ngram 5 -b 28 --l1 0.00000001 --l2 0.0000001 --loss_function=logistic -f model.vw --compressed --oaa 3
cat test.vw.txt | vw -t -i model.vw --link=logistic -r raw.txt -p predictions.txt
但是,当我 运行 VW 作为守护程序时,我无法获得原始预测:
vw -t -i model.vw --daemon --port 26542 --link=logistic
我是否可以传递特定参数或参数来获得原始预测?我更喜欢原始预测,而不是最终预测。谢谢
--raw_predictions
是一种 hack(语义取决于使用的缩减)并且在 --daemon
模式下不受支持。 (像 --output_probabilities
这样的东西会很有用而且不难实现,它可以在守护进程模式下工作,但到目前为止还没有人有时间实现它。)
作为变通方法,您可以在管道中 运行 VW,因此它读取标准输入并将概率写入标准输出:
cat test.data | vw -t -i model.vw --link=logistic -r /dev/stdout | script.sh
在支持 /dev/stdout
(和 /dev/stderr
)的系统上,您可以试试这个:
vw -t -i model.vw --daemon --port 26542 --link=logistic -r /dev/stdout
守护程序会将原始预测写入标准输出,在本例中,标准输出最终与本地主机端口 26542 位于同一位置。
行的相对顺序是有保证的,因为每个示例中处理不同打印的代码(例如非原始与原始)始终是连续的。
自November 2015以来,获得概率的最简单方法是使用--oaa=N --loss_function=logistic --probabilities -p probs.txt
。 (或者如果您需要标签相关的功能:--csoaa_ldf=mc --loss_function=logistic --probabilities -p probs.txt
。)
--probabilities
也可以与 --daemon
一起使用。应该不再需要使用 --raw_predictions
.
根据 https://github.com/VowpalWabbit/vowpal_wabbit/issues/1118 你可以尝试在命令行中添加 --scores
选项:
vw --scores -t -i model.vw --daemon --port 26542
它对我的 oaa 模型有帮助。