成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

基于雙塔神經(jīng)網(wǎng)絡(luò)與負(fù)采樣技術(shù)構(gòu)建高性能推薦系統(tǒng)

譯文 精選
開(kāi)發(fā)
本文旨在探討推動(dòng)高級(jí)推薦引擎開(kāi)發(fā)的關(guān)鍵要素——雙塔神經(jīng)網(wǎng)絡(luò)與負(fù)采樣技術(shù)。

譯者 | 朱先忠

審校 | 重樓

簡(jiǎn)介

目前推薦系統(tǒng)中最重要的模型類型之一是雙塔神經(jīng)網(wǎng)絡(luò)。它們的結(jié)構(gòu)如下:神經(jīng)網(wǎng)絡(luò)的一部分(塔)負(fù)責(zé)處理有關(guān)查詢的所有信息(用戶、上下文),而另一部分處理有關(guān)對(duì)象的信息。這些塔的輸出內(nèi)容是嵌入,然后這些嵌入進(jìn)行乘法運(yùn)算(點(diǎn)積或余弦運(yùn)算,正如我們?cè)?/span>論文已經(jīng)討論過(guò)的方式)。

在一篇關(guān)于YouTube的非常好的論文中,可以找到最早提到應(yīng)用此類網(wǎng)絡(luò)進(jìn)行推薦的文章之一。我稱這篇文章為經(jīng)典之作因?yàn)樗岢隽?/span>最適合應(yīng)用于推薦領(lǐng)域的神經(jīng)網(wǎng)絡(luò)模型

圖片來(lái)自論文《Deep Neural Networks for YouTube Recommendations》(適用于YouTube推薦深度神經(jīng)網(wǎng)絡(luò)

這種網(wǎng)絡(luò)的特征有哪些呢具體來(lái)看,它們與矩陣分解非常相似,矩陣分解實(shí)際上是一種特殊情況,只將user_id和item_id作為輸入。然而,如果我們將它們與任意神經(jīng)網(wǎng)絡(luò)進(jìn)行比較,對(duì)延遲交叉的限制(直到最后一層才允許來(lái)自不同塔的輸入融合)使兩個(gè)塔網(wǎng)絡(luò)在應(yīng)用中非常高效。要為單個(gè)用戶構(gòu)建推薦,我們需要計(jì)算一次查詢塔,然后將此嵌入與文檔的嵌入相乘,文檔的嵌入通常是預(yù)先計(jì)算的。這個(gè)過(guò)程非常快。

此外,這些預(yù)先計(jì)算的文檔嵌入可以被組織到ANN(人工神經(jīng)網(wǎng)絡(luò),是研究生物學(xué)上的神經(jīng)網(wǎng)絡(luò),又叫生物神經(jīng)網(wǎng)絡(luò),詳見(jiàn):https://en.wikipedia.org/wiki/Nearest_neighbor_search)索引(例如,HNSW圖算法:https://github.com/nmslib/hnswlib)中,以快速找到好的候選者,而不必遍歷整個(gè)數(shù)據(jù)庫(kù)。

有興趣的讀者可以參考文章《Similarity Search, Part 4: Hierarchical Navigable Small World (HNSW)》(相似性搜索,第4部分:分層導(dǎo)航小世界(HNSW))。其中,分層導(dǎo)航小世界(HNSW)是一種先進(jìn)的算法,適用于在高維空間中進(jìn)行高效人工神經(jīng)網(wǎng)絡(luò)搜索的數(shù)據(jù)結(jié)構(gòu)和算法,可以有效地找到近似的最近鄰文章地址是:
https://towardsdatascience.com/similarity-search-part-4-hierarchical-navigable-small-world-hnsw-2aad4fe87d37?source=post_page-----fdc88411601b--------------------------------

我們可以通過(guò)計(jì)算用戶部分來(lái)獲得更高的效率,不是針對(duì)每個(gè)查詢,而是異步計(jì)算,并具有一定的規(guī)律性。然而,這意味著犧牲了對(duì)實(shí)時(shí)歷史和上下文的考慮。

塔樓本身可能相當(dāng)復(fù)雜。例如,在用戶部分,我們可以使用自注意力機(jī)制來(lái)處理歷史,這導(dǎo)致了個(gè)性化的轉(zhuǎn)換。但是,實(shí)行延遲交叉限制的代價(jià)是什么?它會(huì)影響質(zhì)量。在同樣的注意力機(jī)制中,我們不能使用我們目前希望推薦的項(xiàng)目。理想情況下,我們希望關(guān)注用戶歷史記錄中的類似項(xiàng)目。因此,具有早期交叉的網(wǎng)絡(luò)通常用于排名的后期階段,此時(shí)只剩下幾十或幾百個(gè)候選者,而具有后期交叉的網(wǎng)絡(luò)(雙塔)則用于排名的早期階段和候選者生成。

(有一個(gè)純粹的理論論點(diǎn)認(rèn)為,針對(duì)不同查詢的文檔的任何合理排序都可以通過(guò)足夠維度的嵌入進(jìn)行編碼。此外,NLP中的解碼器實(shí)際上遵循相同的原理,只為每個(gè)令牌重新計(jì)算查詢塔。)

損失函數(shù)與負(fù)采樣

一個(gè)令人特別感興趣的問(wèn)題是用于訓(xùn)練兩個(gè)塔網(wǎng)絡(luò)的損失函數(shù)。原則上,他們可以用任何損失函數(shù)進(jìn)行訓(xùn)練,針對(duì)不同的結(jié)果,甚至對(duì)不同的頭部有多個(gè)不同的結(jié)果(每個(gè)塔中有不同的嵌入)。然而,一個(gè)有趣的變體是在批量負(fù)例上進(jìn)行softmax損失訓(xùn)練。對(duì)于數(shù)據(jù)集中的每個(gè)查詢文檔對(duì),在softmax損失中,同一小批中的其他文檔與同一查詢一起用作負(fù)例文檔。這種方法是一種非常有效的難負(fù)例挖掘形式。

是,重要的是要考慮對(duì)這種損失函數(shù)的概率解釋,這一點(diǎn)并不總是得到很好的理解。在經(jīng)過(guò)訓(xùn)練的網(wǎng)絡(luò)中,在下面公式中,

得分的指數(shù)不是與給定查詢的文檔的先驗(yàn)概率成比例,而是與查詢特有的PMI(Pointwise Mutual Information,點(diǎn)互信息https://en.wikipedia.org/wiki/Pointwise_mutual_information)成比例。這種模型不一定會(huì)更頻繁地推薦更受歡迎的文檔,因?yàn)樵谟?xùn)練過(guò)程中,它們按比例更頻繁地顯示為負(fù)例文檔。使用得分作為一個(gè)特征可能是有益的,但對(duì)于最終排名和候選生成來(lái)說(shuō),這可能會(huì)導(dǎo)致非常具體但質(zhì)量較差的文檔。

谷歌在一篇論文中建議在訓(xùn)練期間通過(guò)logQ校正來(lái)解決這個(gè)問(wèn)題。另一方面,我們通常在應(yīng)用階段而不是在訓(xùn)練期間通過(guò)簡(jiǎn)單地乘以文檔P(d)的先驗(yàn)概率來(lái)解決這個(gè)問(wèn)題。不過(guò),我們從未比較過(guò)這些方法,這確實(shí)是一個(gè)有趣的比較。

隱式正則化:連接ALS和現(xiàn)代神經(jīng)網(wǎng)絡(luò)

有一種協(xié)作過(guò)濾算法被稱為隱式ALS(IALS)。我以前已經(jīng)提到過(guò)了。在前神經(jīng)網(wǎng)絡(luò)時(shí)代,它可以說(shuō)是最流行的算法之一。它的顯著特點(diǎn)是有效地“挖掘”負(fù):所有沒(méi)有交互歷史的用戶對(duì)象對(duì)都被視為負(fù)(盡管權(quán)重比實(shí)際交互小)。此外,與實(shí)際挖掘不同的是,這些負(fù)不會(huì)被采樣,而是在每次迭代中全部使用。這種方法被稱為隱式正則化。

這怎么可能?給定合理的任務(wù)大小(用戶和對(duì)象的數(shù)量),應(yīng)該有太多的負(fù),即使列出它們也需要比整個(gè)訓(xùn)練過(guò)程更長(zhǎng)的時(shí)間。該算法的美妙之處在于,通過(guò)使用MSE損失和最小二乘法,可以在每次完全迭代之前分別為所有用戶和所有對(duì)象預(yù)計(jì)算某些元素,這足以執(zhí)行隱式正則化。通過(guò)這種方式,該算法避免了二次大小。(更多細(xì)節(jié),請(qǐng)參閱我當(dāng)時(shí)最喜歡的一篇論文)。

幾年前,我思考是否有可能將隱式正則化的美妙想法與更先進(jìn)的雙塔神經(jīng)網(wǎng)絡(luò)技術(shù)相結(jié)合。這是一個(gè)復(fù)雜的問(wèn)題,因?yàn)榇嬖陔S機(jī)優(yōu)化而不是全批,并且不愿意恢復(fù)到MSE損失(至少對(duì)于整個(gè)任務(wù);特別是對(duì)于正則化,這可能沒(méi)問(wèn)題),因?yàn)樗鶗?huì)產(chǎn)生較差的結(jié)果。

我想了很久,終于想出了一個(gè)解決辦法!幾周來(lái),我一直很興奮,急切地期待著我們將如何用這種方法代替批量負(fù)樣

然后,當(dāng)然(在這種情況下經(jīng)常發(fā)生),我在一篇論文中讀到,三年前一切都已經(jīng)得到解答。再次,是谷歌的貢獻(xiàn)。后來(lái),在關(guān)于logQ校正的同一篇論文中,他們證明了具有批內(nèi)負(fù)的softmax損失比隱式正則化效果更好。

這就是為什么我們不再浪費(fèi)時(shí)間來(lái)測(cè)試這個(gè)想法的原因

我們真的需要推薦模型的負(fù)采樣嗎?

畢竟,我們曾經(jīng)使用過(guò)推薦印象的真實(shí)例子,如果用戶沒(méi)有與們互動(dòng),這些可以被視為強(qiáng)負(fù)例的典型。(這不考慮推薦服務(wù)本身尚未推出而且還沒(méi)有印象的情況。)

這個(gè)問(wèn)題的答案并不那么瑣碎;這取決于我們打算如何準(zhǔn)確地應(yīng)用訓(xùn)練后的模型:用于最終排名、候選生成,或者僅僅作為輸入到另一個(gè)模型的特征。

當(dāng)我們只根據(jù)實(shí)際印象訓(xùn)練模型時(shí)會(huì)發(fā)生什么?出現(xiàn)了相當(dāng)強(qiáng)烈的選擇偏差,模型只學(xué)會(huì)很好地區(qū)分那些在特定上下文中顯示的文檔。對(duì)于未顯示的文檔(或者更準(zhǔn)確地說(shuō),查詢文檔對(duì)),該模型的性能會(huì)差得多:它可能對(duì)某些文檔預(yù)測(cè)過(guò)高,而對(duì)其他文檔預(yù)測(cè)過(guò)低。當(dāng)然,這種影響可以通過(guò)在排名中應(yīng)用探索來(lái)減輕,但通常這只是部分解決方案。

如果以這種方式訓(xùn)練候選生成器,它可能會(huì)生成過(guò)多的文檔來(lái)響應(yīng)查詢,這些文檔在這種情況下從未見(jiàn)過(guò),而且它高估了對(duì)這些文檔的預(yù)測(cè)。在這些文中,通常都是無(wú)用的信息。如果最終的排名模型足夠好,它會(huì)過(guò)濾掉這些文檔,而不會(huì)向用戶顯示它們。然而,我們?nèi)匀徊槐匾卦?/span>們身上浪費(fèi)候選名額(而且可能根本沒(méi)有留下任何合適的文)。因此,候選生成器應(yīng)接受訓(xùn)練,使其了解大部分文檔庫(kù)質(zhì)量較差,不應(yīng)推薦(作為候選提名)。針對(duì)此問(wèn)題,負(fù)采樣是一個(gè)很好的方法。

在這方面,最終排名的模型與候選生成非常相似,但有一個(gè)重要的區(qū)別:們從錯(cuò)誤中吸取教訓(xùn)。當(dāng)模型因高估某些文檔的預(yù)測(cè)而出錯(cuò)時(shí),這些文檔會(huì)顯示給用戶,然后可能被包括在下一個(gè)訓(xùn)練數(shù)據(jù)集中。我們可以在這個(gè)新的數(shù)據(jù)集上重新訓(xùn)練模型,并再次向用戶推出。新的誤報(bào)將會(huì)出現(xiàn)。數(shù)據(jù)集的收集和再訓(xùn)練過(guò)程可以重復(fù)進(jìn)行,從而產(chǎn)生一種主動(dòng)學(xué)習(xí)。在實(shí)踐中,只需幾次再訓(xùn)練迭代就足以使過(guò)程收斂,并使模型停止推薦廢話。當(dāng)然,必須權(quán)衡隨機(jī)推薦的危害,有時(shí)值得采取額外的預(yù)防措施。但總的來(lái)說(shuō),這里不需要負(fù)采樣。相反,它可能會(huì)損害探索,導(dǎo)致系統(tǒng)保持在局部最優(yōu)狀態(tài)。

如果該模型用于輸入到另一個(gè)模型的特征,那么同樣的邏輯也適用,但高估隨機(jī)候選文檔的預(yù)測(cè)所帶來(lái)的危害甚至不那么嚴(yán)重,因?yàn)槠渌卣骺梢詭椭{(diào)整最終預(yù)測(cè)。(如果一個(gè)文檔甚至沒(méi)有進(jìn)入候選列表,我們就不會(huì)為它計(jì)算特征。)

有一次,我們直接測(cè)試并發(fā)現(xiàn),作為特征,標(biāo)準(zhǔn)ALS比IALS工作得更好,但不應(yīng)用于候選生成。

小結(jié)

在本文探索分析中,我們強(qiáng)調(diào)了雙塔網(wǎng)絡(luò)在推薦排名中的有效性,檢驗(yàn)了損失函數(shù)和負(fù)采樣在模型精度中的重要性,通過(guò)隱式正則化彌補(bǔ)了與經(jīng)典協(xié)同過(guò)濾的差距,并討論了負(fù)采樣在推薦系統(tǒng)中的重要作用。同時(shí),這次討論強(qiáng)調(diào)了推薦系統(tǒng)技術(shù)不斷發(fā)展的復(fù)雜性和復(fù)雜性。

譯者介紹

朱先忠,51CTO社區(qū)編輯,51CTO專家博客、講師,濰坊一所高校計(jì)算機(jī)教師,自由編程界老兵一枚。

原文標(biāo)題:Two-Tower Networks and Negative Sampling in Recommender Systems,作者:Michael Roizner

責(zé)任編輯:華軒 來(lái)源: 51CTO
相關(guān)推薦

2023-07-19 08:55:00

神經(jīng)網(wǎng)絡(luò)推薦系統(tǒng)

2022-07-28 09:00:00

深度學(xué)習(xí)網(wǎng)絡(luò)類型架構(gòu)

2022-04-07 09:01:52

神經(jīng)網(wǎng)絡(luò)人工智能

2024-12-27 09:37:51

2011-12-15 13:28:57

2023-05-12 14:58:50

Java神經(jīng)網(wǎng)絡(luò)深度學(xué)習(xí)

2018-03-22 13:34:59

TensorFlow神經(jīng)網(wǎng)絡(luò)

2009-10-29 09:11:50

Juniper高性能網(wǎng)絡(luò)

2022-10-21 16:07:10

編碼器自然語(yǔ)言模型

2025-02-05 12:09:12

2023-10-31 18:52:29

網(wǎng)絡(luò)框架XDP技術(shù)

2017-06-09 10:00:15

大數(shù)據(jù)網(wǎng)絡(luò)拓?fù)?/a>可拓展模型

2017-09-10 07:07:32

神經(jīng)網(wǎng)絡(luò)數(shù)據(jù)集可視化

2025-06-03 08:15:00

微服務(wù)架構(gòu)異步任務(wù)隊(duì)列

2024-06-11 08:19:34

2024-07-10 11:09:35

2024-06-28 08:15:02

2018-07-03 16:10:04

神經(jīng)網(wǎng)絡(luò)生物神經(jīng)網(wǎng)絡(luò)人工神經(jīng)網(wǎng)絡(luò)

2025-02-25 10:50:11

2020-09-09 09:51:41

神經(jīng)網(wǎng)絡(luò)DA技術(shù)感知器
點(diǎn)贊
收藏

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

主站蜘蛛池模板: 成人三级在线播放 | 国产成人精品一区二区三区视频 | 日韩成人| 国产精品视频不卡 | 91精品国产综合久久久久久丝袜 | 日韩视频专区 | 中文字幕综合 | 欧美日韩在线成人 | 欧美日韩视频一区二区 | 国产激情精品 | 成人久久久| 一区二区三区在线电影 | 日韩视频免费 | 91 在线| 欧美精品1区 | 91综合在线观看 | 欧美在线日韩 | 婷婷开心激情综合五月天 | 亚洲电影一区 | 国产福利资源在线 | 成人日韩| 91精品国产一区二区 | 亚洲国产成人久久久 | 亚洲精品久久久久久久久久吃药 | 亚洲h视频 | 国产免费一区二区 | 高清黄色毛片 | 亚洲色片网站 | 亚洲一二三区av | 日中文字幕在线 | 日韩中文不卡 | 欧美日韩成人在线 | 成人亚洲性情网站www在线观看 | 视频一区在线观看 | 人人玩人人添人人澡欧美 | 久久久国产一区二区三区 | 伊人二区 | 国产精品视频久久 | 欧美区日韩区 | 日韩电影a | 成人免费毛片在线观看 |