假设你的训练集、开发集和测试集都来自相同的分布,那你应该每次都试图去获取更多的训练数据,因为这样能单独提高性能,对吗?
有更多的数据是无害的,然而它并不总是如我们期望的那样有帮助。有时获取更多的数据可能在浪费时间。那么应该在何时决定添加数据呢?
机器学习中有两个主要的误差来源:偏差和方差。理解它们将有助于你决定是否要添加数据,以及利用好时间去执行其它的策略来提升性能。
假设你希望构建一个误差为 5% 的猫识别器。而目前的训练集错误率为 15%,开发集错误率为 16%。在这种情况下,添加数据可能不会有太多帮助。你应该关注其他改变。实际上,在你的训练集上添加更多的样本只会让你的算法难以在训练集上做的更好。(我们在后面章节中解释了原因)
如果你在训练集上的错误率是 15%(即 85% 的精度),但你的目标是 5% 错误率(95% 精度),那么第一个要解决的问题是提高算法在训练集上的性能。算法在开发/测试集上的性能通常比在训练集上要差。所以,如果算法在已知样本上达到 85% 的精度,那么是不可能在未知的样本上达到 95% 精度的。
如上所述,假设你的算法在开发集上有 16% 的错误率(84% 精度),我们将这 16% 的错误率分为两部分:
第一部分是算法在训练集上的错误率。在本例中,它是 15%。我们非正式地将它作为算法的偏差(bias)。
第二部分指的是算法在开发集(或测试集)上的表现比训练集上差多少。在本例中,开发集表现比训练集差 1%。我们非正式地将它作为算法的方差(variance)。
在统计学领域有着更多关于偏差和方差的正式定义,但不必担心。粗略地说,偏差指的是算法在大型训练集上的错误率;方差指的是算法在测试集上的表现低于训练集的程度。当你使用均方误差(MSE)作为误差度量指标时,你可以写下偏差和方差对应的两个公式,并且证明总误差=偏差+方差。但在处理机器学习问题时,此处给出的偏差和方差的非正式定义已经足够。
一些学习算法的改变能解决误差来源的第一个部分——偏差,并且提高算法在训练集上的性能;而一些改变能解决第二个部分——方差,并帮助算法从训练集到开发/测试集上更好地泛化。为了选择最有成效的改变,了解二者哪一方更需解决是很有用的。
还有一些方法能够对系统架构做出较大改变,同时减少偏差和方差。但是这些方法往往难以鉴定和实现。
一个“理想的”分类器(比如人类)在这个任务中可能取得近乎完美的表现。
假设你的算法表现如下:
训练错误率 = 1%
开发错误率 = 11%
存在什么问题呢?根据前一章的定义,我们估计偏差为 1%,方差为 10%(=11%-1%)。因此,它有一个很高的方差(high variance)。虽然分类器训练误差非常低,但是没能成功泛化到开发集上。这也被叫做过拟合(overfitting)。
现在,考虑如下情况:
训练错误率 = 15%
开发错误率 = 16%
我们估计偏差为 15%,方差为 1%。该分类器的错误率为 15%,没有很好地拟合训练集,但它在开发集上的误差不比在训练集误差高多少。因此,该分类器具有较高的偏差(high bias),但是较低的方差。我们称该算法是欠拟合(underfitting)的。
现在,考虑如下情况:
训练错误率 = 15%
开发错误率 = 30%
我们估计偏差为 15%,方差为 15%。该分类器有高偏差和高方差(high bias and high variance):它在训练集上表现得很差,因此有较高的偏差,而它在开发集上表现更差,因此具有较高的方差。由于分类器同时过拟合和欠拟合,所以过拟合/欠拟合术语很难应用与此。
最后,考虑如下情况:
训练错误率 = 0.5%
开发错误率 = 1%
该分类器做的很好,它具有低偏差和低方差。
在我们猫识别的例子中,“理想”错误率——即一个“最优”分类器可达到的值——接近 0%。人类几乎总是可以识别出图片中的猫。因此,我们希望机器能够做得同样好。
换作其他问题这将更难:假设你正在构建一个语音识别系统,并发现 14% 的音频片段有太多的背景噪声,或者太难以理解,导致即使是人类也无法识别出所说的内容。在这种情况下,即使是“最优”的语音识别系统也可能有约为 14% 的误差。
假设在这个语音识别问题上,你的算法达到:
训练错误率 = 15%
开发错误率 = 30%
算法在训练集上的表现已经接近最优错误率 14%,因此在偏差上或者说在训练集表现上没有太大的提升空间。然而,算法没有很好地泛化到开发集上,在方差造成的误差上还有很大的提升空间。
如果最优错误率接近 0%,那么 15% 的训练错误率则留下了很大的提升空间,这表明降低偏差可能有益。但如果最优错误率是 14%,那么 15% 的训练错误率表现告诉我们,在分类器的偏差方面几乎没有改进的余地。
对于最佳错误率远超过零的问题,有一个对算法误差更详细的分解。继续使用上面我们语音识别的例子,可以将总的 30% 的开发集误差分解如下(类似的分析可以应用于测试集误差):
最优错误率(“不可避免偏差”):14%。假设我们决定,即使是世界上最好的语音系统,仍会有 14% 的误差。我们可以将其认为是学习算法的偏差“不可避免”的部分。
可避免偏差:1%。即训练错误率和最优误差率之间的差值。
方差:15%。即开发错误和训练错误之间的差值。
如果可避免偏差值是负的,即你在训练集上的表现比最优错误率要好。这意味着你正在过拟合训练集,并且算法已经过度记忆(over-memorized)训练集。你应该专注于减少方差的方法,而不是进一步减少偏差的方法。
为了将这与我们之前的定义联系起来,偏差和可避免偏差关系如下:
偏差 = 最佳误差率(“不可避免偏差”)+ 可避免的偏差
使用这些定义是为了更好地传达关于如何改进学习算法的理解。这些定义与统计学家定义偏差和方差不同。从技术角度上说,这里定义的“偏差”应该叫做“我们认为是偏差的误差”;另外“可避免偏差”应该叫做“我们认为学习算法的偏差超过最优错误率的误差”。
这个“可避免偏差”反映了算法在训练集上的表现比“最优分类器”差多少。
方差的概念和之前保持一致。理论上来说,我们可以通过训练一个大规模训练集将方差减少到接近零。因此只要拥有足够大的数据集,所有的方差都是可以“避免的”,所以不存在所谓的“不可避免方差”。
再考虑一个例子,该例子中最优错误率是 14%,我们有:
训练误差 = 15%
开发误差 = 16%
我们称之为高偏差分类器,现在可避免偏差的误差是 1%,方差误差约为 1%。因此,算法已经做的很好了,几乎没有提升的空间。它只比最佳错误率差 2%。
从这些例子中我们可以看出,了解最优错误率有利于指导我们的后续步骤。在统计学上,最优错误率也被称为贝叶斯错误率(Bayes error rate),或贝叶斯率。
如何才能知道最优错误率是多少呢?对于人类擅长的任务,例如识别图片或转录音频剪辑,你可以让普通人提供标签,然后测量这些人为标签相对于训练集标签的精度,这将给出最优错误率的估计。如果你正在解决甚至人也很难解决的问题(例如预测推荐什么电影,或向用户展示什么广告),这将很难去估计最优错误率。
分享到:
相关推荐
《Machine Learning Yearning》也讨论了偏差和方差这两个机器学习中重要的概念。偏差和方差是构成模型误差的两大主要来源,理解它们对于提升模型性能至关重要。吴恩达还解释了如何通过比较到人类水平的性能来诊断...
DML 通过正交化技术解决了传统机器学习在因果推断中的偏差问题,使得研究者能够在控制混淆变量的同时,准确地估计出核心参数。 本数据以一个双重机器学习的案例展开,展示了双重机器学习的使用方法。
在实际应用中,偏差/方差理论是机器学习实践中的一个重要概念。偏差指的是模型对训练数据集的预测能力,而方差则涉及到模型对新数据的泛化能力。理想情况下,应平衡偏差和方差以获得最佳的学习模型。 课程还强调了...
CV(计算机视觉)算法岗的知识点和面试问答可以涵盖多个方面,包括计算机视觉、机器学习、图像处理、编程语言和数据结构等。以下是对这些方面的简要概述和面试中可能出现的问题: 一、计算机视觉 知识点: 计算机...
从提供的文件中,我们可以提取出关于机器学习的多方面知识点。文件提到了机器学习的多个重要领域和主题,包括监督学习、无监督学习、线性代数、线性回归和相关的算法与模型。同时,还提到了机器学习在实际应用中的...
与常用的一些插补法处理缺失值相比,机器学习建立的预测模型适合任意缺失模式,对数据的分布类型要求较低,模型的拟合效果好,且稳健性好,偏差小。 本研究选择通过基线有氧适能和基线执行控制对后测执行控制的缺失...
- **全栈解决方案**:随着Spark的发展,除了基本的批处理和机器学习功能外,还增加了实时计算、流处理等功能,形成了一个完整的平台。 #### 三、Spark机器学习库MLlib详解 **MLlib的功能组成**: - **算法工具**:...
此外,课程还包括了偏差/方差理论以及硅谷在机器学习和人工智能创新过程中的最佳实践。 在监督学习中,根据是否使用标签数据将机器学习分为监督学习和无监督学习。监督学习是指学习系统在有标签数据的监督下进行...
- 医疗信息处理:利用机器学习提高疾病诊断和治疗的准确性。 - 音频数据处理:例如语音识别技术。 - 数据挖掘:发现数据中的模式和趋势。 5. 学习资源与支持 本课程的视频清晰,并配有PPT课件。黄海广同学作为中国...
机器学习是人工智能领域中非常重要的一部分,它涉及到数据挖掘、模式识别、自然语言处理等多个方面。下面是机器学习思维导图1中的一些重要知识点: 1. 机器学习类型: 机器学习可以分为两大类:监督学习...
- 机器学习最佳实践(Best Practices in Machine Learning):包括偏差/方差理论、模型选择、特征选择和交叉验证等内容,这些都是在实际应用机器学习解决问题时需要考虑的关键因素。 3. 实际应用案例研究: 课程...
机器学习的最佳实践部分强调了偏差/方差理论,这是评估学习算法性能的标准方法。在实践中,机器学习算法通常需要在模型复杂度和数据拟合度之间取得平衡,偏差和方差的概念就来源于这种平衡关系。高偏差可能导致模型...
深度学习是一种特殊的机器学习,通过模拟人脑神经网络的多层次结构,擅长于处理复杂特征和模式识别。 【算法对比】 9. KNN与k-means:KNN是监督学习算法,用于分类,依赖于最近邻的类别决定新样本的类别;k-means...
2. **三种学习原则**(Lecture 16 Three Learning Principles.pdf):这部分可能阐述了机器学习中的核心原则,比如归纳偏好、偏差-方差权衡以及经验风险最小化等,这些都是保证模型泛化能力的关键因素。 3. **学习...
课程还包括对偏差/方差理论的探讨,以及如何在机器学习和人工智能创新过程中运用相关知识。 本课程的特色在于使用大量案例研究来辅助教学,例如构建智能机器人、文本理解、计算机视觉、医疗信息分析、音频处理和...
- 机器学习的最佳实践:如偏差/方差理论、创新流程等。 - 案例研究:智能机器人、文本处理、计算机视觉、医疗信息等领域。 #### 二、监督学习 **参数与非参数算法:** - 参数模型:指模型中有固定的参数数量,如...
基于机器学习和基本面因子分析的量化投资策略 机器学习算法在量化投资中的应用越来越广泛,特别是在股票市场中。量化投资是基于数学模型和算法来进行投资决策的方法,它可以克服投资者主观判断偏差,提高投资收益。...
提供了关于如何在机器学习项目中做决定、评估假设、模型选择(使用验证集)、诊断偏差和方差问题、学习曲线分析以及如何设计机器学习系统和错误分析的建议。 12. 数据在机器学习中的重要性 强调了用于机器学习的...