一種協同過濾中的用戶相似度度量方法
【技術領域】
[0001] 本發明涉及一種協同過濾中的用戶相似度度量方法,用于實現對用戶進行高精度 的協同過濾個性化推薦,屬于計算機網絡技術領域。
【背景技術】
[0002] 隨著信息及互聯網技術的不斷涌現,人們正面臨著日益嚴重的"信息過 載"(Information Overload)問題。而推薦系統(Recommendation System)致力于幫助人 們從互聯網提供的繁雜信息中找到自己感興趣的信息。目前,推薦系統已經得到了研宄人 員的廣泛關注,并電子商務、社交網絡及智能電視等各個領域取得了大量的實際應用。一般 來說,推薦系統可以分為基于內容與協同過濾兩大類,而其中,協同過濾技術在1992年由 研宄人員提出,已經顯現出極強的可用性及高效率。協同過濾根據用戶對物品的歷史評分 記錄決定用戶或物品之間的關系,從而挖掘用戶的潛在興趣,提高用戶體驗以及商業利潤。
[0003] 協同過濾技術可分從實現策略方面分為基于模型的方法與基于內存的方法,與后 者相比前者有著兩方面的優勢。首先,基于內存的方法與待推薦的物品之間關系較小,也就 是說更容易在不同領域得到應用;其次基于內存的方法充分利用了用戶與其他用戶之間的 關系,從而更容易挖掘用戶的潛在興趣。
[0004] 而相似度度量是協同過濾的基礎步驟,只有通過度量用戶或物品之間的相似度, 才能發現其相似鄰居。近些年來,研宄人員已經提出了不少相似度度量的方法,包括:余 弦相似度(COS: Cosine-based method)、皮爾森相關系數(PCC: Pearson Correlation Coefficient)、歐式距離(ED:Euclidean Distance)等。而這些方法都有著自身存在的缺 點,COS方法關注于待比較用戶向量之間的夾角而忽視向量的長度,PCC方法比較用戶向量 的變化趨勢而忽略向量的屬性量級,ED方法雖然在距離計算中最常用,但在實用中效果往 往不好。也有學者提出結合這幾種方法以提高度量效果,但提高程度有限。造成這種度量 精度瓶頸的根本原因是現有方法沒有充分利用用戶的社會屬性信息,而這種用戶的社會屬 性信息往往更能反映出用戶的特征以及其他用戶之間的關系。
[0005] 因此亟需設計一種能夠充分考慮用戶社會屬性信息的相似度度量方法,以突破相 似度度量性能的瓶頸,為用戶提供精度更高、體驗更好的個性化服務。
【發明內容】
[0006] 發明目的:針對現有技術中存在的問題與不足,本發明提供一種協同過濾中的用 戶相似度度量方法,該方法協同過濾中能夠提高用戶之間相似度度量的準確度,提高了用 戶興趣挖掘的精度,增加了網絡用戶體驗度。
[0007] 技術方案:一種協同過濾中的用戶相似度度量方法,通過建立用戶分類屬性與數 值屬性之間的聯系,采用改進的聚類算法挖掘用戶分類信息,使得用戶分類更加準確合理; 構造相似度度量模型,綜合考慮用戶屬性信息與用戶對物品的評分信息,豐富用戶之間相 似度度量的依據,提高相似度度量精度。具體可分為三個步驟:在用戶記錄之間的距離計 算階段,針對用戶記錄的數值屬性與分類屬性,分別采用不同距離度量方法,并建立二者聯 系,形成一個全面的用戶記錄之間距離度量的方法,得到用戶記錄之間的距離RD ;在挖掘 用戶分類信息階段,根據用戶記錄之間的距離RD來判斷兩個用戶之間的差異程度,基于此 種差異改進聚類算法,對用戶記錄聚類后得到全局用戶的分組信息,每個分組內的用戶差 異較小,不同分組內的用戶差異較大;在相似度度量階段,基于已有用戶對物品的歷史評分 信息以及用戶的分類信息,得到目標用戶與其他用戶之間的相似度。
[0008] 有益效果:本發明與現有技術相比,具有以下優點:
[0009] 1.分別采用不同方式處理用戶記錄的數值屬性與分類屬性,并通過權值決定二者 在用戶記錄距離計算過程中的重要性,實現了對用戶記錄之間距離的全面度量。
[0010] 2.改進已有聚類算法,并采用該算法挖掘用戶的分類信息,以充分利用用戶的社 會屬性信息。
[0011] 3.建立統一框架,在相似度度量過程中同時考慮了用戶的社會屬性信息以及用戶 對物品的評分信息,開辟了使用用戶社會屬性信息的新途徑。
【附圖說明】
[0012] 圖1本發明實施例的相似度度量過程圖;
[0013] 圖2為本發明實施例中用戶記錄距離計算原理圖。
【具體實施方式】
[0014] 下面結合具體實施例,進一步闡明本發明,應理解這些實施例僅用于說明本發明 而不用于限制本發明的范圍,在閱讀了本發明之后,本領域技術人員對本發明的各種等價 形式的修改均落于本申請所附權利要求所限定的范圍。
[0015] 如圖1所示,整個相似度度量方法包括用戶記錄數據集、用戶評分數據集、距離計 算、用戶分類挖掘、相似度度量部分。
[0016] 本發明具體實施時包括距離計算階段、用戶分類挖掘階段和相似度度量階段。
[0017] 距離計算階段:
[0018] 用戶距離計算部分負責基于目標用戶之間的屬性信息類別的差異,即分類屬性或 數值屬性,選擇不同的處理方式,分別計算不同類型屬性之間的距離,如圖2所示。具體處 理方式如下:
[0019] 對于數值屬性,距離ND計算公式表述如下:
[0020]
【主權項】
1. 一種協同過濾中的用戶相似度度量方法,其特征在于,包括以下步驟: 用戶記錄之間的距離計算階段: 針對用戶記錄的數值屬性與分類屬性,分別采用不同距離度量方法,并建立二者聯系, 形成一個全面的用戶記錄之間距離度量的方法,得到用戶記錄之間的距離RD ; 挖掘用戶分類信息階段: 根據用戶記錄之間的距離RD來判斷兩個用戶之間的差異程度,基于此種差異改進聚 類算法,對用戶記錄聚類后得到全局用戶的分組信息,每個分組內的用戶差異較小,不同分 組內的用戶差異較大; 相似度度量階段: 基于已有用戶對物品的歷史評分信息以及用戶的分類信息,得到目標用戶與其他用戶 之間的相似度。
2. 如權利要求1所述的協同過濾中的用戶相似度度量方法,其特征在于:用戶記錄之 間的距離計算階段中,基于目標用戶之間的屬性信息類別的差異,即分類屬性或數值屬性, 選擇不同的處理方式,分別計算不同類型屬性之間的距離。 對于數值屬性,距離ND計算公式表述如下:
其中qJP qb是兩個待比較的數值屬性,而qmin和qmax分別是該數值屬性區間的最小值 與最大值; 對于分類屬性,距離CD計算公式表述如下:
其中yjB y b是兩個待比較的數值屬性,T(y a, yb)為以yJP y b最小公共父結點為根節 點的子樹,H(T)為樹T的高度,/7^和^7為數據集中分別與yJP yb是對應的所有數值 屬性的平均值; 對于整個用戶記錄,距離RD計算公式表述如下:
其中rJPrb是兩個待比較的用尸記錄,λ為調節因子,ri[x]為記錄 ri的屬性X。
3. 如權利要求1所述的協同過濾中的用戶相似度度量方法,其特征在于:在對用戶記 錄進行聚類的過程中,采用了考慮用戶分類屬性與數值屬性的距離度量標準度量用戶之間 的差異;多次聚類迭代運算結束后得到k個用戶類別以及每個用戶類別所對應的分類中 心。
4. 如權利要求3所述的協同過濾中的用戶相似度度量方法,其特征在于,用戶分類挖 掘階段基于用戶記錄數據集,采用距離度量方法RD完善K-means聚類算法,具體步驟為: 1、 設定簇數k、閾值參數s ; 2、 隨機選擇k個用戶記錄作為初始聚類簇中心; 3、 計算每個用戶記錄到k個簇中心的距離,將每個記錄歸于與其距離最小的簇中心所 代表的簇,計算所有用戶與其所屬簇的平均距離; 4、 重新計算簇中心及每個用戶與每個簇中心的距離,更新每個用戶所屬的簇; 5、 計算所有用戶與其所屬簇的平均距離并與上一次的平均距離作比較,如果差值小于 閾值s,則停止迭代運算,完成用戶分類挖掘;否則轉至步驟4,進行下一次迭代。
5.如權利要求1所述的協同過濾中的用戶相似度度量方法,其特征在于:在計算目標 用戶與其他用戶之間相似度的過程中,綜合利用了用戶的分組信息以及用戶對物品的評分 信息,建立完善相似度計算模型,得到目標用戶與其他用戶之間的相似度sim(X,Y),公式表 述如下:
其中,Cx為用戶X所屬于聚類分組的中心,i為用戶X與Y共同評分的物品,r Xi為用戶 X對物品i的評分,^為用戶X的平均評分。
【專利摘要】本發明公開了一種協同過濾中的用戶相似度度量方法。本發明建立用戶數值屬性與用戶分類屬性之間的聯系,采用聚類算法挖掘用戶分組,綜合考慮用戶分組信息與用戶對物品的評分信息預測用戶的潛在興趣,從而完成面向用戶的個性化推薦。本發明提供的方法優勢在于能夠提高用戶之間相似度度量的準確度,提高用戶興趣挖掘的精度,增加網絡用戶體驗度。
【IPC分類】G06F17-30
【公開號】CN104731887
【申請號】CN201510110009
【發明人】顧梁, 楊鵬, 董永強
【申請人】東南大學
【公開日】2015年6月24日
【申請日】2015年3月13日