計算知識が必要な問題には文字レベルの情報を用いた単語分散表現の獲得が有効であると示したニューラルネットワークを用いた現在の自然言語処理において、文書中に含まれる数字の足し算や比較といった計算を必要とするような問題を解くことは難しいと言われています。した数値の大小や四則演算といった計算のために必要な知識はnumeracy(数値や計算に関する基礎知識)と呼ばれ、本記事では「計算知識」と呼ぶことにします。弊メディアでも以前、ニューラルネットワークの計算知識に関する話題に触れており、計算知識を要求する問題を多く含むようなQAタスクのデータセット「DROP」を作成することで、ニューラルネットワークが問題を解けなくなってしまうと紹介しました。一方で今回紹介する論文の著者らの調査によると、このDROPデータセットのうち「数値どうしの比較」や「最大の数値を抜き出す」といった計算知識を必要とする問題において、ニューラルネットワークの正答率が高いことがわかりました。ニューラルネットワークにはすでにある程度の計算知識が獲得されているということが示唆されたのです。著者らは、自然言語処理で広く使われている単語分散表現を学習した時点ですでに計算知識が獲得されていると考え、いくつかの実験を行いました。様々なタスクで有効であるとされている単語分散表現BERTは、計算知識の観点で評価すると性能が低いことも示されています。「71」や「seventy-one」という単語に対応する分散表現から71.0という実数値を推定するタスクを-500~500の範囲で学習したときの予測結果が下図に示されています。図よりBERTは他の単語分散表現に比べて推定の精度が粗いことが確認できます。このように、単語分散表現を計算するモデルによって計算知識の獲得度合いに差があることが分かってきました。本記事では、ニューラルネットワークと計算知識について、主要な実験を引用しながらご紹介します。横軸が「seventy」「71」といった入力単語に対応する数値、縦軸が単語から予測された実数値を示す。単語から対応する実数値を予測する単純なタスクにも関わらず、単語分散表現による計算知識の差が確認できる。実はニューラルネットワークは数値を扱えている?以前弊メディアで紹介したDROPというデータセットでは、「ニューラルネットワークを用いたモデルでは計算知識や数値の処理を必要とするQAタスクを解くことができない」という仮定に基づき、計算知識を要求する問題を多く含むQAデータセットを作成しました。このDROPというデータセットを作った著者らは、同時にベースラインとなるニューラルモデル(NAQANet)を提案しており、作成したデータセットでの性能がF1値で49.2%であることを示しています。人間による回答結果の精度が96.0%であることを考えると、自然言語処理において数値を扱うニューラルネットワークはまだまだ改善の余地があると主張しています。このデータセットに含まれる問題のうち「回答のために計算知識を必要とする問題」に限定すると、ニューラルネットワークによる回答の性能はむしろ良好であることが分かりました。questions)」のどちらかの計算知識を必要とする問題を選別し、それらに対するニューラルネットワークの性能を確認しました。それぞれの計算知識を必要とする問題の例は上の表の通りで、例えば「(ある記事に対して)ブラジルとウルグアイではどちらの輸出額が多いか」という質問は、数値の比較をしたうえで(Comparative)二者から一つを選択する(binary)問題です。「(ある記事に対して)20ヤード以上のタッチダウンをした選手は誰か」という質問は複数の選択肢から一つを選ぶ必要があるため、Non-binaryな質問としてbinary問題とは区別されています。上記のように問題を区切った時、DROPのベースラインモデルであるNAQANetはComparativeな問題で76.4%、Superlativeな問題で67.7%のF1値であることが示されました。これは(人間の96.0%からは劣りますが)データセット全体の49.2%という数値と比較すれば決して悪くない性能であると言えます。このことから、DROPデータセットでニューラルネットワークの性能が低いのは、計算知識ではない別の数値的な問題が理由であると考えることができます。同時に、ニューラルネットワークがこれまで考えられていた以上に計算知識を獲得できているということも分かりました。単語分散表現は計算知識を学習できている?ベースラインモデルはなぜ計算知識を必要とする問題を解くことができたのでしょうか。これの答えとして筆者らは「QAタスクの学習のために事前学習した単語分散表現が、すでに計算知識を学習しているのではないか」と考えました。QAタスクのようにニューラルネットワークを用いた自然言語処理の応用タスクでは、Word2VecやELMo、BERTなどのモデルを用いて単語分散表現を事前学習することが一般的です。これらのモデルで学習された単語分散表現が計算知識を含んでいるために、NAQANetは計算知識を必要とする問題を効率良く解くことができたと考えられます。どのようにして「単語分散表現に計算知識が含まれているか」を調べたらよいでしょうか。その単語分散表現を用いて計算知識を必要とする単純なタスクを学習したとき、もし単語分散表現に計算知識が含まれているのであればランダムに初期化した単語分散表現よりも良い性能が得られるはずです。そこで、事前学習された単語分散表現を用いて次の三つのタスクを学習し、その性能を比較してみます。Maximum)数値表現を、数値型に変換するタスク(Decoding)二つの数値表現の足し算を行うタスク(Addition)それぞれのタスクは、以下のモデルを用いて学習されます。図右のAdditionタスクでは、文字で書かれた二つの数値表現「seven」と「two」の単語分散表現を入力とし、多層パーセプトロン(MLP)を用いて足し算の答えである9.0が出力となるような訓練を行います。この時、単語分散表現が計算知識を学習できているのであれば効果的な学習ができるため、その性能も高いものになると考えられます。Embedder)として、有名なWord2Vec、GloVe、ELMo、BERTの四つを用いて比較します。下表は実験の設定と結果をまとめたもので、0~99、0~999、0~9999の三つの数値の範囲でそれぞれ学習・評価を行った数値が掲載されています。Embedding)での学習結果も掲載されています。ランダムに初期化した単語分散表現に比べて、ELMoやBERTなどの事前学習手法は精度よく各計算タスクをこなせていることがわかります。このことは、ELMoやBERTなどのモデルによって学習された単語分散表現がある程度の計算知識を獲得しており、さらに複雑な計算知識を要求するQAタスクにおいてもその知識を応用できることを示唆します。一方で、単語分散表現の事前学習を行うモデル(Pre-trained)の中ではBERTの性能が著しく悪い点も特筆すべき傾向です。学習や評価に用いる数値の幅を大きくしていくことで、他の事前学習モデルに比べて激しく性能が低下していくことも確認できます。これはBERTがサブワードと呼ばれる単位で分割されたトークンを用いて学習しているためで、パターンの多い数値表現の全てを効率よく表現できていないことが原因であると考察されています。このことを裏付けるように、文字レベルの情報を単語分散表現に盛り込んでいるELMoは、他の事前学習モデルに比べて性能が良いことが確認できます。文字の情報だけを使って各タスクの学習を行う「Char-CNN」や「Char-LSTM」という手法は安定して高い性能を示しています。これは数値の性質上、どの位置(桁)にどの数字があるかという情報を明示的に扱えるモデルの方が、数値の大小を扱いやすいという事実に起因していると考えられます。まとめ以上の実験から、本論文では事前学習された単語分散表現がある程度の計算知識を獲得していることを示しました。小さい数値と大きい数値は出現する文脈に差があるため、単語分散表現もそれを反映したものになるということは驚くことではありません。ランダムに初期化した単語分散表現と比べた時の性能の差や、単語分散表現ごとの差の大きさには目を見張るものがあります。これまで多くのタスクに流用され有効であるとされてきたBERTが、計算知識の側面からはELMoなど従来の手法に劣ることという事実も、面白い結果といえます。一方で、文字レベルの情報を利用することで計算知識の獲得がスムーズになるという実験結果も、(数値の性質上当然ではありますが)示唆に富むものであると言えます。ニューラルネットワークは学習データに含まれる範囲でしか計算知識を獲得できないことも分かりました。本記事の最初に掲載した図では、学習範囲である-500~500を超えた入力に対しては、ほとんど正解の数値を当てられないことが示されています。数値の取り扱いは、ニューラルネットワークをビジネスの現場に取り入れて行く上で障壁となる問題の一つと言えます。自然言語処理において数値を扱う場面は、間違うことが許されないような場面でもあります。今後こうした問題に取り組む際には、本論文で示された実験結果を参考にし、数値の特性をうまく捉えられるような単語分散表現を利用することが重要です。2019この記事をシェアするLINE記事の内容等について改善箇所などございましたら、お問い合わせフォームよりAI-SCHOLAR編集部の方にご連絡を頂けますと幸いです。この記事を書いた人tat博士後期課程で自然言語処理の研究をしています。Dee...モデルの脆弱性・様々な精度はデータセットの「粒度」でわ...Googleが公開した自然言語処理の最新技術、BERT...低解像度ビデオもすぐに高解像度に変換できる超解像アルゴ...AI×絵師!彩ちゃんの裏側!...BERTはまだまだ進化する!軽くて強いALBERTが登...MuZeroの衝撃。囲碁のルールを自ら学習しAlpha...深層学習×マルチモーダル。Dee...低解像度ビデオもすぐに高解像度に変換できる超解像アルゴ...モデルの脆弱性・様々な精度はデータセットの「粒度」でわ...AI×絵師!彩ちゃんの裏側!...Googleが公開した自然言語処理の最新技術、BERT...単語の挿入と削除を用いた新時代の文生成手法が登場...メタ学習の欠点を克服?教師なし学習とメタ学習を組み合わ...MuZeroの衝撃。Dee...MuZeroの衝撃。お取り扱いについて株式会社wevnal(以下「当社」といいます。)は、AI-SCHOLAR(以下「本サイト」といいます。)をご利用になる方(以下「ユーザー」といいます。)を遵守すると共に、以下のプライバシーポリシー(以下「本プライバシーポリシー」といいます。)に従い、適切に取り扱うものとします。本プライバシーポリシーにおいて、個人情報とは、生存する個人に関する情報であって、当該情報に含まれる氏名、生年月日その他の記述等により特定の個人を識別することができるもの(他の情報と容易に照合することができ、それにより特定の個人を識別することができることとなるものを含みます。)を意味するものとします。当社は、ユーザーの個人情報を、以下の目的で利用いたします。当社は、ユーザーの同意を得て、以下の提供先に、以下の提供情報内容を以下の手段又は方法で提供することがあります。(1)提供先について登録ユーザーが本サイトにおいて資料の請求、閲覧もしくはダウンロードする場合、その資料の提供元である本サイト掲載企業(当該提供元企業から委託を受けた者を含みます。所属企業ではなく、企業に所属する個人が提供元である場合もあります。)に、以下の情報が提供されます。電磁的な方法による送信また、次に掲げる場合は、関係法令に反しない範囲で、ユーザーの同意なく個人情報を第三者に提供することがあります。一部または全部を外部委託することがあります。委託先における個人情報の取扱いについては当社が責任を負います。当社は、個人を特定できないよう加工した統計データを作成することがあります。当社は、統計データを何ら制限なく利用することができるものとします。して、ユーザーご本人に限り、個人情報の開示、訂正、追加または削除、利用停止、ならびに第三者への提供の停止(以下「個人情報の開示等」といいます)を求めることができるものとします。以下の場合は個人情報の変更等に応じないことがあります。他の法令に違反することとなる場合また、当該個人情報の変更等に多額の費用を要する場合、その他の、個人情報の開示等を行うことが困難な場合であって、ユーザーの権利・利益を保護するため必要なこれに代わるべき措置をとるときは、個人情報の変更等に応じないことがあります。当社サービスは、Cookie及びこれに類する技術を利用することがあります。これらの技術は、当社による当社サービスの利用状況等の把握に役立ち、サービス向上に資するものです。Cookieを無効化されたいユーザーは、ウェブブラウザの設定を変更することによりCookieを無効化することができます。Cookieを無効化すると、当社サービスの一部の機能をご利用いただけなくなる場合があります。当社は、法令等の定めがある場合を除き、必要に応じて、本プライバシーポリシーを変更することができるものとします。プライバシーマークに関して当社は、プライバシーマークの認証を取得しています。パスワードをお忘れの。