宋雨倫,李大中,張絲雨,莊 媛,崔玲龍,王功舉,閆 龍
(聯通數字科技有限公司 數據智能事業部,北京 100013)
由于互聯網在規模和覆蓋等層面的高速發展,信息過載使得用戶找到對自己有用的信息變得困難,從而使得信息利用效率降低;同時讓商家無法找到真正的目標群體[1],且盲目擬合數據而不考慮固有偏差將導致許多嚴重問題,例如線下評估和線上指標之間的差異,損害用戶的滿意度等[2]。所以,如何提高推薦算法的精確性、可解釋性、多樣性等以獲得信息更高的使用效率和用戶更多的信任都是推薦系統研究的重點。
近年來,我國高度重視數字經濟高質量發展,同時統籌發展與安全,相繼出臺了多部相關法律法規,保障網絡空間數據流通的安全及合規。聯邦學習技術有助于解決多方數據合作中面臨的兩大挑戰:一是數據安全難以得到保障,隱私數據泄露問題亟待解決;二是由于網絡安全隔離和行業隱私,不同行業、部門之間存在數據壁壘,導致數據形成“孤島”無法安全共享[3]。
本文在保障數據使用安全合規的前提下,結合聯邦建模技術,提出了一種混合個體及群體偏好分析的聯邦推薦框架。本文主要貢獻如下:
(1)本文提出考慮組合因素的同一屬性間偏好度分析和結合信息熵的不同屬性間在意度分析方法,通過糾正與真實興趣屬性具有強關聯性的非興趣屬性影響,初步解決了算法的過擬合問題,增強了算法的可解釋性。
(2)本文提出了一種混合偏好分析的聯邦推薦框架(Mixed Preference Analysis Federated Recommendation Framework,MPA-FRF),通過基于聯邦的相似興趣用戶分群模塊找到用戶所在興趣群,結合個體和群體超參權重組合、個體偏好分數集合、個體所在群體偏好分數集合進行資源推薦,緩解了推薦系統存在的過度專業化問題,提高了算法在特定任務上的表現。
在推薦算法研究領域,基于內容的推薦是非常主要的一個方向,基于內容過濾的推薦技術的核心思想是:以用戶歷史選擇記錄或偏好記錄作為參考推薦,挖掘其他未知的記錄中與參考推薦關聯性高的項目作為系統推薦的內容[4]。但基于內容的推薦存在一些問題,比如缺乏屬性之間關系的偏好分析;用戶只能獲得其用戶畫像中已知的或已定義的物品的推薦,阻礙了用戶發現新物品或其他選擇(過度專業化問題)[5];與興趣屬性具有強關聯性的非興趣屬性偏差等問題。這會導致當項目畫像構建水平不夠充分時,只分析個人興趣會影響用戶畫像構建的準確性[6]。
為了改進基于內容的推薦缺乏分析屬性之間更深層的關系的缺陷,Soares等人通過分析用戶的歷史行為來形成該用戶的需求偏好,并結合項目的特征進行推薦[7]。高陽等人通過結合項目之間的相似性,分析特征值頻率分布規律來進行推薦[8]。Qiao等人利用公共子序列進行距離匹配并結合加權思想進行項目推薦[9]。這類算法都分析了用戶自身特征和屬性間的復雜關系,緩解了過擬合問題,然而并沒有解決過度專業化問題;且它們的計算思想沒有考慮組合因素,可能會產生由于某些興趣屬性與非真實興趣屬性具有強關聯性而產生不準確的預測結果。
為了改進基于內容的推薦存在的過度專業化問題,國內外學者提出基于內容的推薦結合協同過濾可在一定程度上補充用戶的興趣畫像。這種方法的實質是混合推薦算法。何登平等人提出一種基于多源信息聚類和受限玻爾茲曼機的混合推薦算法[10],通過聚類分析和加權融合的方式解決協同過濾算法中數據稀疏性問題,同時提高了推薦算法的準確性。由于這類方法本質都是協同過濾等統計學方法來結合群體信息進行推薦補充,并不能實現對屬性間偏好分析,以達到更有效的推薦和更有說服力的解釋性。
因此,本文針對基于內容的推薦算法存在的如過度專業化、過擬合、缺乏可解釋性問題,提出了一種混合個體及群體偏好分析的聯邦推薦框架,結合聯邦建模技術,直觀地反映了用戶及用戶所在興趣群體的同屬性-異屬性偏好分析結果,提升推薦系統的可解釋性,同時向用戶推薦更符合其需求偏好的資源。
如圖1所示,本推薦框架包含三個模塊:基于隨機森林的偏好分析模塊、基于聯邦的相似興趣用戶分群模塊、基于混合偏好分析的推薦模塊。基于隨機森林的偏好分析模塊是一種考慮組合因素的同一屬性間偏好度和結合信息熵的不同屬性間在意度的分析方法,利用該算法可以得到個體和個體所在興趣群體對資源的同屬性和異屬性偏好分析信息;在基于聯邦的相似興趣用戶分群模塊中,參與方A利用自有數據將目標興趣較為明確的用戶進行聚類,提供聯邦建模標簽,參與方B利用自身數據建立興趣領域相似度矩陣,提供與目標領域相關興趣的特征信息,進行縱向聯邦學習[11],構建用戶興趣分群聯邦模型M;在混合偏好分析的推薦模塊中,通過網格遍歷群體和個體的超參權重組合,此后當一個待預測(用戶,資源)組合輸入后,先對用戶進行興趣群體判斷,再結合個體和群體超參權重組合、個體偏好分數集合、個體所在群體偏好分數集合,輸入預測模型計算資源對該用戶的推薦分數,最后遍歷所有資源,取前N個資源進行推薦。
本節通過挖掘隨機森林模型內部的信息,結合組合因素和信息熵來實現用戶對資源的偏好分析。偏好分析分為兩部分,分別是用戶對資源同一屬性間偏好度分析和用戶對資源不同屬性間在意度分析。
2.1.1 考慮組合因素的同一屬性間偏好度分析
同一屬性間偏好度指,用戶對某類資源中某一屬性各屬性值間的偏好度排序,例如對汽車類別下油耗等級中高油耗、中油耗、低油耗進行排序。偏好度的定義為在用戶喜歡的組合中,即用戶的隨機森林樹模型中,葉子節點為1的分支中各屬性的修正投票值。這樣定義的原因是存在與用戶興趣屬性具有強關聯性的非興趣屬性,例如一個人由于職業原因需要購買很多醫學用品,由于醫學這個屬性和白色具有強相關性,因此表面上看這個人買了很多白色物品,但不能得出其喜歡白色超過其他顏色的結論,當一個人在不同屬性組合中,在顏色這個屬性上總是白色才能說明其顏色偏好。
故將用戶對資源同一屬性間偏好度描述為:

(2)設其中Vk是資源的某種屬性的集合(如顏色),屬性值vi∈Vk(如白色),perc(vi)是所有分支下(包括葉子節點1和0)vi在其所在屬性集合Vk中的數量占比,perc(vi)=n(vi)/n(Vk),則屬性值vi的同一屬性偏好分數為s(vi)=sinit(vi)/perc(vi);
(3)遍歷所有屬性值,得到目標用戶對資源的同一屬性偏好度列表。
過程如圖2所示。
2.1.2 結合信息熵的不同屬性間在意度分析
不同屬性間在意度指,用戶對某類資源中不同屬性間各屬性值的在意度排序,例如對汽車類別油耗、排量、價格、保值率等各屬性的在意值排序,在意度可以定義為用戶在該屬性的各項值在喜歡和不喜歡的資源中分布的信息熵,且在意度與信息熵呈反比關系。比如一個用戶在油耗和保值率中的資源油耗信息熵小于保值率的信息熵,即在喜歡和不喜歡的資源中,保值率分布混亂,油耗分布相對穩定,說明該用戶更在意油耗這個屬性。
依據決策樹生成過程中信息熵增益較多的屬性生成距離頂端較近的節點的原理,將用戶對資源不同屬性間的在意度描述為:
(1)設資源的屬性集合為A={a1,a2,…,an},屬性ai所在層數為x(ai),其中樹頂端為層數1,逐層遞增,隨機森林的最大深度為max_depth,分支數為n,依次遍歷每條分支,若屬性ai在該分支,則在該分支的不同屬性在意得分為scored,branch(ai)=max_depth-x(ai),若屬性ai不在該分支,則在該分支的不同屬性在意得分為scored,branch(ai)=max_depth-x-1,其中x為該分支層數;

(3)遍歷所有屬性,得到目標用戶對資源的不同屬性在意度列表。
過程如圖3所示。

圖3 不同屬性間在意度分析流程圖
在實際分群中,有些用戶在某些領域的行為較少,興趣不明確,不具備直接聚類來得到所在相似群體興趣偏好的條件。理想的群體推薦系統不僅應該能夠準確地學習用戶的個人偏好,而且能夠從數據中準確學習偏好聚合策略[12]。本文的目標是利用聯邦的方式在敏感數據不泄露的前提下,增加相似興趣數據維度,使得在目標興趣領域不明確的用戶也可以判斷其興趣群體,為此提出基于聯邦的相似興趣用戶分群模塊。
該模塊利用聯邦平臺[13],該平臺采用去中心架構,支持聯邦學習、隱私求交、聯邦分析等功能,可處理百億級數據。
算法具體如下:
(1)精確的目標興趣用戶分群:參與方A利用自有數據將目標興趣較為明確的用戶進行聚類,設得到k類需求偏好不同的用戶;
(2)興趣領域相似度矩陣建立:參與方B利用自身數據將不同興趣領域的數據進行分類統計,利用TF-IDF算法計算得到各領域的向量,再利用余弦相似度算法計算興趣領域之間的相似度,得到興趣領域相似度矩陣,篩選得到與目標興趣領域相似的興趣領域;
(3)基于聯邦的用戶相似興趣分群模型生成:參與方A提供目標興趣領域用戶分群結果,參與方B依據興趣領域相似度矩陣,提供與目標領域相關的特征信息,進行縱向聯邦學習,構建用戶興趣分群聯邦模型M。
過程如圖4所示。

圖4 基于聯邦的相似興趣用戶分群模塊流程圖
此模塊主要思想是結合個體偏好分數信息、用戶所在群體偏好分數信息、最優混合個體和群體偏好權重進行資源推薦。

則對于每個資源i用戶u的分數為:
(1)

(2)
其中xk,i表示資源i在k屬性上取值,xk,r表示目標在k屬性上取r值;若該屬性k不可以量化,則當資源i在屬性k上的值與r相同時,qk,r=1,當資源在屬性k上的值與r不同時,qk,r=0。η表示用戶群U的不同屬性在意度權重,γ表示用戶群U的相同屬性偏好度權重,此權重系數由實驗部分通過網格遍歷得出最優組合。
最后,遍歷候選資源對用戶的推薦分數,將分數從高到低排序,取前N個資源對用戶進行推薦。通過群體和個人興趣偏好相結合,可以緩解基于內容推薦的過度專業化問題,對用戶進行分群后,還可以針對不同的用戶群體制定不同的營銷方案,提供針對性的產品和服務,提高客戶滿意度[14]。
過程如圖5所示。

圖5 基于混合偏好分析的推薦模塊
其中混合個體及群體偏好計算資源混合偏好得分推薦環節執行過程如算法1所示。
算法1:混合個體及群體偏好計算資源混合偏好得分推薦算法
輸入:群體U的不同屬性間在意度列表{D1,D2,…,DK},用戶u的不同屬性間在意度列表{d1,d2,…,dK},群體U的同一屬性間偏好度列表{S1,S2,…,Sm},用戶u的同一屬性間偏好度列表{s1,s2,…,sm}。
輸出:將各個資源s(u,i)從高到低排序,取topN資源對用戶進行推薦。
①用戶所在群體U對不同屬性在意度權重列表為{α1,α2,…,αK};
②用戶對不同屬性在意度權重列表為{β1,β2,…,βK};
③用戶u在k屬性上取r屬性值的概率pk,r,用戶所在群體U在k屬性上取r屬性值的概率是Pk,r;
④for each item
⑤資源i在k屬性上取r屬性值的概率,若該屬性k可以量化,則應用式(2)進行計算,若該屬性k不可以量化,則當資源在屬性k上的值與r相同時,qk,r=1,當資源在屬性k上的值與r不同時,qk,r=0;

⑦end for
利用聯邦平臺進行建模,參與方A提供21 889個用戶的82 048條目標興趣領域線索數據,數據類型包括用戶對目標興趣領域(汽車)資源的評分數據、資源的屬性數據(油耗、排量、價格等)。參與方B提供21 889個用戶在10個與汽車相關興趣領域特征數據,如在金融理財、線下購物、旅游出行等領域的流量特征偏好分數。
在基于聯邦的相似興趣用戶分群模塊的精確目標興趣用戶分群環節,將對六款以上資源有過瀏覽行為的用戶稱為目標興趣較為明確的用戶(活躍用戶)。圖6(a)所示為活躍用戶的相似興趣分群結果。可以看到,當聚類結果為2類時,可以明顯區分。因此,在本實驗中,將目標用戶的興趣分為兩種類型,并使用2.2節中方法進行基于聯邦的相似興趣用戶分群。

圖6 不同基于興趣的分群算法結果比較
圖6(b)是基于本文提出的基于聯邦的相似興趣的用戶分群模塊對所有用戶的分群結果,圖6(c)是基于靜態屬性對所有用戶的分群結果。通過降維可視化可以看出,本文提出的基于聯邦的相似興趣的用戶分群模塊得到的結果更接近活躍用戶的興趣群體分布,從類別分布的角度來看,本文聚類方法具有較好的分類效果。
接下來使用2.1節中提出的用戶偏好分析方法對實驗結果進行進一步驗證,表1為進行偏好分析后的結果。

表1 基于隨機森林的用戶屬性偏好分析結果
其中,在同一屬性偏好分析中,數字表示用戶組對該屬性值的偏好程度,要注意,不同屬性間得分不具有可比性;在不同屬性在意度得分分析中,數字表示用戶群體對該屬性的關心程度,不同屬性的得分具有可比性。可以看出分群后的用戶興趣分為兩類,cluster_1是偏好中國制造的SUV,cluster_2是偏好日本制造的中型轎車,且同一屬性偏好分析中,后者偏好的價格、保值率比前者整體偏高,在不同屬性在意度分析中,兩類人群首先都最在意價格,其次的屬性排名中,cluster_1更在意車的款式、產國、大小,cluster_2更在意車的保值率、產國、油耗。由此可見,通過本文的偏好分析方法,可以將參與方A的客戶分為兩類人群:品質類和外觀類,這也驗證了本文的偏好分析模塊比樹模型輸出的判斷規則具有更好的可解釋性。可解釋的推薦系統不僅為用戶或系統設計人員提供推薦結果,也解釋為什么推薦此類項目。通過這種方式,有助于提高系統透明度、說服力、有效性、可信度[15]。
本節實驗首先探求本文所提框架的最佳超參——個體及群體混合偏好最優權重,然后將MPA-FRF與非混合偏好分析的聯邦推薦框架(Preference Analysis Federated Recommendation Framework,PA-FRF)、改進前的原隨機森林模型(Random Forest,RF)、結合靜態群體特征的混合偏好分析的聯邦推薦框架(Mixed Preference Analysis Federated Recommendation Framework Using static data,stc-MPA-FRF)進行對比,驗證本文所提方法的推薦有效性。
通過網格搜索選取隨機森林模型的最佳超參組合,得到當子樹的數量n_estimators=45,樹的最大生長深度max_depth=5,葉子的最小樣本數量min_samples_leaf=5時,樹模型具有最佳性能。
圖7是本文所提算法在η分別為0、0.2、0.4、0.6、0.8、1時,γ分別為0、0.2、0.4、0.6、0.8、1時模型的推薦準確率、召回率、覆蓋度、流行度(新穎性)的統計。

圖7 不同閾值下MPA-FRF算法效果比較
從圖7可知,當η=0.8、γ=0.2時所提算法具有最好的性能表現,具體而言,隨著γ的值增加,模型的準確度、召回率呈現先增加后下降的整體趨勢,覆蓋率維持不變,新穎性隨著流行度逐漸上升呈現逐步下降的趨勢。由超參的取值可見,在相似興趣群體對用戶個人的影響中,不同屬性間在意度比相同屬性間偏好度影響更多;且由于η=0.8、γ=0.2時模型準確率、召回率等均高于η=0、γ=0(不考慮群體偏好對個人的影響)時模型準確率和召回率,由此證明了MPA-FRF具有一定解決過度專業化問題的能力。
表2是選定最佳超參組合后不同方法推薦精度、召回范圍、F1值和流行度(新穎性)結果的比較。可以看出,MPA-FRF、PA-FRF、stc-MPA-FRF在F1方面均比RF高,這表明2.1節所提的基于隨機森林的偏好分析算法可以通過糾正與真實興趣屬性具有強關聯性的非興趣屬性影響,初步解決傳統基于內容算法的過擬合問題;且由于MPA-FRF在F1和新穎度方面均比stc-MPA-FRF有優勢,表明基于聯邦的相似興趣用戶分群算法在緩解傳統基于內容算法的過度專業化問題方面有一定效果。
總的來說,MPA-FRF在精確率、F1值和流行度方面表現較好,而RF方法在召回率方面具有優勢。因此,MPA-FRF方法是一個有潛力的新方法,具有在推薦系統中實際應用的可能性,特別是在需要高精度和多樣性的情況下。
本文提出了一種混合個體及群體偏好分析的聯邦推薦框架,捕捉個體真實偏好并有效結合群體偏好,通過聯邦平臺進行建模與推薦,緩解了基于內容推薦的過擬合和過度專業化問題,實驗結果表明本文算法相較于基于隨機森林的內容推薦算法在各方面指標上均有明顯提升,并且提高了推薦內容的可解釋性。