国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于Xgboost和LightGBM算法預(yù)測住房月租金的應(yīng)用分析

2019-09-13 06:34季孟忠黃益槐
計算機應(yīng)用與軟件 2019年9期
關(guān)鍵詞:租金房屋住房

謝 勇 項 薇 季孟忠 彭 俊 黃益槐

(寧波大學(xué)機械工程與力學(xué)學(xué)院 浙江 寧波 315211)

0 引 言

在我國,租房是居民獲取住房的主要方式之一。據(jù)《中國流動人口發(fā)展報告2017》顯示,全國流動人口總規(guī)模為2.45億人,流動人口在流入地的家庭規(guī)模為2.67人。另外根據(jù)中國指數(shù)研究院重點城市租金水平估算2017年全國戶均年租金為2.0萬元,據(jù)此測算流動人口帶來的住房租賃市場規(guī)模每年達(dá)1.2萬億元。住房租賃市場將在我國社會經(jīng)濟的發(fā)展中扮演重要角色,住房租金問題也一直是研究人員關(guān)注的焦點?,F(xiàn)有研究文獻(xiàn)主要集中關(guān)注住房租賃制度和租金影響因素。在住房租賃制度的相關(guān)研究中,劉洪玉[1]提出目前租房租賃行為不規(guī)范、市場化機構(gòu)出租缺位影響了住房租賃市場的健康發(fā)展。施繼元等[2]認(rèn)為住房租賃市場應(yīng)該致力于服務(wù)中低收入人群。黃燕芬[3]建議以“租購?fù)瑱?quán)”作為突破口,推進(jìn)“租售并舉”,促進(jìn)住房租賃市場健康發(fā)展。租金影響因素分為宏觀因素和微觀因素。宏觀因素進(jìn)一步細(xì)分為住房租賃市場供需、住房租賃市場制度、國家經(jīng)濟發(fā)展態(tài)勢以及國民經(jīng)濟收入水平四個方面,微觀因素研究則主要基于特征價格理論(Hedonic Price Model)[4]。該理論認(rèn)為價格是由商品所有特征帶給人們的效用決定的,具體對住房租金來說,影響租賃價格分為地段、房屋結(jié)構(gòu)以及社區(qū)環(huán)境三大類。文獻(xiàn)[5-8]從政策、住房價格、居民收入水平等經(jīng)濟發(fā)展指標(biāo)對租金的影響進(jìn)行研究并提出相應(yīng)的政策建議。文獻(xiàn)[9-12]基于特征價格理論得出住房配套設(shè)施、裝修情況等建筑特征是影響租金的關(guān)鍵。

綜上所述,現(xiàn)有研究大都集中在住房租賃制度和租金影響因素,尚未有租金預(yù)測方面的研究。互聯(lián)網(wǎng)和大數(shù)據(jù)的發(fā)展給住房租賃市場帶來了很大的沖擊,如今越來越多的人利用互聯(lián)網(wǎng)進(jìn)行租賃房屋,從某種程度上來說,互聯(lián)網(wǎng)已經(jīng)成為租房者和房東之間的橋梁。房屋租金通常由住房租賃市場供需等宏觀因素以及位置地段等房屋商品特征因素綜合決定,但是對于租房這個相對傳統(tǒng)的行業(yè)來說,信息嚴(yán)重不對稱一直存在。一方面,房東不了解租房的市場真實價格,只能忍痛空置高租金的房屋;另一方面,租客也找不到滿足自己需求高性價比房屋,造成了租房資源的極大浪費。本文著眼于租房租賃市場的痛點,利用真實的租房市場數(shù)據(jù),通過3種機器學(xué)習(xí)算法模型,建立住房月租金預(yù)測模型,在一定程度上給予租房者以及房東參考價值,同時挖掘出背后影響租金的關(guān)鍵因素。

1 相關(guān)方法

1.1 GBDT算法

(1)

① 對i=1,2,…,n,計算殘差rim,即在當(dāng)前模型下的損失函數(shù)的負(fù)梯度值:

(2)

② 根據(jù)rim擬合一個回歸樹,得到第m顆數(shù)的葉結(jié)點區(qū)域mj,j=1,2,…,。j表示葉子節(jié)點個數(shù)。

(3)

④ 更新回歸樹:其中I為指示函數(shù),當(dāng)回歸樹判定x∈mj時,其值為 1,否則為0。

(4)

(5)

1.2 Xgboost算法

Xgboost是華盛頓大學(xué)陳天奇于2016年開發(fā)的Boosting庫,兼具線性規(guī)模求解器和樹學(xué)習(xí)算法[14]。它是GBDT算法上的改進(jìn),更加高效。傳統(tǒng)的GBDT方法只利用了一階的導(dǎo)數(shù)信息,Xgboost則是對損失函數(shù)做了二階的泰勒展開,并在目標(biāo)函數(shù)之外加入了正則項,整體求最優(yōu)解,用于權(quán)衡目標(biāo)函數(shù)的下降和模型的復(fù)雜程度,避免過擬合,提高模型的求解效率,其步驟如下:

(1) 給定數(shù)據(jù)集D={(xi,yi):i=1,2,…,n,xi∈Rp,yi∈R},其中n為樣本個數(shù),每個樣本有P個特征。假設(shè)我們給定k(k=1,2,…,K)個回歸樹,xi表示第i個數(shù)據(jù)點的特征向量,fk是一個回歸樹,F(xiàn)是回歸樹的集合空間,模型可表示為:

(6)

(2) 目標(biāo)函數(shù)定義如下:

(7)

?

(8)

(4) 將式(8)的結(jié)果代入式(7)中,可得:

(9)

(5) 將目標(biāo)函數(shù)做二階泰勒展開,并且引入正則項:

(10)

1.3 Lightgbm算法

LightGBM是微軟2015年提出的新的boosting框架模型[15],該算法在傳統(tǒng)的GBDT基礎(chǔ)上引入了兩個新技術(shù):梯度單邊采樣技術(shù)和獨立特征合并技術(shù)。梯度單邊采樣技術(shù)(Gradient-based One-Side Sampling,GOSS)可以剔除很大一部分梯度很小的數(shù)據(jù),只使用剩余的數(shù)據(jù)來估計信息增益,從而避免低梯度長尾部分的影響。由于梯度大的數(shù)據(jù)對信息增益更加重要,所以GOSS技術(shù)在較傳統(tǒng)GBDT少很多的數(shù)據(jù)前提下仍然可以取得相當(dāng)準(zhǔn)確的估計值。獨立特征合并技術(shù)(Exclusive Feature Bundling,EFB)實現(xiàn)互斥特征的捆綁,以減少特征的數(shù)量。另外,傳統(tǒng)GBDT算法中,最耗時的步驟是利用Pre-Sorted的方式在排好序的特征值上枚舉所有可能的特征點,然后找到最優(yōu)劃分點,而LightGBM中使用histogram直方圖算法替換了傳統(tǒng)的Pre-Sorted以減少對內(nèi)存的消耗。

1.4 住房租金預(yù)測建模分析流程

本文建模過程如圖1所示,首先對住房租金數(shù)據(jù)進(jìn)行預(yù)處理,包括異常數(shù)據(jù)的刪除、缺失值數(shù)據(jù)的處理及數(shù)據(jù)集切分,然后使用python語言建立GBDT、Xgboost、LightGBM三種機器學(xué)習(xí)模型算法,采用網(wǎng)格搜索進(jìn)行參數(shù)自動尋優(yōu)。最后通過對比預(yù)測精度確定最優(yōu)預(yù)測模型。

圖1 建模過程

2 建模與實證分析

2.1 住房月租金數(shù)據(jù)描述及預(yù)處理

本文所采用的數(shù)據(jù)是由Data Castle住房月租金預(yù)測大數(shù)據(jù)競賽數(shù)據(jù)集,總共196 539個樣本。該數(shù)據(jù)集包括月租金以及房屋的基本信息,其中月租金為輸出標(biāo)簽值,房屋基本信息提煉成M0特征(房屋信息采集的時間、房屋所在的區(qū)級行政單位、房屋所在樓層、房屋朝向方位、小區(qū)所在的商圈位置、房屋面積、房屋所在建筑的總樓層數(shù)、小區(qū)房屋出租數(shù)量、臥室數(shù)量、廳的數(shù)量、衛(wèi)生間的數(shù)量)、M1特征(房屋裝修檔次、居住狀態(tài)、出租方式)、M2特征(房屋附近的地鐵線路、房屋附近的地鐵站點、房屋距離地鐵的距離)合計17個輸入特征。為便于排版依次從A至Q給這些特征編號。統(tǒng)計分析得知,月租金分布如圖2所示,租金變化范圍主要集中在0至40之間,原數(shù)據(jù)集所含特征、特征編號和缺失值比例表1所示。

圖2 月租金分布圖

表1 數(shù)據(jù)集所含特征、特征編號及缺失值比例

續(xù)表1

預(yù)測建模需要對數(shù)據(jù)進(jìn)行異常數(shù)據(jù)剔除和缺失數(shù)據(jù)處理,在196 539個初始樣本中,剔除月租金為0、距離為0及房屋面積為0的三個異常樣本,剩余196 536個樣本。缺失數(shù)據(jù)的處理按照缺失比例區(qū)別對待,對原數(shù)據(jù)缺失值較少的特征(區(qū)、位置、小區(qū)房屋出租數(shù)量)采用眾數(shù)填充法,而原數(shù)據(jù)中M1特征(裝修情況、居住狀態(tài)、出租方式)缺失值達(dá)到90%左右,M2特征(距離、地鐵線路、地鐵站點)都是關(guān)于周邊交通(地鐵)的特征,缺失值均為53.219%,對于缺失超過50%的數(shù)據(jù)一般的方法是刪除該特征。然而考慮到這些特征對于租金可能存在較大的影響,需要全面分析M1特征、M2特征對租金的影響。因此,把數(shù)據(jù)樣本是否含有M1特征、M2特征作為切分依據(jù),將原數(shù)據(jù)集切分成5個新的數(shù)據(jù)集:數(shù)據(jù)集①刪除M1、M2特征;數(shù)據(jù)集②保留M1、M2特征都缺失的數(shù)據(jù);數(shù)據(jù)集③保留M1特征缺失、M2特征不缺失的數(shù)據(jù);數(shù)據(jù)集④保留M1不缺失、M2缺失的數(shù)據(jù);數(shù)據(jù)集⑤保留M1、M2特征都不缺失的數(shù)據(jù)。這5個數(shù)據(jù)集納入的特征分類如表2所示,√表示該數(shù)據(jù)集納入該特征,×表示該數(shù)據(jù)集刪除該特征和清洗后的各數(shù)據(jù)集的樣本數(shù)。此外,為了評估模型的性能,對切分好的數(shù)據(jù)集分別隨機選取90%的數(shù)據(jù)為訓(xùn)練集,10%的數(shù)據(jù)為驗證集。

表2 數(shù)據(jù)集大小及所含特征

2.2 模型評價標(biāo)準(zhǔn)

實驗采用均方根誤差(Root Mean Square Error,RMSE)來度量預(yù)測模型的精確度,RMSE計算結(jié)果越小,預(yù)測越精準(zhǔn)。其中N為樣本個數(shù),Xobs,i為第i個樣本實際值,Xmodel,i為第i個樣本預(yù)測值。

(11)

2.3 計算過程與結(jié)果分析

住房月租金預(yù)測計算采用PC配置3.10 GHz的Intel Pentium G2120處理器,4 GB內(nèi)存64位Windows7操作系統(tǒng),使用python3.5編程語言進(jìn)行分析建模,建模過程中主要使用到的包和機器學(xué)習(xí)庫有pandas、numpy、matplotlib、seaborn、sklearn、Xgboost和LightGBM。

使用GBDT、LightGBM 和Xgboost模型建模分析時,參數(shù)的選擇對模型的預(yù)測結(jié)果有著較大的影響,故需要對若干參數(shù)進(jìn)行調(diào)優(yōu)。對于GBDT模型,本文主要對學(xué)習(xí)率、迭代次數(shù)、最大樹的深度以及最大葉子節(jié)點數(shù)這4個主要參數(shù)進(jìn)行調(diào)優(yōu);對于LightGBM模型,本文主要對學(xué)習(xí)率、迭代次數(shù)、葉節(jié)點數(shù)以及最大直方圖樹這4個主要參數(shù)進(jìn)行調(diào)優(yōu); 對于Xgboost模型,本文主要對學(xué)習(xí)率、迭代次數(shù)、最大樹的深度以及每個葉子節(jié)點樣本權(quán)重和這4個主要參數(shù)進(jìn)行調(diào)優(yōu)。使用網(wǎng)格搜索對上述模型參數(shù)進(jìn)行自動尋優(yōu),具體步驟如下:(1) 先確定學(xué)習(xí)率,把learning_rate設(shè)置成0.1,其他參數(shù)使用默認(rèn)參數(shù),使用GridSearchCV函數(shù)進(jìn)行網(wǎng)格搜索確定合適的迭代次數(shù);(2) 找到合適的迭代次數(shù)后使用GridSearchCV函數(shù)對模型的其他兩個主要參數(shù)進(jìn)行網(wǎng)格搜索自動尋優(yōu);(3) 減小(增大)學(xué)習(xí)率,同時增大(減小)迭代次數(shù),找到合適的學(xué)習(xí)率是使得在誤差最小時迭代次數(shù)最少。使用5折交叉驗證的方法來選擇參數(shù),即每次將訓(xùn)練數(shù)據(jù)集分成5份,輪流將4份用于訓(xùn)練集訓(xùn)練剩下1份用于測試集測試,每次試驗都會得到相應(yīng)的分?jǐn)?shù)(RMSE),最后將5次測試分?jǐn)?shù)的均值當(dāng)做最后的分?jǐn)?shù)(RMSE)。在確定參數(shù)后,即可對驗證集進(jìn)行預(yù)測,預(yù)測結(jié)果見表3、表4、表5所示。對于LightGBM 和Xgboost使用模型plot_importance內(nèi)置函數(shù)提取特征對于模型的重要度,GBDT使用模型內(nèi)置函數(shù)feature_importances提取特征對于模型的重要度,每個模型的特征重要度百分比如表6、表7、表8所示。通過特征重要度可以識別影響租金的關(guān)鍵特征。

表3 GBDT模型預(yù)測精度(RMSE)

表4 Xgboost模型預(yù)測精度(RMSE)

表5 LightGBM模型預(yù)測精度(RMSE)

表6 GBDT模型特征排序 %

表7 Xgboost模型特征排序 %

表8 LightGBM模型特征排序 %

根據(jù)表3、表4、表5綜合考慮各數(shù)據(jù)集的預(yù)測結(jié)果可得出以下結(jié)論:LightGBM和Xgboost優(yōu)于GBDT,而LightGBM和Xgboost互有優(yōu)劣。LightGBM在數(shù)據(jù)集③、數(shù)據(jù)集④、數(shù)據(jù)集⑤上優(yōu)于Xgboost。Xgboost在數(shù)據(jù)集①、數(shù)據(jù)集②上優(yōu)于LightGBM。LightGBM精度最優(yōu)可達(dá)1.608,Xgboost最優(yōu)精度為1.850 3,GBDT最優(yōu)精度僅為2.248 5。

從表6、表7、表8可以得出以下結(jié)論:

結(jié)合所有數(shù)據(jù)集的特征重要度排序,可以得出影響租金的關(guān)鍵因素是房屋面積(F)、小區(qū)所在商圈位置(E)、房屋距離地鐵的距離(Q)、房屋所在建筑的總樓層數(shù)(G)、小區(qū)房屋出租數(shù)量(H)。房屋面積越大,租金越高是肯定的,小區(qū)所在商圈位置、房屋距離地鐵的距離都代表了房屋附近的基礎(chǔ)設(shè)施情況,這些本質(zhì)上都屬于地段因素。這反映了租房就是租地段的現(xiàn)象。而房屋所在建筑的總樓層數(shù)、小區(qū)房屋出租數(shù)量則需要進(jìn)一步研究,可能是出租總量越多的小區(qū)通常居民成分復(fù)雜,會影響小區(qū)的舒適安全性。高層住宅通常配置電梯,年代較新,住宅狀況較好,自然影響租金。

M1特征不是影響租金的關(guān)鍵因素,M2特征是影響租金關(guān)鍵因素;在含有M1特征(房屋裝修檔次、居住狀態(tài)、出租方式)的數(shù)據(jù)集④和數(shù)據(jù)集⑤中,前5名都沒出現(xiàn)該特征,說明M1特征不是關(guān)鍵因素。在含有M2特征(距離、地鐵線路、地鐵站點)的數(shù)據(jù)集③和數(shù)據(jù)集⑤中,房屋距離地鐵的距離(Q)和房屋附近的地鐵站點(P)均位于前列,說明關(guān)于地鐵的M2特征是影響租金關(guān)鍵因素。

3 結(jié) 語

本文使用3種機器學(xué)習(xí)模型對住房月租金進(jìn)行預(yù)測, Xgboost和LightGBM作為機器學(xué)習(xí)近年提出的新

方法,和傳統(tǒng)GBDT相比較能達(dá)到較優(yōu)的預(yù)測精度,Xgboost最低均方根誤差可達(dá)到1.850 3,LightGBM最低均方根誤差可達(dá)到1.608。同時,經(jīng)過三個預(yù)測模型中特征重要度的排序,識別出影響租金最關(guān)鍵的特征是面積因素和地段因素。本文的不足之處在于Xgboost和LightGBM雖然能夠得到較好的預(yù)測精度,但是由于Xgboost和LightGBM都是基于啟發(fā)式算法,尋找的解為局部最優(yōu)并非全局最優(yōu)。另外,后續(xù)研究中也可以引入Filter、Wrapper等特征選擇方法,以進(jìn)一步提升預(yù)測精度。

猜你喜歡
租金房屋住房
城鎮(zhèn)居民住房分布對收入不平等的影響
租金320元!70斤iPhone官方自助維修包,里面有什么?
一種車載可折疊宿營住房
聚焦兩會!支持合理住房需求,未提房地產(chǎn)稅!
UMAMMA歷史房屋改造
大樹爺爺收租金
房屋
住宅租金收益率仍將下滑
轉(zhuǎn)租房屋,出現(xiàn)問題由誰負(fù)責(zé)?
住房保障實踐探索