presheaf

【 この部分は、この間のセミナーのまとめになっています 】

今回のセッションで紹介する部分は、この間のセミナーで扱ってきた問題の短かなまとめになっています。この間のセミナーで紹介してきた大規模言語モデルを舞台にして、Tai-Danae が利用した数学的手法を振り返るには、ちょうどいい素材かもしれません。ぜひ、以前の資料を参照ください。

短いセクションなのですが、ストーリーは二つの視点を軸に展開します。

一つは、前回のセッションで紹介した「オブジェクトからオブジェクト上の関数へ」という視点です。このセクションのタイトルは、「Objects Versus Functions on Objects」でした。

もう一つは、そうした展開を、最初のサンプルとして導入した「ベクトル空間」= 線形代数 との対比で位置付けることです。この論文のサブタイトルは、「Parallel Narratives in Linear Algebra and Category Theory 」でした。

この二つを意識してもらうと、いろいろな気づきがあると思います。

一つ注意してもらいたいことがあります。

以前のセミナー「大規模言語モデルの数学的構造」での主要な数学的ツールは、copresheaf でした。ただ、このセクションは、copresheaf のカテゴリー論的「双対」概念である presheaf について論じているということです。

どちらも、あるカテゴリーCから集合のカテゴリーSet へのfunctor です。「オブジェクトからオブジェクト上の関数へ」という視点で見ると、両者は同じようなものです。

ただ、両者の違いを少しまとめてみました。

C上のpresheaf は、𝐶^𝑜𝑝 → 𝑆𝑒𝑡 のcontravariant functorで、
C上のcopresheafは、𝐶 → 𝑆𝑒𝑡 のcovariant functorです。

二つのfunctorのvarianceの違いから、そのrepresentable functorは、次のようになります。

presheafのrepresentableは、ℎ^𝑥 ≔ 𝐶( −, 𝑥 ) で、
copresheafのrepresentableは、ℎ_𝑥 ≔ 𝐶( 𝑥 ,− ) です。

後者の𝐶( 𝑥 ,− )の形が、以前のセミナーでは活躍していました。ここでx がブランク ー より前に来ているのは、この表示が xとつながるすべてのfunctor の集まりとしてxの意味を表現しようとしていたからです。Firth流に言えば、「語xのすべての仲間たち」を、それは表しています。ですから、意味の表現には𝐶( 𝑥 ,− )の形がむいています。

ただ、前回のセミナーの資料では、ℎ^𝑥 ≔ 𝐶( 𝑥 ,− ) という表現が使われています。今回の論文のノテーションとは、違っていますのでご注意ください。

--------------------------------

ショートムービー「 presheaf 」を公開しました。
https://youtu.be/_ysG8cMOTJU?list=PLQIrJ0f9gMcOJYKeUN_8q2K-yxtTfbIoB

「 presheaf 」のpdf資料
https://drive.google.com/file/d/1EKnzgmAL4WzDaiGhMxV8dIb5nSnyuj-w/view?usp=sharing

blog 「 この部分は、この間のセミナーのまとめになっています 」
https://maruyama097.blogspot.com/2024/02/presheaf.html

「言語の意味の数学的構造」まとめページ
https://www.marulabo.net/docs/embedding-dnn/

ショートムービーの再生リスト
https://www.youtube.com/playlist?list=PLQIrJ0f9gMcOJYKeUN_8q2K-yxtTfbIoB 

コメント

このブログの人気の投稿

マルレク・ネット「エントロピーと情報理論」公開しました。

初めにことばありき

人間は、善と悪との重ね合わせというモデルの失敗について