童啟 劉強 許賽華 胡益廣

【摘 要】以大數據時代為背景,改變傳統推薦系統的設計思路,給出一個“相關物品”智能推薦系統體系結構。將用戶即時購買需求和歷史偏好相結合,提出一種改進的基于粗糙集的屬性約簡算法,用于數據預處理階段提取用戶實時需求商品類的特征,在線分析階段采用引入興趣域的聚類算法挖掘用戶實時關注商品的相似商品集,離線用協同過濾推薦挖掘相關商品集,將在線部分與離線部分的相關商品集融合,按照點擊率預估對集合進行排序,形成推薦,以解決推薦系統在實時性、擴展性、智能性和實時性與精準平衡性方面存在的問題。
【關鍵詞】推薦系統;粗糙集;數據挖掘
【中圖分類號】TP18;TP311.52【文獻標識碼】A 【文章編號】1674-0688(2019)12-0079-02
信息過載時代,智能推薦系統在電子商務領域的地位不斷提高,它能最大化地體現電子商務網站的優勢。電子商務智能推薦系統是通過一定方法幫助人們找到自己需要的物品,它涉及的技術很多,其核心是推薦算法。隨著電子商務系統規模的擴大,目前電子商務推薦系統在準確率、多樣性、實時性等方面存在很多問題。文章以物品—物品的角度,將多種推薦算法融合,構建面向電子商務的推薦系統。
1 推薦算法在應用中存在的問題
1.1 實時性和擴展性問題
大部分推薦算法是在小數量級上評估的。而隨著電子商務的發展,大型購物網站是千萬級顧客、百萬級商品的大數據集。面對這樣的大數據集,算法會遭受嚴峻的性能和計算量問題,達不到實時性、擴展性的要求。例如,采用傳統協同過濾來產生推薦,最壞的情況是O(M×N)(其中M是用戶數量,N是物品數量),如果用戶或物品數量級不大,算法的執行也接近于O(M+N)。解決此問題的思路是可以根據用戶實時關注的物品類關鍵屬性挖掘相似物品集合,使算法的在線計算規模與用戶數量無關,僅與用戶實時購買需求的物品大類數量有關。
1.2 智能化問題
大部分的推薦系統僅抓住了用戶在過去一段時間內的行為偏好,并沒有對用戶當前行為的短期意圖進行考慮,而這些意圖正是最能反映用戶當前需求的一些信息。傳統的推薦系統并未能很好地解決智能化推薦的問題。解決此問題的思路是將用戶的歷史偏好信息與在線的實時購買需求信息相結合并推薦給用戶,力求給用戶最需要的推薦,解決智能化問題。
1.3 實時性與推薦滿意度平衡問題
根據用戶在線行為的短期意圖做推薦時,大部分算法需要處理大量數據不斷迭代,執行時間較長,而執行快速的算法在用戶滿意度指標上又有欠缺,因此算法在實時性與滿意度兩個方面無法找到一個平衡點。解決此問題的思路是采用在線部分和離線部分,分別挖掘相似物品集合,然后按權重融合,再進行推薦。
2 相關物品思路的推薦引擎架構
架構包括離線處理和在線分析兩個部分。離線處理部分根據用戶的信息如年齡、性別、職業、用戶的歷史購物信息及歷史物品的評價信息,采用協同過濾算法挖掘用戶關注物品的相似物品集合。在線部分考慮用戶實時性需求,在服務器日志中收集用戶在線行為,如瀏覽的網頁信息、收藏的物品信息,研究用戶對物品的興趣度,接著對感興趣物品類信息進行數據預處理時,采用改進的基于粗糙集屬性約簡算法,提取用戶實時關注的物品特征,如物品的款式、價格、顏色、購買人數、評價分等,抽取出特征后采用混合數據聚類標簽算法挖掘用戶實時購買需求的相似物品集合。兩類集合按照權重進行融合,如果用戶的瀏覽帶無目的性或者已經完成購物,則以離線部分的相似物品集合為主,如果用戶的瀏覽行為有明確的購物目標,則以在線部分的相似物品集合為主。最后用決策樹算法對相似物品集合按照點擊率預估進行排序,產生推薦。
3 推薦系統設計及算法研究
3.1 隱式獲取數據
推薦算法分析設計的基礎是用戶行為數據,在線部分通過隱式獲取法,如獲取用戶瀏覽網頁的行為和內容,包括瀏覽、查詢的物品及某物品瀏覽的次數、頻率、停留時間等,以及行為操作(收藏、加入購物車、下單等)。以上這些行為反映了用戶對物品有不同興趣,可以將用戶興趣與行為的聯系用公式(1)表達。其中,c為消費者用戶,i為物品,Ab(c)為用戶c操作物品的行為集合,fb為用戶行為b所代表的興趣權重,pc,i為用戶c對物品i的綜合興趣度。計算pc,i得出用戶在線狀態感興趣的物品集合。
■=∑ fb (1)
3.2 提取物品關鍵屬性
對感興趣物品的屬性進行數據預處理。一是連續屬性離散化,如商品的價格屬性,可以按規則進行離散化,區分為高、中、低。二是對不完備信息系統進行補齊處理,采用粗糙集中數據不可分辨關系理論來處理或直接刪除數據。數據挖掘的結果很大程度上依賴于預處理的效果。
屬性約簡是指在保證數據劃分一致的前提下,通過去除不需要的屬性,以簡化大數據環境下的復雜程度,降低計算維度。因為粗糙集理論不需要先驗信息,可以采用基于差別矩陣的屬性約簡算法提取用戶感興趣物品的關鍵屬性。用等價類代替單個元素構造差別矩陣,將差別矩陣與屬性區分力相融合,提高算法效率。
3.3 根據物品關鍵屬性運用混合數據聚類標簽算法挖掘相似物品集
基于“相關物品”推薦的思想,即在用戶對物品i感興趣時,給用戶推薦和i相似的物品,在線挖掘考慮用戶的實時購物需求。根據屬性約簡提取的物品特征屬性對物品進行聚類。在聚類算法中引入物品特征屬性興趣域,采用融合興趣域的混合數據聚類標簽算法。根據物品特征屬性的范圍可以建立物品特征屬性興趣域Dj。在Dj中每個屬性取值都有一個范圍,相似物品數據集中每個屬性與Dj中對應屬性范圍的關聯用dij表示,當混合數據集的屬性值在范圍內,dij=1,否則dij=0。公式(2)中,數據集Si與物品特征屬性興趣域Dj關聯度的權值用Cij表示。公式(3)中,fij為數據集關于興趣域的隸屬度,其中N為物品特征屬性個數。fij取值范圍是0到1,fij值越大,說明Si歸屬Dj的集成度越高,反之,fij值越小,Si歸屬Dj的集成度越低。
Cij=∑dij(2)
fij=■(3)
采用K-prototypes算法對物品特征屬性信息進行聚類處理,構建物品特征屬性興趣域。通過公式計算dij和fij,對混合數據集數值聚類標簽輸出。引入物品特征屬性興趣域提升了聚類結果對用戶的針對性。此外,可以對關鍵屬性設置感興趣的權重,進一步提高推薦的滿意度。在線分析部分主要是用于滿足用戶實時需求的推薦,由于受到物品關鍵屬性特征提取能力的限制,所以很難滿足推薦的新穎性和驚喜度。
3.4 在線物品集與離線物品集融合,排序產生推薦
離線部分采用基于用戶的協同過濾算法產生相似物品推薦集。離線部分是在線部分的補充,為用戶提供新的興趣推薦。融合時在用戶屬性中加入一個表示行為狀態的字段,如“1”表示無需求瀏覽,“2”表示購物中,“3”表示購物后3種狀態值。根據狀態值按不同的權重對在線物品集和離線物品集進行融合。
接下來是對融合的候選物品集進行排序。因為推薦系統的不同評測指標和用戶的不同需求狀態,物品與用戶的相關度會不同,因此本文重點考慮用戶的反饋,使用用戶對推薦物品的點擊率作為指標來對物品進行排序。點擊率預估問題可以轉化為傳統的兩類分類問題。考慮電子商務網站物品特征屬性少的情況,使用決策樹的算法,可以發揮決策樹算法解決非線性問題的優勢。
4 結論
文章提出“相關物品”思路的電子商務推薦系統架構。在線部分的計算僅需考慮用戶實時關注的商品類別中商品數量,以解決大數據環境下推薦的實時性、擴展性問題;按照用戶狀態行為的屬性值對兩個商品集進行融合,使得系統能夠同時滿足用戶的實時需求和對新物品的興趣,以解決推薦的智能性問題;在線分析與離線推薦相結合,以解決實時性與精準性的平衡問題。需要進一步研究降低精簡屬性集對決策效能的影響和數據聚類標簽算法中引入的興趣域容忍度參數對推薦正確率的影響。
參 考 文 獻
[1]鄧愛林.機器學習和數據挖掘在個性化推薦系統中的應用[J].中國計算機學會通訊,2013(9).
[2]蘇慶等.改進模糊劃分聚類的協同過濾推薦算法[J].計算機工程與應用,2019(5).
[3]雷曼等.基于標簽權重的協同過濾推薦算法[J].計算機應用,2019(3).