JP2002108915A - 自然言語対話システム及び自然言語処理方法 - Google Patents

自然言語対話システム及び自然言語処理方法

Info

Publication number
JP2002108915A
JP2002108915A JP2000297674A JP2000297674A JP2002108915A JP 2002108915 A JP2002108915 A JP 2002108915A JP 2000297674 A JP2000297674 A JP 2000297674A JP 2000297674 A JP2000297674 A JP 2000297674A JP 2002108915 A JP2002108915 A JP 2002108915A
Authority
JP
Japan
Prior art keywords
user
input
information
search
keyword
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2000297674A
Other languages
English (en)
Inventor
Emi Shimizu
恵美 清水
Munehiko Sasajima
宗彦 笹島
Takehide Yano
武秀 屋野
Hiroshi Shimomori
大志 下森
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP2000297674A priority Critical patent/JP2002108915A/ja
Publication of JP2002108915A publication Critical patent/JP2002108915A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

(57)【要約】 【課題】 ユーザの目的があいまいなときでも適切な情
報をデータベースから取得できる自然言語対話システム
を提供すること。 【解決手段】 入力解析部100は、ユーザがデータベ
ース検索を行う際にユーザの入力内容を理解し、意味表
現に書き換える。情報取得部200において、意味表現
に沿ったデータベース検索を実行して、ユーザに対して
有効な情報を抽出する。出力部300において、ユーザ
に取得した情報を提示する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、利用者と自然言語
により対話を行う自然言語対話システム及び自然言語処
理方法に関する。
【0002】
【従来の技術】情報化する社会の現状において、様々な
種類の情報を管理し利用していく方法は、データベース
と言う形で多方面に渡って浸透し始めた。また、個人単
位でのコンピュータ利用が盛んになり、インターネット
の普及もあって、個人が自分の欲しい情報を各種のデー
タベースから取得することは、一般的な行為と認識され
ている。
【0003】従来の技術として、ユーザがある情報を取
得するためにデータベースを検索する場合、利用可能な
特定の単語(以下、キーワードと呼ぶ)を入力すると、
そのキーワードと一致するフィールドを持つデータをシ
ステムが取得しユーザに提示する、という方法が一般的
であった。例えば、あるユーザがレストランの検索をす
る場合には、あらかじめ用意されたデータベースシステ
ムに対して、ユーザの指定するジャンルや場所などを条
件として入力し、それらのキーワードに一致するレスト
ラン情報を取り出していた。
【0004】また、データベース検索の一例として、検
索を行う際にユーザの条件指定が漠然としている場合、
システムからデータベースに含まれる例を紹介して対話
の主導を行う制御方式(以下、例主導方式と呼ぶ)、例
えば特開平11−149482(自然言語システム)が
ある。この方式は、ユーザのあいまいな検索条件に該当
するような例をデータベースから抽出し、その例をユー
ザが否定した場合にはその例とその例に関連する候補を
除外していき、システム主導によって検索条件を絞り込
むようにしているものである。
【0005】
【発明が解決しようとする課題】ところが、以上のよう
なデータベース検索方法には、以下に示すような問題が
ある。
【0006】第1に、従来のデータベース検索におい
て、ユーザはシステムの許容する語彙を理解し、且つ、
検索のために条件を持っていないと、所望の検索を行う
ことができない。つまり、ユーザは検索システムの受け
付ける検索キーワードを前もって準備し、検索条件を指
定しなければならない負担を強いられる、という問題が
あった。
【0007】第2に、一般的に例主導システムとの対話
方式では、ユーザが候補を選択した理由を確認しない
で、すべてをユーザの嗜好情報として学習している。例
えば、あるユーザがレストランを検索していて、フラン
ス料理のレストランを選んだとする。この店を選んだ理
由は、「今日はデートだから」かもしれないし、「今日
はお金があるからいつもと違うものを食べたい」かもし
れない。しかし、今回このレストランを選んだことはユ
ーザの選んだ理由に関わらず、肯定的に学習されてしま
う。つまり、このユーザは普段フランス料理を選ばない
可能性が高いのに、無駄な学習をしてしまったことにな
り得る。例主導のようなシステムでは、ユーザの選択は
すべて肯定か否定かのどちらかとして理解されてしま
い、実際にユーザの嗜好情報学習データとして学習する
べきかどうかは確認されていない。このように、システ
ムはユーザに学習の必要があるかどうかを確認をしなか
ったために、正確でない嗜好情報を学習してしまうこと
があった。
【0008】第3に、例主導方式によるシステムとの対
話は、一般的に、システムの主導によって例を取り上
げ、ユーザが否定的な答えを返すことで次に提示する例
の候補を絞っていく。しかし、この方法では、ユーザの
選択範囲を絞り込むことによって様々な情報を模索して
行くことを否定し、ユーザの思考範囲を狭くしてしま
う、という問題があった。
【0009】本発明は、上記事情を考慮してなされたも
ので、ユーザが前もって用意をしなくてもシステムとの
対話を可能にする自然言語対話システム及び自然言語処
理方法を提供することを目的とする。
【0010】また、本発明は、ユーザの嗜好情報を反映
させた学習を行うことを可能にする自然言語対話システ
ム及び自然言語処理方法を提供することを目的とする。
【0011】また、本発明は、ユーザの思考範囲を狭く
しないように、様々な情報を模索して行くことを可能に
する自然言語対話システム及び自然言語処理方法を提供
することを目的とする。
【0012】
【課題を解決するための手段】本発明は、利用者からの
自発的なまたは自システムが提示したメッセージに対す
る応答としての入力情報を自然言語により受け付け、該
入力情報を解析して、利用者の意図を示す入力内容を求
めるための手段と、前記入力内容が曖昧な内容を含み且
つその曖昧な内容から必要な特定の内容を定めることが
できない場合に、所定のメッセージを作成して利用者に
提示することとこれに対する利用者からの返答を受け付
けることからなる利用者との対話を通じて、必要な特定
の内容を定めるための処理手段と、検索対象となる個々
の情報について少なくともその名称およびその特徴を表
す説明文を含むドメイン知識を記憶するドメイン知識記
憶手段と、利用者の意図を示す前記入力内容または定め
られた前記特定の内容の少なくとも一方に基づいて、前
記ドメイン知識記憶手段を検索するための検索手段と、
前記検索の結果に基づいて、利用者に提示するメッセー
ジを作成するための手段と、作成された前記メッセージ
を利用者に提示するための手段とを備えたことを特徴と
する。
【0013】好ましくは、前記処理手段は、利用者に特
定の内容の入力を促すための所定のメッセージを作成し
て出力するための手段と、所定の基準に基づいて得た所
定の内容を前記特定の内容の候補とし、利用者に該特定
の内容の候補に対する承認または許否の入力を促すため
の所定のメッセージを作成して出力するための手段とを
含み、これら手段を所定の基準(例えば、ランダムに使
う、前者を優先的に使う、後者を優先的に使う、それぞ
れ使うべき状況を決めておく、評価関数によって選択す
る、ユーザの入力の履歴に基づいて適宜選択するなど、
種々の方法がある)に従って使い分けるものであるよう
にしてもよい。
【0014】好ましくは、前記自然言語対話システム
は、利用者の嗜好に関する情報を記憶する利用者嗜好情
報記憶手段を更に備え、前記処理手段は、前記入力内容
に検索条件が含まれていない場合に、利用者に検索条件
の入力を促すためのメッセージを作成して出力するため
の手段と、前記入力内容に検索条件が含まれていない場
合に、前記嗜好情報記憶手段から所定の基準で検索条件
を取得し、利用者に該取得した検索条件に対する承認ま
たは許否の入力を促すためのメッセージを作成して出力
するための手段とを含み、これら手段を所定の基準(例
えば、ランダムに使う、前者を優先的に使う、後者を優
先的に使う、最初は後者を使い検索条件を変えるときに
前者を使う、最初は前者を使い検索条件を変えるときに
後者を使う、それぞれ使うべき状況を決めておく、評価
関数によって選択する、ユーザの入力の履歴に基づいて
適宜選択するなど、種々の方法がある)に従って使い分
けるものであるようにしてもよい。
【0015】本発明では、例えば、次のような対話が形
成できる。 利用者からの入力情報に、検索に用いるキーワードが含
まれていない→(1) キーワードの候補を取得し、利用者に提示する→利用者
が承諾する→検索を行う。 利用者からの入力情報に、検索に用いるキーワードが含
まれていない→(2) キーワードの入力を促す→利用者がキーワードを入力す
る→検索を行う。利用者からの入力情報に、検索に用い
るキーワードが含まれていない→(1)を行う→利用者
が許否する→(1’)他のキーワードの候補を取得し、
利用者に提示する、または(2)を行う→… 利用者からの入力情報に、検索に用いるキーワードが含
まれていない→(2)を行う→依然としてキーワードが
含まれていない→(1)または(2)を行う… 利用者から検索を続行すべき旨が入力される→所定の条
件が成立した場合に、キーワードの変更の有無を確認す
る→キーワードを変更すべき旨が入力される→(1)ま
たは(2)を行う… また、本発明は、利用者からの自発的なまたは自システ
ムが提示したメッセージに対する応答としての入力情報
を自然言語により受け付け、該入力情報を解析して、利
用者の意図を示す入力内容を求めるためのステップと、
前記入力内容が曖昧な内容を含み且つその曖昧な内容か
ら必要な特定の内容を定めることができない場合に、所
定のメッセージを作成して利用者に提示することとこれ
に対する利用者からの返答を受け付けることからなる利
用者との対話を通じて、必要な特定の内容を定めるため
のステップと、利用者の意図を示す前記入力内容または
定められた前記特定の内容の少なくとも一方に基づい
て、検索対象となる個々の情報について少なくともその
名称およびその特徴を表す説明文を含むドメイン知識を
記憶したデータベースを検索するためのステップと、前
記検索の結果に基づいて、利用者に提示するメッセージ
を作成するためのステップと、作成された前記メッセー
ジを利用者に提示するためのステップとを有することを
特徴とする。
【0016】また、本発明は、利用者からの自発的なま
たは自システムが提示したメッセージに対する応答とし
ての入力情報を自然言語により受け付け、該入力情報を
解析して、利用者の意図を示す入力内容を求めるための
機能と、前記入力内容が曖昧な内容を含み且つその曖昧
な内容から必要な特定の内容を定めることができない場
合に、所定のメッセージを作成して利用者に提示するこ
ととこれに対する利用者からの返答を受け付けることか
らなる利用者との対話を通じて、必要な特定の内容を定
めるための機能と、利用者の意図を示す前記入力内容ま
たは定められた前記特定の内容の少なくとも一方に基づ
いて、検索対象となる個々の情報について少なくともそ
の名称およびその特徴を表す説明文を含むドメイン知識
を記憶したデータベースを検索するための機能と、前記
検索の結果に基づいて、利用者に提示するメッセージを
作成するための機能と、作成された前記メッセージを利
用者に提示するための機能とをコンピュータに実現させ
るためのプログラムを記録したコンピュータ読取り可能
な記録媒体である。
【0017】なお、装置(システム)に係る本発明は方
法に係る発明としても成立し、方法に係る本発明は装置
(システム)に係る発明としても成立する。また、装置
(システム)または方法に係る本発明は、コンピュータ
に当該発明に相当する手順を実行させるための(あるい
はコンピュータを当該発明に相当する手段として機能さ
せるための、あるいはコンピュータに当該発明に相当す
る機能を実現させるための)プログラムを記録したコン
ピュータ読取り可能な記録媒体としても成立する。
【0018】本発明によれば、ユーザはあらかじめ入力
の準備をする必要がないような、システム主導のやり取
りの中で思い付いた自然文も受け付けられるシステムを
提供することができる。例えば、システムはユーザが答
えやすい限定的な質問をしたり、ユーザが利用できるキ
ーワードを多く含むような発話をする。ユーザは限定的
な質問に対して、肯定・否定・それ以外の答え(以下、
これをあいまいな応答と呼ぶ)で答えることができる。
また、システムの発話内容からキーワードを取り入れて
答えることもできる。このように、ユーザが前もって用
意をしなくてもシステムとの対話を進められるようにな
る。また、本発明によれば、ユーザとの対話履歴を暗黙
的にすべて学習するのではなく、システムとの対話を通
してユーザの意志確認を行い、ユーザの嗜好情報を反映
させたデータの編集を行うシステムを提供することがで
きる。また、本発明によれば、システムは、ユーザの目
的を絞り込んでいくのではなく、ユーザの目的が定まら
ない場合、システムはまずユーザの好みを学習した嗜好
情報から候補を決めてユーザに提案し、それでもユーザ
の目的が決まらない場合は、さらに対話を進めていき、
具体的に決定するまでユーザに対して様々なアイデアを
提案することができる。そして、ユーザからシステムに
話し掛けることを前もって準備しなければならないとい
う負担を軽減し、システムと対話をしながら様々な可能
性を見出し、ユーザの意見を固めていくブレインストー
ミング的役割を果たすようにすることができる。
【0019】
【発明の実施の形態】以下、図面を参照しながら発明の
実施の形態を説明する。
【0020】図1に、本発明の一実施形態に係る自然言
語対話システムの構成例を示す。
【0021】図1に示されるように、本実施形態の自然
言語対話システムは、入力された自然文を解析する入力
解析部100、ユーザの意図する情報をデータベースか
ら検索する情報取得部200、ユーザに応答を返す出力
部300を備えている。
【0022】以下、入力解析部100、情報取得部20
0、出力部300について順番に説明する。
【0023】まず、入力解析部100について説明す
る。
【0024】入力解析部100は、ユーザの入力を受け
付け、ユーザの入力意図を分析してユーザの肯定表現や
否定表現、そして意味表現を生成する。意味表現の生成
とは、具体的には、 1)図4にあるような、ユーザの発話内容を意味表現に
変換するために利用されるテンプレートを用意する。 2)ユーザからの入力があれば、用意したテンプレート
を初期化する。 3)ユーザの入力を意味表現に変換する。とする。
【0025】例えば、ユーザがイタリアンレストランを
探している場合には、図4の(1)のテンプレートが具
体化され、Select(1、イタリアン、レストラ
ン)という意味表現が生成される。
【0026】ここで、ユーザの入力文、すなわち、自然
言語文を意味表現に変換する手続きとして、各種公知の
方法を適用可能である。例えば、「自然言語理解」(田
中、辻井 共編、知識工学講座第8巻、オーム社、19
88)には、第1階述語論理を用いる方法(pp.10
2−104)、格文法を用いる方法(pp.104−1
09)などがある。
【0027】なお、ユーザの入力を受け付ける方法とし
ては、音声入力、キーボード入力、マウス入力など、種
々の方法が可能である。また、複数種類の入力方法を同
時にまたは選択的に用いることも可能である。
【0028】次に、情報取得部200について説明す
る。
【0029】情報取得部200は、意味表現判断部20
1、ユーザ嗜好情報取得部202、キーワード編集部2
03、データベース検索部204、検索情報編集部20
5、キーワードデータベース1000、データベース2
000から構成され、ユーザの好みを取り入れたデータ
検索を行うために利用される。
【0030】意味表現判断部201は、入力解析部10
0において生成された意味表現をもとに、検索を行う、
検索を終了するなど、次の動作を判断する。また、キー
ワードを使って検索を行う際には、同じ検索を何度実行
したのかによって、検索を続行する・しないなど、動作
を変える判断をする。
【0031】ユーザ嗜好情報取得部202は、ユーザが
データベース検索の際にキーワードを特に指定しなかっ
た場合、後述するキーワードデータベース1000か
ら、過去に学習された重みをもとにして適切と思われる
キーワードを検索条件として追加する。
【0032】キーワード編集部203は、後述するキー
ワードデータベース1000において各キーワードが持
つ重みの値を加算または減算して更新する。
【0033】データベース検索部204は、後述するデ
ータベース2000からユーザが入力したキーワード、
あるいはユーザ嗜好情報取得部202においてシステム
が提案したキーワード、のいずれかを使ってデータ検索
を行う。
【0034】検索情報編集部205は、データベース検
索部204において、後述するデータベース2000か
ら取り出した情報から、ユーザに応答するための情報と
して必要と思われる付加データを取得する。例えば、レ
ストラン検索を行って抽出された結果がレストランの名
前のみだった場合、そのレストランの名前をもとに、少
なくともレストランの住所や電話番号など、ユーザに応
答文を作成するための付加情報を取得する。
【0035】キーワードデータベース1000は、例え
ば図2のように構成されており、各レコードは、少なく
ともキーワードになる単語のフィールドとその単語に対
する重みのフィールドをもつようにする。このデータベ
ースに登録されるキーワードは、後に説明するデータベ
ース2000に登録されている情報から単語単位で抽出
される。単語の重みの値は初期段階で設定できるように
する。例えば、レストラン検索の場合、各店の一言紹介
に含まれる単語をキーワードとしてできるだけ多く登録
し、それらの各キーワードは初期値を0とする重みのフ
ィールドを持つ。この重みの値は、ユーザの好みによっ
て加算、または減算されていくものとする。以下の例で
は、キーワードデータベース1000に、あらかじめす
べてのレストランの一言紹介から抽出されたキーワード
を登録しておく。なお、状況によってキーワードデータ
ベース1000を動的に切り替えるようにしても良い。
また、ある一定の値以下の重みを持つキーワードは、自
動的に削除するなどとしても良い。
【0036】データベース2000は、データベース検
索部204と検索情報編集部205において利用される
情報を持つリレーショナルデータベースである。例え
ば、レストラン検索であれば、少なくともレストランの
名前、場所、電話番号、レストランの一言紹介などのデ
ータを各フィールドとして持つデータベース、また、少
なくともレストランの名前とそれらの各フィールドから
検索時のキーワードとなり得る単語をキーワードのフィ
ールドとして持つデータベース、少なくともレストラン
の名前とそのレストランが紹介された頻度情報を格納す
るデータベース、などを持つ。
【0037】次に、出力部300について説明する。
【0038】出力部300は、情報取得部200から得
たデータベース検索での結果などをもとに、ユーザに対
して対話を進めていきやすい出力文を生成し、出力す
る。
【0039】なお、ユーザへ出力文を提示する方法とし
ては、合成音出力、表示装置への(画像による)出力な
ど、種々の方法が可能である。また、複数種類の出力方
法を同時にまたは選択的に用いることも可能である。
【0040】対話を進めていきやすい出力文とは、 ・ユーザーが肯定か否定で答えられるような質問文、 ・ユーザがデータベースから情報を引き出すために利用
できるキーワードを含む、のどちらかを満たしていると
する。しかし、質問文の場合は肯定か否定でない応答も
あり得るので、はっきりした肯定、または否定でない場
合には、3つ目のユーザの意思としてあいまいな応答と
理解される。このように、ユーザはシステムから主導さ
れた質問に対して、自分が肯定的に答えるか否定的に答
えるか、あるいはあいまいに答えるかするとシステムが
発話内容を理解し、肯定、否定、またはあいまいな応答
として分類するので、システムに対してどのように返答
すれば良いかを考えなくても良い。さらに、ユーザがあ
いまいな答えをした場合には、学習の許可をユーザに必
ず確認するので、勝手な学習を実行しない。
【0041】また、システムからの主導文に様々な種類
のキーワードを含ませることによって、ユーザのアイデ
アを膨らますきっかけとすることができる。さらに、そ
のようなキーワードを基にユーザはアイデアを発展さ
せ、新たな候補を思い付くことが可能となる。
【0042】ここでは出力した文の意味内容に応じて、
さらにユーザの入力を解析し、次の動作を決定する場合
もある。システムからの出力文は、応答生成時に例えば
IDのような識別情報によって区別される。ユーザに質
問をするような内容の出力文の場合は、この識別情報に
よって、「システムの動作を終了しないで、入力解析部
100はユーザの入力を受け付けるように準備する」と
いう動作を決定する。また、意味表現判断部201の判
断のもとに、データベース2000から情報を取得し、
ユーザに出力するなど、ユーザの入力に対して各種出力
文を出力する。このような出力文例を後の対話例で示
す。
【0043】以上は、図1の自然言語対話システムの構
成例の概要である。
【0044】図3は、本自然言語対話システムの処理内
容(以下、処理手順Aと呼ぶ)のフローチャートの一例
である。
【0045】処理手順Aの各処理ステップの概要を以下
に示す。
【0046】(ステップS1)入力解析部100におい
てユーザが入力した自然文を解析し、意味表現に書き換
えて、ステップS2に進む。
【0047】(ステップS2)入力解析部100から受
け取った意味表現が意味表現判断部201においてデー
タベース検索の実行と判断したときは、ステップS3に
進む。その他の場合は、ステップS9に進む。
【0048】(ステップS3)後述するExistKe
yword()を実行し、入力解析部100から受け取
った意味表現の中にキーワードが含まれていなかった場
合は、ステップS4に進む。含まれている場合は、ステ
ップS5に進む。
【0049】(ステップS4)入力解析部100から受
け取った意味表現を受け取り、データベース検索を実行
するためにキーワードを与えた検索式に変換する。後述
するように、キーワードは、キーワードデータベース1
000に保存されているキーワードの中から、ユーザの
嗜好情報の最上位のキーワードとして登録してあったも
のを取得する場合と、重みが0であるもの(重みが0の
ものがない場合は0以上の最小値のもの)を取得する場
合とがある。どの場合も同じ重みをもつキーワードが複
数ある場合は、ランダムに選んだ1つを取得する。そし
て、ステップS11へ進む。
【0050】(ステップS5)後述するcounter
(“キーワード”)の値が指定した値以下であったなら
ば、ステップS6へ進む。それ以外の場合は、ステップ
S11へ進む。
【0051】(ステップS6)検索式を使い、データベ
ース検索部204においてデータベース2000の検索
を行い、検索結果を得る。そして、ステップS7へ進
む。
【0052】(ステップS7)データベース検索部20
4で抽出した検索結果をもとに、ユーザに提示するため
の更なる情報をデータベース2000から取り出す。そ
して、ステップS8へ進む。
【0053】(ステップS8)データベース検索部20
4で抽出した検索結果をもとに、データベース2000
に保存されているデータの選択頻度情報編集を行う。そ
して、ステップS11へ進む。
【0054】(ステップS9)入力解析部100から受
け取った意味表現が意味表現判断部201においてキー
ワードの編集を実行すると判断した場合は、ステップS
10に進む。その他の場合は、ステップS11に進む。
【0055】(ステップS10)入力解析部100から
受け取った意味表現に含まれているキーワードについ
て、キーワードデータベース1000の重みの編集を行
う。そして、ステップS11へ進む。
【0056】(ステップS11)出力部400におい
て、応答文を生成し、ユーザに出力する。そして、ステ
ップS12へ進む。
【0057】(ステップS12)ステップS11でユー
ザに出力した出力文の内容がユーザに質問をしている内
容であればステップS1へ戻る。その他の場合は、処理
を一旦終了する。
【0058】ここで、処理手順Aにおいて意味表現判断
部201が次の動作を判断する場合に利用するExis
tKeyword()という手続きと、Counter
(“キーワード”)という変数について説明する。
【0059】ExistKeyword()は、データ
ベース検索を実行するという意味表現が生成された場合
に、その意味表現にはキーワードが含まれているかを調
べる手続である。例えば、図4に例示した(1)の意味
表現Select(1、“キーワード”、“データベー
ス名”)が生成された場合に、第2引数である“キーワ
ード”が値を持っているかどうかを調べる。
【0060】具体的には、 begin if (Select(1,“キーワート゛”,“テ゛ータヘ゛ース名”)型意味表現の 第2引数である“キーワート゛”が値を持つ) return (1) else return (0) end と、表現される。
【0061】このように、2番目の引数である“キーワ
ード”に、システムまたはユーザから値が与えられてい
る場合は1を返し、与えられていない場合は0を返す。
【0062】ここで、ExistKeyword()を
使った処理を、値が0の場合と1の場合に分けて説明す
る。以下はどちらもユーザの入力が解析され(ステップ
S1)、データベース検索を実行すると判断された(ス
テップS2、Yes)後、検索条件があるか(ステップ
S3)を判定する場面である。
【0063】ExistKeyword()が0を返し
た場合は、検索条件がないという判定である(ステップ
S3、No)。この場合、まず、ユーザ嗜好情報取得部
202において、図2にあるようなキーワードデータベ
ース1000から、ユーザの嗜好情報の最上位のキーワ
ードとして登録してあったキーワードを取得する(ステ
ップS4)。次に、出力部300においてキーワードで
検索を行っても良いかを出力し確認する(ステップS1
1)。ユーザに確認を促す質問文を出力する(ステップ
S12、Yes)ので、さらにユーザの入力を受け付
け、解析する(ステップS1へ戻る)。
【0064】ExistKeyword()が1を返し
た場合は、検索条件があるという判定である(ステップ
S3、Yes)。この場合、データベース検索の実行
(ステップS6)、付加情報の取得(ステップS7)、
データベースの編集(ステップS8)の各処理が実行さ
れる。
【0065】counter(“キーワード”)は、あ
るキーワードを利用したデータベースの検索は何回行わ
れたのかということを表す変数で、検索に利用されるす
べてのキーワードに対して割り当てられる。また、この
変数の初期値は1とし、データベース検索部204にお
いて、ユーザの入力が図4の(1)のテンプレートの意
味表現Select(1、“キーワード”、“データベ
ース名”)と変換され、データベース検索部204にお
いて同じキーワードで検索が行われた場合に1ずつ増加
していく。この変数にはあらかじめ最大値を決定してお
く。意味表現判断部201は、各キーワードに対して最
初の検索を行うときに、値の初期化を行い、その後、1
以上最大値未満の場合と最大値に等しい場合にちがう動
作をする。これらの動作の違いを説明する。
【0066】counter(“キーワード”)=1以
上最大値未満の場合は、データベース検索部204にお
いてデータベース検索が実行され、検索情報編集部20
5において抽出されたレストランの付加情報の取得、デ
ータベースの編集として紹介頻度の値の更新が実行され
る。最後に出力部300において、データベースから取
得したデータを使った応答文を出力する。
【0067】図5に、レストラン紹介頻度情報の例を示
す。
【0068】counter(“キーワード”)=最大
値の場合は、同じキーワードでのデータベース検索をシ
ステムが自動的に続行しないと判断され、ユーザに同じ
キーワードでの検索を続行するかどうかを確認する質問
文を出力する。続行すると判断された場合は値がリセッ
トされる。
【0069】以下、処理手順Aに基づき、このシステム
を利用してユーザが好みのレストランを見つける場面を
想定した実際の対話例と、各入力文と出力文に対しての
詳しい説明をする。以下で用いる具体例では、ユーザの
発話を“Ur 発話番号:発話文”と表し、システムの
出力を“Sm 発話番号: 出力文”と表記する。
【0070】まず、ユーザの発話の例が次のようであっ
たとする。User(=Ur)1: レストランを探し
たいんだけど…すなわち、システムがユーザの入力待ち
の状態で、上記のようにユーザから「レストランを探し
たいんだけど…」という自然言語文が入力される。
【0071】入力解析部100は、入力文を「レストラ
ンデータベースから1件検索する」ことを意味する表現 1: Select(1,,レストラン) に変換して、意味表現判断部201へ出力する(ステッ
プS1)。意味表現1の3つの引数は左から順に、デー
タベース検索をして取得するデータの数、データベース
検索をするためのキーワード、検索を実行するデータベ
ースの名前、を意味する。上記の意味表現1の場合、検
索で取得するデータの数は1、キーワードはなし、デー
タベースはレストランである。
【0072】意味表現判断部201は、この意味表現を
受け取り、データ検索を行うと判断する(ステップS
2)。しかし、ここではExistKeyword()
の値が0で返ってくる。意味表現判断部201は、この
意味表現にはキーワードが与えられていない(ステップ
S3、No)ので、これまでに学習したユーザの嗜好情
報をキーワードとして取得する必要があると判断する。
ユーザ嗜好情報取得部202では、図2にあるようなキ
ーワードデータベース1000から、ユーザの嗜好情報
の最上位のキーワードとして登録してあった“イタリア
ン”をキーワードとして取得する(ステップS4)。意
味表現1は 1’: Select(1,イタリアン,レストラン) となり、「レストランデータベースの中から“イタリア
ン”というキーワードを含むデータを1件抽出する」と
いうことを表す。
【0073】ここで、ユーザの嗜好情報の最上位にある
キーワードを用いるのは、 ・検索を繰り返していくとデータが編集されていくの
で、確実にユーザの好むものから提示できるようにな
る、 ・最初のきっかけとして、ユーザの好むものから始め
る、という理由からである。
【0074】また、キーワードデータベース1000に
ある“イタリアン”という値の重みは、ユーザから自発
的に指定されたものではないので、値は編集されない。
つまり、今回の検索が終了するときに特にユーザからキ
ーワードを編集したい旨の要望がない限り、システムか
ら提案されたキーワードの重みの値は編集されない。な
お、検索終了時のキーワードの編集についての発話例は
後ほど説明する。
【0075】ExistKeyword()の値が0な
ので、出力部300において、ユーザに“イタリアン”
というキーワードで検索を行っても良いかを確認する
(ステップS11)。
【0076】このときのシステムの出力1の例と、これ
に対するユーザの発話2の例を次に示す。 System(=Sm)1: 「イタリアン」というキ
ーワードで検索を行います。よろしいですか? Ur2: それでいいよ。
【0077】このように、システムはユーザが次の入力
をしやすいように、肯定か、否定か、あいまいな応答の
いずれかで答えられるような確認文を返すようにし(ス
テップS12、Yes)、ユーザの答えに対応するよう
な入力解析を行うようにする(ステップS1へ戻る)。
【0078】ここでユーザの応答が肯定だったので、先
ほどの意味表現を利用して検索を行うことが許可された
とすると、システムが提案したキーワード、“イタリア
ン”をもとに検索を開始する。つまり、 1’: Select(1,イタリアン,レストラン) という意味表現が、意味表現判断部201へ送られる
(ステップS1)。
【0079】意味表現判断部201は、この意味表現を
受け取り、“イタリアン”というキーワードを用いてデ
ータ検索を行うと判断する(ステップS2、Yes)。
この意味表現にはキーワードが与えられているのでEx
istKeyword()の値は1を返し、キーワード
を取得する必要はないのでステップS5へ進む(ステッ
プS3)。今回はデータベース検索のための必要条件を
すべて含んだ意味表現を取得したので、“イタリアン”
を条件としたレストランのデータベース検索を実行する
(ステップS6)。データベースの検索とは、“イタリ
アン”というキーワードを持つ、紹介頻度の少ないも
の、つまり、データベース2000に登録されている
が、レストランのデータベース検索を実行した中で、一
度も検索結果としてあげられていないレストランを1件
取得することである。検索の開始なので、counte
r(“イタリアン”)=1である。なお、今回のこの変
数の最大値は3とする。
【0080】ここで、店を決定する要素となる紹介回数
頻度の値について説明する。データベースに登録されて
いる情報は、紹介頻度の値が少ないものが上位にくるよ
うに設定されている。つまり、ユーザに指定されたキー
ワードを検索条件として検索を実行した場合には、紹介
頻度の値が少ないデータが優先的に選択されるようにす
る。レストランのデータベースは、常に新しい店が追加
されてくることを想定しているので、紹介頻度に依存さ
せる場合には、同じ店をいつも紹介する確率は低くな
る。
【0081】このようにデータベースを構成することに
よって、次の2つの効果が得られる。 ・選択されたことがある店は、店の名前や場所をキーワ
ードにして検索される可能性がある。 ・ユーザに対してまだ紹介したことのない店を提示する
ことによって、より斬新なアイデアをもたらす可能性が
ある。
【0082】次に、検索結果のレストランの名前とキー
ワードをもとにして、レストランのおすすめメニュー、
レストランの住所などの付加情報をデータベース200
0から取得する(ステップS7)。また、検索結果情報
編集部205において、データベースから取得してきた
店の紹介頻度の値は+1される(ステップS8)。
【0083】出力部300は、データベースから取得し
たレストランについての情報を使った応答文を生成し、
合成音などで出力する(ステップS11)。データベー
スを検索した場合の応答文では、店名を紹介し、データ
ベースに格納されている一言紹介の文を読み上げるなど
する。このときのシステムの出力2の例を次に示す。S
m2: スパゲティハウス「ジョーパスタ」を紹介しま
す。こちらでは、たくさんの種類のピザとパスタからハ
ーフサイズを2つ選べるコースがあります。今月のおス
スメは春野菜のスパゲティ、アスパラガスとベーコンの
ピザです。
【0084】このようにユーザが検索した結果の情報を
紹介する場合、システムはキーワードとして登録される
基となった店の一言紹介の文を出力して、ユーザの入力
に再利用できるような単語を含む応答文を返すようにす
る。今回は「イタリアン」というキーワードで検索し、
抽出されたレストラン「ジョーパスタ」の一言紹介文を
応答文として読み上げている。このように、一言紹介の
文は、例えば「ピザ」「春野菜」「アスパラガス」「ベ
ーコン」などのような、ほかの料理を連想させるような
単語を多く含んでいる。このように、一言紹介文中の単
語を利用することにより、ユーザの意思があいまいな場
合に、ブレインストーミングの要領でユーザの本当に検
索したいキーワードを誘導する補助的役割を務める。ま
た、この一言紹介で使われているキーワードとなり得る
単語(の全部または一部)は、ユーザがキーワードとし
て利用できるようにキーワードデータベース1000に
登録されている。
【0085】この出力文はユーザに対して確認を行って
いるものではない(ステップS12、No)ので、一旦
処理は終了し、次のユーザの入力を待つ(終了)。
【0086】このときのユーザの発話3の例を次に示
す。 Ur3: ふうん、他にないかな。 このようなユーザの入力から、入力解析部100は、図
4の(2)にある意味表現 2: ShowAnother(イタリアン、[“ジョ
ーパスタ”])を生成し(ステップS1)、この意味表
現を意味表現判断部201へ送る。この意味表現は
「“イタリアン”というキーワードで検索して紹介した
レストラン(現在の値は=[“ジョーパスタ”])以外
の“イタリアン”というキーワードを含むデータを更に
抽出する」ということを表す。意味表現判断部201で
は、これを受け取り、データベース検索を行うと判断す
る(ステップS2、Yes)。同じキーワードでの二件
目の検索(ステップS3、Yes)なのでcounte
r“イタリアン”=2となる(ステップS5、Ye
s)。データベース検索部204では、“イタリアン”
というキーワードを用いて検索を行い(ステップS
6)、一度紹介したデータである“ジョーパスタ”とい
うデータが抽出された場合は、その候補を無視して新し
い店の候補が抽出されるまで検索を実行する。検索結果
が抽出されたら、そのレストランについての付加情報を
取得し(ステップS7)、そのレストランの紹介頻度を
+1して(ステップS8)、応答文を出力する(ステッ
プS11)。このときのシステムの出力3の例を次に示
す。 Sm3: イタリアンレストラン「マンマ・ミーヤ」を
紹介します。こちらでは旬の素材に気を使い、特に魚介
類をふんだんに使った家庭料理が自慢です。コース料理
もリーズナブルで、リピーターも多い一軒です。また、
こちらのロブスター料理はぜひおススメの一品です。
【0087】二件目の紹介(ステップS12、No)を
終了(終了)するが、ユーザはまだ決定しないで次の候
補を求める発言をする。
【0088】このときのユーザの発話4の例を次に示
す。 Ur4: じゃあ、次の候補は何?このようなユーザの
入力から、入力解析部100は、再び図4の(2)にあ
る意味表現 2: ShowAnother(イタリアン、[“ジョ
ーパスタ”、“マンマ・ミーヤ”])という意味表現を
生成し、この意味表現を意味表現判断部201へ送る
(ステップS1)。この意味表現は「“イタリアン”と
いうキーワードで検索して紹介したレストラン(現在の
値は=[“ジョーパスタ”、“マンマ・ミーヤ”])以
外の、“イタリアン”というキーワードを含むデータを
更に抽出する」ということを表す。意味表現判断部20
1では、これを受け取り、データベース検索を行うと判
断する(ステップS2、Yes)。ここでは、同じキー
ワードでの三件目の検索(ステップS3、Yes)なの
で、counter“イタリアン”=3となる(ステッ
プS5、Yes)。以下は二件目の検索と同様に、デー
タベース検索を行い(ステップS6)、レストランの付
加情報を取得して(ステップS7)、レストランの紹介
頻度を1加算し(ステップS8)、ユーザに出力する
(ステップS11)。このときのシステムの出力4の例
を次に示す。 Sm4: イタリアンレストラン「マルゲリータ」を紹
介します。こちらはピザがおススメです。薄めの生地に
トッピングをたっぷりのせてオーナー自慢の石窯で焼き
あげます。一押しはシーフードのホワイトソースピザで
す。
【0089】三件目の紹介(ステップS12、No)を
終了(終了)するが、ユーザは、さらに次の候補を求め
る発言をする。
【0090】このときのユーザの発話5の例を次に示
す。 Ur5: 他にもあるの?ユーザの入力から入力解析部
100は、 3: ShowAnother(イタリアン、[“ジョーパスタ”、
“マンマ・ミーヤ”、“マルゲリータ”])という意味表
現を生成する(ステップS1)が、意味表現判断部20
1ではcounter“イタリアン”=4となり(ステ
ップS5、No)、このまま検索を続行しないようにす
るので、ユーザは「イタリアン」での検索を続行したい
かどうかを確認する(ステップS11)。このときのシ
ステムの出力5の例を次に示す。 Sm5: 「イタリアン」での検索を続けますか?この
ように、システムからユーザに確認を行い(ステップS
12、Yes)、ユーザの入力を待つ(ステップS1へ
戻る)。このときのユーザの発話6の例を次に示す。 Ur6: 別のキーワードにして。ユーザの入力は、 4: ChangeKeyWord(イタリアン) 5: Select(1,,レストラン)という、図4
の(3)と(1)のテンプレートから、「キーワードを
変更する」、「レストランというデータベースから1件
検索する」を意味する具体的な表現を生成し(ステップ
S1)、意味表現判断部201は、これらの意味表現か
らキーワードを変えてデータベースの検索を実行すると
判断する(ステップS2、Yes)。今回のユーザの入
力文から、キーワードの変更を意図する意味表現が生成
され、かつExistKeyword()の値が0を返
したので(ステップS3、No)、ユーザ嗜好情報取得
部202において、キーワードデータベース1000か
らキーワードを取り出す(ステップS4)。今回は二つ
目のキーワードを使った検索を始めることになる。シス
テムからの提案で、二つ目以降のキーワードを抽出する
場合は、重みの値が0であるキーワードをランダムに1
つ選択して、キーワードとして利用する。重みの値が0
のものがない場合は、0以上の最小値を持つものの中か
らランダムに1つ選択する。今回は、“旬野菜”という
重みの値が0のキーワードがシステムに選択されたの
で、意味表現は 5’: Select(1,旬野菜,レストラン)とな
り、ユーザに“旬野菜“というキーワードで検索を行っ
ても良いかを確認する(ステップS11)。
【0091】このときのシステムの出力6の例と、これ
に対するユーザの発話7の例を次に示す。 Sm6: それでは「旬野菜」をキーワードにしてレス
トランの検索をいたします。よろしいですか? Ur7: 「旬野菜」は嫌いだから、別のキーワードに
して。
【0092】意味表現判断部201では、“旬野菜”と
いうシステムが提案したキーワードは気に入らなかった
と判断し、意味表現(4)のテンプレートが具体化さ
れ、6: RejectKeyWord(旬野菜)とな
る。また、ユーザ嗜好情報取得部202において、“旬
野菜”に代わる他のキーワードをキーワードデータベー
ス1000から取り出してくることを希望している、と
判断する。
【0093】上記6のようなRejectKeyWor
d(旬野菜)という意味表現が入力解析部100で生成
された場合は、データベース検索ではなく(ステップS
2、No)、キーワードの編集を実行することを意味す
る(ステップS9、Yes)。この場合、キーワード編
集部203において、“旬野菜”というキーワードがユ
ーザに拒否されたと判断し、重みはデフォルトの値であ
る−0.3と編集する(ステップS10)。
【0094】ここで、図4の意味表現のテンプレート
(3)ChangeKeyWord(゛キーワード゛)
と(4)RejectKeyWord(゛キーワード
゛)の利用方法の違いは、「別なキーワードにして。」
というあいまいな入力文と、「旬野菜は嫌いだから、」
という否定的な入力文におけるユーザの意図の違いであ
り、入力解析部100が判断する。「別なキーワードに
して。」というユーザの入力は、特に“イタリアン”と
いうキーワードに対して否定しているのではないと理解
できる。このように、入力解析部100では、ユーザの
好みを丁寧に学習していくために、あいまいな否定とは
っきりした否定の文を分割して理解する。
【0095】この場合、システムの応答文は確認文(ス
テップS12、Yes)となる。このときのシステムの
出力7の例を次に示す。 Sm7: 「旬野菜」での検索をキャンセルしました。
検索を続けますが、キーワードの指定はありますか?シ
ステムはユーザの入力を待ち(ステップS1へ戻る)、
ユーザの入力から意味表現を生成する(ステップS
1)。このときのユーザの発話8の例を次に示す。 Ur8: 別にない。また、このとき、 7: Select(1,,レストラン)となる。
【0096】今までの検索のように、ExistKey
word()の値が0であり、ユーザからキーワードが
指定されていないので(ステップS3、No)、前回
「旬野菜」というキーワードを取得した場合と同様に、
キーワードをランダムに1つ選択する(ステップS
4)。今回は、システムが“ロブスター”というキーワ
ードを選択したので、 7’: Select(1, ロブスター, レストラ
ン)となる。システムは、“ロブスター”というキーワ
ードを用いてデータベースの検索を行うために、ユーザ
に確認する(ステップS11)(ステップS12、Ye
s)(ステップS1へ戻る)。
【0097】このときのシステムの出力8の例と、これ
に対するユーザの発話9の例を次に示す。 Sm8: それでは「ロブスター」をキーワードにして
レストランの検索をいたします。よろしいですか? Ur9: それでお願い。
【0098】ユーザの応答が肯定という意味表現を得た
ので(ステップS1)、“ロブスター”という、システ
ムが提案したキーワードを利用してデータベース検索を
行うと判断する(ステップS2、Yes)。Count
er(“ロブスター”)の値は1であり、検索キーワー
ドもある(ステップS3、Yes)のでデータベース検
索を行い(ステップS6)、レストランの付加情報を取
得して(ステップS7)、レストランの紹介頻度を編集
し(ステップS8)、ユーザに出力する(ステップS1
1)。
【0099】ここで、例えば、最初の検索条件であった
“イタリアン”というキーワードと、“ロブスター”と
いうキーワードの両方を持つ候補があった場合、1度紹
介している店の出現頻度は編集されており、検索結果と
して抽出される優先度は低い。
【0100】このときのシステムの出力9の例と、これ
に対するユーザの発話10の例を次に示す。 Sm9:「アメリカンハウス」では豪快なロブスターと
ステーキのコンビネーションが楽しめます。また、他に
も本場アメリカのバーベキューリブ、オニオンリング、
シーザーサラダなども人気です。 Ur10:それでは、そのレストランへ行く。
【0101】ユーザの意図は図4(6)のテンプレート
が具体化され「“そのレストラン”に決定した」という
意味の 8: Decide(そのレストラン)という表現に変
換される(ステップS1)。
【0102】ここで、「その」などの指示代名詞の指示
対象を決定する方法として、「マルチモーダル対話シス
テムにおけるインタラクション機構」(高橋、竹澤、イ
ンタラクション‘99、情報処理学会、pp.94‐9
5)などの公知の方法を適用し、システムは“そのレス
トラン”は“アメリカンハウス”であることを解釈す
る。
【0103】意味表現判断部201は、この意味表現か
らデータベースの検索を続けるのではなく(ステップS
2、No)、「“アメリカンハウス”に決定し、検索を
終了する」と解釈するので、キーワードの編集でもない
(ステップS9、No)と判断する。この場合、システ
ムは、ユーザに対して、編集するキーワードがあるかど
うかを尋ねる。
【0104】このときのシステムの出力10の例と、こ
れに対するユーザの発話11の例を次に示す。 Sm10: 今回の検索では、どのキーワードを登録し
ますか? Ur11: えーっと、「ステーキ」かな。
【0105】ユーザは、今回、システムから様々な情報
を取得し、その中で“ステーキ”というキーワードに注
目した。そこで、入力解析部100は、ユーザの入力文
から図4の(5)のテンプレートが具体化され「“ステ
ーキ”というキーワードを受け入れる」 9 : AcceptKeyWord(ステーキ) という意味表現を生成する(ステップS1)。意味表現
判断部201は、この意味表現はデータベース検索では
なく(ステップS2、No)、キーワードデータベース
の編集を実行すると判断し(ステップS9、Yes)、
キーワード編集部203は、“ステーキ”というキーワ
ードが次回の検索に役立つよう、ユーザの嗜好情報とし
てキーワードデータベースを編集(なお、ステーキがデ
ータベースになければ、例えば、ステーキと、適当な重
みを登録する)する(ステップS10)。ユーザへの出
力(ステップS11)は、例えば、以下のようになる。 Sm11: それでは、レストランの付加情報を出力い
たします。こちらのレストランの電話番号は、123−
4567となります。週末は大変込み合いますので、予
約をされることをお勧めいたします。本日の営業時間は
10時までですが、ラストオーダーは9時半までとなっ
ています。このレストランは専用の駐車場がありますの
で、そちらのほうに車を停めることができます。…とこ
ろで、検索を行っている途中に、ユーザのほうからキー
ワードを指定して検索するような要求が出された場合に
は、これを受け付けるようにしてもよい。
【0106】例えば、上記のシステム出力例Sm6と、
これに対するユーザ発話例Ur7は、 Sm6: それでは「旬野菜」をキーワードにしてレス
トランの検索をいたします。よろしいですか? Ur7: 「旬野菜」は嫌いだから、別のキーワードに
して。であったが、Sm6にあるようなシステムからの
問いに対して、ユーザが Ur7’: 「旬野菜」は好きじゃないよ。「ロブスタ
ー」で検索して。という答えを返した場合は、入力解析
部100は、 6’: RejectKeyWord(旬野菜) 7’: Select(1,ロブスター,レストラン)
という意味表現を、ユーザ嗜好情報取得部202からキ
ーワードの取得を行わずに生成する。
【0107】また、検索の終了時に特にキーワードを登
録しないことも可能である。例えば、システム出力例S
m10(今回の検索では、どのキーワードを登録します
か?)にあるようなシステムからの問いに対して、ユー
ザが Ur11’: 別にキーワードは登録しなくていいよ。
という答えを返した場合、入力解析部100は、 9’: AcceptKeyWord( )という意味
表現を生成する。キーワード編集部203はキーワード
の指定がなかった場合はキーワードデータベースの編集
を行わない。
【0108】また、今回は、システムを利用するユーザ
が固定されている場合として考えたが、複数のユーザに
利用されるような場合は、個人適応したキーワードデー
タベースやレストランの選択頻度情報を保持しても良
い。例えば、上記の例で、 Ur1: レストランを探したいんだけど…と、ユーザ
がシステムに話し掛けたときに、ユーザの声の特徴を認
識して話者照合をする、またはシステムを起動させたと
きに、あらかじめ登録したユーザとしてログインするな
どして、システムを利用するユーザに適応したキーワー
ドデータベースや、レストランのデータベースの切り替
えを行うようにしてもよい。
【0109】また、ユーザがシステムとの対話の中で否
定したキーワードを、キーワードデータベース1000
から削除してしまい、キーワードデータベース1000
の保存情報を最小限のサイズにすることも可能である。
【0110】以上のように、本実施形態によれば、種々
の効果を得ることができる。例えば、コマンド入力や定
型文をユーザが覚えておく必要はなく、ユーザはシステ
ムの主導する応答文に答えればよい。さらに、システム
の主導する応答文にはユーザが利用できるキーワードを
できるだけ含むようにしているので、ユーザはキーワー
ドを自分から準備する必要がなく、入力に対してのユー
ザの抵抗や負担を軽減する。また、ユーザに好みを確認
した情報のみをデータベースに反映していくので、ユー
ザが間違って選択してしまった場合や見当違いだった場
合にはデータは編集されず、システムの過剰学習を防
ぐ。また、ユーザ自身が気に入ったキーワードだけを上
位に登録するので、ユーザはシステムの保存している内
容を信用してデータの検索ができる。また、ユーザはシ
ステムから提案される情報をもとに、キーワードとなり
得る様々な考えを巡らせることができ、あいまいだった
目的を具体化することができる。これによって、例え
ば、試したこともないレストラン(料理)にチャレンジ
するなど、新しいアイデアを獲得する可能性を見出すな
どの効果がある。
【0111】なお、以上の各機能は、ソフトウェアとし
ても実現可能である。また、本実施形態は、コンピュー
タに所定の手段を実行させるための(あるいはコンピュ
ータを所定の手段として機能させるための、あるいはコ
ンピュータに所定の機能を実現させるための)プログラ
ムを記録したコンピュータ読取り可能な記録媒体として
も実施することもできる。
【0112】なお、本実施形態で例示した構成は一例で
あって、それ以外の構成を排除する趣旨のものではな
く、例示した構成の一部を他のもので置き換えたり、例
示した構成の一部を省いたり、例示した構成に別の機能
を付加したり、それらを組み合わせたりすることなどに
よって得られる別の構成も可能である。また、例示した
構成と論理的に等価な別の構成、例示した構成と論理的
に等価な部分を含む別の構成、例示した構成の要部と論
理的に等価な別の構成なども可能である。また、例示し
た構成と同一もしくは類似の目的を達成する別の構成、
例示した構成と同一もしくは類似の効果を奏する別の構
成なども可能である。また、各種構成部分についての各
種バリエーションは、適宜組み合わせて実施することが
可能である。また、本実施形態は、装置全体としての発
明、装置内部の構成部分についての発明、またはそれら
に対応する方法の発明等、種々の観点、段階、概念また
はカテゴリに係る発明を包含・内在するものである。従
って、この発明の実施の形態に開示した内容からは、例
示した構成に限定されることなく発明を抽出することが
できるものである。
【0113】本発明は、上述した実施の形態に限定され
るものではなく、その技術的範囲において種々変形して
実施することができる。
【0114】
【発明の効果】本発明によれば、ユーザが前もって用意
をしなくてもシステムとの対話が可能になる。また、本
発明によれば、ユーザの嗜好情報を反映させた学習を行
うことが可能になる。また、本発明によれば、ユーザの
思考範囲を狭くしないように、様々な情報を模索して行
くことが可能になる。
【図面の簡単な説明】
【図1】本発明の一実施形態に係る自然言語対話システ
ムの構成例を示す図
【図2】キーワードデータベースの例を示す図
【図3】同実施形態に係る自然言語対話システムの処理
手順の一例を示すフローチャート
【図4】意味表現の例を示す図
【図5】レストラン紹介頻度情報の例を示す図
【符号の説明】
100…入力解析部 200…情報取得部 201…意味表現判断部 202…ユーザ嗜好情報取得部 203…キーワード編集部 204…データベース検索部 205…検索情報取得部 300…出力部 1000…キーワードデータベース 2000…データベース
───────────────────────────────────────────────────── フロントページの続き (72)発明者 屋野 武秀 神奈川県川崎市幸区小向東芝町1番地 株 式会社東芝研究開発センター内 (72)発明者 下森 大志 神奈川県川崎市幸区小向東芝町1番地 株 式会社東芝研究開発センター内 Fターム(参考) 5B075 ND20 NK02 PP02 PP03 PP12 PP26 PQ02 PQ40 PR08 QT06 UU40

Claims (11)

    【特許請求の範囲】
  1. 【請求項1】利用者からの自発的なまたは自システムが
    提示したメッセージに対する応答としての入力情報を自
    然言語により受け付け、該入力情報を解析して、利用者
    の意図を示す入力内容を求めるための手段と、 前記入力内容が曖昧な内容を含み且つその曖昧な内容か
    ら必要な特定の内容を定めることができない場合に、所
    定のメッセージを作成して利用者に提示することとこれ
    に対する利用者からの返答を受け付けることからなる利
    用者との対話を通じて、必要な特定の内容を定めるため
    の処理手段と、 検索対象となる個々の情報について少なくともその名称
    およびその特徴を表す説明文を含むドメイン知識を記憶
    するドメイン知識記憶手段と、 利用者の意図を示す前記入力内容または定められた前記
    特定の内容の少なくとも一方に基づいて、前記ドメイン
    知識記憶手段を検索するための検索手段と、 前記検索の結果に基づいて、利用者に提示するメッセー
    ジを作成するための手段と、 作成された前記メッセージを利用者に提示するための手
    段とを備えたことを特徴とする自然言語対話システム。
  2. 【請求項2】前記処理手段は、 利用者に特定の内容の入力を促すための所定のメッセー
    ジを作成して出力するための手段と、 所定の基準に基づいて得た所定の内容を前記特定の内容
    の候補とし、利用者に該特定の内容の候補に対する承認
    または許否の入力を促すための所定のメッセージを作成
    して出力するための手段とを含み、 これら手段を所定の基準に従って使い分けるものである
    ことを特徴とする請求項1に記載の自然言語対話システ
    ム。
  3. 【請求項3】利用者の嗜好に関する情報を記憶する利用
    者嗜好情報記憶手段を更に備え、 前記利用者の嗜好に関する情報に基づいて、前記特定の
    内容の候補を得ることを特徴とする請求項2に記載の自
    然言語対話システム。
  4. 【請求項4】前記自然言語対話システムは、利用者の嗜
    好に関する情報を記憶する利用者嗜好情報記憶手段を更
    に備え、 前記処理手段は、 前記入力内容に検索条件が含まれていない場合に、利用
    者に検索条件の入力を促すためのメッセージを作成して
    出力するための手段と、 前記入力内容に検索条件が含まれていない場合に、前記
    嗜好情報記憶手段から所定の基準で検索条件を取得し、
    利用者に該取得した検索条件に対する承認または許否の
    入力を促すためのメッセージを作成して出力するための
    手段とを含み、 これら手段を所定の基準に従って使い分けるものである
    ことを特徴とする請求項1に記載の自然言語対話システ
    ム。
  5. 【請求項5】前記利用者嗜好情報記憶手段が記憶する前
    記利用者の嗜好に関する情報は、検索条件となるキーワ
    ードとその重み値を組とするものであり、 前記処理手段は、前記重み値に基づいて、前記検索条件
    とするキーワードを選択するものであり、 前記自然言語対話システムは、利用者からの入力情報に
    基づいて、前記キーワードの重み値を編集するための手
    段を更に備えたことを特徴とする請求項3または4に記
    載の自然言語対話システム。
  6. 【請求項6】前記説明文は、前記検索条件となり得るキ
    ーワードを含むものであることを特徴とする請求項1な
    いし5のいずれか1項に記載の自然言語対話システム。
  7. 【請求項7】前記自然言語対話システムは、前記ドメイ
    ン知識記憶手段に記憶された検索対象となる個々の情報
    ごとに、それが前記検索手段による検索結果として利用
    者に提示された頻度を示す提示頻度を記録しておくため
    の手段を更に備え、 前記検索手段は、前記ドメイン知識記憶手段を検索する
    際に、より低い前記提示頻度を持つ情報を優先的に選択
    して抽出することを特徴とする請求項1ないし6のいず
    れか1項に記載の自然言語対話システム。
  8. 【請求項8】前記ドメイン知識記憶手段に記憶されてい
    る前記ドメイン知識は、前記名称および説明文に対応す
    る詳細情報をも含むものであり、 検索された前記名称および説明文を含み、対応する前記
    詳細情報を含まないメッセージを利用者に提示した後
    に、利用者からの入力情報に基づいて、前記詳細情報を
    も提示すべきと判断された場合に、対応する前記詳細情
    報を含むメッセージを作成して利用者に提示することを
    特徴とする請求項1ないし7のいずれか1項に記載の自
    然言語対話システム。
  9. 【請求項9】利用者からの自発的なまたは自システムが
    提示したメッセージに対する応答としての入力情報を自
    然言語により受け付け、該入力情報を解析して、利用者
    の意図を示す入力内容を求めるためのステップと、 前記入力内容が曖昧な内容を含み且つその曖昧な内容か
    ら必要な特定の内容を定めることができない場合に、所
    定のメッセージを作成して利用者に提示することとこれ
    に対する利用者からの返答を受け付けることからなる利
    用者との対話を通じて、必要な特定の内容を定めるため
    のステップと、 利用者の意図を示す前記入力内容または定められた前記
    特定の内容の少なくとも一方に基づいて、検索対象とな
    る個々の情報について少なくともその名称およびその特
    徴を表す説明文を含むドメイン知識を記憶したデータベ
    ースを検索するためのステップと、 前記検索の結果に基づいて、利用者に提示するメッセー
    ジを作成するためのステップと、 作成された前記メッセージを利用者に提示するためのス
    テップとを有することを特徴とする自然言語処理方法。
  10. 【請求項10】利用者からの自発的なまたは自システム
    が提示したメッセージに対する応答としての入力情報を
    自然言語により受け付け、該入力情報を解析して、利用
    者の意図を示す入力内容を求めるための機能と、 前記入力内容が曖昧な内容を含み且つその曖昧な内容か
    ら必要な特定の内容を定めることができない場合に、所
    定のメッセージを作成して利用者に提示することとこれ
    に対する利用者からの返答を受け付けることからなる利
    用者との対話を通じて、必要な特定の内容を定めるため
    の機能と、 利用者の意図を示す前記入力内容または定められた前記
    特定の内容の少なくとも一方に基づいて、検索対象とな
    る個々の情報について少なくともその名称およびその特
    徴を表す説明文を含むドメイン知識を記憶したデータベ
    ースを検索するための機能と、 前記検索の結果に基づいて、利用者に提示するメッセー
    ジを作成するための機能と、 作成された前記メッセージを利用者に提示するための機
    能とをコンピュータに実現させるためのプログラムを記
    録したコンピュータ読取り可能な記録媒体。
  11. 【請求項11】利用者からの自発的なまたは自システム
    が提示したメッセージに対する応答としての入力情報を
    自然言語により受け付け、該入力情報を解析して、利用
    者の意図を示す入力内容を求めるための機能と、 前記入力内容が曖昧な内容を含み且つその曖昧な内容か
    ら必要な特定の内容を定めることができない場合に、所
    定のメッセージを作成して利用者に提示することとこれ
    に対する利用者からの返答を受け付けることからなる利
    用者との対話を通じて、必要な特定の内容を定めるため
    の機能と、 利用者の意図を示す前記入力内容または定められた前記
    特定の内容の少なくとも一方に基づいて、検索対象とな
    る個々の情報について少なくともその名称およびその特
    徴を表す説明文を含むドメイン知識を記憶したデータベ
    ースを検索するための機能と、 前記検索の結果に基づいて、利用者に提示するメッセー
    ジを作成するための機能と、 作成された前記メッセージを利用者に提示するための機
    能とをコンピュータに実現させるためのプログラム製
    品。
JP2000297674A 2000-09-28 2000-09-28 自然言語対話システム及び自然言語処理方法 Pending JP2002108915A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000297674A JP2002108915A (ja) 2000-09-28 2000-09-28 自然言語対話システム及び自然言語処理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000297674A JP2002108915A (ja) 2000-09-28 2000-09-28 自然言語対話システム及び自然言語処理方法

Publications (1)

Publication Number Publication Date
JP2002108915A true JP2002108915A (ja) 2002-04-12

Family

ID=18779757

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000297674A Pending JP2002108915A (ja) 2000-09-28 2000-09-28 自然言語対話システム及び自然言語処理方法

Country Status (1)

Country Link
JP (1) JP2002108915A (ja)

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004118415A (ja) * 2002-09-25 2004-04-15 Fujitsu Ltd 情報収集方法及びその方法における処理をコンピュータに行なわせるためのプログラム
JP2004362280A (ja) * 2003-06-05 2004-12-24 Hitachi Ltd 放送番組蓄積装置
JP2006004274A (ja) * 2004-06-18 2006-01-05 Nippon Telegr & Teleph Corp <Ntt> 対話処理装置、対話処理方法及び対話処理プログラム
JP2019008818A (ja) * 2012-07-31 2019-01-17 ベベオ, インコーポレイテッド 会話型相互作用におけるユーザの意図の曖昧性の解消
JP2019139663A (ja) * 2018-02-14 2019-08-22 エヌ・ティ・ティ・コミュニケーションズ株式会社 レコメンド装置、レコメンド方法およびレコメンドプログラム
JP6598418B1 (ja) * 2019-05-17 2019-10-30 ソプラ株式会社 情報出力装置、情報出力方法、およびプログラム
US10728351B2 (en) 2015-01-30 2020-07-28 Rovi Guides, Inc. Systems and methods for resolving ambiguous terms in social chatter based on a user profile
US10896184B2 (en) 2013-05-10 2021-01-19 Veveo, Inc. Method and system for capturing and exploiting user intent in a conversational interaction based information retrieval system
US10978094B2 (en) 2013-05-07 2021-04-13 Veveo, Inc. Method of and system for real time feedback in an incremental speech input interface
WO2021079597A1 (ja) * 2019-10-23 2021-04-29 ソプラ株式会社 情報出力装置、情報出力方法、及び情報出力プログラム
JP2021533461A (ja) * 2018-09-18 2021-12-02 セールスフォース ドット コム インコーポレイティッド 非構造化入力を用いた異種データストアの更新
JP2022024614A (ja) * 2020-07-28 2022-02-09 トヨタ自動車株式会社 情報出力システムおよび情報出力方法
US11423074B2 (en) 2014-12-23 2022-08-23 Rovi Guides, Inc. Systems and methods for determining whether a negation statement applies to a current or past query
US11436296B2 (en) 2012-07-20 2022-09-06 Veveo, Inc. Method of and system for inferring user intent in search input in a conversational interaction system
US12032643B2 (en) 2022-07-26 2024-07-09 Veveo, Inc. Method of and system for inferring user intent in search input in a conversational interaction system

Cited By (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004118415A (ja) * 2002-09-25 2004-04-15 Fujitsu Ltd 情報収集方法及びその方法における処理をコンピュータに行なわせるためのプログラム
JP2004362280A (ja) * 2003-06-05 2004-12-24 Hitachi Ltd 放送番組蓄積装置
JP2006004274A (ja) * 2004-06-18 2006-01-05 Nippon Telegr & Teleph Corp <Ntt> 対話処理装置、対話処理方法及び対話処理プログラム
US11436296B2 (en) 2012-07-20 2022-09-06 Veveo, Inc. Method of and system for inferring user intent in search input in a conversational interaction system
US11093538B2 (en) 2012-07-31 2021-08-17 Veveo, Inc. Disambiguating user intent in conversational interaction system for large corpus information retrieval
JP2019008818A (ja) * 2012-07-31 2019-01-17 ベベオ, インコーポレイテッド 会話型相互作用におけるユーザの意図の曖昧性の解消
US10572520B2 (en) 2012-07-31 2020-02-25 Veveo, Inc. Disambiguating user intent in conversational interaction system for large corpus information retrieval
US11847151B2 (en) 2012-07-31 2023-12-19 Veveo, Inc. Disambiguating user intent in conversational interaction system for large corpus information retrieval
US10978094B2 (en) 2013-05-07 2021-04-13 Veveo, Inc. Method of and system for real time feedback in an incremental speech input interface
US10896184B2 (en) 2013-05-10 2021-01-19 Veveo, Inc. Method and system for capturing and exploiting user intent in a conversational interaction based information retrieval system
US11423074B2 (en) 2014-12-23 2022-08-23 Rovi Guides, Inc. Systems and methods for determining whether a negation statement applies to a current or past query
US11811889B2 (en) 2015-01-30 2023-11-07 Rovi Guides, Inc. Systems and methods for resolving ambiguous terms based on media asset schedule
US11843676B2 (en) 2015-01-30 2023-12-12 Rovi Guides, Inc. Systems and methods for resolving ambiguous terms based on user input
US10728351B2 (en) 2015-01-30 2020-07-28 Rovi Guides, Inc. Systems and methods for resolving ambiguous terms in social chatter based on a user profile
US11991257B2 (en) 2015-01-30 2024-05-21 Rovi Guides, Inc. Systems and methods for resolving ambiguous terms based on media asset chronology
JP7077050B2 (ja) 2018-02-14 2022-05-30 エヌ・ティ・ティ・コミュニケーションズ株式会社 レコメンド装置、レコメンド方法およびレコメンドプログラム
JP2019139663A (ja) * 2018-02-14 2019-08-22 エヌ・ティ・ティ・コミュニケーションズ株式会社 レコメンド装置、レコメンド方法およびレコメンドプログラム
JP2021533461A (ja) * 2018-09-18 2021-12-02 セールスフォース ドット コム インコーポレイティッド 非構造化入力を用いた異種データストアの更新
JP7069401B2 (ja) 2018-09-18 2022-05-17 セールスフォース ドット コム インコーポレイティッド 非構造化入力を用いた異種データストアの更新
WO2020234948A1 (ja) * 2019-05-17 2020-11-26 ソプラ株式会社 情報出力装置、情報出力方法、およびプログラム
JP6598418B1 (ja) * 2019-05-17 2019-10-30 ソプラ株式会社 情報出力装置、情報出力方法、およびプログラム
CN114586021A (zh) * 2019-10-23 2022-06-03 聪丰罗株式会社 信息输出装置、信息输出方法以及信息输出程序
CN114586021B (zh) * 2019-10-23 2022-12-09 聪丰罗株式会社 信息输出装置、信息输出方法以及记录介质
US11599536B2 (en) 2019-10-23 2023-03-07 Soppra Corporation Information output device, information output method, and information output program
JP2021068399A (ja) * 2019-10-23 2021-04-30 ソプラ株式会社 情報出力装置、情報出力方法、及び情報出力プログラム
WO2021079597A1 (ja) * 2019-10-23 2021-04-29 ソプラ株式会社 情報出力装置、情報出力方法、及び情報出力プログラム
JP2022024614A (ja) * 2020-07-28 2022-02-09 トヨタ自動車株式会社 情報出力システムおよび情報出力方法
JP7322830B2 (ja) 2020-07-28 2023-08-08 トヨタ自動車株式会社 情報出力システムおよび情報出力方法
US12032643B2 (en) 2022-07-26 2024-07-09 Veveo, Inc. Method of and system for inferring user intent in search input in a conversational interaction system

Similar Documents

Publication Publication Date Title
KR102373905B1 (ko) 어시스턴트 애플리케이션을 위한 음성 사용자 인터페이스 단축
US10515086B2 (en) Intelligent agent and interface to provide enhanced search
CN107797984B (zh) 智能交互方法、设备及存储介质
JP6604542B2 (ja) 対話方法、対話プログラム及び対話システム
US7822699B2 (en) Adaptive semantic reasoning engine
JP2020102234A (ja) 会話型インターフェースの一部として動的に適用されるフィルタリングオペレータを伴う適応会話状態管理のための方法
US8352266B2 (en) System and methods for improving accuracy of speech recognition utilizing concept to keyword mapping
EP2306451B1 (en) Speech recognition
JP2002108915A (ja) 自然言語対話システム及び自然言語処理方法
JP2018077858A (ja) 会話式情報検索システムおよび方法
KR20050005523A (ko) 단어 상관 방법 및 장치
KR20040068319A (ko) 콘텐트 변환 방법 및 장치
JP2015511746A5 (ja)
JP6927318B2 (ja) 情報処理装置、情報処理方法、及びプログラム
US20160293162A1 (en) Computer-implemented method for generating a response sentence by using a weight value of node
US11043215B2 (en) Method and system for generating textual representation of user spoken utterance
CN116401354A (zh) 一种文本处理方法、装置、存储介质及设备
US20240176957A1 (en) Systems and methods for inserting dialogue into a query response
JP2005275601A (ja) 音声による情報検索システム
CN115658875B (zh) 基于聊天服务的数据处理方法及相关产品
JP2005157602A (ja) 会話制御装置、会話制御方法並びにこれらのプログラム
CA2483805A1 (en) System and methods for improving accuracy of speech recognition
JP2005309630A (ja) Webを利用した音声認識によるコミュニケーションシステム
JP7169096B2 (ja) 対話システム、対話方法、およびプログラム
JP2005241952A (ja) 知識処理装置、知識処理方法および知識処理プログラム