吴恩达深度学习笔记(7)

误差分析:

你运行一个算法代替人类计算,但是没有达到人类的效果,需要手动检查算法中的错误,对模型的一些部分做相应调整,才能更好地提升分类的精度。如果不加分析去做,可能几个月的努力对于提升精度并没有作用。所以一个好的误差分析的流程就相当重要。

表现上限:关注改正一个误差能提高多少准确率

并行的错误分析

做一个表格,写出错误的类型,并对样本进行统计,计算错误类别的百分比,结果能给你提供参考,决定优先解决的问题

清理错误标签数据:

监督学习中,有输入数据和输出标签,当输出标签错误,首先应该考虑训练集的情况(其实深度学习对于训练集中的随机错误很稳健,但对系统误差(本身标记的错误,而不是分类器错误)不稳健),随机误差造成的错误对算法结果影响很小。

如果决定研究开发集手动重新检查标签,并且尝试纠正,现需要考虑额外的指南和原则:

  • 同时应用开发集和测试集
  • 检查算法预测准确和错误的例子,看那些需要被纠正的,有时即使预测对了,但仍需要被纠正,如果只纠正预测错的,评估算法错误率的时候,就会有更大的偏差
  • 研究开发集和测试集,去纠正标签,可能应用同样的方法到训练集上,也可能不,因为纠正训练集不是那么重要,同时,开发集和测试集需要保持同分布,但是训练集稍微i不同也是很合理的

训练和测试的不同分布:

如果想扩大训练样本,但是只有数据分布不同的数据,应该将这部分数据放入训练集。开发集和测试集用的是满足目标分布的数据

不匹配数据分布的偏差和方差:

偏差和方差能确定下一步工作的优先级,当训练、开发、测试集来自不同的分布时,偏差和方差的分析方法也会发生变化。

假如人类在某个问题上有近乎完美表现,即贝叶斯误差约等于0,进行误差分析时要兼顾训练集和开发集误差

如果训练集和开发集不同分布,从训练集误差到开发集误差有两个事情变了

  • 算法看到的数据只有训练集没有开发集
  • 俩个集合不同分布

新建立一个子集:训练-开发集---从训练集随机抽取一部分混淆,区分上述两个事情对误差的影响

数据不匹配解决方法:

  • 进行人工误差分析,尝试去了解训练集和开发测试集的具体差异在哪里。
  • 尝试把训练数据变得更像开发集,或者收集更多的类似开发集和测试集的数据,如增加噪音;

迁移学习:

可以将在一个任务的神经网络中学到的东西应用到另一个任务(预训练、微调)

迁移学习什么时候有用:当在被迁移的模型中有大量的数据,而目标模型数据较少时

参考:吴恩达Coursera深度学习课程 DeepLearning.ai 提炼笔记(3-2)-- 机器学习策略(2)_deeplearning ai 笔记 3-2-CSDN博客

相关推荐
一条数据库24 分钟前
AI生成文本检测数据集:基于不平衡数据集(人类94% vs AI 6%)的高效机器学习模型训练,涵盖ChatGPT、Gemini等LLM生成内容
人工智能
山烛1 小时前
OpenCV:图像直方图
人工智能·opencv·计算机视觉·图像直方图
摘星编程1 小时前
AI 帮我写单测:pytest 覆盖率提升 40% 的协作日志
人工智能·pytest·测试驱动开发·代码覆盖率·ai协作开发
荼蘼1 小时前
OpenCV 发票识别全流程:透视变换与轮廓检测详解
人工智能·opencv·计算机视觉
byzy1 小时前
【论文笔记】SpaRC: Sparse Radar-Camera Fusion for 3D Object Detection
论文阅读·深度学习·目标检测·计算机视觉·自动驾驶
☼←安于亥时→❦1 小时前
PyTorch 梯度与微积分
人工智能·pytorch·python
mahuifa2 小时前
OpenCV 开发 -- 图像阈值处理
人工智能·opencv·计算机视觉
闲人编程2 小时前
图像去雾算法:从物理模型到深度学习实现
图像处理·人工智能·python·深度学习·算法·计算机视觉·去雾
咔咔学姐kk2 小时前
大模型微调技术宝典:Transformer架构,从小白到专家
人工智能·深度学习·学习·算法·transformer
Caaacy_YU3 小时前
多模态大模型研究每日简报【2025-09-10】
论文阅读·人工智能·深度学习·机器学习·计算机视觉