[論文レビュー] Sentence-BERT: Sentence Embeddings using Siamese BERT-Networks
SBERTはシーモーズ/トリプレットアーキテクチャでBERTをファインチューニングし、固定サイズの文埋め込みを生成します。これにより、コサインベースの意味的類似性評価、クラスタリング、検索が高速化され、なおかつ高い精度を維持します。
BERT (Devlin et al., 2018) and RoBERTa (Liu et al., 2019) has set a new state-of-the-art performance on sentence-pair regression tasks like semantic textual similarity (STS). However, it requires that both sentences are fed into the network, which causes a massive computational overhead: Finding the most similar pair in a collection of 10,000 sentences requires about 50 million inference computations (~65 hours) with BERT. The construction of BERT makes it unsuitable for semantic similarity search as well as for unsupervised tasks like clustering. In this publication, we present Sentence-BERT (SBERT), a modification of the pretrained BERT network that use siamese and triplet network structures to derive semantically meaningful sentence embeddings that can be compared using cosine-similarity. This reduces the effort for finding the most similar pair from 65 hours with BERT / RoBERTa to about 5 seconds with SBERT, while maintaining the accuracy from BERT. We evaluate SBERT and SRoBERTa on common STS tasks and transfer learning tasks, where it outperforms other state-of-the-art sentence embeddings methods.
研究の動機と目的
- 大規模な文コレクションに対する効率的な意味的類似性と検索の必要性を動機づける。
- 高速な類似度検索に適した固定サイズの文埋め込みを生成するようBERTを改変する。
- SBERTがSTSおよび関連ベンチマークで現状の最先端性能を維持または向上させることを示す。
- 大規模タスクにおけるSBERTの標準BERTに対する計算上の利点を示す。
提案手法
- シーモーズおよびトリプレットネットワーク構造を用いて事前学習済みBERT/RoBERTaを文埋め込み用にファインチューニングする。
- BERT出力に対してPOOLING(MEAN、CLS、MAX)を適用して固定サイズの文ベクトルを得る(デフォルトはMEAN)。
- 分類、回帰、またはトリプレット目的関数で最適化し、意味的に意味のある埋め込みを確保する。
- 文埋め込み間のコサイン類似度を計算して意味的関連性タスクを評価する。
- SNLIとMultiNLI(NLIデータ)で訓練し、その後STSb(またはNLI + STSb)でファインチューニングして性能を向上させる。
- STSタスク、AFS、SentEvalを用いて一般化と移転を評価する。
実験結果
リサーチクエスチョン
- RQ1SBERTはコサインベースの類似度指標に適した意味的に意味のある文埋め込みを生成できるか。
- RQ2シーモーズ/トリプレット目的でファインチューニングしたBERTは、従来の文埋め込み手法と比較してSTSおよび関連ベンチマークで性能を向上させるか。
- RQ3プーリング戦略と目的関数の選択は埋め込み品質と下流タスクにどう影響するか。
- RQ4大規模な類似検索とクラスタリングにおけるSBERTとクロスエンコーダBERTの計算上の利点はどこにあるか。
主な発見
| モデル | STS12 | STS13 | STS14 | STS15 | STS16 | STSb | SICK-R | Avg. |
|---|---|---|---|---|---|---|---|---|
| Avg. GloVe embeddings | 55.14 | 70.66 | 59.73 | 68.25 | 63.66 | 58.02 | 53.76 | 61.32 |
| Avg. BERT embeddings | 38.78 | 57.98 | 57.98 | 63.15 | 61.06 | 46.35 | 58.40 | 54.81 |
| BERT CLS-vector | 20.16 | 30.01 | 20.09 | 36.88 | 38.08 | 16.50 | 42.63 | 29.19 |
| InferSent - Glove | 52.86 | 66.75 | 62.15 | 72.77 | 66.87 | 68.03 | 65.65 | 65.01 |
| Universal Sentence Encoder | 64.49 | 67.80 | 64.61 | 76.83 | 73.18 | 74.92 | 76.69 | 71.22 |
| SBERT-NLI-base | 70.97 | 76.53 | 73.19 | 79.09 | 74.30 | 77.03 | 72.91 | 74.89 |
| SBERT-NLI-large | 72.27 | 78.46 | 74.90 | 80.99 | 76.25 | 79.23 | 73.75 | 76.55 |
| SRoBERTa-NLI-base | 71.54 | 72.49 | 70.80 | 78.74 | 73.69 | 77.77 | 74.46 | 74.21 |
| SRoBERTa-NLI-large | 74.53 | 77.00 | 73.18 | 81.85 | 76.82 | 79.10 | 74.29 | 76.68 |
- SBERTは、TTを生む前のBERT、InferSent、Universal Sentence Encoderと比較して、いくつかのSTSデータセットでSTS相関を大幅に改善した。
- STSbでは、SBERT-NLI-baseが77.03、SBERT-NLI-largeが79.23を達成し、STSbの学習設定で最先端性能に近づくまたはそれを上回る。
- SBERTはSentEvalの転移タスクで多くのベースラインを上回り、特に感情関連タスクで顕著な向上を示す。
- AFSのクロストピック設定では、SBERTは10-fold CVでBERTに近づくが、トピック間一般化にはより大きなギャップを示し、領域特有の課題を浮き彫りにする。
- SBERT-WikiSecトリプレットの結果は、Wikipediaセクションデータで以前のBiLSTMトリプレット手法を上回った。
- SBERTは大規模な検索とクラスタリングを迅速化する顕著な計算効率向上を提供する。
より良い研究を、今すぐ始めましょう
論文設計から論文執筆まで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。