1 前言
二手車保值率估計是最近比較火的一個方向,也是大數(shù)據(jù)應(yīng)用比較成功的一個方向。
二手車保值率估計,顧名思義,就是結(jié)合二手車的具體使用情況,比如上牌時間、里程數(shù),外觀內(nèi)飾的磨損情況以及車輛的具體參數(shù)配置,如排量,級別等,對二手車的價值進行評估。在大數(shù)據(jù)之前,個人二手車交易、銀行抵押貸款等都有自己的二手車估值算法,如年限比率法、綜合分析法等。這些算法一方面考察的粒度較大,另一方面人的經(jīng)驗在其中作用相對較大,而每個人心中有桿秤,因此這些算法估值的誤差相對來說比較大。大數(shù)據(jù)卻沒有這種問題,如果擁有大量的交易數(shù)據(jù),那么通過匹配聚類的方式,基本上就能把某款車的價格定下來,首先不管這輛車的價格會是多少,起碼知道與我相同的車款已經(jīng)成交了上萬輛,它們的交易價格擺在那呢,隨大流就行。
下面是有關(guān)二手車估值的一些試驗性結(jié)果。
2 數(shù)據(jù)來源
從幾個比較大的二手車網(wǎng)站抓取了近10w條掛牌數(shù)據(jù),字段有:車款名、車型名、品牌名、城市、車主報價、新車報價、上牌時間、里程數(shù)、車主姓名、車主職業(yè)、過戶次數(shù)、顏色、年檢到期、交強險到期、商業(yè)險到期、是否降價、降價金額、服務(wù)費、廠商、級別、發(fā)動機、變數(shù)箱、車身結(jié)構(gòu)、長寬高、進氣形式、燃油類型、燃油標號、排放標準、驅(qū)動形式、全景天窗、真皮座椅、車載雷達、無鑰匙啟動、座椅加熱、倒車影像、GPS、胎壓監(jiān)測、檢測報告等48個字段。
3 數(shù)據(jù)預(yù)處理
3.1 缺失值檢測
| field_name | missing_cnt | missing_ratio |
|---|---|---|
| 降價金額 | 2980 | 0.3% |
| 燃油類型 | 174 | 0.2% |
| 排量 | 198 | 0.2% |
| 燃油標號 | 196 | 0.2% |
| 進氣形式 | 191 | 0.2% |
| 驅(qū)動方式 | 79636 | 91% |
| 商業(yè)險到期 | 3707 | 3.7% |
從上表可以看到有的字段缺失值比較少,有的缺失值比較多,先看一下缺失值缺失的原因。
- 商業(yè)險到期,查了一下,商業(yè)險是一個非強制性購買的保險,不像交強險必須強制購買,應(yīng)該是有的車主沒有購買商業(yè)險,考慮按照"已過期"對待;
- 驅(qū)動方式,驅(qū)動方式有全時四驅(qū)、分時四驅(qū)、前輪驅(qū)動、后輪驅(qū)動、適時四驅(qū)、待查以及缺失,考慮將缺失值按照“待查”對待。
由于數(shù)據(jù)量較大,在訓(xùn)練時可以對有缺失值的記錄直接扔掉,在預(yù)測時,如果預(yù)測對象包含缺失值,則可以補充缺失值。 - 排量,查了一下,所有沒有排量的車型均屬于電動車,本模型暫不考慮電動車的估值。
3.2 異常值檢測
異常值檢測的方法有很多種:基于局部異常因子的算法 LOF,基于矩陣分解的異常點檢查,基于距離的檢測,基于聚類的檢測,基于箱線圖的檢測。對于回歸問題,又可以通過模型的殘差值的大小檢測異常值,一般殘差值大的樣本對應(yīng)的特征值是異常值。本文即是通過殘差值的大小檢測異常值。
檢測出的異常值,一般有以下幾種處理方法:直接剔除、探究異常值出現(xiàn)的原因并結(jié)合業(yè)務(wù)確定是否保留、對異常值進行規(guī)約。
- 數(shù)據(jù)歸一
回歸問題的數(shù)據(jù),應(yīng)該不需要進行量綱上的歸一,對比了同一批數(shù)據(jù),歸一前和歸一后的結(jié)果一樣。就像線性回歸那樣,量綱上的不同可以通過變量前的系數(shù)進行反應(yīng)。比如某個變量的量綱是100,那么把它歸一到0-1,和不歸一,其對應(yīng)的系數(shù)就會差100倍。
4 二手車保值率估值模型
- 保值率。 由于沒有實際的交易數(shù)據(jù),故而采用 車主報價/新車報價 的比值作為保值率的值
- 采用GBRT模型對保值率進行回歸
- 目標函數(shù)的選擇
一般來說,目標函數(shù)選用LAD(Least absolute deviation)或者LS(Least squares). 我這里選擇的是LAD, 便于篩選重要特征。 - 服務(wù)費字段的使用:服務(wù)費與車主報價應(yīng)該是有一定的關(guān)系的。因此,采用兩階段模型方法進行建模。第一階段采用的特征中不包含服務(wù)費,在第二階段,由于已經(jīng)有了車主報價的一個估計,將該估計值對應(yīng)的服務(wù)費加入到特征中,在進行建模。
5 結(jié)果分析
5.1 方案1 過濾缺失值,目標函數(shù)LAD
模型誤差:訓(xùn)練集合測試集按照7:3劃分,訓(xùn)練集誤差為0.0352,測試集誤差為0.0388
特征重要性
上牌時間 0.112735651
新車報價 0.108792134
里程數(shù) 0.068376329
外觀內(nèi)飾檢測 0.034283287
年檢到期 0.028611269
排量 0.028043956
交強險到期 0.021585812
車款年份_2013款 0.009003335
brand_name_福特 0.008518271
brand_name_豐田 0.008317663
車款年份_2015款 0.008296052
5.1.1 誤差和異常值分析
下圖是截取的保值率誤差>20%的車輛信息,

從上表中可以看到,從三個最重要的特征(里程數(shù)、新車報價、上牌時間)上來看,造成保值率估計誤差大的一個主要因素是,車主對自己車源的報價過于不合理,比如車輛1,9,12,13,23,31,明顯可以看出高估了很多,當(dāng)然也存在部分車主低估自己車源的情況,如車輛4,8。結(jié)合保值率估值高誤差表中的數(shù)據(jù)以及對實際情況的理解,考慮將這些記錄按照異常值對待。
5.2 方案2 過濾缺失值,過濾異常值,目標函數(shù)LAD
模型誤差:訓(xùn)練集合測試集按照7:3劃分,訓(xùn)練集誤差為0.0342,測試集誤差為0.0384
特征重要性
新車報價 0.124242393
上牌時間 0.106741841
里程數(shù) 0.066697211
外觀內(nèi)飾檢測 0.033216939
排量 0.029956022
年檢到期 0.025192599
交強險到期 0.018959537
車款年份_2014款 0.011135565
brand_name_福特 0.01104375
brand_name_現(xiàn)代 0.009563938
可以依照此方法,多次對預(yù)測誤差進行分析,篩選出其中的異常記錄。
5.3 方案3 過濾缺失值,過濾異常值,加入服務(wù)費,目標函數(shù)LAD
模型誤差:訓(xùn)練集合測試集按照7:3劃分,訓(xùn)練集誤差為0.0334,測試集誤差為0.0384
6 小樣本問題
樣本數(shù)據(jù)是一個不斷積累的過程,在數(shù)據(jù)積累到一定的量之前,總會出現(xiàn)小樣本問題。比如豪車(如瑪莎拉蒂、法拉利),年份舊(如2005年車款)、年份新(如2017年車款)的車源少,車輛里程數(shù)過高或過低。對于這種情況,一般可以根據(jù)參數(shù)的重要性,將部分參數(shù)的取值劃分區(qū)間進而合并,比如對于品牌屬性,只保留車源信息最豐富的top20的品牌,其余的品牌統(tǒng)一歸為其他品牌。
結(jié)合所使用的數(shù)據(jù),僅對上牌時間、里程數(shù)、新車報價、車主報價、過戶次數(shù)進行小樣本分析,而豪華品牌、城市、年份等根據(jù)分布進行區(qū)間合并策略。上牌時間采用上牌的具體時間點與抓取數(shù)據(jù)的時間點之間的月份數(shù)表示。這里首先采用箱線圖的方法查看數(shù)據(jù)的基本分布情況,箱線圖的原理介紹見http://blog.csdn.net/shuaishuai3409/article/details/51428106

- 里程數(shù)
里程數(shù)比較搞怪,有的車的里程數(shù)都大于20w公里了,有的還不到100公里。對數(shù)據(jù)進行統(tǒng)計得知,里程數(shù)>16w公里的車輛數(shù)低于0.5%,不高于100公里的車輛數(shù)低于0.1%。這部分數(shù)據(jù)暫時不使用,個人理解是,二手車估值模型更多的是從統(tǒng)計的角度計算各個因素的重要性,如果可供參考的數(shù)據(jù)較少,缺少統(tǒng)計學(xué)意義,也影響模型的整體精度。加入這些數(shù)據(jù)對模型的的影響怎么樣,下文再通過數(shù)據(jù)說明。 - 新車報價和車主報價
車主報價與新車報價具有強相關(guān)性,只分析新車報價。對數(shù)據(jù)進行統(tǒng)計分析得知,有差不多94%的的車輛的新車報價低于37w.對與高于37w的數(shù)據(jù)暫時不使用。加入這些數(shù)據(jù)對模型的的影響怎么樣,下文再通過數(shù)據(jù)說明。 - 過戶次數(shù)
對過戶次數(shù)數(shù)據(jù)進行統(tǒng)計得知,99%的過戶次數(shù)<=3,只有不到1%的過戶次數(shù)有4,5,6,8,9,14次。依個人理解,選擇將這些數(shù)據(jù)刪除,畢竟過戶次數(shù)這么多,這車肯定有貓膩。這部分數(shù)據(jù)也可以認為是異常值。
下面是對小樣本數(shù)據(jù)的預(yù)測結(jié)果,可以看出,對小樣本的估值誤差遠高于總體平均誤差。
1.里程數(shù)
里程數(shù)>16w公里的車源對應(yīng)的平均保值率誤差為0.088,
里程數(shù)<=0.1w公里的車源對應(yīng)的平均保值率誤差為0.057,
2.新車報價
新車報價>37w的車源對應(yīng)的平均保值率誤差為0.073,
- 其他待分析項
因為時間關(guān)系,暫只分析到這一步。其他待分析項有:
1.根據(jù)車主職業(yè)、里程數(shù)、上牌時間挖掘那些車源進行調(diào)表了
2.根據(jù)特征重要性,將城市、品牌進行歸類,減少模型訓(xùn)練參數(shù)。根據(jù)我試驗的結(jié)果,品牌重要性遠高于城市。
3,考察服務(wù)費對不同網(wǎng)站車主報價的影響
4,