JP7319504B2 - Dialogue system, dialogue method, program, and storage medium - Google Patents
Dialogue system, dialogue method, program, and storage medium Download PDFInfo
- Publication number
- JP7319504B2 JP7319504B2 JP2022077024A JP2022077024A JP7319504B2 JP 7319504 B2 JP7319504 B2 JP 7319504B2 JP 2022077024 A JP2022077024 A JP 2022077024A JP 2022077024 A JP2022077024 A JP 2022077024A JP 7319504 B2 JP7319504 B2 JP 7319504B2
- Authority
- JP
- Japan
- Prior art keywords
- question
- keyword
- answer
- response
- query
- 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.)
- Active
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
本発明の実施形態は、対話システム、対話方法、プログラム、及び記憶媒体に関する。 TECHNICAL FIELD Embodiments of the present invention relate to a dialogue system, a dialogue method, a program, and a storage medium.
ユーザとの対話を通じて、ユーザからの問い合わせに対して回答を出力する対話システムがある。この対話システムを、より容易に構築できる技術の開発が望まれている。 There is a dialogue system that outputs answers to inquiries from users through dialogue with users. There is a demand for the development of a technology that can more easily construct this dialogue system.
本発明の実施形態は、より容易に構築可能な、対話システム、対話方法、プログラム、及び記憶媒体を提供する。 Embodiments of the present invention provide a dialog system, dialog method, program, and storage medium that can be constructed more easily.
実施形態に係る対話システムは、処理部を含む。前記処理部は、ユーザにより1つ以上の単語を含む第1文章が入力されると、前記1つ以上の単語の少なくとも一部を第1クエリキーワードに設定する。前記処理部は、質問及び前記質問に対する回答を含む質問回答ペアと、前記質問回答ペアに紐付けられた複数の質問キーワードと、の組み合わせを複数含む質問回答集から、前記第1クエリキーワードを含む1つ以上の前記質問回答ペアを選定する。前記処理部は、選定された前記質問回答ペアの数が1の場合には、前記選定された質問回答ペアに含まれる前記回答を示す第1応答を出力する。前記処理部は、前記数が第1閾値以上の場合には、前記選定された質問回答ペアの1つと紐付けられた前記複数の質問キーワードから前記第1クエリキーワードと異なる第1質問キーワードを抽出し、前記選定された質問回答ペアの別の1つと紐付けられた別の前記複数の質問キーワードから前記第1クエリキーワードと異なる第2質問キーワードを抽出し、前記第1質問キーワード及び前記第2質問キーワードを含む第2応答を出力する。前記処理部は、前記第1応答及び前記第2応答を生成する際に、それぞれがブランクを含む複数のシナリオテンプレートを使用する。前記第1応答は、前記複数のシナリオテンプレートの1つの前記ブランクに、前記選定された質問回答ペアに含まれる前記回答を埋め込むことで生成される。前記第2応答は、前記複数のシナリオテンプレートの別の1つの前記ブランクに、前記第1質問キーワード及び前記第2質問キーワードを埋め込むことで生成される。 A dialog system according to an embodiment includes a processing unit. When a user inputs a first sentence including one or more words, the processing unit sets at least part of the one or more words as a first query keyword. The processing unit includes the first query keyword from a question and answer collection including a plurality of combinations of a question and answer pair including a question and an answer to the question and a plurality of question keywords linked to the question and answer pair. Select one or more of the question-answer pairs. When the number of the selected question-and-answer pairs is one, the processing unit outputs a first response indicating the answers included in the selected question-and-answer pair. When the number is equal to or greater than a first threshold, the processing unit extracts a first question keyword different from the first query keyword from the plurality of question keywords associated with one of the selected question-answer pairs. and extracting a second question keyword different from the first query keyword from the plurality of other question keywords associated with another one of the selected question-answer pairs, and extracting the first question keyword and the second Output a second response containing the query keyword. The processing unit uses a plurality of scenario templates each containing blanks when generating the first response and the second response. The first response is generated by filling the blank of one of the plurality of scenario templates with the answer included in the selected question-answer pair. The second response is generated by embedding the first question keyword and the second question keyword in another one of the plurality of scenario templates.
以下に、本発明の各実施形態について図面を参照しつつ説明する。
本願明細書と各図において、既に説明したものと同様の要素には同一の符号を付して詳細な説明は適宜省略する。
Each embodiment of the present invention will be described below with reference to the drawings.
In the specification and drawings of the present application, elements similar to those already described are denoted by the same reference numerals, and detailed description thereof will be omitted as appropriate.
(第1実施形態)
図1は、第1実施形態に係る対話システムを例示する模式図である。
図1に示すように、第1実施形態に係る対話システム1は、処理部10を含む。図1に示す例では、対話システム1は、第1記憶部21及び第2記憶部22をさらに含む。
(First embodiment)
FIG. 1 is a schematic diagram illustrating an interactive system according to the first embodiment.
As shown in FIG. 1, the
処理部10は、ユーザから入力された文章を受け付ける。処理部10は、入力された文章に対して応答を出力する。ユーザは、処理部10からの応答に基づき、次の文章を処理部10へ入力する。処理部10は、次の文章に対する応答を、それまでのユーザとの対話に基づいて出力する。これにより、ユーザと対話システム1との間で対話が実現される。
The
第1記憶部21は、質問回答集を記憶する。質問回答集は、複数の質問回答ペアを含む。それぞれの質問回答ペアは、質問と、その質問に対する回答と、を含む。第2記憶部22は、処理部10から出力される応答を生成するための汎用的なシナリオを記憶する。処理部10は、第1記憶部21及び第2記憶部22を参照しながら、入力された文章に対する応答を生成する。
The
例えば、ユーザから入力される文章は、問い合わせを含む。ここでは、ユーザから処理部10へ入力される文章を、「クエリ文章」という。処理部10は、クエリ文章を受け付けると、第1記憶部21の質問回答集を参照する。処理部10は、クエリ文章と関連する質問が質問回答集にあるか調べる。処理部10は、関連する質問を見つけると、その質問に対する回答を示す応答を、ユーザに向けて出力する。
For example, a sentence input by a user includes an inquiry. Here, a sentence input from the user to the
処理部10は、関連する質問が複数あるときは、それらの質問を1つに絞り込むための応答(問い返し)を出力する。ユーザは、その応答に対して、質問を絞り込むための情報(キーワード)を含む別のクエリ文章を入力する。例えば、質問が1つに絞り込まれるまで、ユーザによるクエリ文章の入力と処理部10からの応答と、が交互に繰り返される。ユーザは、対話システムの応答に答えることで、ユーザの求める情報を含む1つの回答にたどり着くことができる。対話システム1を用いることで、ユーザが適切な検索方法を知っていなくても、ユーザは、1つの回答を得られる。
When there are a plurality of related questions, the
対話システムからユーザへ、クエリ文章に基づいた応答を出力するためには、シナリオが必要である。シナリオを自動的に生成するために、概念辞書を用いる方法がある。概念辞書は、例えば、属性、属性値、及び言い換え表現を含む。概念辞書を用いた対話システムでは、処理部は、クエリ文章が入力されると、概念辞書と回答候補の数とに基づいて、シナリオを自動的に生成する。シナリオの自動生成により、人(例えばシステム管理者)によるシナリオの作成が不要となる。
一方で、概念辞書を用いるためには、システム管理者は、質問回答集に含まれる全ての質問のそれぞれに、1つ以上の属性と、各属性の属性値と、を付与する必要がある。概念辞書を用いる場合、シナリオの作成に要する時間を削減できるが、概念辞書の作成に時間を要する。また、何を属性とし、何を属性値とするかは、システム管理者に依存する。ユーザの問い合わせにおいて、属性値が言及されたか判断する方法を決める必要もある。従って、システム管理者に専門知識が求められ、システム管理者への負担が大きい。
このため、ユーザと対話できる対話システムを、より容易に構築できる技術の開発が望まれている。
A scenario is needed to output a response based on a query sentence from a dialog system to a user. There is a method using a concept dictionary to automatically generate scenarios. The concept dictionary includes, for example, attributes, attribute values, and paraphrasing expressions. In a dialogue system using a concept dictionary, when a query sentence is input, the processing unit automatically generates a scenario based on the concept dictionary and the number of answer candidates. Automatic generation of scenarios eliminates the need for humans (eg, system administrators) to create scenarios.
On the other hand, in order to use the concept dictionary, the system administrator needs to assign one or more attributes and attribute values for each attribute to each question included in the question and answer collection. When using a concept dictionary, the time required to create a scenario can be reduced, but it takes time to create the concept dictionary. Also, it depends on the system administrator what to set as an attribute and what to set as an attribute value. You also need to decide how to determine if an attribute value was mentioned in a user query. Therefore, the system administrator is required to have specialized knowledge, which places a heavy burden on the system administrator.
For this reason, it is desired to develop a technology that can more easily construct a dialogue system that allows dialogue with a user.
実施形態に係る対話システム1では、処理部10は、ユーザにより1つ以上の単語を含むクエリ文章が入力されると、その1つ以上の単語の少なくとも一部をキーワード(クエリキーワード)に設定する。処理部10は、質問回答集から、クエリキーワードを含む質問回答ペアを選定する。クエリキーワードを選定に用いることで、質問回答集への属性及び属性値の付与のような事前準備が不用となる。
In the
さらに、処理部10は、選定された質問回答ペアの数が1のときは、その1つの質問回答ペアの回答を示す第1応答を出力する。例えば、第1応答は、選定された質問回答ペアに含まれる質問及び回答を含む。第1応答は、回答が記載されたウェブページのURLを含んでいても良い。ユーザは、第1応答を参照することで、問い合わせに対する回答を確認できる。
処理部10は、選定された質問回答ペアの数が2以上のときは、第2応答を出力する。第2応答は、選定された質問回答ペアの1つに含まれる複数のキーワード(質問キーワード)から抽出された質問キーワードと、選定された質問回答ペアの別の1つに含まれる別の複数の質問キーワードから抽出された別の質問キーワードと、を含む。第2応答に含まれるこれらの質問キーワードは、クエリキーワードとは異なる。ユーザは、第2応答を参照することで、質問回答ペアを絞り込むために、どのようなキーワードを次のクエリ文章に含めれば良いか知ることができる。
また、上述した選定された質問回答ペアの数に応じたシナリオは、汎用的な辞書を用いて自動的に生成できる。このため、システム管理者のシナリオ作成に要する負担を軽減できる。
Furthermore, when the number of selected question-answer pairs is one, the
The
Also, a scenario corresponding to the number of question-and-answer pairs selected as described above can be automatically generated using a general-purpose dictionary. Therefore, it is possible to reduce the burden required for scenario creation on the system administrator.
例えば、ユーザは、第2応答に含まれるいずれかの質問キーワードを含む別のクエリ文章を処理部10へ入力する。処理部10は、その別のクエリ文章に含まれる1つ以上の単語の少なくとも一部を、別のクエリキーワードに設定する。処理部10は、その別のクエリキーワードを用いて、選定された2つ以上の質問回答ペアから、その一部をさらに選定する。この結果、選定された質問回答ペアの数が1のときは、処理部10は、第1応答を出力する。選定された質問回答ペアの数が2以上のときは、処理部10は、第2応答を再び出力する。
For example, the user inputs to the
実施形態によれば、例えば、質問回答集についてのユーザとの対話を、概念辞書を用いずに実現できる。また、実施形態によれば、2つ以上の質問回答ペアが選定されたときは、質問キーワードを含む応答を表示する。これにより、ユーザは、どのようなキーワードを含むクエリ文章を対話システム1へ入力すれば良いか知ることができる。この結果、ユーザが、求める回答によりたどり着き易くなる。対話システム1の利便性を向上させることができる。
According to the embodiment, for example, dialogue with a user about a question and answer collection can be realized without using a concept dictionary. Further, according to the embodiment, when two or more question-answer pairs are selected, the responses including question keywords are displayed. This allows the user to know what kind of keyword a query sentence should be input to the
処理部10は、電気回路(処理回路)を含む中央演算処理装置を含む。第1記憶部21及び第2記憶部22は、記憶装置をそれぞれ含む。記憶装置は、例えば、ハードディスクドライブ(HDD)、ネットワークアタッチストレージ(NAS)、組み込み用マルチメディアカード(eMMC)、ソリッドステートドライブ(SSD)、及びソリッドステートハイブリッドドライブ(SSHD)の少なくともいずれかを含む。1つの記憶装置が、第1記憶部21及び第2記憶部22の両方として機能しても良い。処理部10、第1記憶部21、及び第2記憶部22は、1つのコンピュータに含まれても良いし、有線、無線、又はネットワークを介して相互に接続されても良い。
The
実施形態に係る対話システム1について、具体的に説明する。
図2は、質問回答集を例示する表である。
図3は、シナリオテンプレートを例示する表である。
図4は、タスク用シナリオを例示する表である。
The
FIG. 2 is a table illustrating a collection of questions and answers.
FIG. 3 is a table illustrating scenario templates.
FIG. 4 is a table illustrating scenarios for tasks.
第1記憶部21は、例えば図2に示す質問回答集110を記憶する。質問回答集110は、複数の質問回答ペア110a~110Kを含む。質問回答ペア110a~110Kは、質問回答ペアを識別するID111a~111K、質問112a~112K、及び質問対する回答113a~113Kをそれぞれ含む。
The
質問回答ペア110a~110Kには、質問キーワード114a~114Kがそれぞれ紐付けられる。質問キーワード114a~114Kは、例えば、質問回答集110に含まれる。又は、質問キーワード114a~114Kは、質問回答集110とは別に、第1記憶部21又はその他の記憶部に記憶されても良い。
質問キーワード114a~114Kは、質問112a~112Kからそれぞれ抽出される。1つの質問から複数の質問キーワードが抽出されても良い。例えば、対話システム1の外部の処理装置により、質問112a~112Kから、質問キーワード114a~114Kが抽出される。又は、質問キーワード114a~114Kは、質問112a~112Kに対してシステム管理者により付与されても良い。
質問回答集は、複数の質問回答ペア及び複数の質問キーワード以外の情報を含んでいても良い。例えば、質問回答集は、対応する回答が設定されていない質問を含んでも良い。質問回答集は、1つの質問と1つの回答がペアとなっていない、1つ以上の質問と1つ以上の回答との組み合わせを含んでも良い。例えば、質問回答集は、2つの質問と、2つの質問に対する共通の回答として設定された1つの回答と、の組み合わせを含む。これらの場合、処理部10は、例えば、複数の質問回答ペアのみに基づいてユーザとの対話を実行する。処理部10は、複数の質問回答ペア以外の情報は、ユーザとの対話に用いない。
質問回答集において、1つの回答が、複数の条件と、各条件に対する詳細な回答と、を含んでいても良い。この場合、複数の条件と複数の詳細な回答とをまとめて1つの回答と見なすことができる。
The question-and-answer collection may include information other than multiple question-and-answer pairs and multiple question keywords. For example, the question and answer collection may include questions for which corresponding answers are not set. A question-and-answer collection may include a combination of one or more questions and one or more answers, where one question and one answer are not paired. For example, the question-and-answer collection includes a combination of two questions and one answer set as a common answer to the two questions. In these cases, the
In the question and answer collection, one answer may include multiple conditions and detailed answers to each condition. In this case, multiple conditions and multiple detailed answers can be collectively regarded as one answer.
第2記憶部22は、例えば図3に示す汎用モデル120を記憶する。汎用モデル120は、複数のシナリオテンプレート121a~121cを含む。シナリオテンプレート121a~121cは、タスク用シナリオのベースとして用いられる。タスク用シナリオは、具体的な情報を含み、処理部10から出力される応答として用いられる。シナリオテンプレート121a~121cには、回答候補数122a~122cがそれぞれ設定される。回答候補数に応じて、使用されるシナリオテンプレートが決定される。
The
シナリオテンプレート121a~121cは、ユーザの問い合わせに依存しないように、汎用的に記述される。具体的には、シナリオテンプレート121a~121cのそれぞれは、<ブランク>を含む。<ブランク>には、後述するように、タスク用シナリオ生成の際に、質問、回答、又は質問キーワードが当てはめられる。
汎用モデル120は、シナリオテンプレート121dのように、ブランクを含まない定型シナリオを含んでいても良い。定型シナリオは、挨拶、お礼、謝罪などに対応する。
The general-
処理部10は、例えば、受付部11、設定部12、選定部13、及び生成部14を含む。
受付部11は、ユーザから入力されたクエリ文章を受け付ける。クエリ文章は、例えば、ユーザのキーボードやタッチパネルなどの操作により入力される。又は、クエリ文章は、ユーザの発話に基づいて生成されても良い。例えば、マイクが、ユーザの発話を録音し、音声を認識する。クエリ文章は、音声認識により生成される。
The
The accepting
設定部12は、クエリ文章に基づいてクエリキーワードを設定する。例えば、設定部12は、1つ以上の単語を含むクエリ文章全体を、1つのクエリキーワードとする。選定部13は、質問回答集から、クエリキーワードを含む1つ以上の質問回答ペアを選定する。生成部14は、選定された質問回答ペアの数に応じて、タスク用シナリオを生成する。生成部14は、生成したタスク用シナリオを、モニタ、スピーカ、プリンタなどの外部の装置へ出力する。これらの装置は、タスク用シナリオを、ユーザが認識できるように出力する。
The setting
具体的な一例として、図3に示す汎用モデル120におけるNsを3とする。Nsは、複数の質問回答ペアが選定されたときに、選定された質問回答ペアの数に応じて、対話システム1からの応答を切り替えるために設定される。例えば、ユーザは、「残高確認」と対話システム1へ入力する。受付部11は、そのクエリ文章を受け付ける。設定部12は、そのクエリ文章をクエリキーワードとする。すなわち、「残高確認」が、クエリキーワードとなる。選定部13は、第1記憶部21の質問回答集を参照し、そのクエリキーワードを含む質問回答ペアを選定する。選定された質問回答ペアに含まれる回答は、ユーザからの問い合わせに対する回答の候補である。
As a specific example, let Ns be 3 in the general-
生成部14は、選定された質問回答ペアの数をカウントする。選定された質問回答ペアの数は、回答候補の数に対応する。図2に示す質問回答集の質問112a、112b、112c、及び112Kのうち、質問112aのみが「残高確認」の質問キーワードを含む。従って、選定された質問回答ペアの数は、1である。生成部14は、汎用モデル120において、回答候補数が1に対応するシナリオテンプレート121aを参照する。生成部14は、<ブランク1>に、質問112aの「預金口座の残高を確認したい」を代入する。生成部14は、<ブランク2>に、回答113aの「残高確認をするには・・・」を代入する。これにより、図4に示すように、「ご質問は『預金口座の残高確認をしたい』ですね。『残高確認をするには・・・』」のタスク用シナリオ131が生成される。
The
別の一例として、ユーザは、「申し込み」と対話システム1へ入力する。設定部12は、「申し込み」をクエリキーワードとする。図2に示す質問回答集において、質問112bと質問112Kの2つの質問が、「申し込み」を含む。選定された質問回答ペアの数は、2である。生成部14は、汎用モデル120において、回答候補数が2に対応するシナリオテンプレート121bを参照する。生成部14は、<ブランク3a>に、質問112bの「預金口座を申し込みたい」を代入する。生成部14は、<ブランク3b>に、質問112Kの「ローンを申し込みたい」を代入する。これにより、「ご質問は『預金口座を申し込みたい』ですか?『ローンを申し込みたい』ですか?」のタスク用シナリオ132が生成される。
As another example, the user inputs “application” to the
さらに別の一例として、ユーザは、「預金口座」と対話システム1へ入力する。図2に示す質問回答集において、質問112a、112b、及び112cの3つの質問が、「預金口座」を含む。選定された質問回答ペアの数は、3である。生成部14は、汎用モデル120において、回答候補数が3に対応するシナリオテンプレート121cを参照する。また、生成部14は、質問112a~112cにそれぞれ対応する質問キーワード114a~114cから、クエリキーワードと異なる質問キーワードを抽出する。生成部14は、<ブランク4a>に、質問112aの質問キーワード「残高確認」を代入する。生成部14は、<ブランク4b>に、質問112bの質問キーワード「申し込み」を代入する。生成部14は、<ブランク4c>に、質問112cの質問キーワード「解約」を代入する。これにより、「追加のキーワードはありますか?『残高確認』について、『申し込み』について、『解約』について等。」のタスク用シナリオ133が生成される。
As yet another example, the user inputs "deposit account" to the
選定された質問回答ペアの数が0のとき、生成部14は、汎用モデル120において、回答候補数が0に対応するシナリオテンプレート121dを参照する。シナリオテンプレート121dは、ブランクを含まない定型シナリオである。生成部14は、シナリオテンプレート121dをそのままタスク用シナリオとする。
When the number of selected question-answer pairs is 0, the
このように、処理部10は、ユーザにより入力されたクエリ文章、質問回答集110、及び汎用モデル120に基づいて、タスク用シナリオを自動的に生成する。生成部14は、生成したタスク用シナリオを、ユーザの問い合わせに対する応答として出力する。
In this way, the
図5は、実施形態に係る対話システムの処理を例示するフローチャートである。
受付部11は、ユーザにより入力されたクエリ文章を受け付ける(ステップS101)。設定部12は、クエリ文章の少なくとも一部をクエリキーワード(第1クエリキーワード)に設定する(ステップS102)。選定部13は、第1クエリキーワードを含む質問回答ペアを選定する(ステップS103)。生成部14は、選定された質問回答ペアの数Nをカウントする(ステップS104)。
FIG. 5 is a flowchart illustrating processing of the dialogue system according to the embodiment.
The
生成部14は、Nが0か判断する(ステップS105)。Nが0のとき、生成部14は、定型応答を出力する(ステップS106)。定型応答は、定型シナリオに対応する。Nが0では無いとき、生成部14は、Nが1か判断する(ステップS107)。Nが1のとき、生成部14は、第1応答を生成する(ステップS108)。第1応答は、選定された質問回答ペアに含まれる回答を示す。第1応答は、例えば、図4に示すタスク用シナリオ131である。
The
Nが1では無いとき、生成部14は、NがNs以上か判断する(ステップS109)。NがNs以上のとき、生成部14は、選定された質問回答ペアの1つについて、第1クエリキーワードと異なる質問キーワード(第1質問キーワード)を選定する。生成部14は、選定された質問回答ペアの別の1つについて、第1クエリキーワードと異なる別の質問キーワード(第2質問キーワード)を選定する。第1質問キーワード及び第2質問キーワードは、互いに異なる。生成部14は、第1質問キーワード及び第2質問キーワードを含む第2応答を生成する(ステップS110)。第2応答は、例えば、図4に示すタスク用シナリオ133である。
When N is not 1, the
NがNs未満のとき、生成部14は、N個の質問回答ペアにそれぞれ含まれるN個の質問を含んだ第3応答を生成する(ステップS111)。例えば、生成部14は、N個の質問回答ペアの1つに含まれる第1質問と、N個の質問回答ペアの別の1つに含まれる第2質問と、を含む第3応答を生成する。第3応答は、例えば、図4に示すタスク用シナリオ132である。第1応答~第3応答のいずれかを生成した後、生成部14は、生成された応答を出力する(ステップS112)。
When N is less than Ns, the
応答を出力した後、処理部10は、対話が終了したか判断する(ステップS113)。例えば、処理部10は、応答を出力した後に経過した時間を測定する。ユーザにより別のクエリ文章が入力されないまま経過時間が閾値を超えると、処理部10は、対話が終了したと判断する。ユーザから対話システム1へ、対話が終了したことを示す文章が入力されても良い。処理部10は、その文章を受け付けると、対話が終了したと判断する。これらの終了の条件が満たされる前に、受付部11が次のクエリ文章を受け付けると、処理部10は、上述した処理を再度実行する。
After outputting the response, the
生成部14がモニタへ応答を出力する場合、生成部14は、モニタに表示されたグラフィカルユーザインターフェース(GUI)上で、質問、キーワードなどを選択できるように出力しても良い。例えば、生成部14が第2応答を生成したとき、GUI上で、第1質問キーワード及び第2質問キーワードが選択できるように出力される。ユーザがGUI上で第1質問キーワード又は第2質問キーワードをクリックすると、クリックしたキーワードが、次のクエリ文章として処理部10へ入力される。例えば、生成部14が第3応答を生成したとき、GUI上で、第1質問及び第2質問が選択できるように出力される。ユーザがGUI上で第1質問又は第2質問をクリックすると、クリックした質問が、次のクエリ文章として処理部10へ入力される。
When the
図2~図5に示す例によれば、複数の質問回答ペアが選定されたときには、選定された質問回答ペアの数に応じて、第2応答又は第3応答が生成される。第2応答は、クエリキーワードと異なる複数の質問キーワードを含む。このため、ユーザは、次のクエリ文章に、どのようなキーワードを含めれば良いか知ることができる。第3応答は、選定された質問回答ペアに含まれる複数の質問を含む。このため、ユーザは、選定された質問回答ペアに含まれる質問を直接的に確認できる。これらの応答により、ユーザが、求める回答によりたどり着き易くなる。 According to the examples shown in FIGS. 2 to 5, when multiple question-answer pairs are selected, the second response or the third response is generated according to the number of question-answer pairs selected. The second response includes multiple question keywords different from the query keyword. Therefore, the user can know what keywords should be included in the next query text. The third response includes multiple questions included in the selected question-answer pair. Therefore, the user can directly confirm the questions included in the selected question-answer pair. These responses make it easier for users to get to the answers they seek.
(変形例)
図6は、第1実施形態の変形例に係る対話システムを例示する模式図である。
変形例に係る対話システム1aでは、ユーザによる問い合わせの前に、事前にタスク用モデルが生成される。タスク用モデルは、質問回答集に含まれる質問キーワード、各質問キーワードを含む質問回答ペアの数、及び複数のタスク用シナリオを含む。
(Modification)
FIG. 6 is a schematic diagram illustrating an interactive system according to a modification of the first embodiment;
In the
タスク用モデルは、処理部30によって生成される。例えば、対話システム1aが、処理部30を含む。処理部30は、生成したタスク用モデルを、第3記憶部23に記憶する。処理部30は、電気回路を含む中央演算処理装置を含む。1つの装置が、処理部10及び処理部30の両方として機能しても良い。第3記憶部23は、記憶装置を含む。記憶装置は、例えば、HDD、NAS、eMMC、SSD、及びSSHDの少なくともいずれかを含む。1つの記憶装置が、第1記憶部21~第3記憶部23として機能しても良い。
A task model is generated by the
対話システム1aにおいて、処理部30は、取出部31、抽出部32、及び生成部33を含む。処理部10は、受付部11、設定部12、及び選定部13を含む。
In the
図7は、第1実施形態の変形例に係る対話システムの処理を例示するフローチャートである。
図7のフローチャートは、タスク用モデルを作成する際の処理を例示する。
FIG. 7 is a flowchart illustrating processing of the dialogue system according to the modification of the first embodiment;
The flow chart of FIG. 7 illustrates the process of creating a model for a task.
取出部31は、第1記憶部21の質問回答集を参照し、複数の質問回答ペアから1つの質問回答ペアを取り出す(ステップS121)。抽出部32は、その1つの質問応答ペアに対して登録された質問キーワードを抽出する(ステップS122)。生成部33は、抽出した質問キーワードがタスク用モデルに登録されているか判断する(ステップS123)。
The
登録されていないときは、生成部33は、第2記憶部22の汎用モデルを参照する。生成部33は、回答候補数が1に対応するシナリオテンプレートを検索する。生成部33は、そのシナリオテンプレートの複数のブランクに、選択した質問回答ペアの質問及び回答をそれぞれ代入し、タスク用シナリオを生成する(ステップS124)。生成部33は、抽出した質問キーワードと、その質問キーワードを含む質問回答ペアの数と、生成したタスク用シナリオと、を対応付け、第3記憶部23のタスク用モデルに追加する(ステップS125)。
When not registered, the
ステップS123において、抽出した質問キーワードがタスク用モデルに登録されているときは、生成部33は、タスク用モデルを更新する(ステップS126)。具体的には、生成部33は、タスク用モデルにおいて、抽出した質問キーワードを含む質問回答ペアの数に、1を加える。生成部33は、1を加えた後の質問回答ペアの数と、閾値Nsを比較する。
In step S123, when the extracted question keyword is registered in the task model, the
質問回答ペアの数がNs未満のときは、生成部33は、回答候補数が2以上Ns未満に対応するシナリオテンプレートを検索する。生成部33は、そのシナリオテンプレートの複数のブランクに、抽出した質問キーワードを含む複数の質問回答ペアの複数の質問をそれぞれ代入し、タスク用シナリオを生成する。
When the number of question-answer pairs is less than Ns, the
質問回答ペアの数がNs以上のときは、生成部33は、抽出した質問キーワードを含む質問回答ペアに含まれる各質問から、別の質問キーワードを抽出する。生成部33は、回答候補数がNs以上に対応するシナリオテンプレートを検索する。生成部33は、そのシナリオテンプレートの複数のブランクに、抽出された複数の別の質問キーワードをそれぞれ代入し、タスク用シナリオを生成する。生成部33は、生成したタスク用シナリオと、更新した質問回答ペアの数と、をタスク用モデルに登録する。
When the number of question-answer pairs is Ns or more, the
ステップS125又はS126の後、処理部30は、質問回答集から全ての質問回答ペアが取り出されたか判断する(ステップS127)。取り出されていない質問回答ペアがあるときは、処理部30は、ステップS121を再度実行する。ステップS121において、取出部31は、複数の質問回答ペアの別の1つを取り出す。以降は、複数の質問回答ペアの別の1つから、別の質問キーワードが抽出される。ステップS121~S126の処理は、質問回答集に含まれる全ての質問回答ペアが取り出されるまで繰り返される。
After step S125 or S126, the
図8は、第1実施形態の変形例に係る対話システムの処理を例示するフローチャートである。
図8のフローチャートは、クエリ文章に対して応答する際の処理を例示する。
FIG. 8 is a flowchart illustrating processing of the dialogue system according to the modification of the first embodiment;
The flowchart of FIG. 8 illustrates the process of responding to query sentences.
受付部11は、ユーザにより入力されたクエリ文章を受け付ける(ステップS141)。設定部12は、クエリ文章をクエリキーワードとして設定する(ステップS142)。選定部13は、クエリキーワードに基づき、応答を選定する(ステップS143)。具体的には、選定部13は、第3記憶部23にアクセスする。選定部13は、タスク用モデルがクエリキーワードを含むか判断する。
The
タスク用モデルにクエリキーワードが含まれるときは、選定部13は、タスク用モデルから、クエリキーワードに対応付けられたタスク用シナリオを選定する。タスク用モデルにクエリキーワードが含まれないときは、選定部13は、第2記憶部22の汎用モデルにおいて、回答候補数が0に対応するシナリオテンプレート(定型シナリオ)を、タスク用シナリオとして選定する。回答候補数が0に対応するシナリオテンプレートは、タスク用シナリオとして事前にタスク用モデルに登録されていても良い。選定部13は、選定した応答を出力する(ステップS144)。処理部10は、対話が終了したか判断する(ステップS145)。
When a query keyword is included in the task model, the
変形例に係る対話システム1aによれば、処理部10がクエリ文章を受け付ける前に、複数のタスク用シナリオを含むタスク用モデルが生成される。このため、処理部10は、クエリ文章を受け付けた後、そのクエリ文章に基づいてタスク用シナリオを生成する必要が無い。例えば、クエリ文章を受け付けた後の処理部10の処理負荷を低減できる。
According to the
(第2実施形態)
図9は、第2実施形態に係る対話システムを例示する模式図である。
第2実施形態に係る対話システム2において、処理部10は、応答を生成する際に、第1記憶部21及び第2記憶部22に加えて、第4記憶部24を参照する。対話システム2が、第4記憶部24を含んでも良い。第4記憶部24は、文章からキーワードを抽出するためのモデル又は規則を記憶する。
(Second embodiment)
FIG. 9 is a schematic diagram illustrating an interactive system according to the second embodiment.
In the
対話システム2は、処理部40をさらに含む。処理部40は、例えば、取出部41及び抽出部42を含む。取出部41は、第1記憶部21にアクセスし、質問回答集から1つの質問回答ペアを取り出す。抽出部42は、第4記憶部24に記憶されたモデル又は規則に従って、質問回答ペアから質問キーワードを抽出する。抽出部42は、抽出した質問キーワードを、例えば第1記憶部21に記憶する。処理部40は、電気回路を含む中央演算処理装置を含む。1つの装置が、処理部10及び処理部40の両方として機能しても良い。第4記憶部24は、記憶装置を含む。記憶装置は、例えば、HDD、NAS、eMMC、SSD、及びSSHDの少なくともいずれかを含む。1つの記憶装置が、第1記憶部21、第2記憶部22、及び第4記憶部24として機能しても良い。
The
受付部11が1つ以上の単語を含むクエリ文章を受け付けると、設定部12は、第4記憶部24に記憶されたモデル又は規則に従って、1つ以上の単語の一部を抽出する。設定部12は、抽出した単語を、クエリキーワードとして設定する。すなわち、設定部12は、クエリ文章からクエリキーワードを抽出する。複数のクエリキーワードが、クエリ文章から抽出されても良い。
When the receiving
例えば、キーワードの抽出は、文章を構成する各単語の品詞に基づく。この場合、第4記憶部24は、形態素解析モデル又は形態素解析規則を記憶する。設定部12は、文章を形態素解析することで、文章を複数の単語に分割し、各単語の品詞を推定する。設定部12は、特定の品詞の単語を、キーワードとする。特定の品詞としては、例えば、名詞及び動詞が用いられる。名詞の1つである複合名詞については、設定部12は、複合名詞中の各名詞をキーワードとして登録しても良いし、複合名詞全体で1つのキーワードとして登録しても良いし、これらを組み合わせて登録しても良い。設定部12は、さらに、いずれの品詞にも分類できない単語(未知語)をキーワードとして抽出しても良い。
For example, keyword extraction is based on the part of speech of each word that makes up a sentence. In this case, the
図10は、第2実施形態に係る対話システムの処理を例示するフローチャートである。
図10は、処理部40が質問回答集から質問キーワードを抽出する際の処理を示す。図10に示す処理は、例えば、ユーザによりクエリ文章が入力された際に実行される。
FIG. 10 is a flowchart illustrating processing of the dialogue system according to the second embodiment.
FIG. 10 shows processing when the
取出部41は、質問回答集から、複数の質問回答ペアの1つを取り出す(ステップS201)。抽出部42は、取り出した質問回答ペアの質問から、質問キーワードを抽出する(ステップS202)。抽出部42は、抽出した質問キーワードを第1記憶部21に登録する(ステップ203)。取出部41は、質問回答集に含まれる全ての質問回答ペアを取り出したか判断する(ステップS204)。取り出されていない質問回答ペアがあるときは、取出部41は、ステップS201を再度実行する。ステップS201において、取出部41は、質問回答集から、複数の質問回答ペアの別の1つを取り出す。以降は、複数の質問回答ペアの別の1つから、別の質問キーワードが抽出される。ステップS201~S203の処理は、質問回答集に含まれる全ての質問回答ペアから質問キーワードが抽出されるまで繰り返される。
The
処理部10は、質問回答集から抽出された質問キーワードを用いて、図5に示すフローチャートと同様の処理を実行する。例えば、ステップS102において、設定部12は、ユーザにより入力されたクエリ文章の一部を抽出し、1つ以上のクエリキーワードとして設定する。ステップS103において、選定部13は、抽出された1つ以上のクエリキーワードの少なくとも1つを含む質問回答ペアを選定する。
The
第2実施形態によれば、クエリ文章の一部が抽出されて、クエリキーワードとして設定される。この方法によれば、クエリ文章全体が1つのクエリキーワードとして設定される場合に比べて、ユーザの問い合わせに対応する質問を含む質問回答ペアがより選定され易くなる。これにより、ユーザが、求める回答によりたどり着きやすくなる。対話システム2の利便性を向上させることができる。
According to the second embodiment, a part of the query text is extracted and set as the query keyword. According to this method, a question-answer pair including a question corresponding to a user's inquiry is more likely to be selected than when the entire query text is set as one query keyword. This makes it easier for the user to reach the desired answer. The convenience of the
また、第2実施形態によれば、ユーザによるクエリ文章入力の際に、質問回答集から質問キーワードが抽出される。このため、質問回答集が頻繁に更新される場合でも、最新の質問回答集に含まれる質問キーワードに基づいて、質問回答ペアが選定される。例えば、最新の質問回答集に含まれる質問キーワードを用いて応答を出力できる。これにより、ユーザが、求める回答によりたどり着きやすくなる。 Further, according to the second embodiment, when the user inputs a query sentence, a question keyword is extracted from the question-and-answer collection. Therefore, even when the question-and-answer collection is frequently updated, question-and-answer pairs are selected based on the question keywords included in the latest question-and-answer collection. For example, responses can be output using question keywords included in the latest collection of questions and answers. This makes it easier for the user to reach the desired answer.
ステップS103において、選定部13は、クエリキーワードと同一の質問キーワードを含む質問回答ペアに加えて、クエリキーワードと類似する質問キーワードを含む質問回答ペアを選定しても良い。選定部13は、1つ以上のクエリキーワードのそれぞれと、質問回答集から抽出された複数の質問キーワードのそれぞれと、の間の類似度を計算する。1つのクエリキーワードと1つの質問キーワードとの間の類似度が予め設定された閾値以上のとき、その1つのクエリキーワードは、その1つの質問キーワードの言い換え表現と判断される。選定部13は、クエリキーワードに類似する質問キーワードを含む質問回答ペアを、実質的にクエリキーワードを含むと判断し、その質問回答ペアを選定する。
In step S103, the
例えば、ある質問キーワードの読みは、あるクエリキーワードの読みと同じである。一例として、その質問キーワードの少なくとも一部は、ひらがな及びカタカナの一方で記載され、そのクエリキーワードの少なくとも一部は、ひらがな及びカタカナの他方で記載されている。この場合、その質問キーワードは、そのクエリキーワードの言い換え表現である。別の一例として、質問キーワード及びクエリキーワードは、同じ漢字を含むが、異なる送り仮名を含む。この場合も、その質問キーワードは、そのクエリキーワードの言い換え表現である。
質問キーワード及びクエリキーワードは、同じ漢字を含み、品詞の違いにより送り仮名が違うときも、その質問キーワードは、そのクエリキーワードの言い換え表現と判断される。例えば、質問キーワードは「振り込み」であり、クエリキーワードが「振り込む」であるとき、質問キーワードは、そのクエリキーワードの言い換え表現と判断される。
For example, the reading of a certain question keyword is the same as the reading of a certain query keyword. As an example, at least some of the query keywords are written in one of hiragana and katakana, and at least some of the query keywords are written in the other of hiragana and katakana. In this case, the question keyword is a paraphrase of the query keyword. As another example, the question keyword and the query keyword contain the same kanji characters but different okurigana characters. Again, the question keyword is a paraphrase of the query keyword.
Even when the question keyword and the query keyword contain the same kanji characters and the okurigana characters are different due to the difference in the part of speech, the question keyword is determined to be a paraphrased expression of the query keyword. For example, when the question keyword is "transfer" and the query keyword is "transfer", the question keyword is determined to be a paraphrased expression of the query keyword.
類似度の決定には、例えば編集距離が用いられる。選定部13は、キーワード同士の間の編集距離を、類似度とする。
事前に作成した言い換え表現辞書を用いて、類似度が決定されても良い。言い換え表現辞書は、複数のキーワードの組を含む。各組は、複数のキーワードを含む。各組に含まれる複数のキーワードは、互いに類似する言い換え表現である。例えば、選定部13は、1つの組に含まれるキーワード同士の間の類似度を1とし、その他のキーワード同士の間の類似度を0とする。
事前に学習した分散表現モデルを用いて、類似度が決定されても良い。分散表現モデルは、単語の分散表現が記述されている。選定部13は、各キーワードのベクトル同士の間のコサイン類似度又は距離に基づき、類似度を決定する。
An edit distance, for example, is used to determine the degree of similarity. The
The degree of similarity may be determined using a pre-created paraphrasing dictionary. The paraphrasing dictionary includes a set of multiple keywords. Each set contains multiple keywords. A plurality of keywords included in each set are paraphrase expressions that are similar to each other. For example, the
Similarity may be determined using a pre-trained distributed representation model. The distributed representation model describes the distributed representation of words. The
クエリキーワードに類似する質問キーワードを含む質問回答ペアを選定することで、ユーザの問い合わせに対応する質問を含む質問回答ペアがより選定され易くなる。これにより、ユーザが、求める回答によりたどり着きやすくなる。 By selecting a question-answer pair containing a question keyword similar to the query keyword, it becomes easier to select a question-answer pair containing a question corresponding to the user's inquiry. This makes it easier for the user to reach the desired answer.
図11は、第2実施形態に係る対話システムの動作を示す模式図である。
図11は、ユーザUSと対話システム2による対話を示す。例えば、対話システム2は、ユーザUSを検知すると、文章TX1「ご質問をどうぞ」を出力する。ユーザUSは、文章TX2「預金口座について」を対話システム2へ入力する。対話システム2は、文章TX2(クエリ文章)を複数の単語に分解し、各単語の品詞を推定する。対話システム2は、品詞に基づき、文章TX2から、「預金口座」をクエリキーワードとして抽出する。対話システム2は、質問キーワードとして「預金口座」が登録された質問回答ペアを、質問回答集から選定する。
FIG. 11 is a schematic diagram showing the operation of the dialogue system according to the second embodiment.
FIG. 11 shows an interaction between the user US and the
一例として、対話システム2は、「預金口座」及び「申し込み」の質問キーワードを含む質問回答ペアと、「預金口座」及び「解約」の質問キーワードを含む質問回答ペアと、「預金口座」及び「残高確認」の質問キーワードを含む質問回答ペアと、の3つの質問回答ペアを選定する。対話システム2は、この選定結果に基づき、文章TX3「追加のキーワードはありますか?申し込みについて、ご解約について、残高確認について等」を出力する。文章TX3は、第2応答に対応する。
As an example, the
文章TX3において、質問キーワードに対応する単語は、他の単語と区別可能に出力されても良い。例えば、対話システム2から出力された応答がモニタに表示される場合、質問キーワードに対応する単語は、他の単語に比べて、太く、下線が付され、又は色づけされて表示される。質問キーワードに対応する単語が、クリック可能に表示されても良い。ユーザUSが質問キーワードに対応する単語をクリックすると、その質問キーワードを含む次の文章が自動で対話システム2へ入力されても良い。対話システム2から出力された応答が音声として出力される場合、質問キーワードに対応する単語は、他の単語に比べて、ボリュームが大きく、又はゆっくり読み上げられる。
In sentence TX3, the word corresponding to the question keyword may be output so as to be distinguishable from other words. For example, when a response output from the
ユーザUSは、文章TX3に基づき、文章TX4「申込」を対話システム2へ入力する。対話システム2は、文章TX4に基づき、「申込」をクエリキーワードに設定する。対話システム2は、文章TX4に基づくクエリキーワードを用いて、先に選定された質問回答ペアの一部をさらに選定する。例えば、文章TX4に基づくクエリキーワード「申込」は、質問キーワード「申し込み」と類似する。対話システム2は、上記の3つの質問回答ペアから、「預金口座」及び「申し込み」の質問キーワードを含む質問回答ペアを選定する。質問回答ペアの数が1つに絞り込まれたため、対話システム2は、その質問回答ペアに含まれる回答を示す文章TX5「ご質問は『預金口座を申し込みたい』ですね。『口座のお申込みは…』」を出力する。文章TX5は、第1応答に対応する。
The user US inputs the text TX4 “application” into the
抽出部42は、質問回答集から質問キーワードを抽出する際に、各質問キーワードの重要性を表すスコアを決定しても良い。選定部13は、スコアに基づいて質問回答ペアを選定する。
The
質問キーワードのスコアは、その質問キーワードを含む質問回答ペアの数が少ないほど、高く設定される。スコアの高いキーワードは、質問回答集にあまり含まれておらず、質問回答ペアの選定に有用である。設定部12は、各質問キーワードのスコアを、質問回答集における出現頻度、質問回答集における逆文書頻度、又はbm25などの手法により決定する。例えば、設定部12は、質問回答集に含まれる質問回答ペアの総数に対する、その質問キーワードを含む質問回答ペアの数の割合を算出する。設定部12は、その割合の逆数(逆文書頻度)を、スコアとする。又は、設定部12は、その割合に基づいて設定された数値を、スコアとしても良い。例えば、設定部12は、割合の逆数を対数関数により変換し、得られた数値をスコアとしても良い。
The score of a question keyword is set higher as the number of question-answer pairs containing that question keyword is smaller. Keywords with high scores are not often included in the question-and-answer collection, and are useful for selecting question-and-answer pairs. The setting
具体的な一例として、質問回答集が、図2に示すように、4つの質問回答ペア110a、110b、110c、及び110Kから構成されているとする。この質問回答集において、「預金口座」を含む質問回答ペアは、3つである。「預金口座」のスコアは、3/4の逆数である4/3に設定される。同様に、「残高確認」のスコアは、1/4の逆数である4/1に設定される。「申し込み」のスコアは、2/4の逆数である4/2に設定される。
As a specific example, assume that the question-and-answer collection consists of four question-and-
選定部13は、クエリキーワードを含む質問回答ペアを選定すると、選定された各質問回答ペアについて、クエリキーワードに対応する質問キーワードのスコアを参照する。クエリキーワードに対応する質問キーワードを含む質問回答ペアには、その質問キーワードに設定されたスコアを付与する。選定部13は、質問回答ペアごとに、スコアの合計を算出する。選定部13は、クエリキーワードを含む質問回答ペアから、スコアの合計が閾値(第2閾値)を超えた質問回答ペアを選定する。生成部14は、スコアの合計が閾値を超えた質問回答ペアの数に応じて、応答を生成する。
After selecting the question-and-answer pairs including the query keyword, the
例えば、設定部12は、ユーザにより入力されたクエリ文章の一部を第1クエリキーワードに設定し、クエリ文章の別の一部を第2クエリキーワードに設定する。選定部13は、第1クエリキーワードに対応する質問キーワードを含む1つ以上の質問回答ペアに、その質問キーワードに設定されたスコアを付与する。選定部13は、第2クエリキーワードに対応する別の質問キーワードを含む1つ以上の質問回答ペアに、その別の質問キーワードに設定されたスコアを付与する。選定部13は、付与されたスコアが閾値を超える1つ以上の質問回答ペアを選定する。
For example, the setting
スコアに基づいて質問回答ペアを選定することで、質問回答ペアの数を絞り込むことができる。また、スコアに基づく選定により、ユーザの求める回答が選定から外れることを抑制できる。このため、ユーザが、求める回答によりたどり着き易くなる。 By selecting question-and-answer pairs based on scores, the number of question-and-answer pairs can be narrowed down. In addition, selection based on scores can prevent the answer desired by the user from being deviated from the selection. Therefore, it becomes easier for the user to reach the desired answer.
処理部10は、クエリ文章が否定文か判断しても良い。例えば、設定部12は、クエリキーワードを設定する際、クエリ文章が否定文か判断する。設定部12によりクエリ文章が否定文と判断されると、選定部13は、そのクエリキーワードを含まない質問回答ペアを選定する。
The
例えば、対話システム3が文章TX3を出力した後、ユーザは、「解約と残高確認ではない」とクエリ文章を入力する。設定部12は、このクエリ文章から「解約」及び「残高確認」をクエリキーワードとして抽出する。さらに、設定部12は、このクエリ文章を否定文と判断する。選定部13は、この判断結果に基づき、先に選定された3つの質問回答ペアから、「解約」及び「残高確認」の質問キーワードを含まない質問回答ペアを選定する。この結果、対話システム2は、文章TX5を出力する。
For example, after the
クエリ文章が否定文か判断するために、設定部12は、例えば、事前に作成された規則を参照する。一例として、規則は、「クエリ文章に『ではない』、『じゃない』、又は『以外』が含まれているとき、クエリ文章は否定文である」などのように記述される。設定部12は、クエリ文章が規則に記述された条件を満たすか判断することで、クエリ文章が否定文か判断する。
設定部12は、事前に作成されたモデルを参照しても良い。例えば、モデルは、人工ニューラルネットワークモデル又は再帰ニューラルネットワークモデルである。モデルは、事前に学習データを用いて学習される。学習データは、複数のペアデータを含む。各ペアデータは、文章と、その文章が否定形であることを示す情報と、を含む。モデルは、否定文が入力されたときに、否定文であることを示す情報を出力するように、学習される。
In order to determine whether the query sentence is a negative sentence, the setting
The setting
(変形例)
図12は、第2実施形態の変形例に係る対話システムを例示する模式図である。
変形例に係る対話システム2aでは、ユーザによる問い合わせの前に、事前にタスク用モデルが生成される。タスク用モデルは、処理部40によって生成される。例えば、対話システム2aが、処理部40を含む。処理部40は、生成したタスク用モデルを、第3記憶部23に記憶する。
(Modification)
FIG. 12 is a schematic diagram illustrating an interactive system according to a modification of the second embodiment.
In the
対話システム2aにおいて、処理部40は、取出部41、抽出部42、及び生成部43を含む。処理部10は、受付部11、設定部12、及び選定部13を含む。
In the
取出部41は、第1記憶部21にアクセスし、質問回答集から1つの質問回答ペアを取り出す。抽出部42は、第4記憶部24に記憶されたモデル又は規則に従って、質問回答ペアから質問キーワードを抽出する。抽出部42は、抽出した質問キーワードを、例えば第1記憶部21に記憶する。生成部43は、抽出した質問キーワードに基づいてタスク用シナリオを生成し、タスク用モデルを更新する。生成部43による処理は、図7に示すフローチャートのステップS123~S126と同様である。
The
処理部10は、タスク用モデルを用いて、ユーザにより入力されたクエリ文章に対する応答を出力する。対話システム2aにおける処理部10の処理は、図8に示すフローチャートと同様である。
The
変形例に係る対話システム2aによれば、対話システム1aと同様に、処理部10がクエリ文章を受け付ける前に、複数のタスク用シナリオを含むタスク用モデルが生成される。このため、例えば、クエリ文章を受け付けた後の処理部10の処理負荷を低減できる。
According to the
対話システム2aにおいて、抽出部42は、質問回答集から質問キーワードを抽出する際に、各質問キーワードの重要度を表すスコアを決定しても良い。選定部13は、スコアに基づいて、タスク用モデルからタスク用シナリオを選定する。
In the
一例として、設定部12は、ユーザにより入力されたクエリ文章から、2つのクエリキーワード(第1クエリキーワード及び第2クエリキーワード)を抽出する。タスク用モデルは、第1クエリキーワードに対応する第1質問キーワードを含むタスク用シナリオと、第2クエリキーワードに対応する第2質問キーワードを含むタスク用シナリオと、を含む。タスク用モデルには、第1質問キーワード及び第2質問キーワードの両方を含むタスク用シナリオが含まれていない。
この例において、選定部13は、1つのタスク用シナリオを選定する際、第1質問キーワードのスコアと、第2質問キーワードのスコアと、を比較する。選定部13は、よりスコアの高い質問キーワードを含むタスク用シナリオを選定する。選定部13は、選定したタスク用シナリオを応答として出力する。
As an example, the setting
In this example, when selecting one task scenario, the
図13は、第2実施形態に係る対話システムの動作を説明する模式図である。
図13の上段は、ユーザと対話システムの対話を例示している。図13の中段は、質問回答集を例示している。図13の下段は、タスク用モデルを例示している。
FIG. 13 is a schematic diagram for explaining the operation of the dialogue system according to the second embodiment.
The upper part of FIG. 13 illustrates the interaction between the user and the interaction system. The middle part of FIG. 13 illustrates a collection of questions and answers. The lower part of FIG. 13 illustrates the task model.
質問回答集は、例えば図13に示す6つの質問回答ペアから構成される。各質問は、「インターネットバンキング」、「海外」、及び「送金」のいずれかの質問キーワードを含む。質問回答集には、「インターネットバンキング」、「海外」、及び「送金」の全てを含む質問は含まれていない。この場合、処理部40は、「インターネットバンキング」の質問キーワードに対応するタスク用シナリオと、「海外」の質問キーワードに対応するタスク用シナリオと、「送金」の質問キーワードに対応するタスク用シナリオと、を生成する。
The question-and-answer collection consists of six question-and-answer pairs shown in FIG. 13, for example. Each question includes one of the question keywords "internet banking", "overseas", and "remittance". The question and answer collection does not include questions that include all of "internet banking", "overseas", and "remittance". In this case, the
タスク用シナリオを生成するために質問回答集から質問キーワードを抽出した際、抽出部42は、各質問キーワードのスコアを決定する。図13の例では、「インターネットバンキング」を含む質問(回答候補)は、2つである。「海外」を含む質問は、3つである。「送金」を含む質問は、1つである。選定された質問回答ペアの数(6)に対する各クエリキーワードを含む質問の数を、スコアとする。「インターネットバンキング」のスコアは、6/2となる。「海外」のスコアは、6/3となる。「送金」のスコアは、6/1となる。
When question keywords are extracted from the question-and-answer collection to generate a task scenario, the
ユーザUSは、図13に示すように、「インターネットバンキングで海外へ送金できますか?」と対話システム2aへ入力する。設定部12は、このクエリ文章から、「インターネットバンキング」、「海外」、及び「送金」をクエリキーワードとして抽出する。選定部13は、「インターネットバンキング」、「海外」、及び「送金」のいずれかの質問キーワードに対応して生成されたタスク用シナリオを、タスク用モデルから抽出する。
The user US, as shown in FIG. 13, inputs into the
選定部13は、複数のタスク用シナリオの1つを応答として出力する。選定部13は、複数のタスク用シナリオから1つのタスク用シナリオを選定するため、各タスク用シナリオに対応する質問キーワードのスコアを比較する。スコアの比較の結果、「送金」のスコアが最も高いと判断される。選定部13は、「送金」に対応するタスク用シナリオを応答として出力する。
The
図14は、実施形態に係る対話装置の構成を例示する模式図である。
上述した各実施形態に係る対話システムは、例えば、図14に示した対話装置3により実現される。対話装置3は、一例として、一般のコンピュータ(情報処理装置)と同様のハードウェア構成により実現される。対話装置3は、CPU(Central Processing Unit)91と、入力部92と、出力部93と、ROM(Read Only Memory)94と、RAM(Random Access Memory)95と、記憶部96と、通信装置97と、バス98とを含む。各部は、バス98により接続される。
FIG. 14 is a schematic diagram illustrating the configuration of the interactive device according to the embodiment.
The dialogue system according to each of the embodiments described above is implemented by, for example, the
CPU91は、ROM94または記憶部96に予め記憶された各種プログラムと協働して各種処理を実行し、対話装置3を構成する各部の動作を統括的に制御する。CPU91は、処理において、RAM95の所定領域を作業領域として用いる。CPU91は、ROM94または記憶部96に予め記憶されたプログラムと協働して、入力部92、出力部93、及び通信装置97等を実現させる。
The
入力部92は、例えば、キーボード、マイクロフォン、及びタッチパネルの少なくともいずれかからを含む。入力部92は、ユーザから入力された情報を指示信号として受け付け、その指示信号をCPU91に出力する。出力部93は、例えば、モニタ、スピーカ、及びプリンタの少なくともいずれかを含む。出力部93は、CPU91から出力された信号に基づいて、各種情報を出力する。
The
ROM94は、対話装置3の制御に用いられるプログラムおよび各種設定情報等を書き換え不可能に記憶する。RAM95は、SDRAM(Synchronous Dynamic Random Access Memory)等の揮発性の記憶媒体である。RAM95は、CPU91の作業領域として機能する。具体的には、対話装置3が用いる各種変数およびパラメータ等を一時記憶するバッファ等として機能する。
The
記憶部96は、フラッシュメモリ等の半導体による記憶媒体、磁気的または光学的に記録可能な記憶媒体等の書き換え可能な記録装置である。記憶部96は、対話装置3の制御に用いられるプログラムおよび各種設定情報等を記憶する。記憶部96は、第1記憶部21~第4記憶部24として機能する。通信装置97は、外部の機器と通信して情報の送受信を行うために用いられる。
The
以上で説明した各実施形態によれば、ユーザと対話できる対話システムを、より容易に構築できる。各実施形態によれば、ユーザが、求める回答によりたどり着き易い、対話システム、対話方法、プログラム、及び記憶媒体を提供できる。 According to each of the embodiments described above, it is possible to more easily construct a dialogue system that allows dialogue with a user. According to each embodiment, it is possible to provide a dialogue system, a dialogue method, a program, and a storage medium that make it easier for the user to reach the desired answer.
上記の種々のデータの処理は、例えば、プログラム(ソフトウェア)に基づいて実行される。例えば、コンピュータが、このプログラムを記憶し、このプログラムを読み出すことにより、上記の種々の情報の処理が行われる。 The various data processing described above is executed based on, for example, a program (software). For example, a computer stores this program and reads out this program to process the various information described above.
上記の種々の情報の処理は、コンピュータに実行させることのできるプログラムとして、磁気ディスク(フレキシブルディスク及びハードディスクなど)、光ディスク(CD-ROM、CD-R、CD-RW、DVD-ROM、DVD±R、DVD±RWなど)、半導体メモリ、または、他の記録媒体に記録されても良い。 The processing of the various information described above can be performed by using a program that can be executed by a computer, such as a magnetic disk (flexible disk, hard disk, etc.), an optical disk (CD-ROM, CD-R, CD-RW, DVD-ROM, DVD±R). , DVD±RW, etc.), a semiconductor memory, or other recording media.
例えば、記録媒体に記録された情報は、コンピュータ(または組み込みシステム)により読み出されることが可能である。記録媒体において、記録形式(記憶形式)は任意である。例えば、コンピュータは、記録媒体からプログラムを読み出し、このプログラムに基づいてプログラムに記述されている指示をCPUで実行させる。コンピュータにおいて、プログラムの取得(または読み出し)は、ネットワークを通じて行われても良い。 For example, information recorded on a recording medium can be read by a computer (or embedded system). Any recording format (storage format) can be used in the recording medium. For example, a computer reads a program from a recording medium and causes a CPU to execute instructions written in the program based on the program. Acquisition (or reading) of a program in a computer may be performed through a network.
記録媒体からコンピュータ(または組み込みシステム)にインストールされたプログラムに基づいてコンピュータ上で稼働している種々のソフトウェアにおいて、上記の情報の処理の少なくとも一部が実施されても良い。このソフトウェアは、例えば、OS(オペレーティングシステム)などを含む。このソフトウェアは、例えば、ネットワーク上で動作するミドルウェアなどを含んでも良い。 At least part of the processing of the above information may be implemented in various software running on a computer based on a program installed from a recording medium to the computer (or embedded system). This software includes, for example, an OS (operating system). This software may include, for example, middleware that operates on a network.
実施形態に係る記録媒体は、上記の種々の情報の処理をコンピュータに実行させることのできるプログラムを記憶している。実施形態に係る記録媒体には、プログラムをLANまたはインターネットなどによりダウンロードして記憶された記録媒体も含まれる。複数の記録媒体に基づいて、上記の処理が行われても良い。 A recording medium according to an embodiment stores a program that can cause a computer to process the various types of information described above. The recording medium according to the embodiment also includes a recording medium in which a program is stored after being downloaded via a LAN or the Internet. The above processing may be performed based on a plurality of recording media.
実施形態に係るコンピュータは、1つ又は複数の装置(例えばパーソナルコンピュータなど)を含む。実施形態に係るコンピュータは、ネットワークにより接続された複数の装置を含んでも良い。 A computer according to embodiments includes one or more devices (eg, personal computers, etc.). A computer according to an embodiment may include multiple devices connected by a network.
以上、具体例を参照しつつ、本発明の実施の形態について説明した。しかし、本発明の実施形態は、これらの具体例に限定されるものではない。例えば、対話システムに含まれる処理部、記憶部などの各要素の具体的な構成に関しては、当業者が公知の範囲から適宜選択することにより本発明を同様に実施し、同様の効果を得ることができる限り、本発明の範囲に包含される。 The embodiments of the present invention have been described above with reference to specific examples. However, embodiments of the invention are not limited to these specific examples. For example, with respect to the specific configuration of each element such as a processing unit and a storage unit included in the dialogue system, those skilled in the art can implement the present invention in the same manner and obtain the same effect by appropriately selecting from a range known to those skilled in the art. are included within the scope of the invention as far as possible.
また、各具体例のいずれか2つ以上の要素を技術的に可能な範囲で組み合わせたものも、本発明の要旨を包含する限り本発明の範囲に含まれる。 Any combination of two or more elements of each specific example within the technically possible range is also included in the scope of the present invention as long as it includes the gist of the present invention.
その他、本発明の実施の形態として上述した対話システム、対話方法、プログラム、及び記憶媒体を基にして、当業者が適宜設計変更して実施し得る全ての対話システム、対話方法、プログラム、及び記憶媒体も、本発明の要旨を包含する限り、本発明の範囲に属する。 In addition, based on the dialogue system, dialogue method, program, and storage medium described above as embodiments of the present invention, all dialogue systems, dialogue methods, programs, and memories that can be implemented by those skilled in the art by appropriately modifying their designs. A medium also belongs to the scope of the present invention as long as it includes the gist of the present invention.
その他、本発明の思想の範疇において、当業者であれば、各種の変更例及び修正例に想到し得るものであり、それら変更例及び修正例についても本発明の範囲に属するものと了解される。 In addition, within the scope of the idea of the present invention, those skilled in the art can conceive various modifications and modifications, and it is understood that these modifications and modifications also belong to the scope of the present invention. .
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。 While several embodiments of the invention have been described, these embodiments have been presented by way of example and are not intended to limit the scope of the invention. These novel embodiments can be implemented in various other forms, and various omissions, replacements, and modifications can be made without departing from the scope of the invention. These embodiments and modifications thereof are included in the scope and gist of the invention, and are included in the scope of the invention described in the claims and equivalents thereof.
1、1a、2、2a 対話システム、 3 対話装置、 10 処理部、 11 受付部、 12 設定部、 13 選定部、 14 生成部、 21 第1記憶部、 22 第2記憶部、 23 第3記憶部、 24 第4記憶部、 30 処理部、 31 取出部、 32 抽出部、 33 生成部、 40 処理部、 41 取出部、 42 抽出部、 43 生成部、 91 CPU、 92 入力部、 93 出力部、 94 ROM、 95 RAM、 96 記憶部、 97 通信装置、 98 バス、 110 質問回答集、 110a~110K 質問回答ペア、 111a~111K ID、 112a~112K 質問、 113a~113K 回答、 114a~114K 質問キーワード、 120 汎用モデル、 121a~121d シナリオテンプレート、 122a~122d 回答候補数、 131~133 タスク用シナリオ、 Ns 閾値、 TX1~TX6 文章、 US ユーザ
Claims (9)
質問及び前記質問に対する回答を含む質問回答ペアと、前記質問回答ペアに紐付けられた複数の質問キーワードと、の組み合わせを複数含む質問回答集から、前記第1クエリキーワードを含む1つ以上の前記質問回答ペアを選定し、
選定された前記質問回答ペアの数が1の場合には、前記選定された質問回答ペアに含まれる前記回答を示す第1応答を出力し、
前記数が第1閾値以上の場合には、前記選定された質問回答ペアの1つと紐付けられた前記複数の質問キーワードから前記第1クエリキーワードと異なる第1質問キーワードを抽出し、前記選定された質問回答ペアの別の1つと紐付けられた別の前記複数の質問キーワードから前記第1クエリキーワードと異なる第2質問キーワードを抽出し、前記第1質問キーワード及び前記第2質問キーワードを含む第2応答を出力する、
処理部を備えた対話システムであって、
前記処理部は、前記第1応答及び前記第2応答を生成する際に、それぞれがブランクを含む複数のシナリオテンプレートを使用し、
前記第1応答は、前記複数のシナリオテンプレートの1つの前記ブランクに、前記選定された質問回答ペアに含まれる前記回答を埋め込むことで生成され、
前記第2応答は、前記複数のシナリオテンプレートの別の1つの前記ブランクに、前記第1質問キーワード及び前記第2質問キーワードを埋め込むことで生成される、対話システム。 when a user inputs a first sentence containing one or more words, setting at least part of the one or more words as a first query keyword;
From a question-and-answer collection containing a plurality of combinations of a question-and-answer pair including a question and an answer to the question, and a plurality of question keywords linked to the question-and-answer pair, one or more of the above including the first query keyword Select a question-and-answer pair,
when the number of the selected question-and-answer pairs is 1, outputting a first response indicating the answers included in the selected question-and-answer pair;
When the number is equal to or greater than the first threshold, a first question keyword different from the first query keyword is extracted from the plurality of question keywords associated with one of the selected question-answer pairs, and the selected A second question keyword different from the first query keyword is extracted from the plurality of other question keywords associated with another one of the question-answer pairs, and a second question keyword including the first question keyword and the second question keyword is extracted. 2 outputs a response,
A dialog system comprising a processing unit,
The processing unit uses a plurality of scenario templates each containing a blank when generating the first response and the second response,
The first response is generated by embedding the answer included in the selected question-answer pair in the blank of one of the plurality of scenario templates;
The dialogue system, wherein the second response is generated by embedding the first question keyword and the second question keyword in another one of the plurality of scenario templates.
前記処理部は、前記数が2以上前記第1閾値未満のときには、前記選定された質問回答ペアにそれぞれ含まれる複数の前記質問を含む第3応答を出力する請求項1又は2に記載の対話システム。 The first threshold is 3 or more,
3. The dialog according to claim 1, wherein, when the number is equal to or greater than 2 and less than the first threshold, the processing unit outputs a third response including the plurality of questions respectively included in the selected question-answer pair. system.
前記第1クエリキーワードと、前記質問回答集の複数の前記質問に含まれる複数の質問キーワードと、の間のそれぞれの類似度に基づき、前記第1クエリキーワードに類似する第1類似キーワードを前記複数の質問キーワードから抽出し、
前記質問回答集から、前記第1クエリキーワード及び前記第1類似キーワードの少なくともいずれかを含む1つ以上の前記質問回答ペアを選定する、
請求項1~3のいずれか1つに記載の対話システム。 The processing unit, in selecting the question-and-answer pair,
The plurality of first similar keywords similar to the first query keyword are selected based on the degree of similarity between the first query keyword and a plurality of question keywords included in the plurality of questions of the question and answer collection. from the question keywords of
Selecting one or more question-answer pairs including at least one of the first query keyword and the first similar keyword from the question-and-answer collection;
Dialog system according to any one of claims 1-3.
前記第1文章を前記1つ以上の単語に分割し、
前記1つ以上の単語のそれぞれの品詞を推定し、
前記1つ以上の単語に含まれる動詞、名詞、及び未知語の1つを、前記第1クエリキーワードに設定する、
請求項1~4のいずれか1つに記載の対話システム。 The processing unit, in setting the first query keyword,
dividing the first sentence into the one or more words;
estimating a part of speech for each of the one or more words;
setting one of a verb, a noun, and an unknown word contained in the one or more words as the first query keyword;
Dialog system according to any one of claims 1-4.
質問及び前記質問に対する回答を含む質問回答ペアと、前記質問回答ペアに紐付けられた複数の質問キーワードと、の組み合わせを複数含む質問回答集を記憶し、前記複数の質問キーワードにはスコアがそれぞれ設定された第1記憶部を参照し、
前記第1クエリキーワードに対応する前記複数の質問キーワードの1つを含む1つ以上の前記質問回答ペアに、前記複数の質問キーワードの前記1つに設定されたスコアを付与し、前記第2クエリキーワードに対応する前記複数の質問キーワードの別の1つを含む1つ以上の前記質問回答ペアに、前記複数の質問キーワードの別の1つに設定されたスコアを付与し、
付与されたスコアが第2閾値を超える1つ以上の前記質問回答ペアを選定し、
選定された前記質問回答ペアの数が1のときは、前記選定された質問回答ペアに含まれる前記回答を示す第1応答を出力し、
前記数が第1閾値以上の場合には、前記選定された質問回答ペアの1つと紐付けられた前記複数の質問キーワードから前記第1クエリキーワードと異なる第1質問キーワードを抽出し、前記選定された質問回答ペアの別の1つと紐付けられた別の前記複数の質問キーワードから前記第1クエリキーワードと異なる第2質問キーワードを抽出し、前記第1質問キーワード及び前記第2質問キーワードを含む第2応答を出力する、
処理部を備えた対話システムであって、
前記処理部は、前記第1応答及び前記第2応答を生成する際に、それぞれがブランクを含む複数のシナリオテンプレートを使用し、
前記第1応答は、前記複数のシナリオテンプレートの1つの前記ブランクに、前記選定された質問回答ペアに含まれる前記回答を埋め込むことで生成され、
前記第2応答は、前記複数のシナリオテンプレートの別の1つの前記ブランクに、前記第1質問キーワード及び前記第2質問キーワードを埋め込むことで生成される、対話システム。 when a user inputs a first sentence including a plurality of words, setting part of the plurality of words as a first query keyword and setting another part of the plurality of words as a second query keyword;
A question-and-answer collection containing a plurality of combinations of a question-and-answer pair including a question and an answer to the question and a plurality of question-keywords linked to the question-and-answer pair is stored, and a score is assigned to each of the plurality of question-keywords. referring to the set first storage unit,
giving a score set to the one of the plurality of question keywords to one or more question-answer pairs including one of the plurality of question keywords corresponding to the first query keyword, and the second query assigning a score set to another one of the plurality of question keywords to one or more question-answer pairs including another one of the plurality of question keywords corresponding to the keyword;
Select one or more question-answer pairs whose assigned scores exceed the second threshold;
When the number of the selected question-and-answer pairs is 1, outputting a first response indicating the answers included in the selected question-and-answer pairs,
When the number is equal to or greater than the first threshold, a first question keyword different from the first query keyword is extracted from the plurality of question keywords associated with one of the selected question-answer pairs, and the selected A second question keyword different from the first query keyword is extracted from the plurality of other question keywords associated with another one of the question-answer pairs, and a second question keyword including the first question keyword and the second question keyword is extracted. 2 outputs a response,
A dialog system comprising a processing unit,
The processing unit uses a plurality of scenario templates each containing a blank when generating the first response and the second response,
The first response is generated by embedding the answer included in the selected question-answer pair in the blank of one of the plurality of scenario templates;
The dialogue system, wherein the second response is generated by embedding the first question keyword and the second question keyword in another one of the plurality of scenario templates.
ユーザにより1つ以上の単語を含む第1文章が入力されると、前記1つ以上の単語の少なくとも一部を第1クエリキーワードに設定させ、
質問及び前記質問に対する回答を含む質問回答ペアと、前記質問回答ペアに紐付けられた複数の質問キーワードと、の組み合わせを複数含む質問回答集から、前記第1クエリキーワードを含む1つ以上の前記質問回答ペアを選定させ、
選定された前記質問回答ペアの数が1のときは、前記選定された質問回答ペアに含まれる前記回答を示す第1応答を出力させ、
前記数が第1閾値以上の場合には、前記選定された質問回答ペアの1つと紐付けられた前記複数の質問キーワードから前記第1クエリキーワードと異なる第1質問キーワードを抽出させ、前記選定された質問回答ペアの別の1つと紐付けられた別の前記複数の質問キーワードから前記第1クエリキーワードと異なる第2質問キーワードを抽出させ、前記第1質問キーワード及び前記第2質問キーワードを含む第2応答を出力させる、
対話方法であって、
前記第1応答及び前記第2応答を生成する際に、それぞれがブランクを含む複数のシナリオテンプレートを、前記処理部に使用させ、
前記第1応答は、前記複数のシナリオテンプレートの1つの前記ブランクに、前記選定された質問回答ペアに含まれる前記回答を埋め込むことで生成され、
前記第2応答は、前記複数のシナリオテンプレートの別の1つの前記ブランクに、前記第1質問キーワード及び前記第2質問キーワードを埋め込むことで生成される、対話方法。 to the processing unit,
when a first sentence including one or more words is input by a user, setting at least part of the one or more words as a first query keyword;
From a question-and-answer collection containing a plurality of combinations of a question-and-answer pair including a question and an answer to the question, and a plurality of question keywords linked to the question-and-answer pair, one or more of the above including the first query keyword Select a question-and-answer pair,
when the number of the selected question-and-answer pairs is one, outputting a first response indicating the answers included in the selected question-and-answer pairs;
If the number is equal to or greater than the first threshold, a first question keyword different from the first query keyword is extracted from the plurality of question keywords associated with one of the selected question-answer pairs, and the selected A second question keyword different from the first query keyword is extracted from the plurality of other question keywords associated with another one of the question-answer pairs, and a second question keyword including the first question keyword and the second question keyword is extracted. 2 to output a response,
A dialogue method comprising:
causing the processing unit to use a plurality of scenario templates each containing a blank when generating the first response and the second response;
The first response is generated by embedding the answer included in the selected question-answer pair in the blank of one of the plurality of scenario templates;
The interactive method, wherein the second response is generated by embedding the first question keyword and the second question keyword in the blank of another one of the plurality of scenario templates.
ユーザにより1つ以上の単語を含む第1文章が入力されると、前記1つ以上の単語の少なくとも一部を第1クエリキーワードに設定させ、
質問及び前記質問に対する回答を含む質問回答ペアと、前記質問回答ペアに紐付けられた複数の質問キーワードと、の組み合わせを複数含む質問回答集から、前記第1クエリキーワードを含む1つ以上の前記質問回答ペアを選定させ、
選定された前記質問回答ペアの数が1のときは、前記選定された質問回答ペアに含まれる前記回答を示す第1応答を出力させ、
前記数が第1閾値以上の場合には、前記選定された質問回答ペアの1つと紐付けられた前記複数の質問キーワードから前記第1クエリキーワードと異なる第1質問キーワードを抽出させ、前記選定された質問回答ペアの別の1つと紐付けられた別の前記複数の質問キーワードから前記第1クエリキーワードと異なる第2質問キーワードを抽出させ、前記第1質問キーワード及び前記第2質問キーワードを含む第2応答を出力させる、
プログラムであって、
前記第1応答及び前記第2応答を生成する際に、それぞれがブランクを含む複数のシナリオテンプレートを、前記処理部に使用させ、
前記第1応答は、前記複数のシナリオテンプレートの1つの前記ブランクに、前記選定された質問回答ペアに含まれる前記回答を埋め込むことで生成され、
前記第2応答は、前記複数のシナリオテンプレートの別の1つの前記ブランクに、前記第1質問キーワード及び前記第2質問キーワードを埋め込むことで生成される、プログラム。 to the processing unit,
when a first sentence including one or more words is input by a user, setting at least part of the one or more words as a first query keyword;
From a question-and-answer collection containing a plurality of combinations of a question-and-answer pair including a question and an answer to the question, and a plurality of question keywords linked to the question-and-answer pair, one or more of the above including the first query keyword Select a question-and-answer pair,
when the number of the selected question-and-answer pairs is one, outputting a first response indicating the answers included in the selected question-and-answer pairs;
If the number is equal to or greater than the first threshold, a first question keyword different from the first query keyword is extracted from the plurality of question keywords associated with one of the selected question-answer pairs, and the selected A second question keyword different from the first query keyword is extracted from the plurality of other question keywords associated with another one of the question-answer pairs, and a second question keyword including the first question keyword and the second question keyword is extracted. 2 to output a response,
a program,
causing the processing unit to use a plurality of scenario templates each containing a blank when generating the first response and the second response;
The first response is generated by embedding the answer included in the selected question-answer pair in the blank of one of the plurality of scenario templates;
The program, wherein the second response is generated by embedding the first question keyword and the second question keyword in another one of the plurality of scenario templates.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022077024A JP7319504B2 (en) | 2019-01-30 | 2022-05-09 | Dialogue system, dialogue method, program, and storage medium |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2019014417A JP2020123131A (en) | 2019-01-30 | 2019-01-30 | Dialog system, dialog method, program, and storage medium |
JP2022077024A JP7319504B2 (en) | 2019-01-30 | 2022-05-09 | Dialogue system, dialogue method, program, and storage medium |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2019014417A Division JP2020123131A (en) | 2019-01-30 | 2019-01-30 | Dialog system, dialog method, program, and storage medium |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2022105186A JP2022105186A (en) | 2022-07-12 |
JP7319504B2 true JP7319504B2 (en) | 2023-08-02 |
Family
ID=87469601
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2022077024A Active JP7319504B2 (en) | 2019-01-30 | 2022-05-09 | Dialogue system, dialogue method, program, and storage medium |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7319504B2 (en) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004005322A (en) | 2002-03-27 | 2004-01-08 | Fujitsu Ltd | Optimal question presenting method and optimal question presentation system |
JP2005301780A (en) | 2004-04-14 | 2005-10-27 | Sony Corp | Information processor, information processing method, and program |
JP2005352534A (en) | 2004-06-08 | 2005-12-22 | Fujitsu Ltd | Multi vendor support system and support method |
JP2012248161A (en) | 2011-05-31 | 2012-12-13 | Oki Electric Ind Co Ltd | Interactive retrieval system and program, and interaction scenario creation system and program |
JP2016045652A (en) | 2014-08-21 | 2016-04-04 | 国立研究開発法人情報通信研究機構 | Enquiry sentence generation device and computer program |
JP2016057508A (en) | 2014-09-10 | 2016-04-21 | シャープ株式会社 | Voice interactive device, control method and control program for the voice interactive device |
JP2019003319A (en) | 2017-06-13 | 2019-01-10 | 株式会社野村総合研究所 | Interactive business support system and interactive business support program |
-
2022
- 2022-05-09 JP JP2022077024A patent/JP7319504B2/en active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004005322A (en) | 2002-03-27 | 2004-01-08 | Fujitsu Ltd | Optimal question presenting method and optimal question presentation system |
JP2005301780A (en) | 2004-04-14 | 2005-10-27 | Sony Corp | Information processor, information processing method, and program |
JP2005352534A (en) | 2004-06-08 | 2005-12-22 | Fujitsu Ltd | Multi vendor support system and support method |
JP2012248161A (en) | 2011-05-31 | 2012-12-13 | Oki Electric Ind Co Ltd | Interactive retrieval system and program, and interaction scenario creation system and program |
JP2016045652A (en) | 2014-08-21 | 2016-04-04 | 国立研究開発法人情報通信研究機構 | Enquiry sentence generation device and computer program |
JP2016057508A (en) | 2014-09-10 | 2016-04-21 | シャープ株式会社 | Voice interactive device, control method and control program for the voice interactive device |
JP2019003319A (en) | 2017-06-13 | 2019-01-10 | 株式会社野村総合研究所 | Interactive business support system and interactive business support program |
Also Published As
Publication number | Publication date |
---|---|
JP2022105186A (en) | 2022-07-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111506712B (en) | Dialogue system, dialogue method, program, and storage medium | |
US7925506B2 (en) | Speech recognition accuracy via concept to keyword mapping | |
EP2317508B1 (en) | Grammar rule generation for speech recognition | |
WO2019158014A1 (en) | Computer-implemented method for dialoguing with user and computer system | |
JP7111154B2 (en) | Answer selection device, answer selection method, answer selection program | |
US20200242144A1 (en) | Display control system and storage medium | |
JP7132090B2 (en) | Dialogue system, dialogue device, dialogue method, and program | |
US11531693B2 (en) | Information processing apparatus, method and non-transitory computer readable medium | |
CN104750677A (en) | Speech translation apparatus, speech translation method and speech translation program | |
JP6051366B2 (en) | Information retrieval method and device | |
JP2015219582A (en) | Interactive method, interaction device, interactive program, and recording medium | |
JP6275569B2 (en) | Dialog apparatus, method and program | |
JP7319504B2 (en) | Dialogue system, dialogue method, program, and storage medium | |
JP5636309B2 (en) | Voice dialogue apparatus and voice dialogue method | |
CA2880554C (en) | System and methods for improving accuracy of speech recognition | |
White et al. | Using zero-resource spoken term discovery for ranked retrieval | |
US20230140480A1 (en) | Utterance generation apparatus, utterance generation method, and program | |
JP6097776B2 (en) | Word selection device, method, and program | |
CN116737913B (en) | Reply text generation method, device, equipment and readable storage medium | |
JP7485986B2 (en) | Information processing method, information processing device, and program | |
JP7115187B2 (en) | Information processing device, information processing method and program | |
JP5610304B2 (en) | Model parameter array device, method and program thereof | |
JP2023138894A (en) | Information processing system, information processing method, and program | |
JP2008139788A (en) | Device and program for generating answer |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20220509 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20230529 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20230531 |
|
RD01 | Notification of change of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7421 Effective date: 20230616 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20230629 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 7319504 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |