HOF認知の進化 — 関数型プログラミングからAIオーケストレーションの提案へ
著者: Asher Bond (asher.bond@distillative.ai)
要旨
「HOF認知」は、関数型プログラミングにおける高階関数の語彙を借り、それをAIの振る舞いを文脈選択的な合成として組織化するために適用する。本稿は、この枠組みをその系譜のなかに位置づける。すなわち、第一級の値としての、合成可能な関数 [1]、関数レベルプログラミングを擁護したBackusの議論 [2]、そして高階関数と合成こそがプログラムをモジュール化するとしたHughesの主張 [3] である。そのうえで、HOF認知がどこに立つかを明示する。この合成的構造 — 文脈によって関数を選択し、タスクごとに再合成すること — はAIシステムのオーケストレーション層、すなわちそれが合成対象とするTransformer的手法の上位に属するという、2024年の立場表明である。
1. 序論
「HOF認知」の語彙 — 原子関数、高階関数、合成 — は、関数型プログラミングの標準的な用語であり、数十年の歴史をもつ [2, 3, 1]。この名のもとでHOF認知が提案するものは、より限定的かつ新しい。すなわち、その語彙をAIの振る舞いの実行時オーケストレーションへと「適用」することである。本稿は両者を切り分ける — 借用した基盤と、その上に構築された貢献とを — それぞれをあるがままに読ませるために。
2. 関連研究 — その系譜
関数合成の基礎。 渡すことも返すこともできる第一級の実体としての関数 — これが高階関数の定義である — は、プログラミング言語の基礎的概念である [1]。Backusの1977年チューリング賞講演は、状態を書き換えるのではなく関数を合成することによるプログラミングを擁護した [2]。そしてHughesは、なぜ高階関数と遅延合成が関数型プログラムにおけるモジュール性の源泉であるかを明確に論じた [3]。これがHOF認知の知的系譜である。以下の歴史的叙述(ラムダ計算、LISP、Scheme、ML、Haskell、そして認知アーキテクチャSOARおよびACT-R)は、その文脈をなす。
認知科学との並行性。 複雑な振る舞いがモジュール的に組織化されうるという着想は、認知モデリングにおいて長い並行性をもつ。ベイズ的認知論は、推論を合成可能な確率的計算として定式化する [4]。これらの並行性が本枠組みを動機づける。
現代AIのベースライン。 HOF認知が標的とする問題 — 破滅的忘却を伴わない適応 [5, 6]、効率的な特化 [7, 8]、そして接地(グラウンディング) [9, 10] — は、今日Transformer的手法によって取り組まれている [11, 12]。これらこそ、HOF認知がオーケストレーション層で上位から合成する手法である。
3. 基礎から提案へ
歴史的な流れに異論はない。ラムダ計算とLISPが第一級の値としての関数を確立し、Scheme、ML、Haskellが合成と高階関数を日常的なプログラミング道具へと発展させ、SOARやACT-Rといった認知アーキテクチャがモジュール的で適応可能な認知モデルを追求した。これは確立された先行技術であり、合成に関する主張にかかわる箇所で上に引用したとおりである [2, 3, 1]。
この系譜が付け加える一歩 — 2024年のHOF認知の提案 — は、その合成的構造を「実行時のAIオーケストレーション」へ適用することである。すなわち、文脈によって関数を選択し、タスクごとに合成し、監視し、再合成する。貢献は一つの機構である。オーケストレーション層において再利用可能な関数を合成的に再合成することでAIを組織化すること、それをより広い汎化への経路とすることである。
根拠と射程
基盤 — 第一級の関数、関数レベルプログラミング、高階合成 [2, 3, 1] — は確立された先行技術であり、系譜として援用される。HOF認知が付け加える主張は一つの機構である。すなわち、Transformer的手法 [11, 12]、パラメータ効率的な適応 [7, 8]、そしてRAG [9] の上位にあるオーケストレーション層において、再利用可能な関数を合成的に再合成することでAIを組織化することである。より広い汎化への経路としての合成、それが主張であり、本稿が立てる主張である。
参考文献
- Christopher Strachey (2000). Fundamental Concepts in Programming Languages. Higher-Order and Symbolic Computation. [Reprint of 1967 lecture notes]
- John Backus (1978). Can Programming Be Liberated from the von Neumann Style? A Functional Style and Its Algebra of Programs. Communications of the ACM. [1977 ACM Turing Award Lecture]
- John Hughes (1989). Why Functional Programming Matters. The Computer Journal.
- Thomas L. Griffiths et al. (2008). Bayesian Models of Cognition. The Cambridge Handbook of Computational Psychology.
- Michael McCloskey & Neal J. Cohen (1989). Catastrophic Interference in Connectionist Networks: The Sequential Learning Problem. Psychology of Learning and Motivation.
- James Kirkpatrick et al. (2017). Overcoming Catastrophic Forgetting in Neural Networks. Proceedings of the National Academy of Sciences (PNAS). arXiv:1612.00796. [Elastic Weight Consolidation (EWC)]
- Edward J. Hu et al. (2022). LoRA: Low-Rank Adaptation of Large Language Models. International Conference on Learning Representations (ICLR). arXiv:2106.09685.
- Qingru Zhang et al. (2023). AdaLoRA: Adaptive Budget Allocation for Parameter-Efficient Fine-Tuning. International Conference on Learning Representations (ICLR). arXiv:2303.10512.
- Patrick Lewis et al. (2020). Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks. Advances in Neural Information Processing Systems (NeurIPS). arXiv:2005.11401. [RAG]
- Ziwei Ji et al. (2023). Survey of Hallucination in Natural Language Generation. ACM Computing Surveys. arXiv:2202.03629.
- Ashish Vaswani et al. (2017). Attention Is All You Need. Advances in Neural Information Processing Systems (NeurIPS). arXiv:1706.03762.
- Jeremy Howard & Sebastian Ruder (2018). Universal Language Model Fine-tuning for Text Classification. Proceedings of the 56th Annual Meeting of the Association for Computational Linguistics (ACL). arXiv:1801.06146. [ULMFiT]