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

简介: 【视频】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

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

image.png

数据清理


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

  1. 观测codebook去除无关的变量
  2. 选择去除50%以上失踪的变量(可以反复对比去除了不同变量后的模型)
  3. 对于剩下的变量去除含有NA的观测值
  4. visualize部分重要变量是否合理

image.png

观测数据


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

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

image.png

点击标题查阅往期内容


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


01

02

03

04


模型分析


Regularization - Lasso Model

image.png

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

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

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

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

image.png

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

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

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

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

image.png

模型分析


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

image.png

模型分析


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

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

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

image.png

总结


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

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

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

image.png

相关文章
|
25天前
|
机器学习/深度学习 数据采集 算法
量子机器学习入门:三种数据编码方法对比与应用
在量子机器学习中,数据编码方式决定了量子模型如何理解和处理信息。本文详解角度编码、振幅编码与基础编码三种方法,分析其原理、实现及适用场景,帮助读者选择最适合的编码策略,提升量子模型性能。
119 8
|
5月前
|
人工智能 自然语言处理 数据挖掘
云上玩转Qwen3系列之三:PAI-LangStudio x Hologres构建ChatBI数据分析Agent应用
PAI-LangStudio 和 Qwen3 构建基于 MCP 协议的 Hologres ChatBI 智能 Agent 应用,通过将 Agent、MCP Server 等技术和阿里最新的推理模型 Qwen3 编排在一个应用流中,为大模型提供了 MCP+OLAP 的智能数据分析能力,使用自然语言即可实现 OLAP 数据分析的查询效果,减少了幻觉。开发者可以基于该模板进行灵活扩展和二次开发,以满足特定场景的需求。
|
2月前
|
机器学习/深度学习 人工智能 自然语言处理
Java 大视界 -- Java 大数据机器学习模型在自然语言生成中的可控性研究与应用(229)
本文深入探讨Java大数据与机器学习在自然语言生成(NLG)中的可控性研究,分析当前生成模型面临的“失控”挑战,如数据噪声、标注偏差及黑盒模型信任问题,提出Java技术在数据清洗、异构框架融合与生态工具链中的关键作用。通过条件注入、强化学习与模型融合等策略,实现文本生成的精准控制,并结合网易新闻与蚂蚁集团的实战案例,展示Java在提升生成效率与合规性方面的卓越能力,为金融、法律等强监管领域提供技术参考。
|
2月前
|
机器学习/深度学习 算法 Java
Java 大视界 -- Java 大数据机器学习模型在生物信息学基因功能预测中的优化与应用(223)
本文探讨了Java大数据与机器学习模型在生物信息学中基因功能预测的优化与应用。通过高效的数据处理能力和智能算法,提升基因功能预测的准确性与效率,助力医学与农业发展。
|
2月前
|
机器学习/深度学习 搜索推荐 数据可视化
Java 大视界 -- Java 大数据机器学习模型在电商用户流失预测与留存策略制定中的应用(217)
本文探讨 Java 大数据与机器学习在电商用户流失预测与留存策略中的应用。通过构建高精度预测模型与动态分层策略,助力企业提前识别流失用户、精准触达,实现用户留存率与商业价值双提升,为电商应对用户流失提供技术新思路。
|
2月前
|
机器学习/深度学习 存储 分布式计算
Java 大视界 --Java 大数据机器学习模型在金融风险压力测试中的应用与验证(211)
本文探讨了Java大数据与机器学习模型在金融风险压力测试中的创新应用。通过多源数据采集、模型构建与优化,结合随机森林、LSTM等算法,实现信用风险动态评估、市场极端场景模拟与操作风险预警。案例分析展示了花旗银行与蚂蚁集团的智能风控实践,验证了技术在提升风险识别效率与降低金融风险损失方面的显著成效。
|
3月前
|
机器学习/深度学习 分布式计算 Java
Java 大视界 -- Java 大数据机器学习模型在遥感图像土地利用分类中的优化与应用(199)
本文探讨了Java大数据与机器学习模型在遥感图像土地利用分类中的优化与应用。面对传统方法效率低、精度差的问题,结合Hadoop、Spark与深度学习框架,实现了高效、精准的分类。通过实际案例展示了Java在数据处理、模型融合与参数调优中的强大能力,推动遥感图像分类迈向新高度。
|
3月前
|
机器学习/深度学习 存储 Java
Java 大视界 -- Java 大数据机器学习模型在游戏用户行为分析与游戏平衡优化中的应用(190)
本文探讨了Java大数据与机器学习模型在游戏用户行为分析及游戏平衡优化中的应用。通过数据采集、预处理与聚类分析,开发者可深入洞察玩家行为特征,构建个性化运营策略。同时,利用回归模型优化游戏数值与付费机制,提升游戏公平性与用户体验。
|
5月前
|
机器学习/深度学习 数据采集 人工智能
智能嗅探AJAX触发:机器学习在动态渲染中的创新应用
随着Web技术发展,动态加载数据的网站(如今日头条)对传统爬虫提出新挑战:初始HTML无完整数据、请求路径动态生成且易触发反爬策略。本文以爬取“AI”相关新闻为例,探讨了通过浏览器自动化、抓包分析和静态逆向接口等方法采集数据的局限性,并提出借助机器学习智能识别AJAX触发点的解决方案。通过特征提取与模型训练,爬虫可自动推测数据接口路径并高效采集。代码实现展示了如何模拟AJAX请求获取新闻标题、简介、作者和时间,并分类存储。未来,智能化将成为采集技术的发展趋势。
112 1
智能嗅探AJAX触发:机器学习在动态渲染中的创新应用
|
6月前
|
机器学习/深度学习 算法 数据挖掘
PyTabKit:比sklearn更强大的表格数据机器学习框架
PyTabKit是一个专为表格数据设计的新兴机器学习框架,集成了RealMLP等先进深度学习技术与优化的GBDT超参数配置。相比传统Scikit-Learn,PyTabKit通过元级调优的默认参数设置,在无需复杂超参调整的情况下,显著提升中大型数据集的性能表现。其简化API设计、高效训练速度和多模型集成能力,使其成为企业决策与竞赛建模的理想工具。
181 12
PyTabKit:比sklearn更强大的表格数据机器学习框架