1
はじめに
自然言語を通じて人間と自在に意思疎通できる機械を作ることは、いまだ達成されていないＡＩ研究者の目標の１つである。それは有用な汎用人工知能（AGI）が当然持つべき機能でもある。我々は再帰的強化学習・生成モデル・プログラム合成の３つを中核技術とした脳型ＡＧＩアーキテクチャの実現を目指している[1]。その一環として、プログラム合成対象言語Pro5Langを設計した[2]。 Pro5Langは、再帰的強化学習RGoal [3]を用いてエージェントの報酬を最大化するプログラムを合成するための、合成対象言語である。本稿ではプログラミング言語Pro5Langに追加した意思疎通機構について述べる。ここでは言語活動を含む様々な知能は報酬最大化という目的から生じるという仮説[4]を前提としている。将来は、発話計画・言語理解を行うPro5Langのプログラムをエージェント自身が自らの経験や他者との対話等を通じて自律的に獲得することを目指している。今回のプロトタイプ実装は、発話計画・言語理解のプログラムを人間が手で書いて、設計の妥当性を検証する。本稿は以下のような構成になっている。2節で提案機構について述べ、3節でテストプログラムとその動作について説明する。4節ではテストプログラムの拡張性について考察し、５節で関連研究との関係について述べる。最後に6節でまとめを述べる。
提案案機構
2
Pro5Langの概要
2.1
Pro5Lang は論理型言語（数理論理学を基礎にしたプログラミング言語）と機械語（コンピューターを構成する論理回路が直接解釈実行できる言語）の特徴を合わせ持ったプログラミング言語である。情報の記憶場所としてレジスタと連想記憶装置を有し、そこに証明済みの命題を記憶する。 g1 = <ハサミはPLSにある> 1: rule(__, g1, call(<ハサミがどこにあるかをPLSが知っている>)) 2: rule(<ハサミがどこにあるかをzが知っている>, g1, set(<自分はzにハサミがどこにあるか聞きたい>)) 3: rule(<自分はzにハサミがどこにあるか聞きたい>, g1, SayIt) 4: rule(<自分はzにハサミがどこにあるか聞いた>, g1, Listen) 5: rule(<__が自分に「ハサミはxにある」と言った>, g1, set(<ハサミはxにある>))図2:図1のシナリオにしたがって会話するAliceの行動ルール集合の疑似コード。行動ルールはrule(状態,サプゴール,行動)という形式で定義される。 “PLS”はunknown以外の値、 “_-”は任意の値にそれぞれマッチする。 Pro5Langのプロトタイプシステムを、Java言語のソースコード中に埋め込めるDSL (Domain-Specific Language)として実装し、このDSLで様々なテストプログラムを手で書いて動かしてみることにより、処理系の動作検証と言語仕様の妥当性の検証を進めている。プログラムは行動ルールの集合として定義される。行動ルールはrule(s,g,a)という形をしており、エージェントは、現在のレジスタの状態sおよびサプゴールの値gとマッチするパターン(s,g)を持つ行動ルールを非決定論的に１つ選択し、その行動aを実行する。行動ルール集合は強化学習における行動価値関数を圧縮表現したものであり、行動ルールの価値の学習が進めばエージェントは報酬を最大化するように合理的に振舞うようになる。エージェントが取り得る行動のうち、call, set, recall命令はそれぞれサプルーチン呼び出し、レジスタの値の更新、宣言的知識の想起を実行するプリミティブである。 Pro5Langの詳細については[2]を参照されたい。
2.2 意思疎通機構
意思疎通の本質部分に注力するため、エージェントどうしは音声や文字列ではなく、発話内容の内部表現を直接やりとりするように実装することとした。各エージェントは他者の発話内容を一時的に保持する文バッファを持ち、話し手は聞き手の文バッファに伝えたい内容を直接書き込む¹。意思疎通はListenとSayItという２つのプリミティプによって行われる²。 ● Listen は相手の発話を待つ命令である。文バッファに値がまだなければ、何もしない。文バッファに値があればその内容をaレジスタに移動する。 ● SayItは発話準備した内容を実際に発話する命令である。aレジスタに置かれている発話準備内容を発話相手の文バッファに書き込み、自分のaレジスタには自分が発話した事実を表す命題を入れる。
テストプログラム例
3
図2は、図1のシナリオにしたがって会話するAliceの行動ルール集合の疑似コードである。行2は発話の準備を行う行動ルールであり、実際のDSLのコードは以下のようになる。 rule(w(a(That01, c(Now, Here, z, Knows, 0, 0), c(Now, Wh, Scissors, Exists, 0, 0))), g1, set(a(That02, c(Now, Here, Alice, WantsToSayTo, z, 0), c(Now, Wh, Scissors, Exists, 0, 0))));命題は複文程度の情報を表現することができ、各節はc(いつ,どこで,誰が,何をした, O1, O2)という形式で記述する。接続詞ThatO1, ThatO2はそれぞれ主節のO1, O2に従属節の内容が埋め込まれていることを表す。Whは、「どこに」「何を」などを表すシンボルである。現状、代名詞は実装されていないので自分自身を固有名詞Aliceで表現している。行３と行４は準備した内容の発話と、そのあとの応答を待つ行動ルールであり、実際のコードは以下のようになる。 rule(w(a(That02, c(Now, Here, Alice, WantsToSayTo, z, 0),

 g1, SayIt); rule(w(a(That02, c(Now, Here, Alice, SaidTo, z, 0), c(Now, Wh, Scissors, Exists, 0, 0))), g1,
Listen);発話が完了するとaレジスタのWantsToSayToがSaidToに自動的に変化する。行４の実行(Listen)は、返答が来るまで繰り返される。行５はBobが応答し、 aレジスタに応答内容が書き込まれた後に実行される行動ルールで、実際のコードは以下のようになる。 rule(w(a(That02, c(Now, Here, __, SaidTo, Alice, 0), g1. set(a(Now, x, Scissors, Exists, 0, 0))); Bobが「ハサミはRoom1にある」と言ったら、Aliceは＜ハサミはRoom1にある＞という命題が証明されたと解釈し、その命題をaレジスタにsetする。その値は自動的に連想記憶装置にも加えられ、そのあとの情報処理に利用することができる。このテストプログラムでは、 aレジスタの値が対話シナリオの進行を制御する重要な役割を果たしている。プログラムの書き方によっては同じ推論や同じ質問を何度か繰り返すという無駄な動作が発生するが、このプログラムでは行動ルールの選択タイミングが適切に記述されているため無駄な動作は生じない。
テストプログラムのシナリオの拡
4
張性
提案機構は単純なルールベースの対話システムとは異なり、発話計画も発話理解も報酬最大化を目的とするプログラムの実行として行われるため、その振る舞いは柔軟かつ合目的的である。図2の疑似コードは以下の拡張性を持ち、様々な状況に柔軟に対応できるエージェントの振る舞いが記述可能になると考えられる。強化学習による学習が進めば、ここで述べる多様な選択肢のうち、高い価値を持つものが選択されるはずである。行1は誰かに聞くことを前提で誰に聞くかを考える行動ルールだが、それ以外の選択肢、例えば自分で考える、自分で探す、などの行動ルールを追加することができる。行２の発話準備内容は「ハサミはどこ？」という直接的な質問になっているが、これ以外にも状況に応じて「ハサミちょうだい」「ハサミの場所知らない？」「誰かハサミを使った？」などの聞き方を検討し、もっとも妥当な聞き方を選択することが可能である。行５は相手の返答への対処だが、相手は「ハサミはRoom1にある」という直接的な応答をするとは限らず、単に「Room1」と答えたり、「きのうRoom1で見た」という答え方をすることもあり得る。また、 Aliceの予想に反してBobはハサミの場所を知らず「自分は知らないけどCarolが知っている」と答えるかもしれない。あるいは「今は使わせたくない」と答えるかもしれない。このようなさまざまな返答に対し、機械的に処理するのではなくまず相手の意図を推論し、その上で適切に対応する行動ルールを用意しておくことができる。行５はまた、返答の内容を素直に信じる行動ルールになっているが、状況によっては「相手の発言は間違っているかもしれない」「相手はうそをついているかもしれない」といった他の解釈を検討すべき場合もある。そのような対応を記述することも可能である。
55
関連項研究
5.1 部分観測マルコフ決定過程
部分観測マルコフ決定過程(POMDP)は、環境のモデルが与えられていれば、信念状態（エージェントが推定する環境の状態の確率分布）を状態とみなしてbelief MDP [5]として定式化しなおすことで、 MDPを解く様々な手法で解けるようになる。POMDPを解いたエージェントは、必要な情報を得るために環境を能動的に観測したり、他者に聞くという行動を取るようになる。 Pro5Langは、 belief MDPを近似的に解いていると解釈することができる。変数はunknownという値を取ることができる。ある変数vの値がunknownであるということは、エージェントが持つ信念状態において変数vの周辺分布がほぼ一様分布であることを意味している。したがってPro5Langの行動ルール選択は、環境の状態に対するパターンマッチではなく、実は信念状態の近似表現に対するパターンマッチにより行われる。 Pro5Langとbelief MDPには違いもある。隠れた状態の推論はbelief MDPでは環境モデルを用いて瞬時に行われるかのように定式化されるが、 Pro5Langは隠れた状態の推論も「脳内アクション」として数ステップかけて実行される。サプゴール達成に無関係な状態の推論は行わないので効率的であるが、一方で、必要なはずの情報を誤って無関係だと見なし、推論しない可能性もある。これは欠点だが、もしヒトの脳も同じであるなら脳型AGIとしては許容できる性質である。対話システムをPOMDPに基づいて構築することによる利点は[6]で詳しく論じられている。しかしそこではスケーラピリティの問題も指摘されている。 Pro5Langで記述される対話機構は、再帰的強化学習RGoalのサブタスク共有・時間抽象・状態抽象の３つの恩恵により、大規模でも現実的なコストで解けるようになると思われるが、今後より大規模なテストプログラムを動かすことで実証していく予定である。
5.2 関連性理論
言語学における語用論に属する理論の1つに関連性理論[7]がある。関連性理論は発話がいかに理解されるかということに関する理論であり、話し手は閉き手にとって有益なことを伝えようとしているという前提の下で、開き手は話し手の意図を推論すると考える。関連性理論は数学的に定式化されておらずそのまま計算機上に実装することはできない。しかし、単純化した状況における指差し行動の関連性を効用と結び付け、 POMDP に基づいて定式化する試み[8]がある。 Pro5Langによる言語理解は報酬最大化を目的として実行されるため、関連性理論との親和性は高い。また、関連性理論では発話理解は機械的に行われるのではなく、閉き手は発話者の意図を推論すると考えるが、これは、報酬を最大化するために隠れた状態を推論するというPro5Langの動作と整合性があるように思われる。今後、より複雑な環境でPro5Langを用いた様々な対話シナリオを実装することで、関連性理論との関係がより明らかになるとともに、Pro5Langが計算機で実行可能なヒトの意思疎通の計算論的モデルになると期待できる。
Inquisitive semantics
5.3
疑問文の意味を形式的に表現する方法の1つに in- quisitive semantics [9]がある。質問者の意図は、質問に対する答えの選択肢の集合として定式化される。 Pro5Langでは疑問文の発話意図は“PLS”を含むサプゴールで表現される。この表現方法はinquisitive se- manticsよりもはるかに表現力が劣るが、別途サプルーチンを用いれば任意の疑問文の発話意図が表現可能になるだろうと考えている。Pro5Langのサプゴールの表現力の制約がヒトの発話の特性と一致しているかどうかを検証することができれば、 Pro5Langの意思疎通機構の計算論的モデルとしての妥当性を示すことができるだろう。
まとめ
6
報酬最大化を目的として動作するエージェントどうしが、お互いに意思疎通するための機構を設計し、プロトタイプ実装を行った。現在は単純なテストプログラムしか動いていないが、今後エージェントの動作環境を拡張し、複雑な対話シナリオをデモすることを目指す。 Pro5Langの表現力を増すための拡張もまだ必要で、少なくともタイムアウト、割り込み、メモリへのポインタの機構の追加が必要だと考えている。効率的な実行のためにはニューラルネットのような非記号的な情報処理による補助も不可欠だろう。提案機構では発話計画や意味理解は作り付けの機構ではなくプログラムの実行によって行われるため柔軟性が高く、また、対話履歴や意味理解の結果は証明済み命題として蓄積されて次の発話や意味理解に役立てることができるため、将来的には非常に内容豊かな会話が実現されることが期待できる。本研究はJSPS科研費 JP22K12188の助成を受けたものです。 [1]一杉裕志.報酬最大化原理にもとづく脳型ＡＧＩアーキテクチャの構想.第18回人工知能学会汎用人工知能研究会(SIG-AGI), 2021. [2]一杉裕志,中田秀基,高橋直人,竹内泉,佐野崇.汎用人工知能のためのプログラム合成対象言語Pro5Langのエピソード記憶機構.第20回人工知能学会汎用人工知能研究会(SIG-AGI), 2022. [3] Yuuji Ichisugi, Naoto Takahashi, Hidemoto Nakada, and Takashi Sano. Hierarchical reinforce- ment learning with unlimited recursive subroutine calls. In Artificial Neural Networks and Machine Learning – ICANN 2019:  Deep Learning, pp. 103– 114, Cham, 2019. [4] David Silver, Satinder Singh, Doina Precup, and Richard S. Sutton.  Reward is enough.  Artificial Intelligence, Vol. 299, p. 103535, 2021. [5] Leslie Pack Kaelbling, Michael L Littman, and Anthony R Cassandra.  Planning and acting in partially observable stochastic domains.  Artificial Intelligence, Vol. 101, pp. 99–134, 1998. Partially [6] Jason D Williams and Steve Young. observable markov decision processes for spoken dialog systems.  Computer Speech & Language, Vol. 21, No. 2, pp. 393–422, 2007. [7] Dan Sperber and Deirdre Wilson. Relevance: Communication and Cognition. Blackwell, 1986. [8] Kaiwen Jiang, Annya L. Dahmani, Stephanie Stacy, Boxuan Jiang, Federico Rossano, Yixin Zhu, and Tao Gao. What is the point? a theory of mind model of relevance. In Proceedings of the Annual Meeting of the Cognitive Science Society, Vol. 44, 2022. [9] Ivano Ciardelli, Jeroen Groenendijk, and Floris Roelofsen. Inquisitive semantics. Oxford Univer- sity Press, 2018.