# MioGatto による数式グラウンディングデータセットの構築

朝倉卓人

東京大学

takuto@is.s.u-tokyo.ac.jp宮尾祐介

東京大学

yusuke@is.s.u-tokyo.ac.jp相澤彰子

国立情報学研究所

aizawa@nii.ac.jp
## 概要

計算機を用いた科学技術文書の読解には，数式内 の 1 つ 1 つの記号の意味をグラウンディングできる ことが重要である．現実の科学技術文書においては 数式内の記号の意味は必ずしも一定ではなく, 同じ 記号が複数の意味で用いられるため，グラウンディ ングの際には記号間の共参照関係も明らかにする必要がある. 本研究では arXiv.org から選んだ 15 本の 科学論文を対象に, 数式内の記号の共参照関係を明示的にアノテーションしたコーパスの構築を行っ た. その結果, 数式内の記号の曖昧性は狭い範囲に 絞っても存在するほど複雑だが，共参照関係は高い アノテータ間一致率を保ちながらラベル付け可能で あることが示された.

## 1 はじめに

論文や専門書などの科学技術文書に書かれた知識 を，検索・数式処理・定理証明支援などの計算機を 応用した諸技術を用いて十分に活用するためには，文書中の自然言語テキストのみならず数式について も解析を行うことが必須である. そして, 自然言語中の数式解析を行うには，数式内に現れる 1 つ の文字や記号（トークン）がどのような意味で用い られているのかを明らかにする必要がある．著者ら はこれまでに，この部分の処理を数式グラウンディ ングとして定式化・提案してきた $[3,4]$. このタス クは各数式トークンに対してそれぞれ文脈に応じた 説明を付与する説明アライメントタスク（図 1）と， まったく同じ意味で用いられているトークンとそう でないトークンを判別する共参照解析タスクの 2 つ の性質を併せ持つ.

計算機による科学技術文書理解の達成には，数式 グラウンディングの自動化が必要である. 自動化手法の開発を目指し, 著者らはまず実際にグラウン ディングされたデータの観察・分析・学習・評価の ため人の手によるグラウンディング結果のアノテー

図 1 説明アライメント

ションを付したコーパス構築に取り組んだ。一般に 共参照情報のアノテーションは特に高コストであ るため [12] 著者らは専用のアノテーションツール MioGatto ${ }^{1)}$ を開発してデー夕構築プロセスを効率化 した [5]. その上で，実際に MioGatto を用いて 11 名 の学生アノテータとともに計 15 本の科学論文につ いて，それらの論文中の数式のすべての数式識別子出現に対するアノテーションを行った.

本稿では，この数式グラウンディングデータセッ トのこれまでの構築手順を紹介するとともに，得 られたアノテーション付きコーパスの概要と分析結果について報告する。構築したデータセットは SIGMathLing リポジトリ2)にて配布している.

## 2 関連研究

文書中の数式理解に資することを目的とするデー タセットは，複数提案されてきた。 arXMLiv デー タセット [10] はプリプリントサーバ $\operatorname{arXiv.org}{ }^{3}$ に 収録されている 150 万本以上の科学論文を, 様々 な研究用途の計算機プログラムで扱いやすいよ う $\mathrm{LAT}_{\mathrm{E}} \mathrm{XML}$ [11] を用いて XHTML 文書に変換した 巨大な文書コーパスである。文書中の数式部分は


LATEXML の機能により機械的にプレゼンテーショ ン MathML [6] に変換されているが, 基本的に通常 の $\mathrm{LAT}_{\mathrm{E}} \mathrm{X}$ マークアップに含まれるのと同じ「見た目」 に関する情報がエンコードされているに過ぎず，特 にそれ以上に踏み込んだ情報は付加されてはいな い.それでも数式を含む文書の貴重な言語資源とし て広く活用されており, MioGatto の入力形式もこの arXMLiv の XTHML の仕様 [9] に準じている.

科学技術文書の数式部分について，各トークンに 説明を付与したアノテーション付きコーパスはいく つか提案されている. NTCIR-10では Math Pilot 共通 タスクの一部として自然言語テキスト内にあるトー クンの定義を抽出する Math Understanding サブタス クが提案され, その開発・評価のために arXMLiv データセットに含まれるXHTML 文書内の数式に人手で説明が付与されたデータセットが提供された [1]. また類似のタスクは数式内の 1 つ 1 の識別子 に対して説明を付与する MathAlign タスクとしても 定式化されており, 同じく arXiv.org に収録されてい る 116 本の論文の中から，合わせて 584 の識別子に 説明を与えたデータセットも存在する [2].

ある程度以上の長さのある現実の科学技術文書で は，しばしば数式トークンは 1 つの文書内において も複数の意味で用いられる $[3,4]$. 例えば機械学習分野の教科書 PRML [7] の第 1 章では, 太字の $\mathbf{y}$ は同 じ章の中で少なくとも 4 つの意味で用いられている （表 1)。そのため文書中の数式理解には, こうした 同一文書内のトークン間の共参照関係を明らかにす ることが必要だが，数式トークンの共参照関係が明示的にラベル付けされたデータセットは知られてい ない. 本研究では, 本文にある程度の長さがあり数式も豊富なものを中心として 15 本の科学論文を選定し, それらに現れる合計 12,352 個の数式識別子出現すべてについて，各論文内での共参照関係を明示的にアノテーションしたデータセットを構築した.

表 1 PRML [7]第 1 章における $\mathbf{y}$ の曖昧性

## 3 アノテーションの目的と方法

数式グラウンディングの自動化には, 手法の構築 と評価のためにデータセットが必須である. 統計モ
デルを構築して自動化を実現するには一般に大量 の教師データが必要になる. 最初はルールベースで データを増やす場合にも，ルールの検討には実際の 文書における数式トークンの使われ方を観察する必要があり, やはりある程度のデータが要ることに変 わりはない. またいずれにしても評価用のデータは 必要である. 本研究では, グラウンディング自動化 の第一歩として実際の科学論文を対象に次の 2 種類 の情報をすべて人手でアノテーションした（図2）.

数学概念 数式中のトークンが参照する概念. 実際 のアノテーションデータとしては，単純な説明 (description) に加えて, 数学的な型やアリティ,制約条件などの付加的な属性を付与することが できる.

グラウンディング情報源人間がグラウンディング を行う際に，その根拠として利用できるテキス トスパン．数学的に定義や宣言にあたる箇所が 該当する. 例えば図 2 の最初の $f$ は実数関数に グラウンディングされるが, その根拠となる情報源は直前の “a real-valued function”である.

図 2 アノテーションした情報: 数式中の各トークンをそ れぞれの参照する数学概念に紐付ける. その際の根拠と なるテキストスパンをグラウンディング情報源と呼ぶ.例文テキストは英語版 Wikipedia ${ }^{4)}$ より.

4) https://en.wikipedia.org/wiki/Integral
各数式トークンの出現に直接説明をアノテーショ ンする代わりに，文書ごとにアノテータが作成する 数学概念の一覧（数学概念辞書と呼ぶ）に定義され る概念 ID をラベル付けすることで，共参照関係を 明示したデータセットを構築することができる. す なわち, 同じ概念 ID と紐づく出現同士は共参照関係にある一方で，異なる ID と紐づくものは共参照関係にない。こうしたアノテーションを実現するた めに，実際のアノテーションにおいては著者らが開発した専用のアノテーションツール MioGatto を用 いた (図 3). MioGatto は (1) 数学概念辞書の作成, (2) 各出現への数学概念 ID の紐付け, (3) 各出現に対応するグラウンディング情報源のスパン位置のアノ テーションを GUI 操作のみで素早く行うことがで きるように設計されている [5].

図 3 MioGatto の操作画面. 画面の左側にアノテーション 対象の論文の本文があり, 右側のサイドバーに MioGatto の提供する情報やアノテーション操作に必要なボタン類 が配置されている.

データセット構築にあたっては, arXiv.org に $\mathrm{LAT}_{\mathrm{E}} \mathrm{X}$文書ソース付きで収録されている英文論文の中か ら, ある程度以上の数式が用いられているものを選 んでアノテーションを行った. こうした英文で数式 を含む科学論文を正しく読解してアノテーションを 行うには，それぞれの論文の分野について専門的な 知識を要することから, 様々な分野の専門知識を持 つ学生 (主に大学院生と学部生) の中から協力者を 募集した (付録 $\mathrm{A})$. 参加アノテータにそれぞれの 背景知識・興味に合った論文を arXiv.org 收録論文の 中から選定してもらい, 選ばれた論文を MioGattoを 用いてアノテーションするための前処理を行った. この前処理には論文著者によるオリジナルの $\mathrm{LAT}_{\mathrm{E}} \mathrm{X}$文書を $\mathrm{IAT}_{\mathrm{E}} \mathrm{XML}$ で XML に変換する作業と, 著者の 誤った数式マークアップを修正する作業（付録 B） が含まれる. 各アノテータには MioGatto の使用法 を説明するとともに，実際のアノテーションに必要 な論文 XHTML データ，アノテーションデータの雛形, 手順書5)を提供し, 同手順書にしたがってアノ テーション作業を実施してもらった. アノテーショ ンの結果得られたデー夕は著者らが内容を確認の 上, その後の分析を行った。

今回アノテーションの対象としたのは，選定した 論文内で用いられているすべての数式の，すべての 数式識別子の出現である. ここで数式識別子とは数式トークンの一種で，変数・関数・定数を表す単一 の文字 $(x$ や $\theta$ )または短い名前 $(\sin な と ゙)$ のこと である. 数式内には識別子以外にも演算子 (+など) や数値といったトークンもあるが，アノテーション 対象が多くなり過ぎることを防ぐため今回は識別子 に対象を絞っている. またグラウンディング情報源 については, 論文内でアノテータが発見できたもの すべてをアノテーションした. 1 つの概念に紐付く 情報源が論文内に複数箇所ある場合や，ある概念に 紐付く情報源が 1つもない場合もあるため, ラベル 付けする情報源の数には制約を設けなかった.

## 4 構築済みデータセットの分析

NLP ・数理論理学・代数学・天文学などの分野の 科学論文合わせて 15 本について, すべての数式識別子出現に対する手動アノテーションを完了した （表 2）、データセット全体では合計 12,354 個の識別子出現があり, そのすべてに数学概念が割り当てら れた. またグラウンディング情報源にあたるテキス トスパンは計 938 個収集できた。各論文について識別子の「種類」数を, 対応する概念辞書の「概念」数 で割ると，識別子の種類ごとに平均いくつの意味で 用いられているかが算出できるが，その平均値は全体を通して 2.09 であった. また識別子の種類ごと に使われる回数が異なるので, 出現数を考慮して加重平均したものが表 2 の「平均候補」数である.こ れは実際のアノテーション時に, 各出現に対して数学概念を割り当てる際にアノテータが目にした選択肢の数の平均値に相当する. そのため「平均候補」 の数が大きいほど識別子の曖昧性の度合いが高く, アノテーションの難易度も高かったと解釈できる.
 s-Guide
表 2 アノテーション結果.「番号」は説明のための便宜的な論文 ID，「単語」は本文の単語数，「種類」は識別子 の種類数, 「出現」は識別子の出現数,「概念」は概念辞書 に登録された項目数,「平均候補」は辞書項目数の識別子出現回数に応じた加重平均, 「情報源」はグラウンディン グ情報源の数. 具体的な文献情報は付録 A に掲載する。

## 4.1 アノテータ間一致率

本研究でアノテーション対象としたのは専門性の 高い科学論文であるので，同一の文書に対してアノ テーション可能な人員を複数名確保するのは容易で ない. しかしアノテーションの正確性・再現性を確認するため, 論文 1 については計 5 名のアノテータ で独立にアノテーションを実施し，アノテー夕間一致率の算出を行った (表 3). 概念辞書の作成はアノ テータ A が担い，他はその辞書を用いて概念の割当 や情報源のアノテーションを行った. アノテータに より作業精度に多少ばらつきがあるが, 数学概念の 一致率・Cohen の $\kappa$ 値 [8] を算出すると十分に高い 值となっている. またグラウンディング情報源も高 い頻度で重複しており，人間が情報源とみなすテキ ストスパンはよく一致することがわかった.

## 4.2 スコープの切替位置と情報源

ある数式識別子の出現に対して割り当てられた数学概念が, 同じ識別子種の直前の出現に割り当てら れた概念と異なる場合, その 2 つの識別子出現の間 にスコープの切替があると言う．数式グラウンディ ングを行うには，1つの文書内のすべてのスコープ の切替位置を特定する必要があり, これが自動化 において最も挑戦的な部分である. 今回構築した データセットでは，論文 15 本の中で合計 2,378 回 のスコープ切替があった. このうち 1 つのセクショ表 3 アノテータの役割と一致率. 上 3 行に各アノテータ の役割, 中 2 行に数学概念の一致率, 下 2 行に情報源の数 を示す。一致率・重複率は対アノテータ A の値である.

ンの中でスコープ切替が起こっているものは 2,129 回 $(89.5 \%$ )であったことから, 文書内の単一のセク ションという狭い範囲に絞ってみても数式識別子に は曖昧性があることがわかった。

またグラウンディング情報源とされたテキスト スパンと，それぞれと紐付けられている数式識別子 の出現との位置関係についても分析を行った. アノ テーションされた計 938 個のグラウンディング情報源のうち $76.5 \%$ にあたる 718 個が数式識別子よりも 先行する位置に存在していた。また各情報源とそれ と紐付く数式識別子出現（最も距離が近いもの）の 距離を，間に挟まる単語の数で計数すると，平均し て 14.7 単語であった. ただし, 情報源・識別子間の 距離はばらつきが大きく, 距離の中央値はすべての 論文で $0 \sim 4$ 単語の範囲にあり, 典型的な情報源は 対応する識別子出現の直前数単語以内に存在する.

## 5 結論と今後の展望

本研究では多様な分野の科学論文 15 本について, グラウンディング情報を人手でアノテーションした データセットを構築した。その中ではすべての識別子出現に説明といくつかの付加情報がラベル付けさ れるとともに，各論文内で識別子間の共参照関係が 明示的になっている. さらにこうしたデータセット は必ずしも言語資源構築を専門としないアノテータ による作業でも構築可能であることを示した.

今後は概念辞書の作成のみを人手で行い，論文中 の識別子出現に対してその概念辞書のうちの適当な 項目を自動で割り当てる半自動化を行う。これによ り効率よく提案データセットを量的に拡張し，ひい てはグラウンディング全体の自動化を達成する.


## 謝辞

本研究は JST ACT-X (JPMJAX2002) の支援を受け て実施しました. 日頃より実りある議論をしてい る Michael Kohlhase 教授と André Greiner-Petter 氏に 感謝します.また MioGatto の改善を手伝ってくだ さった石井太河氏と, 本研究に参加いただいたすべ てのアノテータの方々にも感謝します.

## 参考文献

[1] Akiko Aizawa, Michael Kohlhase, Iadh Ounis. "NTCIR-10 Math Pilot Task Overview." Proceedings of NTCIR-10. 2013.

[2] Maria Alexeeva, Rebecca Sharp, Marco A. Valenzuela-Escárcega and Kadowaki, Jennifer Kadowaki, Adarsh Pyarelal, Clayton Morrison. "MathAlign: Linking Formula Identifiers to their Contextual Natural Language Descriptions". Proceedings of the 12th Language Resources and Evaluation Conference (LREC 2020).

[3] 朝倉卓人, André Greiner-Petter，相澤彰子，宮尾祐介. 『数学概念への数式グラウンディング のためのデータセット』. 言語処理学会第 26 回年次大会予稿集 (NLP2020).

[4] Takuto Asakura, André Greiner-Petter, Akiko Aizawa, Yusuke Miyao. "Towards Grounding of Formulae." In Proceedings of First Workshop on Scholarly Document Processing (SDP 2020).

[5] Takuto Asakura, Yusuke Miyao, Akiko Aizawa, Michael Kohlhase. "MioGatto: A Math Identifieroriented Grounding Annotation Tool." In 13th MathUI Workshop at 14th Conference on Intelligent Computer Mathematics (MathUI 2021).

[6] Ron Ausbrooks et al. Mathematical Markup Language (MathML) 3.0 Specification. 2014. https: //www.w3.org/TR/MathML3/.

[7] Christopher M Bishop. Pattern Recognition and Machine Learning. 2006.

[8] Jacob Cohen. "A coefficient of agreement for nominal scales." Educational and Psychological Measurement. 1960.

[9] Deyan Ginev, Heinrich Stamerjohanns, Bruce R. Miller, and Michael Kohlhase. 'The IATEXML Daemon: Editable Math on the Collaborative Web." Intelligent Computer Mathematics. 2011.
[10] Deyan Ginev. arXMLiv:2020 dataset, an HTML5 conversion of arXiv.org. SIGMathLing. 2020. https://sigmathling.kwarc.info/resources/ arxmliv-dataset-2020/.

[11] Bruce Miller. $\mathrm{AT}_{\mathrm{E}} \mathrm{XML}$ The Manual-A $\mathrm{LAT}_{\mathrm{E}} \mathrm{X}$ to XML/HTML/MathML Converter, Version 0.8.3. 2018. https://dlmf.nist.gov/LaTeXML/.

[12] Bruno Oberle. "SACR: A Drag-and-Drop Based Tool for Coreference Annotation." In Proceedings of the 11th International Conference on Language Resources and Evaluation (LREC 2018).

## 付録 A アノテータの募集方法とアノテーション対象の論文

数式を含む英文科学論文の読解を伴うアノテーションタスクは一般のクラウドソーシングでは実現が難し いため, 本研究に参加するアノテータは, ソーシャル・ネットワーキング・サービスも活用しㄱ) 広く理工系分野を専攻する学生の中から募集し，直接謝金を支払って作業に従事してもらった．実際のアノテーション に従事した学生は, 分野としては自然言語処理を専門とする者が最多だが, 他にも数理論理学・代数学・物理学・天文学などを専攻する者もいた。参加アノテータの身分としては大学院生（修士課程）が最も多 く, 大学院生 (博士課程) や学部生, さらにはそれよりも若い参加者もいた. アノテーション対象の論文は arXiv.org に LATEX 文書ソース付きで収録されているものの中から，参加アノテータの専門と論文中の数式の 数を考慮して選定した（表 A)。

表 A アノテーション対象論文. 論文の通し番号は本文の表 2 の番号と対応している.

 & 1808.02342 & cs.IT \\

## 付録 B 前処理における数式マークアップの修正

MioGatto は単純に入力 XHTML 文書のタグ情報を参照することでアノテーション対象となるトークナイ ズされた識別子を認識している. 入力 XHTML 文書の夕グ構造は LATEXML で変換する前の論文著者による ${ }^{\mathrm{AT}} \mathrm{E} \mathrm{E}$ ソースの記述のされ方によって決定されているため, 大元の $\mathrm{IAT}_{\mathrm{E}} \mathrm{X}$ ソースの数式マークアップが誤って いると正しく識別子を認識することができない。そのため，このようなマークアップミスは前処理において 修正を行った.この過程で修正された誤ったマークアップのほとんどは大きく 3 種類に分類できる. 第一は 数式でない部分に対して（単に強調などでイタリック体の出力を得る目的で）数式モードが使用されている ケースである. 第二は逆に数式であるはずの部分がテキストとしてマークアップされているケースである.例えば数式内で FNN のような関数名を使用する際に \text\{FNN\} と記述されていると，その部分は数式識別子ではなくテキストと扱われてしまう．第三は本来はひとまとまりの識別子が，1 文字ごとの識別子の積で あるものとしてマークアップされているケースである. 例えば正弦関数は $\mathrm{L} \mathrm{T}_{\mathrm{E}} \mathrm{X}$ では \$要があるが，これが単に $\$ \sin \$$ と記述されていると $s, i, n$ はそれぞれ別々の変数として認識され，全体とし ては 3 変数の積となってしまう. 実際に IATEXML の出力では各変数間に不可視の乗算記号 (Invisible Times, U+2062) が挿入された状態となってしまい，意図された数式とは明確に異なるものとなる.

 朝倉卓人  東京大学  takuto@is.s.u-tokyo.ac.jp宮尾祐介  東京大学  yusuke@is.s.u-tokyo.ac.jp相澤彰子  国立情報学研究所  aizawa@nii.ac.jp 