吴恩达《机器学习》10-6-10-7:学习曲线、决定下一步做什么

一、学习曲线

1. 学习曲线概述

学习曲线将训练集误差和交叉验证集误差作为训练集实例数量(m)的函数绘制而成。这意味着从较少的数据开始,逐渐增加训练集的实例数量。该方法的核心思想在于,当训练较少数据时,模型可能会完美地适应这些数据,但这并不代表它能够很好地适应交叉验证集或测试集数据。

2. 识别高偏差/欠拟合

在学习曲线中,对于高偏差或欠拟合的情况,增加训练集数据可能不会显著改善模型效果。具体而言,如果使用一条直线模型适应数据,无论训练集有多大,模型的误差都可能保持较高,表现出学习曲线趋于平稳。

3. 识别高方差/过拟合

对于高方差或过拟合的情况,学习曲线呈现出一种特殊的模式。当交叉验证集误差远大于训练集误差时,增加更多数据到训练集可能有助于提高算法效果。高方差情况下,模型在训练集上表现很好,但泛化到未见数据时表现不佳。

4. 使用学习曲线的价值

学习曲线不仅仅是一种工具,更是算法性能的"合理检验"。通过观察曲线的形状,我们可以快速判断算法的问题所在,是偏差还是方差。这为调整算法提供了重要线索,指导我们如何改进模型的性能。

二、决定下一步做什么

在机器学习中,选择下一步的操作至关重要,而之前学到的诊断法则可以帮助更好地判断应该采取哪些方法来改进学习算法的效果。在这个过程中,可以回顾六种可选的下一步,并根据问题的性质进行选择:

  1. 获得更多的训练实例 - 解决高方差:如果模型在训练集上表现良好,但在交叉验证集上误差较大,可能是因为训练实例不足导致过拟合。

  2. 尝试减少特征的数量 - 解决高方差:如果模型复杂度较高,可以考虑减少特征的数量,减轻过拟合问题。

  3. 尝试获得更多的特征 - 解决高偏差:如果模型欠拟合,可以考虑增加特征数量,提高模型复杂度。

  4. 尝试增加多项式特征 - 解决高偏差:对于线性模型,可以尝试引入更多的多项式特征,提高模型的灵活性。

  5. 尝试减少正则化程度 λ - 解决高偏差:如果模型过于正则化,可以减小正则化程度,提高模型对训练数据的拟合度。

  6. 尝试增加正则化程度 λ - 解决高方差:如果模型过拟合,可以增加正则化程度,限制模型的复杂度。

对于神经网络,调整网络的大小和正则化程度也是一项重要任务。较小的神经网络可能导致高偏差,而较大的神经网络可能导致高方差。通过逐步增加隐藏层的层数,可以使用交叉验证集选择最佳的网络结构。

参考资料:

中英字幕吴恩达机器学习系列课程

黄海广博士 - 吴恩达机器学习个人笔记

相关推荐
一隅论数智5 天前
给AI一张“业务概念地图“:本体如何从哲学走向企业智能
大数据·人工智能·经验分享·笔记·学习·学习方法·政务
XiHongShi20165 天前
STM32F407 RTC定时器例程,建议保存
stm32·单片机·学习
爱吃苹果的日记本5 天前
离散数学第六课
学习·离散数学
猎头南楼5 天前
知识社区推荐系统实践:新用户冷启动与长短期兴趣建模的挑战 资深推荐算法工程师
人工智能·深度学习·算法·机器学习
高洁015 天前
未来三年,AI 落地的五个确定性判断一
人工智能·深度学习·机器学习·transformer·知识图谱
AI职业加油站5 天前
AI智能体应用工程师证书:政策红利下的职业新风口
大数据·运维·人工智能·学习·职场发展
深圳老胡5 天前
STM32F407 控制 L6470 步进电机驱动 —— 控制过程简介
笔记·stm32·单片机·嵌入式硬件·代码规范
旖旎夜光5 天前
力控面试题 01.01: 判定字符是否唯一(位运算) —— 题解
c++·学习·算法·leetcode·力控
奇思妙想聪明勤奋的小羊5 天前
DeepAgents第5章:子Agent 与上下文隔离—让 Agent学会委派
人工智能·python·学习·语言模型