改进的XGBoost模型在短租房价格预测中的应用

阅读: 评论:0

第36卷第2期Vol.36No.2
2021年04月
Apr32021湖北工业大学学报
Journal of Hubei University of Technology
[文章编号]1003—4684(2021)02-0104-06
改进的XGBoost模型在短租房价格预测中的应用
郑列,穆新宇
(湖北工业大学理学院,湖北武汉430068)
[摘要]对短租房价格原始数据集进行缺失值和异常值处理,针对短租房价格的影响因素构建包括23个特征的特征体系,使用OLS回归和分位数回归对这些因素的影响程度和影响方向进行分析,最后挑选具有较强显著性的18个特征构建XGBoost模型,用于预测房源价格。建模过程中采用网格搜索法调参。拟合优度这一指标在使用XGBoost模型进行价格预测时可以达到0.60,而线性回归模型仅为0.8。因此,使
用XGBoost模型对短租房价格进行预测较优,将其与OIS回归和分位数回归相结合,既保留了传统统计模型的解释性,又提升了预测的精确度。
[关键词]在线短租房;OIS回归;分位数回归;XGBoost;
[中图分类号]F299.3[文献标识码]A
在线短租房得到了空前的发展,并催生了途家、
小猪、榛果民宿等知名短租平台[1]o从公开信息出发,建立在线短租房的价格预测模型,有助于在线短
租产业的发展。XGBoost.模型自提出以来备受关注,不仅众多学者对其展开深入研究与改进[23],而
且在工业界取得了不错的成果[45]。相较于传统统
计模型,XGBoost.无论在分类还是回归问题中均能
取得较好效果,但是其解释性相对较差,不利于实际
问题的具体分析。为解决这一弊端,本文在使用XGBoost.预测短租房价格时,考虑先使用传统统计
模型对问题做出较好的解释,再挑选表现较佳的变
量构建预测模型。该模型能够为新加入短租平台的
房源提供具有参考价值的定价范围,也能够帮助短
租平台监管房源价格的异常情况,并及时做出调整,
营造出公平合理的短租商业氛围。
1数据来源及预处理
1.1数据来源
本文的研究数据来源于阿里云天池大数据竞
赛[6],该数据是Airbnb公司于2019年4月17日公
开的北京地区房源数据集。Airbnb是全球知名的
民宿短租平台,其房源范围覆盖191个国家和地区,
以Airbnb平台的数据研究相关问题具有重要的参
考价值。目前,在线短租业务主要分布在一线和省
会城市,北京作为首都具有代表性,以其房源信息作
为研究对象相对合理。网格搜索法
原始数据集包含28452个样本和106个属性,每一个样本对应一个房源,而每一个属性代表房源的一个特征,不过该数据集并未指定哪一个属性作为研究目标,因此为相关问题的研究提供了更多的可能性。本文拟研究在线短租房的价格影响因素及其预测模型,故将price属性作为目标变量,其原始值为数值型,表示房源的价格,而将其它属性作为房源的固有特征,其中包括数值型、分类型和文本型,主要涉及房源基本情况、房主情况和房客评价等方面。
1.2数据预处理
在原始数据集中,存在缺失值和异常值,需要进行适当的数据清洗,对于缺失值一般采用样本填充法或属性删除法,如果某一属性的缺失值比例不大,那么会选择对有缺失值的样本进行填充,数值型数
据采用均值填充,分类型数据采用众数填充,文本型数据暂不填充,而如果某一属性的缺失值比例较大,那么会选择删除该属性对应的所有数值。对于异常值的处理一般采用样本删除法,异常值会对后续分析产生很大干扰,可以根据37原则进行识别,进而删除存在异常值的样本。本文数据预处理的最终样本量为23364,保留属性有82个。
2特征体系构建
在线短租房是一种新兴产业,其发展模式介于传统酒店与传统租房之间,所以在研究短租房价格
[收稿日期]2020—09—10
[基金项目]教育部人文社会科学研究规划基金项目(7YJA790098)
[第一作者]郑列(1963—),男,湖北英山人,湖北工业大学教授,研究方向为应用数学
[通信作者]穆新宇(996—),女,江苏丰县人,湖北工业大学硕士研究生,研究方向为数据挖掘
第36卷第2期郑列,等改进的XGBoost模型在短租房价格预测中的应用105
的影响因素时,既要借鉴对传统酒店价格的研究,又要考虑短租房自身的特点。
本文查阅多篇有关短租房价格的文献[79」,综合多个方面对短租房价格的影响因素构建了合理的特征体系。特征体系包括5个类别,分别为房源的基础设施、房源的基本属性、房主的基本情况、在线预定规则和房客的评论情况,共计23个变量,其详细的名称和含义见表1。
表1短租房价格及其影响因素的描述
变量类别变量名称变量含义目标变量price价格
bathrooms浴室数
房源的基础设施
bedrooms卧室数beds床数accommodates可容纳人数latitude纬度
longitude经度
is location exact是否精确定位
房源的基本属性opcration_days经营天数
propcrty_typc_is_apart房产是否为公寓
room_type_is_Entire是否为整租
neighbourhood_is_center是否在市区
host_listings_count拥有的房源总数
房主的基本情况
host_has_profilc_pic是否提供肖像照片
身份是否通过核实host identity verified
host_is_superhost是否为超赞房主minimum_nights最少入住天数instant_bookable是否随时预定
在线预定规则
has house rules是否有入住规定need_security_deposit是否需要押金
need cleaning fee是否需要清洁费nccd_cxtra_pcoplc_fcc额外加人是否加费用
房客的评论情况nu m bcr_of_rcvicws_ltm最近一年评论数review days评论天数
从表1可以看出,5类特征涵盖了房源、房主和房客三个方面的信息,考虑的影响因素比较全面,而且23个变量中有11个数值型变量,12个二分类型变量。二分类型变量主要通过短租平台的在线信息获取,体现了短租产业以互联网为重要媒介的特点。
3影响因素分析
在线短租房的价格会受很多因素的影响,为了清楚地了解各影响因素对价格的影响程度和方向,需要建立合适的模型进行分析,本文主要采用传统统计模型中的()LS回归与分位数回归,其中OLS 回归可以分析各因素对房源价格的综合影响情况,分位数回归可以分析各因素对不同价位房源的影响情况。
3.1OLS回归
OLS回归,即最小二乘回归,它会将误差的平方和最小化,以此确定目标变量与影响因素之间的最佳线性关系,是各个学科研究中普遍使用的标准统计模型,其模型表达式为
y,=+B1x,+e,(1)其中:y,被称作因变量;x,被称作自变量;仇,01是需要用最小二乘法确定的参数,也被称作回归系数;e被称作随机误差项。
使用()LS回归要求数据必须满足以下统计假设:①正态性,即对于固定的自变量值,因变量值成正
态分布;②独立性,即个体之间相互独立;③线性相关,即因变量和自变量之间是线性相关的;④同方差性,即因变量的方差不随自变量的水平不同而变化,也就是说因变量的方差是恒定的。
OLS回归因其思路简单、方便实现等特点,在各个学科广泛应用,不过它主要关注各影响因素与目标变量的条件均值之间的关系,没有充分考虑目标变量条件分布的整体性。云南天气十五天
3.2分位数回归
为了弥补()LS回归的局限性,18世纪中期Boscovich首次提出中位数回归,在此基础上,Roger
106
湖北工业大学学报2021 年第 2 期
Koenker  与 Gilbert. Bassett  在 1978 年提出更具一 般性的分位数回归,其模型表达式为
y  =
+P 1‘"x , +e ,
(2)其中,0<p  <1,表示数值小于第p 分位数的比例。
y 在特定值x ,下的第p 条件分位数为Q p )(y
x ,)=00p ) +01p )x ,,由此可知该模型要求误差项
的第p 分位数等于0[10]。分位数回归一般用来研究自变量与因变量的条 件分位数之间的关系,得到的模型可以用前者来估
计后者。它不是仅分析因变量的条件期望,而是比 较全面地解释因变量的条件分布。
表2
OLS 回归与分位数回归结果对比
变量OLS  回归分位数回归
g  = 0.]
7 = 0.25
7 = 0.5
7 = 0.75
7 =0.9
constant
2087.68
上海公务员报考时间2022282.32
—897.79
— 2465.39
— 4795.14
— 10320.0
bathrooms
282.80* *
2.36
1417**83.58**2761 1 * *502.14 * *
bedrooms
8484* *
29.30**
33.07* *
40.05* *
4 5.23* *
9517* *
beds — 2414* *— 2.08**
— 5.90* *— 8.79**
— 18.87* *—27.71* *
accommodates
5613* *22.03**4 0.15* *
55.92**67.06**
73.72* *
latitude 509.30* *
96.30**
86.69**
356.76 * *
574.1 7* *892.93* *
longitude —193.03* *— 34.06* *
— 54.87* *
00.07* *
— 154.91* *— 217.34* *is_ location, exact
一 3818 * *
—2.20
—3.26
—5.3 *
— 24.33* *— 5317* *
opcration_days
0.05**
0.0 * *
0.0 **
0.02**0.04 * *
0.06**
propcrty_typc_is_apart — 15.68**
—0.
—3.89
—5.06*
— 18.15* *
— 40.18* *
room_typc_is_ Entire 124.79 * *
133.24 * *37.8**1 3715* *
129.77* *7018* *
neighbourhood  is  center 16415* *
39.6 **52.5* *85.72**
14 1.23* *
24 9.88* *
host_listings_count
118* *
.37* *.53**
.35**
1.81 * *  5.04 * *host_has_profilc_pic
— 134.88*— 30.65**
— 33.05**
1 3518* *
— 217.88* *—186.31
host_i  C  ent  ity_ v erified 一 2811 * *
—5.32—2.6
— 2.90**
— 21.31 * *
—32.67*
host_is_supcrhost
15.38*
3.8 **
1 319* *
9.6**
16.36* *
1.08minimum _nights —3.55* *
—2.0 * *
—2.65**
— 2.64* *
— 2.56* *
— 4.71* *instant_ bookable
1616* *  5.00*
4.27
7.97**16.67* *
414has_housc_rulcs
—1 3.96**
4.76 *
— .05
—8.93**
— 21.10* *
— 55.91**
need _securty _depost 45.57 * *20.09**24.00* *29.70**31.71 * *82.54 * *
nccd_clcaning_fcc
— 20.14* *9.92**
2.05* *0.99**
915* *— 35.95* *nccd_cxtra_pcoplc_fcc
— 4819* *—22.53**
—27.63* *— 2614— 31.87
— 36.08* *nu  m  bcr_of_rcvicws_ltm
—3.59**— 015*
—0.5 *
— .8**
—2.8* *—3.35**rcvicw_days
—0.0**
0.0
—0.0
0.02**
—0.06* *
世博园是干什么的—0.18**
*表示在0.05水平下显著,* *表示在0.01水平下显著
由表2可见,所有因素在OLS 回归中均显著, 但在分位数回归中有个别因素不显著。通过这些结
果不仅可以分析每个因素对于房源价格的影响情 况,还可以针对不同价位的房源给出不同的解释。
从房源的基础设施来看,浴室数、卧室数、床数
和可容纳人数无论在OLS 回归中还是分位数回归 中均较为显著,并且在分位数回归中,分位数越大各
因素对价格的影响程度越大。浴室数、卧室数和可 容纳人数对价格的回归系数是正值,所以这些因素
和OLS 回归相比,分位数回归的使用条件更加 宽泛,所获得的信息量更多,能够捕捉到条件分布形
状对因变量的影响,可以全面地表现分布的情况,而 且回归系数的估计更加稳健。
3.3回归结果与分析
Python 是一门简洁易懂的编程语言,其中有专
门用于统计分析的封装库,对于统计分析非常方便,
通过输入相关数据可以对在线短租房的价格及其影
响因素做OLS 回归与分位数回归,其中所选分位数 依次为0.1、0.25、0.5、0.75和0.9,两种结果的对比
情况如表2 所示。
的值越大,房源的价格越高,而床数对价格的回归系
数是负值,说明房源的床数越多价格反而越低,这很
可能是房主为吸引对价格敏感的房客而采用的营销 策略,试图通过提供更多的入住机会来降低价格。
从房源的基本属性来看,是否精确定位和房产 是否为公寓在低分位数回归时没有通过显著性检
验,说明这两个特征对低价房源的价格并无显著影
响,不过在高分位数回归中随着分位数的增大对价 格的影响程度递增,且均为负向影响。其它因素在
第36卷第2期郑列,等改进的XGBoost模型在短租房价格预测中的应用107
OLS回归与分位数回归中均较为显著,且为正向影响,其中经营时间越长价格会越高,说明房主在经营经验的基础上可以打造出更有特、更可靠的房源,另外,房源是否为整租对中等价位房源的价格影响程度最大,而是否在市区对高价房源的影响程度最大。
从房主的基本情况来看,房主的身份是否通过验证在低分位数回归时没有通过显著性检验,说明它对低价房源的价格并无显著影响,因为低价房源的安全性要稍微低一些,房客不会过于关注房主的身份情况。房主拥有的房源数越多价格越高,说明此类房源的房主可能是从事短租产业的专业房主,可以给房客提供更好的服务。另外,超赞房主拥有和专业房主同样的经营优势,房源价格自然会较高。
从在线预定规则来看,是否有入住规则和是否可以随时预定对中等价格房源的影响较为明显,而是否需要清洁费则对中等价位房源的价格无明显影响。另外,需要押金的房源价格更高,说明此类房源的设施和服务应该较好,价格自然攀升,而额外加人需要另收费的房源价格较低,说明此类房源更倾向于按人数收费。房源的最少入住天数越多价格越低,说明房主倾向于将房源租给长期房客,可以减少服务和沟通成本。
从房客的评论情况来看,评论天数对于低价房源的价格影响不显著,最近一年的评论数对于房源价格的整体影响均比较显著。不过两者对于房源价格的影响都是负向的,当评论数和评论天数增加时房源价格会下降,评论数在一定程度上能够反映房源的预定量,说明房主倾向于采用薄利多销的经营方式。
4价格预测模型
房屋的价格预测有很多经典的预测模型,但是在线短租房与传统房屋在价格预测方面存在诸多不同,其中最主要的不同在于影响因素,模型的选择也会产生差异。随着机器学习技术的不断发展,目前倾向于选择新颖的模型来解决问题。
本文挑选出OLS回归和分位数回归中均有较强显著性的因素来构建价格预测模型,最终选取的是除is_location_exact、property,type_is_apart.A host_ident.it.y_verified-Jnst.ant_bookable和review_ days5个之外的18个因素,主要采用XGBoost.模型预测房源价格,并与线性回归模型的效果作比较,可以突出XGBoost.在未调参与调参后的预测精度,最后通过XGBoost.算法给出所有特征的重要性排序。4.1XGBoost模型
XGBoost.算法是对GBDT算法的改进。原始的GBDT只利用了一阶的导数信息,而XGBoost.则是对损失函数进行二阶泰勒展开,并在损失函数之外加入了正则项,可以针对整体计算最优解,用来衡量损
失函数的下降以及模型的复杂度,避免过拟合,提高了模型的求解效率。XGBoost.算法的基本原理如下。
假定(x,,y,),i—1是建模样本,y i()是第t轮迭代后模型的预测结果,九(x,)是第t个决策树的预测结果,则
y,s—yL+f(x,)()由于在第(轮迭代时t—1轮的预测结果固定,模型目标函数的设定仅需考虑预测函数f(x,),求解模型参数时最小化为如下目标函数:
S(>()—+Df t)+C⑷其中,
L()—£"y,,y,"—"+f(x,))(5)
i—
D(f)=Y丁+0.5A£o,2(6)式(4)—(6)中:L(0)是测度模型拟合程度的损失函数,Df t)是测度模型复杂程度的正则化项,C 是常数项;/(•)是测度样本预测准确性的损失函数;T是决策树叶子节点数,o是叶子节点对应的预测结果,Y和2是对应的调整系数。将损失函数泰勒展开至二次项,利用贪婪算法或其它算法可以求解模型的参数[11]。
XGBoost.能够获得青睐,取决于其优越性:1)支持二阶泰勒展开式,不仅能够增加精度,而且方便自定义损失函数;2)损失函数中添加正则项,能够控制模型的复杂度,防止发生过拟合现象,使训练出来的模型相对简洁;3)允许列抽样,既能够防止过拟合,又能够简化计算;4)支持并行计算,灵活性很强。
4.2模型建立与调参
本文使用Python语言实现XGBoost.算法。首先将预处理后的数据集23364个样本以7:3的比例随机划分为训练集和验证集,接着构建XGBoost.模型,然后使用网格搜索法对模型进行调参,最后根据评价指标选择较优的模型。
建模过程中的调参环节本质上是一个优化过程,可以使用随机搜索法、网格搜索法、遗传算法等。本文选择的网格搜索法需要给定参数的若干个值然后将各参数的可能值进行排列组合,并将各组参数用来训练模型,同时采用交叉验证的方式评估各种组合的表现,选取效果最好的组合作为最优参数。
XGBoost.算法建模时共有三类参数:常规参
108湖北工业大学学报2021年第2期
数、基础模型参数和学习任务参数[12:,本文研究过
程中对常规参数全部选择默认。由于研究目标最终
可以归结为一个回归问题,所以学习任务参数里的
objective参数需要设置为"reg:linear”,其他选择默
认即可,而基础模型参数是对模型效果影响较大的
部分,也是调参的重点。本文根据各参数在模型中
的重要性依次调节,结果见表3。
表3XGBoost建模调参结果
参数含义最优值
lcarning_ratc学习率0.1
n_estimators回归器的数量100
max_depth树的最大深度10
gamma 叶节点进一步划分所需的
最小损失减少量
0.5
min_child_wcight 生成一个子节点所需要
的最少样本权重和
1
subsamplc子样本占训练样本集的比例0.7 colsamplc bytrcc建立树时对特征随机采样的比例0.8 4.3模型评价
模型的好坏需要根据评价指标来评判,对于任何问题而言都没有最优的模型,但是可以在已有的模型中选择较优的那一个。在回归预测问题中有一些常用的评价指标,比如:平均绝对误差(MAE)、均方误差(MSE)和拟合优度(R),它们的计算公式分别如下:
MAE=丄空\f,—y,
n~=7
(7)
MSE=1空ff,—y,)2
n~=
(8)
R2=1空(f.—y.)2
i=1(9) S(—y,2
其中,f,表示预测值,y,表示真实值,7表示真实值的期望[13」。
本文为了清楚地表现XGBoost.模型的预测精度,与线性回归模型进行了对比,验证集上各指标对比结果(表4)。
表4各回归模型的预测精度对比
模型线性回归
XGBoost回归
未调参调参后
MAE值198.98166.72137.98
MSE值118801.7595492.29773/13.10
R2值0.380.500.60
由表4可知,利用线性回归模型对在线短租房的价格进行预测时精度较低,其R2值仅为0.38,而XGBoost模型在未调参时R2值可以达到0.50,通过网格搜索法调参可以达到0.60,而且MAE和MSE的值在XGBoost.模型中也明显下降,可见XGBoost.模型相较于线性回归模型来说,拟合效果得到了较大提升。图1展示了XGBoost.模型中各特征的重要性排序。
通过图1可以看出,在众多影响因素中,浴室数和是否在市区对房源的价格影响最大,是否为整租、可容纳人数和卧室数对房源的价格影响也比较大,可见房源的基础设施和基本属性对房源价格起着决定性作用。房东的基本情况、在线预订规则和房客的评价信息虽然对房源价格有影响,但不会构成主导因素,不过在拥有同等房源的情况下,房主提高这些软实力必然会取得较好的收益。
0.200
0.175
。0.150
0.125
0.100
0.075
0.050
0.025
O
O
q
山|...
2
d
u
u
o
l
d
S
E
r
4
s
o
r襄阳旅游景点
4
s
o
^
Q
d
青岛大珠山风景区图片n
s
ls
4
s
o
r
sp
o
q
s
rw
Qsno
ISE
SodoplA
七.
InoQS
PQQU
s
qa'a
I
E
n
E
u
一E
Q
Q
U
E Q
o
l
p
Q
Q
U
4
l
m
o
o
l
s
&JO£
4
s
二J
s
o
r
S
A
E
P
IU
O
E
-
IQ
d
o
Q
p
ru
'so
UOI
o
p
iu
m
S
E
O
O
lp
u
q
S
Q
4E
P
O
E
E
O
00E
IQ
AU
Q襄垣天气
O
IS-IPO
O
IPnoqr
&JO
-s
u
:
features
图1XGBoost模型中各特征的重要性排名
5结束语
本文通过OLS回归和分位数回归对短租房价格的影响因素展开研究,借鉴了传统的分析手段,解释性
比较好,接着使用相比于线性回归模型精确度更高、更优越的XGBoost.构建价格预测模型,当然还有其他机器学习算法值得探索。另外,在模型调参这个环节也有继续研究的必要。本文使用的网格搜索法比较费时,得到的是局部最优值,可以考虑使用其他优化算法进行调参,提高建模效率。
[参考文献]
[1」,陈雪均.国内共享住宿研究综述商业经济, 2020():49-53.
[2」宋玲玲,王时绘,杨超,等.改进的XGBoost在不平衡数据处理中的应用研究计算机科学,2020(6)98­
103.
[3」Wang C,D)cng C,Wang S.Imbalance-XGBoost:le­veraging weighted and focal losses for binary labcl-im-
balanccd classification with XGBoost[J」.Pattern Rec­
ognition Letters,2020():35-37.
[」黄卿,谢合亮.机器学习方法在股指期货预测中的应用

本文发布于:2023-09-03 18:57:52,感谢您对本站的认可!

本文链接:http://www.035400.com/whly/2/608998.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:模型   价格   房源
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2024-2030 Comsenz Inc.Powered by © 文化旅游网 滇ICP备2022007236号-403 联系QQ:1103060800网站地图