陳豪 王澤珺
【摘 要】隨著大數(shù)據(jù)時(shí)代的到來(lái),數(shù)據(jù)已經(jīng)不再是匱乏資源,如何利用數(shù)據(jù)成為各界人士的關(guān)注點(diǎn)。在各界學(xué)者的研究中,個(gè)性化推薦算法無(wú)疑是主要研究領(lǐng)域之一,而且個(gè)性化推薦已經(jīng)廣泛應(yīng)用到新媒體、電商、游戲等領(lǐng)域。近年來(lái)使用頻率較多的個(gè)性化推薦算法有協(xié)同過(guò)濾的推薦算法、基于圖結(jié)構(gòu)的推薦算法和基于社交網(wǎng)絡(luò)的推薦算法等,文章對(duì)這3種個(gè)性化推薦算法做了綜述,闡述了它們的原理及用法。
【關(guān)鍵詞】個(gè)性化推薦;協(xié)同過(guò)濾;社交網(wǎng)絡(luò)推薦
【中圖分類(lèi)號(hào)】TP391.3 【文獻(xiàn)標(biāo)識(shí)碼】A 【文章編號(hào)】1674-0688(2019)02-0056-02
0 引言
隨著信息技術(shù)的快速發(fā)展,“互聯(lián)網(wǎng)+”、大數(shù)據(jù)時(shí)代的到來(lái),消費(fèi)者的每個(gè)行為甚至每個(gè)動(dòng)作都能以數(shù)據(jù)的形式記錄下來(lái)。數(shù)據(jù)不再是稀缺資源,如何利用好這些數(shù)據(jù)已經(jīng)成為學(xué)者、商家們所關(guān)心的問(wèn)題。特別是對(duì)于電商平臺(tái)而言,數(shù)據(jù)資源的利用已成為重中之重,關(guān)系到商家的生存。在數(shù)據(jù)的利用中,通過(guò)數(shù)據(jù)找出消費(fèi)者的興趣愛(ài)好,并向其推薦可能感興趣的物品,即個(gè)性化推薦技術(shù)已經(jīng)成為商家的研究重點(diǎn)。
個(gè)性化推薦技術(shù)發(fā)展于20世紀(jì)90年代,現(xiàn)已經(jīng)廣泛應(yīng)用于書(shū)籍、視頻、電商、金融等領(lǐng)域。個(gè)性化推薦是一種技術(shù)方法,它可以向用戶推薦用戶可能感興趣的物品?,F(xiàn)在較為常用的個(gè)性化推薦有基于內(nèi)存的協(xié)同過(guò)濾推薦、基于圖結(jié)構(gòu)的推薦和基于社交網(wǎng)絡(luò)的推薦。
1 基于協(xié)同過(guò)濾的個(gè)性化推薦
基于內(nèi)存的協(xié)同過(guò)濾又可以根據(jù)對(duì)象的不同分為基于用戶的協(xié)同過(guò)濾和基于項(xiàng)目的協(xié)同過(guò)濾。其基本思想是計(jì)算用戶間的相似度,按照相似度的高低進(jìn)行排序,設(shè)定相似度閾值或設(shè)置最近鄰用戶閾值,選取出若干個(gè)用戶,讓這些用戶評(píng)價(jià)過(guò)的產(chǎn)品形成候選集合,并對(duì)這些項(xiàng)目進(jìn)行加權(quán)計(jì)算得分并排序,將評(píng)分最高的項(xiàng)目推薦給用戶。如在一個(gè)系統(tǒng)中,用戶A與用戶B有相似的購(gòu)買(mǎi)行為,那么就可以通過(guò)計(jì)算它們之間的相似度來(lái)說(shuō)明用戶A與用戶B是相似用戶。而用戶A有過(guò)購(gòu)買(mǎi)且用戶B沒(méi)有購(gòu)買(mǎi)過(guò)的商品就可以被推薦給用戶B?;趦?nèi)存的推薦一般分為數(shù)據(jù)處理、相似度計(jì)算和產(chǎn)生推薦項(xiàng)目3個(gè)步驟。
1.1 數(shù)據(jù)處理
數(shù)據(jù)處理就是將數(shù)據(jù)變換成為用戶-項(xiàng)目評(píng)分矩陣的過(guò)程。用戶對(duì)項(xiàng)目的評(píng)分一般分為兩種:一是分值制,即用戶給項(xiàng)目打1~10分,分?jǐn)?shù)越高表示對(duì)這個(gè)項(xiàng)目越滿意,常見(jiàn)的5個(gè)等級(jí)的喜歡程度(非常喜歡、喜歡、一般、不喜歡、非常不喜歡)也屬于分值制。二是0-1制打分,即用戶與該項(xiàng)目有過(guò)交互行為記為1,否則記為0。數(shù)據(jù)經(jīng)過(guò)處理后可得到一個(gè)m×n的用戶-項(xiàng)目評(píng)分矩陣R,如式(1)所示。
1.2 相似度計(jì)算
相似度的計(jì)算是協(xié)同過(guò)濾算法的核心部分。主流的相似度計(jì)算方法有余弦相似度和皮爾遜相關(guān)系數(shù)法。相比于距離相似度的計(jì)算方法,余弦相似度更注重兩個(gè)向量在方向上的差異,而非距離或長(zhǎng)度。其計(jì)算公式如式(2)所示,式中Iuv表示用戶u與用戶間共同的評(píng)分項(xiàng)目。
皮爾遜相關(guān)系數(shù)法是用來(lái)衡量變量的線性關(guān)系,其不同于余弦相似度的地方在于它考慮了不同用戶對(duì)項(xiàng)目評(píng)分的標(biāo)準(zhǔn)。每個(gè)用戶打分的平均分是不同的,在計(jì)算相似度時(shí),應(yīng)該盡可能地減小這些誤差。其計(jì)算公式如式(3)所示,式中Iuv代表兩名用戶共同評(píng)分項(xiàng)目的集合。
1.3 產(chǎn)生推薦項(xiàng)目
在計(jì)算好用戶間的相似度后,就可以選取目標(biāo)推薦用戶的最近鄰用戶賦予權(quán)重,計(jì)算每個(gè)項(xiàng)目的得分并產(chǎn)生推薦。選取最近鄰用戶的方法一般有兩種:第一種是按照相似度進(jìn)行排序,選取k個(gè)相似度最高的用戶作為最近鄰的用戶。第二種方法是設(shè)置一個(gè)閾值,相似度高于閾值的都選取為近鄰用戶。在選取好近鄰用戶后,便可將近鄰用戶有過(guò)交互的項(xiàng)目作為候選項(xiàng)目集合,通過(guò)賦予近鄰用戶權(quán)重,計(jì)算候選項(xiàng)目集合中每個(gè)項(xiàng)目的得分,并排序向目標(biāo)用戶推薦。
2 基于圖結(jié)構(gòu)的個(gè)性化推薦
圖結(jié)構(gòu)是網(wǎng)絡(luò)結(jié)構(gòu)中一種特殊的結(jié)構(gòu),僅包含兩類(lèi)圖節(jié)點(diǎn)及這兩類(lèi)節(jié)點(diǎn)之間的連線,節(jié)點(diǎn)與線的集合構(gòu)成了圖。
假設(shè)存在一個(gè)無(wú)向圖網(wǎng)絡(luò),用G={V,E}表示,如果圖的定點(diǎn)集合V可以通過(guò)兩個(gè)互不相交的子集U和I表示,即 U∈V、I∈V、U∪I=φ。并且對(duì)于任意邊所連接的兩個(gè)定點(diǎn)u和i均有u∈U、i∈I,則稱(chēng)圖G是一個(gè)二部圖結(jié)構(gòu)。
在應(yīng)用于推薦系統(tǒng)時(shí),用戶類(lèi)別用圖中的方框圖形代表,物品類(lèi)別用圖中的圓形圖形代表。一般基于圖推薦的算法與協(xié)同過(guò)濾算法一樣,不在意推薦內(nèi)容的形式,可以處理非結(jié)構(gòu)化的數(shù)據(jù),可以應(yīng)用到圖書(shū)、電影、音樂(lè)等推薦場(chǎng)景中。
基于圖結(jié)構(gòu)的個(gè)性化推薦可以通過(guò)兩種方式來(lái)推薦物品。在第1種方法中,圖中用戶u對(duì)物品i的相近距離可以直接用于評(píng)估用戶u對(duì)物品i的評(píng)分。通過(guò)這種思維,在系統(tǒng)中為用戶推薦物品,可以直接用于評(píng)估用戶u對(duì)物品i的評(píng)分。通過(guò)這種思維,在系統(tǒng)中為用戶推薦物品,可以通過(guò)找到用戶u在圖中最近的物品。第2種方法則是將用戶或是物品間的相近距離看成它們之間的相似度權(quán)重,然后使用基于近鄰的推薦方法。
3 基于社交網(wǎng)絡(luò)的個(gè)性化推薦
近年來(lái),社交網(wǎng)絡(luò)在移動(dòng)互聯(lián)網(wǎng)快速發(fā)展,以新浪微博、微信、支付寶為首具有社交屬性的APP已經(jīng)成為手機(jī)必備。為此,學(xué)界、商界將目光聚集到社交網(wǎng)絡(luò)上,而基于社交網(wǎng)絡(luò)的推薦也得到快速發(fā)展。
社交網(wǎng)絡(luò)是一個(gè)維護(hù)朋友、家人關(guān)系的平臺(tái),也是認(rèn)識(shí)相同興趣者的一個(gè)平臺(tái)。在社交網(wǎng)絡(luò)中,我們每個(gè)人都是信息的生產(chǎn)者和消費(fèi)者?;谏缃痪W(wǎng)絡(luò)的推薦即建立在一個(gè)人們直接或間接相互關(guān)系之上。
基于社交網(wǎng)絡(luò)的推薦主要是依靠社交關(guān)系中一些指標(biāo)來(lái)量化用戶與用戶間的相似度或者叫信任關(guān)系。通過(guò)相似度來(lái)判斷目標(biāo)用戶的近鄰用戶,并將近鄰用戶感興趣的物品形成推薦候選集合。再根據(jù)用戶間的相似度進(jìn)行加權(quán)計(jì)算物品的分值,并向目標(biāo)用戶推薦感興趣的物品。在社交網(wǎng)絡(luò)的推薦中,計(jì)算用戶間相似度的方法是了解好友間的熟悉程度和興趣愛(ài)好程度。
兩個(gè)用戶的熟悉程度可以從共同的好友數(shù)量來(lái)度量,一般來(lái)說(shuō),共同好友越多,熟悉程度越密切。其計(jì)算如公式(4)所示。
兩個(gè)用戶的愛(ài)好相似度可以通過(guò)公式(5)來(lái)度量,其原理與計(jì)算用戶間的熟悉程度類(lèi)似。
除了用戶間的相似度外,還可以根據(jù)用戶歷史記錄來(lái)預(yù)測(cè)目標(biāo)用戶對(duì)該物品的喜好程度,即用戶u對(duì)物品i的興趣,可以通過(guò)公式(6)計(jì)算。
其中,out(u)是用戶u的好友集合,如果用戶u對(duì)項(xiàng)目i有過(guò)評(píng)分,當(dāng)用戶喜歡該項(xiàng)目時(shí)rvi=1,否則rvi=0。
綜合以上因素,最終可以形成用戶的綜合相似度,其公式如(7)所示。
式中,wvu由兩部分構(gòu)成,一部分是用戶u和用戶v的熟悉程度,另一部分是用戶u和用戶v的興趣相似度。
在社交網(wǎng)絡(luò)的個(gè)性化推薦中,可以通過(guò)研究用戶與朋友之間的興趣及相似度來(lái)將朋友喜歡的物品進(jìn)行加權(quán)排序推薦給目標(biāo)用戶。
4 結(jié)語(yǔ)
個(gè)性化推薦算法的研究有重大的學(xué)術(shù)價(jià)值和商業(yè)價(jià)值。從個(gè)人角度來(lái)講,它可以幫助用戶快速找到可能感興趣的商品;從公司角度來(lái)講,它可以發(fā)現(xiàn)用戶的愛(ài)好,幫助用戶節(jié)省挑選商品的時(shí)間,讓用戶快速購(gòu)買(mǎi)商品,讓商家獲得利潤(rùn)。盡管個(gè)性化推薦算法在近些年有了很大的進(jìn)步,但還有諸多需要改進(jìn)之處,比如數(shù)據(jù)的稀疏性問(wèn)題、冷啟動(dòng)問(wèn)題等??偟膩?lái)說(shuō),個(gè)性化推薦算法的準(zhǔn)確性和有效性還需要不斷提高,以適應(yīng)時(shí)代的發(fā)展。
參 考 文 獻(xiàn)
[1]劉青文.基于協(xié)同過(guò)濾的推薦算法研究[D].北京:中國(guó)科學(xué)技術(shù)大學(xué),2013.
[2]?;蹐@.協(xié)同過(guò)濾推薦算法研究[D].蘭州:蘭州大學(xué),2014.
[3]董坤.基于協(xié)同過(guò)濾算法的高校圖書(shū)館圖書(shū)推薦系統(tǒng)研究[J].現(xiàn)代圖書(shū)情報(bào)技術(shù),2011(11):44-47.
[4]馬宏偉,張光衛(wèi),李鵬.協(xié)同過(guò)濾推薦算法綜述[J].小型微型計(jì)算機(jī)系統(tǒng),2009(7):1282-1288.
[5]劉海峰.社交網(wǎng)絡(luò)用戶交互模型及行為偏好預(yù)測(cè)研究[D].北京:北京郵電大學(xué),2014.
[6]張志軍.社交網(wǎng)絡(luò)中個(gè)性化推薦模型及算法研究[D].濟(jì)南:山東師范大學(xué),2015.
[7]邢星.社會(huì)網(wǎng)絡(luò)個(gè)性化推薦方法研究[D].大連:大連海事大學(xué),2013.
[8]溫瑞龍.基于社交網(wǎng)絡(luò)的個(gè)性化推薦系統(tǒng)研究與實(shí)現(xiàn)[D].杭州:浙江工業(yè)大學(xué),2015.
[責(zé)任編輯:鐘聲賢]