王陸霖,劉 楊,彭 治,杜永萍,韓紅桂
(北京工業(yè)大學 信息學部,北京 100124)
電子產(chǎn)品的估價階段是電子產(chǎn)品回收過程的關(guān)鍵階段,能否合理高效并準確地估價會影響電子產(chǎn)品的回收效率和買賣雙方的交易意愿[1,2]。
目前對于電子產(chǎn)品的價值評估技術(shù)的研究大多通過人工設(shè)定各個屬性的權(quán)重,形成算法模型來進行產(chǎn)品價值的評估[3]。電子產(chǎn)品相較于其它產(chǎn)品,其價值波動較大,上述方法需耗費較多人力。因此,研究者們開始研究基于數(shù)據(jù)驅(qū)動的價值評估方法。Zhang等[4]和Yan等[5]使用遺傳算法對BP神經(jīng)網(wǎng)絡進行優(yōu)化,得到了較高的預測精度。Yu等[6]使用極限學習機構(gòu)建預測模型,有效降低了數(shù)據(jù)噪音的影響。Han等[7]提出了一種混合構(gòu)建神經(jīng)網(wǎng)絡的方法,能夠適應價格變動。Wang等[8]引入奇異譜分析(SSA)并建立神經(jīng)網(wǎng)絡來進行商品價值的評估。NTAKARIS等[9]使用深度神經(jīng)網(wǎng)絡模型來進行價格預測,實現(xiàn)了特征的自動提取。Han等[10]使用模糊神經(jīng)網(wǎng)絡進行廢舊手機的價值評估,提高了評估精度。Wang等[11]和Peng等[12]采用序列建模的思想,模型能夠隨時間自適應調(diào)整評估結(jié)果。
數(shù)據(jù)驅(qū)動的方法較為依賴歷史數(shù)據(jù),而電子產(chǎn)品的更新?lián)Q代較快,模型會產(chǎn)生因缺乏歷史數(shù)據(jù)而導致的對新產(chǎn)品的冷啟動問題,然而已有的工作中都缺乏相應的緩解方法。因此,本文提出了基于屬性分類建模的價值評估模型(attribute classification modeling based value evaluation mo-del,ACMVE),設(shè)計了基于屬性分類的價值評估系統(tǒng)架構(gòu)。
我們在對主流的在線電子產(chǎn)品回收平臺的調(diào)研中發(fā)現(xiàn),電子產(chǎn)品回收平臺對產(chǎn)品進行價值評估的結(jié)果主要受到3個因素的影響,如圖1所示。第一個因素是產(chǎn)品的標準價值,產(chǎn)品標準價值用于確定產(chǎn)品價值所處的大致區(qū)間,代表了產(chǎn)品價值受到市場行情或時間變化影響的結(jié)果。第二個因素是產(chǎn)品基礎(chǔ)屬性,基礎(chǔ)屬性是未經(jīng)使用的全新產(chǎn)品包含的屬性,基于產(chǎn)品基本價值可以計算產(chǎn)品的基本價值。第三個因素是產(chǎn)品折損屬性,折損屬性是使用過程中產(chǎn)品的損傷折舊情況,通過考慮產(chǎn)品受損情況在產(chǎn)品基本價值上進行減價得到當前產(chǎn)品的評估價值。
為了使得價值評估算法能夠適應市場行情的變化,現(xiàn)有價值評估方法中的約束關(guān)系和權(quán)重需要頻繁進行人工的調(diào)整和更新,耗費大量人力。對于電子產(chǎn)品來說,新產(chǎn)品的上市是非常頻繁的,但現(xiàn)有方法為新產(chǎn)品的價值評估進行建模非常依賴專業(yè)人員的經(jīng)驗,這導致了更為嚴重的人力消耗。為了緩解此問題,本文提出了基于屬性分類建模的價值評估模型(ACMVE),模型通過將產(chǎn)品屬性進行分類并分別建模的方式,能夠更好學習產(chǎn)品各屬性對產(chǎn)品價值的影響。本文使用獨立的模塊擬合時間因素對產(chǎn)品價值的影響,在獲得有時效性的評估結(jié)果的同時提高了數(shù)據(jù)利用率并且能夠有效緩解冷啟動問題。基于此模型設(shè)計了電子產(chǎn)品價值評估系統(tǒng)架構(gòu),能夠利用歷史訂單信息不斷優(yōu)化價值評估模型,使得價值評估架構(gòu)能夠始終保持精度較高的價值評估結(jié)果,減少定價過程中的人工干預。
圖1 傳統(tǒng)估價方法
基于屬性分類的電子產(chǎn)品價值評估架構(gòu)通過利用其自動更新模型參數(shù)的特性來代替人工進行估價算法修正的工作,利用賣方與平臺交易產(chǎn)生的訂單數(shù)據(jù),將歷史訂單信息作為價值評估模型的訓練數(shù)據(jù),通過定期訓練進行價值評估模型的自動優(yōu)化。本文提出的價值評估系統(tǒng)架構(gòu)如圖2所示。
圖2 基于屬性分類建模的價值評估系統(tǒng)架構(gòu)
價值評估系統(tǒng)分為市場交互階段和模型訓練階段。在市場交互階段,賣方會為價值評估模型提供待評估產(chǎn)品的產(chǎn)品屬性信息,價值評估系統(tǒng)會將產(chǎn)品屬性信息分類為產(chǎn)品基礎(chǔ)屬性和產(chǎn)品折損屬性并輸入價值評估模型,價值評估模型對賣方的電子產(chǎn)品進行估價,為賣方提供產(chǎn)品的參考價格,賣方會依據(jù)參考價格決定是否產(chǎn)生交易行為。
在模型訓練階段,成交的訂單信息會被存入數(shù)據(jù)庫,在進行訓練數(shù)據(jù)預處理的過程中,價值評估系統(tǒng)會從數(shù)據(jù)庫中篩選出成交的訂單的數(shù)據(jù)并進行屬性分類和數(shù)據(jù)量化,形成模型的訓練數(shù)據(jù)并生成標準價值預測模塊所需的數(shù)據(jù),之后使用訓練數(shù)據(jù)對模型進行訓練。價值評估系統(tǒng)兩個階段的運行是獨立的,市場交互階段會在賣方進行價值評估請求時執(zhí)行,模型訓練階段可以根據(jù)模型更新的需要調(diào)整模型訓練的頻率。
電子產(chǎn)品的屬性會通過屬性分類、屬性指標量化和數(shù)據(jù)降維3個數(shù)據(jù)預處理步驟,形成便于模型計算的模型輸入數(shù)據(jù),其中屬性分類過程將電子產(chǎn)品的屬性分類為產(chǎn)品基礎(chǔ)屬性和產(chǎn)品折損屬性,屬性指標量化步驟將定性指標量化為可計算的數(shù)據(jù),數(shù)據(jù)降維步驟可以減少數(shù)據(jù)中的噪聲對模型的影響。
2.1.1 屬性分類
電子產(chǎn)品屬性對于其價值的影響主要分為產(chǎn)品基礎(chǔ)屬性和產(chǎn)品折損屬性。以手機估價為例,其基礎(chǔ)屬性是手機制式、機身顏色、購買渠道、剩余保修期、存儲容量、內(nèi)存容量等在產(chǎn)品出廠時就確定的屬性。手機的產(chǎn)品折損屬性是如機身外觀磨損情況、屏幕外觀磨損情況、屏幕顯示情況、產(chǎn)品維修情況等由于使用過程中產(chǎn)生的外觀磨損和器件老化現(xiàn)象對產(chǎn)品造成貶值的屬性。我們將電子產(chǎn)品的屬性依照上述原則進行分類,分別進行建模。
2.1.2 屬性指標量化
產(chǎn)品屬性信息通常為定性指標,需要通過量化處理才可以用于計算。通常使用獨熱編碼將產(chǎn)品屬性信息轉(zhuǎn)化為數(shù)值型數(shù)據(jù)。獨熱編碼又稱為一位有效編碼,在對指標進行編碼過程中,使用N位狀態(tài)表示位來對指標中N種可能的狀態(tài)進行編碼,并且同時只有一位有效。如產(chǎn)品屬性中顏色屬性的取值為黑色或白色,則獨熱編碼將可能把黑色和白色分別編碼為01和10。對輸入模型的產(chǎn)品基礎(chǔ)屬性和產(chǎn)品折損屬性中的每個屬性分別進行獨熱編碼,再將對應的編碼結(jié)果拼接為一個向量作為待估價產(chǎn)品的特征向量。
2.1.3 數(shù)據(jù)降維
產(chǎn)品屬性中可能包含對價值評估結(jié)果影響很小甚至無關(guān)的屬性,這些屬性參與計算不僅增大了計算量還可能對價值評估結(jié)果造成干擾,所以本文使用主成分分析法(principal component analysis,PCA)對量化后的指標進行降維。
經(jīng)過指標量化的訓練數(shù)據(jù)V表示為
V=[v1,…,vi,…,vn]
(1)
vi=[vi1,…,vij,…,vik]
(2)
其中,每個v向量是一個維度為k的樣本,n代表樣本的個數(shù)。
(3)
對標準化陣Z求解相關(guān)系數(shù)矩陣R, 計算方法如式(4)所示
(4)
求解相關(guān)矩陣R的特征方程 |R-λIk|=0中的未知數(shù)λ,得k個特征根
{λ1,…,λj,…,λk}
(5)
按照式(6)計算特征的累計貢獻率,確定m使得累計貢獻率Cum大于0.85
(6)
對每個λj,j=1,2,…,m, 求解方程Rcj=λjcj得對應的單位特征向量cj。
通過式(7),將標準化的指標變量轉(zhuǎn)換為主成分
(7)
Ui=[ui1,…,uij,…,uik]
(8)
(9)
通過對電子產(chǎn)品回收平臺的估價過程的調(diào)研并受到啟發(fā),我們設(shè)計了基于屬性分類建模的價值評估模型(attri-bute classification modeling based value evaluation model,ACMVE),如圖3所示。模型的輸入數(shù)據(jù)分為3個部分,分別為產(chǎn)品標準價值和經(jīng)過上述3個數(shù)據(jù)預處理步驟得到的產(chǎn)品基礎(chǔ)屬性與產(chǎn)品折損屬性。
圖3 基于屬性分類建模的價值評估模型
模型的第一個部分的輸入為產(chǎn)品標準價值X0。由于其取值受到市場行情和平臺銷售能力等眾多因素影響,需要輸入對應產(chǎn)品的實時價值變化結(jié)果。產(chǎn)品的標準價值代表了產(chǎn)品的價值受市場和時間影響的結(jié)果,模型中通過標準價值預測模塊預測產(chǎn)品標準價值的變化趨勢。我們使用標準價值預測模塊來預測產(chǎn)品標準價值隨時間的變化。其中標準價值預測模塊先在歷史數(shù)據(jù)中篩選出產(chǎn)品基礎(chǔ)屬性和產(chǎn)品折損屬性一致的數(shù)據(jù)子集,我們使用一元多項式回歸法擬合此子集中產(chǎn)品價值隨時間的變化,將擬合得到的產(chǎn)品價值與時間的映射作為標準價值預測模塊的計算方法,在模型進行價值評估時,輸入當前時間,通過標準價值預測模塊計算得到產(chǎn)品標準價值X0。產(chǎn)品標準價值的計算方法如式(10)所示
X0=b0+b1t+b2t2+…+bmtm
(10)
其中,bm為m次多項式的系數(shù),t為產(chǎn)品交易的時間。
在市場交互階段可能會發(fā)生難以預測的突發(fā)情況導致產(chǎn)品標準價值發(fā)生無法預測的突變,所以在實際應用場景下可以結(jié)合實際情況微調(diào)產(chǎn)品標準價值的取值來優(yōu)化模型價值評估結(jié)果。
模型第二個部分的輸入為經(jīng)過數(shù)據(jù)預處理的產(chǎn)品基礎(chǔ)屬性X1,為了更好地表示產(chǎn)品基礎(chǔ)屬性的特征,我們使用嵌入學習(embedding)進行產(chǎn)品基礎(chǔ)屬性的特征提取。嵌入學習通過將輸入的離散向量與嵌入?yún)?shù)矩陣相乘后扁平化為離散向量,通過訓練嵌入?yún)?shù)矩陣能夠?qū)㈦x散稀疏的獨熱編碼特征轉(zhuǎn)為連續(xù)稠密的嵌入向量,可以更好地表示輸入特征,有利于神經(jīng)網(wǎng)絡模型學習。嵌入向量的計算方式如式(11)所示
(11)
我們使用p層非線性全連接的神經(jīng)網(wǎng)絡進行產(chǎn)品屬性與價值映射關(guān)系的學習,非線性全連接神經(jīng)網(wǎng)絡通過將輸入向量與權(quán)重矩陣相乘后與偏置向量相加,再將結(jié)果代入非線性激活函數(shù)得到本層非線性神經(jīng)網(wǎng)絡的輸出,經(jīng)過訓練的非線性神經(jīng)網(wǎng)絡具有學習非線性關(guān)系的能力。將p層非線性神經(jīng)網(wǎng)絡相連就得到了p層非線性全連接神經(jīng)網(wǎng)絡,如式(12)~式(14)所示
(12)
(13)
… …
(14)
(15)
由于產(chǎn)品折損屬性通常對于產(chǎn)品價值的影響相比產(chǎn)品基礎(chǔ)屬性更為復雜,所以我們使用q(通常q>p)層的非線性全連接網(wǎng)絡進行處理,如式(16)~式(18)所示
(16)
(17)
… …
(18)
模型的3個部分將通過一個線性層整合在一起,學習3個部分的線性組合,計算方式如式(19)所示
(19)
Y公司(因涉及商業(yè)機密,Y公司具體名稱不便公開。)是專業(yè)回購電子產(chǎn)品的互聯(lián)網(wǎng)科技公司,旨在打造對消費者服務的延伸。本文實驗數(shù)據(jù)來自于Y公司的手機回收業(yè)務實際數(shù)據(jù),提取2018年全年的iPhone 6s和iPhone 6s Plus兩款手機機型的訂單回收數(shù)據(jù)共1380條數(shù)據(jù)形成實驗數(shù)據(jù)集。數(shù)據(jù)集的手機選項統(tǒng)計信息見表1。
表1 手機回收訂單數(shù)據(jù)集選項統(tǒng)計信息
表2 數(shù)據(jù)集樣例展示及模型預測結(jié)果
模型的激活函數(shù)選擇了線性整流函數(shù)(rectified linear unit,ReLU),ReLU在訓練過程中的計算非常高效,而且因為其在輸入小于0時會將輸出置為0的特性,能夠一定程度上緩解梯度爆炸和梯度消失問題,如式(20)所示
ReLU(x)=max(0,x)
(20)
損失函數(shù)使用了均方誤差(mean-square error,MSE),其計算方式如式(21)所示,用于優(yōu)化模型參數(shù)的優(yōu)化器使用了Adam優(yōu)化器
(21)
我們在模型上應用了Dropout策略,通過在訓練時讓每個神經(jīng)元以一定概率停止工作,在預測時再啟用所有神經(jīng)元,可以使得模型不會太依賴部分神經(jīng)元,從而起到緩解過擬合問題的作用。
在標準價值預測模塊的擬合過程中,我們按照控制變量法的思想,先從訓練集中篩選出手機購買渠道、顏色、存儲容量等產(chǎn)品基礎(chǔ)屬性和機身外觀磨損情況、機身屏幕磨損情況等產(chǎn)品折損屬性都一致的數(shù)據(jù)共50條作為能夠表示產(chǎn)品價值受時間因素變化的依據(jù)。將其交易時間與成交價格的對應關(guān)系使用一元多項式回歸法進行擬合,形成產(chǎn)品標準價值預測模塊的算法。
我們使用平均絕對誤差(mean absolute error,MAE)和平均絕對百分比誤差(mean absolute percentage error,MAPE)作為評價模型性能的指標,平均絕對誤差能夠體現(xiàn)模型預測的結(jié)果與真實值的差距,而平均絕對百分比誤差是模型誤差與真實值的比值,能夠體現(xiàn)模型誤差的可接受程度,其計算方式分別如式(22)和式(23)所示
(22)
(23)
通過實驗,我們發(fā)現(xiàn)在手機交易數(shù)據(jù)集中最優(yōu)的對應產(chǎn)品基礎(chǔ)屬性和產(chǎn)品折損屬性的神經(jīng)網(wǎng)絡層數(shù)應設(shè)置為p=3、q=5。
實驗在Ubuntu 16.04系統(tǒng)上使用Python語言進行編程,模型使用Tensorflow神經(jīng)網(wǎng)絡框架實現(xiàn)。
我們將基于屬性分類建模的價值評估模型(ACMVE)在MAE和MAPE指標上的性能表現(xiàn)與多層感知機模型(multi-layer perceptron,MLP)、基于LSTM的價格預測方法(long short-term memory,LSTM)[12]以及基于模糊神經(jīng)網(wǎng)絡的廢舊手機價值評估方法(fuzzy neural network,F(xiàn)NN)[10]的性能表現(xiàn)進行了對比,實驗結(jié)果見表3。
表3 價值評估模型的性能對比
由表3的實驗結(jié)果可以發(fā)現(xiàn),我們提出的基于屬性分類的價值評估模型ACMVE在MAE和MAPE兩個指標上的性能優(yōu)于其它方法。長短期記憶網(wǎng)絡(LSTM)對序列數(shù)據(jù)建模效果優(yōu)秀,但建模產(chǎn)品屬性與產(chǎn)品價值之間潛在關(guān)系的能力較差,模型的預測精度較低。得益于非線性激活函數(shù)和多層疊加的結(jié)構(gòu),多層感知機(MLP)在建模產(chǎn)品屬性的能力較強,性能有了一定程度的提升。融合了模糊理論的FNN模型取得了相比于上述方法更加優(yōu)秀的預測精度,但由于缺少了時間信息,其性能提升依然有限。為了驗證標準價值預測模塊的有效性,我們進行了消融實驗,表3中ACMVE-svp是ACMVE模型去除了標準價值預測模塊進行訓練得到的模型,對比ACMVE的完整模型,ACMVE-svp模型在測試集上的預測精度有了明顯下降,特別是在絕對百分比誤差(MAPE)上的表現(xiàn)有了明顯的性能下降。通過消融實驗的結(jié)果可知,ACMVE-svp模型的預測精度相比于其它方法有了一定程度的提高,由于加入了標準價值預測模塊,能夠?qū)W習時間因素對于電子產(chǎn)品價值的影響,對于ACMVE模型的價值評估精度有明顯的提升作用,尤其對于MAPE指標上的表現(xiàn)有更大的提升,這使得模型的預測結(jié)果更具有實用性。ACMVE模型使用神經(jīng)網(wǎng)絡的結(jié)構(gòu)分別對分類后的屬性進行針對性的建模,并且通過標準價值預測模塊能夠預測產(chǎn)品價值隨時間的變化,達到了更好的評估結(jié)果。
LSTM、MLP、FNN和ACMVE在測試集上的價值評估絕對誤差和絕對百分比誤差如圖4和圖5所示。
圖4 不同模型在測試集上的絕對誤差
圖5 不同模型在測試集上的絕對百分比誤差
從實驗結(jié)果來看,基于LSTM的價值評估模型(LSTM)的價值評估效果不夠穩(wěn)定,在部分測試樣例上的絕對誤差很低,但在其它樣例上的絕對誤差較大,導致其整體性能表現(xiàn)較差。同為神經(jīng)網(wǎng)絡模型的多層感知機模型MLP和ACMVE模型中,由于MLP的單線結(jié)構(gòu),MLP會傾向于融合兩種屬性,而電子產(chǎn)品屬性中基礎(chǔ)屬性與折損屬性對產(chǎn)品價值的影響是相對獨立的?;贔NN的價值評估模型因為基于模糊理論的規(guī)則推理層的加入,能夠更好學習價值與關(guān)鍵特征變量之間的關(guān)系從而獲得更好的推理能力,但由于缺乏時間信息的加入,模型對于部分數(shù)據(jù)的價值預測誤差依然較大。
ACMVE模型通過兩個神經(jīng)網(wǎng)絡分別學習產(chǎn)品基礎(chǔ)屬性和產(chǎn)品折損屬性對產(chǎn)品價值的影響,能夠減少產(chǎn)品屬性之間的干擾,并且由于產(chǎn)品標準價值預測模塊的加入,模型具有了預測產(chǎn)品標準價值變化趨勢的能力,模型的預測穩(wěn)定性更好,并且大部分樣例的預測誤差更小,從而得到了對比實驗中最優(yōu)的效果。
標準價值預測模塊的擬合效果如圖6所示。從圖中可以看出,標準價值預測模塊擬合價值變化趨勢的同時,能夠一定程度上去除少數(shù)干擾數(shù)據(jù)的影響,為模型整體提供了更好的泛化能力。
圖6 產(chǎn)品標準價值預測模塊擬合效果可視化
我們還進一步分析了輸入數(shù)據(jù)通過主成分分析法(PCA)降維前后對模型性能的影響,降維前后的輸入數(shù)據(jù)維度變化和性能表現(xiàn)對比見表4。
表4 主成分分析前后模型的性能表現(xiàn)對比
通過表4的實驗結(jié)果對比可以發(fā)現(xiàn),輸入數(shù)據(jù)通過主成分分析法降維后,輸入數(shù)據(jù)的維度減少了約30%,說明實驗數(shù)據(jù)中存在部分冗余維度。將輸入數(shù)據(jù)的維度降低后,模型在MAE和MAPE兩項指標上的表現(xiàn)均提升了10%左右,對比實驗結(jié)果表明,主成分分析法能夠有效地降低輸入維度并同時提高價值評估的精度。
圖7 加入6s標準價值預測模塊前后的實驗結(jié)果對比
通過實驗結(jié)果可知,在6s數(shù)據(jù)集上訓練的標準價值預測模塊能夠有效提升模型在6sP數(shù)據(jù)集上的預測精度。這說明手機產(chǎn)品價值受時間因素的影響趨勢具有一定的通用性,能夠通過在較早進入市場的產(chǎn)品的數(shù)據(jù)集上進行產(chǎn)品標準價值預測模塊的訓練,應用在較新進入市場的產(chǎn)品的價值評估模型上可以提高價值評估模型的預測精度。
本文分析了目前回收平臺的價值評估過程,針對其過于依賴人工干預的缺點設(shè)計了利用歷史交易數(shù)據(jù)優(yōu)化模型的基于屬性分類的價值評估系統(tǒng)架構(gòu),提出了基于屬性分類建模的價值評估模型(ACMVE),大幅減少了人工干預。通過將產(chǎn)品屬性進行分類并分別建模,使用一元多項式回歸法預測電子產(chǎn)品標準價值的變化,使得模型的預測結(jié)果更具有時效性。獨立的產(chǎn)品標準價值預測模塊能夠緩解對于新產(chǎn)品的冷啟動問題,提高了數(shù)據(jù)利用率,在實際應用中具有更大優(yōu)勢?;趯傩苑诸惖碾娮赢a(chǎn)品價值評估模型在真實手機回收交易數(shù)據(jù)集上的測試結(jié)果表明,其價值評估結(jié)果的誤差更小,具有實際應用的價值。后續(xù)將研究利用多任務學習方法學習電子產(chǎn)品的通用特征,增加模型的適用性。