羅遠遠
(塔里木大學信息工程學院,新疆 阿拉爾 843300)
近年來,隨著經濟持續快速發展,電子商務平臺也越來越迎合了人們的消費需求,網上銷售也成了目前最受歡迎的農產品銷售方式。中國的電子商務市場在2015年已達3.9萬億元,其中農產品的銷售額在整個電子商務市場中占據了5%的份額。截至2015年底,阿里電商平臺擁有90萬多個銷售渠道,實現了695.50億元的農產品銷售[1]。2020年1—6月份,全國零售額達51 501億元,比上年增長7.3%;網購零售額達43 481億元,比上年同期增加14.3%,在社會消費品零售總額中占據25%。尤其是在疫情期間,食品類農產品的增幅更是顯著,達38.8%[2]。如何在浩瀚的信息資源里快速找到自己想要的東西,利用推薦系統可以解決實際應用難題。農產品電子商務推薦系統可以從大量的信息中快速尋找到所需要的產品,并向消費者推薦,從而使消費者能夠順利地進行購買。當前,盡管在理論和實踐上已經取得了長足的進步,但仍有許多缺陷。推薦系統主要有兩類:一類是主動式信息過濾,將信息過濾的流程從“使用者主動搜尋”轉為“系統主動推薦”;另一類是個性化的雙邊匹配,協助使用者找出自己喜歡的或所需的小眾、非主流的商品,將使用者感興趣的商品呈現在他們面前。
目前推薦系統分為三大類。1)基于內容的推薦:向使用者推薦與其所關注的項目內容類似的項目,發掘用戶曾經喜歡過的項目的特征,并推薦類似的項目。2)基于協同過濾的推薦:通過計算用戶的行為數據,來得到用戶偏好特征,找到相似用戶或物品,給用戶推薦其最有可能喜歡的項目,目前這是最為廣泛的算法。3)混合推薦算法:將多種推薦方法融合在一起。例如基于人口統計學,協同過濾,基于內容和知識的推薦,將這些單一的推薦算法根據各自的優缺點進行混合,來達到更好的推薦效果。
協同過濾(Collaborative Filtering)算法是推薦系統中影響最大、應用最廣泛的算法。協同過濾就是協同大家的反饋、評價和意見一起對海量信息進行過濾,從中篩選出目標用戶可能感興趣的信息的推薦過程。基于鄰域的協同過濾主要分為兩類,分別是基于用戶的協同過濾算法和基于項目的協同過濾算法。
基于用戶的協同過濾算法是根據用戶對項目的歷史行為尋找相鄰或相似的用戶,并向用戶推薦鄰居或相似用戶所喜愛的商品。通過用戶的歷史行為數據可以了解用戶對產品的偏好,并對這些喜好進行度量和打分。通過分析不同用戶對同一產品的態度及喜好程度,計算用戶之間的關系,在有共同愛好的消費者之間進行產品推薦。總的來說,假設與某人興趣相似的用戶喜歡的商品,某人也會喜歡,關鍵是尋找相似用戶、用戶相似度度量。這里我們用一個簡單的例子來說明一下,假設用戶a喜歡物品A和物品C,用戶c喜歡物品A、物品C及物品D,這個時候用戶a與用戶c相似,就會把物品D推薦給用戶a,如圖1所示。

圖1 基于用戶的協同過濾推薦
基于項目的協同過濾算法是通過用戶對項目的反饋或偏好尋找相似或相關的項目,并依據用戶的歷史反饋和項目相似程度為用戶推薦項目。基于項目的協同過濾推薦的基本原理與基于用戶的協同過濾算法類似,通過用戶對產品的喜好,找到產品的相似性,并根據用戶的歷史偏好,向用戶推薦類似的產品。這里同樣簡單舉例說明一下,假設用戶a喜歡物品A和物品C,用戶c喜歡物品A,那么物品A與物品C相似,就會把物品C推薦給用戶c,如圖2所示。

圖2 基于項目的協同過濾推薦
基于模型的協同過濾推薦就是基于樣本的用戶喜好信息,訓練一個推薦模型,并根據其對用戶喜好的實時信息進行預測,計算推薦。基于模型的推薦算法,依托于一些機器學習的模型,通過離線進行訓練、在線進行推薦。該方法的不足之處在于離線模型的訓練時間較長,但其預測精度較高。基于模型的推薦系統的優勢是節省訓練空間和預測速度快。基于模型的協同過濾是當前最流行的協同過濾類型,當前只在部分用戶與部分項目之間存在評分數據,而在其他部分評分數據是空白的情況下,利用現有的少量數據對這些空白的用戶與商品的評價進行預測,從中找出得分最高的商品。常用的訓練模型有關聯算法、聚類算法、分類算法、回歸算法、矩陣算法、神經網絡、圖模型、隱式語義模型。
農產品電子商務領域中的協同過濾推薦算法的關鍵在于算法能夠準確地確定目標用戶的最近鄰居,而確定最近鄰居的前提是先計算出各用戶之間的相似性,目前研究者們研究使用的相似度計算主要有:余弦相似度,杰卡德(Jaccard)相似度,皮爾森相關系數,歐氏距離,基于云模型的相似度,修正的余弦相似度和相關相似度。其中,杰卡德(Jaccard)相似度、余弦相似度和相關相似度被廣泛地用于電子商務領域。
目前,國內外關于農產品推薦應用最多的算法是協同過濾算法,并對其進行了改進。于金明[3]通過分析農產品電子商務交易的特征選定基于項目的協同過濾算法作為基礎算法,提出IPSS項目相似性度量方法,有效地改進了冷啟動問題;對于可擴展性問題,對算法進行改進,提出融合項目譜聚類的協同過濾算法,該方法可以有效地實現農產品的推薦,推薦效果優于傳統算法。鄭云飛等[4]針對農產品的特點實現了基于用戶的農產品電子商務協同過濾推薦系統,并采用了激勵評分機制來緩解稀疏性問題,使農產品的推薦效果更好。周朝進等[5]提出了一種基于K-Means算法的農產品改進協同過濾算法,該算法將特征相近的用戶集中到同一簇中,然后,針對某一個簇中的用戶群的農產品相似度進行計算,最終得出推薦的農產品。劉俊彤等[6]針對用戶在搜索農產品時遇到的困難以及冷啟動問題設計了一個協同過濾算法和標簽融合的農產品電子商務平臺,利用協同過濾算法將用戶最喜歡的商品進行推薦,并在此基礎上積極地挖掘出消費者的潛在需求。裘進等[7]提出了一種改進的基于物品的協同過濾算法,該方法在原有的余弦相似度公式中加入時間和用戶評分,從而得到新的相似度計算公式,以推薦精準、快速為目標,從而得到更好的推薦結果。余明艷等[8]提出了一種顯隱式結合的農產品推薦混合協同過濾方法,改進了傳統的基于用戶主觀評價的協同過濾方法,在用戶主觀評分的基礎上結合用戶瀏覽網站頁面的時間來查找用戶的最近鄰居,通過這種改進的推薦算法可以有效地提高推薦系統的準確度,進而改善農產品推薦質量。劉曉鵬等[9]通過對傳統的協同過濾算法的改進,提出了一種針對農產品的個性化推薦算法,將基于內容的協同過濾算法和基于用戶的協同過濾算法相結合,提出了一種針對農產品的混合協同過濾算法,結果表明,其提出的推薦算法能夠有效地解決農產品的個性化推薦問題。在復雜的情況下,傳統推薦技術的推薦效率并不高,而當前先進的混合推薦技術是通過一定的方法將多種推薦技術結合起來,從而有效地彌補傳統推薦技術的缺陷[10]。面向農產品推薦的實際需求,通過將基于協同過濾的推薦算法與Apriori推薦技術進行混合,形成一個混合推薦模型,來優化對農產品的推薦效果。
面向農產品的協同過濾推薦中,大部分的研究都是基于協同過濾算法的相似性計算,并針對農產品自身特性,對其冷啟動、稀疏性等問題進行優化。面向農產品的推薦系統還采用了基于Spark的研究、混合推薦技術、農產品推薦模型、基于時間效應的農產品推薦方法等。然而,由于當前電子商務規模較大,這些以農產品為導向的推薦體系仍有一定的缺陷,因此,推薦的效果并不盡如人意。
冷啟動問題包含兩個層面,分別為新用戶冷啟動和新物品冷啟動。在基于用戶的協同過濾推薦中,對于一個新用戶來講,其沒有在商品上留下瀏覽、收藏、添加購物車或購買等行為數據,因此無法知道新用戶的偏好,從而無法向新用戶進行推薦。在基于物品的協同過濾推薦中,因為新項目沒有用戶的行為數據,自然也就沒有辦法通過協同過濾的方式進行推薦。新項目冷啟動問題如果可以得到良好解決,不僅能為用戶提供新鮮的物品,還能提高網站的經濟效益。冷啟動問題面臨的挑戰更為嚴峻,因為系統無法對用戶進行準確推薦可能會導致用戶的大量流失。
稀疏性問題是影響推薦的很大一個因素,稀疏性問題是指一個推薦系統中與特定或特定相似組的用戶輸入發生過交互的數據集在整個數據集中占比過低。隨著農產品電子商務規模的不斷擴大,大量的農產品涌現,用戶評價的項目只是大型網站的一小部分,用戶的評價矩陣中的數據非常稀少。因此,當計算用戶和項目的最近鄰居時,它的精確度會下降,推薦系統的推薦質量也會大幅降低。稀疏性問題會導致新增的農產品、無交互的農產品、低交互的農產品越來越無法實現推薦集中。評分越多,評分矩陣越稠密,推薦的質量就越高。目前,人們對稀疏性問題的求解方法有多種,常用的方法有聚類、矩陣分解、矩陣填充、結合內容協同過濾等。
大數據時代來臨,網站規模的擴大、用戶量的增長以及數據量的快速增長,使得推薦系統的可擴展性問題已經成為一個需要重點關注的問題。在數量達到幾百萬的情況下,一般算法存在著大量的擴展性問題,若問題得不到很好的解決,則會對推薦系統的實時性和準確性產生很大的影響,從而影響到該系統是否愿意被廣大用戶接受。目前,很多系統需要根據用戶需求立即推薦,這就需要一個具有很高的擴展性的協同過濾系統。
隨著互聯網與信息技術迅猛發展,網絡上的信息量正爆炸式增長。在此情況下,智能推薦技術為互聯網使用者快速找到自己需要的東西提供了一種方便快捷的途徑。目前,農產品智能推薦系統中普遍采用協作過濾技術,但隨著互聯網普及率日益提高,網絡規模不斷擴大,其應用也面臨著一定的困難和挑戰。