日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

又一Attention函数诞生啦,带给你意想不到的巨大提升!

發(fā)布時間:2025/3/8 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 又一Attention函数诞生啦,带给你意想不到的巨大提升! 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

Non-invasive Self-attention for Side Information Fusion in Sequential Recommendation(AAAI2021)

一本有仙氣的筆記

1. 前言

序列推薦系統(tǒng)的目標是從用戶的歷史行為中對用戶的興趣進行建模,從而進行時間相關(guān)的個性化推薦。

早期的模型,比如CNN和RNN等深度學習方法在推薦任務中都取得了顯著的提升。近年來,BERT框架由于其在處理序列數(shù)據(jù)時的self-attention機制,已經(jīng)成為了一種最好的方法。然而,原BERT框架的一個局限性是它只考慮自然語言符號的一個輸入源。

  • 在BERT框架下如何利用各種類型的信息仍然是一個懸而未決的問題。

盡管如此,利用其他方面的信息,如商品的類別或tag標簽,進行更全面的描述和更好的推薦,在直覺上還是很有吸引力的。在我們的初步實驗中,我們發(fā)現(xiàn)一些簡單的方法,直接將不同類型的附加信息融合到商品embedding中,通常只帶來很少甚至負面的影響。

因此,本文在BERT框架下提出了一種有效利用邊信息的無創(chuàng)自我注意機制(NOVA,NOninVasive self-Attention mechanism)。NOVA利用side信息來產(chǎn)生更好的注意力分布,而不是直接改變商品嵌入,這可能會導致信息泛濫。

我們在公共數(shù)據(jù)集和商業(yè)數(shù)據(jù)集上都驗證了NOVA-BERT模型,并且我們的方法在計算開銷可以忽略的情況下可以穩(wěn)定地優(yōu)于最新的模型。

序列化推薦的目標之一基于用戶的歷史行為,預測用戶下一個感興趣的商品。和用戶級別或者基于相似度的靜態(tài)方法相比,序列化推薦系統(tǒng)還會對用戶變化的興趣進行建模,因此對于現(xiàn)實的應用會更為受歡迎。

在大量的實驗中,我們發(fā)現(xiàn)基于transformer的模型被認為是處理序列化數(shù)據(jù)最好的選擇。而其中,最為出名的就是Bert模型,通過利用bert模型,Bert4Rec取得了當時的SOTA效果。盡管Bert框架在許多任務上都取得了SOTA的效果,但是還存在一個較大的問題。

  • 對于利用不同類型的side信息,還沒有進行過系統(tǒng)的研究;

除了Item的ID信息,我們還存在非常多的side信息,例如評分和商品描述。然而,BERT框架最初設計為只接受一種類型的輸入(即wordid),限制了side信息的使用。通過試點實驗,我們發(fā)現(xiàn)現(xiàn)有的方法通常利用side信息(圖1),但很少有效果。

但是理論上來說,side信息通過提供更多的數(shù)據(jù)是可以帶來幫助的,但是,如何使用好這些額外的信息來設計模型是非常有挑戰(zhàn)的。

在本文中,我們研究如何使用大量的side信息,并提出了NOVA(Non-inVasive self-Attention mechanism),通過使用side信息來提升模型的預測準確率并且取得了非常好的效果。

在NOVA中,side信息作為self-attention模塊的輔助信息來學習更好的注意分布,而不是融合到Item表示中,這可能會導致信息壓倒性等副作用。我們在實驗室數(shù)據(jù)集和從真實應用商店收集的私有數(shù)據(jù)集上驗證了NOVA-BERT設計效果。結(jié)果證明了該方法的優(yōu)越性。本文的核心貢獻有三點:

  • 提出了NOVA-BERT框架,該框架可以有效地利用各種side信息進行序列化的推薦任務;
  • 我們提出了非切入(non-invasive)的self-attention機制(NOVA),這是一種新的設計,可以實現(xiàn)對復合序列數(shù)據(jù)的self-attention;
  • 基于可視化給出了模型的可解釋性。

  • 2. 相關(guān)工作

    2.1 不同類型的模型比較

    • 從早期的CNN->RNN->Attention的演化中,我們發(fā)現(xiàn)基于BERT類型的模型可以獲得最好的效果。

    2.2 序列化推薦模型的問題

    在之前諸多的問題中,大家都知道side information是非常重要的,但是關(guān)于side information如何使用的問題卻很少研究,之前的框架都是基于invasive fusion的方式;關(guān)于Invasive fusion的方法包括:

    • Summation
    • Concatenation
    • Gated Sum

    通過上面的操作,然后將混合的信息輸入到NN中,我們稱此類方法為Invasive的方法,因為它們改變了原始的表示。

    • 以前的CNN和RNN工作都試圖利用side信息,將side信息直接融合到商品embedding中,并進行concatenation和addition等操作。

    其它一些工作如GRU等提出了更復雜的特征融合門機制和其它訓練技巧,試圖使特征選擇成為可學習的過程。然而,根據(jù)他們的實驗結(jié)果,簡單的方法不能有效地利用各種場景下的豐富信息。盡管Hidasi等人通過為每種類型的side信息部署一個并行子網(wǎng)來提高預測精度,但該模型變得繁瑣且不靈活。

    還有一些研究,并不直接改變商品的embedding,而是使用RNN模型通過item boosting的trick來加入停留時間,這么做我們希望損失函數(shù)能意識到dwell time,用戶看一個商品的時間越長,她/他可能對某件商品更加感興趣,但是該trick卻更加依賴于啟發(fā)式。另一方面,一些與商品相關(guān)的輔助信息(如價格)描述了商品的內(nèi)在特征,這些特征與停留時間不同,不容易被此類方式利用。


    3. 方法

    3.1 問題描述

    給定一個用戶的歷史交互,順序推薦任務要求與下一個商品交互,或者執(zhí)行下一個操作。我們用表示一個用戶, 他的歷史交互可以被表示為:

    其中商品

    表示第 個交互(也可以表示為行為),當有一類行為并且沒有side信息,每個交互可以通過商品的id進行表示:

    其中

    表示第個商品ID,

    是所有商品的vocabulary, 是字典大小,給定用戶的歷史,我們的目標是預測用戶最有可能交互的下一個商品。

    3.2 Side信息

    Side信息可以是為推薦提供額外有用信息的任何內(nèi)容,可以分為兩種類型:

    • 商品相關(guān)信息或行為相關(guān)信息。

    基于商品的side信息是固有的,它們可以表述商品,除了商品ID等還可以加入(price,商品的日期,生產(chǎn)者等等)。

    與行為相關(guān)的side信息與用戶發(fā)起的交互有關(guān),例如操作類型(例如,購買、打分)、執(zhí)行時間或用戶反饋分數(shù)。每個交互的順序(即,原始BERT中的位置ID)也可以作為一種行為相關(guān)的side信息。如果加入side信息,那么我們的交互就變?yōu)?#xff1a;

    其中

    表示用戶 的第 個交互行為相關(guān)的side信息, 表示一個商品,包括了商品的ID和許多商品相關(guān)的成分 。商品相關(guān)的side信息是靜態(tài)的,并且包含了每個特定商品的內(nèi)部特征,所以我們的詞典可以被重新表示為:

    我們的目標是預測下一個商品的ID:

    其中,

    是潛在行為相關(guān)的side信息。

    3.3 BERT和Invasive的self-attention

    BERT4Rec是第一次將BERT框架用于序列化推薦任務的,并且取得了SOTA的效果,在BERT框架下面,Item被表示為向量,在訓練的過程中,一些商品被隨機mask掉,BERT模型需要盡力將它們的向量表示恢復過來,

    其中

    是softmax函數(shù), 是比例因子。BERT使用encoder decoder的設計形式對每個輸入的序列中的商品產(chǎn)出一個上下文的表示,BERT使用embedding層來存儲 個向量,每個對應詞典中的一個商品。

    為了更好地使用side信息,傳統(tǒng)方法經(jīng)常會使用分開的embedding層來將side信息編碼為向量,然后將它們fuse加入到ID的embedding中,

    是用戶 的第 個交互的集成embedding, 是embedding層,然后我們將集成的embedding序列輸入到模型當中。

    BERT使用self-attention機制來更新表示層,

    我們知道self-attention操作是位置不變的函數(shù),所以此處我們將位置embedding編碼加入其中。也就是說,此處我們的BERT僅僅是將位置信息作為了side信息,并且使用addition作為fusion函數(shù)。

    3.4 Non-invasive Self-attention

    如果我們考慮端到端的BERT框架,它是一個自動編碼器,具有堆疊的self-attention層。相同的embedding映射用于編碼商品ID和解碼還原的向量表示。因此,我們認為

    • invasive方法有復雜嵌入空間的缺點,

    因為商品ID不可逆地與其他邊信息融合。混合來自id的信息和其他輔助信息可能會使模型難以解碼商品ID。對應地,我們提出了一種新的方法,即non-invasive自注意(NOVA),在利用side信息對序列進行更有效建模的同時,保持嵌入空間的一致性。其思路是:

    • 修改自我注意機制,仔細控制自已組件的信息源,即Q、K和V

    NOVA不僅是第3.3節(jié)中定義的集成嵌入E,還保留了純ID嵌入的分支。

    因此,對于NOVA,用戶的歷史由兩個表示集合表示,純ID embedding以及集成的embedding。

    NOVA從集成的embedding R,來自于商品ID的emebdding

    中計算Q和V,實踐中,我們以張量的形式處理整條序列。

    其中是Batch size, 是序列長度, 是embedding向量的大小, NOVA可以被表示為:

    其中是通過線性轉(zhuǎn)化得到:

    NOVA和invasive方法的比較可以通過下圖看到:

    3.5 Fusion操作

    NOVA和invasive方法在使用side信息下的不同在于,NOVA將其作為一個輔助的并通過fusion函數(shù)將side信息作為Keys和Querys輸入。此處我們定義concatfusion, 來將所有的side信息進行fusion,后面會接一個全鏈接層。

    我們可以使用從上下文中提取可訓練的系數(shù)來設計gating的fusion,

    其中,

    是所有特征的矩陣形式,

    , 是可訓練的參數(shù), 是被fused的特征向量的維度,

    3.6 NOVA-BERT

    每個NOVA層接受兩個輸入,

    • side信息
    • 商品表示序列

    然后輸出相同形狀的更新表示,再將這些表示輸送送到下一層。

    對于第一層的輸入,商品表示是純商品ID嵌入。由于我們只使用side信息作為輔助來學習更好的注意分布,side信息不會隨著NOVA層傳播。為每個NOVA層明確提供相同的side信息集。

    NOVA-BERT遵循原始的BERT框架,除了將self-attention層替換為了NOVA層之外,所以額外的參數(shù)和計算是可以忽略的。

    我們認為,在NOVA-BERT算法中,隱藏表示保持在相同的嵌入空間中,這將使解碼過程成為一個齊次向量搜索,有利于預測。


    4. 實驗

    4.1 效果比較

    • NOVA-BERT的效果比其它的都要好;
    • 與Bert4Rec僅利用位置ID相比,invasive式方法使用了多種side信息,但改進非常有限甚至沒有正向效果。相反,NOVA-BERT方法能有效地利用side信息,性能穩(wěn)定,優(yōu)于其他方法。
    • 在我們實驗中,發(fā)現(xiàn)越大的denser數(shù)據(jù)集,模型提升的幅度會下降;我們假設,在語料庫更為豐富的情況下,這些模型甚至可以從商品的上下文中學習到足夠好的商品embedding,從而為輔助信息的補充留下更小的空間。
    • NOVA-BERT的魯棒性是非常好的;不管我們使用什么fusion函數(shù),Nova-Bert的效果一直比baseline模型要好;
    • 最佳融合函數(shù)可能取決于數(shù)據(jù)集。一般來說,gating方法具有很強的性能,這可能得益于其可訓練的gating機制。結(jié)果還表明,對于實際部署,融合函數(shù)的類型可以是一個超參數(shù),并應根據(jù)數(shù)據(jù)集的內(nèi)在屬性進行調(diào)整,以達到最佳的在線性能。

    4.2 不同side信息的貢獻

    • None:是原始的Bert+position ID;
    • 商品相關(guān)和行為相關(guān)的side信息并未帶來準確率的明顯提升;
    • 如果結(jié)合了與行為相關(guān)的side信息,則改進的效果明顯大于其中任何一個帶來的改進的總和;也就是說不同類型的side信息并不是獨立的;
    • NOVA-BERT從綜合信息中獲益更多,并且有很強的能力利用豐富的數(shù)據(jù)而不受信息的困擾;

    4.3 Attention 分布的可視化

    • NOVA-BERT的注意力得分在局部性方面表現(xiàn)出更強的模式,大致集中在對角線上。另一方面,在基線模型的圖中沒有觀察到。
    • 根據(jù)我們對整個數(shù)據(jù)集的觀察,這種對比是普遍存在的。我們注意到側(cè)邊信息導致模型在早期層次形成更明顯的attention。實驗結(jié)果表明,NOVA-BERT算法以side信息作為計算attention矩陣的輔助工具,可以學習目標的注意分布,從而提高計算的準確性。

    此外,我們也進行個案研究,以了解NOVA的注意分布,并進行更詳細的分析。詳情請參閱附錄。

    4.4 NOVA-BERT的部署和代價

    • NOVA-BERT幾乎沒有額外的計算開銷,與invasive方法的大小相同。


    5. 結(jié)論

    在本文中,我們提出了NOVA-BERT推薦系統(tǒng)和Non-invasive自我注意機制(NOVA)。提出的NOVA機制沒有將sidw信息直接融合到商品表示中,而是利用side信息作為方向引導,保持商品表示在向量空間中不被摻雜。我們在實驗數(shù)據(jù)集和工業(yè)應用兩個方面對NOVA-BERT進行了評估,在計算和模型尺寸方面的開銷可以忽略不計的情況下實現(xiàn)了SOTA性能。

    參考文獻

    https://www.aaai.org/AAAI21Papers/A

    mp.weixin.qq.com/s/UHQB

    最強的Attention函數(shù)誕生啦,帶給你意想不到的巨大提升!

    mp.weixin.qq.com/s/UHQB

    更多干貨,請關(guān)注公眾號:煉丹筆記

    總結(jié)

    以上是生活随笔為你收集整理的又一Attention函数诞生啦,带给你意想不到的巨大提升!的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。