BERT模型-文本相似度任務


作者:李rumor
鏈接:https://www.zhihu.com/question/354129879/answer/882012043
來源:知乎
著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請注明出處。

首先對BERT本身的輸出做pooling就可以得到句子表示,然后用一些metric(比如cosine)來計算相似度。但BERT在預訓練時的目標是token-level的,這就導致訓練-預測目標不一致,直接得到的表示並不好用

下面推薦一些改進:

1、直接對BERT輸出的表示進行改進

BERT-flow是20年字節提出的最新模型,但后來蘇神證實了簡單的whitening也能起到差不多的效果。

BERT-flow

題目:On the Sentence Embeddings from Pre-trained Language Models
論文:https://arxiv.org/pdf/2011.05864.pdf
代碼:https://github.com/bohanli/BERT-flow

字節在EMNLP2020提出了BERT-flow,主要是基於Sentence-BERT做改動,因為之前的預訓練+遷移都是使用有監督數據,而作者基於對原生BERT表示的分析發現,那些表示在空間的分布很不均勻,於是使用flow-based生成模型將它們映射到高斯分布的均勻空間,比之前的Sentence-BERT提升了4個點之多。

但這個模型的缺點是又加了一層機制,在預測時候會降低速度,同時在知乎上看到個別同學在自己任務上的試用反饋也不太好。不過我倒是驗證了SentEval上有監督的效果(論文只給了無監督的),效果跟Sentence-BERT差不多。

https://zhuanlan.zhihu.com/p/357864974


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM