Neural network Vowpal Wabbit:神经网络的输入?

Neural network Vowpal Wabbit:神经网络的输入?,neural-network,vowpalwabbit,Neural Network,Vowpalwabbit,在机器学习工具vowpal wabbit()中,通常训练线性估计器y*=wx。但是,可以添加前向神经网络 我的问题是:当我通过命令行选项“-nn x”使用神经网络时,线性估计器wx是否完全被神经网络取代 编辑:谢谢Martin和arielf。所以看起来不同的星座是这样的: 带有“-nn”的模型的权重通过反向传播估计 [编辑:更正答案:原文不准确,谢谢Martin] 1层神经网络将输入特征输入到神经网络层(所有可能的交互),然后输入到输出层 要按原样添加传递功能,而不进行交互,应添加--inpa

在机器学习工具vowpal wabbit()中,通常训练线性估计器y*=wx。但是,可以添加前向神经网络

我的问题是:当我通过命令行选项“-nn x”使用神经网络时,线性估计器wx是否完全被神经网络取代

编辑:谢谢Martin和arielf。所以看起来不同的星座是这样的:


带有“-nn”的模型的权重通过反向传播估计

[编辑:更正答案:原文不准确,谢谢Martin]

1层神经网络将输入特征输入到神经网络层(所有可能的交互),然后输入到输出层

要按原样添加传递功能,而不进行交互,应添加
--inpass
选项

您可以查看通过使用
--invert_hash
创建的模型,在一个小示例中获得可读的模型:

$ cat dat.vw
1 | a b
2 | a c

# default linear model, no NN:
$ vw --invert_hash dat.ih dat.vw
...

$ cat dat.ih
...
:0
Constant:116060:0.387717
a:92594:0.387717
b:163331:0.193097
c:185951:0.228943

# Now add --nn 2 (note double-dash in long option)
# to use a 1-layer NN with 2 nodes
$ vw --nn 2 --invert_hash dat-nn.ih dat.vw
...

$ cat dat-nn.ih
...
:0
Constant:202096:-0.270493
Constant[1]:202097:0.214776
a:108232:-0.270493
a[1]:108233:0.214776
b:129036:-0.084952
b[1]:129037:0.047303
c:219516:-0.196927
c[1]:219517:0.172029
看起来
a[N]
a
对隐藏层NN节点
N
的贡献(显然,从基/索引零开始,独立的
a
符号有点混乱)

当您添加
--inpass
时,您将获得每个特征的额外权重(索引[2]):


我原以为原始功能只与
--inpass
一起使用(我现在无法测试)。有趣的是,
--inpass
为模型
a[2]
b[2]
c[2]
又添加了3个功能。我不确定它们到底是什么意思。我简单地检查了源代码nn.cc。使用
--nn N
,我们在隐藏层中有N个单元,每个特征有N个参数,它们在
--invert_hash
中标记为,例如
a
a[1]
。然后,输出层有N个附加参数(N个隐藏单元和最终预测输出单元之间的连接),但遗憾的是,这些参数没有在
--audit
--invert_hash
中报告。因此,对于F特征,我们需要训练FN+N参数,但在
--invert_hash
模型中只显示FN参数。对于
--nn N--inpass
,输入单元(即输入特征)直接与输出单元连接(除了通过隐藏层单元的连接),因此存在FN+N+F参数,但是在
--invert_hash
模型中只显示FN+F。您看到的
a[2]
是直接(inpass)连接的参数。从那时起,是否有新的参数来打印-nn标志的所有FN+N(或
--inpass
的FN+N+F)权重?这似乎是理解和可视化神经网络的一个重要功能。非常感谢您在图表上所做的工作。这让一切都更清楚了。在模型
wF[N]
中用相应的权重标记NN图边(正如Martin在注释中提到的,在
--invert hash
输出中并没有全部表示),这将使它更加清晰
wF[N]
是从要素
F
到层节点
N
的权重。从隐藏层到输出节点的权重显然没有显示在
--invert hash
中。
$ vw --nn 2 --inpass --invert_hash dat-nn-ip.ih dat.vw
...
$ cat dat-nn-ip.ih
...
:0
Constant:202096:-0.237726
Constant[1]:202097:0.180595
Constant[2]:202098:0.451169
a:108232:-0.237726
a[1]:108233:0.180595
a[2]:108234:0.451169
b:129036:-0.084570
b[1]:129037:0.047293
b[2]:129038:0.239481
c:219516:-0.167271
c[1]:219517:0.139488
c[2]:219518:0.256326