一種基于用戶聚類(lèi)的推薦方法
【專(zhuān)利摘要】本發(fā)明提出一種基于用戶聚類(lèi)的推薦方法,為了合理的根據(jù)用戶興趣對(duì)用戶進(jìn)行有效推薦,根據(jù)用戶對(duì)各主題標(biāo)簽的總瀏覽頻率、瀏覽時(shí)間以及總瀏覽時(shí)間、有效瀏覽頻率以及有效瀏覽時(shí)間,得到興趣度,形成用戶的興趣特征向量;根據(jù)用戶的興趣特征向量,篩選核心用戶,構(gòu)成核心用戶集,使用K-means聚類(lèi)算法對(duì)全體用戶進(jìn)行聚類(lèi);得到全用戶聚類(lèi)之后,計(jì)算出每個(gè)用戶聚類(lèi)在每個(gè)主題之上的類(lèi)興趣向量;比較興趣值和類(lèi)興趣向量,對(duì)其進(jìn)行推薦。本發(fā)明所提供的CCVR方法推薦效果要好于其它的推薦方法,具有良好的準(zhǔn)確性。
【專(zhuān)利說(shuō)明】-種基于用戶聚類(lèi)的推薦方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及互聯(lián)網(wǎng)信息【技術(shù)領(lǐng)域】,具體涉及一種基于用戶聚類(lèi)的推薦方法。
【背景技術(shù)】
[0002] 社交網(wǎng)絡(luò)隨著Internet用戶的普及已經(jīng)逐漸替代傳統(tǒng)的信息獲取渠道,如報(bào)紙, 雜志,電視新聞等,成長(zhǎng)為大多數(shù)人第一時(shí)間接收信息的一種方式。例如國(guó)外的f aceb〇〇k, twitter,國(guó)內(nèi)的微博,人人網(wǎng)等。大家通過(guò)發(fā)消息與狀態(tài),發(fā)布自己所要表達(dá)的信息,通過(guò) 轉(zhuǎn)發(fā)與分享其他人的消息與狀態(tài),去擴(kuò)散從其他人那里得到的信息。這涉及到結(jié)點(diǎn)影響度 的問(wèn)題,即一個(gè)被所有人關(guān)注的結(jié)點(diǎn),它所發(fā)布的信息能被所有人看到,一個(gè)關(guān)注所有人的 結(jié)點(diǎn),它能看到所有人發(fā)布的信息。當(dāng)然,個(gè)人的精力是有限的,不可能通過(guò)自己去尋找,然 后手動(dòng)的關(guān)注所有可能會(huì)感興趣的內(nèi)容或結(jié)點(diǎn)。所以互聯(lián)網(wǎng)信息服務(wù)方需要研究如何去有 效的向用戶推薦他們會(huì)感興趣的內(nèi)容或結(jié)點(diǎn)。
[0003] 于洪等人提出的強(qiáng)弱關(guān)系概念,詮釋了社交網(wǎng)絡(luò)中的關(guān)注形式。人人網(wǎng),QQ空間 等形式,以雙向關(guān)注(強(qiáng)關(guān)系)的方式來(lái)構(gòu)建起社交網(wǎng)絡(luò);微博等形式,以單向關(guān)注(弱關(guān) 系)的方式構(gòu)建起自己的關(guān)系網(wǎng)。對(duì)于互關(guān)注關(guān)系的推薦,在強(qiáng)關(guān)系的社交網(wǎng)絡(luò)中,通過(guò)共 同好友、聯(lián)系人、通訊錄等真實(shí)社交信息的方法通常就達(dá)到很好的效果,然而正是由于強(qiáng)關(guān) 系往往會(huì)建立于真實(shí)的社會(huì)關(guān)系,如此一來(lái),相比弱關(guān)系便存在很大的局限性,因?yàn)槿绻麩o(wú) 法與某個(gè)結(jié)點(diǎn)建立關(guān)系就不能看到它所發(fā)布的動(dòng)態(tài),這就顯得不太合理。有些人喜歡發(fā)布 信息,這類(lèi)結(jié)點(diǎn)便成為了網(wǎng)絡(luò)中消息的發(fā)布者,他們發(fā)布的顯然要比他們訂閱的多,有些人 喜歡接受信息,這些人作為訂閱者接收信息多于發(fā)布信息,所以這樣一種不平衡如果建立 于強(qiáng)關(guān)系的話就十分的不合理,因此基于弱關(guān)系的社交網(wǎng)絡(luò)形式應(yīng)運(yùn)而生,大家各取所需。
[0004] 參考文獻(xiàn):于洪,楊顯.微博中節(jié)點(diǎn)影響力度量與傳播路徑模式研究[J].通 信學(xué)報(bào),2012,33 (Zl):96 ?97 ;Chen J,Geyer W,Dugan C, Muller M,Guy I· Make new friends, but keep the old:Recommending people on social networking sites// Proceedings of the 27th International Conference on Human Factors in Computing Systems. New York,NY,USA,2009:201?210;陳克寒,韓盼盼,吳健.基于用戶聚類(lèi)的異 構(gòu)社交網(wǎng)絡(luò)推薦算法[J]·計(jì)算機(jī)學(xué)報(bào),2013,36(2) :350?351;Mislove Alan,Marcon Massimiliano, Gummadi Krishna P, Druschel Peter, Bhattacharjee Bobby. Measurement and analysis of online social networks//Proceedings of the 7th ACM SIGC0MM Conference on Internet Measurement· San Diego, CA,USA,2007:29 ?42 ;劉枚蓮,劉同 存,李小龍.基于用戶興趣特征提取的推薦算法研究[J].計(jì)算機(jī)應(yīng)用研究,2〇ll,28(5): 1665 ?1666.
[0005] 關(guān)于這類(lèi)推薦問(wèn)題,有學(xué)者也進(jìn)行了充分的研究。協(xié)同過(guò)濾推薦算法最早是由 Goldberg等人提出的,但該系統(tǒng)沒(méi)有充分考慮用戶需求,存在一定缺陷。針對(duì)這一問(wèn)題, GroupLens首次提出基于用戶評(píng)分的自動(dòng)協(xié)同過(guò)濾推薦系統(tǒng)。協(xié)同過(guò)濾推薦算法是應(yīng)用最 為廣泛的推薦算法,由于提出比較早,所以存在不少缺陷,后期又出現(xiàn)了基于內(nèi)容的推薦算 法,通過(guò)比較項(xiàng)目與用戶描述文件來(lái)為用戶提供推薦服務(wù);基于關(guān)聯(lián)規(guī)則的推薦算法主要 是根據(jù)關(guān)聯(lián)規(guī)則模型和用戶當(dāng)前的購(gòu)買(mǎi)行為為用戶提供推薦服務(wù)。
[0006] 現(xiàn)有的研究成果表明,研究提供一種合理的推薦方式是十分必要的。
[0007] 參考文獻(xiàn):LI Yu,LI Xue-feng. A hybrid collaborative filtering method for multiple-interests and multiple-content recommendation in e-commerce[J].Expert Systems with Applications,2005,28(l):67 ?77;HUANG Cheng-lung,HUANG Wei-liang. Handing sequential pattern decay:developing a two-stage collaborative recommender system[J]. Electronic Commerce Research and Application,2008,8(3):117 ?129 ;LUIS M,JUAN M,JUAN F. A collaborative recommender system base on probabilistic inference from fuzzy observations[J]. Fuzzy Set and Systems,2008,159 (12):1554 ?1576 ;HUANG Zan,ZENG D,CHEN H C· A comparison of collaborative-filtering recommendation algorithms for e-commerce[J]_IEEE Intelligent Systems,2007,22(5) :68 ?78 ;LIU Duen-ren,SHIH Y Y. Hybrid approaches to product recommendation base on customer lifetime value and purchase preferences[J]_Journal of Systems and Software,2005,77(2):181 ? 191 ;MATEVZ K,T0MAZ P,et al· Optimisation of combined collaborative recommender systems[J].AEU of Electronics and Communications,2007,61(7):433 ?443·
【發(fā)明內(nèi)容】
[0008] 根據(jù)上述的一些研究,本發(fā)明提供一種基于用戶聚類(lèi)的推薦方法。
[0009]為達(dá)到上述目的,本發(fā)明采用的技術(shù)方案為一種基于用戶聚類(lèi)的推薦方法,包括 以下步驟:
[0010] St印1,輸入用戶集合υ= {ι^ιν.ι?α}和主題標(biāo)簽集合c= {Sl,s2…Sp},α表示 用戶個(gè)數(shù),β表示主題標(biāo)簽集合C中主題標(biāo)簽個(gè)數(shù);初始化當(dāng)前處理用戶序號(hào)i取值為h 轉(zhuǎn)到Step2 ;
[0011] St印2,初始化當(dāng)前處理標(biāo)簽序號(hào)j取值為丨,轉(zhuǎn)到Step3 ;
[0012] St印3,如果用戶Ui關(guān)注了主題標(biāo)簽七,轉(zhuǎn)到Step4 ;否則令用戶對(duì)第j個(gè)主題標(biāo)簽 感興趣的程度dj = 0,轉(zhuǎn)到Step9 ;
[0013] Step4,根據(jù)用戶Ui對(duì)主題標(biāo)簽Sj的瀏覽次數(shù)n,確定出用戶七對(duì)主題標(biāo)簽 Sj的 總瀏覽頻率f = η,轉(zhuǎn)到Step5 ;
[0014] Step5,確定用戶Ui對(duì)主題標(biāo)簽Sj的第k次瀏覽時(shí)間tj k以及總瀏覽時(shí)間T,k的 取值為1,2,…n,轉(zhuǎn)到SteP6 ; '
[0015] SteP6,確定用戶Ui對(duì)主題標(biāo)簽Sj的有效瀏覽頻率 ef,轉(zhuǎn)到step7 ;
[0016]確定方式為,若tmin < tlk < tmax,t-和tmax為用戶Ui對(duì)標(biāo)簽的最小瀏覽時(shí)間和最 瀏覽時(shí)間的預(yù)設(shè)閾值,則用戶Ui對(duì)第j個(gè)主題標(biāo)簽的第k次瀏覽是有效的,則用戶Ui對(duì) 第j個(gè)主題標(biāo)簽的η次瀏覽過(guò)程中,所有有效瀏覽的次數(shù)之和為用戶化對(duì)第j個(gè)主題標(biāo)簽 的有效瀏覽頻率;
[0017] St印7,求ef次有效瀏覽的瀏覽時(shí)間之和,計(jì)算出用戶Ui對(duì)主題標(biāo)簽Sj的有效瀏 覽時(shí)間et,轉(zhuǎn)到Step8 ;
[0018] St印8,根據(jù)下式,計(jì)算出用戶W對(duì)主題標(biāo)簽Sj興趣度d」,轉(zhuǎn)到Step9 ;
[0019]
【權(quán)利要求】
1. 一種基于用戶聚類(lèi)的推薦方法,其特征在于,包括以下步驟: 5七6口1,輸入用戶集合11={111,112*"11 [1}和主題標(biāo)簽集合〇={81,8^80},€[表示用戶 個(gè)數(shù),P表示主題標(biāo)簽集合C中主題標(biāo)簽個(gè)數(shù);初始化當(dāng)前處理用戶序號(hào)i取值為1,轉(zhuǎn)到 Step2 ; St印2,初始化當(dāng)前處理標(biāo)簽序號(hào)j取值為1,轉(zhuǎn)到St印3 ; St印3,如果用戶Ui關(guān)注了主題標(biāo)簽&,轉(zhuǎn)到St印4 ;否則令用戶對(duì)第j個(gè)主題標(biāo)簽感興 趣的程度dj= 0,轉(zhuǎn)到Step9 ; St印4,根據(jù)用戶Ui對(duì)主題標(biāo)簽Sj的瀏覽次數(shù)n,確定出用戶Ui對(duì)主題標(biāo)簽Sj的總瀏 覽頻率f=n,轉(zhuǎn)到Step5 ; St印5,確定用戶Ui對(duì)主題標(biāo)簽&的第k次瀏覽時(shí)間tlk以及總瀏覽時(shí)間T,k的取值 為1,2,…n,轉(zhuǎn)到Step6 ; St印6,確定用戶Ui對(duì)主題標(biāo)簽Sj的有效瀏覽頻率ef,轉(zhuǎn)到St印7 ; 確定方式為,若tmin彡tj;k彡tmax,tmin和tmax為用戶Ui對(duì)標(biāo)簽的最小瀏覽時(shí)間和最大 瀏覽時(shí)間的預(yù)設(shè)閾值,則用戶Ui對(duì)第j個(gè)主題標(biāo)簽的第k次瀏覽是有效的,則用戶Ui對(duì)第 j個(gè)主題標(biāo)簽的n次瀏覽過(guò)程中,所有有效瀏覽的次數(shù)之和為用戶Ui對(duì)第j個(gè)主題標(biāo)簽的 有效瀏覽頻率; Step7,求ef次有效瀏覽的瀏覽時(shí)間之和,計(jì)算出用戶Ui對(duì)主題標(biāo)簽Sj的有效瀏覽時(shí) 間et,轉(zhuǎn)到Step8 ; Step8,根據(jù)下式,計(jì)算出用戶Ui對(duì)主題標(biāo)簽Sj興趣度dj,轉(zhuǎn)到Step9 ;
其中,參嬰
,H為用戶對(duì)所有主題標(biāo)簽的瀏覽頻率之和;PS為預(yù)設(shè)的系統(tǒng)參數(shù) 興趣時(shí)間系數(shù)
表示用戶對(duì)第j個(gè)主題標(biāo)簽的平均瀏覽時(shí)間,
表示用戶對(duì)第j個(gè)主題 標(biāo)簽的平均有效瀏覽時(shí)間; Step9,設(shè)用戶Ui在主題標(biāo)簽集合C中未瀏覽過(guò)的標(biāo)簽集合用Cb表示,瀏覽過(guò)的標(biāo)簽集 合用Ca表示,根據(jù)下式,計(jì)算Vi;j,令j=j+1,如果j小于等于0則轉(zhuǎn)到Step3,否則轉(zhuǎn)到 SteplO;
SteplO,令i=i+l,如果i小于等于a,轉(zhuǎn)到Step2,否則令i= 1,初始化核心用戶數(shù) 目Y取值為〇,轉(zhuǎn)到St印11 ; St印11,根據(jù)用戶Ui的興趣向量,…\0)中非零元素所占比例得到興趣密 度值density(Ui),如果興趣密度值density(Ui)>X,標(biāo)記Ui為核心用戶,轉(zhuǎn)到Stepl2;否 則轉(zhuǎn)到Stepl3 ;其中,A為預(yù)設(shè)的密度閾值; Stepl2,令Y=Y+1,轉(zhuǎn)到Stepl3; St印13,令i=i+1,如果i小于等于a,轉(zhuǎn)到St印11 ;否則轉(zhuǎn)到St印14 ; Stepl4,當(dāng)前得到Y(jié)個(gè)核心用戶,開(kāi)始用K-means算法對(duì)全部用戶進(jìn)行聚類(lèi),本步驟以Y個(gè)核心用戶為初始的聚類(lèi)中心,初始定義變量newj= 0,oldj= -1,轉(zhuǎn)到Stepl5 ; Stepl5,計(jì)算fabs(newj-oldj),fabs函數(shù)表示計(jì)算絕對(duì)值,如果fabs(newj-oldj)大 于等于絕對(duì)值的相應(yīng)預(yù)設(shè)閾值,轉(zhuǎn)到Stepl6,否則轉(zhuǎn)到Stepl9 ; Stepl6,對(duì)用戶集合U=IudIvucJ中作為聚類(lèi)中心的用戶以外的各剩余用戶,分別 計(jì)算剩余用戶與每個(gè)作為聚類(lèi)中心的用戶之間的歐式距離,并分配到距離最近的聚類(lèi)中心 相應(yīng)聚類(lèi)中,轉(zhuǎn)到Stepl7 ; Stepl7,計(jì)算每個(gè)用戶聚類(lèi)Rh中所有用戶興趣向量的平均值,作為用戶聚類(lèi)Rh新的聚 類(lèi)中心Zh,轉(zhuǎn)到St印18 ; Stepl8,令oldj=newj,根據(jù)準(zhǔn)則函數(shù)計(jì)算新的準(zhǔn)則函數(shù)值賦值給newj,轉(zhuǎn)到Stepl5 ; St印19,當(dāng)前得到Y(jié)個(gè)用戶聚類(lèi)R1,馬…Ry,轉(zhuǎn)到St印20 ; St印20,初始化當(dāng)前處理類(lèi)別序號(hào)h取值為1,轉(zhuǎn)到St印21 ; Step21,根據(jù)下式計(jì)算該類(lèi)別的類(lèi)興趣向量Rvh = (RVhl,RVh2, ...,RVhe),轉(zhuǎn)到Step22 ;
其中,IRhI表示用戶聚類(lèi)Rh中的用戶個(gè)數(shù),心表示用戶聚類(lèi)Rh中的任一用戶,用w表 示聚類(lèi)Rh中用戶個(gè)數(shù),€取值為1,2……w,表示用戶聚類(lèi)Rh中用戶%對(duì)第j個(gè)主題標(biāo) 簽的興趣度,RVw表示用戶聚類(lèi)Rh對(duì)第j個(gè)主題標(biāo)簽的興趣度,j取值為1,2......^ ; Step22,令h=h+1,如果h小于等于Y,轉(zhuǎn)到Step21,否則轉(zhuǎn)到Step23 ;3七6口23,此時(shí)得到¥個(gè)類(lèi)別的類(lèi)興趣向量,1^1,1^2*"1^^,令11=1,轉(zhuǎn)到5七6口24 ; St印24,為用戶聚類(lèi)Rh中的每個(gè)用戶分別推薦主題標(biāo)簽,設(shè)用戶聚類(lèi)Rh中的用戶義為 用戶集合U=Iu1,ivua}中的用戶Ui,對(duì)于用戶Ui的興趣向量Vi (Vm,Vi>2,…Vi, 0),把它 與用戶聚類(lèi)Rh的類(lèi)興趣向量Rvh = (RVhl,RVh2, ...,RVhe)中各興趣值RVw進(jìn)行比較,如果 Vu大于等于RVhj,則把主題標(biāo)簽Sj推薦給用戶,轉(zhuǎn)到Step25 ; Step25,令h=h+1,如果h小于等于Y,轉(zhuǎn)到Step24,否則轉(zhuǎn)到Step26 ; Step26,對(duì)用戶集合U=Iu1,iv"ua}中每個(gè)用戶的自動(dòng)推薦均已完成,結(jié)束。
2.根據(jù)權(quán)利要求1所述基于用戶聚類(lèi)的推薦方法,其特征在于:Stepl8中,準(zhǔn)則函數(shù)的 計(jì)算公式如下,
其中,w代表用戶聚類(lèi)Rh中用戶個(gè)數(shù),叫VZJ表示兩個(gè)特征向量之間的偏差的平方,Vf 為用戶聚類(lèi)Rh中的用戶\的興趣向量,Zh為相應(yīng)類(lèi)別的聚類(lèi)中心。
【文檔編號(hào)】G06F17/30GK104268290SQ201410565721
【公開(kāi)日】2015年1月7日 申請(qǐng)日期:2014年10月22日 優(yōu)先權(quán)日:2014年10月22日
【發(fā)明者】李鵬, 王婭丹, 金瑜, 劉璟, 劉欣 申請(qǐng)人:武漢科技大學(xué)