本發(fā)明涉及推薦算法領(lǐng)域,具體的,涉及一種基于因果推斷的多偏差推薦去偏方法及存儲介質(zhì),能夠綜合多個去偏算法,自動采用最適宜的去偏算法搭配進行去偏。
背景技術(shù):
1、近年來,隨著因果推斷的興起,傾向分數(shù)、反事實思想以及去除混淆因子等方法在推薦系統(tǒng)領(lǐng)域得到廣泛研究與應(yīng)用。相應(yīng)的應(yīng)用推薦系統(tǒng)的領(lǐng)域包括視頻推薦領(lǐng)域,文章推薦領(lǐng)域和電商推薦領(lǐng)域的推薦系統(tǒng),這些系統(tǒng)的特點是推薦的依據(jù)有多項指標(biāo),如果只依賴于單一的指標(biāo)進行推薦就會產(chǎn)生偏差。目前,國內(nèi)外針對推薦系統(tǒng)中存在的選擇性偏差(selection?bias)、一致性偏差(conformity?bias)、曝光偏差(exposure?bias)、位置偏差(positionbias)、流行度偏差(popularity?bias)和不公平性(unfairness)等問題提出了大量去偏方法來減輕推薦系統(tǒng)中存在的偏差或不公平的影響。
2、現(xiàn)有的推薦算法,如ips和data?imputation?方法,側(cè)重于一個或兩個具體的偏差,缺乏通用性。而現(xiàn)實世界采集的數(shù)據(jù)由于用戶個人喜好、位置偏好、模型等原因造成了數(shù)據(jù)中擁有各種各樣的偏差,而單一的解決某一類偏差問題無法滿足推薦系統(tǒng)的去偏問題。
3、現(xiàn)有的主流多偏差去除方法是autodebias及其變體,這是一種基于元學(xué)習(xí)的普適的、自適應(yīng)調(diào)整的去偏方法,首先,建立一個通用的去偏框架,該框架先采用重加權(quán)(re-weighting)的方法對每個訓(xùn)練集中的樣本加上特定權(quán)重,然后進一步采用了數(shù)據(jù)填充的方法處理訓(xùn)練集未覆蓋的部分,即構(gòu)造偽標(biāo)簽數(shù)據(jù),總的框架表示為求平均的方法。
4、
5、在此框架下,將尋找最優(yōu)去偏策略的問題轉(zhuǎn)為在框架中設(shè)置合適的去偏參數(shù)的問題,同時由于框架中的去偏參數(shù)量巨大,直接優(yōu)化會導(dǎo)致過擬合問題,不具備泛化性能,因此采用線性均值的方式將不同去偏算法結(jié)果進行融合最終實現(xiàn)自適應(yīng)的去偏。
6、綜上所述,現(xiàn)有技術(shù)的去偏算法存在如下問題:(1)沒有建模數(shù)據(jù)中的偏差,而是采用元學(xué)習(xí)方法將解決偏差的問題轉(zhuǎn)換為尋找去偏參數(shù)的問題,(2)使用多種去偏算法進行性均值方式去解決偏差,無法得知是哪一種算法起到了主要去偏效果。
7、因此,如何適用于多偏差推薦,對推薦數(shù)據(jù)的偏差進行建模分類,并自動采用最適宜的去偏算法進行搭配去偏成為現(xiàn)有技術(shù)亟需解決的技術(shù)問題。
技術(shù)實現(xiàn)思路
1、本發(fā)明的目的在于提出一種基于因果推斷的多偏差推薦去偏方法及存儲介質(zhì),能夠使得可以實現(xiàn)對數(shù)據(jù)中的偏差進行建模分類并自動采用最適宜的去偏算法搭配進行去偏。
2、為達此目的,本發(fā)明采用以下技術(shù)方案:
3、一種基于因果推斷的多偏差推薦去偏方法,包括如下步驟:
4、基礎(chǔ)數(shù)據(jù)定義步驟s110:
5、根據(jù)歷史推薦數(shù)據(jù)收集整理用戶針對不同物品的推薦基礎(chǔ)數(shù)據(jù),其中,定義用戶,用戶集合,其中,
6、定義物品,?物品集合,其中,
7、定義,表示用戶前個物品子集構(gòu)成的歷史物品序列,其中表示物品子集,并獲得用戶對于歷史推薦物品的評分,綜合上述歷史推薦數(shù)據(jù)建立樣本數(shù)據(jù)集,所述樣本數(shù)據(jù)包括訓(xùn)練數(shù)據(jù)、驗證數(shù)據(jù);
8、門控決策網(wǎng)絡(luò)訓(xùn)練步驟s120:
9、選取k個針對不同偏差數(shù)據(jù)的獨立去偏算法,采用均勻分布xavier算法對門控決策網(wǎng)絡(luò)進行初始化,利用選取的去偏算法分別通過門控決策網(wǎng)絡(luò)計算得到對于物品的無偏輸出,并進行融合得到輸出結(jié)果y,計算y和訓(xùn)練數(shù)據(jù)中期望值之間的交叉熵值,利用交叉熵值為損失函數(shù)進行優(yōu)化,當(dāng)函數(shù)值不斷變小且趨近于穩(wěn)定時,則訓(xùn)練結(jié)束;
10、門控去偏融合(admf4rec)網(wǎng)絡(luò)訓(xùn)練步驟s130:
11、分別選取所述k個去偏算法對訓(xùn)練數(shù)據(jù)和驗證數(shù)據(jù)進行處理,去除對應(yīng)偏差,利用訓(xùn)練好門控決策網(wǎng)絡(luò)再次對多種去偏算法的結(jié)果進行融合,每個去偏任務(wù)均單獨使用訓(xùn)練好的門控決策網(wǎng)絡(luò),在融合中具有不同的權(quán)重,對融合模型利用平方差作為損失函數(shù)進行優(yōu)化,得到優(yōu)化后的門控去偏融合網(wǎng)絡(luò);
12、評分計算以及推薦步驟s140:
13、利用訓(xùn)練好的門控去偏融合網(wǎng)絡(luò)對用戶下一次需要交互的物品的評分進行預(yù)測。
14、可選的,在基礎(chǔ)數(shù)據(jù)定義步驟s110中,
15、所述樣本數(shù)據(jù)集用于訓(xùn)練和驗證,每個樣本數(shù)據(jù)集包括多份樣本,每份樣本包括單個用戶的交互歷史,具體為:該用戶的物品訪問歷史,該用戶對序列中出現(xiàn)物品的評分,以及該用戶的下一個期望訪問物品。
16、可選的,在基礎(chǔ)數(shù)據(jù)定義步驟s110中,
17、所述評分用矩陣的方式保存,定義用戶對物品的評分,其中 r為評分矩陣,所述評分矩陣用于在后續(xù)步驟獲得計算推薦積分后對所推薦物品的選擇。
18、可選的,所述樣本數(shù)據(jù)集分為訓(xùn)練集,驗證集和測試集,其中訓(xùn)練集用來估計模型,占總樣本數(shù)據(jù)的50%,驗證集占總樣本數(shù)據(jù)的20%,測試集占總樣本數(shù)據(jù)的30%。
19、可選的,所述門控決策網(wǎng)絡(luò)訓(xùn)練步驟s120具體為:
20、初始化后的門控決策網(wǎng)絡(luò)如式(1)表示,
21、?????(1)
22、其中,為門控單元的模型參數(shù),即是門控網(wǎng)絡(luò)訓(xùn)練需要學(xué)習(xí)的參數(shù),將訓(xùn)練集中用戶對物品的訪問序列和對物品的評分通過word2vec轉(zhuǎn)換為詞向量并進行拼接,如式(2),
23、?(2)
24、使用所選取的去偏算法對訓(xùn)練集中的數(shù)據(jù)進行處理得到用戶對物品的無偏輸出,經(jīng)過門控網(wǎng)絡(luò)融合之后得到輸出結(jié)果y,?如式(3)表示,
25、?????(3)
26、使用交叉熵做為損失函數(shù),如式(4)表示,采用adam算法優(yōu)化該損失函數(shù),其中表示訓(xùn)練集中的期望輸出,為正則化因子,當(dāng)函數(shù)值不斷變小且趨近于穩(wěn)定時,則訓(xùn)練結(jié)束,
27、?????(4)。
28、可選的,在所述門控決策網(wǎng)絡(luò)訓(xùn)練步驟s120中,
29、所述去偏算法包括選擇性偏差、一致性偏差、曝光偏差、位置偏差、流行度偏差和不公平性。
30、可選的,所述門控去偏融合網(wǎng)絡(luò)訓(xùn)練步驟s130具體為:
31、分別選取去偏算法對訓(xùn)練集中的用戶數(shù)據(jù)進行處理,得到無偏輸出,利用訓(xùn)練好門控決策網(wǎng)絡(luò)對多種去偏算法的結(jié)果進行融合,如式(5)所示,
32、
33、 ????(5)
34、其中,為門控決策網(wǎng)絡(luò),表示門控去偏融合網(wǎng)絡(luò)中的權(quán)重參數(shù)組,包括();
35、并利用平方差損失函數(shù)對門控去偏融合網(wǎng)絡(luò)進行優(yōu)化,如式(6):
36、????(6)
37、其中,表示訓(xùn)練集中的期望輸出,為正則化因子,優(yōu)化算法為adam算法,當(dāng)損失函數(shù)收斂后,即式(6)的值不再減少并趨于穩(wěn)定后,認為收斂,確定所要優(yōu)化的權(quán)重參數(shù)組,最終得到門控去偏融合網(wǎng)絡(luò)。
38、可選的,所述評分計算以及推薦步驟s140具體為:
39、利用公式(5)計算得到結(jié)果,通過用戶對物品的歷史評分,找到與預(yù)測評分最接近的物品,即為推薦給用戶的物品。
40、本發(fā)明進一步公開了一種存儲介質(zhì),用于存儲計算機可執(zhí)行指令,所述計算機可執(zhí)行指令在被處理器執(zhí)行時執(zhí)行上述的基于因果推斷的多偏差推薦去偏方法。
41、綜上,本發(fā)明具有如下的優(yōu)點:
42、(1)本發(fā)明通過引入門控決策網(wǎng)絡(luò),利用不同類型偏差的權(quán)重進行建模,避免了元學(xué)習(xí)無建模偏差的問題;
43、(2)使用多任務(wù)學(xué)習(xí)的架構(gòu)進行多種去偏算法的融合,對權(quán)重參數(shù)組進行學(xué)習(xí)捕捉到多種去偏任務(wù)之間相關(guān)性和區(qū)別,避免了采用均值方式無重點的問題。