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

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

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

 

thatdeep   2019-03-16 12:20



   3个回答 
5

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

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

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

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

Zealing   2019-03-18 04:37

2

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

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

lpq29743   2019-03-16 18:28

2

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

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

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

宽宽   2019-03-17 09:00



  相关主题

训练神经网络中经常提到的epoch是什么意思   2回答

神经网络中的gradient check是什么意思?   2回答

dropout rate一般设置多大?   3回答

深度学习和人工神经网络是一回事吗?   1回答

关于神经网络的性能   1回答

deep learning中的pooling是什么意思?   6回答

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

前馈神经网络如何选择隐藏层的数量   2回答

神经网络中的Dropout和Bagging   1回答

mac电脑怎么用ssh远程控制Linux服务器查看可视化结果   1回答

用神经网络做二元分类,输出层用Sigmoid还是Softmax?   3回答

transfer learning的应用和实例?   1回答



回答问题时需要注意什么?

我们谢绝在回答前讲“生动”的故事。

我们谢绝“这么简单,你自己想”、“书上有的,你认真看”这类的回答;如果你认为对方的提问方式或者内容不妥,你可以直接忽略该问题,不用进行任何作答,甚至可以对该问题投反对票。

我们谢绝答非所问。

我们谢绝自己不会、硬要回答。

我们感激每一个用户在编写答案时的努力与付出!