見出し画像

読書ノート:ことばの意味を計算するしくみ (著:谷中 瞳)、その2:3章 形式統語論の考え方(後半)

はじめに

計算機言語学と自然言語学との橋渡しをすると謳う、気鋭の計算機を活用した言語学者である谷中先生の新刊。大規模言語モデルと伴走しながら、読んでいくシリーズである。「Ⅱ計算機言語学からみたことばの意味を計算するしくみ」からスタートする。

「3章形式統語論の考え方」の前半に引き続き、後半を読む。いくつか、読みにくかったところは、【初見殺し】、をつけてみた。最後にChatGPTで、導出木を導いてもらったが今一歩。Claude 3.5 Sonnetはその辺さすがにそれっぽい出力を出すことが分かった。得意不得意はあるもんだな。

絵は、Flux.1: Tree of words in linguistic vs neural network model (decoder-encoder), in the 3D image


3章 形式統語論の考え方

3.3 範疇文法から組み合わせ範疇文法へ:wh移動

チョムスキー階層、Chomskyが形式文法のクラスを言語生成能力に応じて分類したもの。

形式文法のチョムスキー階層

0型、チューリングマシンが認識できる、すなわち、計算可能な形式である言語を制限なく生成できる。
1型、文脈依存文法(Context-sensitive Grammar, CSG)、2型、文脈自由文法(Context-free Grammar, CFG)、3型、正規文法(Regular Grammar, RG)、再帰的な構造を扱える。

自然言語の文法は、文脈自由文法の性質を多く持つにもかかわらず、言語生成能力が、CFGを超えるケースがあるので、1.5型、弱文脈依存文法であるという主張もある(Arvind K. Josh)

含意除去則が関数適用規則に対応するならば、含意導入則(【初見殺し】初出、説明がない)はどの統語規則に対応するか?ランベック計算には含意導入則があるが、AB文法には対応する規則はない。

含意導入規則:の紹介

wh移動(wh-movement)という統語現象に関係。

(35) a student who [Mary loves t]

t=trace(痕跡)が移動したようになっている。

wh移動を、含意導入則によって行うと、35の文法性が判定できる。
目的語の位置にNPが現れることを一時的に仮定したうえで、Mary love NPがSであることをしめし、そのあと /I規則により一時的に仮定した NPを打ち消すことによって、Mary lovesがS/NPであることを示している。

<展開は略>

3.4 組み合わせ範疇文法(CCG)

組み合わせ範疇文法(Combinatory Categorical Grammar, CCG)は、範疇文法を拡張した文法体系。チョムスキー階層では、弱文脈依存文法のクラスに属する。どうも関数適用規則と、関数合成規則(CCG特有)が基本で、そのあと3.5の要素が拡張になっているらしい。

S(文)、NP(名詞句)、N(普通名詞)を基底範疇。CCGの辞書の例。

student: N
run: S\ NP
loves: (S\NP)/NP
Mary: NP

関数適用規則(functional application rules)

$$
\frac{X/Y:f \enspace Y:a}{X:fa} >\\
 \\
\frac{Y:a \enspace X \backslash Y:f}{X:fa} <
$$

【初見殺し】 "統語範疇:意味表示"が初出、説明なし

関数合成規則(functional composition rules)

$$
\frac{X/Y:f \enspace Y/Z:g}{X/Z: \lambda x.f(gx)} >B\\
 \\
\frac{Y \backslash Z:g \enspace X\backslash Y:f}{X\backslash Z: \lambda x.f(gx)} >B
$$

【初見殺し】 λ記法が初出、説明なし

例えば関数適用規則(>)を運用することで X/Yという形の統語範疇をもつ表現は、その右にあるYという形の統合範疇を持つ表現と結びつき、Xという統合範疇をもつ表現が形成される。CCGでは、バックスラッシュ\の意味がAB文法のそれとは異なるので、注意。

AB文法でX\Yと書くところを、CCGではY\Xと書く??

導出木の各構成要素には、統語範疇と意味表示をつけることができ、"統語範疇:意味表示"のように記述すr。

関数合成則はCCGに特徴的な規則で、記号論理学の推理率に相当する

$$
\frac{Z \supset Y \enspace Y \supset X}{Z \supset X}
$$

3.5 CCGの組み合わせ規則

等位接続則(coordination rules)、接続詞に対応、
【初見殺し】<Φ>の説明がない、

(39) Keats [invited Mary] and [cooked apples]

の導出木が導出できる。<導出木は略>

型繰り上げ規則(type-raising rules)
【初見殺し】>T、<Tの説明がない、

(44) Keats steals and Mary eats apples

の導出木が導出できる。<導出木は略>

LLMでやってみた

組み合わせ範疇文法(CCG)とは何か?以下の文に対応する導出木を展開してみて、展開でつかった規則の説明もよろ! Keats invited Mary and cooked apples

入力プロンプト

ChatGPTの回答(抜粋)

組み合わせ範疇文法(Combinatory Categorial Grammar: CCG)は、範疇文法の一種であり、文法の解析を関数適用や関数合成、型変換などの操作を使って形式的に行います。CCGは、特に自然言語の文法のフレキシブルな構造を解析するために開発され、並列的な文法構造や節の統語的な組み合わせを記述するのに適しています。

CCGは、各単語や句が「範疇」と呼ばれる型を持ち、それに基づいて他の単語や句と組み合わされて文が構成されます。この範疇には関数のような構造が含まれ、特定の入力に対してどのように出力を生成するかが示されています。

文: "Keats invited Mary and cooked apples"

これをCCGで解析し、導出木を展開してみます。

1. 単語ごとの範疇の割り当て

まず、各単語に範疇を割り当てます。

  • "Keats": $${NP}$$(名詞句、Noun Phrase)

  • "invited": $${(S\backslash NP)/NP}$$ (動詞。名詞句を目的語に取る述語)

  • "Mary": $${NP}$$(名詞句、目的語)

  • "and": $${(S\backslash NP)\backslash (S\backslash NP) }$$(結合詞。動詞句(VP)を接続する)

  • "cooked": $${(S\backslash NP)/NP}$$ (動詞。名詞句を目的語に取る述語)

  • "apples": $${NP}$$ (名詞句、目的語)

2. 規則を適用して導出木を展開

次に、これらの範疇に対して規則を適用し、文全体の構造を解析します。

得られた、導出木

           S
          / \
      NP    S\NP
      |     /  \
   Keats   S\NP  and S\NP
           / \        / \
    (S\NP)/NP NP (S\NP)/NP NP
       |    |   |     |   |
   invited Mary cooked apples

まとめ

"Keats invited Mary and cooked apples" の解析では、組み合わせ範疇文法(CCG)を使い、各単語に範疇を割り当て、関数適用規則(Forward Application, Backward Application)を用いて文全体を解析しました。

感想

なんか、等位接続則なんか使ってないだろう、AB文法で無理やり展開しようとしているように見える。

Claude 3.5 Sonnetの回答

CCG(組み合わせ範疇文法)について説明し、その文の分析をしていきましょう。

CCGは、各単語に文法カテゴリー(範疇)を割り当て、それらを組み合わせ規則によって結合することで文全体の構造と意味を分析する形式文法です。基本的な範疇には:

  • S: 文

  • NP: 名詞句

  • N: 名詞

  • S\NP: 自動詞(主語をとって文になる)

  • (S\NP)/NP: 他動詞(目的語と主語をとって文になる)

主な組み合わせ規則:

  1. 前方適用 (>): X/Y Y → X

  2. 後方適用 (<): Y X\Y → X

  3. 等位接続 (&): X X[conj] X → X

では "Keats invited Mary and cooked apples" を分析してみましょう:

Keats      invited         Mary     and    cooked        apples
NP    (S\NP)/NP           NP      conj  (S\NP)/NP        NP
--------------------------------------------------------------------------------------------------------
      >                                  >
      S\NP                              S\NP
                                &
                              S\NP
      
      S

使用した規則の説明:

  1. 前方適用 (>):

    • "invited Mary" → invited ((S\NP)/NP) が Mary (NP) を取って (S\NP) になる

    • "cooked apples" → cooked ((S\NP)/NP) が apples (NP) を取って (S\NP) になる

  2. 等位接続 (&):

    • "invited Mary and cooked apples" → 二つの (S\NP) が and で結合され、新しい (S\NP) になる

  3. 後方適用 (<):

    • 最後に Keats (NP) が複合述部 (S\NP) と結合して文 (S) が完成

この分析により、"Keats" が "invited Mary" と "cooked apples" の両方の主語として機能していることが明確に示されています。

感想2

いや、Claude 3.5 Sonnetの方が、それっぽい感じになった。さすがですね。

この記事が気に入ったらサポートをしてみませんか?