「働きたくないイタチと言葉がわかるロボット」


本書は理論言語学自然言語処理の専門家による「AIによる自然言語処理」についての初歩を解説する入門書だ.最近は画像解析や囲碁などの一部の分野での深層学習技術の驚異的な成功により「言語処理なんてディープラーニング使えば簡単でしょ」などという声があちこちから聞かれるようになり,違和感を通り越して危機感を抱くようになった著者による「いやいやそんなに一筋縄ではいかないんですよ」ということを解説する本ということになる.私のような分野外の素人にも楽しく読めるようにと物語仕立てになっているのが特徴だ.ピンカーの自撰論文集を読んでいると言語獲得に関して30年前の連想学習学派との論争がしばしば登場する.私にとって本書は,ディープラーニングはこの構造をどこまで変えたのか(きっと基本的には変わっていないはずだ)という関心から手に取った一冊になる.

本書では怠け者のイタチたちが,魚が上陸するために作ったロボットを見て,これを利用して「命令するだけで後は全部やってくれるロボット」を作って楽しようと考えるところから始まる.そのためにはまずは命令を理解してもらわなければならない.ここから機械に言語を理解させようとするイタチの行き当たりばったりの悪戦苦闘が始まる.著者は言語理解の要素ごとに論点整理を行っている.なお例文の基本言語には日本語が使われている.

言葉が聞き取れるということ

イタチはモグラの開発した聞き取りマシンの説明を受ける.ここでは,同じ音素として知覚されるが微妙に異なる音をどのようにカテゴリーにまとめて処理するか(関数処理として行う),語の認識をどうするか(単語の切り分け,語のつながりのパターンから推測),方言を扱う難しさなどが解説される.これは現代の技術ではほぼ達成されている部分ということになるだろう.なお章末ではこのような機械学習とヒトの子供の学習が本質的に異なっていることについても解説されている.

おしゃべりができるということ

次はカメレオンが開発した会話ができるロボット.会話を楽しむために開発されたそのロボットは,相手の言葉を聞き取り,自分の持つ会話例からその状況での評価ランキングの高い文例を返す.
章末の解説はチューリングテストから始めている.会話を行う機械には,明確な目的(知りたいことの検索など)があるものと,目的のないおしゃべりをするためのものの2タイプがある.チューリングテストはこのうち後者を想定している.判定者を惑わせるポイントは不自然なタイムラグを避けること,いつ話題を変え,どういう話題に移るかのところだそうだ.このタイプの対話プログラムはごく初期のELIZA*1以来の伝統があるところで,現代の練り上げられたプログラム相手ではスレていない判定者に対してチューリングテストをパスするのはそんなに難しくなくなっているようだ.
しかし「会話の自然さ」と「会話の理解」は別のものだということでイタチの苦労は続く.

質問に正しく答えること

イタチが次に出会ったアリのロボットは先ほどの前者の「質問に答えるタイプの会話マシン」になる.ロボットは地理や歴史の知識クイズ,算数の問題に正しく答えるが,リンゴを見せて「これは何でしょう」と聞かれると答えられない.
このタイプのマシンの代表例はIBMのWatsonで,クイズではすばらしい実力を発揮できる.*2.どのように実装されているかについても解説されている.まず質問を解析し,答えのタイプを推測する.次にキーワードから重要単語を選び,データベースから関連の深い答えを抽出し,確信度に基づいて回答する.つまりデータベースの内側の世界についてのみ回答できることになる.
しかし世界は外側に開いている.解説では真に何かについて正しさを確信するにはどこかで外側の世界との対応をみる必要があるのだと説明している.

言葉と外側の世界を関係づけられること

リンゴの問題を解決するためにさまようイタチが次に出会うのはフクロウのロボットだ.フクロウのロボットは画像解析により画像と言葉を連携させる.画像は外側の世界との関連づけを可能にする.言葉の意味はイメージだと考えれば,これこそ言葉の理解ということになる.
フクロウのロボットはまだわずかなものしか識別できない段階だった.どんなでも識別できるようになるには大量のデータが必要だとフクロウにいわれ,イタチは適当にデータを集めて入力するが,果たしてうまくいかない.放り込むデータのいい加減さによってどのようにでたらめな結果が出るかのところは詳しく描写されていてなかなか楽しい.
解説では,画像解析の近年の進展はディープラーニングによるところが大きいと指摘され,ディープラーニングの基礎が説明されている.ポイントは連想学習の層を何段にも組んで大量のデータから学習させるところにある.するとどの層にどのようなことをさせようという設計がなくとも自動的に層と解析の要素が対応してうまく働くようになるのだ.解説ではさらにこれが「画像が対応する言葉の意味を理解したこと」になるのかどうかという哲学的な議論も扱われていて面白い.ここでは抽象的な言葉を余計な要素なく具体的な画像にすることは難しいこと,機能語などそもそも画像にすることが困難な言葉があること,さらに「文」を画像にすることは絶望的であることなどが指摘されている.要するにロボットにセンサーをつけただけでは問題は解決しないのだ.

文と文との論理的な関係がわかること

イタチはほかの動物たちにさんざん迷惑をかけてきたことから,被害者の会を結成した動物たちに糾弾され,ついに賠償として労働奉仕をさせられることになる.なにををやらせるかについて動物たちは相談し,それぞれのロボットの不満は最終的に文と文との論理的な関係を判断できないことから生じていることに気づく.そこで,前提と結論の2文を入力として,真,偽,判別不能を回答できるロボットの開発をイタチにやらせることに決まる.例題1000問を与え,それができるようになる機械を持ってこさせて,次に別の例題1000問を捕かせて仕事が完遂できたかどうかを判定するというシビアな条件が付された.
解説では論理学の歴史が扱われていて,ここも楽しい.古代ギリシア以来,推論にはパターンがあることが知られており,論理学はこのパターンを数多く身につける学問ととらえられてきた.しかしパターンには限りがなく,19世紀になり推論パターンを計算によって定義する「数理論理学」が起こる.そのポイントは包含関係の認識になる.
またここでは,このような論理推論の阻害要因も感情,間違い,定義,隠れた前提,曖昧性と整理されている.

文と文との関係がわかること その2

イタチはまず「2文に共通の単語があるかないかで判定する」などの安直なアルゴリズムから始める.正答は1割にも満たない.それではいかんともしがたいので,タヌキの助けを借りながら,推論パターンの取り込み,パターンへの当てはめのための変形,文の構造解析,前提知識などを入れ込んでいく.しかし推論パターンには限りがなく,多義的な解釈可能な文もあり構造解析は難しいし,前提知識もどこまで取り込むか悩ましい.
そこで制限時間内で何とかするために,必ずしも論理的に正確ではないが,2文の類似性により判定するという方法が浮かび上がる.

単語の意味について知識を持っていること

類似性を判定するにはどうすればいいか.イタチはまず辞書をそのまま機械に放り込むことにする.しかし機械はなにを聞かれてもうんともすんともいわない.イタチはオコジョに辞書データは機械にわかるように整理し,<項目><語義>などのタグ付けをしなければならないことを教わる.さらに上位・下位,全体・部分,反対語などもタグ付けすると機械の成績は上がり,Wikipediaのようなオンラインデータベースも使うようにすると600問近く解けるようになる.
ここでの大きな問題は「多義語」とデータベースの抜けの問題だ.ある文でその語がどの意味で使われているかがわからなければ正答率は上がらないし,既存のデータベースにはどうしても漏れや不得意分野がある.
ここでイタチは行き倒れになっているメガネザルを助け,メガネザルからビッグデータから周辺にある単語の分布をベクトル処理し,そこから自動的に同義語や類似語の情報を取るという手法を教わる.これで正答率はようやく7割に達した.しかしこの手法では反対語は扱いにくい.機能語も難しい.
メガネザルは次に文を丸ごとベクトル処理するという案を提示する.しかしそれには例題が最低でも数十万は必要だという.イタチはくじけそうになるが,クラウドソーシングで例文を調達することにする.

話し手の意図を推測すること

クラウドソーシングで50万の例題を入手して機械に放り込んだところイタチの機械の正答率は95%以上に跳ね上がった.別の例題でも95%以上の正答率を叩き出し,ほかの動物たちは大喜び,早速その機械を買い取って使い始めた.
しかし実際に使ってみると問題は山積みだった.最初は集めた例題の質の問題かとも思われたが,結果的にそれは問題なかった.使えるようなものにならなかった最大の要因は,会話における話し手の意図の解釈にかかるものだったのだ.多義語(特に機能語),名詞句の指示内容の曖昧性,多義的な構文,さらには「会話的含み」いわゆる語用論としての話し手の意図の推測という問題は,イタチの機械では解決できないのだ.
これは現在のAIによる言語理解にかかる最大の課題ということだろう.最終章では,その課題についての取り組みの現状が語られる.

その後のイタチたち

返品の山となり,代金をイタリア旅行に使い果たしてしまっていたイタチたちは,結局またも労働奉仕で債務を払うことになる.彼らは何グループかに分けられて,「語義の特定」「名詞句の指示の切り分け」「重要語句の意味的影響範囲の特定」「会話の意図の解明」「常識の収集」,そしてその結果のタグ付け作業を延々とやらされることになった.しかしそれぞれの作業は微妙なところが難しい.この「悪魔は細部に宿る」部分の物語はなかなか読ませる.
その地味で難しい作業がほとほといやになったイタチは,作業の自動化ロボットを求めて旅立ち,ついにインドでカワウソの作業ロボットみつける.大喜びでロボットを持ち帰って作業させてみると,イタチたちはまたも細部に宿る悪魔に翻弄されることになる.画像データにはどうしても関連のない写り込みが混入している.大量データにはゴミの混入が避けられないのだ.抽象的な常識,否定のはいった常識の収集も難しい.一部の文化特有の常識も混入不可避だ.結局イタチは手作業での修正に追われる羽目になる.そして物語はこの修正作業をするロボットを求めてイタチがまたも旅立つところで終わっている.


この最終章の解説では現在のAIの言語理解の課題について次の3つにまとめ,それぞれの困難さが説明されている.

  • 機械のための「例題」や「知識源」となる大量の信頼できるデータをどう集めるか.(データの収集)
  • 機械にとっての「正解」が正しく,かつ網羅的であることをどう保証するか.(データの設計)
  • 見える形で表しにくい情報(話し手の意図を含む)をどうやって機械に与えるか.

そして著者の結論は「大量データの機械学習という方法の延長線上で言語を理解する機械を実現するのはきわめて難しい」というものだ.


最後に著者は,「では何故人間はいとも簡単に言語を理解できるのか」という私のような読者にとって興味深い謎について,それを答えるのには知識と能力が不足しているがと留保しつつ次の3点を指摘している.

  • 人間の言語習得は,生まれた後に接する言葉だけを手がかりにしているわけではない.「生まれ持った能力」が関わっていると考えられる.これはある意味進化の過程で培われてきた本能的な能力の一部と考えて差し支えないだろう.
  • 人間は言葉についてメタな認識(言葉というのは何かを表すものであるなど)を持っている.
  • 人間は「他人の知識や思考や感情の状態を推測できる能力」を持っている.

1点目と2点目はある意味一つにまとめられるだろう.古くはチョムスキーの生得文法,そしてピンカーの洞察による適応としての言語本能がヒトには生得的に備わっているという指摘だ.そして3点目はいわゆる「心の理論」の問題だということになるだろう.

本書はAIによる言語理解の現時点での到達点を,面白い寓話に乗せてわかりやすく解説してくれる本だ.そして最初の私の本書の読書動機に戻れば,「ヒトの言語獲得は大規模連想学習によるものとは異なるものだ」という結論は動かないことを納得させてくれた本でもある.
そして本書の最大の魅力は,その(ヒトとは異なる)手法による言語理解をビッグデータとコンピュータパワーで行おうとしたときに,どんな難しさがたち現れるのかの詳細が解説されているところだ.まさに悪魔は細部に宿っているのだ.そしてそれぞれ大変興味深い.個人的には大変楽しい読書体験だった.

*1:当時は音声処理はなくすべてテキストベースだったが,ツボのところは同じだろう.

*2:解説にはないが,おそらくSiri, Alexa, Google Assistantなども同じような例と考えていいのだろう