国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于多重相似度和CatBoost的個性化推薦

2023-10-12 01:29:18楊懷珍
計算機(jī)工程與設(shè)計 2023年9期
關(guān)鍵詞:決策樹協(xié)同精度

楊懷珍,張 靜,李 雷

(1.桂林電子科技大學(xué) 商學(xué)院,廣西 桂林 541004;2.桂林理工大學(xué) 商學(xué)院,廣西 桂林 541004)

0 引 言

推薦系統(tǒng)通過挖掘用戶歷史行為數(shù)據(jù)如購買記錄、評分信息等進(jìn)行個性化推薦,從而緩解“信息過載”問題[1,2]。協(xié)同過濾算法[3,4]通過分析“用戶-項目”評分矩陣實現(xiàn)推薦。但由于歷史數(shù)據(jù)存在稀疏性導(dǎo)致其推薦精度低[5],針對該問題,王建芳等[6]聯(lián)合用戶間協(xié)同相似度、偏好相似度和具有時序的用戶興趣信息預(yù)測評分。張潤蓮等[7]將多種相似度加權(quán)構(gòu)造混合相似度并通過K-means聚類分析來提高協(xié)同過濾推薦算法的精度。張怡文等[8]通過分析用戶偏好,提出了雙極協(xié)同過濾算法。任永功等[9]利用相似物品評分信息對稀疏的用戶評分矩陣進(jìn)行填充,然后計算近鄰用戶對評分矩陣進(jìn)一步進(jìn)行填充。Shi等[10]利用奇異值分解加加模型探討用戶可靠性和受歡迎程度等內(nèi)部因素對推薦性能的影響。Nahta等[11]在協(xié)同過濾算法中嵌入元數(shù)據(jù),Liu等[12]K-means聚類分析提取新聞內(nèi)容特征并考慮新聞的受歡迎程度結(jié)合奇異值分解技術(shù)以解決協(xié)同過濾算法的數(shù)據(jù)矩陣稀疏問題。Panda等[13]提出了基于規(guī)范化的協(xié)同過濾算法。這類方法的實時性較差,主要應(yīng)用在數(shù)據(jù)量相對較小的場合。

近年來,一些學(xué)者[14,15]將機(jī)器學(xué)習(xí)算法與協(xié)同過濾算法相結(jié)合,提出了基于模型的協(xié)同過濾算法。Chen等[16]利用神經(jīng)網(wǎng)絡(luò)解決了單對相互作用問題。李凌等[17]利用隨機(jī)森林在不同子區(qū)域篩選特征,并由協(xié)同過濾算法進(jìn)行推薦。程明月等[18]利用貝葉斯模型對協(xié)同過濾算法進(jìn)行優(yōu)化,提升了其預(yù)測準(zhǔn)確性。神經(jīng)網(wǎng)絡(luò)具有良好的非線性逼近特性,王玉珍等[19]結(jié)合協(xié)同過濾算法和徑向基神經(jīng)網(wǎng)絡(luò)設(shè)計推薦算法。Fu等[20]將受限玻爾茲曼機(jī)與協(xié)同過濾算法相結(jié)合用于設(shè)計推薦算法。以上算法通過挖掘歷史數(shù)據(jù)的深層特征,可緩解數(shù)據(jù)稀疏性對模型的影響,然而特征提取過程耗時較多且僅采用“用戶-項目”交互數(shù)據(jù)。

針對以上問題,文中在評分矩陣中融入項目元數(shù)據(jù)并由大規(guī)模信息嵌入網(wǎng)絡(luò)(large-scale information network embedding,LINE)求解混合相似矩陣的精確近鄰集,將其輸入CatBoost預(yù)測項目評分并利用Top-N推薦項目。采用MovieLens數(shù)據(jù)集對評估其性能并與結(jié)合徑向基神經(jīng)網(wǎng)絡(luò)的協(xié)同過濾(collaborative filtering combined with radial basis function neural network,RBF-CF)、結(jié)合XGBoost的協(xié)同過濾(collaborative filtering combined with extreme gradient boosting,XGB-CF)、基于用戶的協(xié)同過濾(user-based collaborative filtering,UCF)和CatBoost進(jìn)行對比。

1 推薦方法

1.1 協(xié)同過濾

協(xié)同過濾算法廣泛地應(yīng)用在各類推薦系統(tǒng)中,其依據(jù)用戶或項目的歷史信息實現(xiàn)最終的推薦。整個協(xié)同過濾推薦算法主要分為:評分矩陣構(gòu)建、相似度矩陣構(gòu)建和項目推薦3個階段,相似度矩陣的構(gòu)建處于核心地位,其好壞決定了推薦算法的精度。常見的相似度計量函數(shù)見表1。

1.2 結(jié)合CatBoost的協(xié)同過濾算法

CatBoost[21]是以梯度提升決策樹(gradient boosted decision tree,GBDT)框架為核心的集成學(xué)習(xí)方法,具有參數(shù)量少、穩(wěn)健性強(qiáng)等優(yōu)點,常用于處理類別型變量。其通過將樣本特征組合達(dá)到利用樣本特征間信息的目的并采用排序提升的方法對數(shù)據(jù)進(jìn)行處理降低樣品數(shù)據(jù)中噪聲對模型的影響。此外,該方法可解決模型過擬合的問題,提升其準(zhǔn)確性及泛化能力。協(xié)同過濾算法能夠依據(jù)用戶的歷史數(shù)據(jù)實現(xiàn)目標(biāo)用戶感興趣項目的推薦。文中結(jié)合多重相似度分析和CatBoost提出了一種全新的推薦算法,其流程如圖1所示。該算法具有較高的推薦精度和較強(qiáng)的穩(wěn)定性,能夠為用戶準(zhǔn)確推薦其感興趣項目。

與傳統(tǒng)協(xié)同過濾算法的不同之處在于,該算法首先對項目元數(shù)據(jù)和評分?jǐn)?shù)據(jù)進(jìn)行哈夫曼編碼,將項目元數(shù)據(jù)和用戶評分?jǐn)?shù)據(jù)利用修正的余弦函數(shù)求出對應(yīng)的相似度矩陣,并將得到的結(jié)果進(jìn)行融合;然后采用LINE提取混合相似矩陣的精確近鄰集并利用Skip-Gram提取其深層特征作為CatBoost的輸入對項目未知評分進(jìn)行預(yù)測。

階段一:編碼及相似性分析

傳統(tǒng)的協(xié)同過濾算法直接對原始數(shù)據(jù)進(jìn)行處理,會增加算法運行時間。文中采用對項目元數(shù)據(jù)和評分?jǐn)?shù)據(jù)進(jìn)行哈夫曼編碼,以達(dá)到縮減運行時間的目的。

(1)評分?jǐn)?shù)據(jù)編碼及相似性分析

假設(shè)Ui為用戶i,Ij為項目j,P={xi,j} 為用戶i對項目j的評分,則構(gòu)成的評分矩陣P見表2。

表2 用戶-項目評分矩陣

(1)

(2)項目元數(shù)據(jù)編碼及相似性分析

(2)

(3)混合矩陣相似性分析

大規(guī)模信息嵌入網(wǎng)絡(luò)(large-scale information network embedding,LINE)通過求解描述一階、二階鄰近關(guān)系目標(biāo)函數(shù)的解作為節(jié)點的近鄰節(jié)點,這樣可以緩解稀疏數(shù)據(jù)對模型性能的影響。在LINE中相似數(shù)據(jù)結(jié)點關(guān)系如圖2所示,其主要有以下兩種類型:①直接相連接的結(jié)點5和結(jié)點7相似,這類結(jié)點主要位于網(wǎng)絡(luò)頂點,采用1階鄰近關(guān)系模型進(jìn)行衡量;②共享較多數(shù)量的鄰近節(jié)點5和節(jié)點6相似,采用2階鄰近關(guān)系模型進(jìn)行衡量。

圖2 LINE網(wǎng)絡(luò)中相似結(jié)點

一階鄰近關(guān)系模型:以混合相似矩陣Λ中項目為節(jié)點構(gòu)建網(wǎng)絡(luò),任選網(wǎng)絡(luò)中節(jié)點vi和vj, 則其一階鄰近關(guān)系概率為

(3)

(4)

(5)

最終求解目標(biāo)函數(shù)g1的最小值

(6)

二階鄰近關(guān)系模型:二階鄰近關(guān)系模型主要用于判別共享鄰近節(jié)點的相似度。通常,網(wǎng)絡(luò)中節(jié)點還包含其它節(jié)點“上下文”,故首先采用節(jié)點vi計算節(jié)點vk生成的概率

(7)

(8)

最終求解目標(biāo)函數(shù)g2的最小值

(9)

階段二:特征向量提取

(10)

為求解其精確近鄰集,對上式兩邊取對數(shù),即

(11)

(12)

依據(jù)最小化式(12)對中心詞向量進(jìn)行優(yōu)化,求解出節(jié)點vi的精確集Fvi。

階段三:預(yù)測評分并推薦

將Skip-Gram提取的樣本特征向量Fvi送入CatBoost中訓(xùn)練評分預(yù)測模型,其中Fvi={(X1,Y1),(X2,Y2)…(Xn,Yn)},n為樣本個數(shù),Xn表示第n個樣本的m維特征,即Xn={x1,x2,…,xm};Yn為第n個樣本的屬性。在建立預(yù)測模型時首先利用數(shù)值s替換類別型變量,其中s為

(13)

然后對其弱學(xué)習(xí)器進(jìn)行訓(xùn)練,最終使損失函數(shù)的值趨于0。也就是說CatBoost最終是使ht最小,即

(14)

式中:ht為CatBoost中的弱學(xué)習(xí)器,F(xiàn)t-1(x) 為上一輪訓(xùn)練得到的強(qiáng)學(xué)習(xí)器。經(jīng)過多次循環(huán)迭代最終得到的CatBoost模型為

Ft(x)=Ft-1(x)+ht

(15)

2 模型評價

MovieLens數(shù)據(jù)集中包含有1682部電影且943個用戶對電影的評分,評分值為0~5之間,此外統(tǒng)計了電影的標(biāo)題、類型和主演等信息。文中以MovieLens數(shù)據(jù)集為實例,隨機(jī)選取MovieLens數(shù)據(jù)集中20%的數(shù)據(jù)作為測試集、80%的數(shù)據(jù)作為訓(xùn)練集進(jìn)行評估實驗,并與RBF-CF、XGB-CF、UCF和CatBoost對比來進(jìn)一步驗證文中方法的有效性。

2.1 評價指標(biāo)

文中采用預(yù)測精度、平均絕對偏差和運行時間作為評價指標(biāo),對各模型的性能進(jìn)行評估。其中,預(yù)測精度用于評估用戶喜歡的項目在推薦項目總數(shù)中的占比,其值越大說明模型性能越優(yōu),反之模型性能越差;平均絕對偏差用于衡量項目預(yù)測評分和項目實際評分的差值,其值越小說明項目預(yù)測評分越接近項目真實評分,反之項目預(yù)測評分與項目實際評分差距越大。預(yù)測精度(Precision)和平均絕對偏差(mean absolute error,MAE)計算公式可表述為

(16)

(17)

2.2 模型參數(shù)確定

(1)相似度函數(shù)確定

選擇合理的相似度函數(shù)可準(zhǔn)確求解出評分相似矩陣和項目元數(shù)據(jù)的相似矩陣,從而提高推薦模型的預(yù)測精度、降低平均絕對偏差。利用歐幾里得函數(shù)、余弦相似度函數(shù)、修正的余弦函數(shù)和皮爾遜函數(shù)求解的評分相似矩陣和項目元數(shù)據(jù)相似矩陣的預(yù)測精度如圖3所示。從圖中可看出,與歐幾里得函數(shù)、余弦函數(shù)和皮爾遜函數(shù)相比,修正的余弦函數(shù)求解的相似矩陣用于模型預(yù)測評分具有更高的精度,因此文中采用修正的余弦函數(shù)作為求解相似矩陣的衡量標(biāo)準(zhǔn)。

(2)CatBoost中決策樹個數(shù)確定

CatBoost選用決策樹作為其弱學(xué)習(xí)器對項目的評分進(jìn)行預(yù)測,最終利用投票決策的方式求解出項目的預(yù)測評分。較少的決策樹數(shù)目會降低CatBoost對項目的預(yù)測精度,然而較多的決策樹數(shù)目則會增加CatBoost的運行時間。表3給出了決策樹數(shù)目為50~450時CatBoost的預(yù)測精度及運行時間。從表中可看出,當(dāng)CatBoost中決策樹數(shù)目小于300時,隨著決策樹數(shù)目的增加CatBoost的預(yù)測精度和運行時間均增加且決策樹數(shù)目為300時CatBoost的預(yù)測精度最高;當(dāng)CatBoost中決策樹數(shù)目超過300后,CatBoost的預(yù)測精度并未明顯增加但運行時間卻大幅增加,故而文中將CatBoost中決策樹數(shù)目設(shè)定為300。

表3 不同決策樹數(shù)目下模型的預(yù)測精度和運行時間

2.3 實驗結(jié)果分析

通過與RBF-CF、XGB-CF、UCF和CatBoost對比,從預(yù)測精度、運行時間和平均絕對偏差3個方面對各模型的有效性進(jìn)行評估。RBF-CF、XGB-CF、UCF、CatBoost和CatBoost-CF(文中所提算法)在不同近鄰集數(shù)目下的預(yù)測精度見表4。從表中可看出,隨著近鄰集數(shù)目的增加,各模型的預(yù)測精度均逐漸增加。此外,在不同近鄰集數(shù)目中,CatBoost-CF的預(yù)測精度均最高、XGB-CF和RBF-CF的預(yù)測精度次之,UCF的預(yù)測精度最差。這主要是由于CatBoost-CF模型在評分?jǐn)?shù)據(jù)中融入了項目元數(shù)據(jù),并且采用修正的余弦相似度函數(shù)和LINE求解的項目近鄰集更準(zhǔn)確,從而提高了模型的預(yù)測性能;XGB-CF中采用集成學(xué)習(xí)的策略,能夠提升模型的非線性建模能力;RBF-CF中采用神經(jīng)網(wǎng)絡(luò)抽取用戶評分歷史數(shù)據(jù)的深層特征,可緩解評分?jǐn)?shù)據(jù)稀疏性導(dǎo)致的模型預(yù)測精度低的問題。

表4 不同近鄰集數(shù)目下各算法的預(yù)測精度

RBF-CF、XGB-CF、UCF、CatBoost和CatBoost-CF在不同近鄰集數(shù)目下的運行時間見表5。從表中可容易的看出,UCF的運行時間最短,這主要是由于UCF直接采用相似矩陣進(jìn)行預(yù)測評分無需其它操作;CatBoost-CF的運行時間較UCF和CatBoost的運行時間長,這主要是由于CatBoost-CF需要經(jīng)過LINE網(wǎng)絡(luò)求解多階相鄰節(jié)點。RBF-CF和XGB-CF的運行時間相當(dāng)且前者運行時間更長,這主要是由于RBF神經(jīng)網(wǎng)絡(luò)需要多次迭代尋優(yōu)而XGB中包含多棵決策樹需要多次運算出最優(yōu)結(jié)果。

表5 不同近鄰集數(shù)目下各算法的運行時間

為進(jìn)一步說明CatBoost-CF在各階段的耗時,文中以近鄰集數(shù)目為85時進(jìn)行實驗,其各階段及總運行時間見表6。從表中可看出,CatBoost-CF中階段三耗時最多、階段一耗時次之、階段二耗時最少。這主要是由于CatBoost需要經(jīng)過多個弱學(xué)習(xí)器進(jìn)行項目評分的預(yù)測最后再投票決策,而階段一耗時則主要是由于LINE網(wǎng)絡(luò)迭代求解多階近鄰節(jié)點。

表6 CatBoost-CF在近鄰集為85時各階段的運行時間及總運行時間

模型的穩(wěn)定性決定了模型預(yù)測結(jié)果的可靠性,文中以MAE作為RBF-CF、XGB-CF、UCF、CatBoost和CatBoost-CF算法穩(wěn)定性的衡量標(biāo)準(zhǔn),各算法在不同近鄰集下的MAE值如圖4所示。從圖中可看出,隨著近鄰數(shù)集個數(shù)增加各推薦算法的MAE均逐漸降低,這說明隨著訓(xùn)練集樣本增加,各模型的穩(wěn)定性也逐漸增強(qiáng)。此外,在不同近鄰集數(shù)目下CatBoost-CF的MAE均低于對比方法,XGB-CF次之,UCF的MAE值最高。這主要是評分?jǐn)?shù)據(jù)中融入了項目元數(shù)據(jù)并由修正的余弦相似度函數(shù)和LINE精確求解項目的近鄰集,從而增強(qiáng)了CatBoost-CF的穩(wěn)定性。然而傳統(tǒng)的UCF直接采用評分?jǐn)?shù)據(jù)進(jìn)行預(yù)測評分而近鄰集數(shù)目越大其越不精確故而穩(wěn)定性最差。RBF-CF和XGB-CF的MAE值相當(dāng)且優(yōu)于UCF,說明集成學(xué)習(xí)和神經(jīng)網(wǎng)絡(luò)均可以改善模型的穩(wěn)定性。

圖4 各算法在不同近鄰集下的MAE

3 結(jié)束語

文中結(jié)合多重相似度分析和CatBoost提出了一種推薦算法,該算法具有較高的推薦精度、較強(qiáng)的穩(wěn)定性。與傳統(tǒng)推薦算法不同的是,其采用修正的余弦相似度函數(shù)和LINE求解項目元數(shù)據(jù)和評分?jǐn)?shù)據(jù)的精確近鄰集并由Skip-Gram挖掘其深層特征輸入CatBoost中預(yù)測項目評分最終由Top-N算法推薦項目。最后,采用MovieLens數(shù)據(jù)集對該算法性能進(jìn)行評估,結(jié)果表明,該算法推薦精度更高、穩(wěn)定性更強(qiáng),可緩解數(shù)據(jù)稀疏性帶來的推薦質(zhì)量低的問題。但是該算法較對比方法運行時間較長,在后續(xù)工作中嘗試將該算法并行化處理以縮短其運行時間。

猜你喜歡
決策樹協(xié)同精度
蜀道難:車與路的協(xié)同進(jìn)化
一種針對不均衡數(shù)據(jù)集的SVM決策樹算法
“四化”協(xié)同才有出路
汽車觀察(2019年2期)2019-03-15 06:00:50
決策樹和隨機(jī)森林方法在管理決策中的應(yīng)用
電子制作(2018年16期)2018-09-26 03:27:06
基于DSPIC33F微處理器的采集精度的提高
電子制作(2018年11期)2018-08-04 03:25:38
三醫(yī)聯(lián)動 協(xié)同創(chuàng)新
基于決策樹的出租車乘客出行目的識別
GPS/GLONASS/BDS組合PPP精度分析
基于肺癌CT的決策樹模型在肺癌診斷中的應(yīng)用
基于肺癌CT的決策樹模型在肺癌診斷中的應(yīng)用
从化市| 仙居县| 江津市| 攀枝花市| 盈江县| 三原县| 改则县| 太康县| 阿拉善盟| 盐亭县| 车险| 富顺县| 翁牛特旗| 和平县| 开远市| 辽阳县| 秭归县| 布拖县| 特克斯县| 神农架林区| 开鲁县| 邯郸县| 邯郸市| 长寿区| 洪洞县| 长宁县| 开鲁县| 六枝特区| 遵义市| 抚顺县| 于田县| 屯门区| 新津县| 锡林郭勒盟| 武安市| 枝江市| 城市| 兴国县| 保山市| 阿坝县| 崇仁县|