# トリプレットの Better Negative Sampling による Text Embedding の学習とテキスト分類

満石風斗 1 安立健人 1 狩野芳伸 2
1 株式会社マネーフォワード 2 静岡大学 情報学部
\{mitsuishi.futo, adachi.kento\}@moneyforward.co.jp
kano@kanolab.net

## 概要

anchor・ positive ・ negative の各テキストからなるト リプレットを用いた text embedding 学習によるテキ スト分類では、1. 対象からのトリプレットのサンプ リング、2.これを用いた text embedding の学習、の 2 ステップで学習を行う手法がある。従来のランダム なサンプリングに対して、本研究では anchor テキス トと positive テキストの識別をより難しくすること で性能向上が見込める Better Negative Sampling を提案する。livedoorニュースデータセットから作成し た均衡・不均衡データセットと、WRIME-ver2 デー タセットからサンプリングしたデータセットを用い て性能を検証した。accuracy を評価指標に用い、ラ ンダムなサンプリングに比べて 0.5-1.3\%の精度向上を達成した。

## 1 はじめに

テキスト分類は言語処理タスクの中でも広く応用されているタスクであり、たとえばレビューの 感情分析や英語文法の正誤判定 [1] などに利用さ れている。近年では BERT[2] などの事前学習モデ ルを Classifier としてファインチューニングする事例が多くみられるが、データセットに応じた text embedding を獲得し、訓練データとテストデータの text embedding の類似度から分類ラベルを予測する 手法も考えられる。 text embedding を用いる手法で は類似度を確信度として使うことができるなど実用上有利な点がある。

テキスト分類のための text embedding の学習には、 anchorテキスト (基準となるテキスト)・positiveテキ スト (anchor との類似度が大きくなることが期待さ れるテキスト)・negative テキスト (anchor との類似度が小さくなることが期待されるテキスト) からな
るトリプレットを分類の付与されたコーパスから構築し、このトリプレットの集合から text embedding 生成モデルの学習を行う手法が考えられる。

本研究ではこのトリプレット集合の構築方法に着目した。具体的には、ランダムなサンプリングを行 うベースラインに対して、negative テキストのサン プリングに工夫を加える Better Negative Sampling を 提案する。

トリプレットを用いた学習では、negative テキス トに anchor テキストとの分類が難しい hard negative なテキストを用いることがファインチューニング の精度を高めるのに有効である可能性が報告され ている [6]。この知見をテキスト分類のための text embedding 学習に適用するために、提案手法であ る Better Negative Sampling では、negative テキストに 「anchor テキストとラベルは異なるが text embedding 間の類似度が最も高いテキスト」を選択する。提案手法を用いることでよりテキスト分類に適した text embedding が得られると期待する。

実験では、ラベルが付与された livedoor ニュース データセット ${ }^{1)}$ から作成した均衡・不均衡データ セットおよび WRIME-ver22) からサンプリングした データセットに対して、ランダムなサンプリングと Better Negative Sampling を用いて text embedding を学習し比較した結果、Better Negative Sampling を用い たモデルは約 $0.5 \%$ の精度向上を達成した。

## 2 関連研究

## 2.1 事前学習モデルを用いたテキスト分類

BERT は大規模なデータセットを用いた事前学習 とタスクに応じたファインチューニングによって高 い精度を示す大規模言語モデルであり [2]、テキス

1) https://www.rondhuit.com/download.html

2) https://github.com/ids-cv/wrime

ト分類を含む多くのタスクに応用されている。

Lewis[7] らはいくつかの事前学習モデルにおい て、データセットに応じた text embedding の学習お よび転移学習を行うことで、直接 Classifier として ファインチューニングした場合に比べて少ないデー タ数で同等の性能でテキスト分類を行えると示唆し ている。他にも text embedding を用いてテキスト分類を行う手法が提案されているが [9][10]、これらは negative テキスト、すなわちトリプレットを利用し ていない。

## 2.2 タスクによらない text embedding の 学習

ファインチューニングをしていない BERT からも text embedding は獲得できるが、そのまま用いても 性能は低いことが示唆されており [3]、トリプレッ トサンプルを使用するなどしてより性能高く類似度 を計算できるような text embedding を獲得する方法 が研究されている [3][4][55]。トリプレットサンプル を用いた学習には negative テキストに hard negative な例を用いることがモデルの停滞を遅らせるのに有効であることが知られており [6]、実際に Ein-Dor ら [11] は Wikipedia のデータセットから同じ記事であ るが別の section の文章を hard negative として使用す ることで、精度の高い text embedding の学習に成功 している。

## 2.3 Multiple Negatives Ranking Loss

トリプレットを使用した学習の際の損失 (Loss) には様々な関数が提案されている [3][4][5]。そのひ とつである Multiple Negatives Ranking Loss ${ }^{3}$ では、ト リプレットをいくつか集めて 1 バッチとする。 バッチサイズを $\mathrm{K}$ とするとバッチ内には、anchor テキスト集合 $\mathrm{A} \ni$ anchori, positive テキスト集合 $\mathrm{P} \ni$ positive $_{\mathrm{i}}$, negative テキスト集合 $\mathrm{N}$ э negative $\mathrm{i}_{\mathrm{i}}(i=$ $\{1,2, \cdots, K\})$ が含まれる。図 1 の例のように、各 anchor $_{\mathrm{i}}$ について、 positive $\mathrm{i}_{\mathrm{i}}$ との類似度を大きく、 $\operatorname{positive}_{\mathrm{j}}\{j \neq i\}$ および全ての negative との類似度が 小さくなるように学習する。そのために anchor r $_{i}$ と バッチ内全ての positive テキストおよび negative テ キストの類似度を計算し、 positive i $_{i}$ との類似度を正解とみなす Categorical Cross Entropy Loss を最適化 する。

すなわち、candidate $\mathrm{j}_{\mathrm{j}}(\mathrm{j}=1 \cdots \mathrm{K})$ は positive $\mathrm{j}_{\mathrm{j}}$ を、 candidate $_{\mathrm{j}}(\mathrm{j}=\mathrm{K}+1 \cdots 2 \mathrm{~K})$ は negative $\mathrm{j}_{\mathrm{j}-\mathrm{K}}$ を表すとし


て positive と negative をまとめて candidate と表した とき、各バッチにおいて以下を最適化する。

$
\begin{aligned}
& -\sum_{i} \sum_{j} l_{i, j} \log \operatorname{Softmax}_{\mathrm{i}, \mathrm{j}}( \\
& \quad \cos \left(\operatorname{model}_{\theta}\left(\text { anchor }_{\mathrm{i}}\right), \operatorname{model}_{\theta}\left(\operatorname{cadidate}_{\mathrm{j}}\right)\right)
\end{aligned}
$

ここで、

$
l_{i, j}=\left.\{\begin{array}{l}
1(i=j) \\
-1(i \neq j)
\end{array}\right.
$

$
\operatorname{Softmax}_{\mathrm{i}, \mathrm{j}}\left(\cos \left(a_{i}, b_{j}\right)\right)=\frac{e^{\cos \left(a_{i}, b_{i}\right)}}{\sum_{j} e^{\cos \left(a_{i}, b_{j}\right)}}
$

であり、 $\cos \left(\right.$ vector $_{1}$, vector $\left._{2}\right)$ は二つのべクトルの コサイン類似度を、 $\operatorname{model}_{\theta}(t)$ はある時点でのモデ ルによるテキスト $\mathrm{t}$ に対応するべクトルを表す。 (vector ${ }_{1}$, vector $_{2}$ ) はそれぞれべクトルを表す。

図 1 Multiple Negatives Ranking Loss の概念図: 添え字 i, $\mathrm{j}$ は同じバッチ内の異なるトリプレットに対応する。

り、 positive $\mathrm{i}_{\mathrm{i}}$ 以外の異なるラベルに属する候補テキストの 類似度は小さくなるようにモデルを更新する。

## 3 提案手法

本研究では、タスクによらない text embedding の 学習で有効とされている hard negative の利用をテキ スト分類のための text embedding の学習に応用する ため、negative テキストの選択に工夫を加えた Better Negative Sampling を提案する。

Better Negative Sampling では negativeテキストの選択において、「anchor テキストとラベルは異なるが text embedding 間の類似度が最も高いテキスト」を選

表 21 ラベル内データ数と 1 ラベルの accuracy の相関 (Pearson の積率相関係数) BERTClassifier Text Embedding(random) Text Embedding (ours)

相関係数 $0.409 \quad 0.155 \quad 0.197$

択することでテキスト分類の精度向上を期待する。 この選択の際の類似度にはファインチューニング前 の事前学習済みモデルから得られる text embedding のコサイン類似度を用いる。

## 3.1 トリプレットデータセットの作成

ベースラインであるランダムなトリプレットデー タセットは元のデータセットから以下のようにサン プリングし作成する。

1. データセット内の全てのサンプルが一度ずつ anchor テキストとなるようにする

2. anchor テキストと同じ分類ラベルのテキストか らランダムに positive テキストを抽出する

3. anchor テキストと異なる分類ラベルのテキスト からランダムに negative テキストを抽出する

## 3.2 Better Negative Sampling

提案手法である Better Negative Sampling では以下 のようにトリプレットデータセットを作成する。 ベースラインのランダムな作成手順 1-2 に加え、

3. 事前学習モデルを用いて、anchorテキストと異 なるラベルのテキストと anchor テキストのコサ イン類似度を計算する
4. 3 で最も類似度が高いテキストを negative テキ ストとする

このようにして抽出された negative テキストは hard negative として機能し、text embedding モデルの 学習能力を高めると考えられる。

## 4 実験

## 4.1 データセット

本研究では、日本語の多クラス分類データセッ トとして、livedoor ニュースデータセットおよび WRIME-ver2[8] データセットからから作成したデー
タを用いた。

livedoor ニュース livedoorニュースデータセッ トはニュース記事が 9 つのメディアにラベリング されているデータであり、本研究ではニュース記事の見出しと、記事に紐づけられた 9 種のメディ アラベルのみを用いた。ラベル数が多く不均衡な データセットに対する提案手法の性能も確認するた め、livedoor ニュースデータセットから不均衡デー タセットと均衡データセットを作成した。これらの データセットの作成方法および統計情報は付録に記 した。

WRIME-ver2 WRIME-ver2 はツイートテキストに 主観および客観的な 5 段階の感情強度と 8 つの感情 の主観および客観的な 4 段階の強さがラベリングさ れたデータであり、本研究ではツイートテキストと 客観的な感情強度を用いて、5 段階の分類タスクと して実験した。計算量を減らすため、WRIME-ver2 からサンプリングしたデータセットを実験に用い た。データセットの作成方法と統計情報を付録に記 した。

## 4.2 モデル

事前学習モデルとして東北大学・乾研究室が公開 している whole-word-masking で学習された BERT を 使用した4）（以下日本語 BERT と表記する）。ベー スラインであるランダムなトリプレットデータ セット、および Better Negative Sampling で作成した トリプレットデータセットに対して、関連研究 2 で説明した Multiple Negatives Ranking Loss を用いた 日本語 BERT のファインチューニングを行い、text embedding モデルを学習した。text embedding モデル を用いたテキスト分類は、テストデータと学習デー タの text embedding のコサイン類似度をデータごと にそれぞれ計算し、最も類似度が高い学習データの ラベルを予測ラベルとした。

表 31 ラベル内データ数が 20 以下および 20 以上のラベルに対する accuracy

## 5 結果

表 1 に、分類評価結果の accuracy スコアを示す。 text embedding を用いた手法は classifier としての学習をおこなった場合に匹敵する精度を示した。

text embedding を用いた手法内で比較すると、 Better Negative Sampling を用いたモデルではべー スラインであるランダムなサンプリングに比べ 0.5-1.3\%の精度向上が見られた。

## 6 考察

Better Negative Sampling を用いたモデルは、実験し た全てのデータセットにおいてランダムなサンプリ ングを用いたベースラインモデルに比べて性能向上 が見られた。この結果から Better Negative Sampling を用いることで text embedding によるテキスト分類 の性能を高めることができることが示唆される。 text embedding によるテキスト分類がサンプル の文構造をどのくらい利用しているのかを調 べるため、MeCab[13] の Python ラッパーである fugashi[14](バージョン 1.2.1 IPAdic 辞書) を用いてサ ンプルから機能語である助詞および句読点などの 記号を削除してからラベルの予測を行った結果を 表 2(表右側にある†のついたカラム) に示す。Better Negative Sampling がランダムなサンプリングに比べ て 3.4-5.1\%の精度改善と、助詞・記号を削除しな い場合に比べて精度の向上が大きくなっていた。 Better Negative Sampling ではランダムなサンプリン グに比べて、文構造をあまり利用しておらず、すな わち内容語を強く学習している可能性がある。

さらに、 text embedding を用いたテキスト分類 は classifier としての学習に比べ livedoor 均衡デー タセットでは精度が大きく変わらないのに対し、 livedoor 不均衡データセットではランダムなサンプ リングで $3.8 \%$ の精度向上が見られた。この結果か ら text embedding を用いたテキスト分類はランダム サンプリング・Better Negative Sampling を問わず不均衡データに対する頑健性を持つ可能性が考えら れる。表 1 の右側にある、livedoor 不均衡データセッ トにおけるラベルごとのデータ数と accuracy との 相関 (Pearson の積率相関係数)を示している。text embedding を用いたテキスト分類では classifier とし てファインチューニングした場合に比べて相関が弱 い。この結果から text embedding を用いたテキスト 分類はデータ数の少ないラベルに対しても高精度で 分類できることがわかる。

さらに、 1 ラベル内データ数が 20 未満の場合と 20 以上の場合とでテストデータを分割し、それぞ れ各手法の accuracy を調べた結果 3 のようになっ た。データ数 20 未満のラベルに対する accuracy は、 classifier では大きく精度が落ちているのに対し、text embedding を用いた手法では精度がほとんど変わら なかった。この結果から、 text embeddingを用いた 手法は classifier と比較してデータ数が少ないラベル にも頑健に対応できることが示唆された。

## 7 おわりに

テキスト分類におけるトリプレットのサンプリ ング手法として、negative テキストを「anchorテキ ストとラベルが異なるが類似度が最も高いテキス ト」とする Better Negative Sampling を提案し、text embedding を用いたテキスト分類の精度が向上する ことを示した。また、Better Negative Sampling を用 いた手法ではランダムなサンプリングに比べ内容語を強く学習している可能性があり、text embedding を用いたテキスト分類は classiffier としてファイン チューニングするよりも不均衡データに対し頑健で ある可能性が示唆された。

今後の展望として、現在の手法では事前学習モデ ルを用いて hard negative なテキストをサンプリング しているが、1epochごとに更新されたモデルを用い てトリプレットをサンプリングし直すなど、サンプ リングの方法に更なる改善を試みたい。

## 参考文献

[1] Wang, A., Singh, A., Michael, J., Hill, F., Levy, O., Bowman, S. R. (2018). GLUE: A multi-task benchmark and analysis platform for natural language understanding. arXiv preprint arXiv:1804.07461.

[2] Devlin, J., Chang, M. W., Lee, K., Toutanova, K. (2018). Bert: Pre-training of deep bidirectional transformers for language understanding. arXiv preprint arXiv:1810.04805.

[3] Reimers, N., Gurevych, I. (2019). Sentence-bert: Sentence embeddings using siamese bert-networks. arXiv preprint arXiv:1908.10084.

[4] Zhang, D., Li, S. W., Xiao, W., Zhu, H., Nallapati, R., Arnold, A. O., Xiang, B. (2021). Pairwise supervised contrastive learning of sentence representations. arXiv preprint arXiv:2109.05424.

[5] 山岸駿秀, 鈴木貴文, 稲木誓哉. (2020). Wikipedia 記事間の関係を考慮した Triplet Network に基づく BERT の Fine-tuning. In 人工知能学会全国大会論文集 第 34 回 (2020) (pp. 3Rin476-3Rin476). 一般社団法人 人工知能学会.

[6] Hermans, A., Beyer, L., Leibe, B. (2017). In defense of the triplet loss for person re-identification. arXiv preprint arXiv:1703.07737.

[7] Tunstall, L., Reimers, N., Jo, U. E. S., Bates, L., Korat, D., Wasserblat, M., Pereg, O. (2022). Efficient Few-Shot Learning Without Prompts. arXiv

[8] 梶原智之. (2021). WRIME: 主観と客観の感情強度を 付与した日本語データセット. 自然言語処理, 28(3), 907-912.

[9] Perone, C. S., Silveira, R., Paula, T. S. (2018). Evaluation of sentence embeddings in downstream and linguistic probing tasks. arXiv preprint arXiv:1806.06259.

[10] Piao, G. (2021, May). Scholarly text classification with sentence BERT and entity embeddings. In Pacific-Asia Conference on Knowledge Discovery and Data Mining (pp. 79-87). Springer, Cham. preprint arXiv:2209.11055.

[11] Ein-Dor, L., Mass, Y., Halfon, A., Venezian, E., Shnayderman, I., Aharonov, R., Slonim, N. (2018, July). Learning thematic similarity metric using triplet networks. In Proceedings of the 56th Annual Meeting of the Association for Computational Linguistics (ACL 2018), Melbourne, Australia (pp. 15-20).

[12] Henderson, M., Al-Rfou, R., Strope, B., Sung, Y. H., Lukács, L., Guo, R., ... Kurzweil, R. (2017). Efficient natural language response suggestion for smart reply. arXiv preprint arXiv:1705.00652

[13] Kudo, T. (2005). Mecab: Yet another part-of-speech and morphological analyzer. http://mecab. sourceforge. net/.

[14] McCann, P. (2020). fugashi, a tool for tokenizing Japanese in python. arXiv preprint arXiv:2010.06858.

表 5 データセット統計情報

## A モデルのパラメータ設定

classifier の学習率は encoder では 5e-5, 分類を行う classifier 層では 1e-4 とした。文章抽出器の学習率は 2e-5 とした。classifier の学習では encoder 層の [CLS]トークンの位置の特徴量を用いてファインチューニングを 行った。 text embedding 抽出器では最終層の平均をとる mean pooling を用いてファインチューニングを行っ た。その他のハイパーパラメーターは表 6 に記した。

表 6 学習パラメータ

## Ｂデータセット情報

livedoor 不均衡・均衡データセットは以下のように作成した。各データセットの統計情報は表 5 に記した。

## B. 1 livedoor 不均衡データセットの作成

1. livedoor ニュースデータセットには 9 種類のメディアがラベリングされている。各メディアにおいて表 4 例 1 例 2 のようにすみかっこ等でサブタイトルが付いてるサンプルについて、サブタイトルを新たな夕 イトルとし、タイトルテキストからはサブタイトルを削除した。サブタイトルの付いていないサンプル は media 名-other というラベルとした。

2. 表 4 例 3 のように、メディア・ラベル特有の文言がついているサンプルについて、これらの文言を削除 した。

3. dokujo-other と分類されたものから、手動で恋愛・結婚・美容へと分類した。

4. sports-watch-other と分類されたものから、手動でサッカー・野球・オリンピックへと分類した。

5. 各ラベルでサンプル数 2 以下のものは削除した。またサンプル数が 45 以上のものはランダムに 45 サン プルを抽出した。

## B. 2 livedoor 均衡データセットの作成

livedoor 不均衡データセットのラベルを元の livedoor ニュースデータセットのメディアラベルとした。

## B. 3 WRIME-ver2 データセットからのサンプリング

5 つの感情強度 $(-2,-1,0,1,2)$ からそれぞれ $419,419,419,420,420$ サンプルをランダムに抽出した。
 満石風斗 1 安立健人 1 狩野芳伸 2 1 株式会社マネーフォワード 2 静岡大学 情報学部 \{mitsuishi.futo, adachi.kento\}@moneyforward.co.jp kano@kanolab.net  