• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      基于信息熵和改進(jìn)相似度協(xié)同過濾算法

      2021-06-29 07:21:24皓,陳
      關(guān)鍵詞:皮爾遜余弦信息熵

      黃 皓,陳 荔

      (上海理工大學(xué)管理學(xué)院, 上海 200240)

      0 引 言

      隨著互聯(lián)網(wǎng)的高速發(fā)展,信息的產(chǎn)生呈現(xiàn)了一種爆炸增長速度,造成了信息過載現(xiàn)象。信息過載是指數(shù)據(jù)過量,它導(dǎo)致的后果使得用戶難以在短時(shí)間內(nèi)接收到某一方面的全部相關(guān)信息,可能會(huì)使用戶在信息接收不全面的情況下造成錯(cuò)誤的決定。當(dāng)今社會(huì)解決此問題的主流方法有以下2種:第一類是以推薦系統(tǒng)為代表的信息過濾技術(shù);第二類是谷歌百度等搜索引擎主要使用的信息檢索技術(shù)。但搜索引擎存在的最大問題是它很難提供個(gè)性化的推薦,它的主要方法是由用戶提供精準(zhǔn)的文字來進(jìn)行查找。相反,推薦系統(tǒng)使用用戶的歷史信息(比如購買、評(píng)分信息等)來推薦用戶潛在的需要信息,它能夠?yàn)橛脩籼峁└泳珳?zhǔn)的服務(wù)。

      協(xié)同過濾算法作為推薦系統(tǒng)最常用的方法,它也存在自己的問題:一是噪音數(shù)據(jù),大規(guī)模地人為捏造數(shù)據(jù)等行為會(huì)造成數(shù)據(jù)的失真;二是數(shù)據(jù)稀疏性,隨著現(xiàn)代互聯(lián)網(wǎng)的發(fā)展,數(shù)據(jù)的數(shù)目一般是上千萬,但用戶評(píng)分的商品常常很少,導(dǎo)致評(píng)分矩陣中大量的空白,導(dǎo)致典型的類似數(shù)據(jù)集都相當(dāng)稀疏。

      國內(nèi)外在改進(jìn)相似度上進(jìn)行了很深的研究。蘇慶等[1]針對(duì)數(shù)據(jù)稀疏和準(zhǔn)確率相對(duì)較低原因,提出了改進(jìn)模糊劃分聚類的協(xié)同過濾算法(GIFP-CCF+),使用了時(shí)間差因子、熱門物品權(quán)重因子和冷門物品權(quán)重因子相結(jié)合的相似度計(jì)算結(jié)果,結(jié)合改進(jìn)模糊劃分的算法。王運(yùn)等[2]針對(duì)數(shù)據(jù)稀疏和評(píng)分項(xiàng)目差異的問題,提出了FunkSVD矩陣分解和相似度矩陣結(jié)合的推薦算法,利用相似度矩陣和FunkSVD生成新的用戶相似度矩陣。李容等[3]針對(duì)傳統(tǒng)相似度忽略共同評(píng)分和稀疏數(shù)據(jù)的問題,提出了一種2個(gè)修正因子的改進(jìn)相似度推薦算法,同時(shí)改進(jìn)了協(xié)同過濾算法。王留芳等[4]針對(duì)稀疏數(shù)據(jù)和冷啟動(dòng)問題,提出了一種修正余弦相似度和用戶屬性的相似度算法加權(quán)混合的協(xié)同過濾算法。薛亞非[5]針對(duì)算法準(zhǔn)確率低和耗時(shí)長的問題,提出了基于相似度的多重信息協(xié)同過濾算法,利用加權(quán)信息熵計(jì)算興趣相似度將其和評(píng)分矩陣相結(jié)合,獲得最終的相似度。刑長征等[6]針對(duì)稀疏的用戶評(píng)分矩陣方法,提出了一種改進(jìn)的填補(bǔ)法和改進(jìn)相似度相結(jié)合的推薦算法。羅辛等[7]針對(duì)k近鄰法的不足提出了一種相似度支持度優(yōu)化基于k近鄰的推薦算法。

      協(xié)同過濾算法作為常用的推薦算法,研究者也非常多。王玉珍等[8]為了減小算法的誤差,提高推薦的效率和質(zhì)量,提出了一種SGA-RBF遺傳算法優(yōu)化的神經(jīng)網(wǎng)絡(luò)與協(xié)同過濾算法相結(jié)合的推薦算法,使結(jié)果更加精確。王努努[9]針對(duì)用戶偏好挖掘不全面、冷啟動(dòng)、數(shù)據(jù)稀疏的問題,提出了基于Softmax回歸和矩陣分解協(xié)同過濾算法,利用文本挖掘技術(shù)進(jìn)行特征的情感強(qiáng)度分析,利用該算法進(jìn)行運(yùn)算。趙宇等[10]為了提高算法的精確度,提出馬爾可夫聚類和混合協(xié)同過濾的協(xié)同過濾算法,利用馬爾可夫聚類將人群劃分為不同人群然后挖掘不同人群的特征。岳希等[11]針對(duì)數(shù)據(jù)稀疏性,提出了一種將基于用戶和基于項(xiàng)目相結(jié)合的推薦方法。羅園等[12]提出了一種考慮到用戶興趣變化和用戶標(biāo)注信息的推薦算法,引入了遺忘曲線、文本挖掘技術(shù)TF-IDF和混合余弦相似度和改進(jìn)皮爾遜相似度的方法。袁泉等[13]針對(duì)算法只能考慮外部評(píng)價(jià)不能考慮電影內(nèi)部的相似度關(guān)系,提出構(gòu)建知識(shí)圖譜輔助計(jì)算電影內(nèi)部的相似度方法,并且引入了TransE模型和TransHR模型然后將使用混合相似度計(jì)算方法。劉國麗等[14]針對(duì)冷啟動(dòng)、數(shù)據(jù)稀疏、可擴(kuò)展性不高和不同社區(qū)簇之間存在相關(guān)性的問題,提出在考慮同社區(qū)簇內(nèi)專家信任基礎(chǔ)上結(jié)合不同社區(qū)簇專家信任的算法,將專家機(jī)制和推薦算法相結(jié)合提高算法的精確性。崔巖等[15]為了提高算法準(zhǔn)確性,提出了XGBoost和協(xié)同過濾算法相結(jié)合的推薦算法,采用百度深度學(xué)習(xí)框架進(jìn)行實(shí)驗(yàn)。王井[16]為了給讀者提供優(yōu)質(zhì)服務(wù),提出了一種基于訂閱記錄的圖書協(xié)同過濾算法,引入對(duì)訂閱權(quán)重的懲罰機(jī)制,增加了熱門訂閱的權(quán)重。張鋒等[17]針對(duì)推薦算法中數(shù)據(jù)稀疏的問題,將BP神經(jīng)網(wǎng)絡(luò)加入?yún)f(xié)同過濾算法中,避免了常規(guī)降維法的缺點(diǎn)也緩解了數(shù)據(jù)稀疏的問題。辛菊琴[18]提出了一種融合用戶偏好和BP神經(jīng)網(wǎng)絡(luò)的推薦算法,在MovieLens數(shù)據(jù)集上得到了很好的效果。楊遠(yuǎn)奇[19]將注意力機(jī)制的神經(jīng)網(wǎng)絡(luò)算法和網(wǎng)絡(luò)中群組成員的個(gè)性化偏好相結(jié)合,更加突出用戶的個(gè)性化特征,加強(qiáng)了算法的準(zhǔn)確性。張艷紅等[20]針對(duì)噪音數(shù)據(jù)和數(shù)據(jù)稀疏的問題,提出了一種基于噪音檢測修正和神經(jīng)網(wǎng)絡(luò)的top-k推薦算法,檢測用戶評(píng)分矩陣的奇異點(diǎn),對(duì)奇異點(diǎn)進(jìn)行修正處理,使用神經(jīng)網(wǎng)絡(luò)緩解數(shù)據(jù)稀疏問題。

      國內(nèi)外關(guān)于信息熵方面的研究也有很多。劉江冬等[21]將信息熵和時(shí)效性結(jié)合同時(shí)解決了噪音問題和數(shù)據(jù)稀疏性問題;蘇夢(mèng)珂等[22]提出了一種考慮信息熵和用戶行為一致性的算法,用信息熵解決噪音數(shù)據(jù),考慮用戶行為的一致性將用戶分組來提高精確度。

      本文從信息熵解決噪音數(shù)據(jù)角度,設(shè)計(jì)一種基于信息熵和面向數(shù)據(jù)稀疏的相似度的協(xié)同過濾算法,這種算法同時(shí)解決了噪音數(shù)據(jù)和數(shù)據(jù)稀疏性這2個(gè)協(xié)同過濾算法中比較重要的問題,提高了推薦算法的準(zhǔn)確性。

      1 相關(guān)工作

      1.1 協(xié)同過濾算法

      協(xié)同過濾算法是推薦算法中應(yīng)用最廣泛的一個(gè)大類,在工業(yè)界等方面得到了廣泛應(yīng)用?,F(xiàn)在的協(xié)同過濾算法細(xì)分為2個(gè)類別:基于模型的協(xié)同過濾和基于內(nèi)存的協(xié)同過濾。基于模型的協(xié)同過濾算法采用概率統(tǒng)計(jì)模型和機(jī)器學(xué)習(xí)等方式來解決問題,常見的有:非常熱門的矩陣分解、貝葉斯模型、隱語義模型等。基于內(nèi)存的協(xié)同過濾主要通過用戶評(píng)分矩陣計(jì)算相似度,然后找到它的鄰居,以此來推薦。它主要分為2大類:基于項(xiàng)目的協(xié)同過濾(item-cf)和基于用戶的協(xié)同過濾(user-cf)。而本文用的是基于用戶的協(xié)同過濾算法。常見的基于用戶的協(xié)同過濾算法一般情況下有3個(gè)步驟:形成用戶-項(xiàng)目評(píng)分矩陣、計(jì)算相似度尋找最近鄰集合N和依據(jù)相似度求未知項(xiàng)評(píng)分。以下是每一部分的具體過程。

      1)形成用戶-評(píng)分矩陣。

      用戶評(píng)分矩陣通常是用戶對(duì)項(xiàng)目的評(píng)分歷史記錄,可以表現(xiàn)用戶的興趣所在。設(shè)矩陣R為用戶-評(píng)分矩陣,R是一個(gè)m×n的矩陣。其中m表示顧客的數(shù)量,用戶集合U表示為U={u1,u2,…,um}。其中n表示項(xiàng)目的數(shù)量,項(xiàng)目集合I表示為I={i1,i2,…,in}。用戶a對(duì)項(xiàng)目b的評(píng)分分?jǐn)?shù)由sab表示。具體表示見表1。

      表1 用戶-評(píng)分矩陣R

      2)計(jì)算相似度尋找最近鄰集合N。

      在第二步尋找近鄰集合N的過程中,根據(jù)用戶評(píng)分矩陣R計(jì)算相似度,但相似度計(jì)算方法有多種,而每一種方法的效果不盡相同。所以選擇何種方法計(jì)算相似度是一門功夫。在下一節(jié)中會(huì)具體介紹不同的相似度以及它的具體計(jì)算公式。根據(jù)相關(guān)論文表明,在user-cf中,皮爾遜相似度計(jì)算方法的效果相比其他的計(jì)算方法更勝一籌。計(jì)算完相似度之后將通過排序取出前K個(gè)近鄰構(gòu)成最近鄰集合N,N=(n1,n2,n3,…,nK)。因?yàn)镵不是一個(gè)確定的值,所以在第二章中會(huì)具體分析K的取值對(duì)結(jié)果的影響。

      3)依據(jù)相似度求未知項(xiàng)評(píng)分。

      在第2步中通過計(jì)算相似度找到近鄰集合N,在最后一步中要根據(jù)近鄰和相似度計(jì)算出最終的未知項(xiàng)評(píng)分。它的計(jì)算公式如下:

      (1)

      1.2 傳統(tǒng)相似度計(jì)算方法

      在大部分協(xié)同過濾算法中,計(jì)算相似度可以說是算法的核心步驟。常見的相似度計(jì)算方法有以下幾種:

      1)余弦相似度。

      (2)

      2)修正余弦相似度。

      (3)

      3)Pearson相似度。

      (4)

      2 結(jié)合信息熵和改進(jìn)相似度的推薦算法

      2.1 用戶信息熵

      1948年,香農(nóng)提出信息熵這一概念,它解決了信息的度量問題。設(shè)X為一隨機(jī)變量,X取值為X的概率用p(x)表示,則可以用信息熵來表達(dá)其不確定性,其計(jì)算公式為:

      (5)

      由公式(5)可以看出,信息熵的值與實(shí)際的值無關(guān),與它的概率分布有關(guān)。所以在推薦系統(tǒng)中,信息熵能在一定程度上有效地過濾部分噪音數(shù)據(jù),同時(shí)過濾掉部分信息值較低的用戶,以此來提高推薦系統(tǒng)的精確性。

      但是一般的信息熵只與評(píng)分出現(xiàn)的次數(shù)有關(guān),而不與用戶的具體分?jǐn)?shù)有關(guān),所以本文引入了用戶信息熵模型。

      設(shè)用戶A,其評(píng)分集合用Ra={r1,r2,…,rm,…,rn}表示,在評(píng)分系統(tǒng)中rm∈{1,2,3,4,5},其中n=︱Ra︱表示用戶A在系統(tǒng)中產(chǎn)生的評(píng)分?jǐn)?shù)。對(duì)用戶A,根據(jù)式(5),其信息熵為:

      (6)

      其中,c表示評(píng)分單位的度量,在10分制的評(píng)分系統(tǒng)中c=10;Pak是表示用戶a的評(píng)分落在區(qū)間k的概率。Pak的計(jì)算過程為:

      Pak=[∑rm∈RaI{rm=k}]/|Ra|

      (7)

      其中,I{x}為指示函數(shù)。綜合式(5)和式(6)即可計(jì)算用戶的評(píng)分信息熵。

      當(dāng)然,計(jì)算用戶的信息熵的目的是為了消除噪音數(shù)據(jù),在這當(dāng)中就免不了確定信息熵的閾值F,當(dāng)H(u)

      2.2 改進(jìn)相似度計(jì)算方法

      在推薦系統(tǒng)中一直存在一些比較明顯的問題,而最有名的便是冷啟動(dòng)和數(shù)據(jù)稀疏的問題,專家學(xué)者針對(duì)這一問題一直在考慮很多的解決方法。在基于內(nèi)存的協(xié)同過濾算法中計(jì)算相似度是不可或缺的一個(gè)步驟,普通的協(xié)同過濾相似度計(jì)算方法依賴用戶的共同評(píng)分項(xiàng)來計(jì)算相似度,但因?yàn)閿?shù)據(jù)稀疏使得共同評(píng)分項(xiàng)數(shù)據(jù)很少存在,導(dǎo)致在計(jì)算相似度上存在比較大的誤差問題。所以本文使用了一種面向數(shù)據(jù)稀疏的相似度計(jì)算方法。這種方法改進(jìn)了馮軍美等[23]在論文中提出的方法,使用全部評(píng)分?jǐn)?shù)據(jù)也不依靠共同的評(píng)分項(xiàng)計(jì)算來解決數(shù)據(jù)稀疏問題。

      定義用戶a和用戶b在所有評(píng)分項(xiàng)目的集合為Ia、Ib,用戶a和用戶b相似度計(jì)算方法如下:

      (8)

      其中,︱Ia︱、︱Ib︱用來表示用戶a和用戶b的總評(píng)分個(gè)數(shù),用戶a在評(píng)分矩陣中第k個(gè)的評(píng)分?jǐn)?shù)值為ra,k,用戶b在評(píng)分矩陣中第w個(gè)的評(píng)分?jǐn)?shù)值為rb,w,max(ra,k,rb,w)和min(ra,k,rb,w)分別表示ra,k、rb,w中的最大值和最小值。

      計(jì)算完相似度之后尋找最近鄰居,然后以此來計(jì)算用戶x未知項(xiàng)i的評(píng)分預(yù)測為Px,i,它的計(jì)算公式見公式(1)。

      2.3 結(jié)合信息熵和改進(jìn)相似度的推薦算法步驟

      推薦算法的處理流程如下:

      Step1輸入goodbooks數(shù)據(jù)集,通過去除重復(fù)值等數(shù)據(jù)處理方式進(jìn)行數(shù)據(jù)預(yù)處理,形成用戶評(píng)分矩陣R。

      Step2在用戶評(píng)分矩陣R的基礎(chǔ)上結(jié)合公式(6)、公式(7)計(jì)算所有用戶的用戶信息熵H(x)。

      Step3通過數(shù)據(jù)建模實(shí)驗(yàn)可視化分析信息熵閾值F與RMSE和MAE的關(guān)系,確定信息熵閾值F。

      Step4當(dāng)用戶信息熵H(x)<信息熵閾值F時(shí),去除該組用戶評(píng)分?jǐn)?shù)據(jù),得到新的用戶評(píng)分矩陣Rnew。

      Step5計(jì)算改進(jìn)相似度simnew(a,b)。

      Repeat

      Step5.1逐個(gè)計(jì)算用戶的總評(píng)分個(gè)數(shù)︱Ia︱。

      Step5.2max(ra,k,rb,w)和min(ra,k,rb,w)分別表示(ra,k、rb,w)中的最大值和最小值。

      Step5.3通過公式(8)計(jì)算改進(jìn)相似度simnew(a,b)。

      Step6通過數(shù)據(jù)建模方法、實(shí)驗(yàn)分析方法確定最近鄰K的數(shù)值,盡量找到能夠達(dá)到較優(yōu)解的K的數(shù)值。

      Step7尋找用戶x的相似度最高的K個(gè)近鄰集合。

      Step8通過公式(1)可求出對(duì)未知項(xiàng)目的預(yù)測評(píng)分。

      Step9通過對(duì)用戶的預(yù)測評(píng)分來計(jì)算出RMSE、MAE的結(jié)果,并進(jìn)行可視化分析。

      圖1為算法的流程圖。

      圖1 算法流程圖

      3 實(shí) 驗(yàn)

      3.1 實(shí)驗(yàn)數(shù)據(jù)集

      本文采用的是來源于goodreads網(wǎng)站的goodbooks圖書數(shù)據(jù)集,它的評(píng)分方法是讓用戶對(duì)圖書打出1~5分中間的一個(gè)分?jǐn)?shù),分?jǐn)?shù)間隔為1,分?jǐn)?shù)越高則表示用戶越喜歡。該數(shù)據(jù)集中包含了53424個(gè)用戶對(duì)10000本圖書進(jìn)行的評(píng)分,總共有981756條評(píng)分?jǐn)?shù)據(jù)。它的稀疏度通過計(jì)算為:

      (9)

      通過上式可以看出稀疏程度相當(dāng)高,該數(shù)據(jù)集主要包括4個(gè)部分:圖書標(biāo)簽、圖書詳細(xì)信息(包括作者、語言、年份等)、用戶意向閱讀的圖書(即用戶當(dāng)前或以后感興趣的圖書)和評(píng)分?jǐn)?shù)據(jù)。

      3.2 評(píng)價(jià)指標(biāo)

      在推薦系統(tǒng)中常用的評(píng)價(jià)指標(biāo)為平均絕對(duì)誤差(MAE)、均方根誤差(RMSE)、召回率、準(zhǔn)確率、F1值等。本文選用MAE、RMSE作為評(píng)估指標(biāo)。其計(jì)算公式分別為:

      (10)

      (11)

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

      3.3.1 信息熵的計(jì)算及閾值的確定

      根據(jù)之前的算法步驟,先輸入評(píng)分矩陣,這一步驟比較簡單先省略過去。第二步是計(jì)算用戶的信息熵H(x)。主要使用公式(6)、公式(7)來計(jì)算,計(jì)算結(jié)果如圖2所示。使用Python計(jì)算用戶的信息熵,橫軸為用戶的編號(hào)(userId),縱軸為用戶的信息熵(information entropy)。從圖中可以看出絕大多數(shù)數(shù)據(jù)的信息熵處在0.8~2.2,圖中上半部分的數(shù)據(jù)很緊湊,將上半部的圖表遮蓋得嚴(yán)嚴(yán)實(shí)實(shí),當(dāng)然還有零零散散的一些用戶處在0.8以下,可以認(rèn)為絕大多數(shù)處于0.8以下的數(shù)據(jù)為噪音數(shù)據(jù)。

      圖2 信息熵分布圖

      算法的第三步是確定信息熵閾值F,當(dāng)用戶信息熵H(x)

      觀察表2可以看出,當(dāng)設(shè)置閾值F為0時(shí)RMSE的值為0.867,當(dāng)閾值在0~0.8的范圍中增大時(shí)RMSE隨著它的增大而減小。當(dāng)閾值設(shè)置為0.8時(shí)閾值達(dá)到了最小值0.859,。當(dāng)閾值在0.8~1.6的范圍中增大時(shí),可以明顯看出RMSE在回升,當(dāng)閾值設(shè)置為1.2時(shí)可以看出RMSE已經(jīng)超過當(dāng)設(shè)置為0的時(shí)候,當(dāng)然之后RMSE繼續(xù)增長,算法效率越來越低??梢愿爬ǖ卣f當(dāng)閾值在0~0.8范圍中增加時(shí),RMSE逐漸降低,算法精確度逐漸上升,當(dāng)閾值F=0.8時(shí),RMSE達(dá)到最低值0.859,當(dāng)閾值在0.8~1.6中增長時(shí),RMSE逐漸上升,算法精確度逐漸下降。從表2中可以看出當(dāng)閾值F=0.8時(shí)RMSE最小,精確度最高,所以之后將閾值F設(shè)置為0.8。

      表2 不同閾值F的RMSE

      3.3.2 對(duì)比實(shí)驗(yàn)

      圖3 不同相似度下最近鄰K與RMSE關(guān)系圖

      圖4 不同相似度下近鄰數(shù)K與MAE關(guān)系圖

      圖3、圖4是選用上文4種相似度的情況下,使用基于KNN的協(xié)同過濾算法隨著最近鄰K變化產(chǎn)生的RMSE變化趨勢圖,最近鄰設(shè)置為[0,100],步長為1。從圖3可以看出,在近鄰K值取0時(shí),4種相似度下RMSE由大到小依次為皮爾遜>改進(jìn)余弦>歐氏距離>余弦相似度,RMSE越小時(shí)算法準(zhǔn)確度越高,所以剛開始時(shí)準(zhǔn)確度和RMSE大小相反;可以看出在(0,10]這個(gè)區(qū)間變化時(shí),4個(gè)相似度下的RMSE值都處于快速下降的趨勢,當(dāng)K在10左右時(shí),4條曲線的斜率都變得非常小;在K=10時(shí),4種相似度下RMSE由大到小依次為歐氏距離>皮爾遜>改進(jìn)余弦>余弦,可以看出在K=10時(shí)余弦相似度的準(zhǔn)確度相對(duì)較高;在(10,100]這個(gè)區(qū)間,4種相似度下RMSE的變化幅度相對(duì)較小,但還是有變化的,可以看出最后幾種算法的準(zhǔn)確度為皮爾遜≈改進(jìn)余弦>余弦>歐氏距離;則表示在使用goodbooks數(shù)據(jù)集KNN算法下,皮爾遜和改進(jìn)余弦相似度準(zhǔn)確度最高,而余弦相似度則稍微差一點(diǎn),歐氏距離可能差得更多一點(diǎn)。

      圖5 不同相似度下數(shù)據(jù)稀疏度與RMSE的關(guān)系圖

      為了驗(yàn)證改進(jìn)相似度對(duì)于數(shù)據(jù)稀疏性的提升效果,圖5在KNN算法下選擇了改進(jìn)相似度、皮爾遜相似度、改進(jìn)余弦相似度,探究稀疏度越來越高的情況下RMSE的變化情況;當(dāng)數(shù)據(jù)稀疏度為97%時(shí),可以看出對(duì)算法的準(zhǔn)確度來說,改進(jìn)相似度>改進(jìn)余弦相似度>皮爾遜相似度,但改進(jìn)相似度和其他2個(gè)相似度差距并不大,當(dāng)然皮爾遜相似度準(zhǔn)確度將近0.99,精確性不理想;隨著數(shù)據(jù)稀疏度在(97.0,99.0]上增加,相似度變化規(guī)律并不大,皮爾遜相似度隨著稀疏度增大它的RMSE增加,導(dǎo)致準(zhǔn)確度越來越差,而其他2個(gè)相似度差不多但增長率并沒有皮爾遜大;當(dāng)數(shù)據(jù)稀疏度達(dá)到99.5時(shí),3種相似度的RMSE飛速增長,但它們的算法準(zhǔn)確度還是保持改進(jìn)相似度>改進(jìn)余弦相似度>皮爾遜相似度,這時(shí)改進(jìn)相似度和其他2種相似度的準(zhǔn)確度有較大的差距,顯示出該相似度在數(shù)據(jù)稀疏的情況下的優(yōu)越性;當(dāng)數(shù)據(jù)稀疏度為99.9%時(shí),此時(shí)更可以看出改進(jìn)相似度和另外2種相似度相比,它的準(zhǔn)確度更精準(zhǔn)。通過該圖可以看出,改進(jìn)相似度對(duì)數(shù)據(jù)稀疏度的影響有緩解效果。

      算法下一步是找出最近鄰居然后計(jì)算預(yù)測評(píng)分來計(jì)算RMSE。就像上文提到的近鄰的數(shù)量對(duì)于結(jié)果有著很大的影響。接下來將設(shè)置幾個(gè)對(duì)照組來對(duì)比分析近鄰對(duì)實(shí)驗(yàn)的影響。并且將本文算法與李容等[3]提出的基于改進(jìn)相似度的協(xié)同過濾算法(算法1)、邢長征等[6]提出的填補(bǔ)法和改進(jìn)相似度相結(jié)合的協(xié)同過濾算法(算法2)進(jìn)行對(duì)比實(shí)驗(yàn),在研究近鄰的影響的同時(shí)與普通的協(xié)同過濾算法進(jìn)行比較。如表3所示。

      表3 不同近鄰數(shù)K對(duì)RMSE的影響

      從表3可以明顯看出,本文算法相比上述的基于改進(jìn)相似度的協(xié)同過濾算法都有所提升,3種算法的性能依次對(duì)比為本文算法>算法1>算法2。在近鄰數(shù)K依次增長的情況下RMSE在逐漸減小。K的值的選取確實(shí)對(duì)于算法的精確性有非常大的影響。

      本文在計(jì)算相似度時(shí),改進(jìn)了馮君美等[23]的改進(jìn)相似度計(jì)算方法,為了驗(yàn)證該算法的優(yōu)越性,將本文算法與馮君美等提出的算法進(jìn)行對(duì)比實(shí)驗(yàn)。其中將馮君美等提出的算法稱做算法3。

      圖6是對(duì)比實(shí)驗(yàn)圖,從圖中可以看出,本文算法在初始時(shí),MAE的值差距相當(dāng)大,但當(dāng)K值逐漸變大之后,本文算法變動(dòng)區(qū)間相對(duì)較小,而算法3變動(dòng)區(qū)間比較大,但本文算法在該數(shù)據(jù)集下它的MAE值一直小于算法3,可以看出本文算法的優(yōu)越性。

      圖6 不同算法對(duì)比實(shí)驗(yàn)圖

      4 結(jié)束語

      本文采用了一種將用戶信息熵和面向數(shù)據(jù)稀疏的相似度相結(jié)合的推薦算法,分別用以解決協(xié)同過濾算法中噪音數(shù)據(jù)和數(shù)據(jù)稀疏性的問題,并通過實(shí)驗(yàn)表明本文的算法準(zhǔn)確性比普通的協(xié)同過濾算法有了一定的提升。

      但本文對(duì)噪音數(shù)據(jù)影響的研究是通過比較直接的方法,或許會(huì)在某種程度上進(jìn)行錯(cuò)誤判斷。在這個(gè)方面還有待提升,這是以后筆者可以進(jìn)一步研究發(fā)展的方向。

      猜你喜歡
      皮爾遜余弦信息熵
      基于信息熵可信度的測試點(diǎn)選擇方法研究
      現(xiàn)代統(tǒng)計(jì)學(xué)之父:卡爾·皮爾遜
      現(xiàn)代統(tǒng)計(jì)學(xué)之父:卡爾·皮爾遜
      Excel在水文學(xué)教學(xué)中的應(yīng)用
      卡方分布的探源
      基于信息熵的實(shí)驗(yàn)教學(xué)量化研究
      電子測試(2017年12期)2017-12-18 06:35:48
      一種基于信息熵的雷達(dá)動(dòng)態(tài)自適應(yīng)選擇跟蹤方法
      兩個(gè)含余弦函數(shù)的三角母不等式及其推論
      分?jǐn)?shù)階余弦變換的卷積定理
      圖像壓縮感知在分?jǐn)?shù)階Fourier域、分?jǐn)?shù)階余弦域的性能比較
      五华县| 运城市| 马山县| 水富县| 和平区| 天津市| 佛教| 嘉定区| 鄯善县| 江阴市| 呼和浩特市| 棋牌| 赞皇县| 义马市| 老河口市| 浠水县| 托里县| 平凉市| 杭锦旗| 塔城市| 白玉县| 穆棱市| 洛川县| 桑日县| 开封市| 迁西县| 营山县| 宁强县| 河源市| 莱芜市| 东台市| 清涧县| 息烽县| 卢湾区| 堆龙德庆县| 汾阳市| 当阳市| 外汇| 华容县| 华安县| 蕲春县|