应对数据不平衡和过拟合的分类模型优化策略

不平衡分类

数据类别不平衡问题是指数据集中各类别样本数量不对等的情况。

基于抽样的方法

在处理这类问题时,可以采用基于抽样的方法来解决。以下是几种常见的基于抽样的方法:

应对数据不平衡和过拟合的分类模型优化策略_第1张图片

两阶段学习

两阶段学习是一种解决不平衡分类问题的方法,包括特征学习阶段和分类器学习阶段。

在特征学习阶段,通过学习一组规则,尽可能覆盖正类(数量较少的类别)。这些规则可以捕捉到正类的特征和模式。

在分类器学习阶段,使用特征学习阶段得到的规则,结合正类和部分负类样本,再学习一组规则。通过这样的方式,可以更好地区分不同类别,并提高分类器的性能。

  • 特征学习阶段
  • 分类器学习阶段
    以基于规则的分类法为例:
  • 阶段I:学习一组规则,尽可能覆盖正类(少的那一类)
  • 阶段II:使用阶段I覆盖的正类和负类样本+部分其它负类样本,学习一组规则

应对数据不平衡和过拟合的分类模型优化策略_第2张图片

过拟合和欠拟合

过拟合和欠拟合是在训练分类模型时常遇到的问题。

过拟合是指模型在训练数据上表现得过于优秀,但在未知数据上的表现较差。这种情况下,模型过于复杂,过分拟合了训练数据的噪声和细节,导致泛化能力下降。

欠拟合是指模型无法很好地拟合训练数据,不能捕捉到数据的真实结构。这种情况下,模型过于简单,无法充分学习数据的特征和模式。

为了解决过拟合问题,可以采取以下方法:

  • 正则化方法:在损失函数中引入参数向量的L1或L2范数(L1正则化或L2正则化),限制模型的复杂度。
  • Dropout:在神经网络中引入随机丢弃部分神经元的机制,减少神经网络的复杂性。

为了解决欠拟合问题,可以采取以下方法:

  • 增加模型的复杂度:增加模型的层数、神经元数等,使其能够更好地拟合训练数据。
  • 特征工程:对原始特征进行变换、组合等操作,增加模型对数据的表达能力。

通过使用合适的方法来解决过拟合和欠拟合问题,可以提高分类模型的性能和泛化能力。

模型过分拟合和拟合不足

分类模型的误差大致分为两种:

  • 训练误差:是在训练记录上误分类样本比例
  • 泛化误差:是模型在未知记录上的期望误差
  • 一个好的分类模型不仅要能够很好的拟合训练数据,而且对未知样本也要能准确分类。
  • 换句话说,一个好的分类模型必须具有低训练误差和低泛化误差。
  • 当训练数据拟合太好的模型(较低训练误差),其泛化误差可能比具有较高训练误差的模型高,这种情况成为模型过分拟合。

当进行训练时引用了较多噪点数据时就会发生过拟合,此时训练误差较小,但可能泛化误差较大.
建模过程:
image.png

以决策树算法为例

  • 当决策树很小时,训练和检验误差都很大,这种情况称为模型拟合不足。出现拟合不足的原因是模型尚未学习到数据的真实结构。
  • 随着决策树中结点数的增加,模型的训练误差和泛化误差都会随之下降。
  • 当树的规模变得太大时,即使训练误差还在继续降低,但泛化误差开始增大,导致模型过分拟合。

应对数据不平衡和过拟合的分类模型优化策略_第3张图片
当树的规模变得太大时,即使训练误差还在继续降低,但泛化误差开始增大,导致模型过分拟合。
应对数据不平衡和过拟合的分类模型优化策略_第4张图片
训练误差可以通过训练集来计算,泛化误差可以通过泛化误差来计算.

应对数据不平衡和过拟合的分类模型优化策略_第5张图片

导致过拟合的原因:

  • 训练集规模太大
  • 训练集中存在大量噪音数据
  • 训练集规模太小,训练模型过于复杂

解决过拟合的方法一:减少泛化误差

奥卡姆剃刀,拉丁文的意思是简约之法则。
奥卡姆剃刀定律被广泛运用在多个学科的逻辑定律,它的简单表述:如无必要,勿增实体
根据奥卡姆剃刀原则引入惩罚项,使较简单的模型比复杂的模型更可取

  • 正则化方法:在原有损失函数的基础上添加参数向量的L1或L2范数(L1正则化或L2正则化)。
  • 神经网络中,引入dropout丢弃机制。

应对数据不平衡和过拟合的分类模型优化策略_第6张图片

解决过拟合的方法二:使用确认集

使用确认集

  • 该方法中,不是用训练集估计泛化误差,而是把原始的训练数据集分为两个较小的子集,一个子集用于训练,而另一个称为确认集,用于估计泛化误差。
  • 该方法为评估模型在未知样本上的性能提供了较好办法。

应对数据不平衡和过拟合的分类模型优化策略_第7张图片
具体实现
保持法:

  • 将数据集随机划分成两组:训练集和测试集(验证集)
  • 训练集用于模型的建立;
  • 测试集用于测试模型的性能。
    交叉验证法:
  • 基本思想:在某种意义下把数据集划分成训练集和测试集,每个数据集既可以用于训练,也可以用于测试。体现了交叉的思想。
  • 具体有两种方法:S折交叉验证、留一交叉验证。

你可能感兴趣的:(分类,机器学习,深度学习)