【文献】
山内 慎也,質問応答システムにおけるユーザ対話を用いた回答候補の絞り込み,電子情報通信学会技術研究報告,社団法人電子情報通信学会,2008年11月 3日,第108巻 第283号,pp.23〜28,NLC2008−23
(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0010】
本発明に係る対話システムの実施形態について図面を参照して説明する。なお、可能な場合には、同一の部分には同一の符号を付して、重複する説明を省略する。
【0011】
図1は、本実施形態に係る対話装置10を含む対話システム1の機能的構成を示す図である。対話装置10は、語句からなるキーの一以上の集合により特定される応答内容をユーザからの入力に基づいて特定する装置である。本実施形態では、対話システム1は、ユーザからの質問に対して回答を返信するFAQシステムを構成し、ユーザからの質問の内容を構成する質問文を応答内容として特定する。なお、対話システム1は、ユーザからの入力に基づいて応答内容を抽出する検索システムを構成することもできる。ユーザからの入力は、後述するように、キーの提示を含む問い合わせに対する回答を含む。
図1に示すように、対話システム1は、対話装置10及び端末50を含む。これらの装置は有線または無線のネットワークNを介して互いに通信可能である。
【0012】
図1に示すように、対話装置10は、機能的には、取得部11、問い合わせ部12、キー蓄積部13、候補質問文抽出部14(候補応答内容抽出部)、キー選択部15及び出力部16を備える。また、対話装置10は、質問文記憶部20(応答内容記憶部)及び蓄積キー記憶部30といった記憶手段を含む。端末50は、入力部51及び出力部52を含む。これらの各機能部については後に詳述する。
【0013】
なお、
図1に示したブロック図は、機能単位のブロックを示している。これらの機能ブロック(構成部)は、ハードウェア及び/又はソフトウェアの任意の組み合わせによって実現される。また、各機能ブロックの実現手段は特に限定されない。すなわち、各機能ブロックは、物理的及び/又は論理的に結合した1つの装置により実現されてもよいし、物理的及び/又は論理的に分離した2つ以上の装置を直接的及び/又は間接的に(例えば、有線及び/又は無線)で接続し、これら複数の装置により実現されてもよい。
【0014】
例えば、本発明の一実施の形態における対話装置10は、コンピュータとして機能してもよい。
図2は、本実施形態に係る対話装置10のハードウェア構成の一例を示す図である。対話装置10は、物理的には、プロセッサ1001、メモリ1002、ストレージ1003、通信装置1004、入力装置1005、出力装置1006、バス1007などを含むコンピュータ装置として構成されてもよい。
【0015】
なお、以下の説明では、「装置」という文言は、回路、デバイス、ユニットなどに読み替えることができる。対話装置10のハードウェア構成は、
図2に示した各装置を1つ又は複数含むように構成されてもよいし、一部の装置を含まずに構成されてもよい。
【0016】
対話装置10における各機能は、プロセッサ1001、メモリ1002などのハードウェア上に所定のソフトウェア(プログラム)を読み込ませることで、プロセッサ1001が演算を行い、通信装置1004による通信や、メモリ1002及びストレージ1003におけるデータの読み出し及び/又は書き込みを制御することで実現される。
【0017】
プロセッサ1001は、例えば、オペレーティングシステムを動作させてコンピュータ全体を制御する。プロセッサ1001は、周辺装置とのインターフェース、制御装置、演算装置、レジスタなどを含む中央処理装置(CPU:Central Processing Unit)で構成されてもよい。また、プロセッサ1001は、GPU(Graphics Processing Unit)を含んで構成されてもよい。例えば、
図1に示した各機能部11〜16などは、プロセッサ1001で実現されてもよい。
【0018】
また、プロセッサ1001は、プログラム(プログラムコード)、ソフトウェアモジュールやデータを、ストレージ1003及び/又は通信装置1004からメモリ1002に読み出し、これらに従って各種の処理を実行する。プログラムとしては、上述の実施の形態で説明した動作の少なくとも一部をコンピュータに実行させるプログラムが用いられる。例えば、対話装置10の各機能部11〜16は、メモリ1002に格納され、プロセッサ1001で動作する制御プログラムによって実現されてもよい。上述の各種処理は、1つのプロセッサ1001で実行される旨を説明してきたが、2以上のプロセッサ1001により同時又は逐次に実行されてもよい。プロセッサ1001は、1以上のチップで実装されてもよい。なお、プログラムは、電気通信回線を介してネットワークから送信されても良い。
【0019】
メモリ1002は、コンピュータ読み取り可能な記録媒体であり、例えば、ROM(Read Only Memory)、EPROM(Erasable Programmable ROM)、EEPROM(Electrically Erasable Programmable ROM)、RAM(Random Access Memory)などの少なくとも1つで構成されてもよい。メモリ1002は、レジスタ、キャッシュ、メインメモリ(主記憶装置)などと呼ばれてもよい。メモリ1002は、本発明の一実施の形態に係る対話方法を実施するために実行可能なプログラム(プログラムコード)、ソフトウェアモジュールなどを保存することができる。
【0020】
ストレージ1003は、コンピュータ読み取り可能な記録媒体であり、例えば、CD−ROM(Compact Disc ROM)などの光ディスク、ハードディスクドライブ、フレキシブルディスク、光磁気ディスク(例えば、コンパクトディスク、デジタル多用途ディスク、Blu−ray(登録商標)ディスク)、スマートカード、フラッシュメモリ(例えば、カード、スティック、キードライブ)、フロッピー(登録商標)ディスク、磁気ストリップなどの少なくとも1つで構成されてもよい。ストレージ1003は、補助記憶装置と呼ばれてもよい。上述の記憶媒体は、例えば、メモリ1002及び/又はストレージ1003を含むデータベース、サーバその他の適切な媒体であってもよい。
【0021】
通信装置1004は、有線及び/又は無線ネットワークを介してコンピュータ間の通信を行うためのハードウェア(送受信デバイス)であり、例えばネットワークデバイス、ネットワークコントローラ、ネットワークカード、通信モジュールなどともいう。
【0022】
入力装置1005は、外部からの入力を受け付ける入力デバイス(例えば、キーボード、マウス、マイクロフォン、スイッチ、ボタン、センサなど)である。出力装置1006は、外部への出力を実施する出力デバイス(例えば、ディスプレイ、スピーカー、LEDランプなど)である。なお、入力装置1005及び出力装置1006は、一体となった構成(例えば、タッチパネル)であってもよい。
【0023】
また、プロセッサ1001やメモリ1002などの各装置は、情報を通信するためのバス1007で接続される。バス1007は、単一のバスで構成されてもよいし、装置間で異なるバスで構成されてもよい。
【0024】
また、対話装置10は、マイクロプロセッサ、デジタル信号プロセッサ(DSP:Digital Signal Processor)、ASIC(Application Specific Integrated Circuit)、PLD(Programmable Logic Device)、FPGA(Field Programmable Gate Array)などのハードウェアを含んで構成されてもよく、当該ハードウェアにより、各機能ブロックの一部又は全てが実現されてもよい。例えば、プロセッサ1001は、これらのハードウェアの少なくとも1つで実装されてもよい。
【0025】
対話装置10は、
図1に示す例では1つの装置として構成されているが、各機能部11〜16が複数の装置に分散されて構成されてもよい。また、
図1に示す例では、質問文記憶部20及び蓄積キー記憶部30は、対話装置10に構成されているが、各機能部11〜16からアクセス可能に構成されていれば、いかなる装置にいかなる態様で構成されてもよい。端末50は、対話装置10と同様にコンピュータ装置として構成されてもよい。また、端末50は、高機能携帯電話機(スマートフォン)や携帯電話機などの携帯端末として構成されてもよい。
【0026】
図3は、本実施形態の課題を説明するための図である。本実施形態の対話システム1は、例えば、
図3により説明されるような、ユーザからの質問の入力に対して回答を出力するFAQシステムを構成できる。
【0027】
符号t31に示されるように、ユーザが、質問文「Wi−Fiのパスワードの設定方法」をFAQシステムに対して入力したい場合において、その質問文自体が入力されずに、質問文の一部を構成するキー「パスワード」が入力されたものとする。
【0028】
FAQシステムは、符号t32に示されるように、「パスワード」を含む3件の候補質問文をデータベースから抽出する。各候補質問文は、「パスワード」以外のいくつかのキーを含んでいる。例えば、候補質問文「端末のパスワードの設定方法」は、「パスワード」以外に、「端末」及び「設定方法」というキーを含んでいる。
【0029】
FAQシステムは、ユーザに対するキーの提示及び提示に対するユーザからの回答に基づいて候補質問文の数の絞り込みを行う。具体的には、FAQシステムは、肯定回答に係るキーを全て含み、且つ、否定回答に係るキーを含まない質問文を候補質問文として抽出するので、ユーザからの回答を取得する度に候補質問文の数が絞り込まれる。
【0030】
符号t33に示される例では、FAQシステムは、まず、キー「設定方法」の提示を含む問い合わせをユーザに送信する。この問い合わせに対して、ユーザにより肯定回答「はい」が入力される。しかしながら、キー「設定方法」は、全ての候補質問文に含まれるため、この肯定回答の取得により、候補質問文の数は減少しない。続いて、FAQシステムは、キー「端末」の提示を含む問い合わせをユーザに送信する。この問い合わせに対する否定回答「いいえ」が入力されると、候補質問文の数は2件に絞り込まれる。さらに、FAQシステムは、キー「アカウント」の提示を含む問い合わせをユーザに送信する。この問い合わせに対する否定回答「いいえ」が入力されると、候補質問文の数は1件に絞り込まれる。従って、この例では、候補質問文が1件に絞り込まれるまでに、3回の対話を必要とする。
【0031】
一方、符号t34に示される例では、FAQシステムは、まず、キー「Wi−Fi」の提示を含む問い合わせをユーザに送信する。この問い合わせに対して、ユーザにより肯定回答「はい」が入力されると、3件の候補質問文のうち、キー「Wi−Fi」を含む候補質問文は1件のみであるので、候補質問文の数は1件に絞り込まれる。従って、この例では、1回の対話で候補質問文が1件に絞り込まれることとなり、符号t33の例と比較して、少ない回数の対話によりユーザからの質問の内容が特定される。
【0032】
本実施形態の対話システム1は、ユーザに提示するために問い合わせに含ませるキーを適切に選択することにより、ユーザからの質問の内容の特定に要する対話の回数を減少させるという課題を解決するものである。
【0033】
再び
図1を参照して、対話装置10の各機能部について説明する。取得部11は、ユーザからの入力を取得する。本実施形態では、取得部11は、端末50においてユーザにより入力され、出力部52により出力された情報を取得する。具体的には、取得部11は、対話装置10から端末50に対して送信した問い合わせに対するユーザからの回答を取得する。問い合わせについては、問い合わせ部12の説明において後に詳述する。
【0034】
また、取得部11は、ユーザにより入力された自由入力文を取得する。自由入力文は、任意のテキストにより構成される文であって、例えば、問い合わせ部12による最初のユーザに対する問い合わせの出力の前にユーザにより入力された初期の質問文である。また、問い合わせ及び回答からなる複数回の対話の間に、ユーザからの質問文が自由入力文として入力されてもよい。
【0035】
問い合わせ部12は、ユーザに対するキーの提示を含む問い合わせを出力する。キーは、語句からなり、当該語句に対する肯定回答または否定回答をユーザに入力させるために、ユーザに提示される。例えば、キー「メール」の提示を含む問い合わせを出力する場合には、問い合わせ部12は、例えば「「メール」についてですか?」というような問い合わせ文を生成し、生成した問い合わせ文をユーザの端末50に出力する。
【0036】
キー蓄積部13は、問い合わせ部12による問い合わせに対する肯定を示す肯定回答を取得した場合に、当該問い合わせに含まれていたキーを取得し、取得したキーを蓄積キーとして蓄積する。具体的には、キー蓄積部13は、肯定回答に対応する問い合わせに含まれているキーを、回答の種別に関連付けて蓄積キー記憶部30に記憶させる。蓄積キー記憶部30は、キー蓄積部13により取得されたキーを記憶する記憶手段である。
【0037】
また、問い合わせに対する否定を示す否定回答、またはスキップ回答を取得した場合には、キー蓄積部13は、回答に対応する問い合わせに含まれていたキーを、回答の種別と関連付けて蓄積キー記憶部30に記憶させる。スキップ回答は、例えば、問い合わせに対して肯定及び否定のいずれの意図も含まない回答であり、ユーザにおいて回答し難い問い合わせである場合の回答の保留の意味を有してもよい。
【0038】
また、キー蓄積部13は、取得部11により取得された自由入力文からキーを抽出し、抽出したキーを肯定回答に対応するキーと同様に蓄積キー記憶部30に記憶させる。このように、自由入力文に含まれるキーを蓄積することにより、ユーザの意図する質問内容を自由入力文として入力した場合に、質問内容に関連するキーを取得できる。
【0039】
候補質問文抽出部14は、質問文記憶部20を参照して、キー蓄積部13により蓄積された肯定的な回答に対応する蓄積キーを含む質問文を候補質問文として抽出する。質問文記憶部20は、質問文と当該質問文に含まれるキーの集合とを関連付けて記憶している記憶手段である。即ち、質問文は、キーの集合により特定されることができる。
【0040】
図4は、質問文記憶部20の構成及び記憶されているデータの例を示す図である。
図4に示すように、質問文記憶部20は、質問文と当該質問文に含まれる1以上のキーとを関連付けて記憶している。また、質問文記憶部20は、質問文に対する回答を識別する回答IDを各質問文に関連付けて記憶している。回答IDは、質問文に対する回答に関する情報を識別する識別子であって、質問文に関する回答に関する情報を構成し、例えば、回答が表示される回答ページのIDであってもよい。
【0041】
候補質問文抽出部14は、肯定的な回答に対応する蓄積キーに基づいて質問文記憶部20におけるキーのデータを検索し、蓄積キーの全てを含む質問文を抽出する。例えば、キー蓄積部13により、「メール」及び「送信者名」というキーが蓄積されている場合には、候補質問文抽出部14は、質問文「メールの差出人・送信者名を表示したい」及び「メールの差出人を知りたい」を抽出する。
【0042】
また、候補質問文抽出部14は、肯定的な回答に対応する蓄積キーを含み、且つ、否定的な回答に対応する蓄積キーを含まない質問文を、候補質問文として抽出してもよい。
【0043】
キー選択部15は、候補質問文抽出部14により抽出された候補質問文に含まれる複数のキーの中から、問い合わせ部12により出力される問い合わせキーを選択する。問い合わせキーは、問い合わせ部12により出力される次回の問い合わせに含ませるキーである。
【0044】
キー選択部15は、質問文記憶部20において候補質問文に関連付けられているキーを参照することにより、問い合わせキーの候補を抽出できる。問い合わせキーの候補は、質問文記憶部20において候補質問文に関連付けられているキーのうち、既に問い合わせにおいて提示されたキー(キー蓄積部13により蓄積されたキー)を除くキーである。
【0045】
キー選択部15は、次回の問い合わせ及び当該問い合わせに対する回答により候補質問文抽出部14により抽出される候補質問文の数が減少するような問い合わせキーを選択する。キー選択部15は、問い合わせキーの候補の中からランダムに問い合わせキーを選択してもよいが、より効果的な種々の問い合わせキーの選択処理について以下に説明する。
【0046】
キー選択部15は、キーに関連付けられた属性に対する優先度に基づいて、問い合わせキーを選択してもよい。例えば、質問文記憶部20は、質問文に関連付けられているキーのそれぞれに、種々の属性を関連付けて記憶していてもよい。属性は、例えば、キーの品詞種別及び専門用語であること等である。
【0047】
図5(a)及び
図5(b)は、キーの属性に対する優先度に基づいて問い合わせキーを選択する処理を説明の第1の例及び第2の例を示す図である。第1の例は、符号t51に示されるように、肯定的な回答に対応する蓄積キーとして、キー「エラーメッセージ」を蓄積している場合に、候補質問文として質問文「エラーメッセージでメールが送れない」が抽出された場合である。
【0048】
この候補質問文は、「エラーメッセージ」の他に、キー「メール」,「送れない」を含むので、問い合わせキーの候補は、「メール」及び「送れない」である。キー「メール」には、品詞を示す「名詞」が属性として関連付けられている。また、キー「送れない」には、品詞を示す「動詞」が属性として関連付けられている。
【0049】
ここで、属性に対する優先度として、名詞に対してより高い優先度が予め設定されているとする。このような場合には、符号t52に示されるように、キー選択部15は、属性として動詞が関連付けられている「メール」を問い合わせキーとして選択する。
【0050】
第2の例は、符号t53に示されるように、肯定的な回答に対応する蓄積キーとして、キー「エラーメッセージ」を蓄積している場合に、候補質問文として質問文「エラーコード:01というエラーメッセージでメールが送れない」が抽出された場合である。
【0051】
この候補質問文は、「エラーメッセージ」の他に、キー「エラーコード:01」,「メール」,「送れない」を含むので、問い合わせキーの候補は、「エラーコード:01」、「メール」及び「送れない」である。これらの候補のうち、キー「エラーコード:01」には、「専門用語」が属性として関連付けられている。
【0052】
ここで、属性に対する優先度として、専門用語に対して高い優先度が予め設定されているとする。このような場合には、キー選択部15は、符号t54に示されるように、属性として専門用語が関連付けられている「エラーコード:01」を問い合わせキーとして選択する。
【0053】
このように、キーに関連付けられている属性に対して予め優先度を設定しておき、問い合わせキーの候補のそれぞれに関連付けられた属性の優先度に基づいて問い合わせキーを選択することにより、ユーザがより回答しやすく、また、候補質問文の絞り込みが適切に行われる可能性が高いキーを問い合わせキーとすることができる。
【0054】
キー選択部15は、蓄積キーが含まれる候補質問文における当該蓄積キーとの所定の係り受け関係に基づいて、問い合わせキーを選択してもよい。
【0055】
例えば、肯定的な回答に対応する蓄積キーとしてキー「パスワード」(名詞)を蓄積している場合に、候補質問文として質問文「Wi−Fiのパスワードがわからない」が抽出されたとすると、キー選択部15は、問い合わせキーの候補として、「Wi−Fi」(名詞)及び「わからない」(動詞)を取得する。
【0056】
ここで、当該候補質問文の抽出の根拠となった蓄積キー「パスワード」が名詞であり、名詞である蓄積キーと係り受け関係を有する名詞に対して高い優先度が設定されているとする。この場合には、キー選択部15は、「パスワード」と係り受け関係を有する名詞である「Wi−Fi」を問い合わせキーとして選択する。
【0057】
また、肯定的な回答に対応する蓄積キーとしてキー「わからない」(動詞)を蓄積している場合に、候補質問文として質問文「Wi−Fiのパスワードがわからない」が抽出されたとすると、キー選択部15は、問い合わせキーの候補として、「Wi−Fi」(名詞)及び「パスワード」(名詞)を取得する。
【0058】
また、当該候補質問文の抽出の根拠となった蓄積キー「わからない」が動詞であり、動詞である蓄積キーと係り受け関係を有する名詞に対して高い優先度が設定されている場合には、キー選択部15は、「わからない」と係り受け関係を有する名詞である「パスワード」を問い合わせキーとして選択する。
【0059】
このような問い合わせキーの選択によれば、候補質問文において蓄積キーと特定の係り受け関係を有するキーは、当該質問文の特定に資するものである可能性が高いことに鑑みて、蓄積キーと所定の係り受け関係を有するキーを問い合わせキーとして選択することにより、候補質問文の絞り込みに有効な回答が得られやすいこととなる。
【0060】
質問文記憶部20に記憶されている各質問文が予め設定された優先度を有している場合に、キー選択部15は、候補質問文のうち最も高い優先度を有する候補質問文に含まれるキーを問い合わせキーとして選択してもよい。
【0061】
具体的には、キー選択部15は、ある蓄積キーに基づいて候補質問文抽出部14により抽出された複数の候補質問文の中から、最も高い優先度を有する候補質問文を抽出する。キー選択部15は、優先度に基づいて抽出した候補質問文に含まれるキーを、問い合わせキーの候補として抽出し、問い合わせキーの候補の中から、上述または後述される所定の手法により一のキーを問い合わせキーとして選択する。
【0062】
このような問い合わせキーの選択によれば、例えば、当該質問文がユーザからの質問文として特定された頻度及びその他のランク付け情報等に基づいて各質問文に対して予め優先度を関連付けておくことにより、より高い優先度を有する候補質問文に含まれるキーを問い合わせキーとして選択することができる。そして、このように選択された問い合わせキーを含む問い合わせにより、ユーザからの質問文を特定できる可能性を高めることができる。その結果として、ユーザからの質問文を特定するための対話の回数を減少させることができる。
【0063】
キー選択部15は、候補質問文抽出部14により抽出された複数の候補質問文のそれぞれに含まれる複数のキーの中から、候補質問文の数を減少させることに確実に資するような問い合わせキーを選択するように構成されてもよい。具体的には、ここで選択される問い合わせキーは、次回の問い合わせに含ませた場合に、当該次回の問い合わせに対する回答に基づいて候補質問文抽出部14により抽出される候補質問文の数が、抽出された複数の候補質問文の数に対して所定の割合に減少するようなキーである。
【0064】
図6は、候補質問文の数を所定の割合で減少させるような問い合わせキーの選択の処理の例を説明する図である。符号t61に示されるように、24件の候補質問文が候補質問文抽出部14により抽出された場合に、キー選択部15は、抽出された候補質問文のそれぞれに含まれるキー「エラー」、「絵文字」、「写真」等を問い合わせキーの候補として取得する。
【0065】
キー選択部15は、問い合わせキーの候補のそれぞれを次回の問い合わせに含ませた場合に、それらの次回の問い合わせに対する肯定回答に基づいて候補質問文抽出部14により抽出される候補質問文の数を符号t62に示されるように算出する。即ち、次回の問い合わせに「エラー」を含ませ、肯定回答を取得した場合には、候補質問文の数は、24から1に減少する。また、次回の問い合わせに「絵文字」を含ませ、肯定回答を取得した場合には、候補質問文の数は、24から5に減少する。また、次回の問い合わせに「写真」を含ませ、肯定回答を取得した場合には、候補質問文の数は、24から10に減少する。
【0066】
なお、次回の問い合わせに「エラー」を含ませ、否定回答を取得した場合には、候補質問文の数は、24から23に減少する。また、次回の問い合わせに「絵文字」を含ませ、否定回答を取得した場合には、候補質問文の数は、24から19に減少する。また、次回の問い合わせに「写真」を含ませ、否定を取得した場合には、候補質問文の数は、24から14に減少する。
【0067】
例えば、次回の問い合わせに対する回答に基づいて、候補質問文の数が、40〜60%に減少することを、問い合わせキーの選択の条件として予め設定されているとすると、キー選択部15は、候補質問文の数が24から10または14に減少する、キー「写真」を問い合わせキーとして選択する。なお、次回の問い合わせに対する肯定回答により、候補質問文の数が極端に減少するような問い合わせキーは、次回問い合わせに対する回答が否定回答であった場合に候補質問文の数がほとんど減少しないこととなるので好ましくない。従って、ここで設定される条件としては、次回問い合わせに対する回答により候補質問文の数が約半分になるような条件としてもよい。
【0068】
このような問い合わせキーの選択によれば、1回ごとの対話により、確実に候補質問文の数を減少させることができる。従って、問い合わせキーの適切な選択の成否により極度に対話の回数が増加することを防止できる。
【0069】
キー選択部15は、候補質問文の数を減少させることに確実に資するような問い合わせキーを選択するために、次回の問い合わせに含ませた場合に、当該次回の問い合わせに対する回答に基づいて候補質問文抽出部14により抽出される各候補質問文に関連付けられた頻度情報の合計を、抽出される候補質問文の数で除した値が最も大きいキーを、問い合わせキーとして選択してもよい。
【0070】
図7は、候補質問文の数を減少させることに確実に資するような問い合わせキーを選択するための処理を説明する図である。本実施形態では、キー選択部15は、次回の問い合わせに含ませた場合に、当該次回の問い合わせに対する回答に基づいて候補質問文抽出部14により抽出される各候補質問文の出力部16により出力された回数の合計を、抽出される候補質問文の数で除した値が最も大きいキーを、問い合わせキーとして選択する。
【0071】
図7に示す例では、蓄積キーks、次回問い合わせに含ませるキーki及び抽出される候補質問文qcの関係がノードで表されており、各候補質問文qcがユーザによる質問の内容を表す質問文として特定されて出力部16により出力された回数が関連付けられている。
【0072】
例えば、蓄積キーks1「メール」に基づいて、候補質問文抽出部14により候補質問文qc1〜qc4が抽出された場合において、キーki1「エラー」を含ませて次回の問い合わせを出力して肯定回答が取得された場合には、候補質問文抽出部14により候補質問文qc1が抽出される。同様に、キーki2「送れない」を含ませて次回の問い合わせを出力して肯定回答が取得された場合には、候補質問文抽出部14により候補質問文qc1〜qc3が抽出される。
【0073】
このような前提のもと、キー選択部15は、各キーki1〜ki5を次回の問い合わせに含ませた場合に、当該次回の問い合わせに対する肯定回答に基づいて抽出される各候補質問文の出力部16により出力された回数の合計を、抽出される候補質問文の数で除した算出値をキーki1〜ki5ごとに算出する。例えば、キーki2「送れない」を次回の問い合わせに含ませた場合には、算出値は、8.3(=(回数tc1,tc2,tc3の合計)÷(抽出される候補質問文qc1,qc2,qc3の数)=(10+5+10)÷3)となる。また、キーki5「送りたい」を次回の問い合わせに含ませた場合には、算出値は、25(=(回数tc4)÷(抽出される候補質問文qc4の数)=(=25÷1))となる。
図7に示す例では、キー選択部15は、このように算出された算出値が最も大きいキーki5「送りたい」を問い合わせキーとして選択する。
【0074】
このような問い合わせキーの選択によれば、ユーザによる質問文として特定された頻度が高い質問文を、より少ない回数の対話により特定できる。
【0075】
キー選択部15は、候補質問文に含まれる複数のキーの中から、キーごとの当該キーの提示に対する回答の履歴に基づいて、問い合わせキーを選択してもよい。前述のとおり、取得部11は、肯定回答、否定回答及びスキップ回答のいずれかを、問い合わせにおけるキーの提示に対するユーザからの回答として取得する。取得部11は、各キーに対する回答の種別ごとの回答の回数を、例えば、所定の記憶手段(図示せず)に集計することができる。
【0076】
図8は、候補質問文から抽出した問い合わせキーの候補ごとの各種の回答の回数の例を示す図である。ここで、スキップ回答の回数が多いキーはユーザが回答し難いキーであるとして、スキップ回答の回数が多いキーの優先度を下げることが、問い合わせキーの選択の条件として予め設定されているものとすると、キー選択部15は、スキップ回答の回数が最も少ないキー「絵文字」を、問い合わせキーとして選択する。
【0077】
図9は、ある問い合わせキーに続いて、次の問い合わせにおいて提示された問い合わせキーごとの各種の回答の回数の例を示す図である。続けて問い合わせに用いられるキーの関係性に着目して、肯定回答の頻度が高いキーの優先度を上げることが、問い合わせキーの選択の条件として予め設定されているものとすると、キー選択部15は、肯定回答の回数が最も多いキー「送れない」を、問い合わせキーとして選択する。ここでは、肯定回答の回数のみについて選択の条件が設定されることとしているが、複数の回答の種類に対して、複合的な条件が設定されることとしてもよい。
【0078】
このような問い合わせキーの選択によれば、例えば、スキップ回答の回数がより少ないキー及び肯定回答の回数がより多いキー等に対して高い優先度が設定されるように構成することにより、候補質問文の絞り込みに資する可能性が高いキーを問い合わせキーとして選択できる。
【0079】
再び
図1を参照して、出力部16は、候補質問文抽出部14により抽出された候補質問文のうちの一の質問文を出力する。具体的には、出力部16は、候補質問文抽出部14により抽出される質問文が一つに特定された場合に、特定された質問文をユーザの端末50に出力する。
【0080】
さらに、出力部16は、特定された質問文に関連付けられた回答に関する情報を出力してもよい。本実施形態では、質問文記憶部20において、各質問文に回答IDが回答に関する情報として関連付けられているので、出力部16は、質問文記憶部20を参照して、特定された質問文に関連付けられている回答IDを、端末50に出力する。これにより、ユーザからの質問に対する回答を提供できるので、対話システム1をいわゆるFAQシステムとして構成することができる。
【0081】
次に、端末50の機能部を説明する。入力部51は、ユーザによる情報の入力を受け付けて、受け付けた情報を対話装置10に送信する。本実施形態では、入力部51は、ユーザにより入力された質問文としての自由入力文を受け付け、受け付けた自由入力文を対話装置10に送信する。
【0082】
また、入力部51は、問い合わせキーの提示を含む問い合わせに対してユーザにより入力された回答(肯定回答、否定回答及びスキップ回答)を受け付けて、受け付けた回答を対話装置10に送信する。
【0083】
出力部52は、対話装置10からの情報を取得して、取得した情報をユーザに対して出力する。本実施形態では、出力部52は、取得した情報を、例えば表示装置に表示させる。具体的には、出力部52は、対話装置10の問い合わせ部12により出力された、問い合わせキーの提示を含む問い合わせを出力する。また、出力部52は、対話装置10の出力部16により出力された質問文及び回答に関する情報を出力する。
【0084】
次に、
図10を参照して、対話装置10における対話方法について説明する。
図10は、本実施形態の対話方法の処理内容を示すフローチャートである。
【0085】
ステップS1において、取得部11は、ユーザにより自由入力文として入力された初期質問文を取得する。ステップS2において、初期質問文からキーを抽出する。なお、ステップS11の処理の後にステップS2に処理が行われる場合には、取得部11は、ユーザにより入力されたテキストにより構成された質問文からキーを抽出する。
【0086】
ステップS3において、キー蓄積部13は、ステップS2において抽出されたキーを、肯定回答に係る蓄積キーとして蓄積する。ステップS4において、候補質問文抽出部14は、蓄積された肯定回答に対応する蓄積キーを含み、否定回答に対応するキーを含まない質問文を候補質問文として抽出する。
【0087】
ステップS5において、対話装置10は、ステップS4において抽出された候補質問文の数を判定する。候補質問文の数が2以上である場合には、処理はステップS6に進む。候補質問文の数が1である場合には、処理はステップS13に進む。候補質問文の数が0である場合には、処理はステップS14に進む。
【0088】
ステップS6において、キー選択部15は、候補質問文からキーを抽出する。そして、ステップS7において、キー選択部15は、上述した種々の手法のうちの1以上の手法により、ステップS6において抽出されたキーの中から、問い合わせキーを選択する。
【0089】
ステップS8において、問い合わせ部12は、ステップS7において選択された問い合わせキーの提示を含む問い合わせ文を生成する。続いて,ステップS9において、問い合わせ部12は、生成した問い合わせ文をユーザの端末50に送信する。
【0090】
ステップS10において、取得部11は、問いあわせに対する回答を含むユーザからの入力を取得する。ステップS11において、対話装置10は、入力(回答)の内容を判定する。入力の内容が、問い合わせキーの提示に対する肯定回答、否定回答及びスキップ回答のいずれかの回答である場合には、処理はステップS12に進む。入力の内容が、例えば、自由入力文として入力された質問文である場合には、処理はステップS2に進む。
【0091】
ステップS12において、キー蓄積部13は、回答の種別に関連付けて、問い合わせに含ませたキーを蓄積キー記憶部30に記憶させる。
【0092】
ステップS5において候補質問文の数が1であった場合には、ステップS13において、出力部16は、1件に特定された候補質問文及び当該候補質問文に関連付けられた回答に関する情報を端末50に出力する。
【0093】
ステップS5において候補質問文の数が0であった場合には、出力部16は、ユーザからの質問の内容に該当する質問文及び回答がない旨の情報を端末50に出力する。
【0094】
次に、コンピュータを、本実施形態の対話装置10として機能させるための対話プログラムについて説明する。
図11は、対話プログラムP1の構成を示す図である。
【0095】
対話プログラムP1は、対話装置10における特定処理を統括的に制御するメインモジュールm10、取得モジュールm11、問い合わせモジュールm12、キー蓄積モジュールm13、候補質問文抽出モジュールm14、キー選択モジュールm15及び出力モジュールm16を備えて構成される。そして、各モジュールm11〜m16により、対話装置10における取得部11、問い合わせ部12、キー蓄積部13、候補質問文抽出部14、キー選択部15及び出力部16のための各機能が実現される。なお、対話プログラムP1は、通信回線等の伝送媒体を介して伝送される態様であってもよいし、
図11に示されるように、記録媒体M1に記憶される態様であってもよい。
【0096】
以上説明した本実施形態の対話装置10、対話方法及び対話プログラムP1では、ユーザから肯定回答を取得した問い合わせにおいて提示されたキーが蓄積キーとして蓄積され、蓄積キーを含む候補質問文が抽出されるので、ユーザによる質問文に該当する可能性が高い質問文が候補質問文として抽出される。そして、問い合わせキーが候補質問文に含まれるキーの中から選択されることにより、候補質問文を表すキーを提示する問い合わせが行われることとなるので、その問い合わせに対する回答により候補質問文の数の絞り込みが確実に行われる。従って、ユーザからの質問文を特定するための対話の回数を減少させることが可能となる。
【0097】
また、別の形態に係る対話システムでは、出力部は、候補応答内容抽出部により抽出された応答内容が1つに特定された場合に、特定された応答内容を出力し、キー選択部は、次回の問い合わせ及び当該問い合わせに対する回答により、応答内容が特定されるまでに行われる、問い合わせ及び回答からなる対話の回数がより少なくなるような問い合わせキーを選択することとしてもよい。
【0098】
上記形態によれば、適切な問い合わせキーの選択により、応答内容の特定に至るまでの対話の回数が確実に減少される。
【0099】
また、別の形態に係る対話システムでは、取得部は、ユーザにより入力された自由入力文を取得し、キー蓄積部は、自由入力文からキーを抽出し、抽出したキーを蓄積キーとして蓄積することとしてもよい。
【0100】
上記形態によれば、ユーザからの自由入力文が取得され、取得された自由入力文から抽出されたキーが蓄積される。これにより、ユーザの意図する質問内容を自由入力文として入力した場合に、質問内容に関連するキーを蓄積キーとして取得できる。
【0101】
また、別の形態に係る対話システムでは、出力部は、候補応答内容抽出部により抽出される応答内容が一つに特定された場合に、特定された応答内容及び当該応答内容に関連付けられた回答に関する情報を出力することとしてもよい。
【0102】
上記形態によれば、ユーザからの質問に対する回答を提供できるので、当該対話システムをいわゆるFAQシステムとして構成することができる。
【0103】
また、別の形態に係る対話システムでは、応答内容記憶部に記憶されている応答内容に関連付けられているキーのそれぞれには属性が関連付けられており、キー選択部は、予め設定された属性に対する優先度に基づいて、問い合わせキーを選択することとしてもよい。
【0104】
上記形態によれば、例えば、名詞及び専門用語等の属性が関連付けられた語句に対して高い優先度を設定しておくことにより、候補応答内容に含まれる名詞及び専門用語等が優先的に問い合わせキーとして選択されるので、ユーザがより回答しやすく、また、候補応答内容の絞り込みが適切に行われる可能性が高いキーを問い合わせキーとすることができる。
【0105】
また、別の形態に係る対話システムでは、キー選択部は、蓄積キーが含まれる候補応答内容における当該蓄積キーとの所定の係り受け関係に基づいて、問い合わせキーを選択することとしてもよい。
【0106】
上記形態によれば、候補応答内容において蓄積キーと特定の係り受け関係を有するキーは、当該応答内容の特定に資するものである可能性が高いことに鑑みて、蓄積キーと所定の係り受け関係を有するキーを問い合わせキーとして選択することにより、候補応答内容の絞り込みに有効な回答が得られやすいこととなる。
【0107】
また、別の形態に係る対話システムでは、応答内容記憶部に記憶されている各応答内容は、予め設定された優先度を有しており、キー選択部は、候補応答内容のうち最も高い優先度を有する候補応答内容に含まれるキーを問い合わせキーとして選択することとしてもよい。
【0108】
上記形態によれば、例えば、当該応答内容がユーザからの応答内容として特定された頻度及びその他のランク付け情報等に基づいて各応答内容に対して予め優先度を関連付けておくことにより、より高い優先度を有する候補応答内容に含まれるキーを問い合わせキーとして選択することができる。そして、そのように選択された問い合わせキーを含む問い合わせにより、ユーザからの応答内容を特定できる可能性を高めることができる。その結果として、ユーザからの応答内容を特定するための対話の回数を減少させることができる。
【0109】
また、別の形態に係る対話システムでは、キー選択部は、候補応答内容抽出部により抽出された複数の候補応答内容のそれぞれに含まれる複数のキーの中から問い合わせキーを選択し、選択される問い合わせキーは、次回の問い合わせに含ませた場合に、当該次回の問い合わせに対する回答に基づいて候補応答内容抽出部により抽出される候補応答内容の数が、抽出された複数の候補応答内容の数に対して所定の割合に減少するキーであることとしてもよい。
【0110】
上記形態によれば、例えば、候補応答内容の数に関する所定の割合を略50パーセント程度に設定することにより、1回ごとの対話により、確実に候補応答内容の数を減少させることができる。従って、問い合わせキーの適切な選択の成否により極度に対話の回数が増加することを防止できる。
【0111】
また、別の形態に係る対話システムでは、キー選択部は、候補応答内容抽出部により抽出された複数の候補応答内容のそれぞれに含まれる複数のキーの中から問い合わせキーを選択し、選択される問い合わせキーは、次回の問い合わせに含ませた場合に、当該次回の問い合わせに対する回答に基づいて候補応答内容抽出部により抽出される各候補応答内容に関連付けられた頻度情報の合計を、抽出される候補応答内容の数で除した値が最も大きいキーであることとしてもよい。
【0112】
上記形態によれば、ユーザによる応答内容として特定された頻度が高い応答内容を、より少ない回数の対話により特定できる。
【0113】
また、別の形態に係る対話システムでは、取得部は、肯定回答及び否定を示す否定回答並びにスキップ回答のいずれかを、問い合わせにおけるキーの提示に対するユーザからの回答として取得し、キー選択部は、候補応答内容に含まれる複数のキーの中から、キーごとの当該キーの提示に対する回答の履歴に基づいて、問い合わせキーを選択することとしてもよい。
【0114】
上記形態によれば、例えば、スキップ回答の回数がより少ないキー及び肯定回答の回数がより多いキー等に対して高い優先度が設定されるように構成することにより、絞り込みに資する可能性が高いキーを問い合わせキーとして選択できる。
【0115】
以上、本実施形態について詳細に説明したが、当業者にとっては、本実施形態が本明細書中に説明した実施形態に限定されるものではないということは明らかである。本実施形態は、特許請求の範囲の記載により定まる本発明の趣旨及び範囲を逸脱することなく修正及び変更態様として実施することができる。したがって、本明細書の記載は、例示説明を目的とするものであり、本実施形態に対して何ら制限的な意味を有するものではない。
【0116】
本明細書で説明した各態様/実施形態は、LTE(Long Term Evolution)、LTE−A(LTE-Advanced)、SUPER 3G、IMT−Advanced、4G、5G、FRA(Future Radio Access)、W−CDMA(登録商標)、GSM(登録商標)、CDMA2000、UMB(Ultra Mobile Broadband)、IEEE 802.11(Wi−Fi)、IEEE 802.16(WiMAX)、IEEE 802.20、UWB(Ultra-WideBand)、Bluetooth(登録商標)、その他の適切なシステムを利用するシステム及び/又はこれらに基づいて拡張された次世代システムに適用されてもよい。
【0117】
本明細書で説明した各態様/実施形態の処理手順、シーケンス、フローチャートなどは、矛盾の無い限り、順序を入れ替えてもよい。例えば、本明細書で説明した方法については、例示的な順序で様々なステップの要素を提示しており、提示した特定の順序に限定されない。
【0118】
情報等は、上位レイヤ(または下位レイヤ)から下位レイヤ(または上位レイヤ)へ出力され得る。複数のネットワークノードを介して入出力されてもよい。
【0119】
入出力された情報等は特定の場所(例えば、メモリ)に保存されてもよいし、管理テーブルで管理してもよい。入出力される情報等は、上書き、更新、または追記され得る。出力された情報等は削除されてもよい。入力された情報等は他の装置へ送信されてもよい。
【0120】
判定は、1ビットで表される値(0か1か)によって行われてもよいし、真偽値(Boolean:trueまたはfalse)によって行われてもよいし、数値の比較(例えば、所定の値との比較)によって行われてもよい。
【0121】
本明細書で説明した各態様/実施形態は単独で用いてもよいし、組み合わせて用いてもよいし、実行に伴って切り替えて用いてもよい。また、所定の情報の通知(例えば、「Xであること」の通知)は、明示的に行うものに限られず、暗黙的(例えば、当該所定の情報の通知を行わない)ことによって行われてもよい。
【0122】
ソフトウェアは、ソフトウェア、ファームウェア、ミドルウェア、マイクロコード、ハードウェア記述言語と呼ばれるか、他の名称で呼ばれるかを問わず、命令、命令セット、コード、コードセグメント、プログラムコード、プログラム、サブプログラム、ソフトウェアモジュール、アプリケーション、ソフトウェアアプリケーション、ソフトウェアパッケージ、ルーチン、サブルーチン、オブジェクト、実行可能ファイル、実行スレッド、手順、機能などを意味するよう広く解釈されるべきである。
【0123】
また、ソフトウェア、命令などは、伝送媒体を介して送受信されてもよい。例えば、ソフトウェアが、同軸ケーブル、光ファイバケーブル、ツイストペア及びデジタル加入者回線(DSL)などの有線技術及び/又は赤外線、無線及びマイクロ波などの無線技術を使用してウェブサイト、サーバ、又は他のリモートソースから送信される場合、これらの有線技術及び/又は無線技術は、伝送媒体の定義内に含まれる。
【0124】
本明細書で説明した情報、信号などは、様々な異なる技術のいずれかを使用して表されてもよい。例えば、上記の説明全体に渡って言及され得るデータ、命令、コマンド、情報、信号、ビット、シンボル、チップなどは、電圧、電流、電磁波、磁界若しくは磁性粒子、光場若しくは光子、又はこれらの任意の組み合わせによって表されてもよい。
【0125】
なお、本明細書で説明した用語及び/又は本明細書の理解に必要な用語については、同一の又は類似する意味を有する用語と置き換えてもよい。
【0126】
本明細書で使用する「システム」および「ネットワーク」という用語は、互換的に使用される。
【0127】
また、本明細書で説明した情報、パラメータなどは、絶対値で表されてもよいし、所定の値からの相対値で表されてもよいし、対応する別の情報で表されてもよい。
【0128】
本明細書で使用する「に基づいて」という記載は、別段に明記されていない限り、「のみに基づいて」を意味しない。言い換えれば、「に基づいて」という記載は、「のみに基づいて」と「に少なくとも基づいて」の両方を意味する。
【0129】
本明細書で「第1の」、「第2の」などの呼称を使用した場合においては、その要素へのいかなる参照も、それらの要素の量または順序を全般的に限定するものではない。これらの呼称は、2つ以上の要素間を区別する便利な方法として本明細書で使用され得る。したがって、第1および第2の要素への参照は、2つの要素のみがそこで採用され得ること、または何らかの形で第1の要素が第2の要素に先行しなければならないことを意味しない。
【0130】
「含む(include)」、「含んでいる(including)」、およびそれらの変形が、本明細書あるいは特許請求の範囲で使用されている限り、これら用語は、用語「備える(comprising)」と同様に、包括的であることが意図される。さらに、本明細書あるいは特許請求の範囲において使用されている用語「または(or)」は、排他的論理和ではないことが意図される。
【0131】
本明細書において、文脈または技術的に明らかに1つのみしか存在しない装置である場合以外は、複数の装置をも含むものとする。
【0132】
本開示の全体において、文脈から明らかに単数を示したものではなければ、複数のものを含むものとする。