机器学习分类:从理论到实战详解
简介
机器学习分类是监督学习的核心任务之一,旨在根据输入数据的特征将其划分到预定义的类别中。其应用场景广泛,在各个领域都发挥着重要作用:
- 二分类:如垃圾邮件检测(0/1分类),系统需判断每封邮件是否为垃圾邮件;疾病诊断(患病/健康),医生借助相关指标判断患者是否患病。
- 多类别分类:像手写数字识别(0 - 9分类),计算机要准确识别手写的单个数字;新闻文本分类(体育/科技/政治等),可帮助用户快速筛选感兴趣的新闻。
- 多标签分类:以图像标注为例,需同时识别“猫”“草地”“阳光”等多个标签,为图像赋予更丰富的语义信息。
分类模型通过构建特征与类别间的映射关系,帮助解决实际问题。例如,在临床研究中可利用XGBoost预测糖尿病并发症风险,为医生提供决策支持;也可通过K - means聚类发现患者亚型,实现更精准的治疗。
阈值与混淆矩阵
阈值(Classification Threshold)
阈值是将模型输出的概率值转换为类别标签的临界点。例如:
- 在垃圾邮件分类中,若阈值设为0.5,则概率≥0.5的邮件判为垃圾邮件。不同的阈值设置会对分类结果产生影响。当调整阈值时,可平衡误报(FP)与漏报(FN)的代价。例如,阈值升高时,被判定为正类(垃圾邮件)的样本会减少,从而使误报(将正常邮件误判为垃圾邮件)减少,但可能会导致漏报(将垃圾邮件误判为正常邮件)增加。
混淆矩阵(Confusion Matrix)
混淆矩阵是评估分类性能的N×N表格,以二分类为例:
实际\预测 | 正例 | 负例 |
---|---|---|
正例 | TP(真阳) | FN(假阴) |
负例 | FP(假阳) | TN(真阴) |
- 应用场景:在分析模型在类别不平衡数据中的表现时非常有用,例如罕见病诊断。由于罕见病患者在总体人群中占比极小,如果仅使用准确率评估模型,可能会得出模型性能良好的错误结论,而混淆矩阵可以更细致地展示模型在不同类别上的分类情况。
- 关键结论:对角线元素(TP、TN)反映正确分类,非对角线(FP、FN)揭示错误类型。通过观察混淆矩阵,我们可以清晰地看到模型在哪些地方容易出错,从而有针对性地进行改进。
准确率、召回率、精确率与F1分数
公式与定义
- 准确率(Accuracy):表示正确分类样本占总样本的比例,计算公式为 A c c u r a c y = T P + T N T P + T N + F P + F N Accuracy = \frac{TP + TN}{TP + TN + FP + FN} Accuracy=TP+TN+FP+FNTP+TN,该指标适用于样本类别分布较为均衡的数据集。如果数据集类别不平衡,准确率可能会产生误导。例如,在一个疾病诊断数据集中,健康人群占比99%,患病者占比1%,即使模型将所有样本都预测为健康,准确率也能达到99%,但这显然不能说明模型性能良好。
- 召回率(Recall/TPR):指实际正例中被正确识别的比例,公式为 R e c a l l = T P T P + F N Recall = \frac{TP}{TP + FN} Recall=