Transformer實戰(22)——使用FLAIR進行語義相似性評估
- 0. 前言
- 1. 使用 FLAIR 進行語義相似性評估
- 2. 平均池化詞嵌入
- 3. 基於循環神經網絡的文檔嵌入
- 4. 基於 Transformer 的 BERT 嵌入
- 4. Sentence-BERT 嵌入
- 系列鏈接
0. 前言
在自然語言處理中,句子表示的質量直接影響下游任務(如語義檢索、文本聚類)的效果。在本節中,我們將通過 FLAIR 庫對句子表示模型進行定性評估,該庫極大地簡化了獲取文檔嵌入的過程,系統評估四種主流句子嵌入方法——平均池化、循環神經網絡編碼、BERT 嵌入及 SBERT 嵌入,揭示其語義區分能力。
1. 使用 FLAIR 進行語義相似性評估
在開始之前,使用 pip 安裝所需庫:
$ pip install flair
為了進行定性評估,我們定義了一組相似的句子對和一組不相似的句子對(每組五對)。我們期望嵌入模型能夠對相似句子對給出較高的分數,對不相似句子對給出較低的分數。這些句子對是從語義文本相似性 (Semantic Textual Similarity, STS) 基準數據集中提取的。對於相似的句子對,兩個句子是完全等價的,且意義相同。
(1) 從 STS 數據集中隨機選取相似度分數約為 5 的句子對: