以下、本開示の一実施の形態について図面を参照しながら具体的に説明する。便宜上、実質的に同一の要素には同一の符号を付し、その説明を省略する場合がある。
図1は、本開示の一実施形態に係る対話システムの構成を示すブロック図である。対話システム1は、ユーザによる文字列の入力に対してユーザの追加入力を促す応答(聞き返し)を行い、ユーザの意図を特定するシステムである。本実施形態に係る対話システム1は、最適なFAQ(Frequently Asked Questions)を特定するシステムであり、ユーザによる文字列の入力に対して、ユーザが求める質問文を特定するための聞き返し文を端末に出力する。そして、当該聞き返し文に対する追加入力がユーザから入力されることによって、質問文が特定されるようになっている。例えば、ユーザによって「メールに添付されて送信された動画」という文章が入力された場合、この入力に対応する質問文を特定するための聞き返し文が出力される。聞き返し文は、例えば、「○○についての質問ですか」のような、ユーザに対してキーワードを質問するための文章、又は、「○○という質問ですか」のような、ユーザに対して質問文を確認するための文章であってよい。聞き返し文に対するユーザの追加入力は、例えば「はい」、「いいえ」等であってよい。追加入力によって質問文が特定された場合、対話システム1は特定された質問文及び質問文の回答を出力する。
対話システム1は、端末装置10と、対話装置20と、FAQデータベース30とを含んでいる。対話装置20は、移動体通信網あるいはインターネット等の通信網を介して、端末装置10及びFAQデータベース30と互いにデータの送受信を行うことができる。
端末装置10は、例えば、スマートフォン、携帯電話、タブレット端末、PDA(Personal Digital Assistant)、パーソナルコンピュータなどの情報処理端末である。端末装置10は、CPU(Central Processing Unit)、メモリ、通信モジュールなどのハードウェアから構成されている。端末装置10は、通信網を介して対話装置20との間で情報の送受信を行う。端末装置10は、ユーザ入力部11と、表示部12とを含んでいる。ユーザ入力部11は、ユーザからの入力文の入力を受け付ける。また、ユーザ入力部11は、端末装置10からの聞き返しに対するユーザからの追加入力の入力を受け付ける。ユーザ入力部11によって受け付けられた入力文、追加入力等は、対話装置20に出力される。ユーザ入力部11は、例えばタッチパネルディスプレイであり、ユーザによる操作に基づいて入力文、追加入力等を取得する。なお、ユーザ入力部11は、ボタン、キーボード、マイク等によって構成されてもよい。
表示部12は、ユーザ入力部11によって受け付けられた入力文、追加入力等を表示する。また、表示部12は、対話装置20から入力された聞き返し文等の情報を表示する。ユーザ入力部11がタッチパネルディスプレイによって構成されている場合、表示部12はユーザ入力部11と同じタッチパネルディスプレイによって構成され得る。
FAQデータベース30は、一例としてサーバコンピュータなどの情報処理端末であり、CPU、メモリ、通信モジュールなどのハードウェアから構成されている。図2は、FAQデータベースに格納されているデータの一例である。図2に示すように、FAQデータベース(記憶部)30は、質問文(結果文候補)と、質問文に対応付けられる一又は複数の格納キーワードを含む格納キー群と、質問文の回答と、を格納している。格納キー群を構成する格納キーワードは、形態素解析によって質問文から抽出された単語である。例えば、質問文が「メールを送信したい」である場合、格納キー群は格納キーワードとして「メール」及び「送信」を有する。回答は、FAQデータベース30を管理するシステム運営者によって管理された情報であり、例えばシステム運営者によって登録されている。なお、質問文がFAQデータベース30に格納される際に、各質問文には数字等によってIDが付与されてもよい。
対話装置20は、一例としてサーバコンピュータなどの情報処理端末であり、CPU、メモリ、通信モジュールなどのハードウェアから構成されている。図1に示すように、対話装置20は、入力部21と、キーワード取得部22と、カテゴリ生成部23と、カテゴリ内順位決定部24と、カテゴリ間順位決定部25と、提示部26と、を含んでいる。入力部21は、ユーザによって端末装置10から入力された入力文、追加入力等を、通信網を介して受け付ける部分である。
キーワード取得部22は、入力部21によって受け付けられた入力文に基づいて、一又は複数の入力キーワードを含む入力キー群を取得する。取得された入力キー群は、入力文に関連付けられて保持される。例えば、キーワード取得部22は、形態素解析等の技術を用いて入力文から単語を抽出し、抽出された単語が格納キーワードとしてFAQデータベースに格納されている場合に当該単語を入力キーワードとして取得する。例えば、入力文が「メールに添付されて送信された動画」である場合、「メール」、「添付」、「送信」及び「動画」が入力キーワードとして取得される。
さらに、キーワード取得部22は、入力文を特定するための聞き返し文に対するユーザの追加入力に基づいて、入力キー群を更新し得る。すなわち、キーワードを質問する聞き返しに対するユーザの追加入力が入力部21によって取得された場合、当該追加入力に基づいて入力キーワードが追加され得る。例えば、「「削除」についての質問ですか」という聞き返し文に対して肯定的な回答が取得された場合、「削除」が入力キーワードとして追加されるように入力キー群が更新される。なお、聞き返し文は後述の提示部26によって端末装置10に提示される。
カテゴリ生成部23は、FAQデータベース30に格納された質問文を複数のカテゴリに分類する。本実施形態では、カテゴリ生成部23は、入力キーワードを少なくとも一つ含む格納キー群に対応した質問文をFAQデータベース30から取得する。そして、カテゴリ生成部23は、キーワード取得部22によって取得された入力キー群とFAQデータベース30が有する格納キー群との比較に基づいて、取得した質問文を分類する。
カテゴリ生成部23における入力キー群と格納キー群との比較方法では、「マッチキー」、「不足キー」及び「過剰キー」が定義されている。「マッチキー」は、入力キー群の入力キーワードに一致する格納キー群の格納キーワード、として定義され得る。例えば、入力キー群が「メール」、「添付」、「送信」及び「動画」という入力キーワードを有している場合において、格納キー群が「送信」、「メール」、「添付」及び「削除」という格納キーワードを有しているとき、当該格納キー群に対応する質問文はマッチキーとして「送信」、「メール」及び「添付」を有する。
「不足キー」は、入力キー群に不足する格納キー群の格納キーワード、として定義され得る。例えば、入力キー群が「メール」、「添付」、「送信」及び「動画」という入力キーワードを有している場合において、格納キー群が「送信」、「メール」、「添付」及び「削除」という格納キーワードを有しているとき、当該格納キー群に対応する質問文は不足キーとして「削除」を有する。
「過剰キー」は、格納キー群に対して過剰に取得された入力キー群の入力キーワード、として定義され得る。例えば、入力キー群が「メール」、「添付」、「送信」及び「動画」という入力キーワードを有している場合において、格納キー群が「送信」、「メール」、「添付」及び「削除」という格納キーワードを有しているとき、当該格納キー群に対応する質問文は過剰キーとして「動画」を有する。
カテゴリ生成部23は、不足キーの有無および過剰キーの有無に基づいて、質問文を複数のカテゴリに分類する。カテゴリ生成部23によって定義されるカテゴリは、「完全マッチ」、「不足マッチ」、「過剰マッチ」及び「過不足マッチ」を含む。
「完全マッチ」は、入力キー群と格納キー群とが完全に一致した状態として定義される。すなわち、カテゴリ生成部23は、不足キーが無く、且つ、過剰キーが無い格納キー群に対応する質問文を「完全マッチ」に分類する。
「不足マッチ」は、格納キー群に対して入力キーワードが不足している状態として定義される。すなわち、カテゴリ生成部23は、不足キーが有り、且つ、過剰キーが無い格納キー群に対応する質問文を「不足マッチ」に分類する。
「過剰マッチ」は、格納キー群に対して入力キーワードが過剰に取得された状態として定義される。すなわち、カテゴリ生成部23は、不足キーが無く、且つ、過剰キーが有る格納キー群に対応する質問文を「過剰マッチ」に分類する。
「過不足マッチ」は、格納キー群に対して入力キーワードが不足し、且つ、格納キー群に対して入力キーワードが過剰に取得された状態として定義される。すなわち、カテゴリ生成部23は、不足キーが有り、且つ、過剰キーが有る格納キー群に対応する質問文を「過不足マッチ」に分類する。
図3は、入力キー群と格納キー群との関係を説明するための図であり、入力キー群を構成する入力キーワード、及び、格納キー群を構成する格納キーワードを、便宜的にアルファベットによって表現している。図3の例では、入力文に基づいてA,B,Cの入力キーワードからなる入力キー群が取得されている。また、FAQデータベース30から取得された質問文は、1〜7のIDを有し、A〜Kのうちの1又は複数の格納キーワードを有している。入力キーワードがA,B,Cであるため、格納キー群に含まれる格納キーワードのうちA,B,Cはマッチキーとしてカウントされる。また、格納キー群に含まれる格納キーワードのうちD〜Kは不足キーとしてカウントされる。また、各IDにおいて、格納キー群に存在しないキーワードA〜Cは過剰キーとしてカウントされる。例えば、ID5の質問文は、格納キー群にAを含んでいるため、マッチ数が1であり、格納キー群にD,F,Eを含んでいるため、不足数が3であり、格納キー群にB,Cを含んでいないため、過剰数が2となっている。
図4は、マッチリストを説明するための図である。図4では、図3の例における質問文のマッチリストが示されている。不足数及び過剰数がいずれもゼロであるID3が完全マッチに分類されている。過剰数がゼロであり、不足数がゼロ以外であるID4,ID7が不足マッチに分類されている。不足数がゼロであり、過剰数がゼロ以外であるID1,ID2が過剰マッチに分類されている。不足数及び過剰数がいずれもゼロ以外であるID5、ID6が過不足マッチに分類されている。
上述の通り、キーワード取得部22は、入力文を特定するための聞き返し文に対するユーザの追加入力に基づいて、入力キー群を更新する。この場合、入力キー群と格納キー群との対比結果に変動が生じ得る。そこで、カテゴリ生成部23は、キーワード取得部22によって入力キー群が更新された場合に、質問文を再分類する。
カテゴリ内順位決定部24は、それぞれのカテゴリ内における質問文の優先順位を決定する。例えば、カテゴリ内順位決定部24は、一のカテゴリ内に複数の質問文が分類されている場合に、質問文が有するマッチキーの数に基づいて質問文の優先順位を決定してもよい。一例として、質問文が有するマッチキーの数が多い順番に優先順位が決定され得る。また、カテゴリ内順位決定部24は、質問文のIDに基づいて、質問文の優先順位を決定してもよい。一例として、質問文に付与されたIDが数字である場合に、当該数字の値が小さい順番に優先順位が決定され得る。また、カテゴリ内順位決定部24は、質問文の利用頻度に基づいて質問文の優先順位を決定してもよい。一例として、FAQデータベース30では、質問文がユーザに参照される毎に、当該質問文の付加情報として参照回数が加算されてもよい。この場合、質問文の参照回数が多い順番に優先順位が決定されてもよい。さらに、カテゴリ内順位決定部24は、マッチキーの数、ID、参照回数を複合的に判断して質問文の優先順位を決定してもよい。
上述の通り、キーワード取得部22は、入力文を特定するための聞き返しに対するユーザの回答に基づいて、入力キー群を更新する。この場合、入力キー群と格納キー群との対比結果に変動が生じ得る。そこで、カテゴリ内順位決定部24は、キーワード取得部22によって入力キー群が更新された場合に、カテゴリ内順位を更新する。
カテゴリ間順位決定部25は、複数のカテゴリ間の優先順位を決定する。本実施形態では、カテゴリ間順位決定部25は、初期状態として、完全マッチ、不足マッチ、過剰マッチ、過不足マッチの順番でカテゴリ間の優先順位を決定する。また、カテゴリ間順位決定部25は、過剰マッチに分類される質問文の中に、入力キー群に対して一定割合以上のマッチキーを有する質問文がある場合に、不足マッチよりも過剰マッチを優先するように、カテゴリ間の優先順位を決定する。すなわち、この場合には、カテゴリ間順位決定部25は、完全マッチ、過剰マッチ、不足マッチ、過不足マッチの順番に優先順位を変更する。例えば、図3,4の例において、入力キー群に対して6割以上のマッチキーを有する過剰マッチを不足マッチよりも優先するという設定になっている場合には、ID2の質問文が不足マッチよりも優先されることになる。この場合、完全マッチ、過剰マッチ、不足マッチ、過不足マッチの順に優先順位が決定される。このように、マッチキーの割合によって優先順位が変更される場合には、マッチキーの数が多い順にマッチリスト内の順位決定が行われる。
また、カテゴリ間順位決定部25は、聞き返し文に対するユーザの追加入力に基づいて、カテゴリ間の優先順位を変更する。例えば、不足キーを質問する聞き返し文(「「○○」についての質問ですか」)に対して、所定回数連続して「いいえ」との回答が入力された場合、カテゴリ間順位決定部25は不足マッチよりも過剰マッチを優先するように、カテゴリ間の優先順位を決定する。また、質問文を確認するための聞き返し文(「「○○」という質問ですか」)に対して、所定回数連続して「いいえ」との回答が入力された場合、カテゴリ間順位決定部25は過剰マッチよりも不足マッチを優先するように、カテゴリ間の優先順位を決定する。
提示部26は、カテゴリ間順位決定部25によって決定された最優先順位のカテゴリ内から、カテゴリ内順位決定部24によって決定された最優先順位の質問文を選択する。そして、提示部26は、選択された当該質問文に基づいて、聞き返し文を端末装置10に出力する。例えば、最優先の質問文が完全マッチ又は過剰マッチに分類されている場合、提示部26は質問文を確認するための聞き返し文を端末装置10に出力する。一例として、提示部26は、質問文の全文を取得する。そして、提示部26は、引用符を用いて質問文の全文を引用した聞き返し文を生成し、この生成した聞き返し文を端末装置10に出力する。また、最優先の質問文が不足マッチ又は過不足マッチに分類されている場合、提示部26は質問文が有する不足キーを質問する聞き返し文を端末装置10に出力する。一例として、提示部26は、質問文が有する不足キーを取得する。そして、提示部26は、引用符を用いて不足キーを引用した聞き返し文を生成し、この生成した聞き返し文を端末装置10に出力する。なお、質問文が複数の不足キーを有している場合には、複数の不足キーの中から一の不足キーが選択されて聞き返し文が生成される。
また、提示部26は、カテゴリ間順位決定部25及びカテゴリ内順位決定部24によって決定された優先順位の高い順に複数の質問文が「質問文候補」として端末装置10に表示されるように、当該複数の質問文の全文の情報を端末装置10に出力してもよい。優先順位は、カテゴリ間の優先順位が高い順に決定される。すなわち、第1番目の優先順位のカテゴリにおける最下位の質問文の次に優先される質問文は、第2番目の優先順位のカテゴリにおける最上位の質問文である。端末装置10では複数の質問文が表示されている状態で、聞き返し文等の表示が実行される。
続いて、対話システム1の動作について説明する。図5は、対話システムの動作を説明するためのフローチャートである。対話システム1では、まずユーザの入力文が受け付けられる。すなわち、ユーザが端末装置10のユーザ入力部11によって入力文を入力する。これにより、対話装置20の入力部21は入力文を取得する(ステップS1)。
続いて、キーワード取得部22は、入力文に基づいて入力文に対応する入力キーを取得する(ステップS2)。例えば、ステップS1において、入力キーワードとしてA,B,Cを含む入力文が入力されたものとする。この場合、キーワード取得部22は、A,B,Cを入力キーワードとして含む入力キー群を取得する。
続いて、マッチリスト生成部によって、入力文に対応したマッチリストが生成される(ステップS3)。ステップS3では、まず、マッチリスト生成部によって、FAQデータベース30に格納された質問文の中から入力キーワードの少なくとも一つを格納キーワードとして含む質問文が取得される。そして、取得された質問文の格納キーワードがマッチキー、不足キー、過剰キーにそれぞれ振り分けられ、質問文毎にマッチキー、不足キー及び過剰キーの数が導出される。マッチリスト生成部は、不足キーの有無及び過剰キーの有無に基づいて、質問文のそれぞれを完全マッチ、不足マッチ、過剰マッチ及び過不足マッチのいずれかに分類する。それぞれのカテゴリに複数の質問文が分類されている場合、カテゴリ内順位決定部24によってカテゴリ内における優先順位が決定される。
続いて、マッチリスト間の優先順位が決定される(ステップS4)。本実施形態では、初期設定として、完全マッチ、不足マッチ、過剰マッチ、過不足マッチの順に優先順位が決定されている。
続いて、最優先となる質問文が決定される(ステップS5)。ステップS5では、提示部26によって、最優先順位のカテゴリ内における最優先順位の質問文が選択される。図3、図4の例では、最優先のカテゴリである完全マッチに分類された質問文が一つのみであるため、ID3の質問文が選択される。
続いて、ステップS5で選択された質問文が不足キーを有するか否かが判断される(ステップS6)。選択された質問文が完全マッチ又は過剰マッチの場合、不足キーがないと判断されステップS7に進む。ステップS7では、提示部26によって、質問文を特定するための聞き返し文が端末装置10に出力される。例えば、質問文の内容が「メールに動画を添付して送信したい」である場合、「「メールに動画を添付して送信したい」という質問ですか?」という聞き返し文が出力される。
端末装置10では、質問文を特定するための聞き返し文に対する追加入力が受け付けられる(ステップS8)。聞き返し文に対する追加入力が「はい」である場合、提示部26は質問文と共に質問文に対応した回答を端末装置10に出力する(ステップS9)。
一方、ステップS8における追加入力が「いいえ」の場合、対話システム1の処理はステップS13に進む。ステップS13については、後述する。
ステップS6において、選択された質問文が不足マッチ又は過不足マッチの場合、不足キーがあると判断されステップS10に進む。ステップS10では、提示部26によって不足キーを質問するための聞き返し文が生成され、この聞き返し文が端末装置10に出力される。例えば、「メールに添付されて送信された動画」という入力文に対して、「送信するメールに添付された動画を削除したい」という質問文が選択された場合、「「削除」についての質問ですか?」という聞き返し文が出力される。
端末装置10では、聞き返し文の表示とともに、ユーザの追加入力の受付が実行される(ステップS11)。ユーザによって聞き返し文に対する追加入力が端末装置10に入力されると、追加入力が端末装置10から対話装置20に出力される。対話装置20では、ユーザからの追加入力を受けて、マッチリストの更新が行われる(ステップS12)。すなわち、ユーザが聞き返し文を肯定する追加入力を入力した場合、キーワード取得部22は聞き返し文に含まれる不足キーを入力キーワードとして取得して、入力キー群を更新する。例えば、「「削除」についての質問ですか?」という聞き返し文に対して「はい」という追加入力がされた場合には、「削除」が入力キーワードとして新たに取得される。これにより、入力キー群と格納キー群との対比結果に変動が生じ得るので、カテゴリ生成部23は、新たな入力キー群に対応して質問文を再分類する。なお、マッチリストの更新は、ユーザが聞き返し文を否定する追加入力を入力した場合には、実行されなくてもよい。
続いて、マッチリスト間順位決定部によって、マッチリスト間の優先順位を変更する条件に該当しているか否かが判断される(ステップS13)。本実施形態では、上述の通り、例えば、聞き返し文に対する追加入力が所定回数連続して「いいえ」である場合にマッチリスト間の優先順位を変更する条件に該当すると判断される。
ステップS13において、マッチリスト間の優先順位を変更する条件に該当すると判断された場合、マッチリスト間順位決定部によってマッチリスト間の優先順位が変更される(ステップS14)。不足キーを質問する聞き返し文に対して、所定回数連続して「いいえ」が入力された場合、カテゴリ間順位決定部25は不足マッチよりも過剰マッチを優先する。また、質問文を確認するための聞き返し文(「「○○」という質問ですか」)に対して、所定回数連続して「いいえ」が入力された場合、カテゴリ間順位決定部25は過剰マッチよりも不足マッチを優先する。
続いて、再びステップS5に戻り、更新されたマッチリスト及び更新されたマッチリスト間の優先順位に基づいて最優先となる質問文が決定され、ステップS5以下の動作が繰り返される。なお、入力文の入力から最終的な質問文の特定までの動作では、同じIDの質問文を確認するための聞き返しが複数回行われないように制御されてもよい。例えば、一度ユーザに対して「「○○」という質問ですか」という確認が行われた質問文が再び最優先順位になった場合には、当該質問文の次の優先順位の質問文が提示部26によって選択されてもよい。
図6は、端末装置10の表示画面を示す図であり、端末装置10(ユーザ)と対話装置20との間の対話の経過を示している。ここでは、タッチパネルディスプレイを備えた端末装置10について説明する。したがって、表示部12はユーザ入力部11として機能し、ユーザは表示部12に表示されているアイコン等をタップすることにより情報の入力・選択を可能にする。表示部12による表示画面は、メイン画面M1と補助画面M2とを含む。メイン画面M1の入力窓11aは、タッチパネルにより文字入力を受け付ける部分である。吹き出しF1〜F4は、ユーザと対話システム1との間の対話を示す部分である。アイコンA1は、追加入力を受け付ける部分である。
メイン画面M1において、吹き出しF1はユーザによって端末装置10に入力された入力文を示す。吹き出しF3はユーザによって端末装置10に入力された追加入力を示す。吹き出しF2、F4は、ユーザにより入力された入力文に対して、対話装置20において生成された聞き返し文を示す。図示例では、図2に示すFAQデータベースを備えた対話システムの吹き出しを例示している。
例えば、端末装置10において、吹き出しF1で示される入力文が入力されると、吹き出しF2で示されるように、対話装置20から送信された聞き返し文が出力される。図示例では、聞き返し文とともに、キーワード取得部22によって取得された入力キーワードが「取得キー」として表示されている。また、吹き出しF2では、聞き返し文と共に、ユーザによって選択可能な追加入力を示すアイコンA1(はい、いいえ)が示される。ユーザは、アイコンA1をタップすることによって「はい」と「いいえ」とのいずれかを入力することができる。吹き出しF2では、質問文を確認する聞き返しが行われているため、ユーザが「はい」をタップすると質問文に対する回答が画面に表示される。
図6の例では、吹き出しF3に示すように、ユーザによって「いいえ」が入力されている。この場合、表示部12は、吹き出しF3を表示する。F3では、不足キーである「削除」を聞き返す文が表示されている。
また、補助画面M2には優先順位の高い質問文が「候補質問文」として表示される。候補質問文は、ユーザが訊きたい内容である質問文の候補である。補助画面M2には、ユーザの入力に応じて複数の質問文の候補が示される。例えば、候補質問文を構成するそれぞれの質問文は、ユーザによって選択可能となっている。質問文はユーザによって選択された場合、選択された質問文の情報が対話装置20に出力される。対話装置20は、選択された質問文に対応する回答を端末装置10に出力する。これにより、端末装置10では、選択された質問に対する回答を表示することができる。さらに、補助画面M2は、候補キーを含んでいる。この候補キーは、候補質問文に含められる可能性があるキーである。補助画面M2では、候補キーとして、「削除」、「URL」が示されている。例えば「削除」は、最も優先順位の高い候補質問文に含まれている。
以上説明した対話システム1では、ユーザによって文字列が入力されると、キーワード取得部22によって入力キー群が取得される。入力キー群が記憶部に記憶された結果文候補の格納キー群と比較されることによって、結果文候補が複数のカテゴリに分類される。このように、入力キー群と格納キー群とを比較してカテゴリが生成されているので、入力キー群に対する関係性が同じである結果文候補同士が同じグループに属することになる。この場合、複数のカテゴリのうちの最優先順位のカテゴリに属する結果文候補に基づいて効率的に追加入力を促すことができ、対話の回数を低減することができる。また、対話の回数が低減されることによって、結果としてデータ通信量を削減することができる。また、対話システム1の処理効率を向上させることができる、という効果を奏する。すなわち、不必要に対話を継続することがなくなるため、対話システム1の処理負荷を低減し、よって、その対話のための処理効率を向上させることができる。
また、対話システム1は、複数のカテゴリ間における最優先順位のカテゴリを決定するカテゴリ間順位決定部25を備えている。本実施形態のカテゴリ間順位決定部25は、聞き返しに対するユーザの追加入力に基づいて、カテゴリ間の優先順位を決定する。すなわち、カテゴリ間の優先順位にはユーザの追加入力が反映されている。ユーザの意図によってカテゴリ間の優先順位が決定されるので、カテゴリ間の優先順位が適切に決定される。これにより、質問回数が低減するように、ユーザに対する聞き返しを実行することができる。
また、カテゴリ生成部23は、不足キーの有無および過剰キーの有無に基づいてカテゴリを生成する。すなわち、カテゴリ生成部23は、不足キーが無く、且つ、過剰キーが無い場合を完全マッチと定義し、不足キーが有り、且つ、過剰キーが無い場合を不足マッチと定義し、不足キーが無く、且つ、過剰キーが有る場合を過剰マッチと定義し、不足キーが有り、且つ、過剰キーが有る場合を過不足マッチと定義する分類に基づいて、カテゴリを生成する。取得されたキーワードに基づいてユーザの入力文の意図を特定しようとする場合、一般に、取得されたキーワードの数が多いほどユーザの意図を特定しやすい。特に、取得されたキーワードがユーザの意図を決定づけるものであるときには、質問文を的確に絞り込むことができる。一方で、取得されたキーワードがユーザの意図を反映していない場合には、当該キーワードを含む質問文をユーザに聞き返したとしても正しい質問文に辿り着くことはできない。本実施形態では、不足キーと過剰キーとを定義することによって、ユーザの入力文とFAQデータベース30の質問文との関係性を明確にしている。そのため、ユーザの追加入力に応じて、質問を特定するうえで十分なキーワードが取得されているかの判断を容易に行うことができる。例えば、不足マッチの不足キーを質問する聞き返しに対して、ユーザが連続して「いいえ」と回答する場合には、すでに十分なキーワードが取得されていると考えられる。また、過剰マッチの質問文を確認する聞き返しに対して、ユーザが連続して「いいえ」と回答する場合には、十分なキーワードが取得されていないと考えられる。
カテゴリ内順位決定部24は、追加入力を促す応答に対するユーザの回答に基づいて、カテゴリ内順位を更新する。ユーザの追加入力の内容がカテゴリ内の優先順位に反映されることによって、聞き返しが繰り返される度にカテゴリ内の優先順位にユーザの意図が的確に反映され得る。
キーワード取得部22は、追加入力を促す応答に対するユーザの回答に基づいて、入力キー群を更新し、カテゴリ生成部23は、キーワード取得部22によって入力キー群が更新された場合に、マッチリストを再分類する。入力キー群の更新に応じてマッチリストが更新されることにより、マッチリストにユーザの意図が的確に反映され得る。
提示部26は、カテゴリ内順位決定部24によって決定された優先順位の高い順に複数の質問文を提示する。この構成では、優先順位の高い質問文が常に提示されていることで、ユーザは、どの質問文を目指して聞き返しが行われているかを容易に認識できる。また候補質問文の中にユーザの意図する質問があった場合には、ユーザがその質問を選択することで、回答を表示することが出来るため、ユーザビリティ向上、対話数の削減になる。
以上、実施形態について図面を参照して詳述したが、具体的な構成はこの実施形態に限られるものではない。
なお、上記実施の形態の説明に用いたブロック図は、機能単位のブロックを示している。これらの機能ブロック(構成部)は、ハードウェア及び/又はソフトウェアの任意の組み合わせによって実現される。また、各機能ブロックの実現手段は特に限定されない。すなわち、各機能ブロックは、物理的及び/又は論理的に結合した1つの装置により実現されてもよいし、物理的及び/又は論理的に分離した2つ以上の装置を直接的及び/又は間接的に(例えば、有線及び/又は無線)で接続し、これら複数の装置により実現されてもよい。
例えば、本開示の一実施の形態における対話装置20は、本実施形態の対話装置20の処理を行うコンピュータとして機能してもよい。図7は、本実施形態に係る対話装置20のハードウェア構成の一例を示す図である。上述の対話装置20は、物理的には、プロセッサ1001、メモリ1002、ストレージ1003、通信装置1004、入力装置1005、出力装置1006、バス1007などを含むコンピュータ装置として構成されてもよい。また、端末装置10、FAQデータベース30も、同様のハードウェア構成を取ってもよい。
なお、以下の説明では、「装置」という文言は、回路、デバイス、ユニットなどに読み替えることができる。対話装置20のハードウェア構成は、図に示した各装置を1つ又は複数含むように構成されてもよいし、一部の装置を含まずに構成されてもよい。
対話装置20における各機能は、プロセッサ1001、メモリ1002などのハードウェア上に所定のソフトウェア(プログラム)を読み込ませることで、プロセッサ1001が演算を行い、通信装置1004による通信や、メモリ1002及びストレージ1003におけるデータの読み出し及び/又は書き込みを制御することで実現される。
プロセッサ1001は、例えば、オペレーティングシステムを動作させてコンピュータ全体を制御する。プロセッサ1001は、周辺装置とのインターフェース、制御装置、演算装置、レジスタなどを含む中央処理装置(CPU:Central Processing Unit)で構成されてもよい。例えば、対話装置20の各機能は、プロセッサ1001で実現されてもよい。
また、プロセッサ1001は、プログラム(プログラムコード)、ソフトウェアモジュールやデータを、ストレージ1003及び/又は通信装置1004からメモリ1002に読み出し、これらに従って各種の処理を実行する。プログラムとしては、上述の実施の形態で説明した動作の少なくとも一部をコンピュータに実行させるプログラムが用いられる。例えば対話装置20の各機能は、メモリ1002に格納され、プロセッサ1001で動作する制御プログラムによって実現されてもよい。上述の各種処理は、1つのプロセッサ1001で実行される旨を説明してきたが、2以上のプロセッサ1001により同時又は逐次に実行されてもよい。プロセッサ1001は、1以上のチップで実装されてもよい。なお、プログラムは、電気通信回線を介してネットワークから送信されても良い。
メモリ1002は、コンピュータ読み取り可能な記録媒体であり、例えば、ROM(Read Only Memory)、EPROM(Erasable Programmable ROM)、EEPROM(Electrically Erasable Programmable ROM)、RAM(Random Access Memory)などの少なくとも1つで構成されてもよい。メモリ1002は、レジスタ、キャッシュ、メインメモリ(主記憶装置)などと呼ばれてもよい。メモリ1002は、本発明の一実施の形態に係る方法を実施するために実行可能なプログラム(プログラムコード)、ソフトウェアモジュールなどを保存することができる。
ストレージ1003は、コンピュータ読み取り可能な記録媒体であり、例えば、CD−ROM(Compact Disc ROM)などの光ディスク、ハードディスクドライブ、フレキシブルディスク、光磁気ディスク(例えば、コンパクトディスク、デジタル多用途ディスク、Blu−ray(登録商標)ディスク)、スマートカード、フラッシュメモリ(例えば、カード、スティック、キードライブ)、フロッピー(登録商標)ディスク、磁気ストリップなどの少なくとも1つで構成されてもよい。ストレージ1003は、補助記憶装置と呼ばれてもよい。上述の記憶媒体は、例えば、メモリ1002及び/又はストレージ1003を含むデータベース、サーバその他の適切な媒体であってもよい。
通信装置1004は、有線及び/又は無線ネットワークを介してコンピュータ間の通信を行うためのハードウェア(送受信デバイス)であり、例えばネットワークデバイス、ネットワークコントローラ、ネットワークカード、通信モジュールなどともいう。例えば、上述の対話装置20の各機能は、通信装置1004で実現されてもよい。
入力装置1005は、外部からの入力を受け付ける入力デバイス(例えば、キーボード、マウス、マイクロフォン、スイッチ、ボタン、センサなど)である。出力装置1006は、外部への出力を実施する出力デバイス(例えば、ディスプレイ、スピーカー、LEDランプなど)である。なお、入力装置1005及び出力装置1006は、一体となった構成(例えば、タッチパネル)であってもよい。
また、プロセッサ1001やメモリ1002などの各装置は、情報を通信するためのバス1007で接続される。バス1007は、単一のバスで構成されてもよいし、装置間で異なるバスで構成されてもよい。
また、対話装置20は、マイクロプロセッサ、デジタル信号プロセッサ(DSP:Digital Signal Processor)、ASIC(Application Specific Integrated Circuit)、PLD(Programmable Logic Device)、FPGA(Field Programmable Gate Array)などのハードウェアを含んで構成されてもよく、当該ハードウェアにより、各機能ブロックの一部又は全てが実現されてもよい。例えば、プロセッサ1001は、これらのハードウェアの少なくとも1つで実装されてもよい。
以上、本実施形態について詳細に説明したが、当業者にとっては、本実施形態が本明細書中に説明した実施形態に限定されるものではないということは明らかである。本実施形態は、特許請求の範囲の記載により定まる本発明の趣旨及び範囲を逸脱することなく修正及び変更態様として実施することができる。したがって、本明細書の記載は、例示説明を目的とするものであり、本実施形態に対して何ら制限的な意味を有するものではない。
情報の通知は、本明細書で説明した態様/実施形態に限られず、他の方法で行われてもよい。例えば、情報の通知は、物理レイヤシグナリング(例えば、DCI(Downlink Control Information)、UCI(Uplink Control Information))、上位レイヤシグナリング(例えば、RRC(Radio Resource Control)シグナリング、MAC(Medium Access Control)シグナリング、報知情報(MIB(Master Information Block)、SIB(System Information Block)))、その他の信号又はこれらの組み合わせによって実施されてもよい。また、RRCシグナリングは、RRCメッセージと呼ばれてもよく、例えば、RRC接続セットアップ(RRC Connection Setup)メッセージ、RRC接続再構成(RRCConnectionReconfiguration)メッセージなどであってもよい。
本明細書で説明した各態様/実施形態は、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(登録商標)、その他の適切なシステムを利用するシステム及び/又はこれらに基づいて拡張された次世代システムに適用されてもよい。
本明細書で説明した各態様/実施形態の処理手順、シーケンス、フローチャートなどは、矛盾の無い限り、順序を入れ替えてもよい。例えば、本明細書で説明した方法については、例示的な順序で様々なステップの要素を提示しており、提示した特定の順序に限定されない。
本明細書において特定の装置によって行われるとした特定動作は、場合によってはその上位ノード(upper node)によって行われることもある。例えば、特定の装置が基地局であった場合においては、当該基地局を有する1つまたは複数のネットワークノード(network nodes)からなるネットワークにおいて、端末との通信のために行われる様々な動作は、基地局および/または基地局以外の他のネットワークノード(例えば、MMEまたはS-GWなどが考えられるが、これらに限られない)によって行われ得ることは明らかである。上記において基地局以外の他のネットワークノードが1つである場合を例示したが、複数の他のネットワークノードの組み合わせ(例えば、MMEおよびS-GW)であってもよい。
情報等は、上位レイヤ(または下位レイヤ)から下位レイヤ(または上位レイヤ)へ出力され得る。複数のネットワークノードを介して入出力されてもよい。
入出力された情報等は特定の場所(例えば、メモリ)に保存されてもよいし、管理テーブルで管理してもよい。入出力される情報等は、上書き、更新、または追記され得る。出力された情報等は削除されてもよい。入力された情報等は他の装置へ送信されてもよい。
判定は、1ビットで表される値(0か1か)によって行われてもよいし、真偽値(Boolean:trueまたはfalse)によって行われてもよいし、数値の比較(例えば、所定の値との比較)によって行われてもよい。
本明細書で説明した各態様/実施形態は単独で用いてもよいし、組み合わせて用いてもよいし、実行に伴って切り替えて用いてもよい。また、所定の情報の通知(例えば、「Xであること」の通知)は、明示的に行うものに限られず、暗黙的(例えば、当該所定の情報の通知を行わない)ことによって行われてもよい。
ソフトウェアは、ソフトウェア、ファームウェア、ミドルウェア、マイクロコード、ハードウェア記述言語と呼ばれるか、他の名称で呼ばれるかを問わず、命令、命令セット、コード、コードセグメント、プログラムコード、プログラム、サブプログラム、ソフトウェアモジュール、アプリケーション、ソフトウェアアプリケーション、ソフトウェアパッケージ、ルーチン、サブルーチン、オブジェクト、実行可能ファイル、実行スレッド、手順、機能などを意味するよう広く解釈されるべきである。
また、ソフトウェア、命令などは、伝送媒体を介して送受信されてもよい。例えば、ソフトウェアが、同軸ケーブル、光ファイバケーブル、ツイストペア及びデジタル加入者回線(DSL)などの有線技術及び/又は赤外線、無線及びマイクロ波などの無線技術を使用してウェブサイト、サーバ、又は他のリモートソースから送信される場合、これらの有線技術及び/又は無線技術は、伝送媒体の定義内に含まれる。
本明細書で説明した情報、信号などは、様々な異なる技術のいずれかを使用して表されてもよい。例えば、上記の説明全体に渡って言及され得るデータ、命令、コマンド、情報、信号、ビット、シンボル、チップなどは、電圧、電流、電磁波、磁界若しくは磁性粒子、光場若しくは光子、又はこれらの任意の組み合わせによって表されてもよい。
なお、本明細書で説明した用語及び/又は本明細書の理解に必要な用語については、同一の又は類似する意味を有する用語と置き換えてもよい。例えば、チャネル及び/又はシンボルは信号(シグナル)であってもよい。また、信号はメッセージであってもよい。また、コンポーネントキャリア(CC)は、キャリア周波数、セルなどと呼ばれてもよい。
本明細書で使用する「システム」および「ネットワーク」という用語は、互換的に使用される。
また、本明細書で説明した情報、パラメータなどは、絶対値で表されてもよいし、所定の値からの相対値で表されてもよいし、対応する別の情報で表されてもよい。例えば、無線リソースはインデックスで指示されるものであってもよい。
上述したパラメータに使用する名称はいかなる点においても限定的なものではない。さらに、これらのパラメータを使用する数式等は、本明細書で明示的に開示したものと異なる場合もある。様々なチャネル(例えば、PUCCH、PDCCHなど)及び情報要素(例えば、TPCなど)は、あらゆる好適な名称によって識別できるので、これらの様々なチャネル及び情報要素に割り当てている様々な名称は、いかなる点においても限定的なものではない。
移動通信端末は、当業者によって、加入者局、モバイルユニット、加入者ユニット、ワイヤレスユニット、リモートユニット、モバイルデバイス、ワイヤレスデバイス、ワイヤレス通信デバイス、リモートデバイス、モバイル加入者局、アクセス端末、モバイル端末、ワイヤレス端末、リモート端末、ハンドセット、ユーザエージェント、モバイルクライアント、クライアント、またはいくつかの他の適切な用語で呼ばれる場合もある。
本明細書で使用する「判断(determining)」、「決定(determining)」という用語は、多種多様な動作を包含する場合がある。「判断」、「決定」は、例えば、判定(judging)、計算(calculating)、算出(computing)、処理(processing)、導出(deriving)、調査(investigating)、探索(looking up)(例えば、テーブル、データベースまたは別のデータ構造での探索)、確認(ascertaining)した事を「判断」「決定」したとみなす事などを含み得る。また、「判断」、「決定」は、受信(receiving)(例えば、情報を受信すること)、送信(transmitting)(例えば、情報を送信すること)、入力(input)、出力(output)、アクセス(accessing)(例えば、メモリ中のデータにアクセスすること)した事を「判断」「決定」したとみなす事などを含み得る。また、「判断」、「決定」は、解決(resolving)、選択(selecting)、選定(choosing)、確立(establishing)、比較(comparing)などした事を「判断」「決定」したとみなす事を含み得る。つまり、「判断」「決定」は、何らかの動作を「判断」「決定」したとみなす事を含み得る。
「接続された(connected)」、「結合された(coupled)」という用語、又はこれらのあらゆる変形は、2又はそれ以上の要素間の直接的又は間接的なあらゆる接続又は結合を意味し、互いに「接続」又は「結合」された2つの要素間に1又はそれ以上の中間要素が存在することを含むことができる。要素間の結合又は接続は、物理的なものであっても、論理的なものであっても、或いはこれらの組み合わせであってもよい。本明細書で使用する場合、2つの要素は、1又はそれ以上の電線、ケーブル及び/又はプリント電気接続を使用することにより、並びにいくつかの非限定的かつ非包括的な例として、無線周波数領域、マイクロ波領域及び光(可視及び不可視の両方)領域の波長を有する電磁エネルギーなどの電磁エネルギーを使用することにより、互いに「接続」又は「結合」されると考えることができる。
本明細書で使用する「に基づいて」という記載は、別段に明記されていない限り、「のみに基づいて」を意味しない。言い換えれば、「に基づいて」という記載は、「のみに基づいて」と「に少なくとも基づいて」の両方を意味する。
本明細書で「第1の」、「第2の」などの呼称を使用した場合においては、その要素へのいかなる参照も、それらの要素の量または順序を全般的に限定するものではない。これらの呼称は、2つ以上の要素間を区別する便利な方法として本明細書で使用され得る。したがって、第1および第2の要素への参照は、2つの要素のみがそこで採用され得ること、または何らかの形で第1の要素が第2の要素に先行しなければならないことを意味しない。
「含む(include)」、「含んでいる(including)」、およびそれらの変形が、本明細書あるいは特許請求の範囲で使用されている限り、これら用語は、用語「備える(comprising)」と同様に、包括的であることが意図される。さらに、本明細書あるいは特許請求の範囲において使用されている用語「または(or)」は、排他的論理和ではないことが意図される。
本明細書において、文脈または技術的に明らかに1つのみしか存在しない装置である場合以外は、複数の装置をも含むものとする。本開示の全体において、文脈から明らかに単数を示したものではなければ、複数のものを含むものとする。