人工知能と意味の形式的理論

2019/01/08 マルレク 「人工知能と意味の形式的理論」概要

セミナーへのお誘い

人工知能研究の大きな課題の一つに、意味の理解をどのように機械上で実現するかという問題があります。

講演では、まず、この分野で、現時点で一定の成功を収めている三つのアプローチを紹介します。

第一は、Amazon Alexa, Google Home 等のボイスアシスタント・システムで多く利用されている、ヒューリスティックなアプローチです。そこでは、チューリング・テストをパスすることを意識した、意味のプラグマティックで「操作主義的」理解が中心にあります。

第二は、Google等の大規模な検索エンジンやDiffbot等が利用している。Knowledge Graph的なアプオーチです。グラフの規模の大小はあるのですが、そこで中心的な役割を果たしているのは、「エンティティ・モデル」です。

第三は、Googleニューラル機械翻訳の成功に刺激を受けた、「機械翻訳技術」の発展と普及を背景としたアプローチです。そこでは、大規模なパラレル・コーパスを大規模なハードウェアを利用して「学習」が行われます。

講演の後半は、現在の実装技術の紹介を目的とした前半と切り口が異なります。「意味の理解」は、「意味」についても「理解」についても、新しい枠組みが必要だというように、丸山は考えています。また、そうした理論は形式的なシステムで記述できるとも考えています。

次のような話をします。

  • 文法の構造と意味の構造の対応、あるいは二つの構造の「二重化」の必要について。
  • 理論とモデル。数学での意味の扱いに学ぶ。
  • ローヴェールのFunctor Semantics
  • 新しい「型の理論」

講演資料「はじめに」から

人工知能技術にとって、自然言語の意味の理解は、重要な課題である。小論は、自然言語の意味を形式的に把握しようという試みを概観したものである。
第一部では、まず、現在の主要な三つの自然言語処理技術の現状を紹介し、あわせて、言語の意味理解にフォーカスして、様々な取り組みを取り上げた。
こうした技術を評価する上で、筆者の取っている基本的な視点は、次のようなものである。

残念ながら、文が語から文法に基づいて構成されることは、現在主流の自然言語処理技術では、ほとんど考慮されていない。文法性の認識がないのでは、文の意味の構成性の認識を持つことは難しい。
ただ、文の意味の構成性の認識なしにでも、意味については考えることができる。一つには文を構成する「語の意味」、もう一つには「意味の同一性」に基づく「意味の共通表現」の模索である。第一部の後半では、これらの取り組みを取り上げた。
「語の意味」の表現では、その客観性・共通性を「実在」の関係に基礎をもつOntology、語の利用の頻度の統計的分析に帰着させるWord2Vec的「分散表現」、辞書項目に諸特徴を枚挙するスタイル、 conceptual spacesを構成するアプローチ等多様な試みが行われている。

「文の意味」の表現については、論理式(あるいは、ラムダ式)による表現と多次元ベクトルによる分散表現の二つがある。後者は、実装者にはそういうものとしては、あまり自覚されていないようにみえるのだが。
機械翻訳技術の成功は、二つの言語の意味の「共通表現」を多次元ベクトルによる分散表現として抽出しているところにあると筆者は考えている。もっとも、語の意味も、文の文法性も、このアプローチでは、直接には考慮されていない。
筆者は、論理式による表現が「好み」なのだが、文から論理式への還元は、文法に応じて様々の流儀がある。この点で最もスマートなのは、CCG (Combinatory Categorial Grammars)のやり方である。このアプローチは、決して最新の技術ではないのだが、第三部で取り上げることにする。

筆者の基本的な問題意識は、文の文法に基づく構成性と文の意味の構成性とを結びつけることである。
第三部で紹介するCCG (Combinatory Categorial Grammars)と、DisCoCat(DIStributional COmpositional CATegorical)は、こうした要請に応える言語理論だと、筆者は考えている。
文と意味の構成性(Compositionality)は、言語理論の形式性の基礎である。それは、数学的には、文法と意味はカテゴリーとして記述できるということに、ほぼ等しいのだ。
第二部は、第三部の準備として、LambekのPregroup Grammarの紹介とLawvereのFunctor Semantic の初等的な解説にあてた。

第一部 自然言語処理技術と意味理解の試み

現在の自然言語処理技術と三つの主要なモデル

Intentモデル

Alexaなどのパーソナル・アシスタントに利用されているモデル。
「チューリング・テスト」やサールの「中国人の部屋」と同様の操作主義的な「知性」の解釈
人間の側の発話の意図を機械が把握し、その意図に応えて正しく反応するのが、機械にとっての「意味理解」。
Syntax-Semantics-Pragmaticsの階層でのPragmaticな(「語用論」的)意味の理解。具体的には、
 命令文 ー 命令された動作を行えばいい
 疑問文 ー 答えを与えればいい ー>検索を実行
実装が容易。ある種の「型システム」を導入している。(後述)

Entity モデル

Google/MS等の大規模検索や知識表現/検索に利用されている、情報をEntityの構造に対応させる技術。
あるものの「意味」は、対応するEntityが持つ「情報」として解釈される。
Entityは、現実のものであれバーチャルなものであれ、具体的なものであれ抽象的なものであれ、概念としては「実在するもの」とみなされる。ある種の概念実在論。
Entityの構造が表現するものは、実在的なものの構造の反映であるので( Ontology )、言語表現からは独立な、かつ、全ての言語で共通な情報を与えうる。
明確な「型システム」。
多くの実装は、Schema.orgのスキーマ定義に依存している。

機械翻訳モデル

機械翻訳に利用されるモデル。基本構成は、Encoder-Decoder + Attention。
Intentモデル、Entityモデルとは異なって、Encoderが出力する文の意味の表現モデルを内部に持つ。それは、語の意味の表現モデルとしてのword2vecと同じく、多次元のベクトルで表現されている。意味の分散モデル。
ニューラルネットは、文法を学習する能力を持つ。Attentionのメカニズムは、おそらく異なる言語間の文法の差異を吸収する役割を果たしている。
文の意味を表現する能力、文法を理解する能力を持つにも関わらず、その能力は、そうしたものとしては外部に取り出すことはできない。この技術を、翻訳以外の用途に転用するのは、難しい。

意味の表現をめぐる様々な試み I -- Deep Learningの側から --

  • Word2Vec
  • Scene Graph
  • Image Sentence Mapping

意味の表現をめぐる様々な試み II -- 意味の論理的な表現の試み --

  • Minimal Recursion Semantics
  • Deep parsing in Watson

第二部 構成的意味理解への予備的アプローチ

この第二部は、文の構成性と意味の構成性の双方の性質をあわせ持つ言語理論を紹介する第三部の理論的フレームワークの予備的導入である。
第一に、文法理論の新しい定式化として、LambekのPregroup Grammarが紹介される。筆者はそれを、言語学でのチョムスキーのMinimalist Programと、同じ内容、同じ指向性を持つものとして捉えている。
第二に、意味の理論、認識の理論にとって、本質的に重要な役割を果たすと筆者が考えている、認識へのモデル論的アプローチが紹介される。LawvereのFunctor Semanticsは、第三部のDisCO意味論の直接の基礎である。

Minimalist ProgramとCategorial Grammar

Lambek vs Lambek Categorial GrammarとPregroup Grammar

The mathematics of sentence structure

From word to sentence:a computational algebraic approach to grammar

理論とモデル

意味の二項性

ある二つのものの関係の中で、あるものを考えるのは、あるものだけをじっと見ているより、普段は気づくことのないものへの気づきが生まれると僕は考えている。
意味についてのアプローチは、様々あるのだけれど、ソシュールのシニフィアン(signifiant:意味するもの)とシニフィエ(signifié:意味されるもの)にしても、オグデン=リチャードの「意味の三角形」の「シンボル」と「指示するもの」「指示されるもの」にしても、こうした「二項関係」が基本になっている。(三角なのに二項なのかにというツッコミは、あとでこたえる)
こうした二項関係は、もっと深いところでは、「主体」と「客体」、「認識するもの」と「認識されるもの」という認識の構造そのものに基礎を持っている。

講演資料 第一部と第二部 (ダウンロード

第三部 意味の形式的理論の現在

CCG (Combinatory Categorial Grammars)での Semantic Parsing

CCGでは、語からの文の構成と意味の構成が、同時に、論理的な証明図式の形で行われる。とてもエレガントで強力なアプローチである。
語彙項目に、文法的な情報をCategory文法の「型」として、また意味論的な情報を「ラムダ式」として、その双方を持たせることによって、文と意味の構成を同時に行なっている。
意味の表現は、ラムダ式で分散表現ではない。
理論的な基礎は、Curry-Howard対応である。Curry-Howard対応については、2013年のマルレク「 「型の理論」と証明支援システム — Coqの世界」 https://goo.gl/UMmKSB を参照してほしい。

DisCoCatDIStributional COmpositional CATegorical 意味モデル

Category論とFunctor Semanticsの言語理論への応用 

WHAT IS APPLIED CATEGORY THEORY ?

意味の形式的理論

モデル論的なSyntaxとSemanticsの二項性と双対性の認識は、言語の意味を考える場合、非常に示唆的である。
文が語から文法に従って構成され、文の意味もそれを構成する語の意味から構成されるのなら、ほとんど同語反復なのだが、次のように考えることができる。コンピュータが個々の語の意味を理解し、文法も理解できるなら、その両方を使ってコンピュータに、文全体の意味を理解させることはできないか?

「Syntax = 文法」と「Semantics = 意味」の対応づけに、Functor Semanticsのフレームを使うには、どのような準備が必要だろうか? 次の三つが考えられる。

  1. 文法のCategory: 文法を数学的に扱うにはどうすればよいか? 文法を数学的なCategoryとして捉える。
  2. 意味のCategory: 意味を数学的に扱うにはどうすればよいか? 意味を数学的なCategoryとして捉える。
  3. Functor: 文法 → 意味 のFunctorをどのように構成するか? このFunctorは、文全体の意味を捉えることができるか?

Mathematical Foundations for a Compositional Distributional Model of Meaning

講演資料 第三部 (ダウンロード

講演動画:https://crash.academy/video/630/1961