王陸霖,劉 楊,彭 治,杜永萍,韓紅桂
(北京工業大學 信息學部,北京 100124)
電子產品的估價階段是電子產品回收過程的關鍵階段,能否合理高效并準確地估價會影響電子產品的回收效率和買賣雙方的交易意愿[1,2]。
目前對于電子產品的價值評估技術的研究大多通過人工設定各個屬性的權重,形成算法模型來進行產品價值的評估[3]。電子產品相較于其它產品,其價值波動較大,上述方法需耗費較多人力。因此,研究者們開始研究基于數據驅動的價值評估方法。Zhang等[4]和Yan等[5]使用遺傳算法對BP神經網絡進行優化,得到了較高的預測精度。Yu等[6]使用極限學習機構建預測模型,有效降低了數據噪音的影響。Han等[7]提出了一種混合構建神經網絡的方法,能夠適應價格變動。Wang等[8]引入奇異譜分析(SSA)并建立神經網絡來進行商品價值的評估。NTAKARIS等[9]使用深度神經網絡模型來進行價格預測,實現了特征的自動提取。Han等[10]使用模糊神經網絡進行廢舊手機的價值評估,提高了評估精度。Wang等[11]和Peng等[12]采用序列建模的思想,模型能夠隨時間自適應調整評估結果。
數據驅動的方法較為依賴歷史數據,而電子產品的更新換代較快,模型會產生因缺乏歷史數據而導致的對新產品的冷啟動問題,然而已有的工作中都缺乏相應的緩解方法。因此,本文提出了基于屬性分類建模的價值評估模型(attribute classification modeling based value evaluation mo-del,ACMVE),設計了基于屬性分類的價值評估系統架構。
我們在對主流的在線電子產品回收平臺的調研中發現,電子產品回收平臺對產品進行價值評估的結果主要受到3個因素的影響,如圖1所示。第一個因素是產品的標準價值,產品標準價值用于確定產品價值所處的大致區間,代表了產品價值受到市場行情或時間變化影響的結果。第二個因素是產品基礎屬性,基礎屬性是未經使用的全新產品包含的屬性,基于產品基本價值可以計算產品的基本價值。第三個因素是產品折損屬性,折損屬性是使用過程中產品的損傷折舊情況,通過考慮產品受損情況在產品基本價值上進行減價得到當前產品的評估價值。
為了使得價值評估算法能夠適應市場行情的變化,現有價值評估方法中的約束關系和權重需要頻繁進行人工的調整和更新,耗費大量人力。對于電子產品來說,新產品的上市是非常頻繁的,但現有方法為新產品的價值評估進行建模非常依賴專業人員的經驗,這導致了更為嚴重的人力消耗。為了緩解此問題,本文提出了基于屬性分類建模的價值評估模型(ACMVE),模型通過將產品屬性進行分類并分別建模的方式,能夠更好學習產品各屬性對產品價值的影響。本文使用獨立的模塊擬合時間因素對產品價值的影響,在獲得有時效性的評估結果的同時提高了數據利用率并且能夠有效緩解冷啟動問題?;诖四P驮O計了電子產品價值評估系統架構,能夠利用歷史訂單信息不斷優化價值評估模型,使得價值評估架構能夠始終保持精度較高的價值評估結果,減少定價過程中的人工干預。

圖1 傳統估價方法
基于屬性分類的電子產品價值評估架構通過利用其自動更新模型參數的特性來代替人工進行估價算法修正的工作,利用賣方與平臺交易產生的訂單數據,將歷史訂單信息作為價值評估模型的訓練數據,通過定期訓練進行價值評估模型的自動優化。本文提出的價值評估系統架構如圖2所示。

圖2 基于屬性分類建模的價值評估系統架構
價值評估系統分為市場交互階段和模型訓練階段。在市場交互階段,賣方會為價值評估模型提供待評估產品的產品屬性信息,價值評估系統會將產品屬性信息分類為產品基礎屬性和產品折損屬性并輸入價值評估模型,價值評估模型對賣方的電子產品進行估價,為賣方提供產品的參考價格,賣方會依據參考價格決定是否產生交易行為。
在模型訓練階段,成交的訂單信息會被存入數據庫,在進行訓練數據預處理的過程中,價值評估系統會從數據庫中篩選出成交的訂單的數據并進行屬性分類和數據量化,形成模型的訓練數據并生成標準價值預測模塊所需的數據,之后使用訓練數據對模型進行訓練。價值評估系統兩個階段的運行是獨立的,市場交互階段會在賣方進行價值評估請求時執行,模型訓練階段可以根據模型更新的需要調整模型訓練的頻率。
電子產品的屬性會通過屬性分類、屬性指標量化和數據降維3個數據預處理步驟,形成便于模型計算的模型輸入數據,其中屬性分類過程將電子產品的屬性分類為產品基礎屬性和產品折損屬性,屬性指標量化步驟將定性指標量化為可計算的數據,數據降維步驟可以減少數據中的噪聲對模型的影響。
2.1.1 屬性分類
電子產品屬性對于其價值的影響主要分為產品基礎屬性和產品折損屬性。以手機估價為例,其基礎屬性是手機制式、機身顏色、購買渠道、剩余保修期、存儲容量、內存容量等在產品出廠時就確定的屬性。手機的產品折損屬性是如機身外觀磨損情況、屏幕外觀磨損情況、屏幕顯示情況、產品維修情況等由于使用過程中產生的外觀磨損和器件老化現象對產品造成貶值的屬性。我們將電子產品的屬性依照上述原則進行分類,分別進行建模。
2.1.2 屬性指標量化
產品屬性信息通常為定性指標,需要通過量化處理才可以用于計算。通常使用獨熱編碼將產品屬性信息轉化為數值型數據。獨熱編碼又稱為一位有效編碼,在對指標進行編碼過程中,使用N位狀態表示位來對指標中N種可能的狀態進行編碼,并且同時只有一位有效。如產品屬性中顏色屬性的取值為黑色或白色,則獨熱編碼將可能把黑色和白色分別編碼為01和10。對輸入模型的產品基礎屬性和產品折損屬性中的每個屬性分別進行獨熱編碼,再將對應的編碼結果拼接為一個向量作為待估價產品的特征向量。
2.1.3 數據降維
產品屬性中可能包含對價值評估結果影響很小甚至無關的屬性,這些屬性參與計算不僅增大了計算量還可能對價值評估結果造成干擾,所以本文使用主成分分析法(principal component analysis,PCA)對量化后的指標進行降維。
經過指標量化的訓練數據V表示為
V=[v1,…,vi,…,vn]
(1)
vi=[vi1,…,vij,…,vik]
(2)
其中,每個v向量是一個維度為k的樣本,n代表樣本的個數。
(3)

對標準化陣Z求解相關系數矩陣R, 計算方法如式(4)所示
(4)
求解相關矩陣R的特征方程 |R-λIk|=0中的未知數λ,得k個特征根
{λ1,…,λj,…,λk}
(5)
按照式(6)計算特征的累計貢獻率,確定m使得累計貢獻率Cum大于0.85
(6)
對每個λj,j=1,2,…,m, 求解方程Rcj=λjcj得對應的單位特征向量cj。
通過式(7),將標準化的指標變量轉換為主成分
(7)

Ui=[ui1,…,uij,…,uik]
(8)
(9)
通過對電子產品回收平臺的估價過程的調研并受到啟發,我們設計了基于屬性分類建模的價值評估模型(attri-bute classification modeling based value evaluation model,ACMVE),如圖3所示。模型的輸入數據分為3個部分,分別為產品標準價值和經過上述3個數據預處理步驟得到的產品基礎屬性與產品折損屬性。

圖3 基于屬性分類建模的價值評估模型
模型的第一個部分的輸入為產品標準價值X0。由于其取值受到市場行情和平臺銷售能力等眾多因素影響,需要輸入對應產品的實時價值變化結果。產品的標準價值代表了產品的價值受市場和時間影響的結果,模型中通過標準價值預測模塊預測產品標準價值的變化趨勢。我們使用標準價值預測模塊來預測產品標準價值隨時間的變化。其中標準價值預測模塊先在歷史數據中篩選出產品基礎屬性和產品折損屬性一致的數據子集,我們使用一元多項式回歸法擬合此子集中產品價值隨時間的變化,將擬合得到的產品價值與時間的映射作為標準價值預測模塊的計算方法,在模型進行價值評估時,輸入當前時間,通過標準價值預測模塊計算得到產品標準價值X0。產品標準價值的計算方法如式(10)所示
X0=b0+b1t+b2t2+…+bmtm
(10)
其中,bm為m次多項式的系數,t為產品交易的時間。
在市場交互階段可能會發生難以預測的突發情況導致產品標準價值發生無法預測的突變,所以在實際應用場景下可以結合實際情況微調產品標準價值的取值來優化模型價值評估結果。
模型第二個部分的輸入為經過數據預處理的產品基礎屬性X1,為了更好地表示產品基礎屬性的特征,我們使用嵌入學習(embedding)進行產品基礎屬性的特征提取。嵌入學習通過將輸入的離散向量與嵌入參數矩陣相乘后扁平化為離散向量,通過訓練嵌入參數矩陣能夠將離散稀疏的獨熱編碼特征轉為連續稠密的嵌入向量,可以更好地表示輸入特征,有利于神經網絡模型學習。嵌入向量的計算方式如式(11)所示
(11)

我們使用p層非線性全連接的神經網絡進行產品屬性與價值映射關系的學習,非線性全連接神經網絡通過將輸入向量與權重矩陣相乘后與偏置向量相加,再將結果代入非線性激活函數得到本層非線性神經網絡的輸出,經過訓練的非線性神經網絡具有學習非線性關系的能力。將p層非線性神經網絡相連就得到了p層非線性全連接神經網絡,如式(12)~式(14)所示
(12)
(13)
… …
(14)


(15)

由于產品折損屬性通常對于產品價值的影響相比產品基礎屬性更為復雜,所以我們使用q(通常q>p)層的非線性全連接網絡進行處理,如式(16)~式(18)所示
(16)
(17)
… …
(18)

模型的3個部分將通過一個線性層整合在一起,學習3個部分的線性組合,計算方式如式(19)所示

(19)

Y公司(因涉及商業機密,Y公司具體名稱不便公開。)是專業回購電子產品的互聯網科技公司,旨在打造對消費者服務的延伸。本文實驗數據來自于Y公司的手機回收業務實際數據,提取2018年全年的iPhone 6s和iPhone 6s Plus兩款手機機型的訂單回收數據共1380條數據形成實驗數據集。數據集的手機選項統計信息見表1。

表1 手機回收訂單數據集選項統計信息


表2 數據集樣例展示及模型預測結果
模型的激活函數選擇了線性整流函數(rectified linear unit,ReLU),ReLU在訓練過程中的計算非常高效,而且因為其在輸入小于0時會將輸出置為0的特性,能夠一定程度上緩解梯度爆炸和梯度消失問題,如式(20)所示
ReLU(x)=max(0,x)
(20)
損失函數使用了均方誤差(mean-square error,MSE),其計算方式如式(21)所示,用于優化模型參數的優化器使用了Adam優化器
(21)

我們在模型上應用了Dropout策略,通過在訓練時讓每個神經元以一定概率停止工作,在預測時再啟用所有神經元,可以使得模型不會太依賴部分神經元,從而起到緩解過擬合問題的作用。
在標準價值預測模塊的擬合過程中,我們按照控制變量法的思想,先從訓練集中篩選出手機購買渠道、顏色、存儲容量等產品基礎屬性和機身外觀磨損情況、機身屏幕磨損情況等產品折損屬性都一致的數據共50條作為能夠表示產品價值受時間因素變化的依據。將其交易時間與成交價格的對應關系使用一元多項式回歸法進行擬合,形成產品標準價值預測模塊的算法。
我們使用平均絕對誤差(mean absolute error,MAE)和平均絕對百分比誤差(mean absolute percentage error,MAPE)作為評價模型性能的指標,平均絕對誤差能夠體現模型預測的結果與真實值的差距,而平均絕對百分比誤差是模型誤差與真實值的比值,能夠體現模型誤差的可接受程度,其計算方式分別如式(22)和式(23)所示
(22)
(23)

通過實驗,我們發現在手機交易數據集中最優的對應產品基礎屬性和產品折損屬性的神經網絡層數應設置為p=3、q=5。
實驗在Ubuntu 16.04系統上使用Python語言進行編程,模型使用Tensorflow神經網絡框架實現。
我們將基于屬性分類建模的價值評估模型(ACMVE)在MAE和MAPE指標上的性能表現與多層感知機模型(multi-layer perceptron,MLP)、基于LSTM的價格預測方法(long short-term memory,LSTM)[12]以及基于模糊神經網絡的廢舊手機價值評估方法(fuzzy neural network,FNN)[10]的性能表現進行了對比,實驗結果見表3。

表3 價值評估模型的性能對比
由表3的實驗結果可以發現,我們提出的基于屬性分類的價值評估模型ACMVE在MAE和MAPE兩個指標上的性能優于其它方法。長短期記憶網絡(LSTM)對序列數據建模效果優秀,但建模產品屬性與產品價值之間潛在關系的能力較差,模型的預測精度較低。得益于非線性激活函數和多層疊加的結構,多層感知機(MLP)在建模產品屬性的能力較強,性能有了一定程度的提升。融合了模糊理論的FNN模型取得了相比于上述方法更加優秀的預測精度,但由于缺少了時間信息,其性能提升依然有限。為了驗證標準價值預測模塊的有效性,我們進行了消融實驗,表3中ACMVE-svp是ACMVE模型去除了標準價值預測模塊進行訓練得到的模型,對比ACMVE的完整模型,ACMVE-svp模型在測試集上的預測精度有了明顯下降,特別是在絕對百分比誤差(MAPE)上的表現有了明顯的性能下降。通過消融實驗的結果可知,ACMVE-svp模型的預測精度相比于其它方法有了一定程度的提高,由于加入了標準價值預測模塊,能夠學習時間因素對于電子產品價值的影響,對于ACMVE模型的價值評估精度有明顯的提升作用,尤其對于MAPE指標上的表現有更大的提升,這使得模型的預測結果更具有實用性。ACMVE模型使用神經網絡的結構分別對分類后的屬性進行針對性的建模,并且通過標準價值預測模塊能夠預測產品價值隨時間的變化,達到了更好的評估結果。
LSTM、MLP、FNN和ACMVE在測試集上的價值評估絕對誤差和絕對百分比誤差如圖4和圖5所示。

圖4 不同模型在測試集上的絕對誤差

圖5 不同模型在測試集上的絕對百分比誤差
從實驗結果來看,基于LSTM的價值評估模型(LSTM)的價值評估效果不夠穩定,在部分測試樣例上的絕對誤差很低,但在其它樣例上的絕對誤差較大,導致其整體性能表現較差。同為神經網絡模型的多層感知機模型MLP和ACMVE模型中,由于MLP的單線結構,MLP會傾向于融合兩種屬性,而電子產品屬性中基礎屬性與折損屬性對產品價值的影響是相對獨立的?;贔NN的價值評估模型因為基于模糊理論的規則推理層的加入,能夠更好學習價值與關鍵特征變量之間的關系從而獲得更好的推理能力,但由于缺乏時間信息的加入,模型對于部分數據的價值預測誤差依然較大。
ACMVE模型通過兩個神經網絡分別學習產品基礎屬性和產品折損屬性對產品價值的影響,能夠減少產品屬性之間的干擾,并且由于產品標準價值預測模塊的加入,模型具有了預測產品標準價值變化趨勢的能力,模型的預測穩定性更好,并且大部分樣例的預測誤差更小,從而得到了對比實驗中最優的效果。
標準價值預測模塊的擬合效果如圖6所示。從圖中可以看出,標準價值預測模塊擬合價值變化趨勢的同時,能夠一定程度上去除少數干擾數據的影響,為模型整體提供了更好的泛化能力。

圖6 產品標準價值預測模塊擬合效果可視化
我們還進一步分析了輸入數據通過主成分分析法(PCA)降維前后對模型性能的影響,降維前后的輸入數據維度變化和性能表現對比見表4。

表4 主成分分析前后模型的性能表現對比
通過表4的實驗結果對比可以發現,輸入數據通過主成分分析法降維后,輸入數據的維度減少了約30%,說明實驗數據中存在部分冗余維度。將輸入數據的維度降低后,模型在MAE和MAPE兩項指標上的表現均提升了10%左右,對比實驗結果表明,主成分分析法能夠有效地降低輸入維度并同時提高價值評估的精度。


圖7 加入6s標準價值預測模塊前后的實驗結果對比
通過實驗結果可知,在6s數據集上訓練的標準價值預測模塊能夠有效提升模型在6sP數據集上的預測精度。這說明手機產品價值受時間因素的影響趨勢具有一定的通用性,能夠通過在較早進入市場的產品的數據集上進行產品標準價值預測模塊的訓練,應用在較新進入市場的產品的價值評估模型上可以提高價值評估模型的預測精度。
本文分析了目前回收平臺的價值評估過程,針對其過于依賴人工干預的缺點設計了利用歷史交易數據優化模型的基于屬性分類的價值評估系統架構,提出了基于屬性分類建模的價值評估模型(ACMVE),大幅減少了人工干預。通過將產品屬性進行分類并分別建模,使用一元多項式回歸法預測電子產品標準價值的變化,使得模型的預測結果更具有時效性。獨立的產品標準價值預測模塊能夠緩解對于新產品的冷啟動問題,提高了數據利用率,在實際應用中具有更大優勢。基于屬性分類的電子產品價值評估模型在真實手機回收交易數據集上的測試結果表明,其價值評估結果的誤差更小,具有實際應用的價值。后續將研究利用多任務學習方法學習電子產品的通用特征,增加模型的適用性。