聚類結(jié)果的模糊程度的參數(shù);在每一次迭代過程中,算法 根據(jù)以下式子更新矩陣M和V的元素:
[0124]
[0125]
[0126] 其中Z = ·(〃+$,j = 1,..,c如果在兩個連續(xù)的迭代過程中目標(biāo)函數(shù)min J(M,V)的差距不小于閾值ε,算法將被終止;在對矩陣M進(jìn)行求解之后,矩陣每一行中1個 最大并且總和超過預(yù)設(shè)閾值(譬如〇. 9)的元素將被保留下來,并且進(jìn)行歸一化,因此,矩陣 M中每一行的元素之和為1。
[0127] 概括來說,本文所提出的基于多指標(biāo)評分的聚類算法首先根據(jù)多指標(biāo)評分的特點(diǎn) 分別對用戶和商品構(gòu)建相似性度量矩陣,然后將研究的聚類問題轉(zhuǎn)化為一個最優(yōu)化問題, 在此基礎(chǔ)上結(jié)合Fuzzy C-Means聚類算法的思想,成功對用戶和商品進(jìn)行雙向聚類,通過用 戶與商品在不同的簇內(nèi)的概率分布,對用戶評價商品過程中所使用的指標(biāo)偏好進(jìn)行刻畫。
[0128] 5)單一簇內(nèi)推薦
[0129] 5. 1)使用聚合函數(shù)算法得到單一簇內(nèi)推薦
[0130] 基于聚合函數(shù)的推薦方法一般假設(shè):用戶對商品的綜合評分與多指標(biāo)評分緊密相 關(guān),即綜合評分往往由多指標(biāo)評分決定。由此,基于聚合函數(shù)的推薦方法提出利用多指標(biāo)評 分構(gòu)建關(guān)于綜合評分的聚合函數(shù),由構(gòu)建的聚合函數(shù)對用戶的評分進(jìn)行預(yù)測。我們提出使 用基于主成份分析的回歸方法構(gòu)建關(guān)于綜合評分的聚合函數(shù)并將其用于計算推薦結(jié)果。主 成份分析是一種用于對數(shù)據(jù)進(jìn)行降維分析的方法,其主要核心思想是通過從數(shù)據(jù)樣本中抽 取出少數(shù)的主成份來代表全體數(shù)據(jù)樣本。如何選擇主成份主要是根據(jù)樣本數(shù)據(jù)的特征值方 差進(jìn)行的,即每次選擇的主成份都是數(shù)據(jù)樣本中特征值方差最大的。特別注意的是,根據(jù)特 征值方差選取的主成分之間是互不相關(guān)的,由此可以排除多指標(biāo)評分之間存在的共線性關(guān) 系影響。在此基礎(chǔ)上,利用選取的主成份構(gòu)建關(guān)于因變量的聚合函數(shù)。
[0131] 在使用主成份回歸對用戶構(gòu)建關(guān)于綜合評分的聚合函數(shù)之后,目標(biāo)用戶對候選推 薦商品的可能評分由下式進(jìn)行預(yù)測:
[0132]
[0133] 其中,rUil表示目標(biāo)用戶U對候選推薦商品i的預(yù)測評分,w。表示聚合函數(shù)中關(guān)于 指標(biāo)c的系數(shù),r u,表示用戶u'對商品i在指標(biāo)c上的評分,cu表示位于同一簇內(nèi)對商 品i進(jìn)行過評分的用戶集合,|CU|表示位于集合cu中的用戶的個數(shù)。
[0134] 5. 2)使用協(xié)同過濾函數(shù)算法得到單一簇內(nèi)推薦
[0135] 基于多指標(biāo)評分的協(xié)同過濾算法的核心思想是:即便用戶被聚類至同一個具有相 同或者相似的指標(biāo)偏好的簇內(nèi),他們也不是具有完全一致的指標(biāo)偏好。換而言之,在預(yù)測推 薦結(jié)果的時候,同一簇內(nèi)的不同用戶應(yīng)該被差異化對待。由此,我們提出使用基于多指標(biāo)評 分的協(xié)同過濾算法產(chǎn)生推薦結(jié)果,具體計算公式為:
[0136]
[0137] 其中,?表示用戶U的綜合評分的均值,表示用戶U'對商品i的綜合評分, sim(u,u')表示利用多指標(biāo)評分計算的關(guān)于用戶u和u'之間的興趣相似度。
[0138] 我們采取基于歐幾里得距離的計算方法,具體描述如下:
[0139] 用戶ujPuy對商品i的兩個評分向量為rXii= [rXil…,rx,J和ryii= [ryil…,ry,J, 兩者的歐幾里得距離計算如下:
[0140]
[0141] 用戶udP Uy的整體距離計算為他們共同評論過的商品的評分向量的歐幾里得距 離的均值,BP :
[0142]
[0143] 如果兩個用戶的興趣相似度越高,則他們的整體距離應(yīng)該越小;換言之,兩者之間 存在逆關(guān)系;由此,用戶udP u ¥的興趣相似度計算如下:
[0144]
[0145] 6)使用綜合函數(shù)算法得到最終推薦結(jié)果
[0146] 上面我們所采用的基于多指標(biāo)評分的雙向聚類算法,在經(jīng)過聚類后,同一個用戶 或者商品允許同時出現(xiàn)在多個簇內(nèi),提出的推薦算法每次只利用一個簇內(nèi)存在的評分?jǐn)?shù)據(jù) 預(yù)測推薦結(jié)果,這樣就會得到一個或者多個來源于不同簇的推薦結(jié)果,因此,需要找到合適 的策略將這些推薦結(jié)果綜合起來返回給目標(biāo)用戶作為最終推薦結(jié)果;由于提出的聚類算法 基于以下兩個假設(shè):①如果兩個用戶對同一個或多個商品給出了相同或者相似的綜合評分 和多指標(biāo)評分,這兩個用戶極有可能同時屬于一個或者多個簇;②如果兩個商品被一個或 者多個用戶給出了相同或者相似的綜合評分和多指標(biāo)評分,這兩個商品極有可能同時屬于 一個或者多個簇;因此,可以將聚類后的關(guān)于用戶和商品歸屬分布的分塊矩陣M中的元素, 即1,,視作該元素對象i與簇j內(nèi)其它元素的相似程度,即一個用戶與簇內(nèi)其它用戶的指 標(biāo)偏好的相似性,或者,一個商品與簇內(nèi)其它商品被用戶評論的相似性;在綜合多個推薦結(jié) 果時,需要將關(guān)于用戶和商品的相似性指示值即M li,考慮入內(nèi),由此提出以下綜合策略:
[0147]
[0148] 其中,Riu表示用戶u對商品i的最終預(yù)測評分,Pre (u, i, 1)表示用戶u對商品i 在簇1中的推薦結(jié)果;使用上述綜合策略,我們應(yīng)該注意到,只有當(dāng)用戶U和商品i同時屬 于一個或者多個簇的時候,即Mxil辛0, Myil辛0, 1 = 1,···,!!,h彡C ;我們的推薦算法才能 產(chǎn)生預(yù)測結(jié)果;另外,參數(shù)h表示在參數(shù)推薦是考慮的具有最大隸屬概率的簇的個數(shù),只有 前h個具有最大隸屬概率的簇的信息才會被考慮入內(nèi)產(chǎn)生推薦,這樣做主要是為了過濾一 定的噪聲信息。在實(shí)際實(shí)驗(yàn)中,我們選取h = 4。
[0149] 本文提出一種新穎的多指標(biāo)評分推薦算法:首先根據(jù)用戶對商品的多指標(biāo)評分信 息將用戶和商品同時進(jìn)行聚類,聚類后位于同一簇內(nèi)的用戶對簇內(nèi)的商品具有相同或者相 似的指標(biāo)偏好;在進(jìn)行雙向聚類的基礎(chǔ)上,本文提出兩種不同的算法利用聚類結(jié)果產(chǎn)生推 薦:基于主成分回歸的聚合函數(shù)算法和多指標(biāo)協(xié)同過濾算法。另外本文還提出利用用戶撰 寫的商品評論抽取多指標(biāo)評分,并將其應(yīng)用于上述聚類與推薦的過程之中,比較其與用戶 直接提供的多指標(biāo)評分的不同作用。結(jié)果表明本發(fā)明具有較高的準(zhǔn)確率。
[0150] 相比于只利用綜合評分的協(xié)同過濾算法,利用多指標(biāo)評分或者意見評分的推薦算 法能為用戶提供更高質(zhì)量的推薦結(jié)果,利用多指標(biāo)評分可以充分考慮到用戶的對各個指標(biāo) 的滿意程度,而用戶在撰寫商品評論時更傾向于評價他們所重視的指標(biāo)質(zhì)量,換而言之,相 比于用戶提供的多指標(biāo)評分,從評論中挖掘的意見評分更能反映用戶的指標(biāo)偏好,因而可 以獲得更高質(zhì)量的推薦結(jié)果,值得推廣。
[0151] 以上所述實(shí)施例只為本發(fā)明之較佳實(shí)施例,并非以此限制本發(fā)明的實(shí)施范圍,故 凡依本發(fā)明之形狀、原理所作的變化,均應(yīng)涵蓋在本發(fā)明的保護(hù)范圍內(nèi)。
【主權(quán)項】
1. 一種基于多指標(biāo)評分的推薦算法,其特征在于,包括以下步驟: 1) 指標(biāo)關(guān)鍵詞的識別 1. 1)將數(shù)據(jù)集中的每一條評論分割成句子{Xl,X2,…},并且構(gòu)造一個由具有表征性的 關(guān)鍵字組成的列表; 1. 2)根據(jù)原始的關(guān)鍵字列表,將評論語料庫中的每一個句子標(biāo)識至與其具有最大詞頻 重合度的指標(biāo); 1.3)使用x2統(tǒng)計指標(biāo)衡量每一個指標(biāo)與關(guān)鍵字之間的詞頻關(guān)系,并將前t個具有最 尚詞頻依賴關(guān)系的關(guān)鍵字加入該指標(biāo)的關(guān)鍵字列表中; 1. 4)重復(fù)上述過程直至算法滿足終止條件,即指標(biāo)的關(guān)鍵字列表保持不變或者算法的 循環(huán)次數(shù)到達(dá)閾值; 2) 意見評分抽取 在識別商品指標(biāo)及其相關(guān)的特征關(guān)鍵字之后,對評論中的語句進(jìn)行語法分析并抽取用 戶對指標(biāo)或者特征關(guān)鍵字的意見; 對于每一條評論,它關(guān)于第k個指標(biāo)的意見評分計算如下:其中,s表示表述意見的形容詞;〇Pk表示由關(guān)于第k個指標(biāo)的意見形容詞組成的集 合;l〇Pkl表示集合元素的個數(shù);score(s)表示形容詞s的意見極性,即+1、_1或者0;通過 這樣的方式,非結(jié)構(gòu)化的評論文本可以轉(zhuǎn)化為一個由意見評分組成的向量〇Uil=[〇 Uilil,… ,〇m];抽取出來的意見評分的取值范圍為[_1,1],而用戶直接給出的多指標(biāo)評分的范圍 則為[1,5],為了使得兩者具有相同的取值范圍,采用等距離轉(zhuǎn)換的方式將意見評分轉(zhuǎn)換至 區(qū)間[1,5]之內(nèi),具體轉(zhuǎn)換公式如下: 〇after=〇beforeX2+3 其中,〇^_和0aftCT分別表示轉(zhuǎn)換前后的意見評分?jǐn)?shù)據(jù),通過采用上式,可以確保多指 標(biāo)評分?jǐn)?shù)據(jù)與意見評分?jǐn)?shù)據(jù)具有相同的取值范圍,由此可以將兩者分別直接用于進(jìn)行推薦 的過程并比較它們的作用; 3) 用戶和商品相似度矩陣構(gòu)建 在推薦系統(tǒng)中,使用u= {Ui,…,uj表示用戶的集合,I= {ii,…,im}表示商品的 集合,其中n和m分別表示用戶和商品的總數(shù);一個用戶對于某一商品的評價可以表示為 一個由綜合評分和多指標(biāo)評分構(gòu)成的評分向量r= [r。,iv,rk],其中r。表示綜合評分, A…,4表示關(guān)于k個指標(biāo)的評分,該評分向量也可以由綜合評分和意見評分構(gòu)成,即r= [r。,