セミオティックベースは、選択体系機能言語学(Systemic Functional Linguistics)に即して設計された言語知識のデータベースです。選択体系機能言語学は、言語を社会的記号の体系として捉えた上でコミュニケーションがいかに成り立っているのかという点に焦点を絞り、ことばが使われている社会や状況(コンテクスト)を詳細に検討し抽象化・体系化することにより、ことばが産出・理解されていく過程を明らかにしようとしている言語理論です。言語学の分野だけでなく、自然言語処理や人工知能といった分野でもシステムの基礎として援用されています(例えば、Winograd 1972)。 セミオティックベースは、以下の8つのコンポーネントから成り立っています。
上記のコンポーネントに格納された情報を用いて、日本語テクストの解析と生成を行うシステムを開発しました。解析も生成も数種類の方法がありますが、以下では、メインの方法のみを説明します。
セミオティックベースのコンテンツを利用して、コンテクストを加味したテクスト解析アルゴリズムを設計しました。このアルゴリズムは、既存の選択体系機能言語学に依拠していないパーザと電子化辞書を用いて行われる部分(前処理)と、状況解析、表現解析、語彙文法解析、意味解析、概念解析から構成されます。処理の流れと解析処理の結果を図3、表5に示します。
セミオティックベースのコンテンツを利用して、コンテクストを加味したテクスト生成アルゴリズムを設計しました。このアルゴリズムは、生成すべき内容(what to say)を決定する処理と内容をどのような言い回しで表現するか(how to say)を決定する処理に大別できます。それぞれの処理の流れを図4、図5に示します。
セミオティックベースを使った言語の意味解析の有用性を実証するために、以下のような3種類の応用システムを開発しました。
ユーザが質問を入力すると、まずセミオティックベースを使った入力テキストの理解処理が行われます。次に、事前に同様にテキスト理解処理を施したマニュアルテキストと、理解結果であるインスタンス構造のマッチングを行い、質問に最も合致したマニュアルテキストを選び出します。その後、選ばれたマニュアルテキストの全体的な修辞構造に基づき、ユーザに出力すべき内容が記述された部分を抽出し(修辞構造プランニング)、最後にユーザの知識レベルに応じた言い換えルールを適用して、マニュアルテキストをユーザに理解しやすい表現に変換した上で出力します。
理研の人から来たメールは「理研」フォルダに入れる。 |
理研の人のメールアドレスは、末尾に「.riken.jp」が付く。 |
研究室の人からのメールは、「研究室」フォルダに入れて自宅に転送する。 |
ただし、伊藤さん、高橋さん、小林さんからのメールでセミオティックベースに関するものは、「SB」という名前のフォルダに入れる。 |
この時、添付ファイルがあったらマイドキュメントの「SB」という名前のフォルダに保存する。 |
また、添付ファイルが文書ファイルの場合は、それを表示する。 |
ユーザが入力するこのようなテキストには、ソフトウェア操作に必要な対象や制御条件が必ずしも明確に記述されていないため、言語に関する知識を利用してそれらを明示化する必要があります。入力された日常言語プログラムに対して、まずセミオティックベースを使ってテキスト理解の処理を行い、各文のインスタンス構造とプログラム全体の修辞構造を同定します。次に、それぞれの文をソフトウェア実行に適した形に言い換える正規化の処理を行います。正規化は、日常的な言語表現をソフトウェア的な表現に対応付ける過程と考えることができ、事前に用意された換言規則を適用することにより行われます。 次に、入力テキストの修辞構造を考慮して、正規化の結果得られた文に処理の制御構造を加えて統合したテキスト(実行可能プログラムと呼ぶ)を生成します。生成された実行可能プログラムは、言語で表現された操作や条件、ものをソフトウェア上の対応物に結びつける機能と、条件判断、繰り返しなどの制御構造を表わす表現を解釈してソフトウェア操作の制御を行う機能を利用して、応用ソフトウェアの操作命令に逐次変換、実行されます。
ユーザ | 暑中見舞いを書きたい。 |
秘書 | 暑中見舞いをどなたに送りますか? |
ユーザ | 友人と会社の人です。 |
秘書 | 暑中見舞いの文面を変えますか? |
ユーザ | そうですね。 |
秘書 | まず友人宛の暑中見舞いを作ります。ワープロを起動します。 |
文書作成の作業手順は、他の種類の作業(例えば、メールの整理)の手順と異なるだけでなく、作成する文書の種類や内容によっても変わってきます。作業や作業対象の種類のように言語使用や対話の構造に影響を与える要素を、日常言語コンピューティングでは、コンテクストベース内の状況特徴の組み合わせとして表される状況タイプによって特徴付けます。コンテクストベース内のステージベースには、状況タイプごとにジャンル構造と呼ばれる、その状況における典型的な発話やソフトウェア操作の順序を表した構造が納められています。 ジャンル構造は複数のステージ(場面)から構成され、ステージは複数のムーブ(発話または操作)から構成されます。このような状況に関する知識を利用して、ユーザの入力文から作業の状況タイプ(この例では「暑中見舞いの作成」)を同定し、適当な応答の内容を決定し出力するとともに、実行すべきワープロ操作の内容を決定、実行していきます。