JP7319504B2 - Dialogue system, dialogue method, program, and storage medium - Google Patents

Dialogue system, dialogue method, program, and storage medium Download PDF

Info

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
Application number
JP2022077024A
Other languages
Japanese (ja)
Other versions
JP2022105186A (en
Inventor
尚水 吉田
浩司 藤村
憲治 岩田
優佳 小林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from JP2019014417A external-priority patent/JP2020123131A/en
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP2022077024A priority Critical patent/JP7319504B2/en
Publication of JP2022105186A publication Critical patent/JP2022105186A/en
Application granted granted Critical
Publication of JP7319504B2 publication Critical patent/JP7319504B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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.

特開2012-248161号公報JP 2012-248161 A

本発明の実施形態は、より容易に構築可能な、対話システム、対話方法、プログラム、及び記憶媒体を提供する。 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.

第1実施形態に係る対話システムを例示する模式図である。1 is a schematic diagram illustrating an interactive system according to a first embodiment; FIG. 質問回答集を例示する表である。It is a table|surface which illustrates a collection of questions and answers. シナリオテンプレートを例示する表である。4 is a table illustrating scenario templates; タスク用シナリオを例示する表である。4 is a table illustrating scenarios for tasks; 実施形態に係る対話システムの処理を例示するフローチャートである。6 is a flowchart illustrating processing of the dialogue system according to the embodiment; 第1実施形態の変形例に係る対話システムを例示する模式図である。FIG. 10 is a schematic diagram illustrating an interactive system according to a modification of the first embodiment; 第1実施形態の変形例に係る対話システムの処理を例示するフローチャートである。9 is a flowchart illustrating processing of the dialogue system according to the modification of the first embodiment; 第1実施形態の変形例に係る対話システムの処理を例示するフローチャートである。9 is a flowchart illustrating processing of the dialogue system according to the modification of the first embodiment; 第2実施形態に係る対話システムを例示する模式図である。FIG. 10 is a schematic diagram illustrating an interactive system according to a second embodiment; FIG. 第2実施形態に係る対話システムの処理を例示するフローチャートである。9 is a flowchart illustrating processing of the dialogue system according to the second embodiment; 第2実施形態に係る対話システムの動作を示す模式図である。FIG. 10 is a schematic diagram showing the operation of the dialogue system according to the second embodiment; 第2実施形態の変形例に係る対話システムを例示する模式図である。FIG. 11 is a schematic diagram illustrating an interactive system according to a modified example of the second embodiment; 第2実施形態に係る対話システムの動作を説明する模式図である。FIG. 10 is a schematic diagram for explaining the operation of the dialogue system according to the second embodiment; 実施形態に係る対話装置の構成を例示する模式図である。1 is a schematic diagram illustrating the configuration of an interactive device according to an embodiment; FIG.

以下に、本発明の各実施形態について図面を参照しつつ説明する。
本願明細書と各図において、既に説明したものと同様の要素には同一の符号を付して詳細な説明は適宜省略する。
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 dialogue system 1 according to the first embodiment includes a processing section 10. As shown in FIG. In the example shown in FIG. 1 , the dialogue system 1 further includes a first storage section 21 and a second storage section 22 .

処理部10は、ユーザから入力された文章を受け付ける。処理部10は、入力された文章に対して応答を出力する。ユーザは、処理部10からの応答に基づき、次の文章を処理部10へ入力する。処理部10は、次の文章に対する応答を、それまでのユーザとの対話に基づいて出力する。これにより、ユーザと対話システム1との間で対話が実現される。 The processing unit 10 receives a sentence input by the user. The processing unit 10 outputs a response to the input text. Based on the response from the processing unit 10, the user inputs the following text to the processing unit 10. The processing unit 10 outputs a response to the next sentence based on the interaction with the user so far. Thus, dialogue is realized between the user and the dialogue system 1 .

第1記憶部21は、質問回答集を記憶する。質問回答集は、複数の質問回答ペアを含む。それぞれの質問回答ペアは、質問と、その質問に対する回答と、を含む。第2記憶部22は、処理部10から出力される応答を生成するための汎用的なシナリオを記憶する。処理部10は、第1記憶部21及び第2記憶部22を参照しながら、入力された文章に対する応答を生成する。 The first storage unit 21 stores a collection of questions and answers. The question-and-answer collection includes a plurality of question-and-answer pairs. Each question-answer pair includes a question and an answer to that question. The second storage unit 22 stores general-purpose scenarios for generating responses output from the processing unit 10 . The processing unit 10 generates a response to the input text while referring to the first storage unit 21 and the second storage unit 22 .

例えば、ユーザから入力される文章は、問い合わせを含む。ここでは、ユーザから処理部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 processing unit 10 is called a "query sentence". When the processing unit 10 receives the query text, the processing unit 10 refers to the question-and-answer collection in the first storage unit 21 . The processing unit 10 checks whether there is a question related to the query text in the question and answer collection. When the processing unit 10 finds a related question, it outputs a response indicating the answer to the question to the user.

処理部10は、関連する質問が複数あるときは、それらの質問を1つに絞り込むための応答(問い返し)を出力する。ユーザは、その応答に対して、質問を絞り込むための情報(キーワード)を含む別のクエリ文章を入力する。例えば、質問が1つに絞り込まれるまで、ユーザによるクエリ文章の入力と処理部10からの応答と、が交互に繰り返される。ユーザは、対話システムの応答に答えることで、ユーザの求める情報を含む1つの回答にたどり着くことができる。対話システム1を用いることで、ユーザが適切な検索方法を知っていなくても、ユーザは、1つの回答を得られる。 When there are a plurality of related questions, the processing unit 10 outputs a response (answer) for narrowing down the questions to one. The user inputs another query sentence containing information (keywords) for narrowing down the question in response to the response. For example, the input of a query sentence by the user and the response from the processing unit 10 are alternately repeated until the question is narrowed down to one. By answering the responses of the dialogue system, the user can arrive at one answer containing the information the user wants. By using the dialogue system 1, the user can obtain one answer even if the user does not know an appropriate search method.

対話システムからユーザへ、クエリ文章に基づいた応答を出力するためには、シナリオが必要である。シナリオを自動的に生成するために、概念辞書を用いる方法がある。概念辞書は、例えば、属性、属性値、及び言い換え表現を含む。概念辞書を用いた対話システムでは、処理部は、クエリ文章が入力されると、概念辞書と回答候補の数とに基づいて、シナリオを自動的に生成する。シナリオの自動生成により、人(例えばシステム管理者)によるシナリオの作成が不要となる。
一方で、概念辞書を用いるためには、システム管理者は、質問回答集に含まれる全ての質問のそれぞれに、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 dialogue system 1 according to the embodiment, when a user inputs a query sentence including one or more words, the processing unit 10 sets at least part of the one or more words as a keyword (query keyword). . The processing unit 10 selects a question-and-answer pair including a query keyword from the question-and-answer collection. By using query keywords for selection, advance preparation such as assignment of attributes and attribute values to question and answer collections becomes unnecessary.

さらに、処理部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 processing unit 10 outputs the first response indicating the answer of the one question-answer pair. For example, the first response includes the questions and answers included in the selected question-answer pair. The first response may contain the URL of the web page containing the response. The user can confirm the answer to the inquiry by referring to the first response.
The processing unit 10 outputs the second response when the number of selected question-answer pairs is two or more. The second response is a question keyword extracted from a plurality of keywords (question keywords) included in one of the selected question-answer pairs and another plurality of keywords included in another one of the selected question-answer pairs. and another question keyword extracted from the question keyword. These question keywords contained in the second response are different from the query keywords. By referring to the second response, the user can know what kind of keyword should be included in the next query text in order to narrow down the question-and-answer pairs.
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 processing unit 10 another query text containing any of the question keywords included in the second response. The processing unit 10 sets at least part of one or more words included in the other query sentence as another query keyword. The processing unit 10 further selects a part of the selected two or more question-answer pairs using the other query keyword. As a result, when the number of selected question-and-answer pairs is one, the processing unit 10 outputs the first response. When the number of selected question-and-answer pairs is two or more, the processing unit 10 outputs the second response again.

実施形態によれば、例えば、質問回答集についてのユーザとの対話を、概念辞書を用いずに実現できる。また、実施形態によれば、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 dialogue system 1 . As a result, it becomes easier for the user to reach the desired answer. The convenience of the dialogue system 1 can be improved.

処理部10は、電気回路(処理回路)を含む中央演算処理装置を含む。第1記憶部21及び第2記憶部22は、記憶装置をそれぞれ含む。記憶装置は、例えば、ハードディスクドライブ(HDD)、ネットワークアタッチストレージ(NAS)、組み込み用マルチメディアカード(eMMC)、ソリッドステートドライブ(SSD)、及びソリッドステートハイブリッドドライブ(SSHD)の少なくともいずれかを含む。1つの記憶装置が、第1記憶部21及び第2記憶部22の両方として機能しても良い。処理部10、第1記憶部21、及び第2記憶部22は、1つのコンピュータに含まれても良いし、有線、無線、又はネットワークを介して相互に接続されても良い。 The processing unit 10 includes a central processing unit including electrical circuits (processing circuits). The 1st memory|storage part 21 and the 2nd memory|storage part 22 each contain a memory|storage device. The storage device includes, for example, a hard disk drive (HDD), a network attached storage (NAS), an embedded multimedia card (eMMC), a solid state drive (SSD), and/or a solid state hybrid drive (SSHD). One storage device may function as both the first storage section 21 and the second storage section 22 . The processing unit 10, the first storage unit 21, and the second storage unit 22 may be included in one computer, or may be connected to each other by wire, wirelessly, or via a network.

実施形態に係る対話システム1について、具体的に説明する。
図2は、質問回答集を例示する表である。
図3は、シナリオテンプレートを例示する表である。
図4は、タスク用シナリオを例示する表である。
The dialogue system 1 according to the embodiment will be specifically described.
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 first storage unit 21 stores, for example, a collection of questions and answers 110 shown in FIG. Question-and-answer collection 110 includes a plurality of question-and-answer pairs 110a-110K. The question-answer pairs 110a-110K include IDs 111a-111K that identify the question-answer pairs, questions 112a-112K, and answers 113a-113K to the questions, respectively.

質問回答ペア110a~110Kには、質問キーワード114a~114Kがそれぞれ紐付けられる。質問キーワード114a~114Kは、例えば、質問回答集110に含まれる。又は、質問キーワード114a~114Kは、質問回答集110とは別に、第1記憶部21又はその他の記憶部に記憶されても良い。 Question keywords 114a-114K are associated with the question-answer pairs 110a-110K, respectively. The question keywords 114a to 114K are included in the question and answer collection 110, for example. Alternatively, the question keywords 114a to 114K may be stored in the first storage unit 21 or other storage units separately from the question and answer collection 110. FIG.

質問キーワード114a~114Kは、質問112a~112Kからそれぞれ抽出される。1つの質問から複数の質問キーワードが抽出されても良い。例えば、対話システム1の外部の処理装置により、質問112a~112Kから、質問キーワード114a~114Kが抽出される。又は、質問キーワード114a~114Kは、質問112a~112Kに対してシステム管理者により付与されても良い。 Question keywords 114a-114K are extracted from questions 112a-112K, respectively. A plurality of question keywords may be extracted from one question. For example, a processing device external to the dialogue system 1 extracts question keywords 114a-114K from the questions 112a-112K. Alternatively, question keywords 114a-114K may be assigned to questions 112a-112K by a system administrator.

質問回答集は、複数の質問回答ペア及び複数の質問キーワード以外の情報を含んでいても良い。例えば、質問回答集は、対応する回答が設定されていない質問を含んでも良い。質問回答集は、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 processing unit 10 executes dialogue with the user, for example, based only on a plurality of question-answer pairs. The processing unit 10 does not use information other than the plurality of question-and-answer pairs for dialogue with the user.
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 second storage unit 22 stores, for example, the general-purpose model 120 shown in FIG. Generic model 120 includes a plurality of scenario templates 121a-121c. Scenario templates 121a-121c are used as the basis for task scenarios. The task scenario contains specific information and is used as a response output from the processing unit 10 . Numbers of answer candidates 122a-122c are set in scenario templates 121a-121c, respectively. A scenario template to be used is determined according to the number of answer candidates.

シナリオテンプレート121a~121cは、ユーザの問い合わせに依存しないように、汎用的に記述される。具体的には、シナリオテンプレート121a~121cのそれぞれは、<ブランク>を含む。<ブランク>には、後述するように、タスク用シナリオ生成の際に、質問、回答、又は質問キーワードが当てはめられる。 Scenario templates 121a-121c are described generically so as not to depend on user queries. Specifically, each of the scenario templates 121a-121c includes <blank>. As will be described later, questions, answers, or question keywords are applied to <blank> when task scenarios are generated.

汎用モデル120は、シナリオテンプレート121dのように、ブランクを含まない定型シナリオを含んでいても良い。定型シナリオは、挨拶、お礼、謝罪などに対応する。 The general-purpose model 120 may include a standard scenario that does not include blanks, like the scenario template 121d. Standard scenarios correspond to greetings, thanks, apologies, and the like.

処理部10は、例えば、受付部11、設定部12、選定部13、及び生成部14を含む。
受付部11は、ユーザから入力されたクエリ文章を受け付ける。クエリ文章は、例えば、ユーザのキーボードやタッチパネルなどの操作により入力される。又は、クエリ文章は、ユーザの発話に基づいて生成されても良い。例えば、マイクが、ユーザの発話を録音し、音声を認識する。クエリ文章は、音声認識により生成される。
The processing unit 10 includes, for example, a reception unit 11, a setting unit 12, a selection unit 13, and a generation unit 14.
The accepting unit 11 accepts a query sentence input by a user. A query sentence is input by, for example, a user's operation of a keyboard, touch panel, or the like. Alternatively, the query sentence may be generated based on the user's utterance. For example, a microphone records the user's speech and recognizes the voice. A query sentence is generated by speech recognition.

設定部12は、クエリ文章に基づいてクエリキーワードを設定する。例えば、設定部12は、1つ以上の単語を含むクエリ文章全体を、1つのクエリキーワードとする。選定部13は、質問回答集から、クエリキーワードを含む1つ以上の質問回答ペアを選定する。生成部14は、選定された質問回答ペアの数に応じて、タスク用シナリオを生成する。生成部14は、生成したタスク用シナリオを、モニタ、スピーカ、プリンタなどの外部の装置へ出力する。これらの装置は、タスク用シナリオを、ユーザが認識できるように出力する。 The setting unit 12 sets a query keyword based on the query text. For example, the setting unit 12 sets the entire query sentence including one or more words as one query keyword. The selection unit 13 selects one or more question-and-answer pairs including a query keyword from the question-and-answer collection. The generation unit 14 generates a task scenario according to the number of selected question-and-answer pairs. The generation unit 14 outputs the generated task scenario to an external device such as a monitor, speaker, or printer. These devices output task scenarios in a way that the user can perceive them.

具体的な一例として、図3に示す汎用モデル120におけるNsを3とする。Nsは、複数の質問回答ペアが選定されたときに、選定された質問回答ペアの数に応じて、対話システム1からの応答を切り替えるために設定される。例えば、ユーザは、「残高確認」と対話システム1へ入力する。受付部11は、そのクエリ文章を受け付ける。設定部12は、そのクエリ文章をクエリキーワードとする。すなわち、「残高確認」が、クエリキーワードとなる。選定部13は、第1記憶部21の質問回答集を参照し、そのクエリキーワードを含む質問回答ペアを選定する。選定された質問回答ペアに含まれる回答は、ユーザからの問い合わせに対する回答の候補である。 As a specific example, let Ns be 3 in the general-purpose model 120 shown in FIG. Ns is set to switch responses from the dialogue system 1 according to the number of question-answer pairs selected when a plurality of question-answer pairs are selected. For example, the user inputs "balance confirmation" to the dialogue system 1. FIG. The reception unit 11 receives the query text. The setting unit 12 uses the query text as a query keyword. That is, "balance confirmation" is the query keyword. The selection unit 13 refers to the question-and-answer collection in the first storage unit 21 and selects a question-and-answer pair including the query keyword. The answers included in the selected question-answer pair are candidates for answers to the user's inquiry.

生成部14は、選定された質問回答ペアの数をカウントする。選定された質問回答ペアの数は、回答候補の数に対応する。図2に示す質問回答集の質問112a、112b、112c、及び112Kのうち、質問112aのみが「残高確認」の質問キーワードを含む。従って、選定された質問回答ペアの数は、1である。生成部14は、汎用モデル120において、回答候補数が1に対応するシナリオテンプレート121aを参照する。生成部14は、<ブランク1>に、質問112aの「預金口座の残高を確認したい」を代入する。生成部14は、<ブランク2>に、回答113aの「残高確認をするには・・・」を代入する。これにより、図4に示すように、「ご質問は『預金口座の残高確認をしたい』ですね。『残高確認をするには・・・』」のタスク用シナリオ131が生成される。 The generator 14 counts the number of selected question-answer pairs. The number of question-answer pairs selected corresponds to the number of answer candidates. Of the questions 112a, 112b, 112c, and 112K of the question and answer collection shown in FIG. 2, only the question 112a contains the question keyword of "balance check". Therefore, the number of question-answer pairs selected is one. The generation unit 14 refers to the scenario template 121a corresponding to the answer candidate number of one in the general-purpose model 120 . The generating unit 14 substitutes <blank 1> with the question 112a “I want to check the balance of my deposit account”. The generation unit 14 substitutes the answer 113a, "to check the balance...", into <blank 2>. As a result, as shown in FIG. 4, a task scenario 131 of "Your question is 'I want to check the balance of my bank account.' 'How to check the balance...'" is generated.

別の一例として、ユーザは、「申し込み」と対話システム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 dialogue system 1 . The setting unit 12 uses “application” as a query keyword. In the question and answer collection shown in FIG. 2, two questions, question 112b and question 112K, include "application". The number of question-answer pairs selected is two. The generation unit 14 refers to the scenario template 121b corresponding to the number of answer candidates of two in the general-purpose model 120 . The generating unit 14 substitutes <blank 3a> with the question 112b “I want to apply for a savings account”. The generation unit 14 substitutes the question 112K “I want to apply for a loan” in <blank 3b>. As a result, a task scenario 132 of "Do you want to apply for a bank account?" or "Apply for a loan?" is generated.

さらに別の一例として、ユーザは、「預金口座」と対話システム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 dialog system 1. In the question and answer collection shown in FIG. 2, three questions 112a, 112b, and 112c include "deposit account." The number of question-answer pairs selected is three. The generation unit 14 refers to the scenario template 121c corresponding to the number of answer candidates of 3 in the general-purpose model 120 . The generation unit 14 also extracts question keywords different from the query keywords from the question keywords 114a to 114c corresponding to the questions 112a to 112c, respectively. The generation unit 14 substitutes the question keyword “balance check” of the question 112a into <blank 4a>. The generation unit 14 substitutes the question keyword “application” of the question 112b into <blank 4b>. The generating unit 14 substitutes the question keyword “cancellation” of the question 112c into <blank 4c>. As a result, a task scenario 133 of "Do you have any additional keywords? About 'balance check', 'application', 'cancellation', etc." is generated.

選定された質問回答ペアの数が0のとき、生成部14は、汎用モデル120において、回答候補数が0に対応するシナリオテンプレート121dを参照する。シナリオテンプレート121dは、ブランクを含まない定型シナリオである。生成部14は、シナリオテンプレート121dをそのままタスク用シナリオとする。 When the number of selected question-answer pairs is 0, the generation unit 14 refers to the scenario template 121d corresponding to the number of answer candidates of 0 in the general-purpose model 120 . The scenario template 121d is a standard scenario that does not contain blanks. The generation unit 14 directly uses the scenario template 121d as a task scenario.

このように、処理部10は、ユーザにより入力されたクエリ文章、質問回答集110、及び汎用モデル120に基づいて、タスク用シナリオを自動的に生成する。生成部14は、生成したタスク用シナリオを、ユーザの問い合わせに対する応答として出力する。 In this way, the processing unit 10 automatically generates a task scenario based on the query text input by the user, the question and answer collection 110, and the general-purpose model 120. FIG. The generator 14 outputs the generated task scenario as a response to the user's inquiry.

図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 reception unit 11 receives a query text input by a user (step S101). The setting unit 12 sets at least part of the query text as a query keyword (first query keyword) (step S102). The selection unit 13 selects a question-answer pair including the first query keyword (step S103). The generator 14 counts the number N of the selected question-answer pairs (step S104).

生成部14は、Nが0か判断する(ステップS105)。Nが0のとき、生成部14は、定型応答を出力する(ステップS106)。定型応答は、定型シナリオに対応する。Nが0では無いとき、生成部14は、Nが1か判断する(ステップS107)。Nが1のとき、生成部14は、第1応答を生成する(ステップS108)。第1応答は、選定された質問回答ペアに含まれる回答を示す。第1応答は、例えば、図4に示すタスク用シナリオ131である。 The generator 14 determines whether N is 0 (step S105). When N is 0, the generator 14 outputs a fixed response (step S106). A canned response corresponds to a canned scenario. When N is not 0, the generator 14 determines whether N is 1 (step S107). When N is 1, the generator 14 generates a first response (step S108). The first response indicates the answer included in the selected question-answer pair. The first response is, for example, the task scenario 131 shown in FIG.

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 generator 14 determines whether N is greater than or equal to Ns (step S109). When N is equal to or greater than Ns, the generator 14 selects a question keyword (first question keyword) different from the first query keyword for one of the selected question-answer pairs. The generating unit 14 selects another question keyword (second question keyword) different from the first query keyword for another one of the selected question-answer pairs. The first question keyword and the second question keyword are different from each other. The generator 14 generates a second response including the first question keyword and the second question keyword (step S110). The second response is, for example, the task scenario 133 shown in FIG.

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 generator 14 generates a third response including N questions included in N question-answer pairs (step S111). For example, the generation unit 14 generates a third response including a first question included in one of the N question-answer pairs and a second question included in another one of the N question-answer pairs. do. The third response is, for example, the task scenario 132 shown in FIG. After generating any of the first to third responses, the generator 14 outputs the generated responses (step S112).

応答を出力した後、処理部10は、対話が終了したか判断する(ステップS113)。例えば、処理部10は、応答を出力した後に経過した時間を測定する。ユーザにより別のクエリ文章が入力されないまま経過時間が閾値を超えると、処理部10は、対話が終了したと判断する。ユーザから対話システム1へ、対話が終了したことを示す文章が入力されても良い。処理部10は、その文章を受け付けると、対話が終了したと判断する。これらの終了の条件が満たされる前に、受付部11が次のクエリ文章を受け付けると、処理部10は、上述した処理を再度実行する。 After outputting the response, the processing unit 10 determines whether the dialogue has ended (step S113). For example, the processing unit 10 measures the elapsed time after outputting the response. If the elapsed time exceeds the threshold without the user inputting another query text, the processing unit 10 determines that the dialogue has ended. A sentence indicating that the dialogue has ended may be input from the user to the dialogue system 1 . When the processing unit 10 receives the text, it determines that the dialogue has ended. If the reception unit 11 receives the next query text before these termination conditions are satisfied, the processing unit 10 executes the above-described processing again.

生成部14がモニタへ応答を出力する場合、生成部14は、モニタに表示されたグラフィカルユーザインターフェース(GUI)上で、質問、キーワードなどを選択できるように出力しても良い。例えば、生成部14が第2応答を生成したとき、GUI上で、第1質問キーワード及び第2質問キーワードが選択できるように出力される。ユーザがGUI上で第1質問キーワード又は第2質問キーワードをクリックすると、クリックしたキーワードが、次のクエリ文章として処理部10へ入力される。例えば、生成部14が第3応答を生成したとき、GUI上で、第1質問及び第2質問が選択できるように出力される。ユーザがGUI上で第1質問又は第2質問をクリックすると、クリックした質問が、次のクエリ文章として処理部10へ入力される。 When the generation unit 14 outputs the response to the monitor, the generation unit 14 may output the question, the keyword, etc. on the graphical user interface (GUI) displayed on the monitor so as to be selectable. For example, when the generation unit 14 generates the second response, it is output so that the first question keyword and the second question keyword can be selected on the GUI. When the user clicks the first question keyword or the second question keyword on the GUI, the clicked keyword is input to the processing unit 10 as the next query sentence. For example, when the generator 14 generates the third response, it is output so that the first question and the second question can be selected on the GUI. When the user clicks the first question or the second question on the GUI, the clicked question is input to the processing unit 10 as the next query text.

図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 interactive system 1a according to the modification, a task model is generated in advance before the user makes an inquiry. The task model includes question keywords included in the question-and-answer collection, the number of question-and-answer pairs including each question keyword, and a plurality of task scenarios.

タスク用モデルは、処理部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 processing unit 30 . For example, the dialogue system 1a includes the processing unit 30. FIG. The processing unit 30 stores the generated task model in the third storage unit 23 . The processing unit 30 includes a central processing unit including electrical circuitry. A single device may function as both processing unit 10 and processing unit 30 . The 3rd memory|storage part 23 contains a memory|storage device. Storage devices include, for example, at least one of HDD, NAS, eMMC, SSD, and SSHD. A single storage device may function as the first storage section 21 to the third storage section 23 .

対話システム1aにおいて、処理部30は、取出部31、抽出部32、及び生成部33を含む。処理部10は、受付部11、設定部12、及び選定部13を含む。 In the dialogue system 1 a , the processing section 30 includes an extracting section 31 , an extracting section 32 and a generating section 33 . The processing unit 10 includes a reception unit 11 , a setting unit 12 and a selection unit 13 .

図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 retrieval unit 31 refers to the question-and-answer collection in the first storage unit 21 and retrieves one question-and-answer pair from a plurality of question-and-answer pairs (step S121). The extraction unit 32 extracts the question keyword registered for the one question-answer pair (step S122). The generation unit 33 determines whether the extracted question keyword is registered in the task model (step S123).

登録されていないときは、生成部33は、第2記憶部22の汎用モデルを参照する。生成部33は、回答候補数が1に対応するシナリオテンプレートを検索する。生成部33は、そのシナリオテンプレートの複数のブランクに、選択した質問回答ペアの質問及び回答をそれぞれ代入し、タスク用シナリオを生成する(ステップS124)。生成部33は、抽出した質問キーワードと、その質問キーワードを含む質問回答ペアの数と、生成したタスク用シナリオと、を対応付け、第3記憶部23のタスク用モデルに追加する(ステップS125)。 When not registered, the generation unit 33 refers to the general-purpose model in the second storage unit 22 . The generation unit 33 searches for a scenario template corresponding to one answer candidate. The generator 33 substitutes the questions and answers of the selected question-answer pair into a plurality of blanks of the scenario template to generate a task scenario (step S124). The generation unit 33 associates the extracted question keyword, the number of question-and-answer pairs including the question keyword, and the generated task scenario, and adds them to the task model in the third storage unit 23 (step S125). .

ステップS123において、抽出した質問キーワードがタスク用モデルに登録されているときは、生成部33は、タスク用モデルを更新する(ステップS126)。具体的には、生成部33は、タスク用モデルにおいて、抽出した質問キーワードを含む質問回答ペアの数に、1を加える。生成部33は、1を加えた後の質問回答ペアの数と、閾値Nsを比較する。 In step S123, when the extracted question keyword is registered in the task model, the generator 33 updates the task model (step S126). Specifically, the generation unit 33 adds 1 to the number of question-answer pairs including the extracted question keyword in the task model. The generator 33 compares the number of question-and-answer pairs after adding 1 with the threshold value Ns.

質問回答ペアの数がNs未満のときは、生成部33は、回答候補数が2以上Ns未満に対応するシナリオテンプレートを検索する。生成部33は、そのシナリオテンプレートの複数のブランクに、抽出した質問キーワードを含む複数の質問回答ペアの複数の質問をそれぞれ代入し、タスク用シナリオを生成する。 When the number of question-answer pairs is less than Ns, the generator 33 searches for scenario templates corresponding to the number of answer candidates equal to or greater than Ns and less than Ns. The generation unit 33 substitutes a plurality of questions of a plurality of question-answer pairs including the extracted question keyword into a plurality of blanks of the scenario template to generate a task scenario.

質問回答ペアの数がNs以上のときは、生成部33は、抽出した質問キーワードを含む質問回答ペアに含まれる各質問から、別の質問キーワードを抽出する。生成部33は、回答候補数がNs以上に対応するシナリオテンプレートを検索する。生成部33は、そのシナリオテンプレートの複数のブランクに、抽出された複数の別の質問キーワードをそれぞれ代入し、タスク用シナリオを生成する。生成部33は、生成したタスク用シナリオと、更新した質問回答ペアの数と、をタスク用モデルに登録する。 When the number of question-answer pairs is Ns or more, the generator 33 extracts another question keyword from each question included in the question-answer pair containing the extracted question keyword. The generation unit 33 searches for scenario templates corresponding to the number of answer candidates equal to or greater than Ns. The generation unit 33 substitutes the plurality of different extracted question keywords into the plurality of blanks of the scenario template to generate a task scenario. The generation unit 33 registers the generated task scenario and the number of updated question-answer pairs in the task model.

ステップS125又はS126の後、処理部30は、質問回答集から全ての質問回答ペアが取り出されたか判断する(ステップS127)。取り出されていない質問回答ペアがあるときは、処理部30は、ステップS121を再度実行する。ステップS121において、取出部31は、複数の質問回答ペアの別の1つを取り出す。以降は、複数の質問回答ペアの別の1つから、別の質問キーワードが抽出される。ステップS121~S126の処理は、質問回答集に含まれる全ての質問回答ペアが取り出されるまで繰り返される。 After step S125 or S126, the processing unit 30 determines whether or not all question-answer pairs have been extracted from the question-and-answer collection (step S127). If there is a question-and-answer pair that has not been extracted, the processing unit 30 executes step S121 again. In step S121, the extractor 31 extracts another one of the plurality of question-answer pairs. Thereafter, another question keyword is extracted from another one of the plurality of question-answer pairs. The processing of steps S121 to S126 is repeated until all question-and-answer pairs included in the question-and-answer collection are extracted.

図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 reception unit 11 receives a query sentence input by the user (step S141). The setting unit 12 sets the query text as a query keyword (step S142). The selection unit 13 selects a response based on the query keyword (step S143). Specifically, the selection unit 13 accesses the third storage unit 23 . The selection unit 13 determines whether the task model includes a query keyword.

タスク用モデルにクエリキーワードが含まれるときは、選定部13は、タスク用モデルから、クエリキーワードに対応付けられたタスク用シナリオを選定する。タスク用モデルにクエリキーワードが含まれないときは、選定部13は、第2記憶部22の汎用モデルにおいて、回答候補数が0に対応するシナリオテンプレート(定型シナリオ)を、タスク用シナリオとして選定する。回答候補数が0に対応するシナリオテンプレートは、タスク用シナリオとして事前にタスク用モデルに登録されていても良い。選定部13は、選定した応答を出力する(ステップS144)。処理部10は、対話が終了したか判断する(ステップS145)。 When a query keyword is included in the task model, the selection unit 13 selects a task scenario associated with the query keyword from the task model. When the query keyword is not included in the task model, the selection unit 13 selects, as the task scenario, a scenario template (standard scenario) corresponding to the number of answer candidates of 0 in the general-purpose model of the second storage unit 22. . A scenario template corresponding to 0 answer candidates may be registered in the task model in advance as a task scenario. The selection unit 13 outputs the selected response (step S144). The processing unit 10 determines whether the dialogue has ended (step S145).

変形例に係る対話システム1aによれば、処理部10がクエリ文章を受け付ける前に、複数のタスク用シナリオを含むタスク用モデルが生成される。このため、処理部10は、クエリ文章を受け付けた後、そのクエリ文章に基づいてタスク用シナリオを生成する必要が無い。例えば、クエリ文章を受け付けた後の処理部10の処理負荷を低減できる。 According to the interactive system 1a according to the modification, a task model including a plurality of task scenarios is generated before the processing unit 10 receives a query sentence. Therefore, the processing unit 10 does not need to generate a task scenario based on the query text after receiving the query text. For example, the processing load on the processing unit 10 after receiving the query text can be reduced.

(第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 dialogue system 2 according to the second embodiment, the processing unit 10 refers to the fourth storage unit 24 in addition to the first storage unit 21 and the second storage unit 22 when generating a response. The dialogue system 2 may also include a fourth storage unit 24 . The fourth storage unit 24 stores models or rules for extracting keywords from sentences.

対話システム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 dialogue system 2 further includes a processing section 40 . The processing unit 40 includes, for example, an extraction unit 41 and an extraction unit 42 . The retrieval unit 41 accesses the first storage unit 21 and retrieves one question-answer pair from the question-and-answer collection. The extraction unit 42 extracts question keywords from the question-answer pair according to the model or rules stored in the fourth storage unit 24 . The extraction unit 42 stores the extracted question keyword in the first storage unit 21, for example. The processing unit 40 includes a central processing unit including electrical circuitry. A single device may function as both processing unit 10 and processing unit 40 . The fourth storage unit 24 includes a storage device. Storage devices include, for example, at least one of HDD, NAS, eMMC, SSD, and SSHD. A single storage device may function as the first storage section 21 , the second storage section 22 and the fourth storage section 24 .

受付部11が1つ以上の単語を含むクエリ文章を受け付けると、設定部12は、第4記憶部24に記憶されたモデル又は規則に従って、1つ以上の単語の一部を抽出する。設定部12は、抽出した単語を、クエリキーワードとして設定する。すなわち、設定部12は、クエリ文章からクエリキーワードを抽出する。複数のクエリキーワードが、クエリ文章から抽出されても良い。 When the receiving unit 11 receives a query sentence including one or more words, the setting unit 12 extracts a part of one or more words according to the model or rule stored in the fourth storage unit 24. The setting unit 12 sets the extracted words as query keywords. That is, the setting unit 12 extracts query keywords from the query text. Multiple query keywords may be extracted from the query sentence.

例えば、キーワードの抽出は、文章を構成する各単語の品詞に基づく。この場合、第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 fourth storage unit 24 stores morphological analysis models or morphological analysis rules. The setting unit 12 divides the sentence into a plurality of words by morphologically analyzing the sentence, and estimates the part of speech of each word. The setting unit 12 sets a word of a specific part of speech as a keyword. For example, nouns and verbs are used as specific parts of speech. For a compound noun, which is one of nouns, the setting unit 12 may register each noun in the compound noun as a keyword, register the entire compound noun as one keyword, or combine them. You can register with The setting unit 12 may further extract words (unknown words) that cannot be classified into any part of speech as keywords.

図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 processing unit 40 extracts question keywords from the question-and-answer collection. The processing shown in FIG. 10 is executed, for example, when a user inputs a query sentence.

取出部41は、質問回答集から、複数の質問回答ペアの1つを取り出す(ステップS201)。抽出部42は、取り出した質問回答ペアの質問から、質問キーワードを抽出する(ステップS202)。抽出部42は、抽出した質問キーワードを第1記憶部21に登録する(ステップ203)。取出部41は、質問回答集に含まれる全ての質問回答ペアを取り出したか判断する(ステップS204)。取り出されていない質問回答ペアがあるときは、取出部41は、ステップS201を再度実行する。ステップS201において、取出部41は、質問回答集から、複数の質問回答ペアの別の1つを取り出す。以降は、複数の質問回答ペアの別の1つから、別の質問キーワードが抽出される。ステップS201~S203の処理は、質問回答集に含まれる全ての質問回答ペアから質問キーワードが抽出されるまで繰り返される。 The retrieval unit 41 retrieves one of a plurality of question-answer pairs from the question-and-answer collection (step S201). The extraction unit 42 extracts a question keyword from the question of the extracted question-answer pair (step S202). The extraction unit 42 registers the extracted question keyword in the first storage unit 21 (step 203). The retrieval unit 41 determines whether all question-and-answer pairs included in the question-and-answer collection have been retrieved (step S204). If there is a question-and-answer pair that has not been extracted, the extractor 41 executes step S201 again. In step S201, the retrieving unit 41 retrieves another one of the plurality of question-answer pairs from the question-and-answer collection. Thereafter, another question keyword is extracted from another one of the plurality of question-answer pairs. The processing of steps S201 to S203 is repeated until question keywords are extracted from all question-answer pairs included in the question-and-answer collection.

処理部10は、質問回答集から抽出された質問キーワードを用いて、図5に示すフローチャートと同様の処理を実行する。例えば、ステップS102において、設定部12は、ユーザにより入力されたクエリ文章の一部を抽出し、1つ以上のクエリキーワードとして設定する。ステップS103において、選定部13は、抽出された1つ以上のクエリキーワードの少なくとも1つを含む質問回答ペアを選定する。 The processing unit 10 uses the question keyword extracted from the question-and-answer collection to execute the same process as in the flowchart shown in FIG. For example, in step S102, the setting unit 12 extracts a part of the query sentence input by the user and sets it as one or more query keywords. In step S103, the selection unit 13 selects a question-answer pair including at least one of the extracted one or more query keywords.

第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 dialogue system 2 can be improved.

また、第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 selection unit 13 may select a question-answer pair containing a question keyword similar to the query keyword in addition to a question-answer pair containing the same question keyword as the query keyword. The selection unit 13 calculates the degree of similarity between each of the one or more query keywords and each of the multiple question keywords extracted from the question-and-answer collection. When the degree of similarity between one query keyword and one question keyword is equal to or greater than a preset threshold, the one query keyword is determined to be a paraphrased expression of the one question keyword. The selection unit 13 determines that a question-and-answer pair including a question keyword similar to the query keyword substantially includes the query keyword, and selects the question-and-answer pair.

例えば、ある質問キーワードの読みは、あるクエリキーワードの読みと同じである。一例として、その質問キーワードの少なくとも一部は、ひらがな及びカタカナの一方で記載され、そのクエリキーワードの少なくとも一部は、ひらがな及びカタカナの他方で記載されている。この場合、その質問キーワードは、そのクエリキーワードの言い換え表現である。別の一例として、質問キーワード及びクエリキーワードは、同じ漢字を含むが、異なる送り仮名を含む。この場合も、その質問キーワードは、そのクエリキーワードの言い換え表現である。
質問キーワード及びクエリキーワードは、同じ漢字を含み、品詞の違いにより送り仮名が違うときも、その質問キーワードは、そのクエリキーワードの言い換え表現と判断される。例えば、質問キーワードは「振り込み」であり、クエリキーワードが「振り込む」であるとき、質問キーワードは、そのクエリキーワードの言い換え表現と判断される。
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 selection unit 13 uses the edit distance between keywords as the degree of similarity.
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 selection unit 13 sets the degree of similarity between keywords included in one set to 1, and sets the degree of similarity between other keywords to 0.
Similarity may be determined using a pre-trained distributed representation model. The distributed representation model describes the distributed representation of words. The selection unit 13 determines the degree of similarity based on the cosine similarity or distance between the vectors of each keyword.

クエリキーワードに類似する質問キーワードを含む質問回答ペアを選定することで、ユーザの問い合わせに対応する質問を含む質問回答ペアがより選定され易くなる。これにより、ユーザが、求める回答によりたどり着きやすくなる。 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 interaction system 2. FIG. For example, when the dialogue system 2 detects the user US, it outputs the sentence TX1 "Ask a question." The user US enters the text TX2 “About bank account” into the dialog system 2 . The dialogue system 2 decomposes the sentence TX2 (query sentence) into a plurality of words and estimates the part of speech of each word. The dialogue system 2 extracts "deposit account" as a query keyword from the sentence TX2 based on the part of speech. The dialog system 2 selects a question-and-answer pair in which "deposit account" is registered as a question keyword from the question-and-answer collection.

一例として、対話システム2は、「預金口座」及び「申し込み」の質問キーワードを含む質問回答ペアと、「預金口座」及び「解約」の質問キーワードを含む質問回答ペアと、「預金口座」及び「残高確認」の質問キーワードを含む質問回答ペアと、の3つの質問回答ペアを選定する。対話システム2は、この選定結果に基づき、文章TX3「追加のキーワードはありますか?申し込みについて、ご解約について、残高確認について等」を出力する。文章TX3は、第2応答に対応する。 As an example, the dialogue system 2 includes a question-and-answer pair containing the question keywords "deposit account" and "application", a question-and-answer pair containing the question keywords "deposit account" and "cancellation", and "deposit account" and " A question-and-answer pair including the question keyword of "balance confirmation" and three question-and-answer pairs are selected. Based on this selection result, the dialogue system 2 outputs the text TX3 "Do you have any additional keywords? Regarding application, cancellation, balance confirmation, etc.". Text TX3 corresponds to the second response.

文章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 dialogue system 2 is displayed on a monitor, words corresponding to the question keyword are displayed bolder, underlined or colored than other words. Words corresponding to the question keyword may be displayed as clickable. When the user US clicks on a word corresponding to the question keyword, the next sentence containing the question keyword may be automatically input to the dialogue system 2 . When the response output from the dialogue system 2 is output as voice, the words corresponding to the question keyword are read aloud at a higher volume or more slowly than other words.

ユーザ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 dialogue system 2 based on the text TX3. The dialogue system 2 sets "application" as a query keyword based on the text TX4. The dialogue system 2 further selects a part of the previously selected question-answer pair using the query keyword based on the text TX4. For example, the query keyword "application" based on sentence TX4 is similar to the question keyword "application." The dialogue system 2 selects a question-answer pair containing the question keywords "deposit account" and "application" from the above three question-answer pairs. Since the number of question-and-answer pairs has been narrowed down to one, the dialogue system 2 displays the sentence TX5 indicating the answers included in the question-and-answer pair: "Your question is 'I want to apply for a savings account.' …” is output. Text TX5 corresponds to the first response.

抽出部42は、質問回答集から質問キーワードを抽出する際に、各質問キーワードの重要性を表すスコアを決定しても良い。選定部13は、スコアに基づいて質問回答ペアを選定する。 The extraction unit 42 may determine a score representing the importance of each question keyword when extracting question keywords from the question-and-answer collection. The selection unit 13 selects a question-answer pair based on the score.

質問キーワードのスコアは、その質問キーワードを含む質問回答ペアの数が少ないほど、高く設定される。スコアの高いキーワードは、質問回答集にあまり含まれておらず、質問回答ペアの選定に有用である。設定部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 unit 12 determines the score of each question keyword by using the appearance frequency in the question and answer collection, the reverse document frequency in the question and answer collection, or a method such as bm25. For example, the setting unit 12 calculates the ratio of the number of question-and-answer pairs including the question keyword to the total number of question-and-answer pairs included in the question-and-answer collection. The setting unit 12 sets the reciprocal of the ratio (reverse document frequency) as a score. Alternatively, the setting unit 12 may set a numerical value based on the ratio as the score. For example, the setting unit 12 may convert the reciprocal of the ratio using a logarithmic function and use the obtained numerical value as the score.

具体的な一例として、質問回答集が、図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-answer pairs 110a, 110b, 110c, and 110K, as shown in FIG. In this question-and-answer collection, there are three question-and-answer pairs including "deposit account". The "savings account" score is set to 4/3, which is the reciprocal of 3/4. Similarly, the score for "Balance Check" is set to 4/1, which is the reciprocal of 1/4. The score for "Sign Up" is set to 4/2, which is the reciprocal of 2/4.

選定部13は、クエリキーワードを含む質問回答ペアを選定すると、選定された各質問回答ペアについて、クエリキーワードに対応する質問キーワードのスコアを参照する。クエリキーワードに対応する質問キーワードを含む質問回答ペアには、その質問キーワードに設定されたスコアを付与する。選定部13は、質問回答ペアごとに、スコアの合計を算出する。選定部13は、クエリキーワードを含む質問回答ペアから、スコアの合計が閾値(第2閾値)を超えた質問回答ペアを選定する。生成部14は、スコアの合計が閾値を超えた質問回答ペアの数に応じて、応答を生成する。 After selecting the question-and-answer pairs including the query keyword, the selection unit 13 refers to the score of the question keyword corresponding to the query keyword for each of the selected question-and-answer pairs. A question-answer pair containing a question keyword corresponding to the query keyword is given a score set for the question keyword. The selection unit 13 calculates the total score for each question-and-answer pair. The selection unit 13 selects a question-answer pair whose total score exceeds a threshold (second threshold) from the question-answer pairs including the query keyword. The generator 14 generates a response according to the number of question-answer pairs whose total score exceeds the threshold.

例えば、設定部12は、ユーザにより入力されたクエリ文章の一部を第1クエリキーワードに設定し、クエリ文章の別の一部を第2クエリキーワードに設定する。選定部13は、第1クエリキーワードに対応する質問キーワードを含む1つ以上の質問回答ペアに、その質問キーワードに設定されたスコアを付与する。選定部13は、第2クエリキーワードに対応する別の質問キーワードを含む1つ以上の質問回答ペアに、その別の質問キーワードに設定されたスコアを付与する。選定部13は、付与されたスコアが閾値を超える1つ以上の質問回答ペアを選定する。 For example, the setting unit 12 sets part of the query text input by the user as the first query keyword, and sets another part of the query text as the second query keyword. The selection unit 13 gives the score set to the question keyword to one or more question-answer pairs including the question keyword corresponding to the first query keyword. The selection unit 13 gives the score set for the other question keyword to one or more question-answer pairs including another question keyword corresponding to the second query keyword. The selection unit 13 selects one or more question-and-answer pairs whose score exceeds the threshold.

スコアに基づいて質問回答ペアを選定することで、質問回答ペアの数を絞り込むことができる。また、スコアに基づく選定により、ユーザの求める回答が選定から外れることを抑制できる。このため、ユーザが、求める回答によりたどり着き易くなる。 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 processing unit 10 may determine whether the query sentence is a negative sentence. For example, when setting a query keyword, the setting unit 12 determines whether the query sentence is a negative sentence. When the setting unit 12 determines that the query sentence is a negative sentence, the selection unit 13 selects question-answer pairs that do not include the query keyword.

例えば、対話システム3が文章TX3を出力した後、ユーザは、「解約と残高確認ではない」とクエリ文章を入力する。設定部12は、このクエリ文章から「解約」及び「残高確認」をクエリキーワードとして抽出する。さらに、設定部12は、このクエリ文章を否定文と判断する。選定部13は、この判断結果に基づき、先に選定された3つの質問回答ペアから、「解約」及び「残高確認」の質問キーワードを含まない質問回答ペアを選定する。この結果、対話システム2は、文章TX5を出力する。 For example, after the dialog system 3 outputs the text TX3, the user inputs a query text, "Not cancellation and balance confirmation." The setting unit 12 extracts "cancellation" and "balance check" from this query text as query keywords. Furthermore, the setting unit 12 determines that this query sentence is a negative sentence. Based on this determination result, the selection unit 13 selects a question-answer pair that does not include the question keywords "cancellation" and "balance confirmation" from the three question-answer pairs that were previously selected. As a result, the dialogue system 2 outputs the text TX5.

クエリ文章が否定文か判断するために、設定部12は、例えば、事前に作成された規則を参照する。一例として、規則は、「クエリ文章に『ではない』、『じゃない』、又は『以外』が含まれているとき、クエリ文章は否定文である」などのように記述される。設定部12は、クエリ文章が規則に記述された条件を満たすか判断することで、クエリ文章が否定文か判断する。
設定部12は、事前に作成されたモデルを参照しても良い。例えば、モデルは、人工ニューラルネットワークモデル又は再帰ニューラルネットワークモデルである。モデルは、事前に学習データを用いて学習される。学習データは、複数のペアデータを含む。各ペアデータは、文章と、その文章が否定形であることを示す情報と、を含む。モデルは、否定文が入力されたときに、否定文であることを示す情報を出力するように、学習される。
In order to determine whether the query sentence is a negative sentence, the setting unit 12 refers to, for example, rules created in advance. As an example, a rule may be stated such as "A query sentence is a negative sentence when the query sentence contains 'not', 'not', or 'other than'." The setting unit 12 determines whether the query sentence is a negative sentence by determining whether the query sentence satisfies the conditions described in the rule.
The setting unit 12 may refer to a model created in advance. For example, the model is an artificial neural network model or a recurrent neural network model. The model is trained in advance using training data. The learning data includes multiple pairs of data. Each pair of data includes a sentence and information indicating that the sentence is negative. The model is trained to output information indicating a negative sentence when a negative sentence is input.

(変形例)
図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 dialog system 2a according to the modification, a task model is generated in advance before the user makes an inquiry. A task model is generated by the processing unit 40 . For example, the dialogue system 2a includes a processing unit 40. FIG. The processing unit 40 stores the generated task model in the third storage unit 23 .

対話システム2aにおいて、処理部40は、取出部41、抽出部42、及び生成部43を含む。処理部10は、受付部11、設定部12、及び選定部13を含む。 In the dialogue system 2 a , the processing section 40 includes an extracting section 41 , an extracting section 42 and a generating section 43 . The processing unit 10 includes a reception unit 11 , a setting unit 12 and a selection unit 13 .

取出部41は、第1記憶部21にアクセスし、質問回答集から1つの質問回答ペアを取り出す。抽出部42は、第4記憶部24に記憶されたモデル又は規則に従って、質問回答ペアから質問キーワードを抽出する。抽出部42は、抽出した質問キーワードを、例えば第1記憶部21に記憶する。生成部43は、抽出した質問キーワードに基づいてタスク用シナリオを生成し、タスク用モデルを更新する。生成部43による処理は、図7に示すフローチャートのステップS123~S126と同様である。 The retrieval unit 41 accesses the first storage unit 21 and retrieves one question-answer pair from the question-and-answer collection. The extraction unit 42 extracts question keywords from the question-answer pair according to the model or rules stored in the fourth storage unit 24 . The extraction unit 42 stores the extracted question keyword in the first storage unit 21, for example. The generator 43 generates a task scenario based on the extracted question keyword, and updates the task model. The processing by the generation unit 43 is the same as steps S123 to S126 in the flowchart shown in FIG.

処理部10は、タスク用モデルを用いて、ユーザにより入力されたクエリ文章に対する応答を出力する。対話システム2aにおける処理部10の処理は、図8に示すフローチャートと同様である。 The processing unit 10 uses the task model to output a response to the query text input by the user. The processing of the processing unit 10 in the dialogue system 2a is the same as the flowchart shown in FIG.

変形例に係る対話システム2aによれば、対話システム1aと同様に、処理部10がクエリ文章を受け付ける前に、複数のタスク用シナリオを含むタスク用モデルが生成される。このため、例えば、クエリ文章を受け付けた後の処理部10の処理負荷を低減できる。 According to the interactive system 2a according to the modification, similarly to the interactive system 1a, a task model including a plurality of task scenarios is generated before the processing unit 10 receives a query sentence. Therefore, for example, the processing load on the processing unit 10 after receiving the query text can be reduced.

対話システム2aにおいて、抽出部42は、質問回答集から質問キーワードを抽出する際に、各質問キーワードの重要度を表すスコアを決定しても良い。選定部13は、スコアに基づいて、タスク用モデルからタスク用シナリオを選定する。 In the dialogue system 2a, the extraction unit 42 may determine a score representing the importance of each question keyword when extracting question keywords from the question and answer collection. The selection unit 13 selects a task scenario from the task model based on the score.

一例として、設定部12は、ユーザにより入力されたクエリ文章から、2つのクエリキーワード(第1クエリキーワード及び第2クエリキーワード)を抽出する。タスク用モデルは、第1クエリキーワードに対応する第1質問キーワードを含むタスク用シナリオと、第2クエリキーワードに対応する第2質問キーワードを含むタスク用シナリオと、を含む。タスク用モデルには、第1質問キーワード及び第2質問キーワードの両方を含むタスク用シナリオが含まれていない。
この例において、選定部13は、1つのタスク用シナリオを選定する際、第1質問キーワードのスコアと、第2質問キーワードのスコアと、を比較する。選定部13は、よりスコアの高い質問キーワードを含むタスク用シナリオを選定する。選定部13は、選定したタスク用シナリオを応答として出力する。
As an example, the setting unit 12 extracts two query keywords (a first query keyword and a second query keyword) from the query text input by the user. The task model includes a task scenario including first question keywords corresponding to the first query keywords, and a task scenario including second question keywords corresponding to the second query keywords. The task model does not include a task scenario that includes both the first question keyword and the second question keyword.
In this example, when selecting one task scenario, the selection unit 13 compares the score of the first question keyword and the score of the second question keyword. The selection unit 13 selects a task scenario including a question keyword with a higher score. The selection unit 13 outputs the selected task scenario as a response.

図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 processing unit 40 generates a task scenario corresponding to the question keyword "internet banking", a task scenario corresponding to the question keyword "overseas", and a task scenario corresponding to the question keyword "remittance". , to generate

タスク用シナリオを生成するために質問回答集から質問キーワードを抽出した際、抽出部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 extraction unit 42 determines the score of each question keyword. In the example of FIG. 13, there are two questions (answer candidates) including "internet banking". There are three questions that include "overseas." There is one question that includes "remittance". The score is the number of questions containing each query keyword for the number of question-answer pairs (6) selected. "Internet Banking" scores 6/2. The score for "overseas" is 6/3. "Remittance" scores 6/1.

ユーザUSは、図13に示すように、「インターネットバンキングで海外へ送金できますか?」と対話システム2aへ入力する。設定部12は、このクエリ文章から、「インターネットバンキング」、「海外」、及び「送金」をクエリキーワードとして抽出する。選定部13は、「インターネットバンキング」、「海外」、及び「送金」のいずれかの質問キーワードに対応して生成されたタスク用シナリオを、タスク用モデルから抽出する。 The user US, as shown in FIG. 13, inputs into the dialogue system 2a, "Can you remit money overseas by internet banking?" The setting unit 12 extracts "internet banking", "overseas", and "remittance" from this query text as query keywords. The selection unit 13 extracts from the task model a task scenario generated corresponding to one of the question keywords "internet banking", "overseas", and "remittance".

選定部13は、複数のタスク用シナリオの1つを応答として出力する。選定部13は、複数のタスク用シナリオから1つのタスク用シナリオを選定するため、各タスク用シナリオに対応する質問キーワードのスコアを比較する。スコアの比較の結果、「送金」のスコアが最も高いと判断される。選定部13は、「送金」に対応するタスク用シナリオを応答として出力する。 The selection unit 13 outputs one of a plurality of task scenarios as a response. In order to select one task scenario from a plurality of task scenarios, the selection unit 13 compares scores of question keywords corresponding to each task scenario. As a result of the score comparison, it is determined that the score of "remittance" is the highest. The selection unit 13 outputs a task scenario corresponding to "remittance" as a response.

図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 dialogue device 3 shown in FIG. The dialogue device 3 is implemented by, for example, a hardware configuration similar to that of a general computer (information processing device). The interactive device 3 includes a CPU (Central Processing Unit) 91, an input section 92, an output section 93, a ROM (Read Only Memory) 94, a RAM (Random Access Memory) 95, a storage section 96, and a communication device 97. , and a bus 98 . Each section is connected by a bus 98 .

CPU91は、ROM94または記憶部96に予め記憶された各種プログラムと協働して各種処理を実行し、対話装置3を構成する各部の動作を統括的に制御する。CPU91は、処理において、RAM95の所定領域を作業領域として用いる。CPU91は、ROM94または記憶部96に予め記憶されたプログラムと協働して、入力部92、出力部93、及び通信装置97等を実現させる。 The CPU 91 cooperates with various programs pre-stored in the ROM 94 or the storage unit 96 to execute various processes, and controls the operation of each unit constituting the interactive device 3 in an integrated manner. CPU91 uses the predetermined area|region of RAM95 as a work area in a process. The CPU 91 cooperates with a program pre-stored in the ROM 94 or storage unit 96 to implement an input unit 92, an output unit 93, a communication device 97, and the like.

入力部92は、例えば、キーボード、マイクロフォン、及びタッチパネルの少なくともいずれかからを含む。入力部92は、ユーザから入力された情報を指示信号として受け付け、その指示信号をCPU91に出力する。出力部93は、例えば、モニタ、スピーカ、及びプリンタの少なくともいずれかを含む。出力部93は、CPU91から出力された信号に基づいて、各種情報を出力する。 The input unit 92 includes, for example, at least one of a keyboard, a microphone, and a touch panel. The input unit 92 receives information input by the user as an instruction signal, and outputs the instruction signal to the CPU 91 . The output unit 93 includes, for example, at least one of a monitor, a speaker, and a printer. The output unit 93 outputs various information based on the signal output from the CPU 91 .

ROM94は、対話装置3の制御に用いられるプログラムおよび各種設定情報等を書き換え不可能に記憶する。RAM95は、SDRAM(Synchronous Dynamic Random Access Memory)等の揮発性の記憶媒体である。RAM95は、CPU91の作業領域として機能する。具体的には、対話装置3が用いる各種変数およびパラメータ等を一時記憶するバッファ等として機能する。 The ROM 94 non-rewritably stores programs and various setting information used for controlling the interactive device 3 . The RAM 95 is a volatile storage medium such as SDRAM (Synchronous Dynamic Random Access Memory). The RAM 95 functions as a work area for the CPU 91 . Specifically, it functions as a buffer or the like that temporarily stores various variables, parameters, and the like used by the interactive device 3 .

記憶部96は、フラッシュメモリ等の半導体による記憶媒体、磁気的または光学的に記録可能な記憶媒体等の書き換え可能な記録装置である。記憶部96は、対話装置3の制御に用いられるプログラムおよび各種設定情報等を記憶する。記憶部96は、第1記憶部21~第4記憶部24として機能する。通信装置97は、外部の機器と通信して情報の送受信を行うために用いられる。 The storage unit 96 is a rewritable recording device such as a semiconductor storage medium such as a flash memory, or a magnetically or optically recordable storage medium. The storage unit 96 stores programs used for controlling the interactive device 3, various setting information, and the like. Storage unit 96 functions as first storage unit 21 to fourth storage unit 24 . A communication device 97 is used to communicate with an external device to transmit and receive information.

以上で説明した各実施形態によれば、ユーザと対話できる対話システムを、より容易に構築できる。各実施形態によれば、ユーザが、求める回答によりたどり着き易い、対話システム、対話方法、プログラム、及び記憶媒体を提供できる。 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 ユーザ Reference Signs List 1, 1a, 2, 2a dialogue system, 3 dialogue device, 10 processing unit, 11 reception unit, 12 setting unit, 13 selection unit, 14 generation unit, 21 first storage unit, 22 second storage unit, 23 third storage Unit 24 Fourth Storage Unit 30 Processing Unit 31 Extraction Unit 32 Extraction Unit 33 Generation Unit 40 Processing Unit 41 Extraction Unit 42 Extraction Unit 43 Generation Unit 91 CPU 92 Input Unit 93 Output Unit , 94 ROM, 95 RAM, 96 storage unit, 97 communication device, 98 bus, 110 question and answer collection, 110a to 110K question and answer pair, 111a to 111K ID, 112a to 112K question, 113a to 113K answer, 114a to 114K question keyword , 120 general-purpose model, 121a-121d scenario template, 122a-122d number of answer candidates, 131-133 task scenario, Ns threshold, TX1-TX6 text, US user

Claims (9)

ユーザにより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質問キーワードを埋め込むことで生成される、対話システム。
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質問キーワード及び前記第2質問キーワードの一方を含む第2文章を受け付けると、前記第1質問キーワード及び前記第2質問キーワードの前記一方を含む前記質問回答ペアに含まれる前記回答を示す応答を出力する請求項1記載の対話システム。 After outputting the second response, the processing unit receives a second sentence including one of the first question keyword and the second question keyword, and then receives the one of the first question keyword and the second question keyword. 2. The dialogue system according to claim 1, which outputs a response indicating said answer contained in said question-answer pair containing . 前記第1閾値は、3以上であり、
前記処理部は、前記数が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クエリキーワードに設定する、
請求項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クエリキーワードに設定し、前記複数の単語の別の一部を第2クエリキーワードに設定し、
質問及び前記質問に対する回答を含む質問回答ペアと、前記質問回答ペアに紐付けられた複数の質問キーワードと、の組み合わせを複数含む質問回答集を記憶し、前記複数の質問キーワードにはスコアがそれぞれ設定された第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.
請求項8記載のプログラムを記憶した記憶媒体。 A storage medium storing the program according to claim 8 .
JP2022077024A 2019-01-30 2022-05-09 Dialogue system, dialogue method, program, and storage medium Active JP7319504B2 (en)

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)

* Cited by examiner, † Cited by third party
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

Patent Citations (7)

* Cited by examiner, † Cited by third party
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