投稿

copresheaf-意味論の射程

【 こんな理論が何の役に立つのか? 】 このセッションが、週末のセミナーに向けた最後のセッションになります。 簡単に、セミナー第二部のまとめをしたいと思います。 ここでは、このセミナーで紹介したような理論が、現実的・実践的にどのような役に立つのかという話をしようと思います。 それは、現在の大規模言語モデルの到達点をどうとらえるのかということと結びついています。僕は、大規模言語モデルは、さらに発展するだろうと考えています。では、どういうふうにそれは発展していくのでしょうか? 【 ここまでで見てきたこと 】 ここまで見てきたこと、すなわち、SyntaxカテゴリーからSemantic カテゴリーの構成は、大規模言語モデルの次のような数学的モデルを構築できたということです。 「何の構造もないように見える具合的なテキスト・データから、その表現の継続の確率分布を大量に学習することによって、大規模言語モデルは内部に意味の世界を構築している。」 【 重要なのは、copresheaf-意味論 】 この数学的言語モデルには、重要なポイントがあります。 それは、言語の意味が住む世界を、[0,1]-copresheaf として、明確に定義したことです。 我々は、言語の文法構造については、いろいろ知ることができます。しかし、意味の世界がどのような構造をしているかについては、必ずしも明確な概念を持っているわけではありません。 しかし、大規模言語モデルが内部に構築する意味の世界を、 [0,1]-copresheaf としてとらえることは、意味へのアプローチを大きく変えるものです。 【 copresheaf-意味論の含意 】 もし、意味が [0,1]-copresheaf で表現されるのなら、さまざまな意味の構成には、カテゴリー論的操作が対応しているということができます。 Part 2 で見た、論理的概念「red and blue」「red or blue」にカテゴリー論的な product と coproduct に対応づけたのは、その一例です。 もっともPart 2での議論は、productもcoproductも、未だenrich化されていませんでした。論理的概念「AND」と「OR」を[0,1]-copresheaf で表現するためには、 productもcoproductも、enrich化さ

Semantic category

【  enrich化されたcopresheaf として意味をとらえる 】 このセッションでは、意味のカテゴリーsemantic を構成します。第一部と同様に、ここでも意味はcopresheaf として定義されます。ただしそのenrich版として。 第一部から継承された意味のcopresheafとしての解釈は、Tai−Danaeらのカテゴリー論的言語理論を特徴づける重要なものです。 【 なぜ、copresheaf なのか? 】 ここでは、まず、少し一般的な視点から、copresheaf(それは、関数の集合です)を使うことのメリットを考えておきましょう。 数学的対象Xの性質がよく分からないけど、数学的対象Yの性質・構造はよくわかっているとしましょう。 そうした時、 Xはそうでなくても、XからYへの関数の集合{X→Y}を考えると、それがはっきりした構造を持つことがよくあります。例えば、任意の集合上の実数値関数はベクトル空間を形成します。 【 単位区間 [0,1] とC上のcopresheaf [0,1]^𝐶 】 単位区間[0,1]は、カテゴリー理論の観点から見ると豊かな構造を持っています。それは closed commutative monoidal であり,complete で cocompleteです。 単位区間[0, 1]でenrich化された任意のカテゴリーCに対して、Cから単位区間へのfunctor 𝐶→[0,1]のカテゴリーとして、C上のcopresheaf [0,1]^𝐶 を考えます。 このcopresheaf は、単位区間[0,1]の豊かな構造を継承します。それは、単位区間[0,1] と同様に、product, coproduct, internal hom のenrich化されたバージョンを持っています。 補題 2 は、任意の [0,1]-category Cは、豊かな構造を持つ [0,1]-category copresheaf  [0,1]^𝐶 に埋め込まれることを示しています。 【 Semantic category 】 LをSyntax category とした時、Semantic category を、[0,1]^𝐿 と定義します。  Semantic category 𝐿 ̂は、[0,1]-categoryである L 上で [0,

copresheaf [0,1]^𝐿 とYoneda Lemma

【 言語理論へのenrich化されたカテゴリー理論導入の意味 】 週末のセミナーに向けて、そろそろまとめを始めようと思います。 大規模言語モデル(LLM)の成功が、数学的言語理論にどのような刺激を与えたかを、いくつか振り返ってみようと思います。それは「不思議」なことを発見した驚きに近い感覚だと思います。  ● LLMは、一見すると何の構造も持たないように見える自然言語のデータから、何かを学習する。その学習では、自然言語が文法構造を持つことは前提されていない。LLMは大量のデータから文法構造も学習できるように見える。  ● LLMが学習する「何か」の中には、意味の理解が含まれているように見える。ただ、その「意味」はどのように表現され、「意味の理解」はどう行われているのだろうか?   ● LLMは、表現の「連続」が可能である。それは、いくらでも長いコンテンツを生成できるように見える。こうした能力はLLMの母胎である「翻訳モデル」には無い能力だ。  ● LLMの「意味の分散表現」は、LLMのメカニズムやこうしたLLMの能力とどのように関係しているのだろうか?  ● ... まだまだ不思議なことはあるように思います。 昨年末に開催した、セミナーの第一部で紹介した、Tai−Danae らのカテゴリー論を枠組みとした理論 −− 言語をpreorderのカテゴリーとして捉える + copresheaf 意味論 + Yoneda embeddingによる言語と意味の対応づけ −− は、斬新なアプローチでこうした疑問の一部に答えるものでした。 ただ、これらはいわば「代数的」な性格のものでした。そこには、言語現象の重要な特質と思われる「確率論」的な性格が欠けていました。 今回のセミナー第二部で紹介するDai−Tanae らの新しい理論は、enriched category 論を使って、言語の数学的構造の理論を、代数と確率論の両者が交わるところで構成しようとしたものです。 まず、言語のカテゴリーLをpreorderから、射が[0,1]に値を取るものに変えることから始めます。(これを、「Lを[0,1]j上にenrich化する」と言います。) 今回のセッションの内容は、主要に、第一部の理論の骨組みが、enrich化可能であることを示そうとしたものです。次のように。  ● Cを[0,1]上でe

enriched functor と enriched copresheaf

【 functor category をenrich化する 】 このセッションの目的は、カテゴリー C からカテゴリーDへのfunctor 𝐶→𝐷 であるcopresheaf 𝐷^𝐶のenrich版を構成することです。 まず、functorの定義を振り返りながら、enrich化されたfunctorを定義します。 ここでは、次のような定義が与えられます。 「CとDを、あるcommutative monoidal preorder (V, ⊗, ≤, 1)上でenrich化されたカテゴリーとする。この時、Cのすべてのオブジェクト 𝑥,𝑦について    𝐶(𝑥,𝑦) ≤ 𝐷(𝑓𝑥,𝑓𝑦) を満たす関数  𝑓: 𝐶 → 𝐷 を enriched functorと呼ぶ。」 ここで、C(x,y), D(x',y')は、enriched category のhomオブジェクトです。 次に、functorカテゴリーの定義とcopresheafの定義を振り返りながら、enrich化されたcopresheafの定義を考えていきます。 Vがclosed commutative monoidal preorder の時、Vは自分自身でenrich化されたカテゴリーになります。先の定義で見た、enrich化されたfunctor f: C → 𝐷 で𝐷 = 𝑉とした enrich化されたfunctor 𝐶 → 𝑉を考えます。 「Cを、closed commutative monoidal preorder V上でenrich化されたカテゴリーとする。enrich化されたcopresheaf 𝑉^𝐶は、Cのすべてのオブジェクト𝑥,𝑦について   𝐶(𝑥, 𝑦) ≤ 𝑉(𝑓𝑥, 𝑓𝑦) を満たす関数で定義される。」 この条件式は、先に見たenriched functor の条件式で、𝐷 = 𝑉としたものに他なりません。 通常のカテゴリーでは、カテゴリー間の写像が functor category を定義するように、 enrich化されたカテゴリーでは、enrich化されたカテゴリー間の写像が、enrich化されたfunctor category を定義します。 -------------------------

Syntax category −− enriched category論の言語理論への応用

【 この投稿はわかりやすいかも知れない 】 このセッションから、新しい内容に入ります。 前回まで、enriched category とはどういうものなのか、その概略を見てきたのですが、このセッションから、このenriched category論を言語理論へどのように応用するのかという話をしたいと思っています。 今回はその一回めで、言語のカテゴリーに確率を導入します。それは、単なるpreorderという構造しか持たなかった言語のカテゴリーを、[0,1]でenrich化して、[0,1]−categoryにしようということです。 このカテゴリーを、Syntax categoryと呼ぶことにします。 ( 難しい言い方をすれば、単位区間[0,1]は、closed commutative monoidal preorder で、enrich化する能力を持ち、この[0,1]で enrich化されたカテゴリーを、[0,1]−categoryと呼びます。Syntax categoryは、言語の表現をオブジェクトにする、[0,1]−categoryなのです。) 【 すこしわかりやすいかも 】 ただ、今回の投稿は、少しわかりやすいのではと思っています。 なぜなら、この投稿では数学的定義や証明はほとんど出てきませんし、何よりも、こうした言語のカテゴリーと大規模言語モデルの関係が主要に語られているからです。 なぜ、面倒なカテゴリー論の枠組みを使うのか? それは、そうした数学的枠組みが、大規模言語モデルのある意味不思議な特徴を、よりよく捉えているからです。そこが出発点です。 ここで述べていることは、大規模言語モデルの振る舞いを実際に知っている人には、覚えのあることで、わかりやすいと思いますが、それは大事なことなのです。 数学的な議論だけを追いかけていると、大事な「原点」を見失うこともあります。その意味では、今回の投稿を「原点」を確認するのに使ってもらえたらと思っています。 【 Lの射 L(x,y)とその値 】 [0,1]でenrich化されたSyntax category Lでは、その射L(x,y)は、𝜋(𝑦|𝑥)で定義されています。ここで、 𝜋(𝑦|𝑥)は、表現 yが表現 x の拡大である確率です。 例をいくつか挙げましょう。   𝐿(𝑟𝑒𝑑,𝑟𝑒𝑑 𝑓𝑖𝑟

1/27 マルレク 「大規模言語モデルの数学的構造 II 」受付開始

【 1/27 マルレク 「大規模言語モデルの数学的構造 II 」受付開始 】 申し込みはこちら: https://llm-math2.peatix.com/ 先月12月30日のセミナー、「大規模言語モデルの数学的構造 I -- 言語へのカテゴリー論的アプローチ入門 」に、多くの人に関心を持っていただいて、ありがとうございました。 1月27日、セミナーの第二部を「大規模言語モデルの数学的構造 II -- enriched categoryによる言語モデル」というタイトルで開催します。 この連続セミナーは、大規模言語モデルの振る舞いをもっと詳しく知りたいという人を対象にしています。 この連続セミナーは、大規模言語モデルの「不思議な振る舞い」に対して、カテゴリー論に依拠して全く新しい視点からのアプローチを展開したTai-Danae Bradleyらの論文 "An enriched category theory of language: from syntax to semantics" の紹介しようとしたものです。 先月のセミナーの第一部は、この論文の基本的特徴である言語理論へのカテゴリー論アプローチの基礎を解説したものでした。 今回のセミナーでは、第一部では取り上げていなかった、先の論文の主題である、enriched category を用いたsyntaxからsemanticsにいたる言語理論の紹介をしようと思います。この第二部から、いよいよ、連続セミナーの本題に入ることになります。 遅くなりましたが、セミナーへの申し込み受付を開始しました。あらためて、多くの人のセミナー第二部への参加をお願いしたいと思います。 今回のセミナーは、次のような構成をしています。 Part I  第一部のふりかえり ・ 言語のカテゴリー Lを、preorder category として捉える ・ 表現 Sの「意味」を、カテゴリー L 内の S → T なる射全体の集合と考える ・ 意味のカテゴリーは、copresheaf  𝑆 𝑒 𝑡 𝐿 で表現される ・ 言語のカテゴリーと意味のカテゴリーの対応は、Yoneda Embeddingで与えられる ・言語のカテゴリーに確率を導入する Part 2  言語の論理性と意味のモデルとしてのcopresheaf ・ 意味

closed commutative monoidal preorder と internal hom

【 すごいのかすごくないのか? 】 前回のセッションで、単位区間[0,1]がcommutative monoidal preorder であることを見てきました。 素晴らしい!  本当かな? 実際の舞台裏を見ると、「monoidal product ⊗ を普通の実数間の掛け算とし、monoidal unit を 1 とし、preorderの順序関係 ≤ を 通常の実数間の大小関係とする」解釈をするってことですね。 というのは、そのまんまの普通の区間[0,1] じゃないかと思われたかもしれません。確かに。やさしいことを難しくむずかしく言っているだけかも知れません。 ただ、こうした見方には、意味があります。 この論文の基本的な狙いは、セミナーの第一部で見てきた代数的な言語理論に、確率概念を導入しようとする事です。確率的なものの見方は欠けているのですが、copresheaf を意味のカテゴリーとして捉えようというアプローチは魅力的なものでした。 第一部で紹介したcopresheaf意味論の枠組みを維持したまま、確率概念を導入する為の方法としてこの論文が選んだことは、enriched categoryの理論を用いることでした。 以前の枠組みのカテゴリーの射を、新しいカテゴリーの[0,1]の確率を表す値を取る射に置き換えること。それは、元のカテゴリーを単位区間[0,1]でenrich化することに他なりません。 冒頭で述べた、すごいのかつまらないのかわからない到達点は、あるカテゴリーを確率[0,1]でenrich化出来ることを、カテゴリー論の言葉で述べたものです。その意味では、この論文の目的への第一歩としては、大きな意味を持っています。 今回のセッションでは、単位区間[0,1]がcommutative monoidal preorder であるという議論をもう一歩進めます。その為に、commutative monoidal preorder の仲間である closed commutative monoidal preorderというカテゴリーを導入します。 このカテゴリーの面白いところは、それ自身enrichするカテゴリーであるcommutative monoidal preorder の内部に、enrichする射の構造を定義できるということです。 [x,y]で表されるこの射を