亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        深度矩陣分解推薦算法*

        2021-02-25 12:16:26潘臘梅
        軟件學(xué)報(bào) 2021年12期
        關(guān)鍵詞:物品向量建模

        田 震,潘臘梅,尹 樸,王 睿,2

        1(北京科技大學(xué) 計(jì)算機(jī)與通信工程學(xué)院,北京 100083)

        2(北京科技大學(xué) 順德研究生院,廣東 佛山 528300)

        眾多協(xié)同過(guò)濾推薦算法中,矩陣分解(matrix factorization,簡(jiǎn)稱MF)算法因簡(jiǎn)單、易于實(shí)現(xiàn),得到了廣泛的應(yīng)用.但是矩陣分解通過(guò)簡(jiǎn)單的線性內(nèi)積方式無(wú)法建模用戶和物品之間復(fù)雜的非線性關(guān)系,限制了模型的推薦性能.雖然許多工作從多個(gè)方面對(duì)矩陣分解算法進(jìn)行改進(jìn),但是仍然采用線性內(nèi)積方式建模用戶和物品之間的交互,使得模型的性能提升有限.He 等人提出的廣義矩陣分解模型(generalized matrix factorization,簡(jiǎn)稱GMF)[1]利用神經(jīng)網(wǎng)絡(luò),通過(guò)一個(gè)激活函數(shù)和不全是1 的連接權(quán)重賦予了MF 非線性學(xué)習(xí)能力,將MF 推廣到非線性集合,提高了模型的表達(dá)能力.GMF 的淺層結(jié)構(gòu)使得它在建模用戶和物品的二階交互關(guān)系上有很好的表現(xiàn),然而卻并不能很好地捕捉到包含更豐富信息的用戶和物品之間的高階交互關(guān)系.隨著深度神經(jīng)網(wǎng)絡(luò)技術(shù)的不斷成熟,許多研究人員逐漸意識(shí)到深度神經(jīng)網(wǎng)絡(luò)強(qiáng)大的非線性學(xué)習(xí)能力和抽象特征學(xué)習(xí)能力,并開(kāi)始將其應(yīng)用到矩陣分解過(guò)程.但是現(xiàn)有研究要么對(duì)于協(xié)同過(guò)濾部分仍采用線性內(nèi)積,要么只建模了用戶和物品的二階交互關(guān)系,忽略了包含更多信息的高階交互,導(dǎo)致模型性能受限.

        針對(duì)以上問(wèn)題,本文提出了一種深度矩陣分解推薦算法,算法在廣義矩陣分解算法的基礎(chǔ)上,通過(guò)在非線性內(nèi)積得到的用戶和物品的二階交互之上引入隱藏層,利用深度神經(jīng)網(wǎng)絡(luò)建模用戶和物品之間復(fù)雜的高階非線性交互關(guān)系.實(shí)驗(yàn)結(jié)果表明,提出的深度矩陣分解推薦算法對(duì)于模型推薦性能具有顯著的提升.

        1 相關(guān)工作

        在眾多協(xié)同過(guò)濾推薦算法中,矩陣分解算法因其可擴(kuò)展性和易于實(shí)現(xiàn),成為最為普遍和最受歡迎的一種協(xié)同推薦算法.通過(guò)一組潛在的特征因子,把用戶評(píng)分矩陣分解為user-factor matrix 和item-factor matrix.矩陣分解利用潛在因子向量描述用戶和物品,即:將用戶和物品映射到共享的潛在向量空間中,并通過(guò)映射向量之間的內(nèi)積來(lái)表達(dá)用戶與物品間的交互關(guān)系[2,3].為了進(jìn)一步提升推薦性能,許多的工作對(duì)矩陣分解算法進(jìn)行改進(jìn),并取得了顯著的成果.Steffen 等人對(duì)于BPR-OPT 的學(xué)習(xí)模型提出了基于隨機(jī)梯度下降和bootstrap 抽樣的一般學(xué)習(xí)算法LearnBPR,并將其用于矩陣分解過(guò)程[4].Badrul 等人[5]提出了奇異值分解(SVD)來(lái)學(xué)習(xí)特征矩陣,但由SVD學(xué)習(xí)的MF 模型容易過(guò)擬合.之后,Pan 等人提出一種帶案例權(quán)重的正則化最小二乘優(yōu)化算法WR-MF[6].此外,Mohsen 等人提出了SocialMF 算法[7],根據(jù)用戶信任關(guān)系,利用信任用戶的潛在特征向量來(lái)增強(qiáng)矩陣分解,得到的用戶潛在特征向量,從而提升模型推薦性能.但是,這種方法只使用信任關(guān)系的表面信息進(jìn)行推薦,沒(méi)有考慮社交網(wǎng)絡(luò)中信任關(guān)系是由多種因素形成的,所以郭等人在SocialMF 的基礎(chǔ)上提出了StrengthMF[8],將信任關(guān)系網(wǎng)絡(luò)與評(píng)分信息聯(lián)合用于矩陣分解過(guò)程,從而優(yōu)化了推薦結(jié)果.同時(shí),孫等人[9]提出了SequentialMF 推薦算法,該算法通過(guò)對(duì)用戶時(shí)序行為建模發(fā)現(xiàn)用戶鄰居,從而將鄰居信息融合到矩陣分解過(guò)程.雖然這些算法從不同的方面改進(jìn)矩陣分解過(guò)程,使得模型推薦性能得到改善,但是這些算法的性能仍然受到因采取內(nèi)積的方式建模用戶和物品交互的限制,這種線性乘積的結(jié)合方式可能并不足以有效地捕捉交互數(shù)據(jù)中的非線性結(jié)構(gòu).即:簡(jiǎn)單和固定的內(nèi)積有其局限性,會(huì)對(duì)模型造成一定的限制.

        為了解決上述問(wèn)題,He 等人在GMF 中利用神經(jīng)網(wǎng)絡(luò)的非線性學(xué)習(xí)能力,在MF 之上引入神經(jīng)網(wǎng)絡(luò)賦予模型學(xué)習(xí)用戶和物品之間的非線性交互關(guān)系的能力,進(jìn)一步提升了模型的表達(dá)能力.但是,GMF 中僅包含嵌入層和輸出層,在得到用戶和物品潛在特征向量后,通過(guò)在向量對(duì)應(yīng)元素相乘的結(jié)果上添加一層全連接輸出層就輸出了結(jié)果,只是建模了用戶和物品之間的二階交互,并不能有效地捕捉到包含更豐富信息的用戶和物品之間的高階交互關(guān)系.即:GMF 的淺層結(jié)構(gòu)能夠建模用戶和物品間交互的低層特征,但是并不能有效地捕捉到包含許多豐富信息、更抽象的高階交互,高階交互信息的缺失一定程度上會(huì)限制模型的推薦性能.

        近些年,深度神經(jīng)網(wǎng)絡(luò)開(kāi)始成為學(xué)術(shù)界和工業(yè)界的研究重點(diǎn).深度神經(jīng)網(wǎng)絡(luò)通常擁有更多層次的隱藏層,單層隱藏層能夠把輸入數(shù)據(jù)的特征抽象到另一個(gè)維度空間,來(lái)展現(xiàn)其更抽象化的特征;而多隱藏層能夠?qū)斎胩卣鬟M(jìn)行多層次的抽象,最終幫助模型更好的線性劃分不同類型的數(shù)據(jù).深度神經(jīng)網(wǎng)絡(luò)因?yàn)槠鋵?duì)更高層次、更抽象特征的學(xué)習(xí)能力,使得越來(lái)越多的工作開(kāi)始嘗試將矩陣分解與深度神經(jīng)網(wǎng)絡(luò)結(jié)合進(jìn)行推薦任務(wù).文獻(xiàn)[10]結(jié)合了矩陣分解和深度卷積網(wǎng)絡(luò),將通過(guò)應(yīng)用WMF[11]得到的潛在因子向量作為訓(xùn)練預(yù)測(cè)模型的基真值來(lái)訓(xùn)練深度卷積神經(jīng)網(wǎng)絡(luò),從而進(jìn)行音樂(lè)的推薦任務(wù).Zhang 等人利用異構(gòu)網(wǎng)絡(luò)嵌入和深度學(xué)習(xí)嵌入方法,從知識(shí)庫(kù)的結(jié)構(gòu)知識(shí)、文本知識(shí)和視覺(jué)知識(shí)中自動(dòng)提取語(yǔ)義表示,然后結(jié)合協(xié)同過(guò)濾中的矩陣分解模型來(lái)進(jìn)行推薦[12].Wang等人提出了CDL 模型[13],通過(guò)對(duì)內(nèi)容信息進(jìn)行深度表示學(xué)習(xí)和對(duì)評(píng)分矩陣進(jìn)行協(xié)同過(guò)濾,使得模型具有很好的表達(dá)能力.這些方法通過(guò)深度神經(jīng)網(wǎng)絡(luò)很好地建模用戶和物品之間的復(fù)雜的非線性高階交互,賦予了模型學(xué)習(xí)用戶和物品之間更抽象關(guān)系的能力,很好地提升了模型的表達(dá)能力,但是對(duì)于協(xié)同過(guò)濾部分仍采用MF,通過(guò)簡(jiǎn)單的線性內(nèi)積結(jié)合用戶和物品的特征向量,一定程度上限制了模型的推薦性能.

        此外,針對(duì)以往的MF 方法大多只采用顯式評(píng)分進(jìn)行個(gè)性化推薦,忽略了用戶和信息項(xiàng)的隱式反饋的重要性問(wèn)題,Zhou 等人[14]提出了基于深度神經(jīng)網(wǎng)絡(luò)的矩陣分解模型HDMF.同時(shí)利用顯式評(píng)分和隱式反饋?zhàn)鳛檩斎?并結(jié)合深度神經(jīng)網(wǎng)絡(luò)獲取潛在因子.同時(shí),應(yīng)用遞歸神經(jīng)網(wǎng)絡(luò)(RNN)將文本數(shù)據(jù)轉(zhuǎn)換為輔助因子特征,以促進(jìn)項(xiàng)目的表達(dá),進(jìn)一步提升了矩陣分解模型的推薦性能.為了方便、高效地集成各種輔助信息,Yi 等人提出了深度矩陣分解模型DMF.基于提出的隱式反饋嵌入(IFE)方法和one-hot 編碼,DMF 能夠獲取融合多種輔助信息的用戶和物品的向量表示,然后通過(guò)多層感知器(MLP)分別對(duì)用戶和物品向量進(jìn)行特征轉(zhuǎn)換,最終完成基于矩陣分解的推薦任務(wù)[15].為了充分學(xué)習(xí)用戶和物品的特征表示向量,Ma 等人[16]提出了偏置深度矩陣分解模型BDMF,該模型利用深層神經(jīng)網(wǎng)絡(luò)強(qiáng)大的表示學(xué)習(xí)能力,建模用戶和項(xiàng)目的抽象特征表示,同時(shí)借鑒BiasedSVD 將偏差引入用戶和項(xiàng)目的特征表示中,進(jìn)而將用戶和項(xiàng)目從評(píng)分矩陣映射到低維空間.盡管以上3 個(gè)模型結(jié)合深度神經(jīng)網(wǎng)絡(luò)對(duì)矩陣分解算法性能進(jìn)行了進(jìn)一步的改善,但是他們的關(guān)注重點(diǎn)是利用深度神經(jīng)網(wǎng)絡(luò)強(qiáng)大的非線性學(xué)習(xí)能力幫助模型去學(xué)習(xí)用戶和物品的抽象特征表示,在建模用戶和物品的交互關(guān)系時(shí),仍然只考慮了用戶和物品的二階交互,導(dǎo)致包含更多抽象信息的高階交互被忽略.所以,本文提出了深度矩陣分解模型,通過(guò)在GMF 之上添加隱藏層,既能解決矩陣分解簡(jiǎn)單線性內(nèi)積對(duì)模型的限制問(wèn)題,又能利用深層神經(jīng)網(wǎng)絡(luò)來(lái)建模用戶和物品之間的非線性高階交互.

        2 深度矩陣分解模型

        2.1 問(wèn)題定義

        基于可讀性,我們?cè)诒? 中列出了本文使用的重要數(shù)學(xué)符號(hào).

        Table 1 Symbol definition表1 符號(hào)定義

        基于這些符號(hào),我們對(duì)問(wèn)題進(jìn)行了形式化定義.

        問(wèn)題定義.假設(shè)有用戶集U={u1,u2,u3,…,uM},項(xiàng)目集I={i1,i2,i3,…,iN},其中,M為用戶數(shù)目,N為物品數(shù)目.YM×N為用戶-物品評(píng)分矩陣.現(xiàn)給定用戶u∈U、物品i∈I,其中,用戶u未與物品i產(chǎn)生交互.我們的目標(biāo)是根據(jù)用戶評(píng)分矩陣YM×N中用戶u的歷史評(píng)分記錄,建模用戶u的偏好,進(jìn)而預(yù)測(cè)用戶u對(duì)物品i的偏好評(píng)分,再根據(jù)預(yù)測(cè)值對(duì)商品排名,最終為用戶推薦前n個(gè)物品.

        2.2 DMF模型

        為了學(xué)習(xí)用戶和物品之間復(fù)雜的高階非線性交互關(guān)系,本文提出了深度矩陣分解模型,該框架如圖1 所示.

        Fig.1 Deep matrix factorization model圖1 深度矩陣分解模型

        該框架主要由為5 個(gè)部分組成:Input Layer(輸入層),Embedding Layer(嵌入層),GMF Layer(GMF 層),Hidden Layer(隱藏層)和Output Layer(輸出層).輸入層獲取用戶和物品數(shù)據(jù);在嵌入層,通過(guò)嵌入技術(shù)得到用戶和物品的潛在特征向量;隨后,在GMF 層通過(guò)向量間對(duì)應(yīng)元素相乘建模用戶和物品的二階交互關(guān)系;再將結(jié)果輸入到隱藏層中,利用深度神經(jīng)網(wǎng)絡(luò)對(duì)結(jié)果進(jìn)行迭代訓(xùn)練,從而建模用戶和物品之間的高階交互關(guān)系;最后,在輸出層得到用戶對(duì)物品的評(píng)分預(yù)測(cè).下面分別對(duì)模型各個(gè)組成模塊進(jìn)行詳細(xì)闡述.

        ? Input Layer(輸入層)

        對(duì)于用戶(物品)的原始數(shù)據(jù),一般通過(guò)編碼的方式把它轉(zhuǎn)換為數(shù)值數(shù)據(jù).通常分為兩步,即整數(shù)編碼和one- hot 編碼.整數(shù)編碼會(huì)給每一個(gè)用戶和物品都分配一個(gè)整數(shù)值,比如用1 表示user1,2 表示user2.但是整數(shù)之間自然的排序方式會(huì)讓模型假設(shè)用戶(物品)之間也具有某種次序關(guān)系,從而可能會(huì)影響模型的性能.所以,還需要對(duì)整數(shù)表示進(jìn)行one-hot 編碼,為每個(gè)整數(shù)值創(chuàng)建二值表示:除了整數(shù)的索引為1 外,其他都是0,即one-hot 編碼在任意時(shí)候只有一個(gè)有效位置.本文將用戶編號(hào)和物品編號(hào)視為兩個(gè)不同的離散特征進(jìn)行處理,并且將用戶編號(hào)和物品編號(hào)分開(kāi),分別采用one-hot 編碼進(jìn)行編碼.所以輸入層用戶表示為001000…,其中,編碼長(zhǎng)度為用戶數(shù)目M;輸入層物品表示為01000…,其中,編碼長(zhǎng)度為物品數(shù)目N.

        ? Embedding Layer(嵌入層)

        從輸入層得到的one-hot 編碼是高維稀疏的,會(huì)嚴(yán)重影響模型訓(xùn)練效率,所以在嵌入層通過(guò)one-hot 編碼與潛在特征矩陣相乘將用戶(物品)表示映射到低維密致空間,從而得到潛在特征向量.其中,PM×K為用戶潛在特征矩陣,M為用戶數(shù)目,K為潛在特征維度,K<

        ? GMF Layer(GMF 層)

        將嵌入層得到的潛在特征向量pu和qi對(duì)應(yīng)元素相乘,得到K維的向量,如公式(1)所示:

        雖然通過(guò)內(nèi)積得到用戶和物品的二階交互,但是簡(jiǎn)單的線性內(nèi)積不足以建模用戶和物品之間復(fù)雜的非線性結(jié)構(gòu),所以再將內(nèi)積結(jié)果輸入到一層神經(jīng)網(wǎng)絡(luò)中,如公式(2)所示,由此來(lái)學(xué)習(xí)二階交互的非線性關(guān)系,這就是GMF 模型:

        其中,a1為激活函數(shù),W1和b1別為連接權(quán)值和偏置值.

        ? Hidden Layer(隱藏層)

        GMF 層在特征向量pu和qi對(duì)應(yīng)元素相乘得到的K維向量之上設(shè)置了一層神經(jīng)網(wǎng)絡(luò),通過(guò)激活函數(shù)和偏置項(xiàng)賦予了模型建模用戶和物品之間的非線性交互關(guān)系的能力,能夠有效地?cái)M合用戶和物品的非線性二階交互信息.但是GMF 是一個(gè)淺層模型,盡管能夠有效地建模用戶和物品交互的低層特征,然而并不能有效地捕捉到包含許多豐富信息更抽象的特征.比如:輸入用戶對(duì)音樂(lè)的交互信息,通過(guò)一層神經(jīng)網(wǎng)絡(luò)訓(xùn)練學(xué)習(xí)最后捕捉到用戶更偏好古典音樂(lè);接著,將獲取的結(jié)果輸入到下一層神經(jīng)網(wǎng)絡(luò)進(jìn)行學(xué)習(xí),捕獲到用戶更傾向于聽(tīng)古典音樂(lè)中莫扎特的音樂(lè)曲.所以,這里在GMF Layer 的基礎(chǔ)上引入更多的隱藏層,通過(guò)深層神經(jīng)網(wǎng)絡(luò)能夠捕捉更抽象特征的特點(diǎn),來(lái)建模用戶和物品之間的高階交互關(guān)系.因此,有:

        其中,zL-1為第L-1 層網(wǎng)絡(luò)的輸出,a2,aL-1為各個(gè)隱藏層的激活函數(shù),和b2,bL-1分別為各個(gè)隱藏層的連接 權(quán)值和偏置項(xiàng).

        ? Output Layer(輸出層)

        得到第L-1 層神經(jīng)網(wǎng)絡(luò)的訓(xùn)練結(jié)果zL-1后,再將其輸入到一個(gè)全連接的隱藏層,最終得到用戶對(duì)于物品的預(yù)測(cè)評(píng)分.如公式(4)所示:

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

        本節(jié)主要工作是在兩個(gè)真實(shí)世界數(shù)據(jù)集MovieLens 和Anime 上訓(xùn)練模型,利用NDCG 和HR 兩個(gè)性能指標(biāo),通過(guò)與對(duì)比方法性能指標(biāo)的對(duì)比分析來(lái)驗(yàn)證模型的可行性和有效性.主要圍繞一下4 個(gè)方面來(lái)進(jìn)行分析.

        1) 深度矩陣分解模型推薦性能表現(xiàn);

        2) 深度矩陣分解模型中潛在向量維度對(duì)模型性能影響;

        3) 訓(xùn)練集中負(fù)樣本采樣數(shù)對(duì)模型性能影響;

        4) 隱藏層層數(shù)對(duì)模型性能影響.

        3.1 實(shí)驗(yàn)設(shè)置

        3.1.1 數(shù)據(jù)集

        本文主要在兩個(gè)公開(kāi)數(shù)據(jù)集MovieLens[17]和Anime[18]上對(duì)模型的推薦性能進(jìn)行分析驗(yàn)證.具體數(shù)據(jù)集特征見(jiàn)表2.

        ? MovieLens 數(shù)據(jù)集是廣泛應(yīng)用于推薦系統(tǒng)的電影數(shù)據(jù)集,主要由電影評(píng)分?jǐn)?shù)據(jù)、用戶人口統(tǒng)計(jì)學(xué)數(shù)據(jù)以及電影屬性數(shù)據(jù),含有多個(gè)不同數(shù)據(jù)大小的版本.這里,我們使用 MovieLens 1M 數(shù)據(jù)集,記為MovieLens.MovieLens 1M 數(shù)據(jù)集含有來(lái)自6 000 名用戶對(duì)4000 部電影的100 萬(wàn)條評(píng)分?jǐn)?shù)據(jù),分值范圍為1~5;

        ? Anime 是一個(gè)公開(kāi)的推薦數(shù)據(jù)集,包含73 516 名用戶對(duì)12 294 部動(dòng)漫的7 813 738 條評(píng)分?jǐn)?shù)據(jù).該數(shù)據(jù)集包含3 個(gè)分類:用戶id、動(dòng)漫id 和用戶對(duì)動(dòng)漫的評(píng)分,其中,評(píng)分范圍為1~10.為了緩解數(shù)據(jù)集稀疏問(wèn)題,對(duì)數(shù)據(jù)集進(jìn)行過(guò)濾處理,過(guò)濾后的數(shù)據(jù)集包含8 289 個(gè)用戶對(duì)6 335 部動(dòng)漫的2 964 160 個(gè)評(píng)分.

        這里,我們采用隱式反饋的數(shù)據(jù),所以需要把顯式評(píng)分?jǐn)?shù)據(jù)轉(zhuǎn)化為隱式數(shù)據(jù).即:對(duì)于MovieLens 數(shù)據(jù)來(lái)說(shuō),將評(píng)分矩陣中有評(píng)分記錄的1~5 的值記為1,沒(méi)有評(píng)分記錄的記為0.同時(shí)選取每個(gè)用戶最近一次的交互記錄作為測(cè)試樣本,并和隨機(jī)抽樣的99 個(gè)未交互的樣本組合成測(cè)試數(shù)據(jù)集,其余的數(shù)據(jù)作為訓(xùn)練樣本組成訓(xùn)練集.對(duì)Anime 數(shù)據(jù)集做同樣處理.

        Table 2 Dataset description表2 數(shù)據(jù)集描述

        3.1.2 評(píng)估指標(biāo)

        由于為每個(gè)用戶預(yù)測(cè)其對(duì)所有未產(chǎn)生交互的物品的偏好過(guò)于耗費(fèi)時(shí)間,所以這里遵循一般的策略[2,19].通過(guò)第3.1.1 節(jié)中描述的采樣方式,為每個(gè)用戶采集1 個(gè)正樣本和99 個(gè)負(fù)樣本組成的測(cè)試集,并為用戶預(yù)測(cè)其對(duì)這100 個(gè)物品的偏好,并按照預(yù)測(cè)值從大到小排序,生成Top-10 的排名列表.

        推薦性能由命中率HR(hit ratio)與NDCG(normalized discounted cumulative gain)[20]來(lái)衡量.

        ? HR 直觀地評(píng)估測(cè)試物品是否在Top-10 列表中:若存在于Top-10 列表中,則為1;否則為0.對(duì)所有的用戶求平均,則命中率代表了命中用戶偏好的概率.計(jì)算公式如公式(5)所示:

        其中,K表示排名列表長(zhǎng)度,分子為生成的排名列表中包含測(cè)試正樣本的用戶數(shù),分母為用戶的總數(shù).

        ? NDCG 用來(lái)衡量測(cè)試樣本命中的位置,該值越大,則說(shuō)明測(cè)試物品出現(xiàn)在排名列表中更靠前的位置.為每個(gè)用戶計(jì)算該指標(biāo)值,并且求取平均.計(jì)算公式如公式(6)所示:

        其中,K表示排名列表的長(zhǎng)度,N為用戶總數(shù).i為排名列表中測(cè)試正樣本命中的位置,i∈[1,K].可以看出:測(cè)試正樣本在排名列表中的位置越靠前,即i越小,該值越大.

        3.1.3 對(duì)比方法及參數(shù)設(shè)置

        我們將DMF 模型與以下4 個(gè)基準(zhǔn)方法進(jìn)行分析對(duì)比,從而驗(yàn)證模型的有效性.

        ? ItemPop 是一種非個(gè)性化推薦方法[21],它將物品與用戶交互次數(shù)作為物品的流行度,按照物品的流行度產(chǎn)生物品排名列表,并將排名列表中的前N項(xiàng)推薦給用戶;

        ? ItemKNN 是一種協(xié)同過(guò)濾推薦方法[22],它根據(jù)用戶與物品的交互記錄計(jì)算物品間的相似度,再結(jié)合待推薦物品與用戶已有評(píng)分交互的鄰居物品來(lái)預(yù)測(cè)用戶對(duì)待推薦物品的預(yù)測(cè)偏好;

        ? BPR-MF[4]是一種具有代表性的基于成對(duì)學(xué)習(xí)的MF 模型,損失函數(shù)關(guān)注的是成對(duì)排序損失,即最大化正樣本與負(fù)樣本之間的排序[4,23],而不是減少預(yù)測(cè)值與真實(shí)值之間的誤差,正負(fù)采樣率控制為1:1;

        ? GMF 是一種改進(jìn)后的矩陣分解算法[1],通過(guò)激活函數(shù)和權(quán)值不全為1 的連接權(quán)重泛化了矩陣分解模型,使得模型能夠建模用戶和物品之間非線性二階交互.

        以上方法模型和所提出的方法模型DMF 都基于Tensorflow 實(shí)現(xiàn).對(duì)于基于神經(jīng)網(wǎng)絡(luò)的模型,通過(guò)均值為0、方差0.01 的截?cái)嗟恼龖B(tài)分布來(lái)初始化模型參數(shù),并通過(guò)交叉熵?fù)p失函數(shù)和Adam 梯度下降算法來(lái)優(yōu)化模型.模型批次大小為256,初始學(xué)習(xí)率為0.001,隱藏層的激活函數(shù)設(shè)置為ReLU,輸出層的激活函數(shù)設(shè)置為Sigmoid.

        3.2 性能比較和分析

        我們從以下4 個(gè)方面進(jìn)行性能評(píng)價(jià)和比較分析.

        ? Result 1:模型HR@10 和NDCG@10 性能指標(biāo)比較

        為了回答問(wèn)題1,我們比較了提出的DMF 模型和ItemPop,ItemKNN,BPR,GMF 這4 個(gè)基準(zhǔn)方法的性能.分別在MovieLens 和Anime 兩個(gè)數(shù)據(jù)集上訓(xùn)練了這5 個(gè)模型,表3 顯示了這5 個(gè)模型在每個(gè)數(shù)據(jù)集中HR@10 和NDCG@10 的表現(xiàn)情況.

        Table 3 Performance comparison of deep matrix factorization andbaselines表3 深度矩陣分解與基準(zhǔn)方法性能對(duì)比

        通過(guò)表3 不難看出:在兩個(gè)數(shù)據(jù)集上,HR@10 和NDCG@10 指標(biāo)都是DMF>>GMF>>BPR>>ItemKNN>>ItemPop.我們提出的DMF 模型在兩個(gè)數(shù)據(jù)集上的性能表現(xiàn)都優(yōu)于基準(zhǔn)方法模型.

        ? 相比較于GMF 模型,其在Anime 數(shù)據(jù)集上的HR@10 和NDCG@10 指標(biāo)分別提升了0.045 6 和0.060 9;而在MovieLens 數(shù)據(jù)集上,兩個(gè)指標(biāo)分別提升了0.005 9 和0.019 8;

        ? 相比較于ItemPop 方法,DMF 在MovieLens 數(shù)據(jù)集上兩個(gè)指標(biāo)分別提升了0.247 5 和0.174 6;而在Anime 數(shù)據(jù)集上,HR@10 和NDCG@10 指標(biāo)分別提升了0.371 7 和0.285 9.

        在這些模型中,ItemPop 表現(xiàn)最差.這可能是由于ItemPop 是根據(jù)物品在所有用戶中受歡迎程度來(lái)推薦的,不能滿足用戶的個(gè)性化需求,無(wú)法提供個(gè)性化推薦.這表明,非個(gè)性化的推薦方法不能有效地用來(lái)預(yù)測(cè)用戶偏好.ItemKNN 方法基于用戶和物品的歷史交互矩陣來(lái)計(jì)算物品相似度進(jìn)行物品推薦,雖然能一定程度上滿足用戶個(gè)性化需求;但是由于交互矩陣的稀疏性問(wèn)題,導(dǎo)致物品相似度的計(jì)算偏差大,所以整體影響了最終模型的推薦性能,因此推薦性能雖然相對(duì)于ItemPop 方法有了很大提升,但是性能還是低于BPR,GMF 和DMF.同時(shí),DMF和GMF 推薦性能強(qiáng)于BPR,這可能是因?yàn)镈MF 和GMF 有著更靈活的正負(fù)采樣率,對(duì)于每個(gè)正訓(xùn)練樣本采樣更多的合適負(fù)樣本,更準(zhǔn)確建模現(xiàn)實(shí)世界用戶和物品交互的場(chǎng)景.同時(shí),結(jié)果表明:相比較于BPR 中采用簡(jiǎn)單線性內(nèi)積建模用戶和物品之間的交互,采用神經(jīng)網(wǎng)絡(luò)賦予模型非線性的學(xué)習(xí)能力的DMF 和GMF 具有更突出的表達(dá)能力.而DMF 的HR@10 和NDCG@10 指標(biāo)在兩個(gè)數(shù)據(jù)集上表現(xiàn)都優(yōu)于GMF,這可能是因?yàn)樘砑拥碾[藏層將在GMF 得到的二階交互映射到更深層次的抽象空間中,從而學(xué)習(xí)到用戶和物品間更高階交互關(guān)系.這表明:通過(guò)添加隱藏層,利用深層神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)高階抽象特征的特點(diǎn),使得模型能夠建模用戶和物品之間的高階非線性交互關(guān)系,由此模型具有更突出的表達(dá)能力.

        ? Result 2:潛在向量維度影響

        為了回答問(wèn)題2 潛在向量維度對(duì)模型性能的影響,我們比較了潛在向量維度為10,20,40 和80 下,ItemKNN,BPR,GMF 和DMF 這4 個(gè)模型在MovieLens 和Anime 兩個(gè)數(shù)據(jù)集上的性能表現(xiàn),如圖2 和圖3 所示.由于ItemPop方法性能相對(duì)于其他方法表現(xiàn)差距較大,這里不予以比較.

        由圖2 和圖3 首先可以看到:隨著潛在維度的不斷增加,4 個(gè)模型的HR@10 和NDCG@10 指標(biāo)不斷提升,模型的推薦性能不斷改善.這是因?yàn)樵诘竭_(dá)最佳潛在向量維度之前,隨著維度的增加,潛在向量可以包含更多的信息量,對(duì)于用戶和物品特征描述更加全面具體,能夠更有效地建模用戶和物品的潛在特征,所以模型具有更突出的表現(xiàn)能力,推薦性能得到顯著改善.但是維度并不是越大越好,因?yàn)楫?dāng)潛在向量維度過(guò)大時(shí),會(huì)導(dǎo)致模型過(guò)擬合,這也是為什么當(dāng)在MovieLens 數(shù)據(jù)集上,潛在向量維度達(dá)到40 后,HR@10 和NDCG@10 指標(biāo)開(kāi)始下降;同樣地,在Anime 數(shù)據(jù)集上,潛在向量維度達(dá)到40 后,HR@10 和NDCG@10 指標(biāo)也開(kāi)始下降.同時(shí),我們從圖2和圖3 可以得出結(jié)論,DMF 模型在MovieLens 和Anime 數(shù)據(jù)集上最佳潛在向量維度都為40.其次,可以看到:在MovieLens 和Anime 兩個(gè)數(shù)據(jù)集中,DMF 模型在不同維度下,HR@10 和NDCG@10 指標(biāo)都明顯高于其他3 個(gè)模型.而在圖3 中,甚至在潛在維度為10,DMF 模型性能最差的時(shí)候,其HR@10 和NDCG@10 指標(biāo)仍然高于BPR模型,這表明我們提出的DMF 模型的有效性.

        Fig.2 HR@10 and NDCG@10 of models with different potential vector dimension in MovieLens圖2 MovieLens 數(shù)據(jù)集下不同潛在向量維度模型的HR@10 和NDCG@10

        Fig.3 HR@10 and NDCG@10 of models with different potential vector dimension in Anime圖3 Anime 數(shù)據(jù)集下不同潛在向量維度模型的HR@10 和NDCG@10

        ? Result 3:負(fù)樣本采樣數(shù)影響

        BPR 損失函數(shù)關(guān)注的是成對(duì)排序損失,即最大化正樣本與負(fù)樣本之間的排序.構(gòu)造訓(xùn)練集時(shí),正負(fù)樣本采樣率固定為1:1 來(lái)采集數(shù)據(jù)樣本.而DMF 和MLP 采用Log Loss,其關(guān)注重點(diǎn)為逐點(diǎn)損失,一般通過(guò)最小化預(yù)測(cè)值?y和目標(biāo)值y之間的平方誤差來(lái)更新參數(shù),具有靈活的負(fù)樣本采樣特點(diǎn).為了探究負(fù)樣本采樣數(shù)對(duì)模型推薦性能的影響,我們?cè)谪?fù)樣本采樣數(shù)為1,3,5,7 和9 的情況下,分別將BPR,GMF 和DMF 這3 個(gè)模型在MovieLens 和Anime 兩個(gè)數(shù)據(jù)集上進(jìn)行了訓(xùn)練,得到了模型的HR@10 和NDCG@10 指標(biāo)表現(xiàn)情況,結(jié)果如圖4 和圖5 所示.

        Fig.4 HR@10 and NDCG@10 of models with different number of negative samples collected in MovieLens圖4 MovieLens 數(shù)據(jù)集下不同負(fù)樣本采集數(shù)模型的HR@10 和NDCG@10

        Fig.5 HR@10 and NDCG@10 of models with different number of negative samples collected in Anime圖5 Anime 數(shù)據(jù)集下不同負(fù)樣本采集數(shù)模型的HR@10 和NDCG@10

        首先,由圖4 和圖5 不難看出:擁有更靈活負(fù)樣本采樣的DMF 和GMF 模型相比較于BPR 模型來(lái)說(shuō),在兩個(gè)數(shù)據(jù)集上具有更好的表現(xiàn);同時(shí),隨著負(fù)樣本采樣數(shù)的增加,DMF 模型的HR@10 和NDCG@10 指標(biāo)在逐步增加.這表明,靈活的采樣使得模型具有更突出的表達(dá)能力.這是因?yàn)?通過(guò)向訓(xùn)練集中添加負(fù)樣本,使得訓(xùn)練集更符合真實(shí)世界用戶和物品交互的稀疏場(chǎng)景;此外,通過(guò)采集負(fù)樣本,使得在訓(xùn)練模型過(guò)程中更新參數(shù)時(shí)只更新部分參數(shù),其他參數(shù)全部固定,從而減少整個(gè)訓(xùn)練過(guò)程計(jì)算量,并加速了模型的收斂過(guò)程.其次還可以看出:當(dāng)負(fù)樣本采樣數(shù)達(dá)到某個(gè)值之后,隨著采樣數(shù)的增加,模型的推薦性能反而下降了.這是因?yàn)樨?fù)樣本采樣數(shù)過(guò)大,導(dǎo)致訓(xùn)練數(shù)據(jù)集出現(xiàn)正負(fù)樣本不均衡,從而影響了模型的表現(xiàn)能力.例如:一個(gè)訓(xùn)練集中正負(fù)樣本比為1:99,如果模型的預(yù)測(cè)結(jié)果全都是負(fù)樣本,那么模型的準(zhǔn)確率就能夠達(dá)到99%;同時(shí),損失值會(huì)非常小,但是這樣的模型是沒(méi)有實(shí)際意義的,模型的推薦效果是很差的.所以,適當(dāng)?shù)乜刂曝?fù)樣本的采樣數(shù),能夠提升模型的推薦性能.對(duì)于DMF 模型來(lái)說(shuō),在MovieLens 數(shù)據(jù)集上的最優(yōu)負(fù)樣本采樣數(shù)是5,在Anime 數(shù)據(jù)集上的最優(yōu)負(fù)樣本采樣數(shù)是7.

        ? Result 4:隱藏層數(shù)量影響

        通過(guò)前面的實(shí)驗(yàn)與分析,我們不難得出結(jié)論:通過(guò)向GMF 模型添加隱藏層,能夠建模用戶和物品之間更高階的交互關(guān)系,采用更深層次的神經(jīng)網(wǎng)絡(luò)來(lái)學(xué)習(xí)更抽象的用戶和物品特征,使得模型具有更好的表達(dá)能力.為了探究隱藏層層數(shù)對(duì)模型推薦性能影響,我們分別設(shè)置了隱藏層層數(shù)為0,4 的對(duì)照模型,其中,層數(shù)為0 的模型也就是GMF 模型,層數(shù)為1 的模型記為DMF-1,以此類推,并在潛在向量維度為10,20,40 和80 情況下,分別利用MovieLens 和Anime 兩個(gè)數(shù)據(jù)集訓(xùn)練各個(gè)模型,得到最終5 個(gè)對(duì)照模型在不同維度下的HR@10 和NDCG@10指標(biāo)的表現(xiàn),結(jié)果見(jiàn)表4~表7.

        Table 4 HR@10 of models with different layers in MovieLens表4 MovieLens 數(shù)據(jù)集下不同層數(shù)的模型的HR@10

        Table 5 NDCG@10 of models with different layers in MovieLens表5 MovieLens 數(shù)據(jù)集下不同層數(shù)的模型的NDCG@10

        Table 6 HR@10 of models with different layers in Anime表6 Anime 數(shù)據(jù)集下不同層數(shù)的模型的HR@10

        Table 7 NDCG@10 of models with different layers in MovieLens表7 Anime 數(shù)據(jù)集下不同層數(shù)的模型的NDCG@10

        由表4 和表5 可以看出:在不同潛在向量維度下,隨著隱藏層層數(shù)從0 開(kāi)始不斷增加,模型的HR@10 和NDCG@10 指標(biāo)不斷提升,模型性能得到明顯改善.這是因?yàn)閱螌与[藏層能夠?qū)⑤斎霐?shù)據(jù)映射到另一個(gè)抽象空間,學(xué)習(xí)更抽象的特征;而通過(guò)增加隱藏層層數(shù),能夠?qū)W習(xí)更豐富更抽象的信息,從而更好地建模用戶和物品之間的交互.此外,通過(guò)引入隱藏層,利用神經(jīng)網(wǎng)絡(luò)模型賦予學(xué)習(xí)非線性的能力,使得模型具有更突出的表達(dá)能力.這表明:通過(guò)添加單層隱藏層,利用神經(jīng)網(wǎng)絡(luò)建模用戶和物品之間復(fù)雜的非線性交互,能夠提升模型推薦性能.而通過(guò)添加更多的隱藏層,利用更深層的神經(jīng)網(wǎng)絡(luò)能夠?qū)W習(xí)用戶和物品之間更高階的交互關(guān)系,從而進(jìn)一步提升模型推薦性能.但是,隨著隱藏層層數(shù)進(jìn)一步增加,模型HR@10 和NDCG@10 指標(biāo)提升幅度減小,甚至在潛在向量維度為10,40 和80 的時(shí)候,隱藏層層數(shù)從3 改為4 后,模型在MovieLens 數(shù)據(jù)集上,HR@10 指標(biāo)出現(xiàn)了下降的情況;同樣,在潛在向量維度為40 和80 時(shí),隱藏層層數(shù)由3 變?yōu)? 后,模型在Anime 數(shù)據(jù)集上,HR@10 指標(biāo)也出現(xiàn)了下降.這表明對(duì)于模型來(lái)說(shuō),并不是隱藏層層數(shù)越多、神經(jīng)網(wǎng)絡(luò)越深,模型推薦性能越好.這是因?yàn)殡[藏層層數(shù)過(guò)多,會(huì)導(dǎo)致模型出現(xiàn)過(guò)擬合問(wèn)題,這樣不僅不會(huì)提升模型性能,反而會(huì)限制模型推薦性能.同時(shí),由于神經(jīng)網(wǎng)絡(luò)中過(guò)多的隱藏層會(huì)使得模型參數(shù)指數(shù)式增長(zhǎng),增加訓(xùn)練難度導(dǎo)致模型難以收斂.

        因此,隱藏層層數(shù)的增加使得模型獲得更深層神經(jīng)網(wǎng)絡(luò),能夠建模用戶和物品之間高階非線性交互關(guān)系,但是并不是越多越好,隱藏層層數(shù)過(guò)多反而會(huì)影響模型性能.這里,我們所提出的模型最優(yōu)隱藏層層數(shù)為3.此外,通過(guò)表4~表7 進(jìn)一步表明,DMF 在MovieLens 和Anime 兩個(gè)數(shù)據(jù)集上的最優(yōu)潛在向量維度為40.

        4 總 結(jié)

        在眾多的協(xié)同過(guò)濾推薦算法中,矩陣分解由于簡(jiǎn)單、易于實(shí)現(xiàn)的特點(diǎn),獲得了廣泛的應(yīng)用.矩陣分解算法利用潛在的特征因子把評(píng)分矩陣分解為user-factor matrix 和item-factor matrix,將用戶和物品用潛在因子向量表示,并且通過(guò)向量之間的內(nèi)積來(lái)建模用戶與物品間的交互關(guān)系.但是這種簡(jiǎn)單的內(nèi)積不足以建模用戶和物品間的非線性關(guān)系.由于神經(jīng)網(wǎng)絡(luò)的非線性建模能力,一些工作嘗試將矩陣分解和神經(jīng)網(wǎng)絡(luò)結(jié)合進(jìn)行推薦任務(wù),雖然推薦性能有一定提升,但是涉及到矩陣分解的關(guān)鍵,即建模用戶和物品的交互函數(shù)時(shí),仍然采用簡(jiǎn)單的內(nèi)積來(lái)建模用戶和物品之間的線性關(guān)系.

        GMF 模型中利用神經(jīng)結(jié)構(gòu)代替矩陣分解中所用的內(nèi)積,來(lái)從數(shù)據(jù)中學(xué)習(xí)得到用戶和物品的交互函數(shù).通過(guò)神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)為內(nèi)積引入非線性成分,從而提高模型的表達(dá)能力.但是GMF 模型得到的僅僅是用戶和物品交互的二階關(guān)系,忽略了可能包含更豐富交互信息的高階交互.基于此,我們提出了深度矩陣分解模型DMF,通過(guò)在GMF 之上引入隱藏層,利用更深層的神經(jīng)網(wǎng)絡(luò)在非線性內(nèi)積所得到的用戶與物品間的二階交互的基礎(chǔ)之上,建模用戶與物品間的非線性高階交互,為模型引入用戶與物品間的非線性高階交互信息,從而輔助模型更準(zhǔn)確、全面的建模用戶和物品間的交互.同時(shí),我們?cè)趦山M真實(shí)世界的數(shù)據(jù)集上進(jìn)行了大量的實(shí)驗(yàn),證實(shí)了模型的可行性和有效性.本文只考慮了用戶和物品的交互信息,沒(méi)有考慮可能包含更多可以用來(lái)建模用戶和物品特征的豐富知識(shí)的輔助信息,例如用戶年齡、性別、工作和物品類別等,這可能是未來(lái)的工作方向.同時(shí),不同種類信息對(duì)于推薦結(jié)果的貢獻(xiàn)程度也是不一樣的,如何合理地為不同信息賦予權(quán)重,也是值得關(guān)注的的問(wèn)題.

        猜你喜歡
        物品向量建模
        稱物品
        向量的分解
        聚焦“向量與三角”創(chuàng)新題
        “雙十一”,你搶到了想要的物品嗎?
        聯(lián)想等效,拓展建模——以“帶電小球在等效場(chǎng)中做圓周運(yùn)動(dòng)”為例
        誰(shuí)動(dòng)了凡·高的物品
        基于PSS/E的風(fēng)電場(chǎng)建模與動(dòng)態(tài)分析
        電子制作(2018年17期)2018-09-28 01:56:44
        不對(duì)稱半橋變換器的建模與仿真
        向量垂直在解析幾何中的應(yīng)用
        向量五種“變身” 玩轉(zhuǎn)圓錐曲線
        人妻被黑人粗大的猛烈进出| 亚洲女优中文字幕在线观看| 亚洲av无码乱码国产一区二区| 久久99亚洲精品久久久久| 青青草原亚洲| 亚洲av伊人久久综合密臀性色| 国产最新网站| 国产 无码 日韩| 中国av一区二区三区四区| 成人国产一区二区三区| 国产成人亚洲综合| 粗大的内捧猛烈进出视频| 人人狠狠综合久久亚洲| 久久精品国产亚洲Av无码偷窍| 成在线人免费无码高潮喷水| 亚洲成人一区二区av| 精品人妻伦一二三区久久| 爆爽久久久一区二区又大又黄又嫩 | 亚洲av不卡一区男人天堂| 岳好紧好湿夹太紧了好爽矜持| 日韩中文无线码在线视频观看| 精品国产一区二区三区久久女人| 一区二区三区日本美女视频| 精品国产粉嫩内射白浆内射双马尾 | 国产精品免费久久久久软件| 欧美日韩一区二区三区视频在线观看 | av国产传媒精品免费| 午夜精品久久久久久| 久久精品国产亚洲Av无码偷窍| 超碰青青草手机在线免费观看| 亚洲午夜狼人综合影院| 中文字幕一区在线观看视频| 欧美韩国精品另类综合| 免费女同毛片在线不卡| 国产成人av三级在线观看韩国| 国产成人精品免费视频大全软件| 51久久国产露脸精品国产| 91精品欧美综合在线观看| 一区二区三区日韩毛片| 熟女一区二区三区在线观看| 69一区二三区好的精华|