目录
第一章 绪论
1.1 引言
1.2 基本术语
1.3 假设空间
第二章 模型评估
2.1 为什么需要模型评估?
2.2 模型评估的定义
2.2.1 评估方法之留出法:
2.2.2 交叉验证法和自助法
2.3 深入理解模型评估
第一章 绪论
1.1 引言
机器学习是什么?
机器学习的主要流程
通俗就是,找一个最适合的函数方法~
机器类似一个学生,接触的越多,学习的越多,越厉害~
但是也害怕脏数据(类似环境对人类的影响)
机器学习可以做什么?
- 图片识别
- 互联网推荐系统(购物、短视频等等的个性化推荐)
- 自动驾驶(模型去决策车辆收集的信息,转而控制车辆)
- 古文献修复
1.2 基本术语
监督学习:数据是带标签的数据
非监督学习:不带标签
分类:例如人的性别
回归:返回的是连续值,比如人的年龄
聚类:物以类聚,人以群分
数据:记录的集合
样本:每一条记录
标签:属性
特征向量:一个数据(因为使用到了各个标签)
1.3 假设空间
什么是假设空间?
机器学习的假设空间是指模型可以表示的所有可能解决一个特定问题的假设集合。
假设空间包括了所有可能的参数取值和模型结构的组合。在机器学习中,我们通过从假设空间中选择一个最优的假设来进行模型训练和预测。
假设空间的大小取决于所选择的模型的复杂性。如果模型很简单,假设空间可能较小,表示能力有限;相反,如果模型很复杂,假设空间会更大,能够表示更多种类的函数关系。
选择合适的假设空间对于机器学习任务的成功至关重要。如果假设空间过小,模型可能无法捕捉到数据中的复杂关系,导致欠拟合;而如果假设空间过大,模型可能会过度拟合训练数据,对新的数据表现不佳。
因此,在实际应用中,需要根据问题的特点和数据集的规模选择合适的假设空间,以获得最好的性能和泛化能力。
第二章 模型评估
2.1 为什么需要模型评估?
经验误差 和泛化误差的关系
经验误差是指模型在训练集上的误差,也就是模型预测结果与实际标签之间的差异。它反映了模型对于已有数据的拟合能力。
泛化误差是指模型在新样本上的误差,也就是模型在未曾见过的数据上的预测能力。它衡量了模型对于未知数据的适应能力。
验证集用来做什么呢? 用来调整模型的超参数
混淆矩阵
混淆矩阵是一种用于评估分类模型性能的表格,它展示了模型对于不同类别的预测结果与实际标签之间的关系。
混淆矩阵通常是一个N×N的矩阵,其中N表示类别的数量。对于二分类问题,混淆矩阵包含4个关键指标:真正例(True Positive, TP)、真负例(True Negative, TN)、假正例(False Positive, FP)和假负例(False Negative, FN)。
- 真正例(TP):模型正确地预测为正类的样本数量。
- 真负例(TN):模型正确地预测为负类的样本数量。
- 假正例(FP):模型错误地预测为正类的样本数量。
- 假负例(FN):模型错误地预测为负类的样本数量。
混淆矩阵可以帮助我们计算多个评估指标,如准确率、召回率、精确率等,从而全面评估模型的分类性能。
示例:
过拟合和欠拟合
过拟合指的是模型在训练数据上表现得很好,但在未见过的测试数据上表现较差的现象。
欠拟合则是指模型在训练数据上表现较差,无法很好地拟合数据,无法捕捉到数据中的特征和规律。
解决过拟合问题的方法包括:
- 1. 增加训练样本:增加更多的训练数据可以减少过拟合的可能性。
- 2. 减小模型复杂度:降低模型的复杂度,如减少参数的数量、调整模型结构等。
- 3. 正则化(Regularization):通过在损失函数中添加正则化项,限制模型参数的大小,避免过拟合。
- 4. Dropout:在训练过程中,随机地忽略一部分神经元和连接,减少模型的复杂度
解决欠拟合问题的方法包括:
- 1. 增加模型复杂度:提高模型的复杂度,增加参数的数量、增加网络层数等。
- 2. 特征工程:对原始数据进行特征转换、组合等操作,提取更有意义的特征。
- 3. 收集更多数据:增加更多的训练数据可以帮助模型更好地学习数据的模式和规律。
- 4. 调整模型超参数:如学习率、正则化参数等,通过交叉验证等方法找到最优的超参数组合。
2.2 模型评估的定义
2.2.1 评估方法之留出法:
数据构成:
训练数据:
训练数据是用来训练模型的数据集。通常情况下,训练集是我们拥有的最大的数据集。在监督学习中,训练数据包括输入数据和对应的标签。
验证数据:
验证数据是用来验证模型的准确性、泛化性能的数据集。该数据集通常是从训练数据中分离出来的,可以用来评估模型的性能和调整模型的参数。在训练过程中,使用验证数据来判断是否出现过拟合或欠拟合等问题,以及选择更好的模型。
测试数据:
测试数据是用来测试模型的泛化能力的数据集。该数据集通常是从训练数据和验证数据中分离出来的,可以用来评估模型的准确性和实用性。测试数据应该与实际场景的数据具有相似的特征,以测试模型的真实性能。
数据分层:
6 2 2 或者 7 2 1分层~
数据分割是指将数据集按照一定比例分割成训练集、验证集和测试集。
通常情况下,数据集的分割比例是 6:2:2 或 7:2:1 ,训练集、验证集和测试集分别占总数据集的60%、20%和20%或70%、20%和10%。
其中,训练集用于训练模型,验证集用于调整模型的参数和评估模型的性能,测试集用于测试模型的泛化性能。
数据分割要保证数据之间的独立性和随机性,以防止在训练和测试过程中出现数据泄漏和过拟合的问题。
2.2.2 交叉验证法和自助法
k折交叉验证:
将原始数据集随机划分为k 个大小相等的子集,每次其中k-1 个子集的并集用作训练集,剩下的一个子集用作验证集。
依次使用每个子集作为验证集,重复k 次训练和验证的过程,最终得到k 个模型性能指标的均值作为最终评估结果。
自助法:
通过重复有放回抽样构建新的训练集,并利用新训练集进行模型训练和测试的方法
多次之后,抽出来的,当成训练集~
自助法的主要步骤如下
- 从原始数据集中有放回地抽取样本,构建新的训练集。由于有放回地抽样,新的训练集可能包含重复样本和遗漏样本
- 使用新的训练集进行模型训练
- 对于每个训练得到的模型,使用原始数据集中未被抽取的样本进行测试。重复上述步骤多次,得到一系列模型性能指标的分布
- 利用这些模型性能指标的分布,可以进行模型评估、参数估计等
2.3 深入理解模型评估
偏差和方差
后面 Irreducible error 不可预测的错误 或者 噪声
模型越复杂,模型拟合能力越强,偏差逐渐变小,容易过拟合
模型越复杂,可能性就会越多,方差越大