# 敵対的サンプルを用いた対照学習の性能向上への取り組み

折口希実 ${ }^{1}$ 小林一郎 ${ }^{1}$
1 お茶の水女子大学
\{g1620512, koba\}@is.ocha.ac.jp

## 概要

アンカーとされる一つの画像から派生した画像群間の特徵量の類似度を最大化し，アンカーとは異な る画像から派生した画像群の特徵量とは類似度を最小化することにより自己教師あり学習を行う対照学習は，機械学習に新しい技術変革をもたらし優れた 精度向上を実現した. 本研究では, この対照学習を 自然言語処理に導入した SimCSE [1] の枠組みに敵対的サンプルを導入することにより，さらに性能を 向上させた対照学習を提案する. また，とくに，対照学習において明確な制約が存在しない負例の生成 に着目し，様々な負例の導入方法を検討することに より, 対照学習の性能向上を試みた. 評価には意味的にテキストの類似性を測定できる SentEval の STS タスクを用いた．BERT ベースを用いた提案モデル では先行研究モデルのスピアマンの相関 $74.06 \% を$

## 1 はじめに

教師あり学習の精度を向上させるためには，大量 のデータを必要とするが，データ全てに対してラべ ル付けを行うことは，多くの人的コストを要してし まう。一方，自己教師あり学習は，ラベルなしデー タから自動で正解ラベル付きデータを生成すること が可能であり，学習用データ構築のコストを大幅に 下げることに有効な手段である。近年では, 自己教師あり学習に対照学習を用いることで教師あり学習 に匹敵する性能を実現している．対照学習とは，識別空間において識別対象と類似したデータは近く に，異なるデータは遠くに置かれるように学習する 機械学習の手法の一つである. 表現学習では対照学習を用いることで特徴量をうまく抽出できるモデル を得ることが可能であり，様々な下流タスクに利用 できる. 特に対照学習の枠組みを用いた教師なし学習は教師あり学習に匹敵することが示されている [2].本研究では，そのような対照学習をより高性能な ものとするために，敵対的サンプル [3] を導入し，様々な観点から対照学習における負例の導入方法を 検討する。

## 2 提案手法

本研究では，Gao ら [1] によって提案された埋め 込み学習の枠組みである SimCSE モデルをベースに し，敵対的サンプルの導入や負例の生成方法を拡張 したモデルを構築した.

## 2.1 SimCSE

対照学習では，アンカーとされるオリジナルの データ $x_{i}$ に対して, 意味的に近いデータ $x_{i}^{+}$(正例と 呼ぶ) のペアの集合 $D=\left.\{\left(x_{i}, x_{i}^{+}\right)\right.\}_{i=1}^{m}$ が与えられる と, 事前学習済みの汎用言語モデルによって入力 をエンコードし，埋め込みべクトルを獲得する。一方, SimCSE モデルでは $x_{i}=x_{i}^{+}$であり, データをド ロップアウトマスクを用いて 2 度エンコードするこ とで僅かに異なる埋め込みべクトルの正例ぺアを取得する. 以下，汎用言語モデルを BERT として話を 進める. 通常 BERTへの入力の際，バッチ単位で複数の文を同時にそれぞれべクトル化しているが，そ のときのミニバッチ内のアンカーとする対象文以外 の他の文については負例として扱う。損失関数であ る NT-Xent loss を用いて正例のペアのソフトマック スを 1 に近づけるように，そうでないものを 0 に近 づけるように学習することで対照学習を行う.

SimCSE モデルの損失関数は式（1）で示される.

$
\ell_{i}=-\log \frac{e^{\operatorname{sim}\left(\mathbf{h}_{i}^{z_{i}}, \mathbf{h}_{i}^{z_{i}^{\prime}}\right) / \tau}}{\sum_{j=1}^{N} e^{\operatorname{sim}\left(\mathbf{h}_{i}^{z_{i}}, \mathbf{h}_{j}^{z_{j}^{\prime}}\right) / \tau}}
$

ここで,$N$ はミニバッチ数であり,$z$ はドロップア ウトマスク， $\tau$ はソフトマックスの温度パラメータ である. $\mathbf{h}$ はデータ $x ， x^{+}$それぞれの特徴表現を示 す.また， $\operatorname{sim}(\cdot)$ はコサイン類似度の関数であり，
文同士の類似度を計算している。正のぺアは 1 に，負のペアは 0 に近づくように学習を行う。

対照学習におけるデータの拡張では，単語の削除 や入れ替え等の既存手法が主流であったが [4], ド ロップアウトマスクのみというシンプルな仕組み で，SimCSE モデルは既存手法の精度を更新する十分な精度を実現している。

## 2.2 敵対的サンプルの対照学習への導入

敵対的学習 [3] において，モデルの出力を変えて しまうようなノイズベクトルのことを「敵対的摂動」と呼び，意図的に作成される. 作成方法につ いては，主に 2 つの設定 (White-Box, Black-Box) に より異なり，モデル知識の有無で分かれる. モデ ル知識がない場合が Black-Box であり，ある場合の 設定が White-Box である. 本研究での取り組みは, White-Box に該当するため，以下それについてのみ 言及する. 敵対的サンプルを作成する手法の代表的 なものの 1 つに Fast Gradient Sign Method (FGSM) が ある [3]. 摂動は，式 2 で示すように与えられる。

$
x=x+\epsilon \operatorname{sign}\left(\nabla_{x} \operatorname{Loss}(x, y)\right)
$

ここで,$x$ は入力データ,$y$ はそのラベルである. また, sign 関数は正の値を +1 ，負の値を -1 にする 関数で， $\epsilon$ は摂動に対する調整係数である。損失を 最大化する方向へ入力 $x$ を $\epsilon$ ずつ更新していく.

モデルを誤認識させてしまう敵対的サンプルを混 ぜて学習を行うことでより堅牢なモデルを得られる ことが報告されており $[5,6]$, 本研究においても対照学習における正例に対して，敵対的サンプルを 生成させ，モデルの学習に用いた. 図 1 に概要を示 す. 正例から生成した敵対的サンプルを負例のよう に扱い，損失関数は式 (1)を用いた。

## 2.3 対照学習の性能向上に向けて

敵対的サンプルの導入により，対照学習における 正例の拡張を行なったのと同様に，負例に関しても 拡張を考える. 対照学習における負例の生成におい ては, 制約が緩く, 工夫の余地がある. 以下に，本研究で導入した負例の生成について記す。

## 1. 損失関数のコサイン類似度を用いた負例の拡張 Contrastive Loss を計算過程では文の特徴表現の 類似度としてコサイン類似度にて算出する. 負例は基本的に正例と全く似つかないものである ため負例ぺアの類似度はかなり低いものとなっ

図 1 提案モデル

てしまう．そのため正例ぺアのものと負例ペア のものとの間には類似度に一定の乘離が存在し ている。その乘離部分は正例ペアに近い境界部分の負例のペアの類似度を表していると推測 し，その部分の拡張を行うことは境界部分の データを拡張していることと同義で，潜在空間 をより補完できるのでははないかと考えた．損失関数は式 (3)のように表せる.

$
\ell_{i}=-\log \frac{e^{\operatorname{sim}\left(\mathbf{h}_{i}^{z_{i}}, \mathbf{h}_{i}^{z_{i}^{\prime}}\right) / \tau}}{\sum_{j=1}^{N} e^{\operatorname{sim}\left(\mathbf{h}_{i}^{z_{i}}, \mathbf{h}_{j}^{z_{j}^{\prime}}\right) / \tau}+\lambda \cdot \sum_{k=1}^{M} e^{\operatorname{sim} A / \tau}}
$

$\operatorname{sim} A$ は正例ペアと負例ぺアの間のコサイン類似度の間の範囲から生成される擬似コサイン類似度であり， $M$ は生成される数を示し， $\lambda$ は調整係数を示すハイパーパラメータである.

## 2. margin を考慮した負例の生成

深層距離学習 [7] において, アンカー, 正例,負例の 3 つ組の埋め込み空間の状態を捉えた損失関数 triplet loss の設定やデータ間の距離を捉 える margin といった考え方がある. アンカー から遠く離れた負例は学習にとってさほど重要 な意味を持たず，アンカーに近ければ近いほど 効果的な学習ができるため, その効果的な学習を可能とする範囲が margin である. 学習に とって理想的な負例は，正例に極めて近いが正例ではない境界の近くに存在するものと考える ことができる. ここでは，学習にとって有益 な負例となるデータが存在する範囲のことを margin とし，文のべクトルにノイズを加え，正例を負例に近づけるように拡張させた敵対的サ ンプル（正例の限界点とみなす）との距離を考
表 1 実験結果 (STS タスク)

図 2 埋め込みの視覚化：(左）BERT（中央）BERT を用いた SimCSE モデル（右）敵対的サンプルを用いた提案モデル

慮することにより，有効な負例を見つけ学習に 用いる. 具体的には，アンカーからもっとも遠 いとみなされる正例の限界点を敵対的サンプル とし，負例との間の範囲を margin としている.敵対的サンプルと新たな負例との間のベクトル を生成することで margin の範囲にある負例と した.

## 3. GS-InfoNCE

Wu ら [8] は，SimCSE をべースとして，その損失関数の分母に, Gauss 分布で表現されるノ イズを追加した手法である Gaussian Smoothing InfoNCE (GS-InfoNCE) を提案している。まず， ガウス分布から文のベクトルと同じ次元で $M$個のガウスノイズベクトル $\mathbf{g}$ をランダムにサン プリングする. これらのべクトルはサンプルと 高い信頼性を持つ負のペアとなる．そのような 負のペアを生成して負例を拡張することによっ て，表現空間をより充実させ，滑らかなものと する．次のような式にて損失関数を示す。

$
\ell_{i}=-\log \frac{e^{\operatorname{sim}\left(\mathbf{h}_{i}, \mathbf{h}_{i}^{+}\right) / \tau}}{\sum_{j=1}^{N} e^{\operatorname{sim}\left(\mathbf{h}_{j}, \mathbf{h}_{i}\right) \tau} /+\lambda \cdot \sum_{k=1}^{M} e^{\operatorname{sim}\left(\mathbf{g}_{k}, \mathbf{h}_{i}\right) \tau}}
$

この手法では，SimCSE モデルを上回る結果と なったことが示されており, 本研究での提案手法との比較のための追実験を行った.表 2 実験設定

## 3 実験

提案モデルを含め, $2.2,2.3$ 項で述べた方法につ いて実験を行い，対照学習の性能を向上させる方法 を検証する。

## 3.1 実験設定

表 2 に実験設定を示す. パラメータ等は [1] を元 にして行った.

評価方法 評価方法については, 先行研究と同様 に SentEval: evaluation toolkit for sentence embeddings ${ }^{1 \text { ) }}$ を用いる. SentEval を使用し，STS（Semantic Textual Similarity）を用いてタスク遂行に際して、精度を向上させるような文の埋め込み表現が獲得できたか を評価する．STS は，文章の等価性を評価するタス クであり，2 つの文の関係について類似度を対象と して評価する。本研究では STS の7つのタスグ2)を 用いて評価を行った. 対照学習は「似た表現を近く に，異なる表現を遠くへ」と学習させるものである

1) https://github.com/facebookresearch/SentEval

2) STS12, STS13, STS14, STS15, STS16, STS Benchmark, SICK Relations
表 3 学習済み言語モデルの比較 (Avg.)

ので，類似を評価するSTS タスクを用いることで文 の埋め込み表現のパフォーマンスについて評価が可能である. また，学習された潜在空間のクラスタ化 がなされているかを検証するために $\mathrm{UMAP}^{3}$ )を用い て, データ数約 40 万の amazon の製品レビューでカ テゴリのラベルのついたデータの潜在空間の視覚化 を行う. UMAP とは t-SNE よりも高速・高性能に次元削減・可視化する手法であり，似たカテゴリ同士 は近くに，似ていないカテゴリ同士は遠くに配置さ れる。

## 3.2 実験結果

STS の 7 つのタスクに対し，2.2，2.3 項で述べた 提案手法を用いて評価を行った結果を先行研究らの 追実験の結果と比較し表 1 に示す. 実験で用いた提案モデルは 5 つであり, 手法を組み合わせたモデル も用いた. 表 1 で示すモデルの事前学習済み汎用言語モデルは全て BERT を用いて行ったものとなって いる。また学習済み汎用言語モデルとして BERT と RoBERTa それぞれを採用した際の STS のタスクの 結果の比較を表 3 に示す.この結果は STS の7つの タスクのスピアマン相関の平均值であり, 先行研究 モデルの SimCSE と敵対的サンプルを用いた提案手法で比較を行った.

また，敵対的サンプルを用いた提案手法と先行研究モデルとで可視化し比較したものを図 2 に示 す. 左から BERT，BERT ベースのモデルを用いた SimCSE モデル，敵対的サンプルを用いた提案モデ ルの順になっている。

## 3.3 考察

表 1 に示すように， 5 つの提案モデルは先行研究 モデルである SimCSE と Wu らによって提案された モデル [8] のスコアのほとんど全てを上回ったこと がわかる. これにより，2.2，2.3 項で示した手法は 全て効果的に作用したといえる. しかし， 5 つの提案モデルの結果はタスクによってべストスコアを出 すモデルは異なっているためどの手法が優れてい るかについては一概にはいうことはできない. だ
が，基本的には敵対的サンプルを単独や組み合わ せて用いたモデルが，7 つのタスク中 6 つのタスク で最も高いスピアマンの相関を得ることができて おり，かなり効果的な手法の一つと考える。また， ours(+GS+ae) モデルのように GS-InfoNCE モデルと ours(+adversarial examples) モデルを組み合わせるこ とでスコアを落としてしまうこともあり，安易に手法を組み合わせることで逆効果になり得ることがわ かる.

表 3 からは 7 つのタスクのスピアマン相関の平均スコアが学習済みの汎用言語モデルとして BERT を用いるより RoBERTa を用いる方が SimCSE モデ ル，提案モデルのベストスコアでそれぞれ $3.67 \%$, $2.08 \%$ 上回った. このことから RoBERTa をべースと したモデルの方が優れていることを示している.

図 2 では文の埋め込み表現のパフォーマンスにつ いて BERT，SimCSE モデル，提案手法の一つである 敵対的サンプルを用いた提案モデルの 3 つで比較を 行っているが，敵対的サンプルを用いた提案モデル が最もクラスタが分かれており，効果的な対照学習 はより解きほぐされた表現空間を生成することに繋 がっていることがわかる.

## 4 おわりに

本研究では，自然言語処理において効果的な対照学習を行うことができるように敵対的サンプルを用 いたデータの拡張方法の模索や負例の生成方法につ いて検討をし，実験を行った。実験を通じて，敵対的サンプルを単独，または組み合わせたモデルが STS の 7 つのタスクのほとんどのベストスコアを達成しており，有効な手法であることを示した。損失関数のコサイン類似度を用いて負例を拡張したモデ ルについてもかなり高いスピアマン相関を達成して おり, さらに改善の余地のあるパラメータの調整等 を行うことでより良いスコアを得られるのではない かと考える。今後の課題として、それらを行った実験を行い性能向上に努め，また，具体的な潜在空間 を可視化して負例のデータ分布を margin の中で一様に補完するような負例の生成をしたいと考えてい る. 提案手法は，自然言語処理において優れた表現 の獲得を可能とし，また潜在空間をより明確に整理 が行えるため，分類系統のタスクにおいて特に役立 つと期待している.


## 参考文献

[1] Tianyu Gao, Xingcheng Yao, and Danqi Chen. SimCSE: Simple contrastive learning of sentence embeddings. In Empirical Methods in Natural Language Processing (EMNLP), 2021.

[2] Ting Chen, Simon Kornblith, Kevin Swersky, Mohammad Norouzi, and Geoffrey Hinton. Big self-supervised models are strong semi-supervised learners. arXiv preprint arXiv:2006.10029, 2020

[3] Ian J. Goodfellow, Jonathon Shlens, and Christian Szegedy. Explaining and harnessing adversarial examples, 2015.

[4] Zhuofeng Wu, Sinong Wang, Jiatao Gu, Madian Khabsa, Fei Sun, and Hao Ma. Clear: Contrastive learning for sentence representation, 2020.

[5] Chih-Hui Ho and Nuno Vasconcelos. Contrastive learning with adversarial examples. ArXiv, Vol. abs/2010.12050, , 2020.

[6] Minseon Kim, Jihoon Tack, and Sung Ju Hwang. Adversarial self-supervised contrastive learning. In Hugo Larochelle, Marc'Aurelio Ranzato, Raia Hadsell, Maria-Florina Balcan, and Hsuan-Tien Lin, editors, Advances in Neural Information Processing Systems 33: Annual Conference on Neural Information Processing Systems 2020, NeurIPS 2020, December 6-12, 2020, virtual, 2020.

[7] Kaya and Bilge. Deep metric learning: A survey. Symmetry, Vol. 11, No. 9, p. 1066, August 2019.

[8] Xing Wu, Chaochen Gao, Liangjun Zang, Jizhong Han, Zhongyuan Wang, and Songlin Hu. Smoothed contrastive learning for unsupervised sentence embedding, 2021.
 折口希実 ${ }^{1}$ 小林一郎 ${ }^{1}$ 1 お茶の水女子大学 \{g1620512, koba\}@is.ocha.ac.jp  