首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在非常不平衡的数据集上提高我的神经网络的准确性?

如何在非常不平衡的数据集上提高我的神经网络的准确性?
EN

Data Science用户
提问于 2018-09-20 20:37:40
回答 1查看 161关注 0票数 2

我有一个数据集,其中包含有关事故的数据。数据集由大约15.000条条目组成,我无法获得更多条目。分配情况如下:

  • 88.6%的数据为一级事故。
  • 10.6%的数据为二级事故
  • 0.8%的数据为三级事故

正如您所看到的,培训数据的最大部分属于一个类。对于第三类事故,我只有很少的例子(15.000行中大约有100行),但最重要的是正确地对3类事故进行分类。

我对数据进行了相当标准的深度神经网络训练,在验证集上获得了93%的准确率。我使用了一个带有AdamOptimizer的自定义Tensorflow估计器,并尽可能地调整了参数。问题是,网络仍然将大部分事故归类为一级事故。因此,如果我在验证集中有25起3级事故,网络将其中10起错误分类为1级,我想对此进行改进。

在这种情况下,是否有任何提高性能的方法?显而易见的选择是获得更多关于三级事故的数据,但遗憾的是,这是不可能的。多次显示现有的第3类数据是否有意义?例如,用所有的数据训练5个历元,然后再用3级事故来训练另外3个历元?

或者在数据预处理过程中我能做些什么吗?现在,我正在缩小输入数据的比例,以达到0,1间隔。还有其他方法来强调离群点吗?(如果假设离群值主要属于第3类)

我希望有人知道一些方法来提高这种情况下的准确性。

编辑:数据集主要有分类列,如:

  • 街道类别(例如公路或乡村道路)
  • 轻(例如“好”)
  • 天气(例如“下雨”或“晴天”)
  • ..。

此外,它还有以下列:

  • 意外发生日期(正月及日)
  • 年龄
  • 一天中的时间
  • 受伤人数
  • 车辆数目

因此,条目可能如下所示:

代码语言:javascript
复制
{
 street_class: 'highway',
 light: 'daylight',
 date: '23. Jan',
 age: 59,
 injured_persons: 2,
 vehicles: 2,
 time: 1724,
 label: 1
 ...
}
EN

回答 1

Data Science用户

发布于 2018-09-20 20:50:12

我会尝试一些数据增强,但是从你的问题中不清楚你有什么类型的数据,并且不可能提出一个解决方案。

尝试将数据示例添加到您的问题中。

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

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

复制
相关文章

相似问题

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