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

误差分析:

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

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

并行的错误分析

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

清理错误标签数据:

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

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

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

训练和测试的不同分布:

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

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

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

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

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

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

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

数据不匹配解决方法:

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

迁移学习:

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

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

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

相关推荐
人工智能训练12 小时前
【极速部署】Ubuntu24.04+CUDA13.0 玩转 VLLM 0.15.0:预编译 Wheel 包 GPU 版安装全攻略
运维·前端·人工智能·python·ai编程·cuda·vllm
源于花海12 小时前
迁移学习相关的期刊和会议
人工智能·机器学习·迁移学习·期刊会议
不会代码的小猴14 小时前
Linux环境编程第六天笔记--system-V IPC
linux·笔记
DisonTangor14 小时前
DeepSeek-OCR 2: 视觉因果流
人工智能·开源·aigc·ocr·deepseek
乌恩大侠14 小时前
【笔记】USRP 5G 和 6G 参考架构
笔记·5g
薛定谔的猫198214 小时前
二十一、基于 Hugging Face Transformers 实现中文情感分析情感分析
人工智能·自然语言处理·大模型 训练 调优
发哥来了14 小时前
《AI视频生成技术原理剖析及金管道·图生视频的应用实践》
人工智能
biuyyyxxx14 小时前
Python自动化办公学习笔记(一) 工具安装&教程
笔记·python·学习·自动化
数智联AI团队14 小时前
AI搜索引领开源大模型新浪潮,技术创新重塑信息检索未来格局
人工智能·开源
不懒不懒14 小时前
【线性 VS 逻辑回归:一篇讲透两种核心回归模型】
人工智能·机器学习