EDR電子辞書とは異なる観点で「語を意味によって分類・整理したシソーラス (類義語集) 」として分類語彙表[1]があります。
編纂方法、辞書の設計思想が異なるものの、概念体系による単語の分類と分類語彙表による単語の分類の間にはある程度の相関があると考えられます。
そこで、EdrMAMeの応用的な利用方法の可能性を求め、実験的にEDRにおける各概念が分類語彙表でどの単語グループに該当するかを自動的に推定することが可能か、という試みを行いました。ここでは推定に利用した手法とその結果を記します。
分類語彙表
今回用いる分類語彙表の情報について簡単に説明します。(分類語彙表について詳しくは上記リンクをご覧ください。)
分類語彙表データベースでは以下の項目で各単語が意味ごとにレコードに登録されています。
レコードid番号/見出し番号/レコード種別/類/部門/中項目/分類項目/分類番号/段落番号/小段落番号/語番号/見出し/見出し本体/読み/逆読み
データベースには上記の項目が以下のように保存されています。
022620,21486,a,体,主体,社会,社寺・学校,1.2630,15,01,01,研究所,研究所,けんきゅうじょ,ょじうゅきんけ
022666,21532,a,体,主体,社会,事務所・市場・駅など,1.2640,02,01,01,会社,会社,かいしゃ,ゃしいか
単語の分類はある種階層的になっており、部門、中項目、分類項目と右にいくにつれ、より詳細な分類になります。
段落番号、語番号でもさらに詳細な語の分類が行われていますが、今回は分類項目までの,分類番号で表される単語グループを利用し、特定の単語グループを表現する際は、体_主体_社会_社寺・学校のように類、部門、中項目、分類項目をアンダーバー(_)で繋いだものを利用します。
推定手法
枠組み
EDRの概念に対応する分類語彙表の分類番号を予測する方法はいくつか考えられますが、今回は二つの体系がそれぞれグラフ構造として表すことができることに着目し、既存グラフからグラフ内のノード(頂点)間の潜在的なエッジ(辺)を予測するLink Predictionの枠組みで解くこととしました。
EDR概念体系は最上位概念であるルートノードから枝分かれし、末端ノードが単語、中間ノードが概念となるようなグラフ構造で表すことができます(ただし、複数の上位概念を持つ概念が存在し、閉路が存在するので厳密な木構造ではありません。)。
一方で分類語彙表の分類体系では、類、部門、中項目、分類項目と段階的に枝分かれし、分類項目の下に複数の単語が紐づく木構造で表すことができます(この場合、分類項目のノードが分類番号に対応します。)。
ここで、EDR日本語単語辞書と分類語彙表の両方に含まれている単語が多数存在し、二つの体系のグラフ構造をそうした単語で接続し、一つのグラフ構造としてみることもできます。
こうした構造の中で、ある概念Aに紐づく単語が一単語のみで、かつその単語が一つの分類番号A'にしか属していないとき、多くの場合で概念Aは分類番号A'に対応していると決定しても問題ないと考えられます。このような概念と分類番号のノード間に概念→分類番号(分類項目)の対応を意味するエッジを上述のグラフ上で追加し、こうしたエッジの存在しない概念について、同種エッジのリンク先に相応しい分類項目ノードを予測することで概念→分類番号の対応を推定することができます。
EDR概念辞書の特徴として、一つの概念に異なる品詞の単語が共に属す場合があり、異なる類で同じ分類項目を持つグループと対応する可能性があります。そのため以降では、予測対象の分類番号で類の区別を行わず、概念に対応する分類項目(部門、中項目、分類項目の組み合わせ)を予測することとします。
具体的手法
ある種同様な問題設定の研究として、自然言語処理では、FreeBase,WordNet等の知識ベースのグラフでノード間の関係性を表すエッジを推定する問題に関する研究が既存研究として数多く存在しています。
その中で具体的な手法として、Rossiら(2021)[2]の調査結果で特に評価結果が優れていたComplEx(論文, github)[3]という手法を今回用いました。 このモデルでは、ノード間のリンク関係を表すテンソルをテンソル積によって上手く表現できるような、ノードに対応した行列と関係性(エッジ)に対応した行列をパラメータとして、与えられたグラフから学習します。得られたモデルを利用して、ノード間の関係性のスコアを計算することによりLink Predictionが可能になります。
EDR概念体系と分類語彙表を組み合わせたグラフの構築において、以下のノード間の関係性を区別してグラフを構築しました。
- 概念の上位下位関係
- 単語がある概念に所属する関係
- 中項目がある部門の下位にある関係
- 分類項目がある中項目の下にある関係
- 単語がある分類項目に属する関係
- 概念と対応する分類項目の間の関係
結果分析の過程でEDRでは上位概念と下位概念の間の意味的な粒度の差が概念の組み合わせによって異なる場合があると分かりました。このことがグラフ構造を学習するうえで、若干の悪影響を及ぼしている可能性が考えられました。 この問題を吸収して学習すべく、単語ノードと直接関係している概念ノードのうち、兄弟関係にあるノード同士を一つの仮ノードに圧縮し、仮ノードから分類項目へエッジを張り、仮ノードが兄弟ノードを代表してエッジを予想するように問題を簡易化しました。その結果、学習コストが大幅に軽減し、最終的に得られた結果も改善が見られました。
得られたモデルから、名詞、動詞、形容詞、形容動詞などの単語と紐づいている概念について、それぞれに対応する分類番号を予測し、概念→分類番号の変換テーブルを得ることができました。得られた結果の一例をEDRCOMSの解析結果に付与したものを下に示します(以降の結果では、モデルの設定として、次元数:200,初期学習率:0.1,正則化項の係数:0.01を用いています。)。
結果例
EdrMAMeでは意味の選択は行わないため、ここでも概念IDの絞り込みは行わず、各概念候補に対して結果として得られた分類語彙表の分類番号(分類項目)の予測結果を載せます。類については、解析結果の品詞を元に付与しています。
各列は以下の通りです。
- 『形態素、品詞、左右連接属性、概念ID』はEdrMAMeによる出力内容を表示したものです。
- 『概念ID->分類語彙表の分類項目』 は概念IDとその概念に対応すると予測された分類項目の結果です。
- 対象外であった概念IDや対象外とした品詞については表示されていません。
- 『分類語彙表の分類項目』は形態素の終止形を見出しとみなし、分類語彙表に登録されている見出しと一致する分類項目を表示しています。
- 漢字、ひらがな等の表記ゆれや複数語を見出しとして登録されている内容は表示されていません。
概念IDと分類項目にカーソルを合わせることで、概念の説明文と分類項目に属する単語の例がポップアップで表示されます。
『概念ID->分類語彙表の分類項目』の色は概念IDと語彙分類の対応が成功または失敗と判断したものです。どちらとも決め難いものは
ニュートラルとして色分けしました。
参考文献
- 国立国語研究所(2004)『分類語彙表増補改訂版データベース』(ver.1.0)
- A. Rossi, D. Barbosa, D. Firmani, A. Matinata, and P. Merialdo, ‘‘Knowledge graph embedding for link prediction: A comparative analysis,’’ ACM Trans. Knowl. Discovery Data, vol. 15, no. 2, pp. 1-49, Apr. 2021.
- Lacroix, Timothee, Nicolas Usunier, and Guillaume Obozinski. “Canonical tensor decomposition for knowledge base completion.” International Conference on Machine Learning. PMLR, 2018.