【视频】R语言机器学习高维数据应用:Lasso回归和交叉验证预测房屋市场租金价格...

全文链接:http://tecdat.cn/?p=32646

分析师:Junjun Li

在这篇文章中,我们将着重探讨高维数据下的机器学习应用,以房屋市场租金价格预测为例

相关视频

在实际生活中,房屋租金作为一个重要的经济指标,被广泛应用于城市规划、财务投资等方面的决策中。然而,如何准确地预测房屋租金价格却一直是一个具有挑战性的问题。

本文将介绍如何使用Lasso回归和交叉验证方法来解决高维数据下的房屋市场租金价格预测问题,并详细阐述R语言在此过程中的应用技巧和实现方法。

背景

Goal: 利用主体物业和租户的各种特征来预测房屋市场租金价格

Data: 在Inter-University Consortium for Politicaland Social Research(ICPSR)数据库中找到的2007年美国住房调查(全国微观数据)有65,000个观测值和超过500个变量

Limitation: 某些特征的不可观测

有部分特征在超过80%的观测值中没有数据的,导致没有办法配合预测模型进行变量的筛选

Model used:

Regularization: 10.fold Lasso & AICc Lasso

适合于大量数据处理(高维度多变量)

outside_default.png

数据清理

使用R语言处理无法观测到的变量︰ 

  1. 观测codebook去除无关的变量

  2. 选择去除50%以上失踪的变量(可以反复对比去除了不同变量后的模型)

  3. 对于剩下的变量去除含有NA的观测值

  4. visualize部分重要变量是否合理

outside_default.png

观测数据

大多数租金集中在一千美元左右,其平均租金(由红线标示)为1025美元(直方图呈现出略微右偏的近似正态分布)。

观测一些关键特征的信息,这些特征有助于预测公平市场租金,包括卧室数量、楼层数量、地块面积和主体单位的平方英尺面积。

outside_default.png


点击标题查阅往期内容

outside_default.png

贝叶斯分位数回归、lasso和自适应lasso贝叶斯分位数回归分析免疫球蛋白、前列腺癌数据

outside_default.png

左右滑动查看更多

outside_default.png

01

outside_default.png

02

outside_default.png

03

outside_default.png

04

outside_default.png

模型分析

Regularization - Lasso Model

outside_default.png

使用K-Fold cross validation确定最佳的lamda值:

数据被分成K个相等的部分,除了第k个折叠之外的所有数据都用于训练模型,第k个折叠用于测试模型,记录离样本外的偏差。

重复此过程,以至每个折叠都有机会成为测试集。导致离样本外偏差最小的lamda是最优lamda值,在案例中我采用K-10:

最终计算最小deviance中的样本内R^2与通过10 Fold cross validation计算出的样本外R^2。

outside_default.png

左侧是套索正则化路径的绘图。我们可以看到随着lamda的增加,系数逐渐趋近于零。

右侧的图表显示了10Fold crossvalidation的离样本外偏差误差估计。最优lamda由最左边的垂直虚线表示。图表上的最低点实际上位于图表的最左侧,lamda的值最小。

与典型的图表不同,这个图表不是呈“u形。

在这种情况下,这意味着选择了最复杂的模型作为最优解。

outside_default.png

模型分析

右图的值表示非零系数及其值,取重要变量进行合理性分析: 卧室数量:每增加—个卧室,月租金价格天约增加143.51美元,其他变量和特征保持不变。这个值是合理的,因为2个卧室的单位的租金价格很可能大于1个卧室的单位的租金价格。楼层数的系数是负数:对于每增加个楼层的单位或物业,月租金价格将减少约10.55美元,其他变量和系数保持不变。这个负系数是合理的,因为楼层数较多的物业更有可能是紧凑型的。

outside_default.png

模型分析

与10-Fold cross validation相比,我还使用了一个计算上较为简便的替代方法是Akaike Information Criterion(AICc)。

在高维数据中,AICc倾向于产生过于复杂的模型,导致过拟合。然而,AICc得到的非零系数及其值与之前相同。

在右图中,我们展示了在我们的情况下,由AIC 、 AICc和10-Fold cross validation选择的最优lamda是相同的,即黑色、橙色和蓝色虚线重叠的部分.

outside_default.png

总结

在执行Lasso Regularization后,我们看到模型从数据集中选择了186个变量中的76个变量。但有一些重要变量地没有包含在模型中,例如主体物业的建造年份和浴室数量,因为其中缺失了大量的观测值。

因为数据缺失较多所以模型只能用作客观预测,不能很好的反应各个变量之间的相关性, 在数据清理方面,选择去除含50%及以上数据缺失的变量也是一个需要权衡的方向,因为这个门槛选择太低又可能导致数据少无法正确反应变量之间的关系作用,而门槛太高就会出现没办法选择到一些比较重要的变量。

此模型不具备自适应性,所以需要新数据的更新支持才能更好的保证其预测的准确性。

outside_default.png

关于分析师

outside_default.png

在此对Junjun Li对本文所作的贡献表示诚挚感谢,他在加州大学圣克鲁兹完成了应用经济与金融专业的硕士学位,专注机器学习、数理金融、应用(计量)经济学领域。擅长R语言、Python。 


outside_default.png

点击文末“阅读原文”

获取全文完整代码数据资料。

本文选自《【视频】R语言机器学习高维数据应用:Lasso回归和交叉验证预测房屋市场租金价格》。

点击标题查阅往期内容

R语言RSTAN MCMC:NUTS采样算法用LASSO 构建贝叶斯线性回归模型分析职业声望数据

R语言STAN贝叶斯线性回归模型分析气候变化影响北半球海冰范围和可视化检查模型收敛性

R语言贝叶斯MCMC:用rstan建立线性回归模型分析汽车数据和可视化诊断

R语言贝叶斯MCMC:GLM逻辑回归、Rstan线性回归、Metropolis Hastings与Gibbs采样算法实

R语言贝叶斯Poisson泊松-正态分布模型分析职业足球比赛进球数

R语言用Rcpp加速Metropolis-Hastings抽样估计贝叶斯逻辑回归模型的参数

R语言逻辑回归、Naive Bayes贝叶斯、决策树、随机森林算法预测心脏病

R语言中贝叶斯网络(BN)、动态贝叶斯网络、线性模型分析错颌畸形数据

R语言中的block Gibbs吉布斯采样贝叶斯多元线性回归

Python贝叶斯回归分析住房负担能力数据集

R语言实现贝叶斯分位数回归、lasso和自适应lasso贝叶斯分位数回归分析

Python用PyMC3实现贝叶斯线性回归模型

R语言用WinBUGS 软件对学术能力测验建立层次(分层)贝叶斯模型

R语言Gibbs抽样的贝叶斯简单线性回归仿真分析

R语言和STAN,JAGS:用RSTAN,RJAG建立贝叶斯多元线性回归预测选举数据

R语言基于copula的贝叶斯分层混合模型的诊断准确性研究

R语言贝叶斯线性回归和多元线性回归构建工资预测模型

R语言贝叶斯推断与MCMC:实现Metropolis-Hastings 采样算法示例

R语言stan进行基于贝叶斯推断的回归模型

R语言中RStan贝叶斯层次模型分析示例

R语言使用Metropolis-Hastings采样算法自适应贝叶斯估计与可视化

R语言随机搜索变量选择SSVS估计贝叶斯向量自回归(BVAR)模型

WinBUGS对多元随机波动率模型:贝叶斯估计与模型比较

R语言实现MCMC中的Metropolis–Hastings算法与吉布斯采样

R语言贝叶斯推断与MCMC:实现Metropolis-Hastings 采样算法示例

R语言使用Metropolis-Hastings采样算法自适应贝叶斯估计与可视化

视频:R语言中的Stan概率编程MCMC采样的贝叶斯模型

R语言MCMC:Metropolis-Hastings采样用于回归的贝叶斯估计

outside_default.png

outside_default.png

outside_default.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值