利用 Python 解决不平衡分类问题:选择更好的指标、平衡倾斜类别并应用成本敏感学习
1. 不平衡分类问题概述
分类预测建模是为示例分配类标签的任务。然而,在很多实际场景中,不同类别的示例分布并不均衡,这就产生了不平衡分类问题。例如,在欺诈检测、客户流失预测、医疗诊断等众多机器学习应用场景中,类别分布往往存在严重的倾斜,可能少数类别的每个示例对应着多数类别中的一百甚至一千个示例。
当类别分布不平衡时,许多机器学习算法会失效,一些常用的评估指标(如分类准确率)也会产生严重的误导。比如,在一个欺诈检测任务中,如果 99% 的交易都是正常交易,只有 1% 是欺诈交易,那么一个模型只要将所有交易都预测为正常交易,就能获得 99% 的准确率,但这显然不能说明该模型是有效的。
幸运的是,针对不平衡分类问题已经有了一个虽小但发展迅速的研究领域。这个领域涵盖了对现有算法的改进、精心选择的性能指标以及全新的数据预处理技术和建模算法。
2. 学习目标与适用人群
学习不平衡分类技术,你将掌握以下内容:
- 理解不平衡分类数据集的挑战和直觉。
- 学会为不平衡分类模型选择合适的性能评估指标。
- 掌握在划分训练集和测试集以及使用 k 折交叉验证时,对不平衡数据集进行适当分层的方法。
- 能够使用数据采样算法(如 SMOTE)来转换训练数据集。
- 了解如何运用成本敏感学习领域的算法进行不平衡分类。
- 学会使用修改后的标准算法(如 SVM 和决策树)来考虑类别权重。
- 掌握调整预测概率转换为类别标签的阈值的方法。
- 学会校准由非线性算法预测的概率。
- 了解如何使用
超级会员免费看
订阅专栏 解锁全文
63

被折叠的 条评论
为什么被折叠?



