コンピュータと人間の会話に関する考察
Q: プログラムが日常会話より複雑なのはプリミティブの個数が日常会話の単語よりも少ないからか? 人工知能が進化
プログラミング言語のプリミティブは30程度かも知れないが、いくつでも「関数」を定義することができる。
繰り返される処理を関数にまとめ、関数名を付けて、その名前で言及する、ということは広く行われている。
人間の会話がプログラムに比べてシンプルに見えるのは、間違いが許容されているから。
許容されない数学・法律・特許などの分野ではどこでも、日常会話よりも複雑な言葉が使われている。
それらの分野ではプログラムにおける関数定義と同じように、繰り返し利用される概念に対して名前を付与して再利用することが行われている。(例: 「半順序」「善意」「シフト補正」など)
人間の日常会話がシンプルに見える本質的な原因は「間違わずにコミュニケーションする能力」に関して、人間がコンピュータに比べて著しく劣っていること。
プロトコルを標準化せずに通信するという、プログラマからすると常軌を逸したことを日常的に行っている。 それが原因のミスコミュニケーションが実際に起きているにもかかわらず、人間の大部分は改善活動をしない。
上記のように一部の専門家の間での通信には改善がみられる。
大部分の人間がプロトコルの明確化などを行わないのは、大部分の人間が明確化したプロトコルを間違わずに扱えるだけの知能を持たないから。
能力の高い知性体は言語を作る必要がない可能性が示唆されている 知能の劣った人間という知性体が、言語というシンボルを雑に使って言葉を紡いでいるときに、コンピュータがそこから有益な情報を引き出すにはどうすればよいか、と考える必要がある。
人間のすべての発話は間違っている可能性があるし、単語のチョイスも間違っている可能性があるし、コンピュータから伝えたことも誤解されている可能性がある、というモデル。