怎样形象的解释为啥神经网络层数越多效果越好
可以这么简单理解:神经网络(主要指BP神经网络及其衍生的各种类型)中的层(主要是隐藏层)越多,对输入特征抽象层次越高,至少不比浅层的低。
这是因为在神经网络中,后一层神经元的输入是前一层输出的加权和,前一层的特征在后一层就被抽象出来了,学习的过程其实就是调节和优化各连接权重和阈值的过程。
神经网络的结构,网上随便找了个图,侵删
比如某个神经元接收了来自它前一层的身高,体重两个输入,经过加权后,通过带激活阈值(偏置)后的激活函数,输出了一个新的值,这个值的抽象含义可能被解释为“身材匀称度”;
另一个神经元接也收来自它前一层的眼睛大小,嘴巴大小输入,也经过加权、偏置和激活函数,输出了一个新的值,这个值的抽象含义可能被解释为“五官端正度”;
这前一层抽象的“身材匀称度”和“五官端正度”以及其他更多的特征又会继续被输入下一层被以同样的方法处理,得出更多更高层次的抽象特征,比如“帅气度”,随着隐藏层的加深,深层的抽象特征可能抽象得连设计者自己也无法解释。
最后通过层层特征的抽象和输出,神经网络作出它对输入特征的分类——这个人是谁:吴彦祖还是八两金还是其他阿猫阿狗。
可见,浅层神经网络可以表示的特征抽象程度不高,而层次越深,特征的抽象程度越高,也就是在某些特定任务上所谓的“效果越好”,这也是为什么深度神经网络可以做出很多只有人类才能做到的需要高度抽象理解能力的事情。
■网友
效果好是指逼近函数的效果好,还是预测的效果好呢?前者的话已经有paper证明过了,个人理解就是,神经网络训练的过程就是调整参数的过程,可以调整的参数(weights and bias)越多,意味着调整的自由度越大,从而逼近效果越好,可以举例子: 逼近某一个函数,比较单层,2层,和多层的神经网络逼近效果。 而后者则是不正确的,针对同一个问题,层数少的时候效果差,这时候逐渐增加层数可以提高效果,但是如果盲目不停地增加层数,则会容易引起overfitting,从而导致预测效果不好,所以并不是层数越多,预测效果就一定会越好的。最后想提一下,其实增加神经元数也可以提高逼近效果。
■网友
从适应问题的复杂度例如简单规律的问题角度考虑,不一定越多越好。对于复杂的问题,从数学上理解,如果是泰勒展开,层数多点更逼近,但也可以转化成付丽叶展开,那就三层以内就够了,但同一层内需要更多的神经元适应复杂函数。而现实中的许多规律或说数学函数,都是现成的,进行数学变换后结构已经不好理解并难以设计调试及复用,对特别复杂的某些问题来说,例如通用人工智能或认知智能的子问题及部分复合问题,层数最好适应现实问题
■网友
我觉得问题不太恰当,是不是越多一定越好需要验证。
■网友
形象的?讲个很弱智的理解吧。先假设这个问题有函数解,而且函数任意阶可导,那么这时候我就可以把函数变成泰勒展开。 于是我就想,把前m项拿出来看看,随着m越来越大,函数图像会慢慢逼近原来的形状,这个m可以认为是自由度了吧。大概就是这样了
■网友
万能逼近定理表明一个前馈神经网络如果具有线性输出层和多层的具有“挤压”性质的激活函数的隐藏层,只要给予这个网络足够数量的隐藏单元,那么它能任意精度地逼近从一个有限维空间到另一个有限维空间的Borel可测函数。所以即使是单隐层网络也可以任意逼近一个函数,但是需要多少神经元并不知道啊,而且网络层可能大的不可能实现,也无法进行训练,并且可能无法正确地学习和泛化。所以单层不可行,只能往多层发展咯(我是这么想的o(╯□╰)o),用来提升模型的逼近能力,而且当选择一个特定的机器学习算法时,我们制定了结构和优化方法,隐含地包含了一些先验信息,我们想要学得什么样的函数,以及这个函数包含的计算步骤,相当于给了网络学习的方向。
推荐阅读
- 聪明人养花,这3种“花”怎样也要养一盆,每年能省不少医药费
- 互联网怎样解决“家政服务上门速度慢”的问题
- 怎样看待从1月8号起,QQ钱包开始提现收费
- 银行it人怎样转型
- 汽车|冬天怎样让车内温度快速升高?座椅加热的最佳使用方式二,外循环的作用总结
- 怎样进入通信行业
- 怎样评价扶他柠檬茶的小说《云养汉》的结尾
- 怎样成为一名合格的Python程序员?
- 怎样评价华为、诺基亚、中兴中标中国移动高端路由交换设备扩容集采
- 怎样评价类似前橙会、百老汇、南极圈这样类型的离职帮抱团,对企业的积极意义和消极意义