前言
博客仅记录个人学习进度和一些查缺补漏。
学习内容:BV1Bq421A74G
一、模型评估
训练集
常规训练集
三七分配训练集和数据集。
线性回归
逻辑回归
交叉验证集
简单交叉验证集:
其中,60%训练集用于拟合参数,20%交叉集用于确定模型,20%测试集用于检测泛化效率
交叉验证(Cross-validation)是一种统计分析方法,用于评估并提高模型的泛化能力。它主要在机器学习和统计学中使用,目的是对模型的性能进行更准确的估计,同时防止模型过拟合。交叉验证最常见的形式是k折交叉验证(k-fold cross-validation)。
k折交叉验证的步骤如下:
-
数据集分割:将整个数据集随机分成k个大小相等的子集。每个子集应该尽可能地代表整个数据集。
-
训练与验证:在k次迭代中,每次使用k-1个子集的数据作为训练集,剩下的那个子集作为验证集。这个过程重复k次,每次选择不同的子集作为验证集。
-
模型评估:每次迭代结束后,使用验证集评估模型的性能。记录每次迭代的性能指标,如准确率、召回率、F1分数等。
-
性能汇总:计算所有k次迭代的平均性能指标,这通常被认为是模型泛化能力的估计。
交叉验证的优点:
- 减少过拟合风险:通过在不同的数据子集上训练和验证,可以更全面地评估模型的性能。
- 更有效的利用数据:特别是在数据量有限的情况下,交叉验证可以确保每个数据点都被用于训练和验证。
- 评估模型稳定性:如果模型在不同的训练集和验证集上表现一致,那么可以认为模型是稳定的。
交叉验证的种类:
- 简单交叉验证:整个数据集被分为训练集和测试集,仅进行一次训练和验证。
- k折交叉验证:如上所述,数据集被分为k个子集,进行k次训练和验证。
- 留一交叉验证(Leave-One-Out Cross-Validation, LOOCV):当数据集较小时使用,每次只留下一个样本作为验证集,其余作为训练集。
- 分层交叉验证(Stratified K-Fold Cross-Validation):在分类问题中,确保每个折叠中类别的分布与整体数据集的分布相似。
偏差与方差
高偏差由于拟合不足,高方差由于过拟合,但有时候也会同时出现。
正则化
具体定义在前一章已经提过,此处不再赘述
当拉姆达过大或者过小时:
学习曲线
数据集的添加(数据增强)
数据增强是机器学习和深度学习中常用的技术,特别是在图像处理和自然语言处理领域。它通过在原始数据上应用一系列变换,生成新的数据样本,以此来扩大训练集,提高模型的泛化能力和鲁棒性。以下是一些常用的数据增强方法:
-
几何变换:包括图像的翻转(水平、垂直)、旋转、缩放、平移、裁剪、错切等。这些变换可以帮助模型学习到图像的不同视角和尺寸,从而提高模型对图像变化的适应能力。
-
颜色变换:如亮度调整、对比度调整、饱和度调整、色调调整等。这些变换有助于模型在不同的光照和颜色条件下保持性能。
-
噪声注入:向图像中添加噪声(如高斯噪声、椒盐噪声)可以帮助模型学会忽略不重要的干扰,提高鲁棒性。
-
图像混合:如Mixup和CutMix技术,通过将两张或多张图像的部分区域混合在一起,生成新的图像样本。
-
基于模型的增强:使用生成对抗网络(GANs)或变分自编码器(VAEs)等深度学习模型来生成新的数据样本。
-
自动化数据增强:如AutoAugment和RandAugment,通过搜索算法自动找到最优的数据增强策略。
-
特定领域的增强:例如在医学图像中,可能需要特定的增强技术来保持图像的医学特性。
-
自适应数据增强:如AdaAugment,根据模型的实时反馈动态调整增强幅度,以适应模型的训练状态。
数据增强的选择和应用需要根据具体的任务和数据集特性来决定。例如,在图像分类任务中,常见的增强方法包括随机裁剪、翻转和颜色变换;而在自然语言处理任务中,则可能涉及到同义词替换、句子重组等技术。通过合适的数据增强,可以有效地提高模型的性能,减少过拟合的风险,并在有限的数据条件下训练出更加健壮的模型。
迁移学习
迁移学习是一种机器学习技术,它允许一个已经训练好的模型被调整或者重新用于一个新的但相关的任务。这种方法特别适用于目标领域数据稀缺或训练资源有限的情况。通过迁移学习,可以利用在源领域学习到的知识来提高目标领域的学习性能,减少对大量标注数据的依赖,加快模型训练速度,并提高模型的泛化能力。
在深度学习领域,迁移学习的应用非常广泛,尤其是在计算机视觉和自然语言处理任务中。例如,可以使用在大型数据集上预训练的模型,如ImageNet,并通过微调来适应特定的图像识别任务。在自然语言处理中,预训练的语言模型如BERT或GPT可以在特定文本分类或命名实体识别任务上进行微调。
迁移学习面临的挑战包括领域适应性问题、知识迁移问题、计算资源问题、数据不平衡问题和可解释性问题。领域适应性问题涉及到如何使源领域和目标领域的数据分布尽可能接近,而知识迁移问题则是如何有效地将源领域中的知识迁移到目标领域。计算资源问题涉及到迁移学习通常需要大量的计算资源进行预训练模型的训练和微调,数据不平衡问题需要解决源领域和目标领域中数据分布不均衡的问题,而可解释性问题则是提高迁移学习的可解释性。
迁移学习的最新进展包括预训练模型的广泛应用、多任务学习的优化和元学习的探索。预训练模型在目标领域使用较少的数据进行微调,多任务学习利用源领域中的任务信息来提高目标领域的学习性能,元学习则是利用源领域中的任务信息来提高目标领域的学习性能。
总的来说,迁移学习作为人工智能领域的一个关键技术,其最新进展和挑战值得我们深入研究和探讨。通过不断地研究和实践,我们相信迁移学习将在未来的人工智能发展中发挥更加重要的作用。
因为前面的基本图像特征已经被学习,对于不同的图片,基本图像特征是相同的
精确率与召回率
假设你做的模型有99%的准确率,然而事实上只有0.5%的患者确实患有这种病,那么一个永远只会输出没病的函数准确率甚至高于神经网络的预测。但是这明显是无效的预测。
召回率(Recall)和精确率(Precision)是评估分类模型性能的两个重要指标,尤其在二分类问题中经常被用来衡量模型的效果。它们通常用于评估模型对于正类(positive class)的预测能力。
- 精确率(Precision):
精确率衡量的是模型预测为正类的样本中,实际为正类的比例。它关注的是模型预测的准确性。精确率的计算公式为: