蘭瑞杰,孟維高,耿進(jìn)強(qiáng)
(河北地質(zhì)大學(xué) 城市地質(zhì)與工程學(xué)院,河北 石家莊 050031)
近年來房地產(chǎn)價格處于居高不下的狀態(tài),房價走勢問題成為了社會各界關(guān)注的熱點話題,而基于房價收入比、房地產(chǎn)產(chǎn)值在國民經(jīng)濟(jì)中所占比重等傳統(tǒng)指標(biāo)由于時效性較差,使房地產(chǎn)價格的波動趨勢較難預(yù)測,因此尋求一種時效性強(qiáng)的房價預(yù)測方法顯得尤為重要。在大數(shù)據(jù)時代,互聯(lián)網(wǎng)的快速發(fā)展、互聯(lián)網(wǎng)用戶偏好、媒體信息以及媒體效應(yīng)對房地產(chǎn)供求市場具有較大影響,網(wǎng)絡(luò)搜索逐漸成為民眾獲取信息的主流渠道。因此通過分析影響房地產(chǎn)的相關(guān)詞條搜索痕跡建立房地產(chǎn)價格預(yù)測模型,從而探求房地產(chǎn)價格的變化關(guān)系成為一種較新穎的預(yù)測方法。
關(guān)于房地產(chǎn)價格波動,由于購房者的視野較大程度上被互聯(lián)網(wǎng)的媒體信息所主導(dǎo),研究人員開始研究媒體效應(yīng)對房地產(chǎn)市場價格的影響。研究人員將媒體效應(yīng)指標(biāo)量化為購房者的網(wǎng)絡(luò)搜索行為[1-3],從數(shù)據(jù)中發(fā)現(xiàn)網(wǎng)絡(luò)搜索數(shù)據(jù)對房地產(chǎn)價格市場具有較高的相關(guān)性。將網(wǎng)絡(luò)搜索數(shù)據(jù)加入房地產(chǎn)價格的回歸預(yù)測模型中,結(jié)果表明網(wǎng)絡(luò)搜索數(shù)據(jù)可以提高預(yù)測模型精度。這說明了網(wǎng)絡(luò)搜索數(shù)據(jù)可以表征用戶的信息需求、行為偏好,也說明了網(wǎng)絡(luò)搜索數(shù)據(jù)具有較好的數(shù)據(jù)時效性,可以提高預(yù)測結(jié)果的準(zhǔn)確性。
在對房地產(chǎn)價格進(jìn)行預(yù)測時,研究人員從傳統(tǒng)計量模型到機(jī)器學(xué)習(xí)模型進(jìn)行了大量研究。文獻(xiàn)[4]采用灰色系統(tǒng)GM(1,1)模型對包頭市房地產(chǎn)每年的價格數(shù)據(jù)進(jìn)行房價預(yù)測,結(jié)果顯示模型精度高擬合效果較好,預(yù)測結(jié)果也表明未來幾年包頭市房地產(chǎn)價格趨于穩(wěn)定。傳統(tǒng)的灰色模型未考慮各影響因素對房地產(chǎn)價格的影響存在滯后性等缺點,文獻(xiàn)[5]通過構(gòu)建對房地產(chǎn)價格的向量自回歸(Vector Auto Regression,VAR)模型,將時間序列滯后特點引入模型,擬合效果較好。但VAR模型的預(yù)測能力較差,且灰色系統(tǒng)在進(jìn)行非線性數(shù)據(jù)預(yù)測時并不能表現(xiàn)出較好的適應(yīng)性。機(jī)器學(xué)習(xí)例如BP神經(jīng)網(wǎng)絡(luò)(Back Propagation Neural Network)與寬容的支持向量機(jī)(Support Vector Machine,SVM)能更好地適應(yīng)線性數(shù)據(jù)與非線性數(shù)據(jù)。文獻(xiàn)[6]采用了GM(1,1)與BP的組合神經(jīng)網(wǎng)絡(luò)模型,結(jié)果表明其對有波動性的數(shù)據(jù)類型有較好的預(yù)測精度,并增強(qiáng)了模型的自適應(yīng)性。文獻(xiàn)[7]將VAR-GM(1,1)-SVR這3種模型相結(jié)合建立綜合預(yù)測模型,將計量經(jīng)濟(jì)學(xué)的VAR模型和灰色預(yù)測模型作為模型輸入,結(jié)果表明該結(jié)合式的全新模型具有更好的預(yù)測精度。文獻(xiàn)[8]以百度指數(shù)為數(shù)據(jù)基礎(chǔ),采用多種傳統(tǒng)算法例如線性回歸、回歸樹以及隨機(jī)森林等對房地產(chǎn)價格指數(shù)進(jìn)行預(yù)測。該組合式的模型雖然對預(yù)測精度具有較大提升,但是這類機(jī)器學(xué)習(xí)模型在參數(shù)選取上有較大的不確定性,模型的泛化能力和穩(wěn)定性有待提升。文獻(xiàn)[9]和文獻(xiàn)[10]分別采用蝙蝠算法和粒子群算法對SVR的相關(guān)參數(shù)進(jìn)行優(yōu)化,提高了房價模型的預(yù)測精度。
通過梳理文獻(xiàn)可知,目前關(guān)于房地產(chǎn)價格的傳統(tǒng)研究數(shù)據(jù)主要來源于歷年統(tǒng)計年鑒和國家統(tǒng)計局,其數(shù)據(jù)的時效性較低,影響了預(yù)測結(jié)果的準(zhǔn)確性。運用網(wǎng)絡(luò)搜索數(shù)據(jù)建立與房地產(chǎn)價格市場的關(guān)系能夠減小數(shù)據(jù)本身對預(yù)測結(jié)果的影響,具有較好的可靠性和時效性。此外,在房價預(yù)測模型方面,研究人員大多采用計量經(jīng)濟(jì)模型(二維云預(yù)測模型[11]、VAR模型[12]、灰色系統(tǒng)GM和機(jī)器學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)[13]以及SVR[14])進(jìn)行房地產(chǎn)價格預(yù)測,但SVR模型在參數(shù)選取上仍存在一定的優(yōu)化空間。因此本文采用時效性較高的網(wǎng)絡(luò)搜索數(shù)據(jù)研究房地產(chǎn)價格,根據(jù)文獻(xiàn)[3、11、15]確定房地產(chǎn)價格網(wǎng)絡(luò)搜索的關(guān)鍵詞庫,采用麻雀搜索算法優(yōu)化的SVR作為房地產(chǎn)價格的預(yù)測模型,在選取房地產(chǎn)價格的解釋變量數(shù)據(jù)與算法模型選取方面均具有一定的創(chuàng)新性。
隨著深度學(xué)習(xí)、人工智能的快速發(fā)展,人工智能算法理論也在不斷更新。智能算法與神經(jīng)網(wǎng)絡(luò)和SVR結(jié)合可以優(yōu)化模型參數(shù),從而提高模型的預(yù)測精度和收斂速度。常見的模型優(yōu)化算法有粒子群算法[16]、遺傳算法[17]、鯨魚算法[18]以及網(wǎng)格算法[19]等。但是這些智能算法在尋優(yōu)性、全局最優(yōu)搜索能力和收斂能力方面均有一定的優(yōu)化空間?;诖?本文采用一種啟發(fā)于麻雀覓食和反捕食的麻雀搜索算法。該算法比較新穎,具有尋優(yōu)能力強(qiáng)、收斂速度快以及可尋找全局最優(yōu)的特點。利用麻雀搜索算法優(yōu)化調(diào)節(jié)SVR模型的懲罰參數(shù)C和參數(shù)g,但該方法在模型應(yīng)用上具有一定的創(chuàng)新性。
在覓食過程中,麻雀種群分為探索個體和跟隨個體。探索者負(fù)責(zé)尋找食物并確定食物位置和覓食方向,跟隨者通過獲取探索者共享的信息來進(jìn)行覓食。麻雀的覓食行為分為探索策略和跟隨策略。麻雀種群中的每只麻雀都可以獲得其他麻雀所采取的策略和行為。種群中的個體監(jiān)控種群中其他個體的行為,種群中的攻擊者與高攝入量的同伴競爭食物資源以提高捕食率。同時,麻雀也有預(yù)警機(jī)制,當(dāng)危險來臨時,麻雀會轉(zhuǎn)移到安全區(qū)域。高適應(yīng)度的探索者在種群搜索食物過程中處于高優(yōu)先級地位,即優(yōu)先獲取食物。探索者為整個麻雀種群提供食物,并且決定跟隨者的覓食方向,所以探索者的位置更新范圍大于追隨者的位置搜索范圍。
探索者的覓食位置更新計算式如下所示
(1)
式中,t為種群的迭代次數(shù)t∈1,2,…,itermax;j是優(yōu)化問題的維數(shù)j∈1,2,…,d;Q和a是隨機(jī)產(chǎn)生的隨機(jī)數(shù)且Q服從正態(tài)分布;L是1×d的全1矩陣;R2屬于0~1表示麻雀種群位置的預(yù)警值;ST屬于0.5~1.0,表示麻雀種群位置的安全值。當(dāng)預(yù)警值小于安全值時,代表種群處于安全搜索區(qū)域,捕食范圍較大;當(dāng)預(yù)警值大于或等于安全值時,代表種群接近危險區(qū),整個種群需轉(zhuǎn)移到其他區(qū)域覓食。
追隨者的位置更新計算式如下所示
(2)
式中,XP表示當(dāng)前探索者尋找到的最佳位置;Xworst是當(dāng)前種群覓食的最差位置;A是1×d的矩陣,其值為1或-1;i>n/2表明適應(yīng)度值較低的第i個跟隨者未獲得食物,處于緊急狀態(tài),此時追隨者需要去其他位置覓食。
當(dāng)危險來臨時,種群的危險預(yù)警機(jī)制更新計算式如下所示
(3)
式中,fi表示當(dāng)前麻雀適應(yīng)度值;fg表示全局最佳適應(yīng)度值;fw表示全局最差適應(yīng)度值;K是麻雀的移動方向,是控制移動步長的參數(shù)。當(dāng)fi=fg時表示種群發(fā)現(xiàn)了危險,需要靠近其他麻雀以減少被捕食風(fēng)險。當(dāng)fi>fg時,表示麻雀處于種群邊緣,容易被捕食。
支持向量機(jī)(SVM)是一種機(jī)器學(xué)習(xí)的建模方法,其理論基礎(chǔ)源自統(tǒng)計學(xué),SVM通過尋找結(jié)構(gòu)風(fēng)險最小值來提高模型的泛化能力,使經(jīng)驗風(fēng)險和置信區(qū)間最小化,從而達(dá)到使用較少的統(tǒng)計樣本獲得良好的統(tǒng)計規(guī)則的目的。
SVR模型是由SVM的分類問題演化而來,分類器模型輸出離散值,而回歸模型輸出連續(xù)值。SVM分類模型在引入不敏感參數(shù)ε后,得到支持向量的回歸模型即SVR。SVR模型具有良好的非線性預(yù)測能力,適合小樣本數(shù)據(jù)學(xué)習(xí)。SVR是預(yù)測模型的研究熱點,尤其在機(jī)器學(xué)習(xí)、智能算法的推進(jìn)下,SVR模型得到了不斷優(yōu)化[20]。基本原理如下:
給定樣本容量為N的n維訓(xùn)練數(shù)據(jù)集,當(dāng)輸入變量與輸出變量呈非線性關(guān)系時,函數(shù)形式如下所示
f(x)=ωTφ(x)+a
(4)
式中,a是回歸函數(shù)的截距項;ω為回歸系數(shù);φ(x)是一種非線性的核函數(shù)。該函數(shù)能夠?qū)⒌途S非線性的數(shù)據(jù)直接映射到一個高維空間,可以將非線性運算轉(zhuǎn)換為線性運算。支持的向量回歸實質(zhì)就是通過尋找回歸函數(shù)f(x),使全部的訓(xùn)練數(shù)據(jù)相應(yīng)函數(shù)值和目標(biāo)偏差都不能超過不敏感參數(shù)ε,其目標(biāo)函數(shù)和約束計算式如下所示。
(5)
(6)
(7)
(8)
將式(8)一階偏導(dǎo)為0求出的結(jié)果帶入式(6),并引入符合Mercer條件的有效核函數(shù)K得到目標(biāo)函數(shù)的對偶問題形式,如下所示
(9)
(10)
得到回歸模型的計算式如下所示。
(11)
核函數(shù)可以通過非線性變換將原空間內(nèi)積映射到高維特征空間。在本文模型中,核函數(shù)選用RBF核函數(shù)即高斯徑向核函數(shù)
(12)
其中,xi為核函數(shù)中心;σ為函數(shù)的寬度參數(shù),控制函數(shù)的徑向作用范圍。
通過麻雀搜索算法對SVR的參數(shù)C和g進(jìn)行優(yōu)化,建立天津市新房價格指數(shù)預(yù)測模型。SSA-SVR天津市房價預(yù)測模型如下:
步驟1對輸入數(shù)據(jù)和輸出數(shù)據(jù)進(jìn)行歸一化化處理。將房價指數(shù)關(guān)鍵詞的搜索指數(shù)作為模型的輸入變量,在篩選影響因素時與房地產(chǎn)價格進(jìn)行簡單的皮爾遜相關(guān)系數(shù)檢驗,選取與房地產(chǎn)價格指數(shù)相關(guān)系數(shù)大于0.7的關(guān)鍵詞,最終確定房地產(chǎn)價格預(yù)測模型的輸入變量,有利于提升預(yù)測精度。歸一化計算式如下所示。
(13)
步驟2設(shè)置相關(guān)參數(shù)。初始化麻雀搜索的種群個數(shù)、進(jìn)化代數(shù)、K折交叉,根據(jù)種群中探索者和跟隨者的比例數(shù)量對SVR參數(shù)C、g的范圍進(jìn)行設(shè)置。
步驟3生成新的個體。按照式(2)~式(4)對探索者、跟隨者以及預(yù)警機(jī)制下麻雀進(jìn)行位置更新,不斷迭代生成新的解,并記錄當(dāng)前探索者位置最優(yōu)解以及全局最優(yōu)解。
步驟4評估適應(yīng)度函數(shù),得到適應(yīng)度最佳的個體。SSA應(yīng)采取適當(dāng)措施以確保最佳的參數(shù)設(shè)置,從而提高模型的預(yù)測精度。在SSA算法優(yōu)化模型參數(shù)時,采用K折交叉驗證(K-CV)方法,K折交叉驗證可有效解決模型泛化能力差過度擬合的情況,選取預(yù)測模型的均方誤差作為適應(yīng)度函數(shù)。K折交叉驗證利用了無重復(fù)采樣的優(yōu)勢:每個個體在每次迭代中只有一次機(jī)會被包含在訓(xùn)練或測試集中。結(jié)合本文樣本容量大小,取k= 5。模型評價指標(biāo)均方誤差(Mean Square Error,MSE)如式(14)所示。
(14)
步驟5停止循環(huán)標(biāo)準(zhǔn)。有兩個停止標(biāo)準(zhǔn),一個是迭代次數(shù)達(dá)到設(shè)定標(biāo)準(zhǔn),另一個是模型誤差達(dá)到預(yù)期水平。當(dāng)?shù)鷿M足停止條件時輸出預(yù)測結(jié)果,否則重復(fù)步驟3和步驟4,直到迭代次數(shù)達(dá)到預(yù)設(shè)值。通過循環(huán)迭代得到最佳的適應(yīng)度函數(shù)值,獲取最佳的模型參數(shù)。再將麻雀搜索算法得到的最佳模型參數(shù)C和g運用到SVR模型中,將數(shù)據(jù)分為訓(xùn)練集和測試集進(jìn)而得到房價指數(shù)預(yù)測模型。
麻雀搜索算法優(yōu)化的SVR房價預(yù)測模型算法流程如圖1所示。
圖1 麻雀搜索算法優(yōu)化SVR流程Figure 1. Sparrow search algorithm optimization SVR flow
百度指數(shù)是以百度搜索為基礎(chǔ)的用戶行為為基礎(chǔ)的數(shù)據(jù)分析平臺,是目前的主要數(shù)據(jù)分析平臺之一。以通過分析影響房地產(chǎn)的相關(guān)詞條搜索痕跡為解釋變量建立房地產(chǎn)價格預(yù)測模型,數(shù)據(jù)來源為百度指數(shù)網(wǎng)上影響房地產(chǎn)價格的關(guān)鍵詞。采用Python工具選取與關(guān)鍵詞相關(guān)指標(biāo)數(shù)據(jù)2011年1月~2021年3月近20萬條日數(shù)據(jù),并匯總為月數(shù)據(jù)作為解釋變量。
房地產(chǎn)價格選取天津市新房價格指數(shù)作為被解釋變量,數(shù)據(jù)來源中國指數(shù)研究院數(shù)據(jù)庫,范圍為2011年1月~2021年3月的月數(shù)據(jù),樣本來源天津市所有包括商業(yè)用房、寫字樓以及居民住宅在售商品新房項目。在進(jìn)行訓(xùn)練集劃分時,為了避免模型出現(xiàn)過擬合現(xiàn)象,對2011年1月~2021年3月共計123個月的樣本數(shù)據(jù)進(jìn)行隨機(jī)取樣預(yù)處理,隨機(jī)選取其中36個月作為測試樣本,其余樣本作為模型的訓(xùn)練樣本。
房地產(chǎn)價格相關(guān)網(wǎng)絡(luò)搜索數(shù)據(jù)可以反映購房者潛在的相關(guān)需求,但并不是所有網(wǎng)絡(luò)搜索數(shù)據(jù)都與房價具有顯著關(guān)系。通過文獻(xiàn)和百度推薦得到的與天津市房地產(chǎn)有關(guān)搜索關(guān)鍵詞需要進(jìn)行一定的數(shù)據(jù)分析處理,才可作為天津房地產(chǎn)價格的被解釋變量。初始關(guān)鍵詞要盡可能覆蓋所有與房地產(chǎn)價格有關(guān)的關(guān)鍵詞,對關(guān)鍵詞與天津房價指數(shù)進(jìn)行相關(guān)性分析,剔除無效關(guān)鍵詞,得到與房價指數(shù)相關(guān)的關(guān)鍵詞,可以提高模型的預(yù)測能力。本文對網(wǎng)絡(luò)搜索數(shù)據(jù)確定和選取步驟如下:
步驟1首先確定網(wǎng)絡(luò)搜索數(shù)據(jù)的初始關(guān)鍵詞庫。本文采取百度相關(guān)推薦與文獻(xiàn)查閱方式,分別從供給、需求、替代、政策、金融以及財政等方面選取與天津市房價市場有關(guān)的55個初始關(guān)鍵詞,如表1所示。
表1 初始關(guān)鍵詞庫
步驟2采用R語言作為數(shù)據(jù)分析工具,對所有解釋變量與被解釋變量進(jìn)行相關(guān)性分析,選取相關(guān)性大于0.7的解釋變量,剔除不顯著相關(guān)的解釋變量,提高預(yù)測模型的準(zhǔn)確度。剔除后解釋變量與被解釋變量的相關(guān)系數(shù)如圖2所示。
圖2 相關(guān)系數(shù)熱力矩陣Figure 2. Correlation coefficient thermal matrix
y為被解釋變量天津房地產(chǎn)價格指數(shù),x1~x9分別為:安居客、存款基準(zhǔn)利率、存款利率、房地產(chǎn)營業(yè)稅、房天下、鏈家、人才引進(jìn)、物價稅、天津房價指數(shù)滯后觀測量。
因為單一誤差指標(biāo)并不能完全體現(xiàn)預(yù)測模型的可靠性,為驗證和比較SSA-SVR模型與其他基準(zhǔn)模型的預(yù)測性能,本文采用相關(guān)系數(shù)r、均方根誤差(Root Mean Square Error, RMSE)、平均絕對誤差(Mean Absolute Error, MAE)和平均絕對百分比誤差(Mean Absolute Percentage Error, MAPE)等指標(biāo)對預(yù)測模型進(jìn)行評價。評價指標(biāo)的計算式如下所示。
(15)
(16)
(17)
(18)
(19)
圖3展示了在麻雀搜索算法過程中所有麻雀適應(yīng)度的平均值變化以及最佳適應(yīng)度變化曲線,適應(yīng)度曲線可以看出算法的收斂速度尋優(yōu)能力較好。且經(jīng)過麻雀搜索算法尋優(yōu)得到最佳參數(shù)C為348.59,g為0.24,即麻雀搜索算法訓(xùn)練所得的SVR最佳參數(shù)。
圖3 麻雀搜索算法適應(yīng)度迭代Figure 3. Fitness iteration graph of SSA
為進(jìn)一步研究本文模型的預(yù)測性能,將天津市新房價格指數(shù)作為被預(yù)測變量,隨機(jī)抽取36個樣本作為測試樣本,其余樣本作為測試樣本。模型所得測試樣本的預(yù)測結(jié)果如表2,測試集訓(xùn)練集與測試集誤差對比如圖4和圖5所示。
表2 SSA-SVR模型測試樣本預(yù)測結(jié)果
圖4 訓(xùn)練樣本真實值與預(yù)測值對比Figure 4. Comparison of actual and predicted values of training samples
圖5 測試樣本真實值與預(yù)測值對比Figure 5. Comparison between the actual value and the predicted value of the test sample
由表2可知,真實值與預(yù)測值誤差在5以內(nèi)的樣本有21個,誤差在3以內(nèi)的樣本有15個,誤差在1以內(nèi)的樣本有8個,誤差整體偏小,表明模型具有較好的預(yù)測性能。由圖4可以看出,兩個樣本的真實值和預(yù)測值幾乎都在同一個點上,說明該預(yù)測模型預(yù)測精確度較好。同時對比訓(xùn)練樣本和測試樣本兩個誤差分析,并未出現(xiàn)訓(xùn)練誤差遠(yuǎn)小于測試樣本誤差情況,說明模型的泛化能力較好,未出現(xiàn)過擬合現(xiàn)象。
圖5反映了SSA-SVR模型在基于網(wǎng)絡(luò)搜索數(shù)據(jù)為輸入的房價預(yù)測數(shù)據(jù)樣本區(qū)間具有較好的擬合效果,預(yù)測與實際值的誤差較小,說明麻雀搜索算法優(yōu)化SVR混合模型具有較好的預(yù)測性能。由圖5可以看出,模型在訓(xùn)練樣本和測試樣本均具有較好的擬合效果,平均絕對百分比誤差(MAPE)在訓(xùn)練樣本為0.25%,在測試樣本為0.33%,進(jìn)一步說明該模型具有較強(qiáng)的泛化能力。
為進(jìn)一步研究麻雀搜索算法是否優(yōu)化了模型的預(yù)測精度,將SSA-SVR與PSO-SVR、GA-SVR、WOA-SVR、GS-SVR和基準(zhǔn)SVR進(jìn)行模型對比。評價標(biāo)準(zhǔn)為相關(guān)系數(shù)r、均方根誤差(RMSE)、平均絕對誤差(MAE)、均方誤差(MSE)以及平均絕對誤差比(MAPE)。對比結(jié)果如表3所示。
表3 模型誤差分析
通過模型對比可以看出,利用智能算法對參數(shù)優(yōu)化對SVR模型的預(yù)測精度具有較大提升。通過不同智能算法之間的對比可以看出,麻雀搜索算法具有更好的全局尋優(yōu)能力,麻雀搜索優(yōu)化算法可以提高模型的預(yù)測準(zhǔn)確度,提升模型的預(yù)測能力。
機(jī)器學(xué)習(xí)模型在進(jìn)行房價預(yù)測時,若采用傳統(tǒng)經(jīng)濟(jì)指標(biāo)作為房價的影響因素數(shù)據(jù),數(shù)據(jù)滯后性問題會使預(yù)測精度降低。此外,模型參數(shù)的設(shè)定對預(yù)測模型的精度同樣具有較大影響。因此本文采用一種新型的智能算法麻雀搜索算法SSA優(yōu)化SVR模型相關(guān)參數(shù),并選取近20萬條網(wǎng)絡(luò)搜索數(shù)據(jù),將篩選得到的數(shù)據(jù)作為解釋變量進(jìn)行驗證。對比基準(zhǔn)模型與不同智能算法優(yōu)化模型的預(yù)測性能指標(biāo)例如均方誤差和平均百分比誤差的結(jié)果表明麻雀搜索算法優(yōu)化的SVR模型在房價預(yù)測精度與泛化能力上均具有較好的提升。