通过偏方差权衡的镜头可以最好地理解有监督的机器学习算法。
在这篇文章中,您将发现 Bias-Variance 权衡,以及如何使用它来更好地理解机器学习算法并获得更好的数据表现。
让我们开始吧。
温和地介绍机器学习中的偏方差权衡 Matt Biddulph 的照片,保留一些权利。
在有监督的机器学习中,算法从训练数据中学习模型。
任何监督机器学习算法的目标是在给定输入数据(X)的情况下最佳地估计输出变量(Y)的映射函数(f)。映射函数通常称为目标函数,因为它是给定的监督机器学习算法旨在近似的函数。
任何机器学习算法的预测误差可分为三个部分:
- 偏差错误
- 方差错误
- 不可减少的错误
无论使用何种算法,都不能减少不可减少的误差。这是从选择的问题框架引入的错误,可能是由影响输入变量到输出变量的映射的未知变量等因素引起的。
在这篇文章中,我们将重点关注我们可以用我们的机器学习算法影响的两个部分。偏差误差和方差误差。
方便的机器学习算法思维导图的样本。
我已经创建了一个由类型组织的 60 多种算法的方便思维导图。
下载,打印并使用它。
偏差是模型所做的简化假设,使目标函数更容易学习。
通常,参数算法具有较高的偏差,使得它们学习起来快速且易于理解,但通常不太灵活。反过来,它们对复杂问题的预测表现较低,而这些复杂问题无法满足算法偏差的简化假设。
- 低偏差:建议对目标函数形式的假设较少。
- High-Bias :建议对目标函数形式的更多假设。
低偏差机器学习算法的示例包括:决策树,k-最近邻居和支持向量机。
高偏差机器学习算法的示例包括:线性回归,线性判别分析和逻辑回归。
方差是如果使用不同的训练数据,目标函数的估计将改变的量。
目标函数是通过机器学习算法从训练数据估计的,因此我们应该期望算法具有一些方差。理想情况下,它不应该从一个训练数据集到下一个训练数据集发生太大变化,这意味着该算法擅长选择输入和输出变量之间隐藏的底层映射。
具有高方差的机器学习算法受到训练数据的细节的强烈影响。这意味着训练的细节会影响用于表征映射函数的参数的数量和类型。
- 低方差:通过更改训练数据集,建议对目标函数估计的微小变化。
- 高方差:建议通过更改训练数据集对目标函数的估计进行大的更改。
通常,具有很大灵活性的非参数机器学习算法具有高方差。例如,决策树具有较高的方差,如果树木在使用前未被修剪,则该方差甚至更高。
低方差机器学习算法的示例包括:线性回归,线性判别分析和逻辑回归。
高方差机器学习算法的示例包括:决策树,k-最近邻居和支持向量机。
任何监督机器学习算法的目标是实现低偏差和低方差。反过来,该算法应该实现良好的预测表现。
您可以在上面的示例中看到一般趋势:
- 参数或线性机器学习算法通常具有高偏差但方差较小。
- 非参数或非线性机器学习算法通常具有低偏差但具有高方差。
机器学习算法的参数化通常是平衡偏差和方差的斗争。
以下是为特定算法配置偏方差权衡的两个示例:
- k-最近邻算法具有低偏差和高方差,但是可以通过增加 k 的值来改变折衷,这增加了有助于预测的邻居的数量,并且反过来增加了模型的偏差。
- 支持向量机算法具有低偏差和高方差,但是可以通过增加影响训练数据中允许的余量的违反次数的 C 参数来改变折衷,这增加了偏差但减小了方差。
没有逃避机器学习中的偏差和方差之间的关系。
- 增加偏差会减少差异。
- 增加方差将减少偏差。
在这两个问题和您选择的算法以及您选择配置它们的方式之间存在权衡取舍,在您的问题权衡中寻找不同的余额
实际上,我们无法计算实际偏差和方差误差项,因为我们不知道实际的基础目标函数。然而,作为一个框架,偏差和方差提供了理解机器学习算法在追求预测表现方面的行为的工具。
如果您希望了解有关偏差,方差和偏方差权衡的更多信息,本节列出了一些推荐资源。
在这篇文章中,您发现了机器学习算法的偏差,方差和偏方差权衡。
你现在知道:
- 偏差是模型所做的简化假设,使目标函数更容易近似。
- 方差是在给定不同训练数据的情况下目标函数的估计将改变的量。
- 权衡是偏差和方差引入的误差之间的紧张关系。
您对偏差,方差或偏方差权衡有任何疑问吗?发表评论并提出您的问题,我会尽力回答。