為什麼現在推薦系統喜歡用雙塔模型?雙塔模型相較於單塔有什麼優缺點?

時間 2021-05-30 17:56:09

1樓:dragonfly

假定雙塔是user和item雙塔,一般這種結構多用在召回、粗排這種因為待打分item多導致效能跟不上的場景。這種雙塔導致了late fusion,cross feature無法使用等,會拉低模型效果。

另乙個意義上的雙塔是指對bias資訊用單獨的tower建模,好處是更靈活更好的對bias建模。

2樓:qnamqj

優點:雙塔各自看作乙個整體,就是乙個經典ctr預估lr模型,每個塔各自構建user與item embedding;

缺點:整體看是個lr模型,本質是只使用了輸入的一階特徵,缺少特徵的互動,所以後續很多網路結構引入FM,加強特徵的互動,重視embedding的表徵

3樓:

計算量更少,如Item * User兩個tower通過內積得到最終的目標。Item和User各自的embedding可以通過多層NN得到,這部分可以離線計算好,線上只需要計算最終一次向量內積,計算量就很低,在召回階段還能使用hnsw、ivf-pq等ANN演算法

為什麼現在男生都喜歡用貓當頭像?

FM丶 我喜歡用真人加貓的 我個人不怎麼喜歡貓,但是就是覺得帶貓的頭像好看。可能是因為貓的眼睛大吧,我眼小所以喜歡眼大的,哈哈哈。 嚯嚯和哈哈 以前用貓做頭像是喜歡。現在用貓做頭像還是因為喜歡。因為以前養過貓,所以那種不懈,放蕩,霸氣,自由,還能賣萌的屬性讓人欲罷不能。這是最近幾天拍到的流浪貓。多圖...

為什麼我用madis civi建的貝雷片模型受力比給出的貝雷片容許受力差那麼多?

Zirconium 788KN.m的容許受力指的是純彎矩,題主所述700KN m的均布力,除了產生彎矩外,還額外加了1000kN的剪力上去,而貝雷片實際上只能承受245kN的剪力,肯定會承受不住呀 題主可能是想模擬真實載荷情況 實際情況中橋梁上的彎矩確實是由向下的分布力導致的,但是要注意,現實中橋是...

為什麼現在的作業系統基本上用C語言來實現?

yin jie 如果把C 中的以下功能去掉,用C 寫作業系統核心和驅動還是可以的,並且效率不低 1 STL中的大多數函式 注意,乙個語言不僅包括語法特性,也包括庫函式 vector map iostream等等統統不能用 2 異常 3 RTTI 虛函式 虛繼承 4 全域性變數定義時使用建構函式初始化...