●鐘克吟(肇慶學(xué)院圖書館,廣東肇慶526061)
基于標(biāo)簽與協(xié)同過濾算法的學(xué)術(shù)資源推薦系統(tǒng)的構(gòu)建
●鐘克吟(肇慶學(xué)院圖書館,廣東肇慶526061)
標(biāo)簽;協(xié)同過濾;關(guān)聯(lián)資源;資源推薦
將標(biāo)簽引入高校學(xué)術(shù)資源推薦系統(tǒng),利用標(biāo)簽數(shù)據(jù),采取基于用戶的協(xié)同過濾算法和基于關(guān)聯(lián)資源的協(xié)同過濾算法相結(jié)合的方式實(shí)現(xiàn)資源推薦,既能體現(xiàn)用戶的興趣點(diǎn)和關(guān)注點(diǎn),也能兼顧資源之間的關(guān)聯(lián)性,使推薦的資源更具個(gè)性化和全面性,而且在系統(tǒng)中增加了為用戶提供推薦標(biāo)簽詞表的功能,提高了用戶使用標(biāo)簽的積極性與使用標(biāo)簽的準(zhǔn)確率。
隨著數(shù)字圖書館的迅猛發(fā)展,信息資源呈爆炸式增長。因此,一些能有效為用戶解決信息過載和信息迷航等問題的信息過濾機(jī)制也應(yīng)運(yùn)而生?;跇?biāo)簽的高校學(xué)術(shù)資源推薦系統(tǒng),可以實(shí)現(xiàn)一種利用標(biāo)簽來挖掘讀者的興趣以及資源之間的語義關(guān)聯(lián),并向讀者推薦學(xué)術(shù)資源的知識(shí)服務(wù)模式,它能有效為用戶解決信息過載和信息迷航等問題,能夠引導(dǎo)讀者更高效地利用圖書館資源。同時(shí),Web2.0的發(fā)展及其以用戶為中心的服務(wù)原則,強(qiáng)調(diào)服務(wù)時(shí)空的個(gè)性化、服務(wù)方式的個(gè)性化和服務(wù)內(nèi)容的個(gè)性化,必然會(huì)促使用戶廣泛參與學(xué)術(shù)資源的組織和描述活動(dòng),用戶不僅是資源的創(chuàng)建者和使用者,更是新一代的資源描述者和組織者。基于標(biāo)簽的高校學(xué)術(shù)資源推薦系統(tǒng)更好地體現(xiàn)了以用戶為中心的理念,是數(shù)字圖書館門戶的發(fā)展趨勢(shì)。
推薦系統(tǒng)的功能根據(jù)用戶的偏好,智能地從海量信息資源中篩選出少量體現(xiàn)用戶偏好的資源推薦給用戶。標(biāo)簽(Tag)是一種無層次化結(jié)構(gòu)的、用來描述信息的關(guān)鍵詞,對(duì)資源對(duì)象加標(biāo)簽是一種用戶標(biāo)注行為,標(biāo)簽是用戶為資源賦予的一種元數(shù)據(jù),它幫助用戶輕松地描述和分類內(nèi)容,以便于檢索和分享,其作用等同于傳統(tǒng)資源描述方法中的類名或關(guān)鍵詞等元數(shù)據(jù)。標(biāo)簽將數(shù)字資源的組織權(quán)利從網(wǎng)站管理者下放到用戶手中,充分體現(xiàn)了Web2.0自下而上,以用戶為中心的特點(diǎn),在信息檢索等領(lǐng)域中起著重要作用。[1]將標(biāo)簽應(yīng)用于資源的推薦,一方面是讓作者或?qū)<医o資源打標(biāo)簽,并向用戶推薦相關(guān)標(biāo)簽,或者通過用戶自己對(duì)資源打標(biāo)簽,挖掘用戶的潛在興趣,建立用戶偏好模型;另一方面標(biāo)簽將資源分類聚類,在不同學(xué)科類別下為用戶生成有針對(duì)性的資源推薦,它可以避免傳統(tǒng)協(xié)同過濾方法的興趣模型單一的問題,能夠及時(shí)、準(zhǔn)確地為用戶推薦能體現(xiàn)用戶偏好的資源。
協(xié)同過濾是在信息過濾和信息系統(tǒng)中應(yīng)用較廣的技術(shù),它認(rèn)為興趣偏好相近的用戶對(duì)同一資源或相近資源具有相似的興趣偏好,通過分析用戶興趣,在用戶群中找到指定用戶的相似(興趣)用戶,綜合這些相似用戶對(duì)某一信息的評(píng)價(jià)或標(biāo)注,形成系統(tǒng)對(duì)該指定用戶對(duì)此信息的喜好程度預(yù)測(cè),達(dá)到用群體去預(yù)測(cè)個(gè)體,充分挖掘群體的智慧而為個(gè)體服務(wù)的效果。[2]
標(biāo)簽標(biāo)注讓用戶共同參與資源的描述,相當(dāng)于無成本地增加了資源的描述者。同時(shí),用戶對(duì)資源的標(biāo)注又體現(xiàn)了用戶對(duì)資源的興趣,也有利于系統(tǒng)從用戶的角度獲取資源的語義。基于標(biāo)簽和協(xié)同過濾算法的推薦充分考慮到標(biāo)簽和用戶之間、用戶和用戶之間、用戶和資源之間的關(guān)系,用戶的潛在興趣被挖掘出來,使推薦的資源范圍更廣、更豐富。
2.1 實(shí)現(xiàn)系統(tǒng)的工具與數(shù)據(jù)庫建立
系統(tǒng)運(yùn)行于Windows 2003 Server操作系統(tǒng),采用B/S結(jié)構(gòu),編程語言采用ASP.NET,在SQL Server2000數(shù)據(jù)庫管理平臺(tái)上建立數(shù)據(jù)庫,建立用戶信息表、標(biāo)簽表、標(biāo)簽分類表、標(biāo)簽與資源關(guān)系表等。
2.2 數(shù)據(jù)庫接口配置
本系統(tǒng)以高校數(shù)字圖書館的門戶網(wǎng)站為入口,將用戶標(biāo)簽添加到傳統(tǒng)類型OPAC系統(tǒng)等提供的檢索接口的選項(xiàng)中,將其與外部系統(tǒng)之間的接口通過properties配置文件實(shí)現(xiàn),命名為DBConfig.properties文件,該文件的信息以鍵值對(duì)的形式保存,其包含的部分鍵見表。
表 DBConfig.properties文件包含的鍵說明
2.3 系統(tǒng)模塊
本著高內(nèi)聚、低耦合的設(shè)計(jì)理念,從數(shù)據(jù)與業(yè)務(wù)邏輯的獨(dú)立性考慮,系統(tǒng)模塊的劃分如圖。
圖 系統(tǒng)模塊劃分
(1)系統(tǒng)的設(shè)計(jì)思想是將用戶標(biāo)簽添加到傳統(tǒng)類型OPAC系統(tǒng)等提供的檢索接口的選項(xiàng)中,使用戶標(biāo)簽與資源標(biāo)題、主題詞等檢索選項(xiàng)集成在一起。在資源檢索頁面,用戶通過點(diǎn)擊鏈接就能進(jìn)行資源標(biāo)注,系統(tǒng)將用戶標(biāo)注的標(biāo)簽信息存入數(shù)據(jù)庫。而在資源推薦頁面,系統(tǒng)則利用用戶標(biāo)注的標(biāo)簽以及標(biāo)簽標(biāo)注的歷史數(shù)據(jù),采用協(xié)同過濾算法推薦資源。協(xié)同過濾的算法分為兩大類:一類是基于用戶的協(xié)同過濾算法,另一類是基于物品的協(xié)同過濾算法。[3]本系統(tǒng)綜合以上算法,將標(biāo)簽這一非常特殊的元數(shù)據(jù)應(yīng)用于協(xié)同過濾方法。因而,系統(tǒng)的實(shí)現(xiàn)涉及以下幾個(gè)關(guān)鍵技術(shù)與算法。
3.1 利用標(biāo)簽數(shù)據(jù)實(shí)現(xiàn)基于用戶的協(xié)同過濾算法
(1)基于用戶-標(biāo)簽相關(guān)性矩陣挖掘用戶的興趣,采用最近鄰居的方法,找到和目標(biāo)用戶興趣相似的用戶集合。
第一步,計(jì)算兩個(gè)用戶的興趣相關(guān)度。這里利用用戶對(duì)資源標(biāo)注的標(biāo)簽計(jì)算用戶興趣相關(guān)度。以用戶U和用戶Ⅴ為例,N(u)和N(v)分別表示用戶U和用戶Ⅴ曾經(jīng)做過標(biāo)注的標(biāo)簽集合,通過余弦相似度可以計(jì)算用戶U和用戶Ⅴ的興趣相似度:
第二步,重復(fù)選擇另一個(gè)用戶和用戶U標(biāo)簽相關(guān)性向量,直到獲得用戶U與所有用戶的相似度集合WN。
以上步驟可用如下代碼實(shí)現(xiàn):
(2)采用Top-N方法,從集合WN中選取前K個(gè)相似度高的作為最近鄰居,得到和用戶U興趣最接近的鄰居集合S(U,K),使用相似用戶Ⅴ預(yù)測(cè)目標(biāo)用戶未使用的標(biāo)簽,選取相關(guān)性居前的標(biāo)簽標(biāo)注的資源推薦給目標(biāo)用戶,如下公式計(jì)算了用戶U對(duì)標(biāo)簽i的感興趣程度:
其中N(i)是對(duì)標(biāo)簽i有過標(biāo)注行為的用戶集合,wuv是用戶U和用戶Ⅴ的興趣相似度,rvi代表用戶Ⅴ對(duì)物品i的興趣,因?yàn)槭褂玫氖菃我恍袨榈碾[反饋數(shù)據(jù),所以rvi=1。
3.2 利用標(biāo)簽關(guān)聯(lián)度實(shí)現(xiàn)基于資源的協(xié)同過濾算法
在資源推薦系統(tǒng)中,標(biāo)簽是對(duì)資源的描述與分類,多數(shù)用戶對(duì)多個(gè)相同標(biāo)簽的關(guān)注從一定程度上反映了標(biāo)簽的關(guān)聯(lián)性,即資源的關(guān)聯(lián)性。關(guān)注資源A的用戶大多也會(huì)關(guān)注資源B,反映了資源A與資源B的關(guān)聯(lián)性。[3]例如,關(guān)注“知識(shí)發(fā)現(xiàn)”的用戶,多數(shù)也會(huì)關(guān)注“關(guān)聯(lián)數(shù)據(jù)”,而這兩個(gè)標(biāo)簽所描述的資源就正好存在關(guān)聯(lián)性?;谫Y源的協(xié)同過濾算法,正是利用標(biāo)簽關(guān)聯(lián)度來推斷資源之間的關(guān)聯(lián)性,從而推薦關(guān)聯(lián)度較高的資源給用戶。
該算法通過如下兩個(gè)步驟實(shí)現(xiàn)。
(1)計(jì)算標(biāo)簽之間的關(guān)聯(lián)度。在協(xié)同過濾中兩個(gè)標(biāo)簽產(chǎn)生關(guān)聯(lián)是因?yàn)樗鼈児餐缓芏嘤脩粝矚g并加以標(biāo)注,所以關(guān)聯(lián)度的計(jì)算可以參考計(jì)算用戶興趣度的公式。(2)根據(jù)標(biāo)簽的關(guān)聯(lián)度和用戶的標(biāo)注行為生成推薦列表,選取目標(biāo)用戶未使用的標(biāo)簽且相關(guān)性居前的標(biāo)簽標(biāo)注的資源推薦給目標(biāo)用戶。
3.3 給用戶推薦標(biāo)簽,提高標(biāo)簽準(zhǔn)確度
給用戶推薦標(biāo)簽具有兩方面的意義:第一,讓用戶從鍵盤輸入標(biāo)簽會(huì)增加用戶打標(biāo)簽的難度,有些用戶會(huì)不愿意打標(biāo)簽,給用戶推薦標(biāo)簽可以減小用戶打標(biāo)簽的難度,提高用戶打標(biāo)簽的積極性和參與度。第二,同一個(gè)語義不同的用戶可能用不同的詞語來表示,多個(gè)同義詞會(huì)使詞表增大,而且也使計(jì)算相似度準(zhǔn)確度降低,通過推薦標(biāo)簽對(duì)詞表進(jìn)行選擇,可剔除較多的同義詞,并能夠保證出現(xiàn)的詞都是比較熱門且具有代表性的詞。
標(biāo)簽推薦算法的實(shí)現(xiàn)可以考慮兩種方法:第一種方法是給用戶U推薦資源i中最熱門的標(biāo)簽;第二種方法是給用戶U推薦他自己經(jīng)常使用的標(biāo)簽。[4]為了提高算法的全面性,可以將這兩種方法融合起來,通過一個(gè)系數(shù)將前面兩種方法推薦結(jié)果線性加權(quán),生成最終的推薦結(jié)果。如下代碼可實(shí)現(xiàn)這兩種方法的融合。
return sorted(ret[user].items(),key=itemgetter(1),reverse=True)[0:N]
學(xué)術(shù)資源推薦系統(tǒng)引入標(biāo)簽,并將標(biāo)簽應(yīng)用于協(xié)同過濾方法中,采用基于用戶的協(xié)同過濾算法和基于關(guān)聯(lián)資源的協(xié)同過濾算法相互結(jié)合的方式,既體現(xiàn)了用戶的興趣點(diǎn)和關(guān)注點(diǎn),也考慮到資源之間的關(guān)聯(lián)性,使推薦的資源更具個(gè)性化和全面性。
基于標(biāo)簽的學(xué)術(shù)資源推薦系統(tǒng)是一種新的信息資源組織模式,它體現(xiàn)了高校圖書館以用戶為中心的服務(wù)模式,強(qiáng)調(diào)用戶體驗(yàn)的個(gè)性化與多樣化,可以更好地為高校師生提供個(gè)性化的信息服務(wù)。
[1]百度百科.http://baike.baidu.com/link?url=7ShWixsCp OhGNlrdQb1K80wtGjJukhCyDuFCG0u7d1cWY6hⅤ18 XoGmYfG7z3mA92.
[2]張新猛,蔣盛益.基于協(xié)同過濾的網(wǎng)絡(luò)論壇個(gè)性化推薦算法[J].計(jì)算機(jī)工程,2012(5):67-69.
[3]常唯.標(biāo)簽在數(shù)字學(xué)術(shù)資源內(nèi)容揭示中的作用研究[J].圖書館雜志,2007(1):46-52.
[4]Breese J,Heckerman D.Empirical analysis of predictive algorithms for collaborative filtering[C]//Proceedingsof the14th conferenceonuncertainly inartificial intelligence.Madison,Wisconsin,1998:43-52.
G250.76;G252.8
A
1005-8214(2014)09-0080-03
鐘克吟(1980—),女,廣東肇慶學(xué)院圖書館館員、高級(jí)程序員,研究方向:圖書館網(wǎng)站信息資源建設(shè)、數(shù)據(jù)庫建設(shè)等。
2013-09-25[責(zé)任編輯]王鈞梅
本文系2011年廣東肇慶學(xué)院教學(xué)研究項(xiàng)目“以用戶為中心的高校圖書館門戶網(wǎng)站構(gòu)建研究”(項(xiàng)目編號(hào):jy201131)研究成果之一。