【问题标题】:How does one use the --keep and --ignore features of vowpal wabbit?如何使用 vowpal wabbit 的 --keep 和 --ignore 功能?
【发布时间】:2014-08-31 00:18:05
【问题描述】:

文档仅提到这些功能存在,但我找不到示例代码。

我目前有表格的数据

1 '0001 |11 x:0.3
0 '0002 |11 x:0.8
1 '0003 |11 x:0.3
0 '0004 |11 x:0.9
1 '0005 |11 x:0.2

因此我在文件 train.vw 中有一个名为 11 的命名空间

我发号施令

vw train.vw --keep 11 -c -k --passes 40 -l 0.85 -f model.vw --loss_function quantile --quantile_tau 0.6

并得到错误

vw: the argument ('11') for option '--keep' is invalid

不用keep也能正常工作,

vw train.vw -c -k --passes 40 -l 0.85 -f model.vw --loss_function quantile --quantile_tau 0.6

【问题讨论】:

    标签: machine-learning vowpalwabbit


    【解决方案1】:

    是的,这应该有更好的记录...

    处理名称空间的选项的参数仅通过它们的第一个字母来引用这些名称空间。这是一个限制,源于当前实现名称空间的方式,目的是交叉、保留和忽略,作为由第一个字母索引的快速查找表。

    所以在这种特殊情况下,您应该使用--keep 1 而不是--keep 11

    类似地,对于交叉特征,例如-q AB AB 分别指您要跨越的命名空间的第一个字母。

    【讨论】:

    • 那么我可以使用扩展字母表来拥有大量命名空间吗?它是否区分大小写?所以 0-9a-zA-Z - 给出 64,只有可用的 ascii 字母数字或完整的 UTF-8 或任何非标点符号或控制字符(À、Ä 等)utf8-chartable.de/unicode-utf8-table.pl?number=1024 ?或者可以说使用中文和/或其他可以给我更多命名空间的语言。
    • 根据来源,查找表是一个vector<unsigned char>,所以 UTF-8 的子集可以用一个字节表示并且没有前缀应该可以工作(我相信 255 个不同的可能值)。 HTH。
    猜你喜欢
    • 2013-12-15
    • 1970-01-01
    • 2019-06-30
    • 2018-01-20
    • 2015-09-27
    • 2014-08-07
    • 2013-04-07
    • 1970-01-01
    • 2015-01-06
    相关资源
    最近更新 更多