深度残差网络的直觉
Intuition on Deep Residual Network
我在看Deep Residual Network的论文,论文中有一个概念我无法完全理解:
问题:
"hope the 2 weight layers fit F(x)"是什么意思?
这里F(x)是用两个权值层(+ReLu非线性函数)处理x,所以想要的映射是H(x)=F(x)?残差在哪里?
What does it mean by "hope the 2 weight layers fit F(x)" ?
所以如图所示的残差单元经过x
两个权重层的处理得到F(x)
。然后它将x
与F(x)
相加得到H(x)
。现在,假设 H(x)
是您理想的预测输出,它与您的基本事实相匹配。由于H(x) = F(x) + x
,获得想要的H(x)
取决于获得完美的F(x)
。这意味着残差单元中的两个权重层实际上应该能够产生所需的F(x)
,然后保证得到理想的H(x)
。
Here F(x) is processing x with two weight layers(+ ReLu non-linear function), so the desired mapping is H(x)=F(x)? where is the residual?
第一部分是正确的。 F(x)
是从 x
得到的,如下所示。
x -> weight_1 -> ReLU -> weight_2
H(x)
是从F(x)
得到的,如下。
F(x) + x -> ReLU
所以,我不明白你问题的第二部分。残差为F(x)
.
作者假设残差映射(即 F(x)
)可能比 H(x)
更容易优化。用一个简单的例子来说明,假设理想的H(x) = x
。然后对于直接映射,很难学习恒等映射,因为有一堆非线性层如下。
x -> weight_1 -> ReLU -> weight_2 -> ReLU -> ... -> x
因此,在中间使用所有这些权重和 ReLU 来近似恒等映射是很困难的。
现在,如果我们定义了想要的映射H(x) = F(x) + x
,那么我们只需要如下得到F(x) = 0
。
x -> weight_1 -> ReLU -> weight_2 -> ReLU -> ... -> 0 # look at the last 0
实现上述目标很容易。只需将任何权重设置为零,您就会得到零输出。加回 x
即可得到所需的映射。
残差网络成功的另一个因素是从第一层到最后一层的不间断梯度流。这超出了您的问题范围。您可以阅读论文:"identity mappings in deep residual networks" 了解更多相关信息。
我在看Deep Residual Network的论文,论文中有一个概念我无法完全理解:
问题:
"hope the 2 weight layers fit F(x)"是什么意思?
这里F(x)是用两个权值层(+ReLu非线性函数)处理x,所以想要的映射是H(x)=F(x)?残差在哪里?
What does it mean by "hope the 2 weight layers fit F(x)" ?
所以如图所示的残差单元经过x
两个权重层的处理得到F(x)
。然后它将x
与F(x)
相加得到H(x)
。现在,假设 H(x)
是您理想的预测输出,它与您的基本事实相匹配。由于H(x) = F(x) + x
,获得想要的H(x)
取决于获得完美的F(x)
。这意味着残差单元中的两个权重层实际上应该能够产生所需的F(x)
,然后保证得到理想的H(x)
。
Here F(x) is processing x with two weight layers(+ ReLu non-linear function), so the desired mapping is H(x)=F(x)? where is the residual?
第一部分是正确的。 F(x)
是从 x
得到的,如下所示。
x -> weight_1 -> ReLU -> weight_2
H(x)
是从F(x)
得到的,如下。
F(x) + x -> ReLU
所以,我不明白你问题的第二部分。残差为F(x)
.
作者假设残差映射(即 F(x)
)可能比 H(x)
更容易优化。用一个简单的例子来说明,假设理想的H(x) = x
。然后对于直接映射,很难学习恒等映射,因为有一堆非线性层如下。
x -> weight_1 -> ReLU -> weight_2 -> ReLU -> ... -> x
因此,在中间使用所有这些权重和 ReLU 来近似恒等映射是很困难的。
现在,如果我们定义了想要的映射H(x) = F(x) + x
,那么我们只需要如下得到F(x) = 0
。
x -> weight_1 -> ReLU -> weight_2 -> ReLU -> ... -> 0 # look at the last 0
实现上述目标很容易。只需将任何权重设置为零,您就会得到零输出。加回 x
即可得到所需的映射。
残差网络成功的另一个因素是从第一层到最后一层的不间断梯度流。这超出了您的问题范围。您可以阅读论文:"identity mappings in deep residual networks" 了解更多相关信息。