丁家益,周躍進
(安徽理工大學數學與大數據學院,安徽 淮南 232001)
房地產是國民經濟的重要組成部分,合理的房屋價格對經濟能夠起到推動作用。而房價的不合理上漲嚴重抑制了經濟發展,減少了資金流向實體經濟,對發展循環經濟是不利的。房屋的價格不僅對普通購房者很重要,而且對保險公司、房地產開發商、稅務評估師、銀行、抵押貸款機構和政策制定者也很重要[1]。因此,準確地對房屋進行定價是一項重要而艱巨的任務。一般來說,房屋只有不到8%的價格水平變化受到國家宏觀經濟的影響,而更多部分需要用房屋自身屬性因素來解釋[2]。房屋的自身屬性如房屋總面積、是否鄰近地鐵、房屋建筑年份、房屋所處樓層等直接影響房屋價格。
近年來,隨機森林、神經網絡等機器學習方法已發展成為房地產大規模評估技術。康嘉玲[3]利用隨機森林模型對二手房價格進行了有效的預測和研究。湯新程等[4]使用BP神經網絡對房屋價格進行了預測和研究。運用神經網絡模型進行預測可以提高預測結果的準確性,但不具備可解釋性[5]。
為了提高房屋定價的準確性,探究影響房屋價格的具體房屋屬性,本文分別運用隨機森林模型、神經網絡模型與享樂價格模型對合肥市二手房實際交易數據進行分析,比較了三種模型的性能。
決策樹學習的思想主要來源于Quinlan提出的ID3算法和C4.5算法[6]以及Breiman等人提出的CART算法。本文主要使用C4.5算法進行建模預測,其核心是以決策樹為基礎,在決策樹的各個節點上利用信息增益比實現特征選擇,遞歸式地構建決策樹。
先計算出數據集D的經驗熵:
(1)
其中,D為訓練集,|D|是樣本容量,Ck是特征的類別,|Ck|是對應特征的個數。經驗熵反映了數據集D的內部混亂程度,根節點的經驗熵最大,葉節點的經驗熵為0。
計算特征A對數據集D的經驗條件熵:
(2)
其中,Di是D的子集,|Di|是數據集Di的樣本個數,Dik是子集Di中屬于特征類別Ck的樣本的集合。
再計算特征A對數據集D的信息增益比:
(3)
最后,通過比較各特征的信息增益比,選擇信息增益比最大的特征作為最優特征。
隨機森林是一種經典的集成學習算法模型[7]。集成學習算法是使用一系列的弱學習器(基礎模型)進行學習,并將各弱學習器的結果進行整合,從而獲得比單個學習器更好的學習效果的一種機器學習算法[8]。隨機森林模型的弱學習器是決策樹模型,通過在原始數據集中隨機抽樣,生成n個不同的樣本數據集,構造n個不同的決策樹模型,最后根據這些決策樹模型得到的結果求平均值或投票來獲取最終結果[9]。圖1展示了隨機森林模型的具體構造過程。

圖1 隨機森林模型
通常,機器學習和深度學習應用于大型數據集,以識別難以通過回歸模型檢測到的隱性情況。本研究的房屋數據來源于鏈家網站,通過對數據的清洗,去除了不清晰、離群、缺失的數據。共刪除286個數據,其中包括165個房齡過老的離群數據、55個房屋特征屬性缺失的數據和66處房產被法院強制執行的法拍房數據。在數據清洗之后,本研究共使用了1 714個觀察數據。
為了評估模型對房屋定價的準確性和可靠性,將樣本數據集分成訓練數據集和測試數據集。在本研究中,隨機選取75%的數據作為訓練數據集,其余25%的數據作為測試數據集。訓練數據集用于習得一個模型,測試數據集用于測試模型的準確性和可靠性。為了處理這些數據,探索分析房價的具體分布情況,繪制房屋售價分布圖(圖2),使用高斯曲線進行擬合。由圖2可以看出,房屋售價主要分布在100萬至200萬之間。

圖2 房屋售價和售價頻數相關圖
房屋數值變量的數據匯總統計如表1所示。除常見的統計量外,表1還給出了頻率分布離散程度的標準化度量--變異系數。從表1可以看出,不同房屋之間的售價差別較大,房屋建筑年份的數據離散程度最小。

表1 數值變量的統計數據
房屋描述變量的數據匯總統計如表2所示,給出了描述變量的頻率和百分比。由表2可以看出,大部分房主都急于出售房屋,其中大部分房屋朝向為東,為精裝修,需繳納契稅,無須繳納營業稅,不鄰近地鐵。

表2 描述變量的統計數據
在表1和表2中,S表示房屋的總面積(包括公攤面積);R表示房屋的房間數;L表示衛生間個數;F表示房屋所處樓層;Y表示房屋建筑年份;N表示關注房屋的人數;T表示房屋在鏈家網的掛牌天數;U表示房主是否急于售賣房屋;O表示房屋朝向;T2表示契稅;T5表示營業稅;M表示是否鄰近地鐵;D表示房屋裝修情況;P表示房屋售賣價格。
數值變量的相關系數矩陣如圖3所示。取顯著性水平為0.05,由圖3可見,房屋售價與一些房屋屬性之間有很強的相關性,如房屋的售價與房屋的面積、房間數呈顯著正相關,而與房屋在鏈家網上掛價天數呈小幅度負相關。

圖3 相關系數矩陣圖
在機器學習中,描述變量數據通常不是連續型數據,而是標稱型數據。本文中的描述變量如房屋的朝向O的東、南、西、北屬性并不能直接使用[0,1,2,3]等數據來表示,可以采用獨熱編碼方式進行編碼。獨熱編碼是利用0和1來表示參數,使用N位狀態寄存器來對N種狀態進行編碼。例如“東”對應的是[1,0,0,0],“西”對應的是[0,1,0,0],由此處理非連續特征屬性。
為了評估這些模型的性能,本文采用平均絕對百分比誤差M和決定系數指標R2來評估機器學習模型和傳統定價模型在房屋定價研究中的性能表現。
(4)
(5)

平均絕對百分比誤差越小,決定系數越大,則定價精準度越高,定價模型的預測效果就越好。
本文實驗在Python語言環境下Scikit-learn的機器學習框架上進行,分別編寫隨機森林模型(RF)、神經網絡模型(NN)、享樂價格模型(HP)的相關程序代碼,并將其定價結果與實際售賣價格進行對比,如圖4所示,這些模型性能評估指標的計算結果如表3所示。

(a)RF模型

(b)NN模型

(c)HP模型圖4 RF、NN、HP模型定價結果和真實價格的比較情況

表3 RF、NN、HP模型的性能比較
由表3可知,機器學習模型的預測精度高于傳統享樂價格模型,其中RF模型的預測精度最高、R2最大、M最小。此外,由圖4看出,機器學習模型的擬合優度也好于傳統享樂價格模型,其中RF模型的表現最優。
選擇擬合程度最好的RF模型來探究影響房價的主要房屋屬性,對比訓練后的RF模型中各種房屋屬性重要度,如圖5所示。

圖5 房屋屬性重要度的對比
由圖5可知,影響房屋價格P的13個房屋屬性變量中重要度的前四位變量為房屋總面積、房屋建筑年份、房屋所處樓層、關注房屋的人數。房屋屬性變量中重要度的前四位變量對房屋價格的邊際效應如圖6所示。由圖6可以看出,居住面積對房屋價格有正的邊際效應,隨著居住面積的增加,房屋價格以不同速度上漲。高房價住宅的建筑年份往往集中于2010-2020年間。房屋價格先是隨著樓層的增加而增加,而后逐漸遞減。房屋的關注人數對房屋價格也有著正的邊際效應,隨著房屋關注人數的增加,房屋價格以非恒定速率上升。

(a)房屋總面積 (b)房屋建筑年份

(c)房屋所處樓層 (d)關注房屋的人數圖6 房屋屬性對房屋價格的邊際效應
本研究比較了隨機森林模型、神經網絡模型、享樂價格模型的房屋定價效果。數值結果表明,與傳統的享樂價格模型相比,機器學習模型的預測精度高,其中隨機森林模型的定價效果最好。經研究得出二手房售價與房屋屬性變量之間存在非線性關系,并對當地二手房售價差異給出了解釋。房屋的評估和定價預測可以為房屋交易提供有用的信息,機器學習模型在房屋定價評估方面有著廣泛的應用。