首页
技术小册
AIGC
面试刷题
技术文章
MAGENTO
云计算
视频课程
源码下载
PDF书籍
「涨薪秘籍」
登录
注册
4.1 分类变量
4.1.1 One-Hot 编码(虚拟变量)
4.1.2 数字可以编码分类变量
4.2 分箱、离散化、线性模型与树
4.3 交互特征与多项式特征
4.4 单变量非线性变换
4.5 自动化特征选择
4.5.1 单变量统计
4.5.2 基于模型的特征选择
4.5.3 迭代特征选择
4.6 利用专家知识
5.1 交叉验证
5.1.1 scikit-learn 中的交叉验证
5.1.2 交叉验证的优点
5.1.3 分层k 折交叉验证和其他策略
5.2 网格搜索
5.2.1 简单网格搜索
5.2.2 参数过拟合的风险与验证集
5.2.3 带交叉验证的网格搜索
5.3 评估指标与评分
5.3.1 牢记目标
5.3.2 二分类指标
5.3.3 多分类指标
5.3.4 回归指标
5.3.5 在模型选择中使用评估指标
6.1 用预处理进行参数选择
6.2 构建管道
6.3 在网格搜索中使用管道
6.4 通用的管道接口
6.4.1 用make_pipeline 方便地创建管道
6.4.2 访问步骤属性
6.4.3 访问网格搜索管道中的属性
6.5 网格搜索预处理步骤与模型参数
6.6 网格搜索选择使用哪个模型
7.1 用字符串表示的数据类型
7.2 示例应用:电影评论的情感分析
7.3 将文本数据表示为词袋
7.3.1 将词袋应用于玩具数据集
7.3.2 将词袋应用于电影评论
7.4 停用词
7.5 用tf-idf 缩放数据
7.6 研究模型系数
7.7 多个单词的词袋(n元分词)
7.8 分词、词干提取与词形还原
7.9 主题建模与文档聚类
8.1 处理机器学习问题
8.2 从原型到生产
8.3 测试生产系统
8.4 构建你自己的估计器
8.5 下一步怎么走
8.5.1 理论
8.5.2 其他机器学习框架和包
8.5.3 排序、推荐系统与其他学习类型
8.5.4 概率建模、推断与概率编程
8.5.5 神经网络
8.5.6 推广到更大的数据集
当前位置:
首页>>
技术小册>>
Python机器学习基础教程(下)
小册名称:Python机器学习基础教程(下)
### 5.3.3 多分类指标 在机器学习领域,尤其是处理多分类问题时,评估模型性能变得尤为复杂且重要。与二分类问题不同,多分类问题涉及将实例分配到三个或更多类别中,因此,需要一系列专门的评估指标来全面、准确地衡量模型的表现。本章将深入探讨多分类任务中常用的性能指标,包括准确率(Accuracy)、精确率(Precision)、召回率(Recall)、F1分数(F1 Score)、混淆矩阵(Confusion Matrix)、宏平均(Macro-Averaging)与微平均(Micro-Averaging)、以及Kappa系数(Kappa Statistic)等,旨在为读者提供一个全面理解多分类评估体系的框架。 #### 5.3.3.1 准确率(Accuracy) 准确率是最直观、最常被提及的分类性能指标,它表示模型正确预测的样本数占总样本数的比例。对于多分类问题,准确率的计算公式为: \[ \text{Accuracy} = \frac{\text{正确预测的样本数}}{\text{总样本数}} \] 尽管准确率易于理解和计算,但在类别分布极度不平衡的数据集上,它可能会给出误导性的结果。例如,当某个类别的样本数量远超过其他类别时,即使模型对该类别的预测非常准确,但对其他类别的预测很差,整体准确率仍可能很高。 #### 5.3.3.2 精确率、召回率与F1分数 在多分类场景下,我们通常对每个类别分别计算精确率(Precision)和召回率(Recall),然后再根据需要进行平均。 - **精确率**(Precision):表示模型预测为正的样本中,真正为正样本的比例。在多分类中,需对每个类别分别计算。 \[ \text{Precision}_i = \frac{\text{真正类为} i \text{且预测为} i \text{的样本数}}{\text{预测为} i \text{的样本总数}} \] - **召回率**(Recall):表示所有正样本中,被模型正确预测为正的比例。同样,对每个类别分别计算。 \[ \text{Recall}_i = \frac{\text{真正类为} i \text{且预测为} i \text{的样本数}}{\text{真正类为} i \text{的样本总数}} \] - **F1分数**(F1 Score):是精确率和召回率的调和平均,用于综合评估模型的性能。 \[ \text{F1 Score}_i = 2 \times \frac{\text{Precision}_i \times \text{Recall}_i}{\text{Precision}_i + \text{Recall}_i} \] 对于多分类问题,F1分数的平均方法主要有两种:宏平均(Macro-Averaging)和微平均(Micro-Averaging)。宏平均是简单地对每个类别的F1分数求算术平均,不考虑每个类别的样本数量;而微平均则是通过将所有类别的真正例、假正例和假负例分别累加后,再计算整体的精确率、召回率和F1分数。 #### 5.3.3.3 混淆矩阵(Confusion Matrix) 混淆矩阵是评价多分类模型性能的一种直观方式,它通过矩阵形式展示了实际类别与预测类别之间的关系。混淆矩阵的每一行代表一个实际类别,每一列代表一个预测类别,矩阵中的元素`C[i][j]`表示实际为类别`i`但被预测为类别`j`的样本数量。通过分析混淆矩阵,我们可以深入了解模型在各类别上的表现,包括哪些类别容易混淆等。 #### 5.3.3.4 Kappa系数(Kappa Statistic) Kappa系数用于评估分类器预测结果的准确度,特别是当数据集中存在类别不平衡时。它考虑了随机分类的可能性,通过比较分类器的实际表现与随机分类的期望表现之间的差异,来衡量分类器的性能。Kappa系数的值介于-1和1之间,其中1表示完全一致的预测,0表示预测结果与随机猜测相同,-1表示预测结果与实际情况完全相反。Kappa系数提供了一种更稳健的评估方法,尤其是在处理多分类且类别不平衡的数据集时。 #### 5.3.3.5 实际应用中的考虑 在实际应用中,选择合适的评估指标取决于具体问题的需求。例如,在医疗诊断领域,由于误诊的代价远高于漏诊,因此召回率可能更为重要;而在信息检索领域,为了提高用户体验,精确率可能更为关键。此外,当数据集存在严重的类别不平衡时,仅依赖准确率作为评估标准可能不够全面,需要结合其他指标如F1分数、Kappa系数等进行综合评估。 #### 5.3.3.6 总结 多分类指标的选择与应用是机器学习项目中不可或缺的一环。通过准确率、精确率、召回率、F1分数、混淆矩阵以及Kappa系数等指标的综合评估,我们可以更全面地了解模型在各类别上的表现,为模型的优化与选择提供有力支持。同时,根据具体问题的需求和数据集的特点,合理选择和组合这些指标,是确保评估结果准确、有效的关键。在未来的机器学习实践中,深入理解并灵活运用这些评估指标,将有助于我们更好地解决多分类问题,推动技术的不断进步与发展。
上一篇:
5.3.2 二分类指标
下一篇:
5.3.4 回归指标
该分类下的相关小册推荐:
Python合辑11-闭包函数
Python编程轻松进阶(二)
Python合辑12-面向对象
Python合辑8-变量和运算符
Python高并发编程与实战
Python编程轻松进阶(三)
Python与办公-玩转Word
Python面试指南
Python自动化办公实战
Python高性能编程与实战
Python合辑9-判断和循环
Python合辑1-Python语言基础