为什么小数据不适合神经网络模型?

  统计/机器学习 深度学习 人工神经网络    浏览次数:5168        分享
1

很多文章上都说数据量小的时候,不能用神经网络和深度学习,这是为什么?有什么理论吗?

 

thatdeep   2019-03-16 12:20



   3个回答 
7

神经网络是图结构,因为有非线性层比如relu,有的从输入到输出的路径只有一部分数据能流过。大部分数据会被relu挡住,选择走别的路径。如果有条路径只有一个数据流过,那么这条路径上学习到的参数就会逼近这个数据的噪音,变成过拟合。流过数据点越多,噪音相互抵消,通用性(generalization)越好。如果训练数据点太少,神经网络很多路径只有较少数据流过,会过拟合。

这也是在loss中加L1/L2 norm的正则项,添加dropout,让网络有效路径更稀疏,强迫更多数据去共享路径,让数据更集中。

有个经验公式,每个参数(事件)需要10(或更多)数据点去支持。可理解为一个参数要吃到10个数据才能喂饱,越多越好。

SofaSofa数据科学社区DS面试题库 DS面经

Zealing   2019-03-18 04:37

3

神经网络容易在小数据上过拟合。

为什么呢?对于一个三四层的全连接网络,其中的参数可能会多达上几百个。这样就会造成需要被学习的参数多于或者接近训练样本的个数的情况,于是相当于数据量本身,模型过于复杂,就发生了过拟合。

SofaSofa数据科学社区DS面试题库 DS面经

宽宽   2019-03-17 09:00

2

神经网络和深度学习过于复杂,容易出现过拟合。

SofaSofa数据科学社区DS面试题库 DS面经

lpq29743   2019-03-16 18:28



  相关讨论

神经网络中的dense和sparse是什么意思?

wide-deep模型里的wide和deep分别是指什么意思?

请问深度学习算法中的梯度消失的原理是什么?如何能通俗理解

神经网络里为什么隐藏层越多越好?

关于神经网络的性能

BatchNormalization这一层一般有哪些参数需要调?

deep learning中的pooling是什么意思?

反向传播和梯度算法概念???反向传播是指反向传播算法,还是反向传播算法中的一个过程?

CNN和RNN分别是怎么共享权重的?

为什么RNN会有梯度消失的问题,LSTM是怎么解决梯度消失的?

  随便看看

pandas.DataFrame更改列名

matplotlib一个画板上多个图叠加,如何决定图层上下?

'numpy.ndarray' object has no attribute 'head'

医学统计里的c-index或者c-statistic是什么意思?

把tf.Tensor转换为numpy array