# 対照学習による文ベクトルを使用した 障害レポートのクラスタリング

小林 千真 1 山下 郁海 ${ }^{1}$ 岡 照晃 1 小町 守 1 真鍋 章 2 谷本 恒野 ${ }^{2}$
東京都立大学 ${ }^{1}$ 富士電機株式会社 ${ }^{2}$
}

\{kobayashi-kazuma1@ed., yamashita-ikumi@ed., teruaki-oka@, komachi@\}tmu.ac.jp, \{manabe-akira, tanimoto-kouya\}@fujielectric.com
## 概要

本研究では、機器が故障した際に作成される障害 レポートを文ベクトル化しクラスタリングを行なっ た。SimCSE は現在最高性能の文ベクトル獲得手法 の一つであるが、日本語での有効性が明確に示され ていない。そこで述部意味関係データを使用して、日本語文ベクトルの評価を行なった。その結果、教師ありの SimCSE は日本語でも有効であることを確認した。また文べクトルを使用し、障害レポートの クラスタリングを行ない、ドメインごとの結果の違 いを事例に基づいて分析した。その結果、入力文や ドメインの特性により文べクトルが有効な場合とそ うでない場合が確認された。

## 1 はじめに

自動販売機やATM に挙げられるように、現代社会には様々な場所に様々な機器が設置され我々の 暮らしを支えている。それらの機器が故障するたび に障害レポートが作成され、日々増え続けている。障害レポートを分析し、障害の全体像を捉えること で、対策や業務の効率化が期待できる。本研究で扱 う障害レポートは大きく状況、原因、措置の3 要素 からなる文章であり、重複する内容のレポートもあ る。図1（上）が障害レポートの具体例である。そ れらを集約することで確認すべき障害データ数は削減され、数千以上の障害レポートを有効に分析する ことができる。

山下ら [1] は障害レポートを集約するにあた り、障害レポートの各文が状況・原因・措置・その 他のどれに該当するかの分類タスクを行なった。本間ら [2] は障害レポートの各文から状況・原因・措置に関する重要箇所を抽出する重要箇所抽出タス クを行なった。本研究はこれらの下流タスクとして

## 本研究における3つの入カデータ

## 状況:補助ボイラ水面計 (南)蒸気リーク 原因: 製品不具合措置: 漏れ確認

図 1 障害レポートと本研究で想定する入力の具体例。1)

位置付けられ、抽出された状況状況 - 原因 - 措置の フレーズを入力とし、それらを基に段階的な集約に 取り組む。本タスクでの入力の具体例を図 1 (下) に示す。

本研究では似た意味の文を集約するにあたって、文の意味関係を反映した文べクトルを作る技術に 注目した。大規模事前学習モデル (PLM) によって Semantic Textual Similarity (STS) の性能が大幅に向上 している。STS で特に高い性能を出しているのは PLM に 2 文を入力し、実数値で類似度を出力する ように fine-tunig する手法であり、現在最高性能の SMART [3] もこの類の手法である。この手法では、類似度計算のたびに PLM による計算を実行する必要があり、繰り返し類似度計算を要するクラスタリ ングには計算時間の観点で向かない。対して、PLM から文ベクトルを獲得する手法の場合、文ベクト ルを一度獲得すれば、以降ベクトル類似度の計算 のみで済むため、計算時間の問題が大幅に改善さ れる [4]。代表的な PLM のひとつに BERT [5] があ

1）本研究では人手で作成されたデータを使用するが、実際に 適用する際には本間ら [2]により、障害レポートの各文から 状況・原因・措置が抽出された状態が本研究の入力データと なる。

る。BERT は文書分類のような応用タスクのために fine-tuning をすることを前提としたモデルである。 BERT から文べクトルを得ることもできるが、文べ クトルは性能が低いことが知られている [4]。BERT から高性能の文べクトルを獲得するための手法がい くつか提案されているが、SimCSE [6] が最も性能 の高い文べクトルを獲得できる手法である。しかし SimCSE は英語でしかその性能を保障されていない。

本研究では、障害レポート（日本語）から抽出し た重要箇所を SimCSE で追加学習した BERT に入力 し、文べクトルを獲得する。その文ベクトルをクラ スタリングすることで集約を行なった。本研究の貢献を以下に示す。

・障害レポートから抽出した重要箇所に対して文 ベクトルを用いたクラスタリングを試みた。

・日本語において SimCSE による文べクトルを使用した。また、その評価実験を行なった。

## 2 障害レポートの集約

前述の通り、想定する入力は状況・原因・措置 の3つの要素に分けられており、図 1 (下) が入力 となることを想定している。本研究では 3 段階の クラスタリングによる集約を行う (付録 A で具体例を使用し、その手順を図示した)。各レポートは $r_{i}=(s, c, a)$ の形で入力される。ただし、 $s$ は状況、 $c$ は原因、 $a$ は措置である。1つ目のステップでは 全レポートを親クラスタとして、 $s$ の情報のみでク ラスタリングを行い、クラスタ集合 $\left.\{C_{1}^{s}, C_{2}^{s}, ..\right.\}$ を得 る。2つ目のステップでは $C_{x}^{s}$ をそれぞれ親クラス タとして、 $c$ の情報のみでクラスタリングを行う。 その結果 $C_{x}^{s}$ ごとにクラスタ集合 $\left.\{C_{1}^{c}, C_{2}^{c}, ..\right.\}$ を得る。 3 つ目のステップでは、 $C_{x}^{c}$ をそれぞれ親クラスタと して、 $a$ の情報のみでクラスタリングを行う。その 結果 $C_{x}^{c}$ ごとにクラスタ集合 $\left.\{C_{1}^{a}, C_{2}^{a}, \ldots\right.\}$ を得る。2)

集約を行う際、状況・原因・措置の各段階でそれ ぞれの文字列でクラスタリングを行う。文字列には フレーズのように短いものもあるが、本研究では文 とみなし、BERTをSimCSE で訓練したモデルを使用して文べクトルを作成する。集約タスクの各段階 では文ベクトル同士のユークリッド距離を使用して DBSCAN [7] でクラスタリングする。


## 3 SimCSE

SimCSE は PLM に対照学習を行うことで、STSに おいてより性能の高い文べクトルを獲得する手法で あり、BERT や RoBERTa に適用することで、STS で 最高性能のスコアを記録する文ベクトルを獲得でき る。STS では、2つの文とそれに対する意味的な類似度を人手でスコアリングした値があり、その値と の相関によりモデルの性能が評価される。

SimCSE には Natural Language Inference (NLI) デー タを使用した教師ありの手法と生の文を使用した 教師なしの手法がある。教師ありの手法では NLI データセット ${ }^{3}$ から、ある文に対して含意の関係に ある文と矛盾の関係にある文を抽出し、元の文と含意の関係にある文の文べクトルが近づくように、矛盾の関係にある文の文ベクトルは遠くなるように対照学習を行う。教師なしの手法では生の文集合（例 えば、Wikipedia）のある文に対して、同じ文の異 なるドロップアウトの文ベクトルを生成し、その文 ベクトルと元の文ベクトルが近づくように、ランダ ムに選んだ別の文の文べクトルが遠ざかるように対照学習を行う。

Gao ら [6] は教師ありの手法が教師なしの手法よ りも英語 STS において良い結果となることを示し た。しかし日本語で公開されている NLI データセッ トは SNLI（英語の NLI データセットのひとつ）を 機械翻訳し、人手でフィルタリングしたものであ り、流暢な翻訳とはなっていない。このため、教師 ありの手法は英語ほどの性能が得られるとは限らな い。それに対して、流暢な日本語で書かれている テキスト（例えば、Wikipedia）は利用可能であるか ら、教師なしの手法では英語と同等の性能が期待さ れる。このことから英語同様に教師ありの手法がよ り良い結果になることは自明ではないので、本研究 では教師ありの手法と教師なしの手法の両方を使用 し比較した。

## 4 日本語 SimCSE

## 4.1 実験設定

本研究では、SimCSEによるモデルの学習は東北大が公開している日本語 BERT $\left.{ }^{4}\right)$ に SimCSE を適用 することで訓練した。また教師ありと教師なしの手

表 1 原文と述部意味関係コーパスの文ベクトルのコサイ 類似度。

法でそれぞれ訓練を行なった。教師ありの学習には 京都大学が公開している日本語 NLI データセット5) を使用した。教師なしの学習には日本語 Wikipedia 100 万文を使用した。SimCSE の教師ありでは 10 epoch、教師なしでは 5 epoch 学習を行なった。

## 4.2 文ベクトルの評価

[6] では獲得した文べクトルを英語 STS データ セットで評価した。しかし日本語で公開されている STS データセットは存在しないため、京都大学が 公開している述部意味関係コーパス6)を使用し評価 を行なった。このコーパスには「同義」、「無関係」、「反義」、「含意」の 4 種類の文対が用意されている。「反義」と「含意」は文ベクトルによる評価は自明で はないため、本研究では「同義」と「無関係」のみ を使用した。評価には文べクトルのコサイン類似度 を使用し、「同義」ではより高く、「無関係」ではよ り低くなることを基準とした。

## 4.3 実験結果

結果を表 1 に示す。SimCSE の教師ありでは、 BERT と比べ「同義」で類似度が 4 ポイント上がり、「無関係」では 1 ポイント下がった。つまり、どち らでも BERT よりも改善している。一方、SimCSE の教師なしでは類似度が「同義」で 3 ポイント、「無関係」で 8 ポイント、それぞれ下がってしまった。 この結果から、流暢でない日本語 NLI データを使用 した教師ありの SimCSE で性能向上することが確認 できた。教師なしと教師ありの優劣はこの実験結果 から述べることができない。

## 5 障害レポートのクラスタリング

## 5.1 実験設定

ベースラインとして入力文字列同士の編集距離を 距離とみなす手法を採用する。またSimCSE を使用

5) https://nlp.ist.i.kyoto-u.ac.jp/

6) https://nlp.ist.i.kyoto-u.ac.jp/?PredicateEvalSet表 2 各ドメインのデータ数と段階ごとの正解クラス 夕数。

しない東北大の日本語 BERT に直接 1 文を入力し、文ベクトルを獲得する手法もベースラインとする。 これらの比較により、そもそも文べクトルを使用す ることで性能が向上するか否か、SimCSE で学習し た文ベクトルを使用することが障害レポート文のク ラスタリングに効果があるか否かを検証できる。

DBSCAN のハイパーパラメータについて、 $\epsilon$ （近傍とみなす最大距離） は $[0.1,1,2,3,4,5,6,10]$ の間でハイパーパラメータの探索を行なった。 min-sample（密集領域を形成する最低サンプル数） は正解データの最低クラスタ数が $1 、 2$ のものが散見されたため 2 とした。外れ値として扱われたデー タ点は要素数 1 のクラスタとみなした。SimCSE に よる文ベクトルの獲得には 4 節で最も良い結果を得 たモデルを使用した。

クラスタリングの評価には富士電機（株）の保有 する食品流通分野 (冷凍)、食品流通分野 (自販機)、火力発電分野の障害レポートに、機器障害の実務に 携わった経験のある社員がアノテーションを行い、状況、原因、措置に分類した正解データ（NFKC 正規化済み）を作成し、使用した。以後、食品流通分野（冷凍）を「冷凍」食品流通分野（自販機）を 「自販機」、火力発電分野を「火力」とする。使用す る障害レポートのデータ数、正解クラスタ数を表 2 に示す。全体としてかなり細かいクラスタを形成す ることを期待しているデータセットである。

クラスタリングの評価指標の 1 つである Adjusted Rand Index (ARI) [8] を使用し、状況・原因・措置を それぞれ評価した。ARI は正解クラスタと同一の場合 1 となり、一致率が下がると値も小さくなる。本研究では、前の段階（原因の時は状況、措置の時は 原因）の正解データのクラスタをもとに各段階のク ラスタリングを行い、評価した。

## 5.2 実験結果

結果を表 3 に示す。ドメインごとにそれぞれ異な る結果となった。自販機ドメインでは、状況におい て SimCSE（教師あり）が圧倒的に良い結果となっ
表 3 クラスタリング結果に対する ARI スコア。

た。しかし原因と措置ではベースラインである編集距離が最も良い結果となった。冷凍ドメインでは、状況では全ての手法で全く同じ結果となった。原因 と措置においては SimCSE（教師あり）がわずかに 良い結果となった。火力ドメインでは、状況におい て BERT が最も良い結果となった。原因では全て同 じ結果となった。措置では SimCSE（教師あり）が 最も良い結果となった。次節では具体的な事例を確認しながら、このようにドメインごとに異なる結果 になった原因を探る。

## 6 事例分析

本節では、状況のフレーズに注目して分析を行 なった。また教師ありの SimCSE を単に SimCSE と して記述した。

ドメインごとの結果の違い 自販機ドメインは 「50 円玉が 10 円のメックに入る」のように文に近い 入力が多く、火力・冷凍ドメインでは、「給水シリ 力計指示上昇」のようなフレーズ的な入力が多かっ た。入力が文に近いほど SimCSE による文べクトル の性能向上の恩恵を得たと考える。逆にフレーズ的 な入力が多かった火力や冷凍ドメインでは高性能の 文ベクトルが効かなかったと考える。冷凍ドメイン では状況も高いスコアとなっているが、完全一致し た文字列だけを同一クラスタとみなした場合と同じ スコアだった。このことから冷凍ドメインはもとも と統一の取れた表記がなされており、文べクトルを 使うことで完全一致でない文字列を余計に同一ク ラスタとしてしまったと考える。火力ドメインでは 「GT」のような独自の省略記号を区別できずに失敗 する事例（後に紹介）が散見された。

モデル間の結果の違い BERT と SimCSEでクラ スタリング結果が異なった事例を比較し、フレーズ 的な入力では、わずかな違いで異なる基準でクラス タを成していることがわかった。しかしその基準は 明確ではなく、定性的な判断でもその評価は難し
い。具体的な事例を付録 B に示した。文に近い入力 では、「購入不可」と「購入できない」のような違 いを BERT では別のクラスタとしたが、SimCSEで は同じクラスタとして分類できた。

モデルの結果と正解データの違い「GT」のよう な独自の短縮単語が付くか否かといった違いを正解 データでは区別しているが、SimCSE では区別しな いという事例が散見された。これらを別クラスタと みなすか否かは、この障害レポート独自の基準であ り、実務に携わっていない場合、人間でも判断が分 かれるところであると考える。SimCSE はあくまで も一般的な文べクトルの性能向上を考えた手法で あり、本研究で対象としたような特定の意図に基づ くクラスタリングには別のアプローチが必要であ る。また反義的なフレーズを、SimCSE では同じク ラスタと見なす事例があった。反義的なフレーズ同士にどのような類似度を設定すれば適切かは自明で はないため、このようなケースが文べクトルの類似度を使った手法の難しさであると考える。具体的な 事例を付録 B に示した。

## 7 おわりに

本研究では、日本語において SimCSEを使用して 文ベクトルを学習し、その評価を行なった。その結果、教師ありの手法では性能の向上を確認した。次 に障害レポートから抽出されたフレーズに対して文 ベクトルを使用したクラスタリングを試みた。3つ のドメインを使用したが、ドメインごとに異なる結果となった。分析として、文べクトルの類似度を使 う手法では反義的なフレーズの区別が難しいという 点が分かった。今後、さらなる性能向上のためには タスク特化のデータ（分けたい事例、分けたくない 事例）を使って SimCSE を学習する方法や、文べク トル以外の部分に注目した方法で性能向上を目指し たい。

## 参考文献

[1] 山下郁海, 小町守, 真鍋章, 谷本恒野. 隠れ層補間によ るデータ拡張を用いた障害レポート分類. 言語処理学会第 27 回年次大会 発表論文集, pp. 1794-1798, 2021.

[2] 本間広樹, 小町守, 真鍋章, 谷本恒野. BERT モデルを 用いた障害レポートに対する重要箇所抽出. 言語処理学会第 27 回年次大会 発表論文集, pp. 189-193, 2021.

[3] Haoming Jiang, Pengcheng He, Weizhu Chen, Xiaodong Liu, Jianfeng Gao, and Tuo Zhao. SMART: Robust and efficient fine-tuning for pre-trained natural language models through principled regularized optimization. In Proceedings of the 58th Annual Meeting of the Association for Computational Linguistics, pp. 2177-2190, Online, July 2020. Association for Computational Linguistics.

[4] Nils Reimers and Iryna Gurevych. Sentence-BERT: Sentence embeddings using Siamese BERT-networks. In Proceedings of the 2019 Conference on Empirical Methods in Natural Language Processing and the 9th International Joint Conference on Natural Language Processing (EMNLP-IJCNLP), pp. 3982-3992, Hong Kong, China, November 2019. Association for Computational Linguistics.

[5] Jacob Devlin, Ming-Wei Chang, Kenton Lee, and Kristina Toutanova. BERT: Pre-training of deep bidirectional transformers for language understanding. In Proceedings of the 2019 Conference of the North American Chapter of the Association for Computational Linguistics: Human Language Technologies, Volume 1 (Long and Short Papers), pp. 4171-4186, Minneapolis, Minnesota, June 2019. Association for Computational Linguistics.

[6] Tianyu Gao, Xingcheng Yao, and Danqi Chen. SimCSE: Simple contrastive learning of sentence embeddings. In Proceedings of the 2021 Conference on Empirical Methods in Natural Language Processing, pp. 6894-6910, Online and Punta Cana, Dominican Republic, November 2021. Association for Computational Linguistics.

[7] M Ester, H P Kriegel, J Sander, and Xu Xiaowei. A DensityBased Algorithm for Discovering Clusters in Large Spatial Databases with Noise. In Proceedings of the Second International Conference on Knowledge Discovery and Data Mining, pp. 226-231, Portland, 1996. AAAI Press.

[8] Lawrence Hubert and Phipps Arabie. Comparing partitions. Journal of Classification, Vol. 2, No. 1, pp. 193-218, 1985.

図 2 本研究における集約の概略図である。まず、状況の情報を用いてクラスタリングし、似た状況ごとに障害レポート をまとめる。次に原因の情報を用いてクラスタリングし、障害レポートを原因の情報を用いてクラスタリングし、原因 ごとのクラスタを作る。最後に措置の情報を用いてクラスタリングし、措置ごとのクラスタを作る。

## A 集約の具体例

集約は、図 2 に示すように、Step1～3 の 3 段階のクラスタリングを行うタスクである。

## B 失敗事例の具体例

障害レポートの ID（実際の ID とは異なる）と原文通りのフレーズを「ID: フレーズ」という形式で示し、 それらに対するクラスタリングを集合の形式で示した。

## モデル間の違い

・1: 排熱回収ボイラ 布製伸縮継手より漏水

・2: 排熱回収ボイラ布製伸縮継手より漏水

・3: 排熱回収ボイラ布製伸縮継手 (出口) より漏水

-4: 失火・燃焼異常
- 5: 失火・燃焼異常発生

## モデルの結果と正解データの違い

・6, 7: GT 排ガス温度センサー異常
- 8: 排ガス温度センサー異常

・9: 高圧給水流量指示不良

・10: 低圧給水流量指示不良


 小林 千真 1 山下 郁海 ${ }^{1}$ 岡 照晃 1 小町 守 1 真鍋 章 2 谷本 恒野 ${ }^{2}$ 東京都立大学 ${ }^{1}$ 富士電機株式会社 ${ }^{2}$ }  \{kobayashi-kazuma1@ed., yamashita-ikumi@ed., teruaki-oka@, komachi@\}tmu.ac.jp, \{manabe-akira, tanimoto-kouya\}@fujielectric.com 