Vowpal Wabbit输入需要多少预处理?

时间:2018-02-08 14:02:37

标签: r machine-learning data-processing vowpalwabbit

我知道vw可以处理非常原始的数据(例如原始文本)但是例如,在将数据提供给vw之前应该考虑缩放数字特征吗? 请考虑以下行:

1 |n age: 80.0 height: 180.0 |c male london |d the:1 cat:2 went:3 out:4

假设典型年龄范围从1到100且高度(以厘米为单位)可能在140到220之间,那么转换/缩放ageheight会更好吗,因此它们共享一个共同的范围?我认为许多算法可能需要对输入数据进行这种预处理,例如线性回归。

1 个答案:

答案 0 :(得分:2)

vw SGD与vanilla naive SGD相比具有高度增强,因此不需要预先缩放。

如果您的实例很少(小数据集),预缩放可能会有所帮助。

vw通过记住每个要素的范围来对比例进行自动标准化,因此很少需要预缩放才能获得良好的效果。

默认情况下应用规模,稀有度和重要性的标准化。相关的vw选项为:

--normalized
--adaptive
--invariant

如果其中任何一个出现在命令行中,则不应用其他任何一个。默认情况下,这三个都已应用。

另请参阅: this stackoverflow answer

vw中解释增强型SGD算法的论文是:

Online Importance Weight Aware Updates - Nikos Karampatziakis & John Langford