【问题标题】:How to make vowpal wabbit use more observations如何让 vowpal wabbit 使用更多的观察
【发布时间】:2015-09-27 09:33:53
【问题描述】:

我是 vowpal wabbit 的新手,所以有一些问题。

我将数据集传递给 vw 并拟合模型并获得样本内预测,并使用 -f 保存模型。到目前为止,一切都很好。我知道如何使用模型并对不同的数据集进行预测。但我想知道如何为模型添加更多观察并更新它。

主要目标:使用一些数据首先让 vw 在线学习它,然后使用该模型来预测一些数据。然后使用新数据更新模型。然后使用更新的数据来预测另一个新的观察结果,这个过程应该继续下去。

正如我所说的我是新手,所以请尽量原谅这个问题的琐碎

【问题讨论】:

    标签: vowpalwabbit


    【解决方案1】:
    vw -i existing.model -f new.model more_observations.dat
    

    助记符:

    • -i初始
    • -ffinal

    您甚至可以在-i-f 中使用相同的模型文件名来更新“就地”,因为它并不是真正的就地。模型替换以原子方式在运行结束时发生(将临时文件重命名为最终文件),如以下strace 输出(添加了 cmets)所示:

    $ strace -e open,close,rename vw --quiet -i zz.model -f zz.model f20-315.tt.gz
    # loading the initial (-i zz.model) model into memory
    open("zz.model", O_RDONLY)              = 3
    # done loading, so we can close it
    close(3)                                = 0
    # Now reading the data-set and learning in memory
    open("f20-315.tt.gz", O_RDONLY)         = 3
    # data read complete. write the updated model into a temporary file
    open("zz.model.writing", O_WRONLY|O_CREAT|O_TRUNC, 0666) = 4
    close(4)                                = 0
    # and rename atomically to the final (-f zz.model) model file 
    rename("zz.model.writing", "zz.model")  = 0
    ...
    close(4)                                = 0
    close(3)                                = 0
    +++ exited with 0 +++
    

    【讨论】:

    • 给出这个“more_observation.dat”和给出“-d more_observation.dat”是不同还是一样?
    • 无论有没有-d,行为都应该相同
    • 我要补充一点,对于这种用例,最好使用--save_resume 键保存/加载模型文件。没有它,vw 不会期望该模型将用于除预测之外的其他内容,并且不会在模型中包含一些额外的学习算法特定参数,这些参数可用于稍后继续模型训练。所以如果没有--save_resume 连续训练效果会有点差。
    • 是的,谢谢。 --save_resume 在大多数情况下可能是可取的。不同之处在于先前模型中的(衰减的)学习率参数因向上重置而受到冲击。
    猜你喜欢
    • 1970-01-01
    • 2013-10-15
    • 2018-01-20
    • 2013-12-15
    • 2014-08-31
    • 2016-09-21
    • 2014-08-07
    • 2013-04-07
    • 2015-01-06
    相关资源
    最近更新 更多