原创

[数据挖掘]有监督实例过滤器

温馨提示:
本文最后更新于 2024年03月22日,已超过 243 天没有更新。若文章内的图片失效(无法正常加载),请留言反馈或直接联系我

Weka提供三个有监督的实例过滤器。

Resample 过滤器

通常用于处理数据中的类别不平衡问题,通过增加或减少样本来平衡各个类别之间的数量。以下是一个示例说明如何使用 Resample 过滤器:
假设我们有一个二元分类问题的数据集,其中正类别(Class 1)的样本数量远远多于负类别(Class 0)的样本。这种情况称为类别不平衡。
原始数据集可能如下所示:

Features: [X1, X2]
Labels: [0, 1, 1, 0, 1, 1, 1, 0, 1, 1]

在这个示例中,正类别(Class 1)的数量明显多于负类别(Class 0)。
如果我们使用Resample过滤器来平衡这些类别,它可以通过增加负类别样本或减少正类别样本的方式进行重采样。
经过Resample过滤器处理后的数据集可能会变成:

Features: [X1, X2]
Labels: [0, 1, 1, 0, 1, 0, 1, 0, 0, 1]

SpreadSubsample 过滤器

通常用于在数据集中进行子采样,以平衡不同类别之间的样本数量,并且在不过度减少正例的情况下保持数据平衡。以下是一个示例说明 SpreadSubsample 过滤器的作用:
假设我们有一个二元分类问题的数据集,其中正类别(Class 1)的样本数量远远多于负类别(Class 0)的样本,存在类别不平衡问题。
原始数据集可能如下所示:

Features: [X1, X2]
Labels: [0, 1, 1, 0, 1, 1, 1, 0, 1, 1]

在这个示例中,正类别(Class 1)的数量明显多于负类别(Class 0)。
如果我们使用 SpreadSubsample 过滤器来处理这个问题,它可以通过在正例中随机抽取样本或者在负例中重复样本的方式进行子采样,以使得各个类别之间的样本数量更加均衡。
经过 SpreadSubsample 过滤器处理后的数据集可能会变成:

Features: [X1, X2]
Labels: [0, 1, 1, 0, 1, 1]

在这个示例中,SpreadSubsample 过滤器通过在正例中随机抽取样本或者在负例中重复样本的方式进行子采样,使得数据集中的正负类别样本数量相对平衡。这种处理有助于避免过拟合和提高模型训练的准确性,特别是在处理类别不平衡的数据集时。
在这个示例中,Resample过滤器通过移除一些正类别样本或者增加一些负类别样本,使得类别之间的样本数量更加均衡。这种处理有助于提高模型训练的性能和准确度,特别是在处理类别不平衡的数据集时。

StratifiedRemoveFolds 过滤器

通常用于在交叉验证过程中移除数据集的某些部分,以确保每个折叠中类别的分布保持一致。以下是一个示例说明 StratifiedRemoveFolds 过滤器的作用:
假设我们有一个包含标签的数据集,其中有两个类别:Class 0 和 Class 1。我们想要进行 K 折交叉验证,但希望在每次划分时,每个折叠中的类别比例保持与整个数据集中每个类别的比例相同。
原始数据集可能如下所示:

Features: [X1, X2]
Labels: [0, 1, 1, 0, 1, 0, 1, 0, 1, 1]

在这个示例中,类别 0 和类别 1 的样本数量并不平衡。
如果我们使用 StratifiedRemoveFolds 过滤器来处理这个问题,并设置 K=3(3 折交叉验证),它会尝试从每个类别中保持相等数量的样本,并随机地将这些样本分配到不同的折叠中。
经过 StratifiedRemoveFolds 过滤器处理后,数据集可能被分成三个折叠,每个折叠中每个类别的样本数量大致相等:

Fold 1:
Features: [X1, X2]
Labels: [0, 1, 1]
Fold 2:
Features: [X1, X2]
Labels: [0, 1, 0]
Fold 3:
Features: [X1, X2]
Labels: [1, 0, 1]

这样,在交叉验证过程中,每个折叠中的类别分布比例会尽可能地保持与整个数据集中的类别分布比例相似,有助于避免模型在训练和评估过程中出现偏倚。

总结

SpreadSubsample 过滤器:

作用:用于在处理类别不平衡数据集时,在正例和负例之间进行子采样,以平衡各个类别之间的样本数量。
示例:通过在正例中随机抽取样本或在负例中重复样本的方式进行子采样,使得数据集中的正负类别样本数量更加均衡。
Resample 过滤器:

作用:用于处理数据中的类别不平衡问题,通过增加或减少样本来平衡各个类别之间的数量。
示例:通过增加负类别样本或减少正类别样本的方式进行重采样,使得类别之间的样本数量更加均衡。
StratifiedRemoveFolds 过滤器:

作用:用于在交叉验证过程中移除数据集的某些部分,以确保每个折叠中类别的分布保持一致。
示例:在进行 K 折交叉验证时,从每个类别中保持相等数量的样本,并随机将这些样本分配到不同的折叠中,以保持各个折叠中类别比例与整个数据集中的类别比例一致

正文到此结束