盧 露1,趙 靖2,魏登月3
(1.上海電力學(xué)院計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,上海 200090;2.安徽科技學(xué)院理學(xué)院,安徽 鳳陽 233100;3.武漢大學(xué)計(jì)算機(jī)學(xué)院,武漢 430079)
社會標(biāo)簽是Web2.0下網(wǎng)絡(luò)信息資源的一種標(biāo)注方式。對于一個(gè)特定的網(wǎng)絡(luò)資源,比如文檔、圖片或視頻等,用戶可根據(jù)自己的理解為這些資源添加一個(gè)或多個(gè)標(biāo)簽,這些標(biāo)簽可來自資源本身包含的詞匯,也可以是資源外用戶選擇的關(guān)鍵詞。它對于信息資源的有效組織和管理、信息的快速傳播和共享及用戶及時(shí)獲取更加準(zhǔn)確可靠的信息都有重要意義[1]。大多數(shù)社會標(biāo)簽系統(tǒng)允許用戶自行輸入標(biāo)簽,標(biāo)注的隨意性造成了標(biāo)簽中存在較多噪音、錯(cuò)拼、歧義以及無實(shí)際意義的標(biāo)簽。因此,國內(nèi)外學(xué)者對社會標(biāo)簽推薦技術(shù)進(jìn)行了研究,以期幫助用戶標(biāo)注相關(guān)的資源,提高標(biāo)簽的質(zhì)量。
針對目前的模型不能真實(shí)反映標(biāo)簽的生成過程或者沒有加入用戶角色等問題,本文提出了一種新的概率生成模型,該模型在統(tǒng)一的框架中融合標(biāo)注過程中的用戶、資源、標(biāo)簽3個(gè)實(shí)體,用隱含主題將三者聯(lián)系起來,進(jìn)而推導(dǎo)出在特定的用戶和資源下各標(biāo)簽產(chǎn)生的概率。
目前社會標(biāo)簽推薦的研究大致分為兩類:一是基于協(xié)同過濾的推薦技術(shù),該技術(shù)是通過用戶對網(wǎng)絡(luò)資源的標(biāo)注歷史信息來找出和當(dāng)前用戶興趣相似的用戶集,將用戶集中使用過的標(biāo)簽推薦給當(dāng)前用戶。如文獻(xiàn)[2]通過社區(qū)發(fā)現(xiàn)算法來尋找社會網(wǎng)絡(luò)中相同興趣愛好的用戶群,利用用戶群使用過的標(biāo)簽作為候選項(xiàng)進(jìn)行推薦。文獻(xiàn)[3]采用三階張量來表示由資源、用戶、標(biāo)簽構(gòu)成的社會標(biāo)簽系統(tǒng),應(yīng)用HOSVD分解算法來進(jìn)行標(biāo)簽預(yù)測。文獻(xiàn)[4]提出一種基于社會化標(biāo)注的博客標(biāo)簽推薦方法,利用相似博客的社會化標(biāo)簽作為候選標(biāo)簽集,確保了推薦標(biāo)簽的全面性和可用性。但是該類方法完全忽略了當(dāng)前標(biāo)注資源的內(nèi)容,導(dǎo)致推薦的準(zhǔn)確率不高。二是基于內(nèi)容分析的推薦技術(shù),使用網(wǎng)絡(luò)資源的內(nèi)容作為標(biāo)簽推薦的依據(jù)。該類方法根據(jù)對資源內(nèi)容表示,分為基于詞粒度特征推薦方法和基于隱含主題特征的推薦方法。詞粒度特征主要是將網(wǎng)絡(luò)資源和用戶興趣分別用關(guān)鍵詞來表示,從而在關(guān)鍵詞上進(jìn)行匹配進(jìn)而排序,將排序靠前的詞作為標(biāo)簽推薦給用戶。如文獻(xiàn)[5]利用Folksonomies對資源中的關(guān)鍵詞進(jìn)行擴(kuò)展,并將擴(kuò)展后的詞庫來匹配用戶興趣。文獻(xiàn)[6]根據(jù)用戶提供的新書簽,找出博文中的若干相似關(guān)鍵詞進(jìn)行聚類和排序,將排序靠前的關(guān)鍵詞作為標(biāo)簽推薦給博客用戶。文獻(xiàn)[7]通過標(biāo)簽的同現(xiàn)關(guān)系建立概率模型解決標(biāo)簽詞的模糊度問題,進(jìn)行個(gè)性化推薦。該類方法特征表示簡單,但總的來說存在如下問題:
(1)詞條作為文檔特征時(shí)常存在由于粒度太細(xì)而造成的稀疏性,影響推薦效果。
(2)相同的詞條對不同的用戶,可能代表著不同的含義。在進(jìn)行個(gè)性化推薦時(shí),如果對這些詞條不從語義上加以區(qū)分,就會造成推薦的結(jié)果不令人滿意。
隨著主題模型的出現(xiàn),隱含主題這一表示文檔語義特征的方法被廣泛使用,其中大多數(shù)都以Blei等人提出的隱含狄利克雷分配模型為基礎(chǔ)。它是一種無監(jiān)督的概率生成模型,其思想是文章的每個(gè)詞都是通過“以一定概率選擇了某個(gè)隱含主題,并從這個(gè)隱含主題中以一定概率選擇某個(gè)詞語”這樣一個(gè)過程生成的。將文檔、隱含主題和詞以概率的形式聯(lián)系起來,使文檔和詞映射到低維的隱主題空間,克服了詞的稀疏和語義問題。根據(jù)LDA模型的思想,研究者認(rèn)為在社會標(biāo)注系統(tǒng)中,標(biāo)簽也能夠由隱主題生成,同樣能夠設(shè)計(jì)概率生成模型來描述社會標(biāo)注系統(tǒng)中標(biāo)簽在資源上的生成過程。將用戶、資源、標(biāo)簽映射到隱含主題空間進(jìn)行匹配和推薦。目前提出的模型存在下列問題:
(1)有些模型[8]在構(gòu)造標(biāo)簽生成過程時(shí),認(rèn)為文本中的詞匯和標(biāo)簽由同樣的隱含主題生成。而實(shí)際上文本是作者提供的,標(biāo)簽是讀者提供的,他們具有不同的興趣和背景,這類模型沒有將文本中詞的生成過程和標(biāo)簽的生成過程進(jìn)行區(qū)分,不符合真實(shí)的標(biāo)注過程。
(2)有些模型[9]雖然區(qū)分了標(biāo)簽和文本的不同生成過程,但沒有考慮用戶的角色,與用戶是分離的,推薦過程需要加入額外的用戶興趣表示方法。
(3)有的模型[10]雖然加入了用戶的角色,但是推薦是針對群體用戶或社區(qū)用戶,個(gè)性化效果很差。
本文提出了一種新的概率生成模型,該模型能夠真實(shí)模擬用戶標(biāo)注文檔的過程,在統(tǒng)一的框架中融合標(biāo)注過程中的3個(gè)實(shí)體(用戶、資源、標(biāo)簽),用隱含主題將三者聯(lián)系起來,進(jìn)而推導(dǎo)出在特定的用戶和資源下各標(biāo)簽產(chǎn)生的概率。該模型推薦的標(biāo)簽不僅能夠契合文檔的主題,還能自適應(yīng)地滿足用戶的興趣。
本文設(shè)計(jì)了一種新的概率產(chǎn)生式模型來模擬用戶在網(wǎng)頁上的真實(shí)標(biāo)注過程,該模型將文檔產(chǎn)生和標(biāo)簽生成作為2個(gè)獨(dú)立的過程。首先用戶在標(biāo)注文檔之前,文檔已經(jīng)生成,這個(gè)過程可用一個(gè)基本的LDA模型來模擬。此后生成標(biāo)簽時(shí),需要先抽樣標(biāo)簽的隱含主題,認(rèn)為標(biāo)簽的隱含主題來源于文檔中出現(xiàn)的主題或者是用戶興趣主題,將用戶角色引入其中,最后通過抽樣的隱含主題產(chǎn)生標(biāo)簽。通過可見的標(biāo)簽序列和文檔中的詞序列估算出模型中的各個(gè)參數(shù),比如文檔的主題分布和用戶的興趣主題分布、標(biāo)簽的主題分布等。利用這些參數(shù)進(jìn)行后續(xù)標(biāo)簽推薦。
如圖1所示,該模型主要由兩部分構(gòu)成,虛線部分為基本的LDA模型,用來構(gòu)造文檔中詞語的生成過程,對于長度為Nd的文檔d中,單詞w的生成過程為:首先根據(jù)主題在文檔上的分布選擇主題z,然后根據(jù)單詞在主題上的分布選擇單詞w,這個(gè)過程執(zhí)行Nd次,即生成最后的文檔d。左邊的部分為標(biāo)簽生成過程。當(dāng)用戶u瀏覽文檔d選擇標(biāo)簽t時(shí),首先要確定標(biāo)簽t的主題z,z的選擇有2種來源,一種來自于文檔d中出現(xiàn)過的主題,另一種直接來自用戶興趣主題,其中,圖中彎曲和虛線箭頭分別對應(yīng)2種不同的情況。對每一個(gè)用戶u,用標(biāo)志值X來控制用戶的選擇(X滿足 Binomial(λu)分布),這個(gè)過程共執(zhí)行Md次(Md為用戶u對文檔d標(biāo)注的標(biāo)簽個(gè)數(shù))。

圖1 用戶-內(nèi)容聯(lián)合標(biāo)注模型
模型的生成過程如下:
(1)文檔集D中的文檔d,根據(jù) Dirichlet(αd)分布可得到文檔d的主題分布。其中,αd為文檔在主題上的Dirichlet分布的超參數(shù)。
(2)假如文檔d包含K個(gè)主題,對于任一主題k,根據(jù)Dirichlet(βw)分布可得到詞w在主題k上的概率分布;根據(jù)Dirichlet(βt)分布可得到標(biāo)簽t在主題k上的概率分布。其中,βw和βt分別為詞w和標(biāo)簽t在主題上的Dirichlet分布超參數(shù)。
(3)對于用戶集U中的任何一個(gè)用戶u,可以根據(jù)Dirichlet(αu)可得到用戶u在主題上分布 θ(u)(αu為用戶u在主題上的Dirichlet分布的超參數(shù))。
(4)文檔d中的任一詞wi生成過程如下:(文檔長度為Md)。
2)根據(jù)詞在主題zi上的多項(xiàng)式分布得到詞wi。
(5)用戶集U上的每一個(gè)用戶u,通過Beta(γ)分布得到用戶選擇概率λu。其中,λ為Beta分布的超參數(shù)。
(6)用戶u對文檔d標(biāo)注生成標(biāo)簽tj的過程如下(此過程要運(yùn)行Md次):
1)通過 Binomial(λu)分布生成標(biāo)志值x;
2)如果 x=1,此時(shí)標(biāo)簽的主題由文檔主題產(chǎn)生:
①找出文檔d中的所有的詞所對應(yīng)的主題集合{zw1,zw2,…,zwNd},這些主題是服從均勻分布的,可以根據(jù)Uniform(zw1,zw2,…,zwNd)分布得到標(biāo)簽的主題 ztj;
②根據(jù)標(biāo)簽在主題 ztj上的分布得到標(biāo)簽tj。
3)如果x=0,此時(shí)標(biāo)簽的主題由用戶的興趣產(chǎn)生:
①根據(jù)用戶興趣的主題分布 θ(u)得到標(biāo)簽主題 ztj;
②根據(jù)標(biāo)簽在主題 ztj上的分布得到標(biāo)簽tj。
該模型主要有以下4個(gè)參數(shù)需要估計(jì):(1)文檔-主題分布 θ(d);(2)主題-詞分布 φ(w);(3)主題-標(biāo)簽分布 φ(t);(4)用戶-主題分布 θ(u)。通常采用生成模型參數(shù)估計(jì)方法有變分推理、期望最大化算法(Expectation Maximization,EM)以及Gibbs抽樣等方法。與其他2種方法相比Gibbs抽樣方法更簡單,且效率更高,因此,本文模型的參數(shù)估計(jì)選用Gibbs抽樣方法。
在LDA模型的參估計(jì)中,Gibbs算法沒有將 θ(d)和φ(w)作為參數(shù)直接計(jì)算,而是不斷抽樣詞匯對于主題的后驗(yàn)概率p(z| w),間接求得 θ(d)和φ(w)的值。對單詞的主題抽樣過程是一個(gè)馬爾科夫鏈狀態(tài)不斷變化的過程,直到詞匯對主題的后驗(yàn)概率收斂、狀態(tài)穩(wěn)定為止。本文模型相當(dāng)于LDA模型基礎(chǔ)上增加了一條馬爾科夫鏈,同時(shí)來模擬標(biāo)簽的生成過程。與LDA模型類似,首先抽樣詞是對于主題分布的后驗(yàn)概率和標(biāo)簽對主題分布的后驗(yàn)概率。
計(jì)算詞對于主題分布的后驗(yàn)概率抽樣如式(1)所示:

對標(biāo)簽對于主題分布的后驗(yàn)概率抽樣時(shí)分為2種情況,當(dāng)選擇開關(guān)x=0時(shí),標(biāo)簽的主題根據(jù)用戶主題分布生成,此時(shí)標(biāo)簽對主題的后驗(yàn)概率抽樣公式為:

當(dāng)選擇開關(guān)x=1時(shí),標(biāo)簽的主題根據(jù)當(dāng)前文檔的主題分布生成,此時(shí)標(biāo)簽對主題的后驗(yàn)概率抽樣公式為:

當(dāng)上述公式迭代一定次數(shù)狀態(tài)穩(wěn)定后,對于每個(gè)單一樣本,用以下公式求出模型的參數(shù)值:

實(shí)驗(yàn)數(shù)據(jù)來源于目前較流行的Web2.0網(wǎng)站Delicious,Delicious是2003年創(chuàng)辦的一個(gè)網(wǎng)址書簽收集分享網(wǎng)站,允許用戶使用自己的詞典為網(wǎng)站上的資源賦予各種各樣的標(biāo)簽。從該網(wǎng)站獲取2010年1月到3月的社會標(biāo)注數(shù)據(jù)集。過濾掉那些包含標(biāo)簽少于5,或者包含的詞語少于20的頁面,并從頁面中提取出用戶和標(biāo)簽列表。最終實(shí)驗(yàn)數(shù)據(jù)包括31190個(gè)Web頁面、410個(gè)用戶和18740個(gè)獨(dú)立標(biāo)簽。在實(shí)驗(yàn)中隨機(jī)選擇20%的Web頁面以及與它相關(guān)聯(lián)的用戶和標(biāo)簽作為測試數(shù)據(jù),其他的80%的數(shù)據(jù)作為訓(xùn)練數(shù)據(jù)集。
對于測試文檔d和用戶u,利用式(8)計(jì)算標(biāo)簽td產(chǎn)生的概率:

其中,p(td|zk),p(xtd),p(zk|u)可以通過訓(xùn)練模型獲得;ptest(zk|d)可以通過在測試集中用Gibbs抽樣的方法獲得(相當(dāng)于在測試集中重新運(yùn)行一次LDA模型)。對于特定的用戶和文檔,通過本文提出的模型,可以計(jì)算出生成各個(gè)標(biāo)簽的概率值,為了便于實(shí)驗(yàn)評估,將概率值大于50%的標(biāo)簽作為最后的推薦標(biāo)簽。
實(shí)驗(yàn)采用精準(zhǔn)率(precision)、召回率(recall)、F1值作為評估標(biāo)準(zhǔn)。標(biāo)簽推薦的精準(zhǔn)率為正確推薦標(biāo)簽占推薦標(biāo)簽總數(shù)的百分比。

其中,trec(u,r)為通過本模型得出的用戶u推薦給頁面r的標(biāo)簽;t(u,r)為用戶實(shí)際分配給頁面r給標(biāo)簽。
標(biāo)簽推薦的召回率為正確推薦標(biāo)簽占標(biāo)簽總數(shù)百分比。

用戶-內(nèi)容聯(lián)合標(biāo)注模型中涉及到5個(gè)參數(shù),其中,αd,αu,βw,βt均為Dirichlet分布的超參數(shù),λ為Beta分布的超參數(shù)。對于每個(gè)參數(shù)測試了一系列值,發(fā)現(xiàn)參數(shù)值對最后輸出結(jié)果影響很小,它們只是影響Gibbs抽樣算法的收斂速度,而文獻(xiàn)[11]也證明了這一點(diǎn),主要原因是它們只是影響模型參數(shù)的先驗(yàn)概率,對后驗(yàn)概率影響不大。因此,在實(shí)驗(yàn)中選擇 αd=0.3,αu=0.3,βw=0.05,βt=0.05,γ=0.5。首先要驗(yàn)證本模型的有效性,即模型在抽樣迭代一定次數(shù)后是否能夠收斂,其次隱含主題K的個(gè)數(shù)設(shè)定也是模型的關(guān)鍵,即當(dāng)K取多少時(shí),模型有較好的預(yù)測能力。
首先關(guān)于模型估值方法的收斂性,可以看出在求單詞對主題的后驗(yàn)概率分布時(shí),是利用Gibbs抽樣的方法對一個(gè)基本的LDA模型參數(shù)估值,這是一個(gè)馬爾科夫鏈狀態(tài)不斷變化的過程,已被證明是能夠收斂的。在抽樣過程的前期階段,由于對后驗(yàn)概率的模擬不夠充分,Gibbs抽樣結(jié)果還不是很精確,過了前期階段以后,Gibbs抽樣結(jié)果開始慢慢逼近目標(biāo)分布,并將最終處于一個(gè)穩(wěn)定的狀態(tài)。在求標(biāo)簽對主題的后驗(yàn)概率分布時(shí)相當(dāng)于是2個(gè)基本的LDA模型的線性組合,因此利用Gibbs抽樣的方法計(jì)算同樣能夠收斂,該模型是有效的。
如圖2所示為觀察模型在不同的K值、不同的迭代次數(shù)下F1值的變化曲線。

圖2 不同主題數(shù)在不同迭代次數(shù)下的F1值曲線變化
可以看出,對于每一個(gè)K值隨著迭代次數(shù)的不斷增加,開始階段F1值均是不斷增大的。算法在迭代次數(shù)達(dá)到50次時(shí),F(xiàn)1值均能趨于平穩(wěn),收斂到穩(wěn)定值,說明本文模型是有效的。
本文還觀察了隱含主題個(gè)數(shù)對模型預(yù)測能力的影響,從圖中可以看出,當(dāng)K值從10變化到80時(shí),F(xiàn)1收斂值不斷增加,當(dāng)K值變化到160時(shí),F(xiàn)1值收斂值反而降低,所以K值的選擇要適中不能過大或過小,認(rèn)為K=80是一個(gè)合理的隱含主題數(shù),此時(shí)模型具有最好的標(biāo)簽預(yù)測能力。
為了驗(yàn)證本文模型的標(biāo)簽預(yù)測能力,本文同文獻(xiàn)[9]提出的CorrLDA模型和文獻(xiàn)[12]提出的CI-LDA模型進(jìn)行比較,這2個(gè)模型都是利用概率產(chǎn)生式模型來進(jìn)行標(biāo)簽推薦的,如圖3所示。實(shí)驗(yàn)中3種模型的迭代次數(shù)均設(shè)為80??梢钥闯?,隨著隱含主題數(shù)的增加,3種模型的F1值都是不斷增加的,在不同的隱含主題數(shù)下,本文的模型相比于其他的2種模型有更好的標(biāo)簽預(yù)測能力。在CorrLDA模型中,標(biāo)簽的主題只能由文檔中出現(xiàn)的主題產(chǎn)生,一定程度上限制了標(biāo)簽的主題來源,使得標(biāo)簽完全依賴于文本內(nèi)容,而事實(shí)上有些標(biāo)簽是根據(jù)用戶的理解添加的,與文檔內(nèi)容無關(guān),該模型沒有反映用戶真實(shí)的標(biāo)注過程,適應(yīng)性不強(qiáng)。而在CI-LDA模型中,標(biāo)簽的生成過程和文本的生成過程完全分離,是2個(gè)完全獨(dú)立的過程,這樣使得生成的標(biāo)簽可能完全和本文內(nèi)容無關(guān),也影響了模型的預(yù)測能力。本文提出的模型相當(dāng)于是上述2個(gè)模型的調(diào)和,標(biāo)簽的隱含主題同時(shí)受用戶興趣和文檔內(nèi)容的影響,真實(shí)反映了用戶的標(biāo)注過程,具有更好的泛化能力。

圖3 3種方法的標(biāo)簽預(yù)測能力結(jié)果比較
本文提出一種用戶-內(nèi)容聯(lián)合標(biāo)注模型,該模型引入用戶信息,體現(xiàn)出標(biāo)簽的產(chǎn)生同時(shí)受用戶和資源內(nèi)容影響這一重要特征,對社會標(biāo)注系統(tǒng)進(jìn)行建模更為真實(shí)。實(shí)驗(yàn)結(jié)果表明,該模型相對于以往的2種概率產(chǎn)生式模型,具有更好的標(biāo)簽預(yù)測能力。此外,模型中估計(jì)的參數(shù),如用戶的興趣分布、資源的主題分布等,能很容易地推廣到個(gè)性化檢索、文本分類等其他數(shù)據(jù)挖掘領(lǐng)域中。
[1]Mathes A.Folksonomies-cooperative Classification and Cornmunication Through Shared Metadata[EB/OL].(2011-10-21).http://www.adammathes.com/academic/Computer-mediatedcornmunicationfolksonomies.html.
[2]Yuan Zhenming.A Social Tagging Based Collaborative Filtering Recommendation Algorithm for Digital Library[C]//Proceedings of the 13th International Conference on Asia-Pacific Digital Libraries.Beijing,China:[s.n.],2011:192-201.
[3]Symeomdis P,Nanopoulos A.A Unified Framework for Providing Recommendations in Social Tagging Systems Based on Ternary Semantic Analysis[J]. IEEE Transactions on Knowledge and Data Engineering,2009,22(2):179-192.
[4]趙亞楠,董 晶.基于社會化標(biāo)注的博客標(biāo)簽推薦方法[J].計(jì)算機(jī)工程與設(shè)計(jì),2012,33(12):4609-4613.
[5]Dattolo A.On Social Semantic Relations for Recommending Tags and Resources Using Folksonomies[J].Advances in Intelligent and Soft Computing,2012,98(13):311-326.
[6]Mishne G.Autotag:A Collaborative Approach to Automated Tag Assignment for Weblog Posts[C]//Proceedings of the 15th International Conference on World Wide Web.Edinburgh,UK:[s.n.],2006:157-164.
[7]許棣華,王志堅(jiān).一種基于偏好的個(gè)性化標(biāo)簽推薦系統(tǒng)[J].計(jì)算機(jī)應(yīng)用研究,2011,28(7):2573-2576.
[8]張 斌,張 引.融合關(guān)系與內(nèi)容分析的社會標(biāo)簽推薦[J].計(jì)算機(jī)學(xué)報(bào),2012,23(3):476-488.
[9]Bundschus M,Tresp V,Rettinger A.Hierarchical Bayesian Models for Collaborative Tagging System[C]//Proceedings of the 9th IEEE International Conference on Data Mining.Miami,USA:IEEE Press,2009:365-376.
[10]Kashoob S,Caverlee J,Ding Y.A Categorical Model for Discovering Latent Structure in Social Annotations[C]//Proceedings of the 3rd International AAAI Conference on Weblogs and Social Media.San Jose,USA:AAAI Press,2009:222-229.
[11]Zhou Donghua,Bian Jiuyuan.Exploring Social Annotations for Information Retrieval[C]//Proceedings of the 17th International Conference on World Wide Web.Beijing,China:[s.n.],2008:158-165.
[12]Ramage D,Heymann P,Manning C D,et al.Clustering the Tagged Web[C]//Proceedings of the 2nd ACM International Conference on Web Search and Data Mining.Barcelona,Spain:ACM Press,2009:369-376.