對比學習演算法在轉轉的實踐
- 1 什麼是對比學習
- #1.1 對比學習的定義
- 1.2 對比學習的原理
- 1.3 經典對比學習演算法系列
- 2 對比學習的應用
- 3 對比學習在轉轉的實踐
- 3.1 CL在推薦召回的實踐
- 3.2 CL在轉轉的未來規劃
1 什麼是對比學習
1.1 對比學習的定義
對比學習(Contrastive Learning, CL)是近年來AI 領域的熱門研究方向,吸引了許多研究學者的關注,其所屬的自監督學習方式,更是在ICLR 2020 被Bengio 和LeCun 等大佬點名稱為AI 的未來,後陸續登陸NIPS, ACL, KDD, CIKM 等各大頂會,Google, Facebook, DeepMind,阿里、騰訊、字節等大廠也紛紛對其投入精力,CL 的相關工作也是刷爆了CV,乃至NLP 部分問題的SOTA,在AI 圈的風頭可謂一時無兩。
CL 的技術來源來自度量學習,大概的想法是:定義好樣本的正例和負例,以及映射關係(將實體映射到新的空間),優化目標是讓正例在空間中與目標樣本的距離近一些,而負例則要相對遠一些。正因為如此,CL 看起來跟向量化召回思路很像,但其實二者有本質的區別,向量化召回屬於監督學習的一種,會有明確的標籤數據,而且更注重的負樣本的選擇(素有負樣本為王的「學說」);而CL 是自監督學習(屬於無監督學習的一種範式)的一支,不需要人工標註的標籤信息,直接利用數據本身作為監督信息,學習樣本資料的特徵表達,進而引用於下游任務。此外,CL 的核心技術是資料增強(Data Augmentation),更重視的是如何建構正樣本。下圖是一個抽象的 CL 整體流程圖
對比學習的標籤資訊來自資料本身,核心模組是資料增強。影像領域的資料增強技術是比較直觀的,例如影像的旋轉、遮蔽、取部分、著色、模糊等操作,都可以得到一張與原圖整體相似但局部相異的新圖(即增強出來的新圖),下圖是部分影像資料增強的手段(出自SimCLR[1])。
1.2 對比學習的原理
談到CL的原理,不得不提自監督學習,它避開了人工標註的高成本,以及標籤低覆蓋的稀疏性,更容易學到通用的特徵表示。自監督學習可以分成兩大類:生成式方法和對比式方法。生成式方法的典型代表是自編碼器,而對比式學習的經典代表即ICLR 2020的SimCLR,透過(增強後的)正負樣本在特徵空間的對比學習特徵表示。相比較生成式方法,對比式方法的優點在於無需對樣本進行像素級的重構,只需要在特徵空間能夠學到可區分性即可,這使得相關的最佳化變得簡單。作者認為,CL的有效性主要體現在學習item表示的可區分性,而可區分性的學習依賴正負樣本的建構思路,以及具體的模型結構和最佳化目標。
結合CL的實作過程,Dr Zhang[2]抽象化了三個CL必須回答的問題,也是其區別於度量學習的典型特徵,即(1)如何構造正例和負例,也就是數據增強具體是如何實現的;(2)Encoder映射函數如何構造,不僅要盡可能多地保留原始信息,而且要防止坍塌問題;(3)損失函數如何設計,目前通常使用的NCE loss,如下公式所示。不難看出,這三個基本問題對應建模的三要素:樣本,模型,最佳化演算法。
從loss 公式可以看出,分子部分強調的是與正例的距離越近越好,S函數衡量的是相似性,距離越近對應的S值越大,分母強調的是與負例的距離越遠越好,loss 越低,對應的可區分性越高。
在這三個基本問題中,資料增強是CL 演算法的核心創新點,不同的增強手段是演算法有效性的基本保障,也是各大CL 演算法的identity;Encoder函數通常藉助神經網路實現;除NCE loss外,還有其他loss 的變體,例如Google[3]就提出了監督對比損失。
1.3 經典對比學習演算法系列
CL是自監督學習的一種學習演算法,提到自監督學習,Bert 恐怕是NLP 領域無法迴避的話題,Bert 預訓練Fine- tuning 的模式在許多問題的解決方案中實現了突破,既然自監督可以在NLP 取得成功,那麼電腦視覺就不可以嗎?實際上 Bert 在 NLP 領域的成功,也直接刺激了 CL 在影像領域的發生與發展。鑑於資料增強可以在影像領域直觀地展開,CL 也是率先在CV 領域取得進展,例如CL 的發展契機—— SimCLR 演算法,其創新點主要包括(1)探索了多種不同的資料增強技術的組合,選擇了最優;(2)在Encoder 之後增加了非線性映射Projector,主要是考慮Encoder 學習的向量表示會把增強的信息包含在內,而Projector 則旨在去除這部分影響,回歸數據的本質。後來Hinton的學生在 SimCLR 的基礎上實現了 SimCLR v2,主要改進點在於 Encoder 的網絡結構,同時借鑒了 MoCo 使用的 Memory Bank 的思想,進一步提升了 SOTA。
實際上,在SimCLR 之前,Kaiming He 在2019年底提出了另一個對比學習的經典演算法MoCo[4],其主要思想是既然對比是在正負樣本之間進行的,那麼增加負樣本數量,可以提高學習任務的難度,從而增強模型性能,Memory Bank 是解決該問題的經典思路,但卻無法避免表示不一致的問題,有鑑於此,MoCo 演算法提出了使用動量的方式更新Encoder 參數,從而解決新舊候選樣本編碼不一致的問題。後來,Kaiming He 又在 MoCo 的基礎上提出了 MoCo v2(在 SimCLR 提出之後),模型主要框架沒有改動,主要在數據增強的方法、Encoder 結構以及學習率等細節問題上做了優化。
2 對比學習的應用
對比學習不僅是學術界在圖像、文字、多模態等多個領域的熱門研究方向,同時也在以推薦系統為代表的工業界得到了應用。
Google 將CL 應用於推薦系統Google SSL[5],目的在於針對冷門、小眾的item 也能學習到高品質的向量表示,從而輔助解決推薦冷啟動問題。其資料增強技術主要採用Random Feature Masking(RFM),Correlated Feature Masking(CFM)的方法(CFM 一定程度上解決了RFM 可能構造出無效變體的問題),進而CL 以輔助塔的形式,結合雙塔召回的主任務共同訓練,整體流程如下圖所示
在模型的訓練過程中,主任務的item 主要還是來自曝光日誌,因此也是對頭部熱門item 比較友好,為了消除馬太效應的影響,在輔助任務中的樣本構造需要考慮與主任務不同的分佈,後續CL 在轉轉的實踐過程中也是藉鑑了這樣的思考,從而確保模型學習結果的充分覆蓋。
資料增強不局限在item 側,Alibaba-Seq2seq[6]將CL 的想法應用在序列推薦問題上,即輸入使用者行為序列,預測下一個可能互動的item。具體地,其資料增強主要應用在使用者行為序列特徵,將使用者歷史行為序列依時序劃分成兩個子序列,作為資料增強後的使用者的表示,餵入雙塔模型,最終輸出結果越相似越好。同時,該文為了明確建模使用者的多興趣,在 Encoder 部分提取出多個向量,而不是壓縮成一個使用者向量。因為隨著子序列的拆分,以及正負例的構造,用戶天然具有多個行為序列的向量表示,在正例中,用戶前一部分歷史行為的向量,與後一部分歷史行為的向量,距離相近,而在負例中,不同用戶的距離相對較遠,而且即使同一用戶,在不同類別商品的向量表示也相對較遠。
CL 也可以與其他學習範式結合應用,圖對比學習[7],整體框架如下圖所示
GCL 通常透過隨機刪除圖中的點或邊,實現圖資料的增強,而本文的作者傾向於保持重要的結構和屬性不變,擾動發生在不重要的邊或節點。
3 對比學習在轉轉的實踐
圖像領域取得了成功,文本領域也是可以的,例如美團-ConSERT[8]演算法,在句子語義匹配任務的實驗中,相比之前的SOTA(BERT-flow)提升了8%,並且在少量樣本下仍能表現出較好的性能提升。演算法將資料增強作用在Embedding 層,採用隱式生成增強樣本的方法,具體地,提出了四種資料增強方法:對抗攻擊(Adversarial Attack),打亂詞序(Token Shuffling),裁剪(Cutoff)和Dropout,這四種方法都透過調整Embedding 矩陣而得到,比顯式增強方法更有效率。
3.1 CL在推薦召回的實踐
轉轉平台致力於促進低碳循環經濟的更好發展,能夠覆蓋全品類商品,近年來尤其在手機3C領域的發展表現突出。 CL 在轉轉推薦系統中的實踐也是選擇了基於文本的應用思路,考慮到二手交易特有的屬性,需要解決的問題包括(1)二手商品的孤品屬性,導致ID 類的向量並不適用; (2)資料增強是怎麼實現的;(3)正例和負例如何構造;(4)Encoder 的模型結構是怎樣的(包括loss 的設計問題)。針對這四個問題,結合下面的整體流程圖進行詳細說明
針對二手商品的孤品屬性問題,我們採用基於文本的向量作為商品的表徵,具體地,使用商品的文本描述(包括標題與內容)集合,訓練word2vec 模型,並基於詞向量透過pooling 得到商品的向量表示。
自編碼器(Auto Encoder)演算法是文字對比學習領域常用的資料增強手段之一(除此之外,還有機器翻譯、CBERT等不同想法),我們也是採用AE 演算法訓練模型,學習商品向量,並利用演算法的中間向量作為商品的增強向量表示,也就有了正例。
負例的生產原則是 Batch 內隨機選取不相似的商品,相似商品的判斷依據是根據使用者的後驗點擊行為計算而來。在以 CF(協同過濾)為代表的推薦系統召回結果中,能夠透過共同點擊行為召回的商品組合,認為是相似的,否則認為是不相似的。之所以採用行為依據判斷是否相似,一方面是為了將使用者的行為引入其中,實現文本與行為的有機結合,另一方面也是為了盡可能貼合業務目標。
具體到Encoder 部分,我們採用的是類似孿生網路的雙塔結構,分別餵入樣本(正正or 正負)的文字向量,訓練分類模型,網路結構為三層全連接的神經網絡,雙塔共享此網絡參數,並透過優化交叉熵損失優化模型參數。實際工業界,大部分推薦系統中雙塔模型的訓練目標均為使用者後驗行為(點擊、收藏、下單等),而我們的訓練目標是樣本相似與否,之所以採用孿生網路的形式,也是出於這樣做可以保證學習結果的涵蓋。
根據 CL 的常規思路,提取最終 Encoder 部分的輸入向量作為商品的向量化表示,可以進一步在推薦系統的召回、粗排甚至精排等環節應用。目前已經在轉轉推薦系統的召回模組落地,為線上帶來了超過10%的下單提袋率的提升。
3.2 CL在轉轉的未來規劃
透過人工評估以及線上AB實驗,充分確認了CL習得向量表示的有效性,在召回模組落地後,可以在推薦系統其他模組,甚至其他演算法場景推而廣之。以預先訓練的方式學習商品向量表示(當然,也可以學習使用者的向量表示),只是一條應用路徑,CL 更多的是提供了一種學習框架或學習思路,透過資料增強和對比的形式,使演算法學習物品的可區分性,這樣的思路可以自然地引入推薦系統的排序模組,因為排序問題也可以理解成物品的可區分性問題。
關於作者
李光明,資深演算法工程師。參與轉轉搜尋演算法、推薦演算法、使用者畫像等系統的演算法體系建設,在GNN、小樣本學習、對照學習等相關領域有實務應用。
參考資料
[1]SimCLR: A_Simple_Framework_for_Contrastive_Learning_of_Visual_Representations
[2]張俊林: https://www.php.cn/link/be7ecaca534f98c4ca134e527b12d4c8
[3]Google: #Supervised_
###[3]###Google: ####Supervised_Contrastive_######[3]###Google: ####Supervised_Contras #####[4]MoCo:Momentum_Contrast_for_Unsupervised_Visual_Representation_Learning
[5]SSL:Self-supervised_Learning_[5]
SSL:Self-supervised_Learning_for_Large-scations_Re.com ##[6]Ali-Seq2seq:Disentangled_Self-Supervision_in_Sequential_Recommenders
[7]GCL:Graph_contrastive_lening_
#[7]GCL:Graph_contrastive_lening_with[7]GCL:Graph_contrastive_lening_with
#augmentment. ##########[8]###ConSERT:###ConSERT:_A_Contrastive_Framework_for_Self-Supervised_Sentence_Representation_Transfer######以上是對比學習演算法在轉轉的實踐的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

熱門話題

本站6月27日訊息,剪映是由位元組跳動旗下臉萌科技開發的一款影片剪輯軟體,依託於抖音平台且基本面向該平台用戶製作短影片內容,並相容於iOS、安卓、Windows 、MacOS等作業系統。剪映官方宣布會員體系升級,推出全新SVIP,包含多種AI黑科技,例如智慧翻譯、智慧劃重點、智慧包裝、數位人合成等。價格方面,剪映SVIP月費79元,年費599元(本站註:折合每月49.9元),連續包月則為59元每月,連續包年為499元每年(折合每月41.6元) 。此外,剪映官方也表示,為提升用戶體驗,向已訂閱了原版VIP

透過將檢索增強生成和語意記憶納入AI編碼助手,提升開發人員的生產力、效率和準確性。譯自EnhancingAICodingAssistantswithContextUsingRAGandSEM-RAG,作者JanakiramMSV。雖然基本AI程式設計助理自然有幫助,但由於依賴對軟體語言和編寫軟體最常見模式的整體理解,因此常常無法提供最相關和正確的程式碼建議。這些編碼助手產生的代碼適合解決他們負責解決的問題,但通常不符合各個團隊的編碼標準、慣例和風格。這通常會導致需要修改或完善其建議,以便將程式碼接受到應

大型語言模型(LLM)是在龐大的文字資料庫上訓練的,在那裡它們獲得了大量的實際知識。這些知識嵌入到它們的參數中,然後可以在需要時使用。這些模型的知識在訓練結束時被「具體化」。在預訓練結束時,模型實際上停止學習。對模型進行對齊或進行指令調優,讓模型學習如何充分利用這些知識,以及如何更自然地回應使用者的問題。但是有時模型知識是不夠的,儘管模型可以透過RAG存取外部內容,但透過微調使用模型適應新的領域被認為是有益的。這種微調是使用人工標註者或其他llm創建的輸入進行的,模型會遇到額外的實際知識並將其整合

想了解更多AIGC的內容,請造訪:51CTOAI.x社群https://www.51cto.com/aigc/譯者|晶顏審校|重樓不同於網路上隨處可見的傳統問題庫,這些問題需要跳脫常規思維。大語言模型(LLM)在數據科學、生成式人工智慧(GenAI)和人工智慧領域越來越重要。這些複雜的演算法提升了人類的技能,並在許多產業中推動了效率和創新性的提升,成為企業保持競爭力的關鍵。 LLM的應用範圍非常廣泛,它可以用於自然語言處理、文字生成、語音辨識和推薦系統等領域。透過學習大量的數據,LLM能夠產生文本

編輯|ScienceAI問答(QA)資料集在推動自然語言處理(NLP)研究中發揮著至關重要的作用。高品質QA資料集不僅可以用於微調模型,也可以有效評估大語言模型(LLM)的能力,尤其是針對科學知識的理解和推理能力。儘管目前已有許多科學QA數據集,涵蓋了醫學、化學、生物等領域,但這些數據集仍有一些不足之處。其一,資料形式較為單一,大多數為多項選擇題(multiple-choicequestions),它們易於進行評估,但限制了模型的答案選擇範圍,無法充分測試模型的科學問題解答能力。相比之下,開放式問答

機器學習是人工智慧的重要分支,它賦予電腦從數據中學習的能力,並能夠在無需明確編程的情況下改進自身能力。機器學習在各個領域都有廣泛的應用,從影像辨識和自然語言處理到推薦系統和詐欺偵測,它正在改變我們的生活方式。機器學習領域存在著多種不同的方法和理論,其中最具影響力的五種方法被稱為「機器學習五大派」。這五大派分別為符號派、聯結派、進化派、貝葉斯派和類推學派。 1.符號學派符號學(Symbolism),又稱符號主義,強調利用符號進行邏輯推理和表達知識。該學派認為學習是一種逆向演繹的過程,透過現有的

編輯|KX在藥物研發領域,準確有效地預測蛋白質與配體的結合親和力對於藥物篩選和優化至關重要。然而,目前的研究並沒有考慮到分子表面訊息在蛋白質-配體相互作用中的重要作用。基於此,來自廈門大學的研究人員提出了一種新穎的多模態特徵提取(MFE)框架,該框架首次結合了蛋白質表面、3D結構和序列的信息,並使用交叉注意機制進行不同模態之間的特徵對齊。實驗結果表明,該方法在預測蛋白質-配體結合親和力方面取得了最先進的性能。此外,消融研究證明了該框架內蛋白質表面資訊和多模態特徵對齊的有效性和必要性。相關研究以「S

本站7月5日消息,格芯(GlobalFoundries)於今年7月1日發布新聞稿,宣布收購泰戈爾科技(TagoreTechnology)的功率氮化鎵(GaN)技術及智慧財產權組合,希望在汽車、物聯網和人工智慧資料中心應用領域探索更高的效率和更好的效能。隨著生成式人工智慧(GenerativeAI)等技術在數位世界的不斷發展,氮化鎵(GaN)已成為永續高效電源管理(尤其是在資料中心)的關鍵解決方案。本站引述官方公告內容,在本次收購過程中,泰戈爾科技公司工程師團隊將加入格芯,進一步開發氮化鎵技術。 G
