首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MLP型网络训练中的问题

MLP型网络训练中的问题
EN

Data Science用户
提问于 2018-05-13 20:52:07
回答 2查看 237关注 0票数 1

我训练了一个神经网络模型,一个MLP类型的网络,其中前几层是一维卷积,用于处理输入序列类型。

但是,培训过程如下所示,橙色线表示验证损失,蓝线表示培训损失。验证损失比训练损失大,训练损失在前几次迭代后也停止下降。是否有改进性能的通用指南?我有大约一百万的训练痕迹,网络参数的数量大约是140 K。

EN

回答 2

Data Science用户

回答已采纳

发布于 2018-05-14 09:54:04

当训练损失小于验证损失时,该模型被认为是对训练数据的过度拟合,即它从训练数据中学到的东西很多,只能对其进行很好的调整,不能推广到新的数据。这种现象被认为是模型的方差。模型的偏差是训练损失和你先前选择的最小损失之间的差别,或者是期望的损失。

然而,这一分析通常是在其他众所周知的指标上完成的,比如精确性和召回性。首先根据培训数据计算这些指标,然后根据评估数据计算这些指标。然后,考虑到同样的考虑,执行分析。

为了减少差异/过度拟合,有一些常见的技术:

  1. 通过添加更多实例(如果可用)来增加培训数据
  2. 如果没有更多实例可用,则执行数据增强以增加培训数据集。
  3. 使用正规化,例如辍学。
  4. 缩短网络。如果有很多层,网络可能会从培训数据中学习过于具体的特性。

如前所述,我将使用其他度量来执行分析,而不是使用损失。

票数 1
EN

Data Science用户

发布于 2018-05-14 07:33:12

这显然是一个过度适应的情况,因为你的验证损失比你的培训损失高得多。我将继续执行辍学或重量衰减:它们都是正则化的。正则化技术的目的是使橙色线更接近蓝线。如果这是可行的,那么你必须问问自己:我的目标是蓝线吗?还是我想要一个更小的损失?如果您想要较小的损失,可以尝试使用另一个优化器、另一个学习速率或通过更多的时代进行培训(您的培训错误仍在减少)。但是,您的第一步应该是使用正则化技术。

票数 0
EN
页面原文内容由Data Science提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://datascience.stackexchange.com/questions/31610

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档