全文链接:http://tecdat.cn/?p=31958
原文出处:拓端数据部落公众号
分析师:Yan Liu
我国有大量的资金都流入了房地产行业,同时与其余行业有着千头万绪的分割,能够说房地产行业对推动我国深化改革、经济倒退、工业化和城市化具备不可磨灭的作用。目前对于二手房交易价格的预测次要思考的是屋宇价格受宏观因素的影响,如国家政策、经济倒退程度、人口数量等,并据此揣测地区房价及其走势,很少有从宏观的角度来精确预测每间屋宇的价格。
解决方案
工作 / 指标
从区位特色、屋宇属性和交易指标 3 个角度,选取包含所属区域、建筑面积、楼层高度、周边银行数量、学校数量、电影院数量等在内的多维度特色,来预测二手房的挂牌价格,实现基于数据的科学决策,做到一房一价的精准预测。
数据 获取
(1)在链家网上,武汉市区域被划分为 15 个区,共 107 个街道,每个页面展现 30 条屋宇数据,通过翻页最多能够达到 100 页,即 3000 条数据。为了能尽可能保障抓取到链家上所有的数据,依据深度优先算法思维,采纳先遍历区域,再遍历街道的遍历思路来设计爬虫。
(2)周边配套设施,屋宇所在小区的经纬度数据能够从网页源代码中取得,其关键词为:resblockPosition。通过调用百度地图 API 能够取得上图所示的周边配套设施数量,涵盖了交通、教育、医疗、购物、生存、娱乐共 6 大类,19 个特色变量。
特色 预处理
(1)缺失值解决
通过对数据缺失值统计发现有 8 个变量存在缺失值:
别离应用剔除法、填充法来解决缺失值。houseStructure 共有四种类型:平层、复式、错层、跃层。思考到位于同一小区的屋宇,其屋宇类型大多雷同,故采纳此办法对缺失值进行填充:对于缺失 houseStructure 的屋宇 A,依据 community_id(所属小区 ID)统计出与 A 同小区的所有屋宇,再统计出这些屋宇的 houseStructure 的众数对 A 进行填充。buildingTypes、liftEquip 和 premisesOwnership 采纳和 houseStructure 同样的填充办法。propertyFee 数据的缺失抉择应用均值填充法。
分类变量的解决
对于散布极不平衡的分类变量予以剔除,对于其余分类变量做硬编码或独热编码解决
数值变量的解决
buildingTime:建成年代,数据格式均为年份(如:2018),解决办法为结构新的变量 YearsDelta,其值等于 2020 年与其差值。
通过三 σ 法令剔除异样值。周边配套设施蕴含了一公里内的地铁站数量、幼儿园数量、医院数量等 19 个数值变量,通过绘制散布直方图发现不少变量的散布存在偏态。
别离予以剔除或是将数值变量转换为二分类变量。
数据变换
通过绘制变量分布图,发现 totalBuildings、totalHouses、totalDeals 和 Yearsdelta 呈现出较为显著的右偏散布,而出现偏态散布的数据是不利于最终所构建模型的成果的,因而须要对这几个变量进行纠偏解决,采纳的办法为 Johnson 变换。
上述变量通过此办法解决前后散布比照图如下,显然,通过解决后的变量散布已近似于正态分布。
建模
别离建设 Linear Regression 模型、XGBoost 模型和 LightGBM 模型,通过比拟模型性能(评估指标应用 MSE、MAE、R square)优劣,选出成果最佳的预测模型。
XGBoost 和 LightGBM 模型的参数很多,参数取值不同,模型的性能也会有差异,因而须要对其主要参数进行调优,找出最佳参数组合。罕用的调参办法为 GridSearchCV(网络搜寻法)和 RandomizedSearchCV(随机搜寻法),采纳 GridSearchCV 进行参数调优。
XGBoost 模型调优后的参数:
LightGBM 模型调优后的参数:
模型性能比照*
房价预测问题是一个回归问题,属于监督学习领域。对于所失去的模型,其对未知数据的泛化能力间接决定了模型的性能优劣。因而为了比照不同模型对于未知数据的体现成果,采纳十折穿插验证进行模型验证。
三种模型的 10 折穿插验证在测试集性能评估:
三种模型在测试集上预测状况比照:
调参后的 XGBoost 模型和 LightGBM 模型训练出的各个特色的重要性打分排序比照:
能够看出,buildingArea 特色重要性得分最高,与小区状况无关的 5 个变量得分都排在前列;与屋宇属性相干的变量,如 houseFloor、houseDecoration 等,得分均位于中游,对房价的影响不大;属于屋宇周边设施的变量,如 subwayStation、park、stadium 等,得分广泛都很低,对房价影响很小。
从区位特色、屋宇属性和交易指标 3 个角度,从链家网上通过 Python 网络爬虫有针对性的获取武汉市二手房成交记录中的特色数据。对原始数据通过一系列预处理,使用机器学习中的 XGBoost 算法、LightGBM 算法和 GridSearchCV 算法,对解决后的数据进行建模与参数调优。将两种模型在测试集上的预测成果与训练好的 Linear Regression 模型进行比照,XGBoost 和 LightGBM 在预测成果上有着显著劣势。通过 XGBoost 和 LightGBM 模型学习后的特色重要性得分可知,在三类因素中,屋宇建筑面积对房价的影响最大,反映屋宇所属小区状况的变量重要性得分均排在前列,而其余屋宇本身属性、周边配套设施的变量对价格影响较小,与公众的直观感触根本吻合。
在此对 Yan Liu 对本文所作的奉献示意诚挚感激,他善于数据采集、机器学习、深度学习。
最受欢迎的见解
1.[](http://tecdat.cn/r%e8%af%ad%e8%a8%80%e7%bb%98%e5%88%b6%e7%94%…)R 语言多元 Logistic 逻辑回归 利用案例
2.[](http://tecdat.cn/r%e8%af%ad%e8%a8%80%e7%94%9f%e5%ad%98%e5%88%…)面板平滑转移回归 (PSTR) 剖析案例实现
3.[](http://tecdat.cn/r%e8%af%ad%e8%a8%80%e5%a6%82%e4%bd%95%e5%9c%…)matlab 中的偏最小二乘回归(PLSR)和主成分回归(PCR)
4.[](http://tecdat.cn/r%e8%af%ad%e8%a8%80%e4%b8%ad%e4%bd%bf%e7%94%…)R 语言泊松 Poisson 回归模型剖析案例
5.[](http://tecdat.cn/r%e8%af%ad%e8%a8%80%e7%94%9f%e5%ad%98%e5%88%…) R 语言混合效应逻辑回归 Logistic 模型剖析肺癌
6.[](http://tecdat.cn/r%e8%af%ad%e8%a8%80ggplot2%e8%af%af%e5%b7%ae…)r 语言中对 LASSO 回归,Ridge 岭回归和 Elastic Net 模型实现
7.[](http://tecdat.cn/r-%e8%af%ad%e8%a8%80%e7%bb%98%e5%88%b6%e5%8a…) R 语言逻辑回归、Naive Bayes 贝叶斯、决策树、随机森林算法预测心脏病
8.[](http://tecdat.cn/r%e8%af%ad%e8%a8%80%e5%a6%82%e4%bd%95%e6%89%…)python 用线性回归预测股票价格
9.[](http://tecdat.cn/r%e8%af%ad%e8%a8%80%e4%b8%ad%e7%9a%84%e7%94%…) R 语言用逻辑回归、决策树和随机森林对信贷数据集进行分类预测