美文网首页
[NNCS]多次连续线性变换的结果仍然是线性变换,表达能力有限

[NNCS]多次连续线性变换的结果仍然是线性变换,表达能力有限

作者: BetterCV | 来源:发表于2018-08-11 17:28 被阅读44次

    所谓线性变换,个人理解为:scaling和shifting混合,各自混合比例是任意的。直白说就是:
    f(x) = ax + b, a负责scaling,b负责shifting

    所谓线性变换的组合,个人理解为:前一次线性变换的输出作为本次线性变换的输入(有一种等差数列既视感)。

    线性变换的多次连续使用,等效于一次(特定的)线性变换。用公式表示会很直接:


    多次线性变换的结果还是线性变换.jpg

    正因为多次连续线性变换等价于单次线性变换,连续stacking多个线性层到网络中是吃力不讨好的事情,并不能增加网络表达能力。例如单层网络没法解决XOR问题,stacking多个线性层后依然解决不了XOR问题。

    =>
    于是乎,神经网络中的每个线性层后面都要带个非线性层来增加表达能力,这成了一种必须而不是可选。

    =>
    进而,很多文献里面把”一个线性层,以及它紧接着的非线性层“看成是一个layer。这本来无可厚非,但是layer的概念就被混淆了。例如:当人们说到卷积层,他/她的意思是conv+relu,还是只有conv而不带relu?有人会说conv肯定带relu,这是实践出来的常识。但是别忘记BN其实也是一种激活函数,conv+bn+relu的结构就不是conv紧挨着relu,而人们又往往喜欢把BN称为一个层。

    相关文章

      网友评论

          本文标题:[NNCS]多次连续线性变换的结果仍然是线性变换,表达能力有限

          本文链接:https://www.haomeiwen.com/subject/pvvdbftx.html