问题:
ICC警情数据分类不均,30+分类,最多的分类数据数量1w+条,只有10个类别数量超过1k,大部分分类数量少于100条。
解决办法:
- 下采样:通过非监督学习,找出每个分类中的异常点,减少数据。或者类似Dropout,对多数类进行欠采样
- 上采样:类似DCGAN,通过word2vec构建相似的句子,增加数据。对少数类进行过采样。
- 分层分类:将数据量相差不大的类别构建一个模型,第一层分类数量最多的几个类别,最后一层分类最少的几个类别。
- 改变权值:增加部分分类的权值,计算损失的时候增加对样本少的分类的惩罚。
- 将多分类问题转换为一分类问题,求出分类中的异常值。可以使用KNN算法。
不平衡学习的方法 Learning from Imbalanced Data
不平衡数据下的机器学习方法简介
深度 | 解决真实世界问题:如何在不平衡类上使用机器学习?