我正在建立一个简单的线性回归模型,用平方尺、床位数(S)和浴室数(S)来预测房价。
在建立模型后,我注意到平方尺和床位数(S)的系数是正的,这是有道理的,因为随着平方尺/床位数的增加,房价也增加了。然而,浴室的数量系数(S)是负的,这是没有意义的,因为住房价格并没有随着浴室数量的增加而下降(S)!
我的问题是:负系数是我可以通过将更多的数据纳入我的模型来“修正”的东西,还是这只是线性回归中的一个怪癖?
发布于 2019-01-29 17:09:40
这里可能发生的是多重共线性,在这里,你的一些预测因子是相关的。在这种情况下,有理由认为面积、床数和浴室数都是相互正相关的。如果你的主要目标是预测房价,这并不是什么大不了的事,但多元共线性的本质是,它使估算实际系数值变得“困难”,所以你对系数的解释就不能有那么大的权重。我怀疑使用更多的数据确实会减少发生这种情况的可能性。
发布于 2019-01-30 09:16:49
你可以做点什么,问题是你是否愿意。正如rzch提到的,如果你只关心预测的准确性,你可能想让你的系数取“不寻常的值”。这当然是你获得最低训练损失的方法(前提是你将自己限制在一个多线性模型上),但它可能不会给你最低的测试损失(你将不得不在交叉验证下检查这个)。
如果你想了解更多关于你的数据的“物理”,你可以考虑以下的,分阶段的方法。
1:对于每一个M特征,都要拟合一个线性模型(即使用这一个特征来最好地预测目标)。看看哪些功能给了您最低的测试损失,并选择这个作为您的“最佳”功能。
2:使用适合你的最佳特征的模型(根据第1阶段),计算你的训练残差(\hat{y}_{i}-y_{i}),对于剩余的每一个(M1)特征,拟合一个线性模型的残差。同样,选择给您带来最佳测试损失的特性。
3:继续这个过程,直到没有你可以适应的模型,这会使你的测试损失增加(或者测试损失的增加变得无关紧要)。
这使您可以提出以下解释:
您最重要的特性,第一个模型中使用的特性,很容易解释,系数的大小和大小告诉您它与目标变量的关系。
与第二个变量相关的系数的大小和符号告诉您,在考虑到第一个变量之后,该特性如何与目标相关。
至少在最初的几个特性中,这是很容易理解的,当然,当您有很多变量时,这就变得不那么容易处理了。
这一过程也可能比开箱即用的线性回归更加稳健。如果战斗过度拟合是你唯一关心的,像脊线/拉索回归方法是相当少的计算密集型。
发布于 2019-01-30 15:38:39
我认为这个问题可能是由你的预测因子和非线性依赖之间的相关性引起的。您可以尝试计算皮尔逊r线性相关指标,以检查每个预测房屋价格对。
如果是r \approx 1,这意味着house_pricing(预测器)实际上很有可能是线性的。预测因子的增加导致了房价的增长。如果r \approx -1的意思是完全一样的话,但是预测器的增长会导致房价下降。如果|r|低-略低于0.30.4,那么您的house_pricing(预测器)实际上不是一个线性函数。
我还会检查输入变量是否相互关联。我认为床和浴室的数量与平方画面相关。也许主成分分析( PCA )会帮助你获得更好(或更直观)的结果。或者,您的数据只是例外,获得更多的信息将使这一切变得清晰。
https://datascience.stackexchange.com/questions/44777
复制相似问题