深層学習による自然言語処理の進展

2019/01/18

10/26 Track1 13:00-14:30

黒橋 禎夫 Kurohashi Sadao

京都大学大学院情報学研究科教授
1994年京都大学大学院工学研究科電気工学第二専攻博士課程修了。博士(工学)。2006年4月より京都大学大学院情報学研究科教授。自然言語処理、知識情報処理の研究に従事。自然言語処理に関する大型プロジェクトを研究代表として推進するとともに、2016年よりJSTさきがけ「新しい社会システムデザインに向けた情報基盤技術の創出」の研究総括を務める。言語処理学会10周年記念論文賞、同20周年記念論文賞、文部科学大臣表彰科学技術賞等を受賞。日本学術会議連携会員(2014~)。


報告者:河野 弘毅(JTFジャーナル編集長)

 


 

 講演の冒頭に司会者であるJTF隅田理事から長尾真先生の文化勲章受賞が速報された。長尾真先生は日本における機械翻訳研究のパイオニアであり、講演者の黒橋先生は長尾先生直系の最後の弟子でもある。
 黒橋先生は本日の講演では機械翻訳より広い自然言語処理全般をテーマとすることを最初に述べ、この領域では音声翻訳機や動画に対するコメント生成などが実現していることに触れた。会場に対してどのくらい自然言語処理について知っているか簡単にアンケートした後、自然言語処理の研究者は実は翻訳者からの厳しい評価をこわいと思っていたりするけれど、ニューラル翻訳が良くなってきたのでご意見いただきたい、と挨拶した。

自然言語処理の難しさと歴史

 自然言語処理の難しさは意味解釈のあいまい性にある。人間は文脈からほぼあいまい性すら感じずに解釈できてしまうが、言語を記号として処理していた当時はこのあいまい性が解釈できず大変だった。ここで業界で有名な「外国人参政権」(©黒橋禎夫)のトピックを紹介。ニューラルになってからこのあたりの大変さが若干減ってきた。
 続いて1965年から2018年にいたる自然言語処理の歴史をスライドで紹介。自然言語処理の課題は「コンピュータに知識を与えること」と「コンピュータに知識を使いこなす方法を与えること」の二点だと整理できるが、前者はビッグデータとウェブの出現によって満たされ、後者は近年の深層学習の飛躍的発展によって解決されつつある。コーパスサイズの指数的増加にともない言語解析の精度は右肩上がりに向上する。チェスや囲碁の世界ではAIが最強の人間に勝つようになっており、カーツワイルが提言した技術の収穫加速の法則を例証している。

ニューラルネットワーク入門

 ニューラルネットワークの各ノードは神経細胞をモデル化したもので、ウェイト(重み)を変えることで同じノードがANDゲートにもORゲートにもなる点がポイント。ネットワーク全体では何十万、何百万のパラメータを持っているため人間が手動で調整するのは不可能だが出力と教師信号の誤差に基づいて自動的に重みを更新できる誤差逆伝搬法というアルゴリズムがあり、学習データを与えて百万回単位の更新処理を繰り返すことで最終的に望ましい重みの分布を学習できる。この方法でニューラルネットワークは画像処理や自然言語処理をはじめ多様な用途に対応できる。

語の意味表現

 文脈が似ている単語は表現する意味も類似しているという「分布仮説」の考え方は以前から知られていたが、ニューラル以前の記号処理の時代には困難だった意味の計算がニューラルでは柔軟にできるようになった。共起確率に基づくベクトル表現がたとえば5~10万程度の高次元で疎(スパース)なものになるのに対して、ニューラルネットワークではたとえば300程度の低次元のベクトルで圧縮して表現できる(word embedding)。この考え方を実装したword2vecは、たとえばBerlin - Germany + France ≒ Parisのように意味を示すベクトルを演算して有意の結果が得られることで関心を集めた。

RNNと言語モデル

 言語モデルとは、ある単語列をみたときに次の単語が何になるかを確率にもとづいて推察する方法であると説明できる。前出の例で言えば「外国」の後に「人参」はこないと推察できる。言語モデルは従来「n-gramモデル」が使われたがデータが少ないと精度が上がらなかった。かわって登場したニューラルネットワークでは入力層と出力層を行列で結ぶ。そこに一個前の状態をいれるようにしたのがRNN(再帰型ニューラルネットワーク)。一個前の情報の中に二個前の情報もあるから、結局これで過去を反映できる。単語の並びは時系列にみたてることができるから自然言語はRNNで表現できる。この手法により、従来は三単語程度しか考慮できなかった「過去」の情報をずっとうまく活用できるようになった。
 従来のn-gram言語モデルを用いた形態素解析では少数の単語からなる分割のほうがより確からしいと解釈するのが一般的であったために「外国|人|参政|権」よりも「外国|人参|政権」を優先させる誤りの再生産に陥ることがあったが、RNN言語モデルを用いた形態素解析では単語を意味的に汎化したベクトルとして扱うことで自然な意味の単語系列のほうが妥当であると推定して優先させ誤りを避けることができる。

文の意味表現

 RNNは文の意味表現にも活用できる。ある文を前から後ろに向けて処理して中間層を形成するのに続けて、同じ文を後ろから前に向けて処理してその中間層も形成する手法(BiLSTM)が有効である。前向きの中間層と後ろ向きの中間層を合わせたものがそれぞれの単語のこの文における意味だと解釈すると、その結果は様々なタスクに使うことができる。たとえばあるコメントが肯定的か否定的かの判断に使えたりする。記号的にこれをやろうとすると大変。
 また、従来はいろいろな素性を手がかりにしても苦労していた構文解析においても、BiLSTMを使うことで従来より精度が上がった。従来手法(JUMAN/KNP)は約92%が限界だった精度がニューラルの中間表現を使ったモデル(JUMAN++/NKNP++)では約95%まで向上した。文にはどちらにも解釈できる場合が約2%は残るとみられるので構文解析の上限は約98%と考えられるが、現在の技術はかなりこの上限に迫ってきた。画像処理の世界では顔認識の精度がすでに人間を超えているが構文解析においても近い将来に精度が人間に並ぶだろう。

ニューラル機械翻訳

 ここまでは自然言語処理の範囲での解説だったがこれをふまえて機械翻訳を解説する。まず機械翻訳の歴史をスライドで説明。1981年にアナロジーに基づく翻訳(長尾先生)、1991年に統計に基づく翻訳(IBM)、2014年にニューラルネットワークによる翻訳(Bahdanau他)の手法が登場した。最初のニューラル機械翻訳は入力部分であるエンコーダーと出力部分であるデコーダーをくっつけただけの簡単な構成であまり高い翻訳性能がでなかったが、前向きと後ろ向きの中間層をつなげる手法と次の出力をだすときに注目すべき場所をアテンションで示す手法を採用したことで現状に近い水準にまで翻訳精度が改善され、2016年のGoogle NMT登場に至る。
 京都大学ではJSTとともに日中翻訳エンジンを開発する5年間のプロジェクトに取り組んでいたが、そこでもニューラル機械翻訳を採用した。そのプロジェクトのために使った対訳コーパスの一部は現在公開されている。

End-to-End学習

 入力と出力のペアとなる大きなデータを与えてニューラルネットワークをトレーニングする仕組みを「End-to-End学習」と呼ぶが、ニューラル機械翻訳はこの仕組みと相性がよいテーマである。おもしろいのはこの枠組をほとんど変えずに言語と言語の関係でなく数値と言語の関係を与えることで、たとえば数値データを与えて天気予報コメントを自動生成する処理や動画からその動画を説明する文を自動生成する処理も実現できること。これは以前にはとても考えられなかった。

知識に基づく構造言語処理

 この先のテーマとして現在、もっと知識を使いこなす推論を含む研究に取り組んでいる。ゴールイメージとしてたとえばリチウムイオン電池を検索してでてくる情報からその知識インフラを構造的に生成させる。これはEnd-to-End学習ではできないので構造的なアプローチが必要になる。自然言語処理において格解析・照応省略解析・同義語認識などの課題は深層学習の適用で精度の飛躍的改善が実現できる。自然言語処理の研究者はこれまでそれらの基礎的な課題に長い時間を費やすことを余儀なくされてきたが、いま、深層学習のおかげでそれらの基礎的な課題が克服されて、因果関係知識・推論・感情のモデル化などを取り入れたより複雑な知識処理を実現する展望がひらけており、これからやっとおもしろいことができる、と楽しみにしている。