需要帮助了解自然对数转换实际上在做什么以及为什么线性回归需要特定的转换

机器算法验证 回归 线性的 对数
2022-04-04 14:14:33

我正在参加一个在线“人工智能入门”课程,我正在为此做一些天蓝色的机器学习实验室。本课程主要是关于如何应用 azure ML 解决方案,虽然有“ML 模块的基本数学”,但它没有对数学/统计进行任何形式的深入研究。但我想从基本的角度了解数学上正在发生的事情。(我已经对统计进行了介绍,到目前为止就是这样。)以下是一些我想了解更多的具体事情的详细信息,以及我的具体问题。

在“训练分类模型”实验室的某个特定点,有这样一段文字:“diabetes.csv 数据集中年龄列的分布是倾斜的,因为大多数患者都处于最年轻的年龄段。创建使用自然对数转换的此特征的版本可以帮助在年龄和其他特征之间创建更线性的关系,并提高预测糖尿病标签的能力。这种所谓的特征工程在机器学习数据准备中很常见。”

然后说明如何使用 Azure ML Studio 将自然对数操作应用于数据集中的年龄列: azure ml studio 中的自然对数变换

之后,数据包括原始/原始年龄数据和转换后的年龄数据:结果数据可视化

问题 1:这种转变实际上在做什么?我不是指细节的数学,但它在概念上做了什么?

问题 #2:下一个一般性问题是关于为什么需要进行转换。对此,我做了一些研究,发现了这篇文章(https://www.r-statistics.com/2013/05/log-transformations-for-skewed-and-wide-distributions-from-practical-data-science-带-r/) 描述了在一些场景中使用哪种类型的日志转换。以下是文章中的一段文字:“数据转换的需求可能取决于您计划使用的建模方法。例如,对于线性回归和逻辑回归,理想情况下,您希望确保输入变量和输出变量之间的关系近似为线性,输入变量的分布近似为正态分布,并且输出变量为常数方差(即,输出变量的方差与输入变量无关)。您可能需要转换一些输入变量以更好地满足这些假设。”

我不明白为什么所有这些都是必要的。我已经分解了我的问题:

例如,对于线性回归和逻辑回归,理想情况下您希望确保:输入变量和输出变量之间的关系是近似线性的——为什么?输入变量在分布上近似正态 - 为什么?输出变量是常数方差(即输出变量的方差与输入变量无关——为什么?

有人可以帮助提供这些原因的信息,或者向我指出有帮助的材料吗?

1个回答

这里有很多东西要分解。我不想这么说,但你课程中的一些建议是非常误导和错误的。

这种转变实际上在做什么?我不是指细节的数学,但它在概念上做了什么?

这里的数学很简单。您有一堆人们年龄的测量值,您想将其用作预测其他测量值的特征(看起来像是发生某事的概率)。您只是在创建一个特征,它是原始特征的对数。我将在下面解释您为什么要这样做。

例如,对于线性回归和逻辑回归,理想情况下您希望确保:输入变量和输出变量之间的关系是近似线性的——为什么?

这是线性和逻辑回归模型的结构假设。我将专注于线性回归,因为它有点简单,但逻辑回归也是如此。

线性回归模型通过基于您输入算法的数据构建公式来进行预测。所有预测模型都以这种方式工作,但线性回归的特点是建立最简单的公式。如果y是你试图预测的事情,并且x1,x2,是你用来预测它的特征,那么线性回归公式是:

y=β0+β1x1+β2x2++βkxk

在这里,βi's 只是数字,算法的工作是确定哪些数字最有效。

请注意,如果您更改其中一个x的,看看输出如何y结果发生变化,你会得到一条线。这是线性回归模型工作方式的直接结果。如果你想让它给你合理的结果,那么你需要确保这个画线假设至少是近似正确的。

输入变量在分布上近似正态 - 为什么?

这是完全错误的。即使输入变量的分布非常不正常,线性回归也能正常工作。重要的是输入和输出之间的关系,而不是输入本身的分布。

这就是我所说的课程被误导的建议。转换输入变量,因为它们的分布是倾斜的,您转换它们以便模型试图通过您的数据绘制的线性形状是合理的

例如,这是我在网上找到的一个国家 GDP 与平均预期寿命的散点图(属性在图像中):

GDP与预期寿命

显然,通过散点图画一条线是完全不合理的,所以线性回归方程:

Life Expectancy=β0+β1GDP

对数据来说是一个糟糕的选择。另一方面,看起来对数关系合理的,所以类似于:

Life Expectancy=β0+β1log(GDP)

看起来它会工作得更好。在这种情况下,用对数转换 GDP 测量值是个好主意。但这与GDP的分配无关。你不能通过绘制 GDP 的直方图来判断这是一个好主意,它是关于GDP 和预期寿命之间的关系。

输出变量是常数方差(即输出变量的方差与输入变量无关——为什么?

这是一个性质不同的更深层次的问题。对于预测模型,这并不重要,所以如果你专注于学习建立良好的预测模型,暂时不要担心。

总而言之,这个假设旨在支持参数估计的抽样分布的计算。例如,如果你想说“我收集的数据中 log(GDP) 和预期寿命之间的关系大于我实际观察到的数据的概率,即使真的没有关系,也是非常的,非常小”,您需要能够计算参数估计的抽样分布。有多种假设可以做到这一点,而这种恒定方差假设就是其中之一。

也就是说,如果你只是想做出预测,这并不重要。并且在任何情况下都不会假定输入数据的分布是正常的,这只是一种误解。