言語処理学会 第26回年次大会 発表論文集 (2020年3月)

通信プロトコルとしての自然言語の機能について
山田隆弘
CONOCIMISTA
tyamada99@yahoo.co.jp

１

はじめにたものである。

現在の自然言語処理技術は統計的な手法を利用するものが大部分であるが、言語の意味に基づいた手法も本来は使用すべきであると思われる。なぜならば、人間が言語を処理するときは、多かれ少なかれ意味的な処理を行っているからである。しかし、問題は、言語の意味に関する理論には様々なものが存在しているが [1]、自然言語処理に全面的に適用できるものが見当たらないことである。
そこで、本稿では、言語の意味を解明するための一つの手段として、言語の機能に着目することにする。言語の有する様々な機能に関しては、Austin [2]及び Searle [3] 以降、発話行為 (Speech Act) の研究として様々な研究がなされているが、現代人にとって最も重要な言語の機能は情報伝達機能であろう。
自然言語によって情報が伝達される機能を解明すれば、それは自然言語によって意味が伝わるメカニズムが解明されたとみなして良い。従って、自然言語の情報伝達機能を解明することは、意味を用いた自然言語処理技術の開発にも資するところがあると思われる。
ところで、機械と機械が情報を伝達する場合は、様々な通信プロトコルが使用される。自然言語についても、情報伝達機能に限れば、ある種の通信プロトコルとみなすことが可能なはずである。機械が使用する通信プロトコルは、特定の人間が人為的に設計したものであるから、文法も意味も厳密に規定されていて、それらはプロトコル仕様書に書かれている。自然言語の場合は、特定の誰かが設計したわけではないから、仕様書は存在しない。しかし、通信プロトコルの機能を参考にしながら自然言語の情報伝達機能を定式化することは、ある程度可能であると思われる。本稿では、通信プロトコルとしての自然言語の仕様を復元することを試みる。
本稿の議論は、話し言葉にも書き言葉にも適用できるものであるが、以下では言語を発する人を話者、言語を受け取る人を聴者と呼ぶことにする。
なお、本稿の内容は、筆者の今までの研究発表（特に [4]と[5]）の内容をさらに発展させつつ精密化し２

自然言語の情報伝達機能

自然言語を用いた情報伝達機能は、以下の二つのものに分類できる。
• 話者が聴者に情報を伝える機能• 話者が聴者に情報を問い合わせる機能
自然言語の情報伝達機能を検討する上で考慮すべきことは、話者と聴者が共通の知識を少なからず保有していることである。話者と聴者とが共有している知識は共通基盤 (common ground) と呼ばれ、心理言語学や語用論の分野で盛んに研究されている [6]。
話者と聴者とが知識を共有しているという事実を考慮すれば、上記の二つの機能は、以下のように書き直すことができる。
• 話者は保有しているが聴者は保有していない情報（知識）を話者から聴者に伝える機能• 話者は保有していないが聴者は保有している情報（知識）を話者が聴者に問い合わせる機能
自然言語の情報伝達機能を検討する上でもう一つ考慮すべきことは、(1) 情報伝達機能そのものと (2)情報伝達機能がどのような発話 (utterance) として実現されるか、の二つを分離して考えるべきことで（個々の社会や文化に依存するようある。すなわち、な微妙な表現は別であるが）どの社会でも通用するような基本的な事実の伝達はどのような言語でも可能であり、そのような機能は特定の言語からは独立に規定すべきである。その理由は、様々な言語の機能（すなわち、文法、語彙、韻律等の有する機能）を記述し、比較するためには、特定の言語に依存しない標準的な基準が必要となるからである。

３ Simple Network Management
Protocol (SNMP)
自然言語の情報伝達機能に近い機能を持っている通 信 プ ロ ト コ ル は 、 Simple Network Management
Protocol (SNMP) [7] であろう。SNMP は、インターネットにおいてネットワーク機器（ルータ等）を遠― 1527 ―Copyright(C) 2020 The Association for Natural Language Processing.
All Rights Reserved.

隔から制御するために考案されたものであり、実際にインターネットにおける機器の制御のために広く用いられている。
SNMP における最も重要な機能は以下の二つである。
• 遠隔から機器を制御する（遠隔から機器の設定を変更する）機能• 遠隔から機器を監視する（遠隔から機器の状態を読み取る）機能
SNMP は、あらゆるネットワーク機器を統一的な方 法 で 制 御 で き る よ う に す る た め に 、 Managed
Object という概念を使用している。Managed Objectは、個々のネットワーク機器の状態を表すパラメータであり、何らかの値を有している。Managed Objectは、オブジェクト指向プログラミングにおけるObject に相当するのではなく、Attribute（あるいは変数）に相当する。各々の Managed Object は、ObjectIdentifier (OID) という識別子によって同定される。
SNMP は、上記の二つの機能を Managed Object を用いることによって以下のように実現する。
• 遠隔から機器の Managed Object に値を設定する• 遠隔から機器の Managed Object の値を問い合わせるこれらの機能の実現方法をさらに具体的に記述すると、以下のようになる。
• 遠隔から機器に Managed Object の OID とそのManaged Object に設定すべき値を送信する• 遠隔から機器に値を読み取るべき Managed
Object の OID を送信する（その返事として、機器は要求された Managed Object の値を返す）
上で述べた機能を実現するためには、遠隔と機器との間でメッセージのやりとりが必要であるが、これは自然言語における発話に相当する。メッセージの生成方法（encoding method、自然言語における文法や語彙に相当する）には、様々なものがあり得るが（例えば、英語の文を作成する、XML 文書を作成する、バイナリデータを作成する）、SNMP ではバイナリデータを作成する方法のみが規定されている。
ここで、SNMP のメッセージ生成機能以外の基本機能は、メッセージ生成方法とは独立に規定されていることに注目されたい。
ところで、SNMP には Managed Object を動的に作成する機能は含まれていない。Managed Object は、ネットワーク機能ごとに文書によって静的に規定されている。

４ 通信プロトコルとしての自然言語の情報伝達機能
前節で説明した SNMP の機能を参考にしながら自然言語の情報伝達機能を定式化するとどのようになるであろうか。SNMP の主要機能は以下のものであった。
• 機器を制御する機能＝Managed Object に値を設定する• 機器を監視する機能＝Managed Object の値を問い合わせる
自然言語の情報伝達機能も SNMP の機能を参考にして以下のように規定できる。すなわち、• 情報を伝える機能＝聴者の保有している知識に新たな知識を追加する（あるいは、修正する）• 情報を問い合わせる機能＝聴者の保有している知識の一部を問い合わせる
自然言語の情報伝達機能をさらに詳細に規定するためには、知識をどのように表現すべきかを決定する必要がある。単純なパラメータである Managed
Object の集合として人間の知識を表現することは、不可能ではないが、表現力が不足する。知識を表現する方法については、過去に膨大な研究がなされているが [8]、知識をグラフとして表現する方法 [9]が現在では主流になりつつある。本稿でも知識はグラフとして表現されると考えることとする。
人間の知識をどのようにグラフとして表現すべきかは大きな問題であるが、ここでは、グラフの詳細な構成方法には立ち入らずに、人間の知識は有向エッジにより接続されたノードの集合によって表現されると考える。また、各々のノードとエッジにはそれぞれ名前（あるいは値）が設定されているとする。
人間の知識の構造を上のように仮定すると、自然言語の情報伝達機能は、以下のように詳細化できる。
• 情報を伝える機能＝聴者の保有している知識グラフの既存の特定のノードに新たなノードを何らかのエッジを介して接続する（場合によっては、既存のノードを他のノードで置き換える、あるいは、既存のノードを削除する）• 情報を問い合わせる機能＝聴者の保有している知識グラフの既存の特定のノードに付与されている名前や値、あるいは、そのノードにどのようなノードが接続されているかを問い合わせる
これまでに述べてきた自然言語の情報伝達機能の議論は、特定言語の文法にも語彙にも一切依存していないことに注意されたい。

― 1528 ―Copyright(C) 2020 The Association for Natural Language Processing.
All Rights Reserved.

SNMP では、各々の Managed Object は OID によって同定されたが、人間の知識グラフのノードのそれぞれに識別子が付与されていると考えることは現実的でない。自然言語による情報伝達における知識グ
ラフのノードの識別は、個々の言語の有する表現機能（指示表現や照応表現）と話者と聴者の共有する知識（世界知識と特定の発話状況における文脈知識の双方）とを組み合わせることによって行われる。
この詳細なメカニズムは、特定言語の文法、語彙、韻律にも依存する。

５

自然言語の文における情報構造

前節で述べた自然言語の情報伝達機能をどのような発話によって実現するかは、個々の言語の文法、語彙、韻律に依存するが、多くの言語に適用できる一般的な原則も存在している。
語用論においては、文（厳密には節）の情報構造(information structure) [10] が一つの研究テーマとなっている。これは、一つの文には既知情報 (giveninformation) と新情報 (new information) が含まれていて、それぞれが個々の言語においてどのように表現されるかを研究するものである。この場合の「既知」と「新」は、情報を受ける聴者にとってのものであり、情報を与える話者に取っては両方とも既知である。既知情報は topic、新情報は focus と呼ばれることもあるが、本稿では用語の対称性も考慮し、既知情報を「旧情報」、新情報はそのまま「新情報」と呼ぶことにする。
自然言語の情報伝達機能を前節のように規定した
場合、情報構造の中の旧情報は、新たなノードを接続すべき（または、新たなノードで置き換えたり削除したりすべき）既知ノードを指定する、あるいは、（情報の問合せの場合は）その名前や値や他のノードとの接続関係を問い合わすべき既知ノードを指定するための情報である。また、新情報は、旧情報で指定された既知ノードにどのような新ノードをどのようなエッジを介して接続すべきか（または、既知ノードをどのようなノードで置き換えたり削除したりすべきか）を指定するための情報である。
旧情報と新情報がどのように文の中で表現されるかは、個々の言語の文法、語彙、韻律に依存するが、一般的な原則として、旧情報は主語として、新情報は述語として実現されるという傾向がある。ただし、これには例外もあり、言語による違いもある。自然言語の文からいかに旧情報と新情報とを抽出し、それをいかにグラフ構造に対応させるべきかは、今後の大きな研究課題である。

６

自然言語の文の実例

ここで、簡単な実例を示す。話者が聴者に「太郎は、自動車を入手した。
」(1)という文を発したとする。ここで、太郎というノードは既に聴者の知識グラフの中に存在しているはずである（図１参照）。そうでなければ、話者は聴者の知識グラフに太郎ノードを追加するところから始めなければ話が通じなくなる。従って、(1)において、「太郎」が旧情報、「自動車を入手した」が新情報である。
この文の指示するところは、聴者の保有する知識グラフの「太郎」ノードに「所有する」というエッジを介して「自動車」
ノードを接続せよである。これが、話者がこの文を発した意図であり、この文の意味であると考えることができる。この文を聞いた（あるいは、読んだ）後の聴者の知識グラ
フは図２のようになる。この図では、旧情報を黒、新情報を赤で示してある。

図１ 聴者の知識グラフの初期状態

図２ (1)を聞いた後の聴者の知識グラフ
次に、話者は聴者に「太郎の自動車は、赤いスポーツカーだ。
」 (2)という文を発したとする。今度は、「太郎の自動車」が旧情報、「赤いスポーツカー」が新情報である。この文の指示するところは、図２のグラフの「自動車」ノードに車種がスポーツカーであり、色が赤であることを示すノードを接続せよとなる。この文を聞いた後の聴者の知識グラフは図３のようになる。
さらに、話者が聴者に「いや、太郎の自動車は、青だった。
」(3)という文を発した場合、この文は― 1529 ―Copyright(C) 2020 The Association for Natural Language Processing.
All Rights Reserved.

８

図３ (2)を聞いた後の聴者の知識グラフ
図３のグラフの「自動車」ノードの色を示すノードを（赤から）青に変更せよと指示していることになる。

７

考察

前節の実例で示したように、自然言語は、聴者の知識グラフを操作する（すなわち、ノードを追加したり、変更したりする）ための通信プロトコルであることが分かる。また、実例では示さなかったが、疑問文の場合は、聴者の知識グラフの内容を問い合わせるためのプロトコルとして機能する。
さらに、以上の自然言語の情報伝達機能より、以下のことが導かれる。すなわち、自然言語の情報伝達においては、話者の意図に従って発話がなされるわけであるが、個々の発話は、話者の情報伝達の意図と共に聴者の保有する知識（より正確には、聴者が保有していると話者が想定する知識）にも依存する。なぜならば、自然言語は（情報伝達機能に限れば）、聴者の保有する知識を操作することによって情報を伝達する通信プロトコルであり、発話に含まれる旧情報は、聴者の知識グラフの中の操作を行うべきノードを指定しているからである。従って、自然言語の文を機械が解釈する場合、聴者が保有している知識を機械があらかじめ保有していて、それを参照しながら処理を行う必要があることが分かる。
ところで、自然言語の情報伝達機能が明らかになっても、それが個々の言語においてどのように実現されるかは、遥かに複雑な問題である。今までに蓄積されてきた情報構造の研究を参考にしながら、さらに研究を進める必要がある。また、統計に基づいた自然言語処理技術との融合もある時点で必要となるであろう。

おわりに

本稿では、自然言語の情報伝達機能を通信プロトコルの機能を参考にしながら定式化することを試みた。その結果、自然言語の情報伝達機能は、聴者の保有する知識グラフを操作したり、それについて問い合わせたりするための通信プロトコルとなっていることを示した。また、自然言語の処理を行う場合、聴者が保有している知識を参照しながら行う必要があることも明らかとなった。
しかし、この研究はまだ初期の段階にあり、将来の課題も多い。以下に、主要な将来の課題を列挙する。
•
人間の知識をグラフとして表現するための詳細な方法を検討する。
•
自然言語の文の中で旧情報（既存ノード）と新情報（新規ノード）とがどのように表現されているかを検討する。
•
統計に基づいた自然言語処理技術とどのように融合できるかを検討する。

参考文献
[1]

Löbner, F.: Understanding Semantics, 2nd ed., Routledge[2]Austin, J. L.: How to do things with words, Oxford[3]

Searle, J. R.: Speech Acts, Cambridge University Press[4](1969).
山田隆弘: 意味の理解とは何であるのか(2013).
University Press (1962).

－通信理論からのアプローチ－, 2016 年度人工知能学会全国大会, 3O3-OS-04a-4 (2016).
[5]山田隆弘: 世界知識の構造に基づいた談話理解モデ
ル, 言語処理学会第 24 回年次大会, pp. 280-283(2018).

[6]

Clark,H.

H.,Brennan,S.

E.,“Groundingincommunication,” in Resnick, L. B., Levine, J. M., Teasley,
J. S. D. (eds.): Perspectives on socially shared cognition,
American Psychological Association (1991).
[7]

Schmidt, K., Mauro, D.: Essential SNMP, 2nd ed.,O'Reilly (2005).

[8]

Brachman, R., Levesque, H.: Knowledge representation[9]

Ehrlinger, L., Wöß, W.: “Towards a definition ofand reasoning, Morgan Kaufmann (2014).
knowledge graphs,” SEMANTICS 2016 (2016).
[10] Lambrecht, K.: Information Structure and Sentence Form,― 1530 ―Cambridge University Press (1994).

Copyright(C) 2020 The Association for Natural Language Processing.
All Rights Reserved.