張 艷
(蘇州旅游與財經高等職業技術學校 江蘇 蘇州 215104)
隨著電子商務的蓬勃發展,商品信息的急速增長導致用戶在面對龐大的選擇時面臨困難。電子商務推薦系統應運而生,成為緩解信息過載問題、提升用戶體驗的核心技術之一[1-2]。本文專注于基于大數據分析的電子商務推薦系統,旨在提出創新的商品推薦系統框架,深入研究其中基于協同過濾的推薦方法[3-4]。通過深入理解協同過濾方法在推薦系統中的應用,本研究對該方法做了優化以滿足大數據環境的需求,提高推薦的準確性和個性化水平。
本研究提出的商品推薦系統構建了一個包含5 個關鍵層級的框架以實現全面而高效的推薦功能,包括應用層、服務層、算法層、緩存層和存儲層,如圖1 所示。

圖1 商品推薦系統框架設計
在應用層方面,系統采用了超文本標記語言(hypertext markup language, HTML)、JavaScript、Java 服務器頁面(Java server pages, JSP)和Vue 等技術,以構建用戶友好且具有響應性的前端界面。這一層級負責與用戶進行交互,提供直觀的推薦系統界面,以確保用戶體驗的優越性。服務層是推薦系統的核心,包含了獲取推薦列表、獲取搜索列表以及用戶登錄/注冊等服務。這一層級通過有效的服務接口與應用層進行通信,從而實現用戶請求的響應和處理。在算法層,推薦系統經過了數據預處理、模型訓練和模型預測3 個關鍵步驟。首先,對原始數據進行預處理,以清理和轉換數據,為后續的模型訓練做好準備;接著,在模型訓練階段,系統利用豐富的數據集進行算法學習,以建立高效的推薦模型;最后,在模型預測階段,系統根據用戶的歷史行為和個性化特征,實時地生成推薦結果。緩存層采用了本地緩存和分布式緩存Redis,以提高系統的響應速度和性能。本地緩存用于存儲頻繁訪問的數據,減少數據讀取時間;而分布式緩存Redis 則通過將數據存儲在內存中,加速了數據的檢索和傳輸,從而提升了系統的整體效率。最后,存儲層包含特征數據和業務數據。特征數據用于存儲商品和用戶的相關特征,為算法提供豐富的信息。業務數據則包含了系統的運行日志、用戶行為記錄等關鍵信息,為系統的優化和改進提供數據支持。
基于用戶的協同過濾方法是一種推薦系統中常用的策略,其基本思想是通過分析用戶與產品之間的相似性,從具有相似喜好的用戶中推薦未被目標用戶評價過的產品[5-6]。具體而言,該方法以用戶的歷史行為為依據,計算用戶之間的相似度,并基于相似用戶的評價歷史為目標用戶推薦未曾接觸過的產品。如圖2 所示,假設存在用戶1、2 和3,以及產品1、2、3 和4。通過分析用戶1 和用戶3與4 種產品的聯系,系統可以計算這兩位用戶之間的相似性。若相似性較高,即兩者在產品偏好上存在一致性,系統將基于用戶1 的歷史行為向用戶3 推薦用戶1 喜歡但用戶3 尚未關注的產品,如產品1 和4。

圖2 基于用戶的協同過濾方法
在大數據環境下,基于用戶的協同過濾方法的推薦存在一些問題:
(1)計算復雜度高。大規模用戶和產品數據集導致相似度計算的復雜度大幅增加,占用大量計算資源,影響系統的實時性和效率。
(2)稀疏性問題。隨著數據規模的增加,用戶與產品之間的評價數據呈現稀疏性,導致相似用戶的準確度下降,降低了推薦的精準性。
(3)數據隱私和安全性。在大數據環境中,用戶的個人信息可能涉及大量敏感數據。基于用戶的協同過濾方法在計算相似度時需要比對用戶行為,可能存在潛在的隱私泄露和安全性問題。
(4)個性化不足。隨著數據量的增大,基于用戶的協同過濾方法可能更傾向于推薦熱門產品,而忽略了個體用戶的特殊偏好,降低了推薦的個性化水平。
這些缺陷使得在大數據環境下基于用戶的協同過濾方法在應對復雜實際場景時面臨一系列挑戰,需要進一步優化和改進。
本研究聚焦于大數據環境下基于用戶的協同過濾推薦方法,特別關注計算復雜度高的稀疏性問題。為應對這一挑戰,研究提出了3 種關鍵方法,包括基于奇異值分解的降維處理、引入正則化項以解決稀疏性問題以及采用隨機梯度下降的優化方法進行用戶和產品特征矩陣的迭代更新。
在面對大規模數據集的情境下,為降低計算復雜度,研究采用奇異值分解(singular value decomposition, SVD)來進行降維處理[7-8]。通過對用戶-產品評分矩陣進行SVD 分解,得到低秩的近似矩陣,從而減少數據的維度,簡化了相似度計算的過程。具體而言,對于一個用戶-產品評分矩陣R,其奇異值分解表示為:
式(1)中,U為用戶特征矩陣,∑為包含奇異值的對角矩陣,VT為產品特征矩陣。通過僅保留前k個最大的奇異值及其對應的特征向量,實現了對原始矩陣的降維處理,進而降低了計算的復雜度。
為應對稀疏性問題,研究引入正則化項,通過在目標函數中添加正則化項對用戶和產品的特征進行約束[9-10]。設P為用戶特征矩陣,Q為產品特征矩陣,則目標函數為:
式(2)中,λ為正則化參數,表示Frobenius 范數。通過在目標函數中引入正則化項,研究在優化的過程中對用戶和產品的特征進行了有效的約束,緩解了稀疏性問題。
為進一步提高計算效率,研究采用了隨機梯度下降(stochastic gradient descent, SGD)優化方法[11-12]。通過使用隨機梯度下降,研究能夠在每次迭代中隨機選擇部分樣本進行更新,避免了對整個數據集的完全遍歷。具體而言,對于用戶i和產品j的評分Ri,j,采用以下更新規則:
式(3)、式(4)中,ei,j為實際評分與模型預測之間的誤差,α為學習率。通過隨機梯度下降的迭代更新,研究有效地提升了模型的收斂速度和計算效率,適應了大數據環境的需求。
本實驗的一部分核心硬件和軟件環境配置分別如表1、表2 所示。

表1 硬件環境配置

表2 軟件環境配置
系統構建的過程需要經過多個步驟,本研究按照如圖1 所示的商品推薦系統框架構建了推薦系統:
(1)應用層構建。基于Visual Studio 開發工具使用HTML、JavaScript 等前端技術進行用戶界面設計,利用Vue.js 等框架編寫前端交互邏輯,確保用戶友好的界面和流暢的交互。
(2)服務層構建。使用RESTful API 等標準設計服務接口,確保各個服務之間能夠進行有效的通信;使用Spring 框架等技術實現服務層邏輯,包括獲取推薦列表、獲取搜索列表、用戶登錄/注冊等服務。
(3)算法層構建。利用Python、Pandas 等工具進行原始數據的清理、轉換和標準化,并用TensorFlow 庫進行推薦算法的模型訓練。
(4)緩存層構建。利用Ehcache 設置本地緩存,提高對于頻繁訪問數據的讀取速度;使用Redis 分布式緩存工具,配置集群模式以及合適的緩存策略以提升系統整體的性能。
(5)存儲層構建。使用非關系型數據庫存儲用戶和產品的特征數據。設計合適的表結構或文檔模型,確保數據的存儲和檢索效率。
用戶登錄和操作的實驗流程如圖3 所示。首先,判斷用戶是否登錄,如果未登錄則直接抽取熱門商品推薦;然后,判斷該用戶是否有歷史記錄或標簽,如果是則進行推薦,否則直接抽取熱門商品進行展示。

圖3 系統推薦流程
該系統測試的搜索結果界面如圖4 所示,包含搜索框、搜索結果、實時推薦、熱門推薦等。通過搜索框,用戶能夠方便快捷地輸入關鍵詞,提高了系統的用戶友好性,搜索結果展示在頁面上,確保了信息的直觀呈現。實時推薦的即時性是用戶體驗的關鍵,通過所提優化方法系統能夠在用戶輸入關鍵詞時,迅速返回相關的實時推薦結果。熱門推薦可以吸引用戶點擊,增加用戶在網站上的停留時間,提高用戶的參與度;并且熱門推薦可以有效推廣網站上的熱門商品或服務,增加其曝光度。

圖4 用戶搜索后的系統推薦界面
用戶通過搜索框找到期望的產品,實時推薦符合其興趣,熱門推薦引導用戶發現熱門商品,這些方面的綜合表現將直接影響用戶滿意度。通過對搜索、實時推薦和熱門推薦等功能的綜合分析,可以初步證明所采用的商品推薦系統方法是可行的,進一步的用戶反饋和系統性能測試將有助于更全面、深入地評估方法的效果。
綜上所述,本文提出的電子商務推薦系統框架在大數據環境下展現了可行性。通過細致設計的層級結構,系統能夠高效地整合多種推薦算法,同時通過優化協同過濾方法,解決了計算復雜度高和稀疏性問題。在系統構建過程中,采用了現代化的硬件和軟件配置,通過綜合測試驗證了系統的性能和用戶體驗。通過實際系統構建和測試,展示了所提框架的實際應用潛力,為電子商務領域的推薦系統設計和應用提供了有益參考。未來,可在個性化推薦和系統擴展性方面進一步拓展研究,以不斷提升系統的性能和用戶滿意度。