• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    基于TF-IDF與用戶聚類的推薦算法

    2022-07-20 02:34:28林振榮黃虹霞舒?zhèn)ゼt劉承啟
    計(jì)算機(jī)仿真 2022年6期
    關(guān)鍵詞:物品聚類特征

    林振榮,黃虹霞,舒?zhèn)ゼt,劉承啟

    (南昌大學(xué)信息工程學(xué)院,江西 南昌 330031)

    1 引言

    在一些協(xié)同過濾算法中,物品或其他用戶之間的相似度系數(shù)計(jì)算常是影響推薦效果的重要因素。通常在數(shù)學(xué)研究中,余弦相似度和皮爾森系數(shù)是較為常用到的計(jì)算公式。但是由于用戶-物品矩陣存在數(shù)據(jù)稀疏等問題,使得上述相似度計(jì)算方法存在著相似度失真的現(xiàn)象,進(jìn)而導(dǎo)致推薦結(jié)果不準(zhǔn)確,很大程度上影響了用戶體驗(yàn)。

    為了提升用戶對推薦物品的體驗(yàn)感,近年來,隨之提出對相似度計(jì)算改進(jìn)的理論逐步增多。張俐提出的一種自適應(yīng)局部和全局融合的協(xié)同過濾算法理論,通過增加自適應(yīng)加權(quán)系數(shù)來提高用戶之間相似性度量的準(zhǔn)確性??孪杳艉完惤岢鲆环N改進(jìn)的基于興趣相似度的推薦算法,提出了逆流行度和共同興趣2個(gè)定義,通過對用戶興趣權(quán)重采用事物流行度進(jìn)行分配,并將用戶共同偏好的事物數(shù)量運(yùn)用到相似度計(jì)算中,建立一種新的推薦模型。程小林和熊焰將基于物品與基于用戶的兩種推薦方法進(jìn)行融合,通過利用預(yù)測置信度進(jìn)行加權(quán)得出結(jié)果,該模型的優(yōu)點(diǎn)是使得推薦的準(zhǔn)確度提高了,但同時(shí)也帶了時(shí)間等資源消耗的問題,在實(shí)際生活中難以運(yùn)用。

    綜上可以看出,很多推薦算法的研究都試圖從各個(gè)方面對相似度計(jì)算進(jìn)行改進(jìn),但是對物品特征的考慮不足,即物品具有的特征對相似的程度是有影響的,不能夠單純只考慮用戶對物品的評價(jià)信息。例如在日常生活中,人們對于同一類商品中,不同品種的商品喜歡某一類是具有一定偏好的,比如在購物時(shí),用戶對某一色彩更加喜愛,在選擇時(shí)往往偏向于購買該色彩的商品?;谏鲜龅乃伎?,本文將充分的利用物品的特征信息,建立相關(guān)模型。

    本文在先介紹熟知的基于用戶的推薦算法之后,接著介紹提出的基于TF-IDF(term frequency-inverse document frequency,Inverse Document Frequency詞頻-逆文本頻率指數(shù))與用戶聚類的推薦算法:通過介紹TF-IDF算法,用該算法計(jì)算得到用戶-物品-特征TF值矩陣,使用該矩陣與用戶身份屬性信息合并后進(jìn)行聚類,產(chǎn)生較小的用戶數(shù)據(jù)集,緊接著計(jì)算物品特征的TF-IDF值,利用該值通過加權(quán)的方式修改評分?jǐn)?shù)據(jù)用來改進(jìn)相似度計(jì)算公式;最后,為用戶生成推薦列表。然后,進(jìn)行相關(guān)的實(shí)驗(yàn)去驗(yàn)證所提出的算法模型。最后總結(jié)了本文的工作和研究展望。

    2 基于用戶的協(xié)同過濾推薦算法

    基于用戶的協(xié)同過濾算法的思路是通過收集目標(biāo)用戶以往對物品進(jìn)行過評價(jià)的數(shù)據(jù),分析出目標(biāo)用戶感興趣的項(xiàng),并將此信息與其他用戶的此類信息進(jìn)行比較,找出與目標(biāo)用戶興趣相似的用戶,互相之間可以進(jìn)行物品推薦。其算法步驟主要有2個(gè):

    1) 比較目標(biāo)用戶與其他用戶興趣的相似程度,得到與目標(biāo)用戶相似的用戶集合

    2) 在相似用戶集合中,通過一定的比較方法,將相似用戶偏好的物品推薦給目標(biāo)用戶。

    2.1 數(shù)據(jù)集描述

    為了更好的說明用戶之間的相似程度,將用戶對物品的感興趣程度具體轉(zhuǎn)化為評分指標(biāo)。假設(shè)用戶-物品之間的關(guān)系

    R

    *如下表所示,表中

    m

    是用戶個(gè)數(shù),

    m

    ={

    x

    x

    ,

    x

    x

    },

    n

    是物品數(shù),

    n

    ={

    i

    i

    ,

    i

    i

    }。用戶-物品評分矩陣的數(shù)據(jù)表示用戶對物品的打分值,取值為區(qū)間[1,5]的整數(shù)值,值越高,意味著用戶對該項(xiàng)更加喜愛;0值則表示該用戶未進(jìn)行評分,見表1。

    表1 用戶-物品評分矩陣

    2.2 相似度計(jì)算

    在上文介紹到的算法中,找到興趣相似的用戶集合至關(guān)重要,普遍研究中,使用到的是余弦相似度計(jì)算。其計(jì)算公式使用下列式(1)所示。該公式需要篩選出需要進(jìn)行比較的用戶x,y共同評分過的物品集合n,i表示物品集合中具體的某個(gè)物品,r,r分別表示兩者對物品i的評分值。

    (1)

    由于上式計(jì)算結(jié)果大小意味著兩用戶之間的相似程度高低,因此,對用戶集合通過相似度公式計(jì)算后得到的多個(gè)結(jié)果進(jìn)行降序排序,并選取一定數(shù)量的用戶,便可以組成相似用戶集合m。

    2.3 預(yù)測評分得出推薦物品給目標(biāo)用戶

    在得出相似用戶集合m后,定義

    Δ

    n為目標(biāo)用戶需要預(yù)測評分的物品集合,

    Δ

    n={i,i,i……},使用下列式(2)將

    Δ

    n中的物品依次進(jìn)行評分值預(yù)測。

    (2)

    式(2)中

    sin

    (x,y)為目標(biāo)用戶x與用戶集m中用戶y之間的利用式(1)計(jì)算得到的值,r是相似用戶y對集合

    Δ

    n中物品i的實(shí)際評分值,結(jié)果值G是目標(biāo)用戶預(yù)測值。目標(biāo)用戶利用式(2)在對集合

    Δ

    n中所有項(xiàng)預(yù)測之后,預(yù)測評分值越高意味著目標(biāo)更容易感興趣,將該值降序排序,其相對應(yīng)的物品取排序較前的N個(gè)即TOP-N項(xiàng)進(jìn)行推薦。

    3 基于TF-IDF與用戶聚類的推薦算法

    上文中在利用余弦相似度計(jì)算得出了相似用戶集時(shí),該方法只考慮用戶對同一物品進(jìn)行打分,而忽略了用戶之間身份屬性信息的相似度;并且在推薦某個(gè)物品時(shí),沒有充分考慮到該物品特征的重要性,基于上述的問題,本文將提出相應(yīng)的方法予以解決。

    3.1 相關(guān)數(shù)據(jù)集

    首先為建立用戶-物品-特征數(shù)據(jù)集,需要收集物品所擁有的全部特征及某用戶所評分過的物品所具有的特征。

    假設(shè)收集到的全部物品所擁有的特征個(gè)數(shù)為F,用戶評分過n個(gè)物品;當(dāng)該用戶評分過的物品不具有該特征時(shí),值為0;值為1則表示物品具有該特征。

    因此,某用戶所具有的用戶-物品-特征數(shù)據(jù)集可以用一個(gè)向量表來統(tǒng)計(jì),其值如表2所示。

    表2 用戶-物品-特征數(shù)據(jù)集

    3.2 TF-IDF算法

    TF-IDF是一種統(tǒng)計(jì)方法。TF是詞頻,表示在一份文章中統(tǒng)計(jì)某一個(gè)詞出現(xiàn)的頻率。求解某個(gè)關(guān)鍵詞w的TF值需要兩個(gè)重要參數(shù):一是規(guī)定的關(guān)鍵詞w出現(xiàn)的次數(shù);二是該文檔的總詞數(shù)。將這兩個(gè)參數(shù)相除便可以得到結(jié)果。其公式如下式(3)所示。

    (3)

    為了更好的將文檔之間類別進(jìn)行區(qū)分,如果包含關(guān)鍵字w的文檔較少,則意味著關(guān)鍵字w具有良好的類別區(qū)分能力。用IDF(逆文本頻率指數(shù))概念來解釋,該值的計(jì)算方法是假設(shè)在一個(gè)文檔庫中,統(tǒng)計(jì)包含關(guān)鍵字w的文章數(shù)目,并且也統(tǒng)計(jì)該文檔庫中文章總數(shù),按照下列式(4)進(jìn)行計(jì)算:

    (4)

    對于關(guān)鍵字w,如果其預(yù)測主題的能力越強(qiáng),其權(quán)重也隨之增強(qiáng),反之,一個(gè)較弱的關(guān)鍵詞所具有的權(quán)重就越低。由此計(jì)算一個(gè)詞的TF-IDF的式(5)如下所示

    (

    TF

    -

    IDF

    )=

    TF

    *

    IDF

    (5)

    根據(jù)上述TF-IDF的定義,在本文中為了充分利用用戶所評分過的物品所具有的特征,設(shè)S為某一物品所擁有的全部特征個(gè)數(shù),對于某用戶評分過的所有物品中某一特征w的TF式(6)如下:

    (6)

    式中

    num

    (

    w

    )表示在用戶評分過的物品中,物品特征

    w

    出現(xiàn)的次數(shù),∑

    num

    (

    s

    )表示物品全部的

    S

    個(gè)特征出現(xiàn)的次數(shù)之和。

    TF

    為物品特征

    w

    在所有評分過的物品中出現(xiàn)的次數(shù)除以用戶評分過的物品全部的

    S

    個(gè)特征出現(xiàn)的總次數(shù),該值可用來表示目標(biāo)用戶對于某一特征的偏好。

    TF

    值大小與用戶感興趣程度呈正相關(guān)。運(yùn)用該式(6),結(jié)合上文所說的用戶-物品-特征數(shù)據(jù)集,由此便可以獲得用戶-物品-特征

    TF

    值矩陣。同樣對于目標(biāo)用戶所評分過的所有物品中某一特征

    w

    IDF

    定義式(7)如下:

    (7)

    該公式能得到物品的代表特征,更好地將物品之間做區(qū)分。計(jì)算方法是先統(tǒng)計(jì)某一用戶評分過的物品總數(shù),在其中統(tǒng)計(jì)包含特征

    w

    的物品數(shù),根據(jù)上述公式計(jì)算后便可以得到該特征的

    IDF

    的值。根據(jù)式(6)(7),對于某用戶來說,其所評分過的物品含有的特征的

    TF

    -

    IDF

    值式(8)如下

    P

    =

    TF

    *

    IDF

    (8)

    式中

    P

    為特征

    w

    的TF值與IDF值乘積,根據(jù)以上公式,用戶評分過的物品特征都可以計(jì)算出該特征的

    TF

    -

    IDF

    P

    。

    3.3 融合物品特征TF值的用戶聚類

    本文對用戶采用融合物品特征TF值的聚類方法去為目標(biāo)用戶縮小需要比對用戶集合數(shù)目,做法如下:將用戶身份屬性信息及上文提到的用戶-物品-特征TF值矩陣合并,采用K-means算法進(jìn)行聚類分析。

    該算法的流程圖如圖1所示。

    圖1 算法流程圖

    3.4 改進(jìn)相似度的算法

    (9)

    其中

    β

    *=∑

    P

    *

    r

    *在上式中,類似地,在

    n

    ′中找到共同評分過的物品集合,該集合設(shè)為

    n

    ″,

    n

    ″={

    i

    ,

    i

    i

    …},

    F

    則表示集合

    n

    ″中每個(gè)物品

    i

    所含有的特征個(gè)數(shù),

    F

    ={

    f

    ,

    f

    f

    …},

    P

    表示該物品每一個(gè)特征

    TF

    -

    IDF

    值。

    β

    *等于該物品所具有的每一個(gè)特征的

    P

    值求和,再乘上用戶的原始評分

    r

    *。同理可得用戶

    y

    的改進(jìn)后

    β

    *。最后,在計(jì)算得出相似度值后,需要修改評分預(yù)測公式,將

    P

    值添加進(jìn)上文的式(2),推出新的式(10)如下

    (10)

    new

    sin(

    x

    y

    )為上文式(9)所求得到的相似度值。同樣,選取

    N

    個(gè)排序較前的物品形成了TOP-N項(xiàng),將TOP-N項(xiàng)進(jìn)行推薦。

    4 實(shí)驗(yàn)分析與結(jié)果

    4.1 實(shí)驗(yàn)環(huán)境與數(shù)據(jù)集

    本文的實(shí)驗(yàn)環(huán)境如下:ASUA筆記本,8G內(nèi)存,8核處理器,win10 64位系統(tǒng)旗艦版。

    本文實(shí)驗(yàn)采用的是Grouplens網(wǎng)站上發(fā)布的MovieLens-1M數(shù)據(jù)集,該數(shù)據(jù)集包括了users,movies,ratings.dat三個(gè)數(shù)據(jù)文件。在文件movie.dat文件中對電影的類型已經(jīng)做好了類別區(qū)分,該分類有效的區(qū)分了各種電影,所以,可以將所有特征的IDF值都設(shè)為固定值。

    4.2 實(shí)驗(yàn)評價(jià)指標(biāo)

    1) 精確度(Precision)

    精確度是指在TOP-N項(xiàng)中,將用戶所感興趣的物品個(gè)數(shù)與推薦物品個(gè)數(shù)N的相除計(jì)算得到。精確度值可以用來衡量推薦性能的高低,并且二者呈正相關(guān)。

    精確度計(jì)算式(11)如下

    (11)

    式中,

    l

    由用戶感興趣的物品與TOP-N中取交集后產(chǎn)生的個(gè)數(shù)。

    2) 召回率(Recall)

    召回率是指在TOP-N項(xiàng)中,將用戶感興趣的物品數(shù)量與TOP-N項(xiàng)中用戶感興趣物品數(shù)量相除計(jì)算得到。并且召回率與推薦性能呈正相關(guān)。召回率計(jì)算式(12)如下:

    (12)

    式中,

    N

    表示在TOP-N項(xiàng)中,用戶感興趣的物品數(shù)。

    3) F-Measure

    在使用評價(jià)指標(biāo)精確度和召回率時(shí)往往會(huì)出現(xiàn)相矛盾的情況,通常會(huì)分析F-Measure曲線來綜合考慮它們之間的關(guān)系??捎肍-Measure來衡量推薦的性能高低,并且該值越大,說明推薦的性能越優(yōu)。F-Measure的計(jì)算式(13)如下

    (13)

    通常使用的F1就是當(dāng)參數(shù)a取值為1時(shí),其式(14)如下

    (14)

    4.3 實(shí)驗(yàn)分析

    本文中實(shí)驗(yàn)采用TOP-N方法進(jìn)行推薦。實(shí)驗(yàn)分為訓(xùn)練集的60%和測試集的40%。

    實(shí)驗(yàn)過程主要分為二大類:

    1) 參數(shù)對推薦模型的影響

    利用K-means算法得到不同簇的情況下,相鄰用戶一定時(shí)K=35(這里K指與目標(biāo)用戶相鄰的用戶個(gè)數(shù)),推薦列表的長度變化的影響。

    圖2 簇為5的TOP-N折線圖

    圖3 簇為15的TOP-N折線圖

    圖4 簇為45的TOP-N折線圖

    由圖2,圖3,圖4可知,在聚類所分簇?cái)?shù)一定的情況下,隨著TOP-N的數(shù)目增加,精確度在不斷的下降,之所以產(chǎn)生這種現(xiàn)象,是因?yàn)殡S著推薦數(shù)目的增多,系統(tǒng)將會(huì)把排序越后的物品也進(jìn)行推薦,但該物品極有可能是目標(biāo)用戶不喜歡的物品。但是,召回率在不斷上升。因此,采用觀察在所分簇?cái)?shù)不同的情況下各圖F1值,由圖2,圖3,圖4可知均呈上升趨勢。由此可以推出,各簇的推薦準(zhǔn)確度不斷上升。

    如圖圖5是簇為5、簇為15和簇為45的情況下,各F1值比較圖線。由圖5可以推出,隨著聚類所分的簇?cái)?shù)越多,所產(chǎn)生的F1值在推薦數(shù)目大于15個(gè)之后,逐漸上升,推薦效果越好。因此,可以得出通過用戶身份屬性及用戶-物品-特征的TF值矩陣所產(chǎn)生的聚類生成簇?cái)?shù)越多的情況下,形成的比對用戶集中需要比對的數(shù)目越小,更能夠?yàn)槟繕?biāo)用戶找到相似的用戶,再利用改進(jìn)后的融合物品特征的相似度計(jì)算公式,其最終產(chǎn)生的推薦效果更優(yōu)。

    圖5 不同簇的F1折線圖

    2) 與傳統(tǒng)協(xié)同過濾方法的比較

    將比較本文提出的方法在不同簇的情況下與傳統(tǒng)的余弦相似度的方法進(jìn)行F1值的比較。圖6中是聚類所分簇為5、簇為15和簇為45的F1值隨推薦數(shù)目不同的曲線與該情況下余弦相似度F1值得到的F1-cos 曲線。根據(jù)圖6可以得出,在TOP-N取值逐步上升時(shí),本文所分簇類F1值均高于傳統(tǒng)的余弦相似度的計(jì)算。

    圖6 不同簇的F1值與傳統(tǒng)協(xié)同過濾方法的比較折線圖

    5 結(jié)束

    通過實(shí)驗(yàn)可以得出:本文提出的一種基于TF-IDF與用戶聚類的推薦算法,在相似度計(jì)算和使用聚類算法時(shí)充分利用物品的特征信息,能夠有效提高推薦的精確度。但在研究中,對于用戶不同時(shí)期的特征偏好,以及外部原因的影響,如社交媒體的宣傳,時(shí)尚流行度等,使得用戶對某一特征偏好的改變不能夠進(jìn)行及時(shí)修正,下一步將進(jìn)行完善研究。

    猜你喜歡
    物品聚類特征
    稱物品
    “雙十一”,你搶到了想要的物品嗎?
    如何表達(dá)“特征”
    誰動(dòng)了凡·高的物品
    不忠誠的四個(gè)特征
    基于DBSACN聚類算法的XML文檔聚類
    電子測試(2017年15期)2017-12-18 07:19:27
    抓住特征巧觀察
    基于改進(jìn)的遺傳算法的模糊聚類算法
    找物品
    一種層次初始的聚類個(gè)數(shù)自適應(yīng)的聚類方法研究
    咸阳市| 沽源县| 靖江市| 阆中市| 嘉义县| 平原县| 沂水县| 涡阳县| 澜沧| 聂荣县| 和硕县| 平潭县| 泗洪县| 鹤峰县| 裕民县| 乡城县| 岳西县| 霍城县| 九台市| 汶川县| 友谊县| 陵水| 三原县| 苏尼特右旗| 涞源县| 新闻| 融水| 惠来县| 德阳市| 腾冲县| 拜城县| 卓尼县| 中方县| 辰溪县| 宜良县| 贵州省| 龙泉市| 广德县| 长沙县| 中方县| 自贡市|