目录
- 1 关于
- 2 概念
- 2.1 基础概念
- 2.2 学习过程
- 2.3 预测与评估
- 2.4 标记与分类
- 2.4.1 标记
- 2.4.2 分类
- 2.5 回归分析
- 2.6 聚类分析
- 2.7 学习类型
- 2.8 泛化能力
- 2.9 统计学概念
- 3 模型评估与选择
- 3.1 经验误差与过拟合
- 3.2 评估方法
- 3.2.1 留出法
- 3.2.2 交叉验证法
- 3.2.3 自助法
- 3.2.4 调参与最终模型
- 3.3 性能度量
1 关于
本文是基于西瓜书(第一、二章)的学习记录。提供了机器学习领域的基础知识和概念的概述、模型评估与选择等内容。
西瓜书电子版:百度网盘分享链接
2 概念
2.1 基础概念
- 记录:一组相关数据项的集合,描述了一个对象或实体的特定信息。
- 数据集(data set):一组记录的集合,每条记录描述一个事件或对象。
- 示例(instance)或样本(sample):数据集中的每条记录,代表一个具体的事件或对象。
- 属性(attribute)或特征(feature):反映事件或对象在某方面的表现或性质的事项。
- 属性值(attribute value):属性上的取值,例如“青绿”、“乌黑”。
- 属性空间(attribute space)、样本空间(sample space)或输入空间:由属性张成的空间,用于描述对象。
- 特征向量(feature vector):属性空间中的每个点对应一个坐标向量,因此一个示例也可以被称为一个特征向量。
2.2 学习过程
- 学习(learning)或训练(training):从数据中学得模型的过程。
- 学习算法(learning algorithm):执行学习或训练过程的算法。
- 训练数据(training data):训练过程中使用的数据。
- 训练样本(training sample):训练数据中的每个样本。
- 训练集(training set):由训练样本组成的集合。
- 假设(hypothesis):学得的模型,对应了关于数据的某种潜在规律。
- 真相(ground-truth)或真实:潜在规律自身,学习过程的目的是找出或逼近真相。
- 学习器(learner):有时将模型称为学习器,可看作学习算法在给定数据和参数空间上的实例化。
2.3 预测与评估
- 预测(prediction):建立模型以帮助判断未剖开的西瓜是否为“好瓜”。
- 测试(testing):使用学得的模型进行预测的过程。
- 测试样本(testing sample):被预测的样本。
2.4 标记与分类
2.4.1 标记
- 标记(label):关于示例结果的信息,如“好瓜”。
- 样例(example):拥有标记信息的示例。
- 样本:有时也将标记看作对象本身的一部分,此时“样例”也称为“样本”。
2.4.2 分类
- 分类(classification):预测离散值的任务,例如“好瓜”“坏瓜”。
- 二分类(binary classification):涉及两个类别的分类任务。
- 多分类(multi-class classification):涉及多个类别的分类任务。
- 正类(positive class):在二分类任务中,通常指定的一个类别。
- 负类(negative class):在二分类任务中,非正类的类别。
2.5 回归分析
- 回归(regression):预测连续值的任务,例如西瓜成熟度。
2.6 聚类分析
- 聚类(clustering):将训练集中的西瓜分成若干组的过程,每组称为一个“簇”。
- 簇(cluster):聚类过程中形成的组。
2.7 学习类型
- 监督学习(supervised learning):基于训练数据拥有标记信息的学习任务。
- 无监督学习(unsupervised learning):基于训练数据不拥有标记信息的学习任务。
2.8 泛化能力
- 泛化(generalization)能力:学得模型适用于新样本的能力。
- 新样本:未在训练集中出现的样本。
2.9 统计学概念
- 分布(distribution):样本空间中全体样本服从的未知分布。
- 独立同分布(independent and identically distributed, i.i.d.):每个样本都是独立地从分布上采样获得的。
3 模型评估与选择
3.1 经验误差与过拟合
- 错误率:分类错误的样本数占样本总数的比例
- 精度:精度= 1-错误率
- 误差:学习器的实际预测输出与样本的真实输出之间的差异
- 训练误差:学习器在训练集上的误差
- 泛化误差:在新样本上的误差
- 过拟合:当学习器把训练样本学得“太好” 了的时候,很可能已经把训练样本自身的一些特点当作了所有潜在样本都会具有的一般性质,这样就会导致泛化性能下降.
- 欠拟合:指对训练样本的一般性质尚未学好.
3.2 评估方法
- 通常,我们可通过实验测试来对学习器的泛化误差进行评估并进而做出选择.为此 需使用一个“测试集”(testing set)来测试学习器对新样本的判别能力,然后以测试集上的“测试误差”(testing error)作为泛化误差的近似。测试集应该尽可能与训练集互斥,即测试样本尽量不在训练集中出现、未在训练过程中使用过。
3.2.1 留出法
直接将数据集。划分为两个互斥的集合,其中一个集合作为训练集S ,另一个作为测试集T
- 需注意的是,训练/测试集的划分要尽可能保持数据分布的一致性,避免因数据划分过程引入额外的偏差而对最终结果产生影响,例如在分类任务中至少要保持样本的类别比例相似
- 单次使用留出法得到的估计结果往往不够稳定可靠,在使用留出法时,一般要采用若干次随机划分、重复进行实验评估后取平均值作为留出法的评估结果
- 常见做法是将大约2/3〜 4/5的样本用于训练,剩余样本用于测试.
3.2.2 交叉验证法
先将数据集D 划分为k个大小相似的互斥子集,然后,每次用k - 1 个子集的并集作为训练集,余下的那个子集作为测试集;这样就可获得k组训练/测试集,从而可进行k次训练和测试,最终返回的是这k个测试结果的均值
- 交叉验证法评估结果的稳定性和保真性在很大程度上取决于k的取值,为强调这一点,通常把交叉验证法称为“ k 折交叉验证”(k-fold cross validation), k最常用的取值是10 ,此时称为10折交叉验证
- 示意图
3.2.3 自助法
每次随机从。中挑选一个样本,将其拷贝放入少 ,然后再将该样本放回初始数据集D 中,使得该样本在下次采样时仍有可能被采到;这个过程重复执行m次后,我们就得到了包含m个样本的数据集D
3.2.4 调参与最终模型
- 除了要对适用学习算法进行选择,还需对算法参数进行设定,这就是通常所说的“参数调节”或简称“调参 "(parameter tuning).
- 通常把学得模型在实际使用中遇到的数据称为测试数据,为了加以区分,模型评估与选择中用于评估测试的数据集常称为“验证集 "(validation set)。).例如,在研究对比不同算法的泛化性能时,我们用测试集上的判别效果来估计模型在实际使用时的泛化能力,而把训练数据另外划分为训练集和验证集,基于验证集上的性能来进行模型选择和调参.
3.3 性能度量
- 均方误差(回归任务最常用)
- 错误率:分类错误的样本数占样本总数的比例
- 精度:是分类正确的样本数占样本总数的比例
- 查准率:检索出的信息中有多少比例是用户感兴趣的。即预测为正类的样本中,实际为正类的比例
- 查全率:用户感兴趣的信息中有多少被检索出来了。即在所有实际为正类的样本中,模型预测为正类的比例。
- F1:查准率和查全率的调和平均数,它试图在两者之间找到一个平衡。
- 一般来说,查准率高时,查全率往往偏低;而查全率高时,查准率往往偏低
- P-R 曲线:根据学习器的预测结果对样例进行排序,排在前面的是学习器认为“最可能”是正例的样本,排在最后的则是学习器认为“最不可能”是正例的样本.按此顺序逐个把样本作为正例进行预测,则每次可以计算出当前的查全率、查准率.以查准率为纵轴、查全率为横轴作图,就得到了查准率-查全率曲线,简称 P-R曲线
- 若一个学习器的P -R 曲线被另一个学习器的曲线完全“包住”,则可断言后者的性能优于前者
- 比较P -R 曲线下面积的大小,它在一定程度上表征了学习器在查准率和查全率上取得相对“双高”的比例.
- ROC 与 AUC:我们根据学习器的概率预测结果对样例进行排序,按此顺序逐个把样本作为正例进行预测,每次计算出两个重要量的值,分别以它们为横、纵坐标作图,就得到了 “ROC曲线”.ROC 曲线的纵轴是“真正例率”(True Positive Rate ,简称 TPR ) , 横轴是“假正例率”
- 若一个学习器的ROC曲线被另一个学习器的曲线完全“包住"则可断言后者的性能优于前者;若两个学习器的ROC曲线发生交叉,则难以一般性地断言两者孰优孰劣.此时如果一定要进行比较,则较为合理的判据是比较ROC曲线下的面积,即AUC
- 代价敏感错误:为权衡不同类型错误所造成的不同损失,可为错误赋予“非均等代价”