偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

數(shù)據(jù)稀疏如何學(xué)好Embedding?

開發(fā) 前端
利用Domain Adaptation解決長尾問題的典型論文是ESAM: Discriminative Domain Adaptation with Non-Displayed Items to Improve Long-Tail Performance(SIGIR 2020)。核心思路是通過特征分布、用戶反饋等信息,利用DA將尾部item對(duì)齊到頭部item上。

?在推薦系統(tǒng)中,冷啟動(dòng)或長尾是一個(gè)常見的問題,模型在數(shù)據(jù)量較少的user或item上的預(yù)測(cè)效果很差。造成冷啟動(dòng)樣本預(yù)測(cè)效果不好的重要原因之一是,冷啟動(dòng)樣本積累的數(shù)據(jù)比較少,不足以通過訓(xùn)練得到一個(gè)好的embedding(通過user或item的id,映射到一個(gè)可學(xué)習(xí)的向量),進(jìn)而導(dǎo)致模型在這部分樣本上效果較差。我曾經(jīng)在長尾預(yù)測(cè)效果不好怎么辦?試試這兩種思路中介紹過長尾問題的2種解法。

今天這篇文章整理了2020年以來SIGIR、Multimedia等頂會(huì)中,圍繞如何在數(shù)據(jù)不充分的情況下生成好的embedding表示的工作,主要集中在推薦系統(tǒng)領(lǐng)域user和item的embedding生成,解法包括domain adaptation、變分自編碼器、對(duì)比學(xué)習(xí)、引入用戶歷史行為序列等。

1.利用域自適應(yīng)解決冷啟動(dòng)問題

利用Domain Adaptation解決長尾問題的典型論文是ESAM: Discriminative Domain Adaptation with Non-Displayed Items to Improve Long-Tail Performance(SIGIR 2020)。核心思路是通過特征分布、用戶反饋等信息,利用DA將尾部item對(duì)齊到頭部item上。

本文解決長尾item的預(yù)估準(zhǔn)確性問題。長尾item指的是或者展現(xiàn)機(jī)會(huì)比較少的item,模型在這部分item學(xué)習(xí)不充分,會(huì)導(dǎo)致推薦過程中無法準(zhǔn)確實(shí)現(xiàn)長尾item的推薦,這又進(jìn)一步惡化了長尾item的學(xué)習(xí),形成馬太效應(yīng)。文中的一個(gè)核心假設(shè)是,無論一個(gè)item是否是長尾,它們的一些屬性信息是有關(guān)聯(lián)的,例如奢侈品類型的item價(jià)格都高、價(jià)格特征和品牌關(guān)系更大而和材質(zhì)關(guān)系小等等。這些特征之間的關(guān)聯(lián)是可以從頭部item泛化到長尾item上的。

本文主要采用Domain Adaptation的思路對(duì)齊頭部item和長尾item。首先將頭部item和長尾item分別視為source domain和target domain。整體的損失函數(shù)公式如下,包括4個(gè)部分:

圖片

其中Ls是頭部item和對(duì)應(yīng)query的預(yù)測(cè)誤差。LDA對(duì)應(yīng)attribute correlation congruence (A2C) ,其目標(biāo)是為了縮小source domain和target domain特征關(guān)系的差異。由于希望長尾item各個(gè)特征之間的相互關(guān)系與頭部一致(例如上面的價(jià)格和品牌特征關(guān)系更相關(guān),和材質(zhì)關(guān)系弱的規(guī)律),這個(gè)底層特征規(guī)律也會(huì)反映到上層item特征表征向量上。因此這里使用下面公式計(jì)算兩個(gè)domain中,item向量各個(gè)維度之間的關(guān)系的一致性,實(shí)際采用mini-batch的方式采樣一部分樣本計(jì)算,公式如下(注意這里的h指的是多個(gè)樣本某一個(gè)維度的向量):

圖片

圖片

文中的另一個(gè)假設(shè)是如果兩個(gè)item相似,它們對(duì)應(yīng)的用戶反饋也應(yīng)該是相似的,不管是否是長尾item,基于此提出了center-wise clustering,也就是LDCc部分,讓具有相似用戶反饋的item距離更近。最后,文中引入了自監(jiān)督學(xué)習(xí)的思路,給未展現(xiàn)的item分配一個(gè)偽標(biāo)簽,偽標(biāo)簽來自于上一版模型的預(yù)測(cè)結(jié)果,并且通過正則化生成選擇那些足夠置信的偽標(biāo)簽,這部分對(duì)應(yīng)LDCp

圖片

2.根據(jù)屬性特征生成embedding

根據(jù)屬性特征生成embedding是業(yè)內(nèi)解決冷啟動(dòng)問題的常用做法。雖然對(duì)于冷啟動(dòng)樣本,根據(jù)id生成embedding比較困難,但是這些user和item一般都有比較豐富泛化特征,例如用戶的年齡、愛好,商品的價(jià)格、品類等。因此可以將問題轉(zhuǎn)換為學(xué)習(xí)一個(gè)映射函數(shù),根據(jù)泛化特征生成id embedding。

第一篇文章是Recommendation for new users and new items via randomized training and mixture-of experts transformation(SIGIR 2020)。本文同時(shí)解決item側(cè)和user側(cè)的冷啟動(dòng)問題,核心思路也是學(xué)習(xí)一個(gè)映射函數(shù),根據(jù)user或item的side information生成比較好的id embedding。本文主要包括3個(gè)核心點(diǎn):學(xué)習(xí)side information到id embedding的映射函數(shù)、隨機(jī)化訓(xùn)練、多專家映射網(wǎng)絡(luò)。

在映射函數(shù)學(xué)習(xí)上,一方面在模型中只輸入side information生成user側(cè)和item側(cè)的表示計(jì)算loss;另一方面使用一個(gè)預(yù)訓(xùn)練的良好id embedding指導(dǎo)映射函數(shù)學(xué)習(xí),通過L2距離約束映射函數(shù)產(chǎn)出embedding和預(yù)訓(xùn)練embedding的距離。

圖片

在隨機(jī)化訓(xùn)練上,上面的框架可能存在一側(cè)信息學(xué)的不好影響了另一側(cè)的學(xué)習(xí)的情況。為了解決這個(gè)問題,在訓(xùn)練過程中會(huì)以一定概率選擇是使用預(yù)訓(xùn)練的embedding還是通過映射函數(shù)生成的embedding。

最后,以往的映射函數(shù)都是所有user或item共用一個(gè),但是實(shí)際上一個(gè)映射函數(shù)可能無法兼容所有情況,例如存在兩個(gè)user的特征差別很大但是興趣類似的情況。為了解決這個(gè)問題,文中采用了多專家網(wǎng)絡(luò)的思路,采用多個(gè)專家網(wǎng)絡(luò)生成的embedding進(jìn)行組合得到最終表示。

圖片

第二篇文章是Learning to warm up cold item embeddings for cold-start recommendation with meta scaling and shifting networks(SIGIR 2021)。本文的核心思路是,具有相似特征、相同用戶群體點(diǎn)擊的item應(yīng)該更相似,因此本文利用了item的屬性等特征以及user的特征對(duì)冷啟動(dòng)item做warm-up。核心公式是下面的scale+shift操作:

圖片

scale操作使用的是item的屬性特征生成的向量,shift操作使用的是user的embedding。這兩種信息同時(shí)作用到初始的item embedding上,實(shí)現(xiàn)冷啟動(dòng)embedding的warm-up。

在具體的訓(xùn)練方法上,首先使用所有數(shù)據(jù)訓(xùn)練一個(gè)基礎(chǔ)的推薦模型,然后固定住其他參數(shù)不變,使用非冷啟動(dòng)item通過數(shù)據(jù)采樣的方式模擬冷啟動(dòng)樣本,在這些樣本上單獨(dú)訓(xùn)練scale、shift網(wǎng)絡(luò)和item的embedding。冷啟動(dòng)item的embedding使用預(yù)訓(xùn)練模型產(chǎn)出的全局所有item的embedding求均值得到,避免隨初始化影響模型訓(xùn)練。

圖片

在今年的SIGIR上,Improving Item Cold-start Recommendation via Model-agnostic Conditional Variational Autoencoder(SIGIR 2022)提出使用變分自編碼器提升使用特征生成id embedding的效果。這篇文章的解決item側(cè)的冷啟動(dòng)問題,核心是利用Conditional Variational AutoEncoder(CVAE)對(duì)齊使用side information生成的item embedding和item的id embedding,這樣對(duì)于冷啟動(dòng)樣本可以使用side information生成更好的embedding。具體做法是,使用兩個(gè)CVAE分別對(duì)item id生成的embedding和使用item的side information特征生成的embedding進(jìn)行自編碼,在隱空間讓二者分布距離最小。在訓(xùn)練過程中,同一個(gè)樣本會(huì)先使用主模型預(yù)估ctr,然后再走另一個(gè)自編碼通道訓(xùn)練自編碼器。

使用CVAE有什么好處呢?因?yàn)槟繕?biāo)是學(xué)習(xí)side information到item embedding的映射,而模型在訓(xùn)練過程中得到的item embedding不一定完全反映的是side information,還包含了和user的交互信息,這導(dǎo)致很難讓side information和item embedding對(duì)齊。因此文中采用CVAE,將item id embedding壓縮到隱空間去除噪聲,再在隱空間和side information側(cè)信息對(duì)齊。

圖片

3.基于對(duì)比學(xué)習(xí)學(xué)習(xí)embedding

基于對(duì)比學(xué)習(xí)學(xué)習(xí)embedding的典型工作是Contrastive learning for cold-start recommendation(Multimedia 2021)。這里也借助了item的屬性特征,通過對(duì)比學(xué)習(xí)拉近同一個(gè)item屬性特征生成的embedding和id得到的embedding的距離。

本文希望尋找一個(gè)本文通過對(duì)item表示最優(yōu)化的推導(dǎo),得出想要得到最優(yōu)的item表示需要同時(shí)優(yōu)化兩個(gè)互信息:第一個(gè)是根據(jù)歷史user-item的交互行為優(yōu)化user-item的互信息;第二個(gè)是item的協(xié)同過濾信號(hào)得到的embedding與使用內(nèi)容信息得到embedding的互信息。

圖片

在優(yōu)化上述互信息采用的是對(duì)比學(xué)習(xí)的方法學(xué)習(xí)。對(duì)于user-item的互信息,正樣本為有交互的user-item pair,負(fù)樣本中適應(yīng)隨機(jī)采樣的item,直接使用id embedding加上一個(gè)Encoder學(xué)習(xí)二者的協(xié)同過濾embedding。對(duì)于item-item的互信息,同一個(gè)item為正樣本,該item和其他隨機(jī)采樣的item為負(fù)樣本,對(duì)比學(xué)習(xí)讓通過內(nèi)容生成的embedding和協(xié)同過濾學(xué)到的embedding相似。

圖片

4.根據(jù)用戶歷史行為生成embedding

在今年SIGIR 2022中阿里發(fā)表了一篇文章Transform Cold-Start Users into Warm via Fused Behaviors in Large-Scale Recommendation(SIGIR 2022),主要利用用戶的歷史行為數(shù)據(jù)解決冷啟動(dòng)user的問題,一個(gè)核心點(diǎn)是引入曝光未點(diǎn)擊的數(shù)據(jù)擴(kuò)充冷啟動(dòng)用戶稀疏的歷史行為。一般的做法是對(duì)冷啟動(dòng)user生成一個(gè)更好的user id embedding。這種方法的缺點(diǎn)是生成user id embedding的網(wǎng)絡(luò)是用非冷啟動(dòng)用戶訓(xùn)練的,而冷啟動(dòng)用戶和非冷啟動(dòng)用戶的特征分布差異很大,導(dǎo)致非冷啟動(dòng)用戶上訓(xùn)練的embedding生成器在冷啟動(dòng)用戶上可能并不適用。本文的做法是使用用戶的歷史行為作為context來warm up初始的user embedding。具體做法是將用戶歷史行為序列和初始的user embedding拼接后過Transformer,實(shí)現(xiàn)user embedding的轉(zhuǎn)換。

由于冷啟動(dòng)user的歷史行為稀疏,點(diǎn)擊行為就更稀疏了,因此本文會(huì)將用戶歷史點(diǎn)擊和曝光未點(diǎn)擊的行為都加進(jìn)來作為歷史行為序列,緩解冷啟動(dòng)用戶的歷史行為序列稀疏問題。點(diǎn)擊和不點(diǎn)擊是兩種不同類型的交互行為,為了區(qū)分這兩種不同的交互行為,文中將行為序列中每個(gè)item的embedding做了一步label encoding的變換,用一個(gè)可學(xué)習(xí)的參數(shù)根據(jù)交互類型(點(diǎn)擊或未點(diǎn)擊)進(jìn)行轉(zhuǎn)換,公式如下,其中rpos和rneg是兩個(gè)帶有可學(xué)習(xí)參數(shù)的轉(zhuǎn)換函數(shù),y是交互的類型:

圖片

最后,本文在訓(xùn)練過程中會(huì)將冷啟動(dòng)user的embedding以一定概率替換成一個(gè)全局可學(xué)習(xí)的冷啟動(dòng)embedding,幫助模型對(duì)齊冷啟動(dòng)和非冷啟動(dòng)的id embedding分布。

圖片

5.總結(jié)

本文主要圍繞推薦系統(tǒng)中,如何給冷啟動(dòng)或長尾的樣本生成好的id embedding表示這一問題,介紹了近年來4種思路6篇頂會(huì)工作。包括domain adaptation、變分自編碼器、對(duì)比學(xué)習(xí)、引入用戶歷史行為序列等多種類型的解法。

責(zé)任編輯:武曉燕 來源: 圓圓的算法筆記
相關(guān)推薦

2016-10-17 15:12:36

2010-01-26 10:53:58

學(xué)C++

2010-01-21 11:03:07

C++庫

2022-03-21 08:30:13

開源模型訓(xùn)練預(yù)測(cè)引擎

2011-07-05 17:07:14

C語言

2009-06-22 15:36:00

如何學(xué)好java

2011-01-06 16:00:33

2021-06-04 10:18:03

Trie字典樹數(shù)據(jù)

2024-09-30 05:51:08

2014-06-05 14:46:05

設(shè)計(jì)設(shè)計(jì)師

2021-04-29 15:55:51

編程IT程序員

2011-05-18 17:33:15

CC++

2021-01-12 11:27:57

KSA模型數(shù)據(jù)

2010-01-05 16:49:34

2021-03-08 06:28:57

JAVA數(shù)據(jù)結(jié)構(gòu)與算法稀疏數(shù)組

2011-04-11 17:09:37

稀疏矩陣矩陣C++

2021-11-29 10:27:24

設(shè)計(jì)模式程序員

2009-12-14 18:18:33

apt命令

2023-02-26 18:46:35

機(jī)器學(xué)習(xí)數(shù)據(jù)集算法

2010-04-19 15:01:10

Oracle數(shù)據(jù)庫
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)