# 離散記号処理に対する近似的な微分構造の考察と 数量推論を要する文章読解問題への応用

吉川 将司 1,2
東北大学 1
yoshikawa@tohoku.ac.jp

## 1 はじめに

本稿では，離散記号処理モジュール $F$ を中間層と して持つような深層学習モデルを構築し，全体を誤差逆伝搬法によって end-to-end に学習する方法を検討する。また，その応用例として電卓モジュール付 き文章読解モデル（図 1）を実装し，実験を行う.

F は一般に Python インタープリタのようなプログ ラムを考える．しかし，当然ながら $F$ の微分則は不明であるし，また一般的にDNN の中間の活性化を 離散值に落とせば勾配が 0 になってしまい，F より 上流のモジュールを，最終タスクの損失に関する勾配によって学習させることができない. そこで，本稿では argmax 活性化に対する微分可能な緩和を行 う Gumbel Softmax trick (§ 3.1)を一般化し，F に対す る擬似的な Jacobi 行列を構築する方法を提案する.

記号推論を要する問題として，数量推論を要する 文章読解 (DROP [1]) に取り組み，深層学習モデル に，F として簡単な二項四則演算プログラム（電卓と呼ぶ）を取り込むことを考える、数量推論は深層学習による自然言語処理では難題であり, 近年の 巨大な言語モデルでも限られたパターンしか対応で きないことが報告されている [2]. 本研究は，現状 の言語モデルの延長ではこの問題は解決できないと 考え，外部モジュールを組み込む方策を検討する。

## 2 問題設定

具体的なモデルの構造について本旨に関係する範囲で整理し，詳細は付録 $\mathrm{A}$ にまとめる.1) 文章と質問を $P, Q$ とし，対応する答え（正解ラベル）を $y^{\star}$,

1） 記法： $\boldsymbol{e}_{k}(k \in \mathbb{N})$ で $k$ 番目が 1 の適当な次元の one-hot ベ クトルとする. 語彙 $\mathscr{V}$ は全順序集合とし $w \in \mathscr{V}$ に対し $\boldsymbol{e}_{\mathrm{w}}$ と も書く．また 1 はすべての要素が 1 のべクトルである. $n-1$次元単体は $\Delta^{n}=\left.\{\mu \in \mathbb{R}^{n} \mid \forall \mu_{i} \geq 0, \sum_{i=1}^{n} \mu_{i}=1\right.\}$ とし，タイプ ライター書体の $\operatorname{argmax}(\boldsymbol{x})$ は $\boldsymbol{x} \in \mathbb{R}^{n}$ 中の最大要素 $x_{i}$ につ いて $\boldsymbol{e}_{i}$ を返す関数とする.これは一般的な演算子を使って $\operatorname{argmax}(\boldsymbol{x})=\arg \max _{\boldsymbol{\mu} \in \Delta^{n}} \boldsymbol{x}^{\top} \boldsymbol{\mu}$ と書ける. $\operatorname{argmax}$ に関する議論 では $x_{i}$ の大きさが同率一位になることはないと仮定する.乾 健太郎 ${ }^{1,2}$

理化学研究所 ${ }^{2}$

inui@ecei.tohoku.ac.jp

$\boldsymbol{P}$ : The commander recruited 802 Polish families in Spain. Q: Were there more Japanese The householder recruited 231 or Polish families in Span? Japanese families in Spain ..

図 1 電卓付き文章読解モデル. 詳細は本文参照.

モデルの予測を $y$ ，損失を $\mathscr{L}\left(y, y^{\star}\right)$ とする.これら 変数の具体的な構造には立ち入らず， $\mathscr{L}$ は $y$ で微分 できると仮定する（e.g., 確率分布間の KL 誤差）.

モデル ベースの文章読解モデルとして GenBERT [3] を用い，それに対して電卓機能を追加する. パラメータ $\psi$ の関数として GenBERT $\psi$ は BERT [4] に 基づき，“[CLS $Q$ [SEP] $P$ ” のサブワード列を入力と し，入力テキスト中のスパンを抽出するか，文字列 を直接生成することによって問題を解く。電卓によ る拡張では, 別の BERT ゙゙ースのモデル BERT ${ }_{\phi}^{A R G}$ (項抽出器）に $P$ 中から問題を解くために有用そうな数量項を 2 つ抽出させ（図 1 の “802”, “231”)，電卓 $D$ により計算を行った結果の文字列 Z（ここでは引き 算として “571 = D (802，231)”) を連結した“[CLS] $Q$ [SEP] $P$ [SEP] Z" を使って GenBERT $\psi$ に推論させ る. BERT ${ }_{\phi}^{\mathrm{ARG}}$ の出力は $s \in \mathbb{R}^{K}$ ( $K$ は $P$ 中の数量項の 組の数) であり，要素 $s_{i}$ は数量項の組に対するスコ アである。電卓は $s_{i}$ の大きさに従って数量項の組を サンプリングし $Z$ を構築する. ここで， $Z$ は BERT

ベースの GenBERT $\psi$ に直接入力されるため文字列で ある必要はなく, BERT の入力層のサブワード語彙 V に対応した one-hot ベクトルを並べた行列常に含まれる数学記号

$F(\boldsymbol{s})$; 計算結果 (Lトークン) $A(\boldsymbol{s})$; 抽出結果

であればよく，以降 $Z$ をそのような行列とする．注意として，演算記号 “-”を使わず抽象的に “D” とま とる. これにより $\left[F_{+}(s) F_{-}(s) F_{\times}(s) \boldsymbol{e}_{=}, \ldots\right]$ のよう に式 1 の “=” の左に $F_{*}$ を並べることで簡単に演算を 増やすことができる．実際に用いる演算は付録 A. 2 にまとめる。予測は以下のように整理される。

$
y=\operatorname{GenBERT}_{\psi}\left(P, Q, D\left(\mathrm{BERT}_{\phi}^{\mathrm{ARG}}(P, Q)+\boldsymbol{g}\right)\right)
$

ここで $\boldsymbol{g}$ は Gumbelノイズである (§3.1). BERT 等の 言語モデルに $Z$ のようなヒントを与えた場合，推論性能が大きく向上することが報告されており $[5,6]$,本モデルが期待通りに動作すれば，文章読解問題を 高い精度で解くことが期待できる。

問題 項抽出器 BERT ${ }_{\phi}^{A R G}$ に問題を解くために有効 な数量項を抽出させるために，そのパラメータ $\phi を ~$文章読解の損失 $\mathscr{L}\left(y, y^{\star}\right)$ を最小にするように推定し たい. 勾配べースの学習法を用いるため， $\mathscr{L}$ の $\phi$ に よる勾配 $\nabla_{\phi} \mathscr{L}\left(y, y^{\star}\right)$ を計算したいが，それは

$
\nabla_{\phi} \mathscr{L}\left(y, y^{\star}\right)=\frac{\partial \mathrm{BERT}_{\phi}^{\mathrm{ARG}}}{\partial \phi} \frac{\partial D}{\partial \boldsymbol{s}} \frac{\partial \mathrm{GenBERT}_{\psi}}{\partial Z} \nabla_{y} \mathscr{L}\left(y, y^{\star}\right)
$

であり，式 1 から $\partial F / \partial \boldsymbol{s}$ と $\partial A / \partial \boldsymbol{s}$ を計算する必要 がある. 後者については Gumbel-Softmax trick の簡単な応用で対処できるため詳細は付録 A. 2 に載せる にとどめるが，前者の $\partial F / \partial \boldsymbol{s} \in \mathbb{R}^{K \times L \times|\mathscr{V}|}$ をいかに 近似推定すればよいか，が本研究が扱う問題であ る。本研究では，Sofmax を含む関数クラスの Jacobi 行列を分析し(§4), その結果に基づいて $\partial F / \partial \boldsymbol{s}$ の 近似を人工的に設計する手法を提案する（§5).2)

## 3 関連研究

2） $Z_{i}$ を式 1 のように $i$ 番目の数量項の組に対する計算結果か ら作る行列とすれば， $F$ は $F^{\prime}(\boldsymbol{s})=\operatorname{argmax}(\boldsymbol{s})^{\top}\left[Z_{1}, \ldots, Z_{k}\right]^{\top}$ と書け，この argmaxで ST Gumbel-Softmax を使うという簡単 な方法でも電卓の近似微分が実現できることに本稿執筆時に 気づいた。しかし，これをナイーブに実装する場合 $Z_{i}$ を並べ た巨大な行列を作る必要があり, 空間計算量的に問題である.提案法は（逆伝搬時はもう少し工夫が必要であるが）それを 迂回できる可能性がある. また, $F^{\prime}$ の定式化の場合, 各 $Z_{i}$ に対する重み付けの比を学習することに相当するが，提案法 の Jacobi 行列は（各時刻に $\mathscr{V}$ の要素を予測する） $s \mapsto Z$ の系列生成器の $\boldsymbol{s}$ に関する微分を想起させる形になっている. $F$ と $F^{\prime}$ の近似 Jacobi 行列の特性や，学習問題にどのような含意 を持つのかは興味深い問題であり，今後詳細に調べたい。

## 3.1 Gumbel-Softmax trick

図1のような電卓つき文章読解モデルを作る場合，項抽出結果 $Z$ に対する $D(Z)$ が確率 1 で決まる ことに着目し, 潜在変数モデル $(P, Q$ への依存は略 $)$

$
P(y)=\mathbb{E}_{P_{\phi}(Z)}\left[P_{\psi}(y \mid D(Z))\right]
$

を検討することは尤もであり，近年検索べースの言語モデル [6] 等が成功を収めている．しかし，この 方法では，モデル内に記号処理モジュールを増やす ごとに潜在変数の組み合わせが爆発的に増えるた め，確率の計算が困難になってしまう．特に，勾配 ベースの手法で学習する際，一般的に限られた数 の $Z_{i} \sim P_{\phi}(Z)$ により勾配を近似的に推定すること になるが，REINFORCE アルゴリズム [7] のような 不偏推定量の計算法が存在しながらも，分散が大き く学習が不安定なことが知られている. $D$ が恒等写像で，Z がカテゴリカル分布に従う場合のこの問題に対する安定した代替案である Gumbel-Softmax trick [8] では，サンプリング操作をノイズと $\operatorname{argmax}$関数評価に切り分け (reparameterization trick; $P(y)=$ $\left.\mathbb{E}_{\epsilon \sim P_{\epsilon}}\left[P_{\psi}\left(y \mid \operatorname{argmax}\left(f_{\phi}(\epsilon)\right)\right)\right]\right)$, 温度パラメータ $\tau>0$ を小さくした $\operatorname{softmax}(\boldsymbol{x} / \tau)=\left[e^{x_{i} / \tau} /\left(\sum_{j} e^{x_{j} / \tau}\right)\right]_{i}$ で argmax を近似する（微分可能な緩和）ことで end-toend 学習を行う. さらに，順伝搬時は argmax を計算 し，逆伝搬時に softmax の Jacobi 行列 $\nabla$ softmax を 使う Straight-Through (ST) Gumbel-Softmax という手法も提案されている. 本研究は $D$ として恒等写像 から記号処理モジュールに一般化し，その場合にお ける近似 Jacobi 行列を考えるものである。

softmax が argmax の近似であることは，特に前者 が正則化 argmax [9, 10] の一種であることからわか る. 正則化 $\operatorname{argmax}$ はある正則化関数 $\Omega$ に関して，

$
\operatorname{argmax}_{\Omega}(\boldsymbol{x})=\arg \max _{\boldsymbol{\mu} \in \Delta^{n}} \boldsymbol{x}^{\top} \boldsymbol{\mu}-\Omega(\boldsymbol{\mu})
$

の形をした関数のクラスであり，softmax は $\Omega$ に負 の Shannon エントロピー $\left(-H_{S}(\boldsymbol{\mu})=\sum_{i} \mu_{i} \log \mu_{i}\right)$ を 選んだ場合に相当する。温度パラメータ $\tau$ をげる ことと $\operatorname{argmax}$ の関係は以下のように正則化の効果 を落とすことに相当する。

$
\begin{aligned}
\operatorname{argmax}_{\Omega}(\boldsymbol{x} / \tau) & =\arg \max _{\boldsymbol{\mu} \in \Delta^{n}}(\boldsymbol{x} / \tau)^{\top} \boldsymbol{\mu}-\Omega(\boldsymbol{\mu}) \\
& =\arg \max _{\boldsymbol{\mu} \in \Delta^{n}} \boldsymbol{x}^{\top} \boldsymbol{\mu}-\tau \Omega(\boldsymbol{\mu}) \xrightarrow{\tau \rightarrow 0} \operatorname{argmax}(\boldsymbol{x})
\end{aligned}
$

上の関係は softmax に限らない一般の $\operatorname{argmax}_{\Omega}$ に成 り立ち, 微分可能緩和として sparsemax [9] などの
他のインスタンスを使う方針もあり得る．§4 では，一般性のある正則化 argmax に対し分析を行う.

## 3.2 記号処理モジュールの微分

本研究と最も関連のある既存研究は Estimate and Replace 法 [11] である. この手法を電卓付き文章読解 モデルに応用する場合，まず電卓の記号処理を模倣 するネットワークを人工データ上で事前訓練し，文章読解モデルを訓練する場合には，この模倣ネット ワークで電卓を置き換えて勾配を推定 (estimate) し， テスト時には真の電卓に戻して (replace) 使う。この 方法では原理的に最終タスクによる勾配を上流まで 流すことができるが，その性質については不明であ る. 特に，論文 [11] による評価実験が単純な人工夕 スクに限られていることは，汎用性に関し限界を示唆する。推定される勾配の質は，模倣ネットワーク の模倣精度に大きく依存すると予想され，精度を上 げるためにネットワークを大きくすれば，モデル全体の学習に要する計算コストが犠牲になる。

本研究の動機は，離散記号モジュールの微分がど うあるべきかを数理的に分析し，上述の問題を克服 する勾配推定法を確立することである．その糸口と して，以下正則化 argmax $の$ Jacobi 行列を分析する.

## $4 \operatorname{argmax_{\Omega}$ の Jacobi 行列の分析}

一般の正則化 $\operatorname{argmax} \ell$ がもつ以下の基本的な性質（証明は [10] 参照）を前提としてその Jacobi 行列 $\partial \boldsymbol{\ell} / \partial \boldsymbol{x}$ の性質を調べる. 以下 $z=\boldsymbol{\ell}(\boldsymbol{x})$ とする.
- (単調性) $\forall \epsilon>0, \ell_{i}\left(\boldsymbol{x}+\epsilon \boldsymbol{e}_{i}\right) \geq \ell_{i}(\boldsymbol{x})$
- (正規性) $\boldsymbol{\ell}(\boldsymbol{x}) \in \Delta^{n}$ i.e., $\ell_{i}(\boldsymbol{x}) \geq 0, \sum_{i=1}^{n} \ell_{i}(\boldsymbol{x})=1$
- (定数に対する不変性) $\forall c \in \mathbb{R}, \boldsymbol{\ell}(\boldsymbol{x}+c \mathbf{1})=\boldsymbol{\ell}(\boldsymbol{x})$

性質 1 : 符号 まず注目する点として, これらの Jacobi 行列は，常に対角成分が非負，非対角成分が 非正の正方行列である. 単調性から対角成分 $\partial \ell_{i} / \partial x_{i}$ は非負であり，正規性から 1 を $z_{i}$ 間で分配しないと いけないため $\partial \ell_{i} / \partial x_{j}(i \neq j)$ は非正となる. 具体的 に softmax の Jacobi 行列はそのようになっている：

$
\frac{\partial \text { softmax }_{i}}{\partial \boldsymbol{x}_{j}}= \begin{cases}z_{i}\left(1-z_{i}\right) & i=j \\ -z_{i} z_{j} & i \neq j\end{cases}
$

そもそも, Jacobi 行列の要素 $\partial \ell_{i} / \partial x_{j}$ の意味をナ イーブに解釈すれば， $\operatorname{argmax}_{\Omega}$ の役割からして「 $z_{i}$ を 大きくするには $x_{i}$ を大きくし $\left(\partial \ell_{i} / \partial x_{i} \geq 0\right), x_{j}(j \neq i)$

ことが表現されているはずである.性質 2 : 值の大きさ 一方で Jacobi 行列のそれら 要素の大きさに関してはどのように解釈できるだろ うか？解釈には様々な可能性がありえるが，1つと して 出力 $z$ が peaky になるほど Jacobi 行列が零行列に近づくことで勾配の流れを妨げる弁のような機能を持つと考える. ${ }^{3}$ 厳密でないが， $z$ を peakyにす ることは，入力 $x$ に対して温度 $\tau$ を小さくすること で模倣できるが，式 2 よりこれは至るところ勾配 0 の $\operatorname{argmax}$ に近づくことになり, 同様に $\partial \boldsymbol{\ell} / \partial \boldsymbol{x}$ も零行列に近づくと考えられる。このことは，具体的な Jacobi 行列（式 3）からも見て取れる。

性質 3 : 入カへの間接的依存性 最後に，興味深 いことに softmax の Jacobi 行列が $z$ を介して記述で き， $x$ への依存が間接的である。一般論としては， この事実は正則化 $\operatorname{argmax}$ の定数に対する不変性に 関係する. $\operatorname{argmax}_{\Omega}$ は明らかに非単射であるが，そ の Jacobi 行列は $z$ で決まり情報量の多い $x$ を必要 としない. 具体的に, 任意の $x_{1}, x_{2} \in \mathbb{R}^{n}$ に対して, $\boldsymbol{\ell}\left(x_{1}\right)=\boldsymbol{\ell}\left(x_{2}\right)$ ならば $(\partial \boldsymbol{\ell} / \partial x)\left(x_{1}\right)=(\partial \boldsymbol{\ell} / \partial x)\left(x_{2}\right)$ であ る. 仮に Jacobi 行列間の不等号が成り立てば, $\boldsymbol{x}_{1}, \boldsymbol{x}_{2}$周辺の適当な変化 $\epsilon$ に対する $\ell$ の挙動が異なること になるが, $\boldsymbol{\ell}\left(\boldsymbol{x}_{1}\right)=\boldsymbol{\ell}\left(\boldsymbol{x}_{1}+\epsilon \mathbf{1}\right) \neq \boldsymbol{\ell}\left(\boldsymbol{x}_{2}+\epsilon \mathbf{1}\right)=\boldsymbol{\ell}\left(\boldsymbol{x}_{2}\right)$ と なり仮定に反するからである。

## $5 F$ の擬似的な微分

前節で argmax の微分可能緩和の Jacobi 行列を分析したが，仮に $F$ に対する微分可能緩和 $\tilde{F}$ が存在す れば，およそ §4 冒頭の仮定を満たし，その Jacobi 行列 $\partial \tilde{F} / \partial s$ にもこの分析と同様の性質が成り立つ と考えられる. しかし $\tilde{F}$ の具体的な関数形は closed な形ではわからない. そこで ST Gumbel-Softmax (§3.1) と同様に順伝搬時には one-hot ベクトルを並 べた $Z=F(s)$ を使い，逆伝搬時には，上の分析に基 づき人工的に作った近似 Jacobi 行列 $J(\approx \partial \tilde{F} / \partial s)$ を 用いれば勾配 $\nabla_{\phi} \mathscr{L}\left(y, y^{\star}\right)$ を推定できる. 具体的に,大きな方針は性質 1 より $J$ の要素の符号は $F$ の望 ましい入出力関係に基づき設定し，その値の大きさ を性質 2,3 に基づいて設計することを考える。

まず簡単に，数量項の組の数を $K$ とし，入出力は 必ず一桁で桁の繰り上がりは起きないとした一桁足 し算 $F^{1}: \mathbb{R}^{K} \rightarrow\left.\{\boldsymbol{e}_{n}\right.\}_{n \in \mathscr{V}^{\prime}}\left(\mathscr{V}^{\prime}=\{1<2<\ldots<9\}\right)$ の 場合を考えると，その近似 Jacobi 行列 $J \in \mathbb{R}^{K \times 9}$ は，

性質 $\mathbf{1}$ より $i=1, \ldots, K$ ごとのある $d_{i}, d_{i}^{\prime} \geq 0$ を使っ て下の例のように足し算結果によって決めることが できる. ( $K=3, s_{i}$ に対応する数の組を右に示す).

$d_{i}, d_{i}^{\prime}$ の値は性質 2,3 を考慮して $s$ を適当な $\operatorname{argmax}_{\Omega}$ で正規化した値を用い, 弁機能も備えさせる.具体的に本稿では Softmax を使い，式 3 を基に $z=\operatorname{softmax}(s)$ として $d_{i}=d_{i}^{\prime}=z_{i}\left(1-z_{i}\right)$ とする. ${ }^{4)}$

次に，入出力の桁数に関して一般の演算 $Z=$ $F(s) \in \mathbb{R}^{L \times|\mathscr{V}|}$ の近似一階微分 $J \in \mathbb{R}^{K \times L \times|\mathscr{W}|}\left(J_{i j k} \approx\right.$ $\partial F_{j k} / \partial s_{i}$ )を考える (図2).このとき, $J_{i}$ の要素の符号は $s$ のなかで $s_{i}$ が最も大きいときに $F$ の期待され る出力で決めればよく, つまり $Z_{i}=F\left(\mathbf{e}_{i}\right) \in \mathbb{R}^{L_{i} \times|\mathscr{V}|}$ に依る.さらに $J$ の要素の大きさも一桁電卓の場合 と同様に調整して $J_{i}=d_{i} Z_{i}-d_{i}^{\prime}\left(1-Z_{i}\right)$ としたい. し かし桁の繰り上がり等で必ずしも $L_{i}=L$ ではない ため, $L_{i}<L$ の場合後ろを 0 で埋め, $L_{i}>L$ の場合 $Z_{i}$ の先頭 $\mathrm{L}$ 行だけを使うことで行列の大きさを調整した $\tilde{Z}_{i} \in \mathbb{R}^{L \times|\mathscr{V}|}$ で $J_{i}=d_{i} \tilde{Z}_{i}-d_{i}^{\prime}\left(1-\tilde{Z}_{i}\right)$ とする.

## 6 実験

設定 数量推論を必要とする文章読解問題を集め た DROP データセット [1] で実験を行う. 開発セッ トにおける電卓あり/なしの GenBERT [3] の性能を 比べる. 基本的な実験設定は GenBERT 論文のもの に従い，GenBERT 論文で構築された人工データを 用いた事前学習のあと, DROP の学習セットで追加学習する. 注意すべき点として, 電卓ありの場合は 別の BERT ベースの BERT ${ }_{\phi}^{A R G}$ モデルに含まれるた めパラメータ量の点でフェアな比較ではない.

結果 開発セットでの結果を表 1 に載せる. 残念 ながら, 現段階では電卓の有無によって性能に差は 見られず，性能面における電卓の有用性は示されな かった。そこで，項抽出器により抽出された数量が 問題を解くために有益なものとなっているかを評価 した. 項抽出に対する正解データは存在しないため Amazon Mechanical Turkを用いる. 具体的に，電卓付きモデルが正答した開発セットの問題からランダ 厶に 100 件抽出し，質問，文章，答え，抽出された

4）Sparsemax に基づく方法を実験結果とともに付録 B に載せ る. $\operatorname{argmax}_{\Omega}$ と異なり $F$ の入出力はベクトルと行列で形が非対称であり，その点を考慮しながら設計しなければならない.

図 2 提案法による Jacobi 行列の計算. (1) 杕が少ない場合 0 で埋め，(2) 桁がはみ出る場合は下を切る.

表 1 DROP 開発セットにおける結果.

数量項をワーカーに見せ，質問から答えに至る過程 で数量項を使うかを尋ねた。 1 問に対し 3 人のクラ ウドに評価してもらう. 結果, 3 人中 $k$ 人が数量項 が有益であると判断した問題数は, $k=1,2,3$ に対し それぞれ 100 問中 $40,14,8$ であった.こちらに関し てもあまり良い結果とはいえず課題が残った.

現段階の直感的な考察として, 推論器 GenBERT $\psi$ が電卓から与えられる計算結果が問題を解くために 有益であることに気づけない一方で，そのことによ り，他方では項抽出器に質の良い教師信号が流れな いという状況が起きているのではないかと考えられ る. 今後さらなる調査を行う予定である.

## 7 終わりに

本稿では記号処理モジュールの微分を検討し，そ の応用例として電卓付き文章読解モデルを構築し た. 鍵となるアイデアは，記号処理モジュールの近似微分の概形はその望ましい入出力関係で決まり,細部は argmax の近似である softmax 等を参考に決 めれば良い，ということであった. 現状の結果は課題が多く残る. しかし, このような仕組みが完成し た暁には数量推論に限らず，理論言語学的な推論の 仕組みや外部知識辞書をモデルに統合するなどの応用が可能となり，その利益は大きいと思われ，今後 もこの方針の追求に邁進するつもりである.

謝辞本研究は JSPS 科研費 $20 K 23314$ の助成を受 けたものです.

## 参考文献

[1]Dheeru Dua, Yizhong Wang, Pradeep Dasigi, Gabriel Stanovsky, Sameer Singh, and Matt Gardner. DROP: A reading comprehension benchmark requiring discrete reasoning over paragraphs. 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. 2368-2378, Minneapolis, Minnesota, June 2019. Association for Computational Linguistics.

[2]Tom B. Brown, Benjamin Mann, Nick Ryder, Melanie Subbiah, Jared Kaplan, Prafulla Dhariwal, Arvind Neelakantan, Pranav Shyam, Girish Sastry, Amanda Askell, Sandhini Agarwal, Ariel Herbert-Voss, Gretchen Krueger, Tom Henighan, Rewon Child, Aditya Ramesh, Daniel M. Ziegler, Jeffrey Wu, Clemens Winter, Christopher Hesse, Mark Chen, Eric Sigler, Mateusz Litwin, Scott Gray, Benjamin Chess, Jack Clark, Christopher Berner, Sam McCandlish, Alec Radford, Ilya Sutskever, and Dario Amodei. Language models are few-shot learners. 2020.

[3]Mor Geva, Ankit Gupta, and Jonathan Berant. Injecting numerical reasoning skills into language models. In Proceedings of the 58th Annual Meeting of the Association for Computational Linguistics, pp. 946-958, Online, July 2020. Association for Computational Linguistics.

[4]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. 41714186, Minneapolis, Minnesota, June 2019. Association for Computational Linguistics.

[5]Alon Talmor, Oyvind Tafjord, Peter Clark, Yoav Goldberg, and Jonathan Berant. Leap-of-thought: Teaching pre-trained models to systematically reason over implicit knowledge. 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.

[6]Kelvin Guu, Kenton Lee, Zora Tung, Panupong Pasupat, and Mingwei Chang. Retrieval augmented language model pretraining. In Hal Daumé III and Aarti Singh, editors, Proceedings of the 37th International Conference on Machine Learning, Vol. 119 of Proceedings of Machine Learning Research, pp. 3929-3938, Virtual, 13-18 Jul 2020. PMLR.

[7]Ronald J. Williams. Simple statistical gradient-following algorithms for connectionist reinforcement learning. Machine Learning, Vol. 8, No. 3, pp. 229-256, 1992.

[8]Eric Jang, Shixiang Gu, and Ben Poole. Categorical reparametrization with gumbel-softmax. In Proceedings International Conference on Learning Representations 2017. OpenReviews.net, April 2017.

[9]Andre Martins and Ramon Astudillo. From softmax to sparsemax: A sparse model of attention and multi-label classification. In Maria Florina Balcan and Kilian Q. Weinberger, editors, Proceedings of The 33rd International Conference on Machine Learning, Vol. 48 of Proceedings of Machine Learning Research, pp. 1614-1623, New York, New York, USA, 20-22 Jun 2016. PMLR.

[10]Mathieu Blondel, André F.T. Martins, and Vlad Niculae. Learning with fenchel-young losses. Journal of Machine Learning Research, Vol. 21, No. 35, pp. 1-69, 2020.

[11]A. Jacovi, G. Hadash, E. Kermany, B. Carmeli, O. Lavi, G. Kour, and J. Berant. Neural network gradient-based learning of black-box function interfaces. In International Conference on Learning Representations (ICLR), 2019.

[12]Geoffrey Hinton. Neural networks for machine learning, coursera, lecture $15 \mathrm{~d}$ - semantic hashing : 3:05 - 3:35. https://www.cs.toronto. edu/ hinton/ coursera/lecture15/lec15d.mp4, 2012.

[13]Yoshua Bengio, Nicholas Léonard, and Aaron Courville. Estimating or propagating gradients through stochastic neurons for conditional computation, 2013.

[14]Jambay Kinley and Raymond Lin. NABERT+: Improving numerical reasoning in reading comprehension. https:// github.com/raylin1000/drop-bert, 2019.

## A 提案法のモデルの構造について

ここでは文章 $P$ のサブワード列を $x_{1}, \ldots, x_{N}$ とす る. GenBERT 論文 [3] と同様に，サブワードへの単語分割時に，数として判定されたトークンは “1234” $\mapsto$ “1,\#\#2,\#\#3, \#\#4”というように必ず 1 文字単位で 区切ることにする． $N_{i}$ として,$x_{i}$ から始まるこのよ うな数サブワード列の長さとする（ $x_{i}$ が数でなけれ ば適当に 0 とする). さらに $m_{i}$ は $x_{i}$ が数サブワード 列の先頭トークンであれば 1 ，それ以外 $-\infty$ である マスク定数とする.

## A. 1 数量項抽出モデル

BERT によって文字列 “[CLS] $Q$ [SEP] $P$ ” に対応するサブワード列を走査して得たべクトル 表現の列を $\boldsymbol{h}_{\text {[CLS] }}, H^{Q}, \boldsymbol{h}_{\text {[SEP] }}, H^{P}$ とする.ここで $H^{P}=\left[\boldsymbol{h}_{1}^{P}, \ldots, \boldsymbol{h}_{N}^{P}\right]^{\top}$ とすると, 項抽出スコア $\boldsymbol{s}$ は $\boldsymbol{h}_{i}^{P}$ を一度線形変換してマスクを掛けた

$
\begin{aligned}
& s_{i}^{\prime}=m_{i} \times\left(\boldsymbol{w}^{\arg \top} \boldsymbol{h}_{i}^{P}+b^{\mathrm{arg}}\right), \\
& s=\left(s_{i}^{\prime}+s_{\substack{\prime \\
j=1, \cdots, N \\
j=i+1 \cdots N}}\right.
\end{aligned}
$

であり，式 1 の $A(s)$ は，

$
\begin{gathered}
\left(\hat{x}_{i}, \hat{x}_{j}\right)=\arg \max _{\substack{i=1, \cdots, N \\
\left(x_{i}, x_{j}\right), j=i+1 \cdots N}} s_{i}^{\prime}+s_{j}^{\prime} \\
{\left[\mathbf{1}_{\hat{x}_{i}} \mathbf{1}_{\hat{x}_{i+1}} \ldots \mathbf{1}_{\hat{x}_{N_{i}}} \mathbf{1}_{\hat{x}_{j}} \mathbf{1}_{\hat{x}_{j+1}} \ldots \mathbf{1}_{\hat{x}_{N_{j}}}\right]=A(s)}
\end{gathered}
$

である. 各数量項サブワード列の先頭トークンに付与されたスコア $s_{i}^{\prime}$ を，その項を抽出するかどうかの 判断に用い，もしその数量項が抽出されれば後ろの 連続した $N_{i}$ トークンを項抽出結果として取り出す.本研究ではこの $A(s)$ を微分可能にするために，ST Gumbel-Softmax と同様に誤差逆伝搬時には式 4 の操作に対する Jacobi 行列として Softmax 関数のものを 用いる.

## A. 2 電卓モジュール

電卓の機能 本稿で用いた電卓の二項演算の種類 は，既存研究 [14] を参考に選んだ。2つの数量項を $x, y$ として，以下の 9 つの演算である.
- 和: $x+y,(x+y) \times 100,(x+y) \div 100$
- 差の絶対値 : $|x-y|,|x-y| \times 100,|x-y| \div 100$
- 積 : $x \times y,(x \times y) \times 100,(x \times y) \div 100$

和，差，積に対して 100 倍や 100 で割る場合も考え， これらの計算の結果が整数値ではない場合は，整数 にキャストしたものを計算結果とする。これらの演算を $F_{i}(i=1, \ldots, 9)$ として，以下を推論モデルに 渡す。

$
\left[F_{1}(\boldsymbol{s}) F_{2}(\boldsymbol{s}) \ldots F_{9}(\boldsymbol{s}) \boldsymbol{e}_{=} \boldsymbol{e}_{\mathrm{D}} \boldsymbol{e}_{(} A(\boldsymbol{s}) \boldsymbol{e}_{)}\right]^{\top}=D(\boldsymbol{s})
$

$P$ に数量項が 2 つ以上含まれる場合，スコアの大 きさに依らず常に大きい方から 2 つ抽出し，数量項 の数が 1 つ以下の場合は項抽出をせず，電卓を用い なかったことを表すダミー表現として $\boldsymbol{e}_{[\text {SEP] }}^{\top}=D(\boldsymbol{s})$ とする。

## A. 3 推論モデル (GenBERT)

推論部分 GenBERT $\psi$ は基本的に論文 [3] のものと同 じである．このモデルは，文章内のスパン抽出，質問内のスパン抽出，文字列の生成の 3 つのアクショ ンを持ち，数量項抽出時と同様に BERT $P, Q$ (提案法の拡張ではさらに $D(Z)$ も含む）を入力し，ど のアクションを行うかを $\boldsymbol{h}_{\text {[CLS] }}$ の関数として決定し た後，対応するアクションを $H^{Q}, H^{P}$ の関数として 行うことで答えを予測する。

損失 $\mathscr{L}$ も論文 [3] に従い，各アクションによる予測確率を周辺化したものの対数の負を損失とする.詳細については論文を参照頂きたい。

## B Sparsemax に基づく Jacobi 行列

Sparsemax [9] に基づく $F$ の Jacobi 行列の設計の 仕方を紹介する。ここで $\mathbb{1}_{[\text {(条件)] }}$ は (条件) が満た されるとき 1 ，それ以外 0 とする. $\operatorname{sparsemax}_{i}(s)=$ $\max \left(0, s_{i}-\theta(s)\right) （ \theta$ はある閾値関数）の Jacobi 行列 は以下である：

$
\frac{\partial \text { sparsemax }_{i}}{\partial s_{j}}= \begin{cases}(1-1 / N) \mathbb{1}_{\left[z_{i}>0\right]} & i=j \\ -1 / N \mathbb{1}_{\left[z_{i}, z_{j}>0\right]} & i \neq j\end{cases}
$

ここで,$N$ は $z_{i}>0$ な添字 $i$ の数である.

Sparsemax に基づく方法では基本的な方針は節 5 の Softmax の場合と同じであるが，Jacobi 行列の要素の大きさを上式の Sparsemax 活性化関数に基づ いて設計する。具体的に， $z=\operatorname{sparsemax}(s) 、 N を$ $z_{i}>0$ な添字 $i$ の数として $, d_{i}, d_{i}^{\prime} \geq 0$ を以下のよう に設定する。

$
\left.\{\begin{array}{c}
d_{i}=(1-1 / N) \mathbb{1}_{\left[z_{i}>0\right]} \\
d_{i}^{\prime}=(1 / N) \mathbb{1}_{\left[z_{i}>0\right]}
\end{array}\right.
$

この Jacobi 行列を使った場合の DROP データセッ ト上での結果は $\mathrm{EM} / \mathrm{F} 1=$ 67.3/71.6であり, Softmax による Jacobi 行列を使った場合とあまり差は見られ なかった。
 吉川 将司 1,2 東北大学 1 yoshikawa@tohoku.ac.jp  