8.吴恩达机器学习——数据增强与混淆矩阵
文章目录
1.数据增强方法
数据增强是指对已有样本数据进行一定变换,从而获得新数据,以便用于模型训练
方法有:
| 数据类型 | 常用方法 |
|---|---|
| 图像 | 翻转、旋转、MixUp、CutMix |
| 文本 | 回译、同义替换、LM 生成 |
| 语音 | SpecAugment、加噪 |
| 时序 | 扭曲、平移、加噪 |
| 表格 | SMOTE、GAN |
2.迁移学习
定义:简单来说,首先利用与任务无关的大型数据集训练一个神经网络,并利用已经训练好神经网络,只替换输出层,从而实现对任务要求的识别
两种方式:
- 方式1:冻结除了输出层之外的所有层的参数,仅仅替换输出层,这对少了数据集有效
- 方式2:重新训练所有层的参数,根据传递的X初值来进行训练
总体分为:监督预训练和微调两步骤

3.混淆矩阵
数据失衡
机器学习算法中最重要也是最基础的是数据,例如你有一个二分类数据集,患病和不患病标记为0或者1,其中标记为1的数据占95%,标记为0的数据占5%,那么你训练得到了一个算法模型,会导致准确率很低,例如只有1%正确率,可是如果你简单的进行一个输出
print("y=1")
那么你会有95%的正确率,这种简单的输出比你训练的模型好很多
这就是数据不平衡给我们训练模型带来的影响,所以在处理不平衡数据集时候,我们经常使用不同的误差指标
混淆矩阵
混淆矩阵(Confusion Matrix) 是用于评估分类模型性能的一种表格化工具,直观展示了模型预测结果与真实标签之间的对应关系,特别常用于二分类和多分类问题。
混淆矩阵的基本概念(以二分类为例)
| 实际 \ 预测 | 预测为正类 | 预测为负类 |
|---|---|---|
| 实际为正类 | TP(True Positive) | FN(False Negative) |
| 实际为负类 | FP(False Positive) | TN(True Negative) |
四个核心元素
- TP(真正例):实际是正类,模型也预测为正类
- TN(真负例):实际是负类,模型也预测为负类
- FP(假正例):实际是负类,却被预测成正类(误报)
- FN(假负例):实际是正类,却被预测成负类(漏报)
常见性能指标(从混淆矩阵导出)
基于混淆矩阵可计算多种评估指标,例如:
- 准确率(Accuracy):(TP + TN) / 总样本数
- 精确率(Precision):TP / (TP + FP)
- 召回率(Recall):TP / (TP + FN)
- F1 分数:2 × (Precision × Recall) / (Precision + Recall)
混淆矩阵特别适用于类别不平衡数据集,因为它能揭示模型在少数类上的表现缺陷,而单纯的准确率可能掩盖此类问题。在实际应用中,它是诊断分类模型错误模式的重要工具。
混淆矩阵指标

混淆矩阵可以得到常见的评价指标,其中,对于不平衡数据,精确率和召回率越高,才能代表算法是有效的
准确率(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
适合类别分布均衡的情况。
精确率(Precision)
P r e c i s i o n = T P T P + F P Precision = \frac{TP}{TP + FP} Precision=TP+FPTP
模型预测为正的样本中,有多少是真的正类(关注误报)
召回率(Recall / Sensitivity)
R e c a l l = T P T P + F N Recall = \frac{TP}{TP + FN} Recall=TP+FNTP
实际正类中,有多少被模型识别出来(关注漏报)。
F1-score
F 1 = 2 ⋅ P r e c i s i o n ⋅ R e c a l l P r e c i s i o n + R e c a l l F1 = \frac{2 \cdot Precision \cdot Recall}{Precision + Recall} F1=Precision+Recall2⋅Precision⋅Recall
精确率和召回率的调和平均,适合类别不平衡。
如下图,当你提高了判断阈值,你会有较高的精确率,而当你降低了判断阈值,你会有较高的召回率,但这样显然不对,我们需要找到一个两者之间的平衡状态的阈值,这就需要计算F1分数


更多推荐
所有评论(0)