黃雨潔, 李 昕, 胡基柔, 陶 卓
(1.南京郵電大學計算機學院, 江蘇 南京 210023;2.南京郵電大學管理學院, 江蘇 南京 210023)
隨著人們消費水平的提升,對個性化家具的購買需求逐漸增大,而通常城市中家具城的地理位置相對偏遠、退換貨流程不便,加之人們的生活節(jié)奏加快,選購家具比較困難。針對以上問題,家具行業(yè)智能化推薦方法顯得尤為重要。2019年由中華人民共和國工業(yè)和信息化部等十三個部門印發(fā)的《制造業(yè)設計能力提升專項行動計劃(2019—2022年)》也指出要實現(xiàn)傳統(tǒng)優(yōu)勢產業(yè)設計升級,這對家具行業(yè)的轉型升級提出了更高的要求[1]。
推薦系統(tǒng)在實現(xiàn)家具行業(yè)智能化的過程中起到了重要的作用,并且近年來各類推薦算法也不斷進步[2]。有研究表明,卷積神經網絡相比于傳統(tǒng)的推薦算法,可以通過鄰域聚合操作,實現(xiàn)對節(jié)點鄰居信息的更精準統(tǒng)計[3]。本文將基于圖卷積神經網絡的協(xié)同過濾算法應用于家具推薦,根據用戶對部分家具的評分以及其性別、年齡和薪資等特征屬性和家具特征屬性,進行二層圖卷積神經網絡的搭建,實現(xiàn)對家具評分的預測,幫助用戶高效選購家具。
經濟的持續(xù)快速發(fā)展與現(xiàn)代化建設的不斷推進以及居民收入水平的不斷提高,為中國家具行業(yè)提供了良好的發(fā)展環(huán)境。進入經濟全球化、貿易全球化與互聯(lián)網時代,人們對思想與審美的個性化追求與商品性價比的要求逐步提升,加之移動互聯(lián)網的發(fā)展、各類3D模型技術的精進和推薦算法的不斷優(yōu)化,家具裝飾移動應用應運而生,具有巨大的市場潛力。
家具行業(yè)屬于創(chuàng)意性傳統(tǒng)企業(yè)。此前,我國家具行業(yè)中企業(yè)數(shù)量較多,但行業(yè)集中度較低。隨著居民生活節(jié)奏的加快,實體店的客流量逐漸減少。為適應消費者的消費需求,家具定制逐漸與互聯(lián)網融合,電子商務快速發(fā)展,O2O(Online To Offline)模式的普及度逐漸提升,電商利用互聯(lián)網聚集了大量的家具供應商,并運用大數(shù)據實現(xiàn)精細化管理,通過推送算法根據用戶喜好為其推送關注的內容。此外,O2O模式得以與推送算法結合,給予消費者更多交互體驗,能讓消費者在虛擬的世界中獲得更多的信息[4]。家具裝飾移動應用通過高性價比的功能與精細管理吸引了大量消費者。
推薦系統(tǒng)隨著互聯(lián)網的發(fā)展而快速進步,而協(xié)同過濾作為推薦系統(tǒng)中的經典算法,在推薦領域中起著重要作用。1994年,GroupLens項目組在明尼蘇達大學首次開發(fā)出一種全新的自動化協(xié)同過濾系統(tǒng),它不僅首次將協(xié)同過濾的理論應用于實踐,更進一步將推薦問題的系統(tǒng)模型納入其中,這一創(chuàng)新性的技術將在未來幾十年里極大地促進推薦系統(tǒng)的發(fā)展[5]。該小組隨后創(chuàng)建了一個試點研究網站MovieLens,其中包含迄今為止在推薦領域被廣泛引用的數(shù)據集,影響深遠。
協(xié)同過濾算法細分可以分為以用戶為基礎(User-based)的協(xié)同過濾算法、以項目為基礎(Item-based)的協(xié)同過濾算法、以模型為基礎(Model-based)的協(xié)同過濾算法。以模型為基礎的協(xié)同過濾算法是前兩種算法的進一步發(fā)展,也是目前應用最為廣泛的協(xié)同過濾算法[6]。
2016年,視頻網站YouTube嘗試通過結合深度學習的協(xié)同過濾算法滿足視頻推薦需求的增長,通過實驗證明,推薦系統(tǒng)和深度學習的結合可以取得良好效果。自此,推薦系統(tǒng)與深度學習結合研究成為熱點[7]。近年來,將圖神經網絡(Graph Neural Network, GNN)應用至協(xié)同過濾算法中也是一個研究熱點,其中包括圖卷積神經網絡(Graph Convolution Network, GCN)[8]。研究表明:GCN相比傳統(tǒng)的方法,能夠更高效地利用推薦系統(tǒng)以及數(shù)據中存在的用戶屬性和商品屬性信息構建圖的結構屬性和節(jié)點特征信息[9-10]。因此,GCN在推薦系統(tǒng)中的應用有著良好的發(fā)展前景。
在推薦系統(tǒng)中有兩組集合分別是用戶集U={u1,u2,u3,…,un}和家具集F={f1,f2,f3,…,fm}。用R={ruf}表示用戶u對家具f的評分。用以上數(shù)據集構建用戶-家具的二部圖G=(V,E)。其中,V=U∪F,即該二部圖中的所有節(jié)點由用戶節(jié)點和家具節(jié)點構成。E=R表示用戶對家具的評分值構成二部圖中的邊。由此可知,用戶對家具的評分越高,則關聯(lián)越強。構造的用戶-家具二部圖G如圖1所示。G的鄰接矩陣記為A,其中Aij代表i節(jié)點和j節(jié)點是否連接。G的度矩陣記為D,Dii表示節(jié)點i的度。GCN用來傳播用戶和家具的特征,其計算公式如下:
圖1 用戶-家具二部圖Fig.1 User-furniture bipartite graph
(1)
基于GCN的家具推薦方法的基本框架可分為輸入層、卷積層及輸出層。輸入層主要負責生成相關圖結構數(shù)據。卷積層傳播用戶和家具的特征,并不斷優(yōu)化用戶和家具的特征表示。輸出層將不同卷積層得到的用戶和家具的特征表示聚合,預測用戶對家具的評分。
輸入層用于生成相關圖結構數(shù)據以及初始化用戶與家具的特征表示。圖結構數(shù)據主要包括節(jié)點自身的特征向量以及圖的鄰接矩陣和度矩陣等。本層將每一條用戶與家具信息轉換為向量表示。在本文實驗中,向量的維度設置為64,節(jié)點的特征向量可表示為[用戶id/家具id,性別/價格,…]。鄰接矩陣體現(xiàn)了各個節(jié)點之間的關系,為卷積層中傳播用戶和家具特征奠定了基礎。
卷積層主要完成傳播特征及不斷完善用戶及家具的特征表示的任務。文獻[12]指出一旦使用多層卷積層,相關任務的傳播效果會急劇下降,所以本實驗采用兩層卷積層,具體的計算公式如公式(2)所示:
(2)
其中:σ為非線性激活函數(shù)ReLU,W(0)為第一層GCN的特征權重矩陣,W(1)為第二層GCN的特征權重矩陣。通過堆疊多個圖卷積網絡層,模型可以輸出各個節(jié)點更高維度的特征表示,利用這些特征表示可以實現(xiàn)后續(xù)節(jié)點的預測。
(3)
基于GCN的家居推薦方法框架如圖2所示。
圖2 基于GCN的家具推薦方法框架Fig.2 A framework for furniture recommendation methods based on GCN
本文構建的GCN模型基于深度學習框架PyTorch實現(xiàn),CPU處理器采用Intel(R) Core(TM)i7-10710U,GPU處理器采用NVIDIA GeForce MX350。
為驗證本文所提出的基于GCN的家具推薦方法的準確性,本實驗共收集了910名用戶對50種家具的22 750條評分記錄,其中每個用戶至少評價25種家具,評分的取值位于整數(shù)1~5,評分越高,意味著用戶越喜愛這種家具。本實驗隨機選擇評分記錄的70%作為訓練集,剩余的30%作為測試集。
在實驗中,為910名用戶添加了性別、年齡和薪資等特征屬性,最終形成910×4的用戶特征矩陣。用戶特征屬性如表1所示。
表1 用戶特征屬性
本文實驗為50種家具添加了價格、材質、尺寸及顏色4種特征屬性,最終形成50×5的家具特征矩陣。同時,利用收集到的用戶對家具的評分可以構建用戶-家具三元組[user_id,item_id,rating],可以用來描述用戶節(jié)點與家具節(jié)點之間的關系,通過這個三元組可以構建鄰接矩陣。
本文實驗算法的評估標準主要是三個方式:精確度、召回率和均方根誤差值。
精確度(Precision)以預測的結果作為判斷依據,表示為推薦結果中與真實數(shù)據相同的數(shù)據與推薦數(shù)據的比值,代表推薦數(shù)據中的正確率,如公式(4)所示:
(4)
公式(4)中,對于用戶u的推薦家具的集合為R(u),而用戶u喜歡的家具集合為T(u)。
召回率(Recall)表示預測結果與真實數(shù)據相同的正確數(shù)據與真實數(shù)據的比值,代表真實數(shù)據的推薦率,如公式(5)所示:
(5)
均方根誤差(RMSE)是預測值和真實值偏差的平方和與觀測次數(shù)的比值的平方根,衡量的是預測數(shù)據與真實數(shù)據的偏差,對于異常數(shù)據較為敏感,如公式(6)所示:
(6)
其中:N表示觀測次數(shù),Yi-f(xi)表示觀測值與真實值的偏差。
為證明本文提出的基于GCN的家具推薦算法的準確性,選用ItemCF和UserCF與之進行比較[13]。
ItemCF:通過用戶行為計算物品相似度,根據物品之間的相似度與用戶歷史行為形成用戶推薦表,適用于用戶個性化推薦。
UserCF:根據用戶之間相似度,給目標用戶推薦相似用戶產生過行為的物品。UserCF的推薦更社會化,適用于新聞推薦。
本文實驗選取精確度、召回率與均方根誤差作為推薦算法的性能衡量指標,精確度、召回率的數(shù)值越高,均方根誤差的數(shù)值越低,代表推薦算法的性能越好。為研究不同模型對協(xié)同過濾算法性能的影響,本實驗利用家具喜愛度問卷搜集到的數(shù)據集,分別對GCN、ItemCF、UserCF三種算法進行算法測試。在三組實驗數(shù)據中,三種算法得到的精確度、召回率和均方根誤差如表2所示,評估數(shù)據視圖如圖3所示。
表2 協(xié)同過濾算法評估數(shù)據對比
圖3 評估數(shù)據視圖Fig.3 Assessment data view
根據圖3得知,在精確度和召回率方面,ItemCF的算法得分要高出其他兩種算法,但在均方根誤差指標方面,GCN要明顯低于其他兩種算法的指標,可以達到約0.26,ItemCF和UserCF則都大于1.8。對比結果可知,基于GCN的推薦算法相比ItemCF和UserCF,在均方根誤差上實現(xiàn)了更好的性能,而ItemCF在精確度與召回率上實現(xiàn)了更好的性能。本文提出的GCN算法優(yōu)化是可取的,精確度與召回率相差較小的情況下,均方根誤差越小,說明算法越好,擬合程度越高,即對于用戶的推薦效果就越好。在用戶或者物品較多的場合,ItemCF與UserCF的物品相似度矩陣的計算代價較大,損失也較大,對比ItemCF與UserCF,GCN在Loss訓練上的表現(xiàn)更好。綜上所述,GCN在數(shù)據量較多時,根據同時聚合的用戶與家具的特征,捕捉全圖信息,模型結果更加準確,預測值更加接近真實值,對于用戶的推薦效果更好。
針對當下人們對個性化家具的購買需求的增大,本文提出了一種基于圖卷積神經網絡的家具推薦方法。該推薦方法通過建立圖卷積神經網絡獲取不同層的用戶-家具特征,將多層特征表示聚合后進行評分預測。開展實驗與其他常見協(xié)同過濾算法進行比較,結果表明該推薦方法在精確度、召回率和Loss訓練上都有較好的效果。下一步將結合家具商品的實際市場,進一步優(yōu)化模型,提升推薦效果。