# yamaMomo : Sudachi 同義語辞書による 日本語分散表現の評価用データセットの作成

野口 夏希 ${ }^{1}$ 勝田 哲弘 ${ }^{2}$ 山村 崇 ${ }^{2}$ 高岡 一馬 2 内田 佳孝 ${ }^{2}$
1 愛媛大学 2 株式会社ワークスアプリケーションズ・エンタープライズ
n_noguchi@ai.cs.ehime-u.ac.jp
\{katsuta_a, yamamura_t, takaoka_k, uchida_yo\}@worksap.co.jp

## 概要

分散表現の評価のうち内的評価では，単語間の類似度や意味に関係がある単語を正しく類推できるか を評価するタスクが特に注目され，日本語でもデー タセットが作られている.しかし他の種類の内的評価タスクではデータセットが不足している.

本研究では表記摇れや略語・略称，カテゴリの類似度に関する内的評価タスクに注目し，Sudachi 同義語辞書を用いてデータセットを作成した. またこ のデータセットで評価を行い，コーパスや形態素解析に起因する分散表現モデルの違いを確認した.

## 1 はじめに

分散表現の評価タスクには内的評価と外的評価が ある. 内的評価は単語分散表現の性能を直接評価し，外的評価は実際のタスクに単語分散表現を使って 評価するものである. Bakarov [1] によると内的評価 は, Word Semantic Similarity, Word Analogy, Thematic Fit, Concept Categorization, Synonym Detection, Outlier Word Detection の 6 つのタスクに分類表記ゆれ.

既存の日本語分散表現のデータセットには単語の 意味がどれほど近いかを指す類似度や，どれほど関連するかを指す関連度の評価をするものがある [2] が、他の内的評価タスクのためのデータセットは不足している.

本研究では Outlier Word Detection と Concept Categorization のうち, 略語・略称や表記摇れといった同義語間における類似度や，単語の属する分野に注目 し, Sudachi 同義語辞書 [3] を用いて日本語分散表現 の評価用データを作成した。

Sudachi 同義語辞書は Sudachi 形態素辞書に人手で 同義語関係を付与した辞書である. 詳細化された同義語関係として略語・略称であるかを示す略語・略称情報，異表記，翻字，誤字など表記摇れの種別を 示す情報，単語がどのような概念に属するかを示す 分野情報が付与されている.

本研究の貢献は以下の 3 つである. (1) 日本語の データセットになかったタスクに着目したデータ セット及び評価指標の作成 (2) 詳細な同義関係 （代表表記と表記摇れ）や分野情報が評価できる データセットの作成 (3) 本論文で作成したデータ セットによる各モデルの評価.

## 2 先行研究

Bakarov [1] によると，内的評価のタスクは 6 種に 分類される.

英語の Outlier Word Detection のためのデータセッ トである The 8-8-8 outlier detection dataset [4] では,単語集合の中から $\cos$ 類似度を用いて単語ベクトル の距離を測ることで outlierを選択している. 英語の Concept Categorization [5] のためのデータセットであ る ESSLLI-2008 [6] では，単語集合をクラスタリン グツールキットを用いてクラスタリングすることで 単語集合をカテゴリごとに分類している。

しかし, 日本語では 6 のタスクのうち, Word Semantic Similarity [2,7, 8, 9], Word Analogy [8]のデー タセットが公開されているに留まる。

## 3 データセットの作成と評価

本実験では，Outlier Word Detection と Concept Categorization のデータセットの作成に, Sudachi 同義語辞書1) [3] を使用した. またデータセットに含める 単語には，評価対象となる複数の分散表現モデルで 共通して出現する語を選択した. 共通する語をでき るだけ多くするため，分散表現モデルは大規模な chiVe [10], nwjc2vec [11], 朝日新聞単語ベクトル [12],

1) https://raw.githubusercontent.com/WorksApplications/ SudachiDict/develop/src/main/text/synonyms.txt

WikiSudachiVec, 日本語 Wikipedia エンティティベク トル [13] の 5 つを使用した. WikiSudachiVec はコー パスに日本語版 Wikipedia, 形態素解析に Sudachi (C 単位）を用いて学習された日本語分散表現である。

## 3.1 Outlier Word Detection

Outlier Word Detection は，単語集合 $W$ が与えられ たときに，単語集合内の残りのグループに属さない outlier の単語 $w_{o}$ を推定するタスクである. 本研究 では, Sudachi 同義語辞書内で定義されている 2 単語 の同義語ペア集合 $S$ の各ペア $s=\left.\{w_{s_{1}}, w_{s_{2}}\right.\} \in S$ に, $s$ に対して同義語ではないランダムな単語 $w_{o}$ を加 えた $W_{s}^{o}=\left.\{w_{s_{1}}, w_{s_{2}}, w_{o}\right.\}$ を作成する.

同義語ペア $s$ の 2 単語は, Sudachi 同義語辞書にお いて，代表語に対して表記摇れや略語・略称として 定義されている同義語関係にあるものを選んだ. 表記摇れの中で，異表記（送り仮名の有無のような日本語の表記摇れ）と翻字関係（日本語の単語が英単語で書かれているような表記摇れ）を区別する.こ れにより，モデルがどの程度表記摇れに頑健である かだけでなく，言語間での表記摇れはあまり区別で きないなどの，詳細な評価もできると考えられる。 これらの略称の表記摇れを評価することで，略称が 出現しやすいようなドメインの文書に対するモデル の有効性などを評価できると考えられる。

また, outlierの単語の選び方によっては推定が容易であるような単語のみが選ばれる可能性がある. これを回避するために，各同義語ぺア $s$ に対して $k$個の異なる outlierの単語 $\left.\{w_{o_{1}}, \ldots, w_{o_{k}}\right.\}$ をそれぞれ追加したとき，すべての組み合わせ $X_{s}=\left.\{W_{s}^{o}, \ldots, W_{s}^{o_{k}}\right.\}$ で outlier が推定できた割合で評価する. 本研究では $k=10$ とし, $s$ に対して同義語ではないランダムな 10 単語を outlier として選択した. 表 1 に具体例を示 す. 作成した同義語ぺアの合計 $|S|$ は，異表記が 313 件，翻字関係が 859 件，略称が 182 件となった.

次に，このデータセットを使った分散表現の評価方法について述べる. 単語集合 $W$ 内のある単語 $w$ が $w_{o}$ であるか推定する方法として, 式 (1) から他のす べての単語 $W \backslash\{w\}$ との類似度 $\operatorname{score}_{W}(w)$ を求め,最も類似度が低い単語 $w$ を $w_{o}$ と推定する。

$
\operatorname{score}_{W}(w)=\frac{1}{|W|-1} \sum_{w_{j} \in W \backslash\{w\}} \operatorname{sim}\left(w, w_{j}\right)
$

ここで， $\operatorname{sim}(\cdot)$ は単語間の類似度を示し, 先行研究 [4] に倣ってコサイン類似度を用いた。単語集合 $W$ において $w_{o}$ が正しく推定できたとき に 1 (それ以外は 0 ) をとる関数 $T P(W)$ と，すべての outlier の組み合わせ $X_{S}$ において $w_{o}$ が正しく推定で きたときに 1 (それ以外は 0 )をとる関数 $T P_{\text {all }}(X)$ を それぞれ式 $(2,3)$ のように定義すると，

$
\begin{gathered}
T P(W)= \begin{cases}1, & \text { if } \arg \min _{w \in W} \operatorname{score}_{W}(w)=\left.\{w_{o}\right.\} \\
0, & \text { otherwise. }\end{cases} \\
T P_{\text {all }}\left(X_{s}\right)= \begin{cases}1, & \text { if } \sum_{W \in X_{s}} T P(W)=k \\
0, & \text { otherwise. }\end{cases}
\end{gathered}
$

すべての同義語ぺアに対する正解率 Acc. は式 (4) の ように定義される.

$
\text { Acc. }=\frac{\sum_{s \in S} T P_{\text {all }}\left(X_{S}\right)}{|S|}
$

## 3.2 Concept Categorization

Concept Categorization は，単語集合 $W$ が与えら れたときに，異なるカテゴリの部分集合ごとに 分割するタスクである. 本研究では Sudachi 同義語辞書の 31 種類の分野情報（IT，キャラなど） をカテゴリとし，2 つカテゴリ $i, j$ を選び，各カ テゴリの 2 単語ずつあわせた 4 単語のサンプル $W_{i j}=\left.\{w_{i_{1}}, w_{i_{2}}, w_{j_{1}}, w_{j_{2}} \mid i \neq j\right.\}$ を作成し, すべての サンプルの集合を $D$ と定義する。具体例を表 2 に 示す. 作成したすべてのサンプルの合計 $|D|$ は, 104, 625 件となった.

次に，このデータセットを使った分散表現の 評価方法について述べる. 単語集合 $W$ に対して，各単語 $w$ の埋め込み表現を素性としてクラスタ リングを行い，カテゴリごとに分類できたかを 評価する.クラスタリングのアルゴリズムには， AgglomerativeClustering2)を用い，パラメータとして affinity は cosine を，linkage は average を指定する. 先行研究 [5] では，クラスタリングの評価として各ク ラスタが単一のカテゴリから構成されている割合を 表す purityを用いているが，本研究ではデータセッ ト $D$ に対してどのくらいのサンプルで正解できた かを評価する．正しくクラスタリングできたサンプ ルの集合を $D_{\text {correct }}$ とすると，正解率 Acc. は式（5） のように定義される。

2) https://scikit-learn.org/stable/modules/generated/ sklearn.cluster. AgglomerativeClustering. html
表 1 Outlier Word Detection のデータの例

 \\

$
\text { Acc. }=\frac{\left|D_{\text {correct }}\right|}{|D|}
$

## 4 実験設定

3.1 項と 3.2 項で構築した Outlier Word Detection と Concept Categorization のデータセットを用いて分散表現の評価を行った. 使用したモデルはコーパスや 形態素解析器による差異を分析するために、以下の 13 個を用意した.

chiVe [10]: chiVe_mc5, chiVe_mc15, chiVe_mc90

コーパスに NWJC [14], 形態素解析に Sudachi を用い て学習した分散表現であり，min-countが異なる 3 つ のモデルを使用する。

nwjc2vec [11] : nwjc2vec

コーパスに NWJC, 形態素解析に MeCabを用いて学習した分散表現を使用する。

日本語 Wikipedia エンティティベクトル [13] :

## entityVec

コーパスに Wikipedia, 形態素解析に MeCabを用い て学習した分散表現を使用する。

朝日新聞単語ベクトル [12]：A-CBOW, A-CBOW-R, A-GloVe, A-GloVe-R, A-Skip, A-SKip-R

コーパスに新聞記事，形態素解析に MeCabを用 いて学習した分散表現. 3 つの学習アルゴリズム (CBOW, Skip-Gram, GloVe) によって学習したモデル と, Retrofitting によってファインチューニングされ た計 6 つのモデルを使用する.

WikiSudachiVec: WikiSuda-A, WikiSuda-C

コーパスに Wikipedia, 形態素解析に Sudachi (それぞ れ A 単位, C 単位）を用いて学習した分散表現を使用する.

Outlier Word Detection や Concept Categorization タ スクによって各モデルが表記摇れや分野情報をコー パスから学習できているかを評価する。

## 5 実験結果

表 3 に実験結果を示す.

## 5.1 実験 1 : Outlier Word Detection

Outlier Word Detection の異表記と略称では全体的 に chiVe が高い性能を示した. データセットのもと になった Sudachi 同義語辞書と訓練コーパスの分割単位が一致していることが影響したと考えられ る. 翻字関係は chiVe と entityVec の正解率が高かっ た. 全モデルを通じて表記種別 (カタカナかアル ファベット)だけをみて誤判別する傾向が目立った. chiVe は形態素解析に用いた Sudachi の正規化によっ て, 文脈から翻字関係の表記摇れが学習できている 可能性がある。また entityVec は，記事本文中のハイ パーリンクを使用し，それぞれのリンクのアンカー テキストをリンク先の記事のタイトルに置換する方法を採っており，それが翻字の学習に有効だったた めと考えられる。

朝日新聞単語ベクトルは学習に用いたアルゴリ ズムや Retrofitting の有無で正解率に差が出ていた. CBOW は周辺単語から単語を予測, GloVe は単語か らコーパス全体から得た共起頻度を用いて周辺単語を予測，Skip-gram は単語から周辺単語を予測す るアルゴリズムである. A-Glove の精度が A-CBOW や A-Skip よりも低いのは, GloVe が共起頻度を考慮することで表記摇れによる細かい差異を強調し たからだと考えられる. Retrofitting は周辺単語が近 いべクトルになるように fine-tuning する方法であ る. Retrofitting によって正解率が高くなったのは, Retrofitting に使用されている日本語 WordNet の中に 表記摇れのペアも存在するため，ベクトルが近づけ られたからだと考えられる。

各々のデータセットについてすべてのモデルでタ スクを正しく解けなかった単語集合は，異表記が 19 件，翻字関係が 26 件，略称が 4 件あった. [5, 五, 7],
表 2 Concept Categorization のデータの例

表 3 モデルによる評価 （太字：正解率が最も高かったもの上位 3 件）

[バス, bass, light], [コンパニー,コンパ, ラボ]など多義性があるものが含まれており, 語義曖昧性によっ て，静的なべクトルでは学習が難しいデータもある ことが考えられる.

## 5.2 実験 2 : Concept Categorization

Concept Categorization の正解率は chiVe が最も良 かった. これは，多くのドメインを持つ国語研日本語ウェブコーパスにより訓練しており，各カテゴリ の事例が十分に存在したためだと考えられる.

各モデルで学習されている単語のカテゴリの違い を見るためにカテゴリ別の正解数による分散，単語集合の種類ごとの正解率を確認した. 単語集合の種類ごとの正解率を表 4 に示す.

分散はモデル内でカテゴリごとに差があり，分類 タスクの行いやすさはカテゴリで均一でないことが わかった.これにより, データセット内で解きやす い単語集合とそうでない単語集合が含まれていたこ とが考えられる。

単語集合の種類はモデル内でタスクの行いやす さが異なることがわかった. これにより，モデルに よって分類しやすいカテゴリのペアに偏りがあるこ とがわかった.表 4 カテゴリペアによる正解率

## 6 まとめ

本研究では Sudachi 同義語辞書を用いて，分散表現の内的評価タスクである Outlier Word Detection と Concept Categorization による日本語評価データセッ トを作成した. Sudachi 同義語辞書に掲載されている 略語・略称情報, 表記摇れ情報, 分野情報によって, これまで評価されていなかった表記摇れやカテゴリ を分散表現が学習できているかを評価し、各モデル で性能差があることを示した.

今後は, 不足している他のタスクの日本語データ セットの作成も検討したい. また，本論文で作成し たデータセットは公開する予定である.

## 参考文献

[1] Amir Bakarov. A survey of word embeddings evaluation methods, 2018.

[2] 猪原敬介, 内海彰. 日本語類似度・関連度データセッ トの作成. 言語処理学会第 24 回年次大会 (NLP2018).言語処理学会, 2018.

[3] 高岡一馬, 岡部裕子, 川原典子, 坂本美保, 内田佳孝.詳細化した同義関係をもつ同義語辞書の作成. 言語処理学会第 26 回年次大会 (NLP2020). 言語処理学会, 2020.

[4] José Camacho-Collados and Roberto Navigli. Find the word that does not belong: A framework for an intrinsic evaluation of word vector representations. In Proceedings of the 1st Workshop on Evaluating Vector-Space Repre-
sentations for NLP, pp. 43-50, Berlin, Germany, August 2016. Association for Computational Linguistics.

[5] Marco Baroni, Georgiana Dinu, and Germán Kruszewski. Don't count, predict! a systematic comparison of contextcounting vs. context-predicting semantic vectors. In Proceedings of the 52nd Annual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers), pp. 238-247, Baltimore, Maryland, June 2014. Association for Computational Linguistics.

[6] Stefan Evert Marco Baroni and Alessandro Lenci. Bridging the gap between semantic theory and computational simulations. In Proceedings of the ESSLLI Workshop on Distributional Lexical Semantic, FOLLI, Hamburg, 2008.

[7] Yuya Sakaizawa and Mamoru Komachi. Construction of a japanese word similarity dataset, 2017.

[8] Marzena Karpinska, Bofang Li, Anna Rogers, and Aleksandr Drozd. Subcharacter Information in Japanese Embeddings: When Is It Worth It? In Proceedings of the Workshop on the Relevance of Linguistic Structure in Neural Architectures for NLP, pp. 28-37, Melbourne, Australia, 2018. Association for Computational Linguistics.

[9] Tomonori Kodaira, Tomoyuki Kajiwara, and Mamoru Komachi. Controlled and balanced dataset for Japanese lexical simplification. In Proceedings of the ACL 2016 Student Research Workshop, pp. 1-7, Berlin, Germany, August 2016. Association for Computational Linguistics.

[10] 真鍋陽俊, 岡照晃, 海川祥毅, 高岡一馬, 内田佳孝, 浅原正幸. 複数粒度の分割結果に基づく日本語単語分散表現. 言語処理学会第 25 回年次大会 (NLP2019).言語処理学会, 2019.

[11] Masayuki Asahara. 'nwjc2vec: Word embedding dataset from 'ninjal web japanese corpus', . Terminology: International Journal of Theoretical and Applied Issues in Specialized Communication, Vol. 24, No. 2, pp. 7-25, 2018.

[12] 田口雄哉, 田森秀明, 人見雄太, 西鳥羽二郎, 菊田洸.同義語を考慮した日本語単語分散表現の学習. 情報処理学会研究報告, 第 2017-NL-233 巻, pp. 1-5. 情報処理学会第 233 回自然言語処理研究会, 2017.

[13] Masatoshi SUZUKI, Koji MATSUDA, Satoshi SEKINE, Naoaki OKAZAKI, and Kentaro INUI. A joint neural model for fine-grained named entity classification of wikipedia articles. IEICE Transactions on Information and Systems, Vol. E101.D, No. 1, pp. 73-81, 2018.

[14] Masayuki Asahara, Kikuo Maekawa, Mizuho Imada, Sachi Kato, and Hikari Konishi. Archiving and analysing techniques of the ultra-large-scale web-based corpus project of ninjal, japan. Alexandria, Vol. 26, No. 1-2, pp. 129-148, 2014.

## A 分野情報による正解率の差

表 3 の Concept に対してより詳細に分野情報ごとの精度を出した結果を以下の表に示す.

表 5 分野情報ごとの正解率


 野口 夏希 ${ }^{1}$ 勝田 哲弘 ${ }^{2}$ 山村 崇 ${ }^{2}$ 高岡 一馬 2 内田 佳孝 ${ }^{2}$ 1 愛媛大学 2 株式会社ワークスアプリケーションズ・エンタープライズ n_noguchi@ai.cs.ehime-u.ac.jp \{katsuta_a, yamamura_t, takaoka_k, uchida_yo\}@worksap.co.jp  