一个有趣的说法:多层神经网络的致命问题与过拟合
我的机器学习教程「美团」算法工程师带你入门机器学习 以及 「三分钟系列」数据结构与算法 已经开始更新了,欢迎大家订阅~这篇专栏整合了这几年的算法知识,简单易懂,也将是我实体书的BLOG版。
欢迎大家扫码关注微信公众号「图灵的猫」,除了有更多AI、算法、Python相关文章分享,还有免费的SSR节点和外网学习资料。其他平台(微信/知乎/B站)也是同名「图灵的猫」,不要迷路哦~
Bengio在Learning Deep Architectures for AI 一书中举了一个有趣的例子。他说:最近有人表示,他们用传统的深度神经网络把训练error降到了0,也没有用你的那个什么破Pre-Training嘛!
然后Bengio自己试了一下,发现确实可以,但是是建立在把接近输出层的顶隐层神经元个数设的很大的情况下。于是他把顶隐层神经元个数限到了20,然后这个模型立马露出马脚了。无论是训练误差、还是测试误差,都比相同配置下的Pre-Training方法差许多。
也就是说,顶层神经元在对输入数据直接点对点记忆,而不是提取出有效特征后再记忆。这就是神经网络的最后一个致命问题:过拟合,庞大的结构和参数使得,尽管训练error降的很低,但是test error却高的离谱。
过拟合还可以和Gradient Vanish、局部最小值混合三打,具体玩法是这样的:
由于Gradient Vanish,导致深度结构的较低层几乎无法训练,而较高层却非常容易训练。
较低层由于无法训练,很容易把原始输入信息,没有经过任何非线性变换,或者错误变换推到高层去,使得高层解离特征压力太大。
如果特征无法解离,强制性的误差监督训练就会使得模型对输入数据直接做拟合。
其结果就是,A Good Optimation But a Poor Generalization,这也是SVM、决策树等浅层结构的毛病。
Bengio指出,这些利用局部数据做优化的浅层结构基于先验知识(Prior): Smoothness。即,给定样本(xi,yi)(xi,yi),尽可能从数值上做优化,使得训练出来的模型,对于近似的x,输出近似的y。
然而一旦输入值做了泛型迁移,比如两种不同的鸟,鸟的颜色有别,且在图像中的比例不一,那么SVM、决策树几乎毫无用处。
因为,对输入数据简单地做数值化学习,而不是解离出特征,对于高维数据(如图像、声音、文本),是毫无意义的。然后就是最后的事了,由于低层学不动,高层在乱学,所以很快就掉进了吸引盆中,完成神经网络三杀。
一个有趣的说法:多层神经网络的致命问题与过拟合相关推荐
- 人工智能知识全面讲解:多层神经网络与误差逆传播算法
7.3.1 从单层到多层神经网络 明斯基教授曾表示,单层神经网络无法解决异或问题,但是当增加一个计 算层以后,两层神经网络不仅可以解决异或问题,而且具有非常好的非线性分 类效果.只是两层神经网络的计算 ...
- 【神经网络实验】Numpy手写多层神经网络
引言 这个作业的目的是给你们介绍建立,训练和测试神经系统网络模型.您不仅将接触到使用Python包构建神经系统网络从无到有,还有数学方面的反向传播和梯度下降.但在实际情况下,你不一定要实现神经网络从零 ...
- 理解神经网络,从简单的例子开始(2)使用python建立多层神经网络
这篇文章将讲解如何使用python建立多层神经网络.在阅读这篇文章之前,建议先阅读上一篇文章:理解神经网络,从简单的例子开始.讲解的是单层的神经网络.如果你已经阅读了上一篇文章,你会发现这篇文章的代码 ...
- 机器学习——人工神经网络之多层神经网络(多层与三层)
目录 一.多层神经网络 1.多层神经网络数学模型 2.数学模型中的非线性函数fai 1)非线性函数fai存在的意义 2)非线性函数fai具体是什么? 3.多层神经网络与单层神经网络的区别与改进 1)单 ...
- 译文 | 与TensorFlow的第一次接触 第五章:多层神经网络
北京 深度学习与人工智能研修12月23-24日 再设经典课程 重温深度学习阅读全文> 正文共5270个字,15张图,预计阅读时间14分钟. 本章中,我们继续使用之前章节中的MNIST数字识别问题 ...
- 【BP神经网络】使用反向传播训练多层神经网络的原则+“常见问题”
(Principles of training multi-layer neural network using backpropagation) 使用反向传播训练多层神经网络的原则 (The pro ...
- 实验三 多层神经网络
一.实验目的 (1)学习并掌握常见的机器学习方法: (2)能够结合所学的python知识实现机器学习算法: (3)能够用所学的机器学习算法解决实际问题. 二.实验内容与要求 (1)理解多层神经网络的架 ...
- Course 1 神经网络和深度学习 Week4 搭建多层神经网络识别猫图
基本元素符号约定 上标 [l][l][l]代表神经网络的层数 lthl^{th}lth ,比如a[L]a^{[L]}a[L] 是 [L][L][L]层的激活, W[L]W^{[L]}W[L]是[L][ ...
- 多层神经网络 ——小批量梯度下降法
在前面的课程中,我们知道为了实现非线性分类的任务,需要使用多层神经网络,多层神经网络的损失函数不再是凸函数,而是一种比较复杂的不规则函数,这类函数求导数非常困难,在求解极值问题时很难通过计算得到解析解 ...
- 深度学习与多层神经网络的区别
作者:Bipolar Bear 链接:https://www.zhihu.com/question/26017374/answer/127924427 来源:知乎 著作权归作者所有.商业转载请联系作者 ...
最新文章
- mov	word [LABEL_DESC_CODE32 + 2], ax
- Docker笔记一:基于Docker容器构建并运行 nginx + php + mysql ( mariadb ) 服务环境
- 添加gitlab远程账号 使用注意事项
- 课时66.颜色控制属性下(理解)
- 【牛客 - 318G】LLLYYY的数字思维 与【牛客 - 289J】这是一个沙雕题II(贪心构造)
- SpringCloud与SpringConfig分布式配置中心
- linux 虚拟机设置好固定ip 修改了 dns 网络需要设置成桥接模式
- 将Matting结果转化为二分割结果
- 多线程依次接收信息并发送
- SQLite的SQL语法
- 汉字区位码---非常浅显的知识点
- 计算机与网络技术 英语,计算机与网络英语词汇(S3)
- 计算机教程无线路由器桥接上网,2个无线路由器桥接教程详细步骤
- pure-ftpd服务器搭建
- hashcat跑包小秘诀
- Android 智能机顶盒之蓝牙遥控器开机自动配对
- pyhton——爬小说网站(顶点最强国防生)
- 计算机处理器采用多核,电脑处理器多核心与高主频哪个更重要【详细介绍】
- 天猫双十一狂抢优惠券?机智的程序猿这么玩
- 适配USB接口奕力 ILITEK Multi-Touch-V5000