我正在努力以人类可读的格式从Vowpal Wabbit FTRL-Proximal算法获取特征重要性。为了减少计算时间,我首先训练了具有散列特征的算法,然后将结果模型应用于没有学习且没有散列的测试集(-t -invert_hash
)。从vw-varinfo tutorial我推断,只要最后一个参数指示数据的路径,就可以将任何VW选项传递给vw-varinfo
。所以,我炮制的完整命令看起来像这样:
vw-varinfo -i /path/to/model/my_model.model -t --invert_hash
--loss_function logistic
/path/to/the/data/test_set.txt > feature_importances.txt
由于功能的数量大约为2000万,我决定将stdout写入文件(它不会影响最终结果)。每5-10K的加工生产线中就会出现以下形式的例外情况:
^* matches null string many times in regex; marked by <-- HERE in m/^*
<-- HERE OPTOUT\S*\s*/ at /home/krybachuk/vowpal_wabbit/utl/vw-varinfo
line 325, <$ts> line 5263576.
最后,大众抛出多次出现错误,虽然我没有在命令行中重复任何参数:
vw: multiple occurrences
vw-varinfo: vw training failed (see details above)
然后进程停止,feature_importances.txt
文件为空。任何人都可以帮忙,这有什么不对吗?