通过在模型中添加相关的分类变量(例如:城市和社区)是否有任何收益?

机器算法验证 回归 机器学习 相关性 多重共线性
2022-04-10 00:13:13

这是一个非常简单的问题,我从未见过任何讨论。

为简单起见,假设我有一个线性回归,我想预测房价。我有一个包含城市和城市社区的数据集。我应该保留两者吗?这有关系吗?另一个类似的例子可能是:如果我要预测汽车的价格,并且我有汽车名称和品牌。

当我添加这两个功能时,我的模型会变得更好吗?我应该保留两者吗?如果没有,我该如何选择应该保留哪个功能?

2个回答

它的模型可能会变得更好,是的。

城市和社区是一个特别好的例子。安大略省的房屋价格差异很大。在多伦多,单户住宅的平均价格约为 100 万美元,而在我的家乡,这一数字只有一半左右。但是任何寻找过房屋的人都知道,城市内的价格会有所不同,而不仅仅是城市之间的差异,并且可以使用这种差异来获得更准确的估计。

这些类型的方法(城市中的社区,品牌中的模型)通常使用混合效应模型来处理。是居住在邻域的城市中的房子的价格。邻域示例的一种可能模型如下。yi,c,nicn

βcN(β0,σ)

βnN(β0+βc,σc)

yi,c,bN(β0+βc+βn,σn)

在这里,有一些人口水平的平均房价城市水平的平均房价变化约为(在这里,我们将城市之间的变化理想化为来自具有一定方差的正态分布)。邻里平均房价再次被理想化为在城市平均房价附近变化,而个人住宅则在这个平均值附近。β0β0σc2

简而言之,是的,保留这些变量可能很有用。它们是相关的(例如,仅当伦敦不是城市时肖尔迪奇不能出现),但它们可用于进一步解释更大类别内的变化。

大概这些街区是他们所在城市的独特之处,所以一旦你了解了街区,你就知道了这座城市。假设是这种情况,添加两个变量将导致模型过度参数化您应该使用邻域变量而不是城市变量。问题不仅在于邻里和城市是相关的,而且后者是前者的确定性函数