JP2018010610A - Agent device, dialog system, dialog method and program - Google Patents

Agent device, dialog system, dialog method and program Download PDF

Info

Publication number
JP2018010610A
JP2018010610A JP2017012528A JP2017012528A JP2018010610A JP 2018010610 A JP2018010610 A JP 2018010610A JP 2017012528 A JP2017012528 A JP 2017012528A JP 2017012528 A JP2017012528 A JP 2017012528A JP 2018010610 A JP2018010610 A JP 2018010610A
Authority
JP
Japan
Prior art keywords
action
dialogue
information
back end
type
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.)
Granted
Application number
JP2017012528A
Other languages
Japanese (ja)
Other versions
JP6832502B2 (en
Inventor
遠藤 充
Mitsuru Endo
充 遠藤
山上 勝義
Katsuyoshi Yamagami
勝義 山上
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.)
Panasonic Intellectual Property Management Co Ltd
Original Assignee
Panasonic Intellectual Property Management Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Panasonic Intellectual Property Management Co Ltd filed Critical Panasonic Intellectual Property Management Co Ltd
Priority to CN201710404504.3A priority Critical patent/CN107562770A/en
Priority to US15/627,350 priority patent/US11055799B2/en
Priority to EP18190248.7A priority patent/EP3438988A1/en
Priority to EP17176796.5A priority patent/EP3264301A1/en
Publication of JP2018010610A publication Critical patent/JP2018010610A/en
Application granted granted Critical
Publication of JP6832502B2 publication Critical patent/JP6832502B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

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

Abstract

PROBLEM TO BE SOLVED: To provide an efficient dialog system that can perform a large scale task based on small scale dialog control.SOLUTION: An agent 2001 that performs transfer of a dialog act which is information constituted by each of a front-end 2002 performing user interface processing and a back-end 2005 performing information processing, a dialog act type and incidental information in a dialog system 10, comprises a determination unit 200 that determines a dialog act for providing, according to the dialog act acquired from one of the front-end 2002 and the back-end 2005, and a provision unit 205 that provides the dialog act for providing which is determined by the determination unit 200 to one of the front-end 2002 and the back-end 2005, and the determination unit 200 determines the dialog act type in the dialog act for providing, not based on an incidental information sequence but based on a dialog act type sequence, in the dialog act sequentially acquired from a collection of the front-end 2002 and the back-end 2005.SELECTED DRAWING: Figure 2

Description

本発明は、ユーザと対話して情報処理を行うための対話システムと、この対話システムで用いられるエージェント装置、対話方法及びプログラムに関する。   The present invention relates to an interactive system for performing information processing by interacting with a user, and an agent device, an interactive method, and a program used in the interactive system.

従来、コンピュータ等の装置によりユーザと対話することで必要な情報を特定するシステムが知られている。このシステムでは、ユーザとの対話状態に応じて適切な制御を行う必要がある。特許文献1には、対話状態に応じてPOMDP(部分観測マルコフ決定過程:Partially Observable Markov Decision Process)モデルを用いて行動を決定する技術が開示されている。非特許文献1には、対話行為タイプと行為項目とからなる対話行為について、記載されている。   2. Description of the Related Art Conventionally, a system that identifies necessary information by interacting with a user using an apparatus such as a computer is known. In this system, it is necessary to perform appropriate control according to the state of dialogue with the user. Patent Document 1 discloses a technique for determining an action using a POMDP (Partially Observable Markov Decision Process) model according to a conversation state. Non-Patent Document 1 describes a dialogue action composed of a dialogue action type and an action item.

特開2010−129033号公報JP 2010-129033 A

Steve Young、他6名、「The Hidden Information State model: A practical framework for POMDP-based spoken dialogue management」、Computer Speech & Language 24(2010)150-174Steve Young and 6 others, “The Hidden Information State model: A practical framework for POMDP-based spoken dialogue management”, Computer Speech & Language 24 (2010) 150-174

ところで、対話システムにおいて、数千以上の結論を導くような大規模タスクを遂行するためには、効率的に対話状態に対応する制御を行う必要がある。   By the way, in order to perform a large-scale task that draws thousands or more conclusions in a dialog system, it is necessary to efficiently perform control corresponding to the dialog state.

そこで、本発明は、従来の技術より効率的に対話状態に応じた制御を行い得る対話システムを提供する。また、本発明は、その対話システムで用いられるエージェント装置、対話方法、及び、プログラムを提供する。   Therefore, the present invention provides a dialog system that can perform control according to the dialog state more efficiently than the conventional technique. The present invention also provides an agent device, a dialogue method, and a program used in the dialogue system.

上記課題を解決するために本発明の一態様に係るエージェント装置は、ユーザインタフェース処理を行うフロントエンド、及び、情報処理を行うバックエンドの各々と、対話行為タイプと付帯情報とで構成される所定対話行為形式の情報である対話行為の授受を行うエージェント装置であって、前記フロントエンド及び前記バックエンドの一方から取得した対話行為に応じて提供用の対話行為を決定する決定部と、前記決定部により決定された前記提供用の対話行為を、前記フロントエンド及び前記バックエンドの一方へ提供する提供部とを備え、前記決定部は、前記提供用の対話行為における対話行為タイプを、前記フロントエンド及び前記バックエンドの集合から逐次取得した対話行為における、付帯情報の系列に基づかず対話行為タイプの系列に基づいて、決定する。   In order to solve the above-described problem, an agent device according to an aspect of the present invention includes a predetermined configuration including a front end that performs user interface processing, a back end that performs information processing, a dialogue action type, and incidental information. An agent device that exchanges a dialogue act that is information in a dialogue act format, the decision unit deciding a providing dialogue act according to a dialogue act acquired from one of the front end and the back end, and the decision A providing unit that provides the providing interactive action determined by a unit to one of the front end and the back end, and the determining unit determines the interactive action type in the providing interactive action as the front action. In the dialogue action sequentially obtained from the end and the set of back ends, the dialogue action tie is not based on the series of incidental information. Based on the series, it is determined.

また、上記課題を解決するために本発明の一態様に係る対話システムは、上述のエージェント装置と、自然言語で表現される情報をユーザとの間で交換する前記フロントエンドと、知識ベースの検索に基づき情報の提供を行う前記バックエンドとを備える。   In order to solve the above problems, an interactive system according to an aspect of the present invention includes the agent device described above, the front end for exchanging information expressed in a natural language with a user, and a knowledge base search. And the back end for providing information based on the above.

また、上記課題を解決するために本発明の一態様に係る対話方法は、自然言語で表現される情報をユーザとの間で交換するフロントエンドと、知識ベースの検索に基づく情報の提供を行うバックエンドと、前記フロントエンド及び前記バックエンドの各々と、対話行為タイプと付帯情報とで構成される所定対話行為形式の情報である対話行為の授受を行うエージェント装置とを含む対話システムにおいて用いられる対話方法であって、前記エージェント装置が、前記フロントエンド及び前記バックエンドの一方から取得した対話行為に応じて提供用の対話行為を決定する決定ステップと、前記エージェント装置が、前記決定ステップで決定された前記提供用の対話行為を、前記フロントエンド及び前記バックエンドの一方へ提供する提供ステップとを含み、前記決定ステップでは前記提供用の対話行為における対話行為タイプを、前記フロントエンド及び前記バックエンドの集合から逐次取得した対話行為における、付帯情報の系列に基づかず対話行為タイプの系列に基づいて、決定する。   In addition, in order to solve the above problem, a dialogue method according to an aspect of the present invention provides a front end for exchanging information expressed in a natural language with a user, and provides information based on a knowledge base search. Used in a dialog system including a back end, and each of the front end and the back end, and an agent device that exchanges a dialog action that is information of a predetermined dialog action format including a dialog action type and incidental information. A dialog method, wherein the agent device determines a providing dialog action according to a dialog action acquired from one of the front end and the back end, and the agent device is determined in the determination step. A providing step for providing the provided interactive action to one of the front end and the back end; In the determining step, the dialogue action type in the providing dialogue action is not based on the series of incidental information in the dialogue action sequentially obtained from the set of the front end and the back end. Based on the decision.

また、上記課題を解決するために本発明の一態様に係るプログラムは、ユーザインタフェース処理を行うフロントエンド、及び、情報処理を行うバックエンドの各々と、対話行為タイプと付帯情報とで構成される所定対話行為形式の情報である対話行為の授受を行う対話制御処理を、コンピュータに実行させるためのプログラムであって、前記対話制御処理は、前記フロントエンド及び前記バックエンドの一方から取得した対話行為に応じて提供用の対話行為を決定する決定ステップと、前記決定ステップで決定された前記提供用の対話行為を、前記フロントエンド及び前記バックエンドの一方へ提供する提供ステップとを含み、前記決定ステップでは前記提供用の対話行為における対話行為タイプを、前記フロントエンド及び前記バックエンドの集合から逐次取得した対話行為における、付帯情報の系列に基づかず対話行為タイプの系列に基づいて、決定する。   In order to solve the above problem, a program according to an aspect of the present invention includes a front end that performs user interface processing, a back end that performs information processing, a dialogue action type, and incidental information. A program for causing a computer to execute a dialog control process for exchanging a dialog act that is information in a predetermined dialog act format, wherein the dialog control process is acquired from one of the front end and the back end. A determination step for determining a providing interactive action according to the determination, and a providing step for providing the providing interactive action determined in the determining step to one of the front end and the back end. In the step, the dialogue action type in the providing dialogue action is changed to the front end and the back environment. In sequentially acquired dialogue act from the set of de, based on the dialogue act type sequence not based on a series of supplementary information, determined.

本発明によれば、対話状態に応じた制御が効率的に行われ得る。   According to the present invention, control according to the conversation state can be performed efficiently.

実施の形態に係る対話システムが提供するサービスの態様の一例を示す概念図である。It is a conceptual diagram which shows an example of the aspect of the service which the dialogue system which concerns on embodiment provides. 実施の形態に係るデータセンタ運営会社の一例を示す概念図である。It is a conceptual diagram which shows an example of the data center operating company which concerns on embodiment. 実施の形態に係る対話システムの概略構成図である。It is a schematic block diagram of the dialogue system which concerns on embodiment. 実施の形態に係る対話システムにおける対話処理の一例を示すフローチャートである。It is a flowchart which shows an example of the dialogue process in the dialogue system which concerns on embodiment. 実施の形態に係る知識ベースの一例を示す図である。It is a figure which shows an example of the knowledge base which concerns on embodiment. 実施の形態に係る知識処理の一例を示す概念図である。It is a conceptual diagram which shows an example of the knowledge process which concerns on embodiment. 実施の形態に係る対話システムにおける対話のシーケンスの一例を示すシーケンス図である。It is a sequence diagram which shows an example of the sequence of the dialog in the dialog system which concerns on embodiment. 対話状態についての状態遷移図(其の一)である。It is a state transition diagram (the 1) about a dialog state. 対話状態についての状態遷移図(其の二)である。It is the state transition diagram (the 2) about a dialog state. 対話状態についての状態遷移図(其の三)である。It is the state transition diagram (the 3) about a dialog state. 対話状態についての状態遷移図(其の四)である。It is a state transition diagram (the 4) about a dialog state. 実施の形態に係る対話システムを用いた実験の結果を示す図である。It is a figure which shows the result of the experiment using the dialogue system which concerns on embodiment. 対話システムが提供するサービス(類型1)を示す概念図である。It is a conceptual diagram which shows the service (type 1) which a dialogue system provides. 対話システムが提供するサービス(類型2)を示す概念図である。It is a conceptual diagram which shows the service (type 2) which a dialogue system provides. 対話システムが提供するサービス(類型3)を示す概念図である。It is a conceptual diagram which shows the service (type 3) which a dialogue system provides. 対話システムが提供するサービス(類型4)を示す概念図である。It is a conceptual diagram which shows the service (type 4) which a dialogue system provides.

(本発明の基礎となった知見等)
専門知識が豊富な専門家と専門知識が乏しい一般者とが対話により情報を交換することで、両者の納得する結論としての情報を特定するタスクが遂行される場面は多い。このようなタスクの一例としては、例えば、医者と患者との間で行われる問診が挙げられる。問診では、専門知識はあるが患者の自覚症状についての情報がない医者と、専門知識は乏しいが自分の症状についての情報を、問いかけに答えることで或いは自ら発することで、提供できる患者との間で、対話によって手掛りとなる情報の量を増やして結論(診断結果)に反映する。この問診等といった、一般者であるユーザとの対話により結論としての情報を特定するタスクを、コンピュータ等の機械を用いて遂行する対話システムが検討されている。例えばPOMDPモデルによる対話制御では、音声認識、言語理解等のエラーを含んだ不確実な入力を扱うことができ、ユーザに対する確認行為等を過不足なく行うための行動選択の最適化が期待できる。
(Knowledge that became the basis of the present invention)
There are many scenes in which a task of specifying information as a conclusion that both parties are satisfied by exchanging information through dialogue between a specialist with rich expertise and a general person with little expertise. An example of such a task is an inquiry performed between a doctor and a patient. In an interview, there is a relationship between a doctor who has expertise but no information about the patient's subjective symptoms, and a patient who has limited expertise but can provide information about his or her symptoms by answering questions or by giving himself / herself. Therefore, the amount of information that becomes a clue by the dialogue is increased and reflected in the conclusion (diagnosis result). An interactive system that uses a machine such as a computer to perform a task of identifying information as a conclusion through dialogue with a user who is a general person, such as this inquiry, has been studied. For example, in the dialogue control by the POMDP model, uncertain input including errors such as speech recognition and language understanding can be handled, and it is expected that the action selection for performing the confirmation action for the user without excess or deficiency can be expected.

しかし、問診の例では、問診の結論(診断結果)となり得る病気の候補の数は、数千以上に及ぶ。つまり、患者から得られた情報に基づき、病気の候補を特定するプロセスを状態の遷移として表すには、論理的な条件分岐と結論とを含めて数千以上の状態が必要となる。対話制御に必要な状態(対話状態)の数が数千以上と多くなると、対話制御におけるユーザに対する確認行為等の行動選択の最適化のための演算負荷が増大し、対話制御のために例えば大規模なコンピュータリソースが必要となり得る。これまで、小規模の対話制御で大規模のタスクを遂行するための技術について検討がなされていなかった。   However, in the case of an interview, the number of disease candidates that can be the conclusion (diagnosis result) of the interview is several thousand or more. In other words, in order to represent a process of identifying a disease candidate as a state transition based on information obtained from a patient, several thousand or more states including a logical conditional branch and a conclusion are required. When the number of states (dialogue states) necessary for dialog control increases to several thousand or more, the computation load for optimizing action selection such as confirmation actions for the user in dialog control increases. Large computer resources may be required. Until now, no technology has been studied for performing large-scale tasks with small-scale dialog control.

そこで、小規模の対話システムにおいて大規模のタスクの遂行を可能にすべく、本願発明者らは、対話制御に係る対話状態の数を減らす方式を着想した。そして、その方式を用いて、対話状態の数を減らすことで、従来の技術より効率的に対話状態に対する制御を行い得る対話システムを提供する。また、その対話システムの一部であるエージェント装置、対話方法、及び、プログラムを提供する。   In view of this, the present inventors have conceived a method of reducing the number of dialog states related to dialog control so that a large-scale task can be performed in a small dialog system. Then, by using this method, by reducing the number of dialogue states, a dialogue system is provided that can control the dialogue state more efficiently than the conventional technology. Also provided are an agent device, a dialogue method, and a program which are a part of the dialogue system.

本発明の一態様に係るエージェント装置は、ユーザインタフェース処理を行うフロントエンド、及び、情報処理を行うバックエンドの各々と、対話行為タイプと付帯情報とで構成される所定対話行為形式の情報である対話行為の授受を行うエージェント装置であって、前記フロントエンド及び前記バックエンドの一方から取得した対話行為に応じて提供用の対話行為を決定する決定部と、前記決定部により決定された前記提供用の対話行為を、前記フロントエンド及び前記バックエンドの一方へ提供する提供部とを備え、前記決定部は、前記提供用の対話行為における対話行為タイプを、前記フロントエンド及び前記バックエンドの集合から逐次取得した対話行為における、付帯情報の系列に基づかず対話行為タイプの系列に基づいて、決定する。ここで付帯情報は上述の行為項目に相当する。この構成によると、対話行為から付帯情報を除いた対話行為タイプの系列に基づいて行動を決定する。このため、対話行為のバリエーションが多くなる要因となる付帯情報を除いて、対話行為タイプの系列から行動を決定するので、対話状態の数の低減化が可能となる。この結果として、強化学習により行動選択の最適化を行う場合における最適化の負荷が抑えられ、最適化が容易となり得る。これにより、例えば小規模の対話システムにおいて大規模のタスクを遂行可能なように、効率的に対話状態に応じた制御を行うことができるようになる。   An agent device according to an aspect of the present invention is information of a predetermined dialogue action format including a front end that performs user interface processing, a back end that performs information processing, a dialogue action type, and incidental information. An agent device that exchanges a dialogue act, wherein the decision unit decides a dialogue act for provision according to a dialogue act acquired from one of the front end and the back end, and the provision decided by the decision unit A providing unit that provides an interactive action for one of the front end and the back end, and the determining unit determines the interactive action type in the providing interactive action as a set of the front end and the back end. Determined based on interactive action type sequence, not based on incidental information sequence, That. Here, the incidental information corresponds to the action item described above. According to this configuration, an action is determined based on a series of dialogue action types obtained by removing incidental information from the dialogue action. For this reason, since the action is determined from the series of dialogue action types, except for incidental information that causes the variation of the dialogue action, the number of dialogue states can be reduced. As a result, the optimization load in the case of optimizing action selection by reinforcement learning can be suppressed, and optimization can be facilitated. As a result, for example, control according to the conversation state can be efficiently performed so that a large-scale task can be performed in a small-scale conversation system.

また、例えば、前記決定部は、前記提供用の対話行為における対話行為タイプを、過去に決定した対話行為タイプの系列にも基づいて、決定することとしてもよい。これにより、エージェント装置は、観測及び行動としての対話行為タイプの系列から行動を適切に決定し得るようになる。   For example, the determination unit may determine a dialogue action type in the providing dialogue action based on a series of dialogue action types determined in the past. As a result, the agent device can appropriately determine the action from the series of dialogue action types as observation and action.

また、前記決定部は、観測としての対話行為タイプの系列に基づいて、行動としての対話行為タイプを決定する行動決定部と、前記フロントエンド及び前記バックエンドの集合から対話行為を逐次取得し、取得した対話行為から付帯情報を分離することで対話行為タイプの系列を前記行動決定部に観測として逐次入力する分離部と、前記行動決定部で決定された対話行為タイプと前記分離部で分離された付帯情報とを合成することで提供用の対話行為を生成する合成部とを有し、前記行動決定部は、行動としての対話行為タイプの前記決定を、過去に決定した行動としての対話行為タイプの系列にも基づいて、行うこととしてもよい。これにより、エージェント装置は取得した対話行為における付帯情報を、提供する対話行為のために利用でき、行動決定部においては付帯情報に依らずに行動としての対話行為タイプを決定し得るようになる。   In addition, the determination unit, based on a series of dialogue action types as observations, an action determination unit that determines a dialogue action type as an action, and sequentially acquires a dialogue action from the set of the front end and the back end, A separation unit that sequentially inputs a series of dialogue action types as observations to the action determination unit by separating incidental information from the acquired dialogue action, and a dialogue action type determined by the action determination unit and the separation unit. A synthesizing unit that generates a providing dialogue action by synthesizing the supplementary information, and the behavior determination unit determines the dialogue action type as the behavior as a behavior decided in the past. It may be performed based on the type series. Thereby, the agent device can use the supplementary information in the acquired dialogue act for the provided dialogue act, and the behavior determining unit can determine the dialogue act type as the behavior without depending on the supplementary information.

また、前記行動決定部は、POMDP(Partially Observable Markov Decision Process)モデルに基づいて行動を決定することとしてもよい。これにより、強化学習により行動選択の最適化を行うことができる。   The behavior determination unit may determine a behavior based on a POMDP (Partially Observable Markov Decision Process) model. Thereby, optimization of action selection can be performed by reinforcement learning.

また、前記観測としての対話行為タイプは、予め定められた複数の対話行為タイプ値のいずれかを表し、前記行動としての対話行為タイプは、前記フロントエンドに向けた第1種の対話行為タイプ値と前記バックエンドに向けた第2種の対話行為タイプ値とに区別される予め定められた複数の対話行為タイプ値のいずれかを表し、前記提供部は、前記決定部により決定された提供用の対話行為における対話行為タイプが第1種及び第2種のいずれの対話行為タイプ値を表すかに基づいて、前記フロントエンド及び前記バックエンドのうち当該対話行為の提供先を選択し、選択した提供先へ当該対話行為を提供することとしてもよい。これにより、エージェント装置は、ユーザ向けのフロントエンドへの対話行為の提供のみならず、対話行為タイプによって区別してバックエンドへの対話行為の提供も行える。   Further, the dialogue action type as the observation represents one of a plurality of predetermined dialogue action type values, and the dialogue action type as the action is a first kind of dialogue action type value directed to the front end. And a plurality of predetermined interactive action type values that are distinguished from the second kind of interactive action type value for the back end, and the providing unit is for providing determined by the determining unit Based on whether the dialogue action type in the dialogue action of the first type or the second kind represents the dialogue action type value, the destination of the dialogue action is selected and selected from the front end and the back end. It is good also as providing the said dialog act to a provision place. As a result, the agent device can provide not only the dialogue action to the front end for the user but also the dialogue action to the back end by distinguishing according to the dialogue action type.

また、前記付帯情報はキーワードを表すこととしてもよい。これにより、多様な情報を表し得るキーワード(付帯情報)を用いた多様な対話が可能となるにも関わらず、対話行為から付帯情報を除いた対話行為タイプに基づいて行動を決定するので、対話状態の数の低減化が可能となる。   Further, the incidental information may represent a keyword. As a result, although various conversations using keywords (accompanying information) that can represent various information are possible, the action is determined based on the dialogue action type that excludes the incidental information from the dialogue action. The number of states can be reduced.

また、本発明の一態様に係る対話システムは、上述のエージェント装置と、自然言語で表現される情報をユーザとの間で交換する前記フロントエンドと、知識ベースの検索に基づき情報の提供を行う前記バックエンドとを備える。これにより、例えば、症状についての質問により病気を特定する問診タスク等といった専門知識を必要とするタスクを、実現し得る。そして、このようなタスクのための対話(つまり対話行為の授受)において、対話行為のバリエーションが多くなる要因となる付帯情報を除いて、対話行為タイプの系列から行動を決定するので、対話状態の数の低減化が可能となる。   In addition, a dialogue system according to an aspect of the present invention provides information based on the above-described agent device, the front end for exchanging information expressed in natural language with a user, and a knowledge base search. The back end. Thereby, for example, a task that requires specialized knowledge such as an inquiry task for identifying a disease by a question about a symptom can be realized. And in the dialogue for such tasks (that is, the exchange of dialogue acts), the behavior is determined from the series of dialogue act types except for incidental information that causes the variation of the dialogue act. The number can be reduced.

また、例えば、前記付帯情報は前記知識ベースの検索のために利用可能なキーワードを表し、前記バックエンドは、前記エージェント装置から取得した対話行為における付帯情報が表すキーワードを用いて前記知識ベースの検索処理を行い、検索処理の結果に基づいて生成した対話行為を前記エージェント装置に提供することとしてもよい。これにより、知識ベースの検索に利用可能な、ユーザから取得されるキーワードが多様であっても、対話状態の数の低減化が可能となり、例えば強化学習によって行動選択(対話行為の選択)の最適化等が容易に行えるようになり得る。   Also, for example, the incidental information represents a keyword that can be used for the search of the knowledge base, and the back end uses the keyword represented by the incidental information in the interactive action acquired from the agent device to search the knowledge base. It is good also as providing the said agent apparatus with the interactive action produced | generated based on the result of the search process. This makes it possible to reduce the number of dialogue states even if there are a variety of keywords that can be used for knowledge-based searches and acquired from the user. Can be easily performed.

また、前記バックエンドは、前記知識ベースの検索処理の結果が充分に絞り込まれたか否かを判定し、充分に絞り込まれたと判定した場合には当該結果を表す対話行為を前記エージェント装置に提供し、充分に絞り込まれていないと判定した場合には前記検索処理の結果を絞り込むために有効なキーワードを表す対話行為を前記エージェント装置に提供することとしてもよい。これにより、所望の情報を特定するための絞込みを対話的に行えるようになり得る。   Further, the back end determines whether or not the result of the knowledge base search process has been sufficiently narrowed down, and when it is determined that the result has been sufficiently narrowed down, provides the agent device with an interactive action representing the result. When it is determined that the search has not been sufficiently narrowed down, an interactive action representing a valid keyword may be provided to the agent device in order to narrow down the result of the search process. Thereby, narrowing down for specifying desired information can be performed interactively.

また、本発明の一態様に係る対話方法は、自然言語で表現される情報をユーザとの間で交換するフロントエンドと、知識ベースの検索に基づく情報の提供を行うバックエンドと、前記フロントエンド及び前記バックエンドの各々と、対話行為タイプと付帯情報とで構成される所定対話行為形式の情報である対話行為の授受を行うエージェント装置とを含む対話システムにおいて用いられる対話方法であって、前記エージェント装置が、前記フロントエンド及び前記バックエンドの一方から取得した対話行為に応じて提供用の対話行為を決定する決定ステップと、前記エージェント装置が、前記決定ステップで決定された前記提供用の対話行為を、前記フロントエンド及び前記バックエンドの一方へ提供する提供ステップとを含み、前記決定ステップでは前記提供用の対話行為における対話行為タイプを、前記フロントエンド及び前記バックエンドの集合から逐次取得した対話行為における、付帯情報の系列に基づかず対話行為タイプの系列に基づいて、決定する。これにより、対話行為のバリエーションが多くなる要因となる付帯情報を除いて、対話行為タイプの系列から行動を決定するので、対話状態の数の低減化が可能となり、効率的に対話状態に応じた制御を行うことができるようになる。   The interactive method according to one aspect of the present invention includes a front end for exchanging information expressed in a natural language with a user, a back end for providing information based on a knowledge base search, and the front end. And a dialogue method used in a dialogue system including each of the back ends, and an agent device that exchanges a dialogue act which is information of a predetermined dialogue act type composed of a dialogue act type and incidental information, A determining step in which an agent device determines a providing dialogue action in accordance with a dialogue act acquired from one of the front end and the back end; and the providing device determines the providing dialogue determined in the determining step. Providing an action to one of the front end and the back end; and In the dialog, the interactive action type in the providing interactive action is determined based on the interactive action type sequence not based on the accompanying information sequence in the interactive action sequentially obtained from the set of the front end and the back end. . As a result, actions are determined from a series of dialogue action types, except for incidental information that causes a large variation in dialogue actions, so the number of dialogue states can be reduced, and the number of dialogue states can be reduced efficiently. Control can be performed.

また、例えば、前記決定ステップは、前記フロントエンド及び前記バックエンドの集合から対話行為を逐次取得し、取得した対話行為における付帯情報と対話行為タイプとを分離する分離サブステップと、前記分離サブステップで分離された対話行為タイプを観測とし、当該観測に基づいて、観測に対応して行動を決定するための基準となる信念状態情報を参照して、行動としての対話行為タイプを決定する行動決定サブステップと、前記行動決定サブステップで決定された対話行為タイプと前記分離サブステップで分離された付帯情報とを合成することで提供用の対話行為を生成する合成サブステップと、前記分離サブステップで分離された対話行為タイプの系列である観測と、前記行動決定サブステップで決定された対話行為タイプの系列である行動とに応じて前記信念状態情報を更新する更新ステップとを含むこととしてもよい。これにより、付帯情報を用いずに対話行為タイプの系列によって効率的に信念状態を更新し得る。   Further, for example, the determining step sequentially acquires dialogue actions from the set of the front end and the back end, and separates sub-steps for separating incidental information and dialogue action types in the obtained dialogue actions; and the separation sub-steps The action decision that determines the dialogue action type as an action by using the dialogue action type separated in step 1 as an observation and referring to the belief state information that is the standard for deciding the action corresponding to the observation based on the observation. A sub-step, a synthesizing sub-step for generating a dialogue act for provision by synthesizing the dialogue act type determined in the action determining sub-step and the incidental information separated in the separating sub-step; and the separating sub-step And a dialogue action type system determined in the action determination substep. It may include an update step of updating the belief state information in response to the actions and is. As a result, the belief state can be efficiently updated by the interactive action type sequence without using the incidental information.

また、本発明の一態様に係るプログラムは、ユーザインタフェース処理を行うフロントエンド、及び、情報処理を行うバックエンドの各々と、対話行為タイプと付帯情報とで構成される所定対話行為形式の情報である対話行為の授受を行う対話制御処理を、コンピュータに実行させるためのプログラムであって、前記対話制御処理は、前記フロントエンド及び前記バックエンドの一方から取得した対話行為に応じて提供用の対話行為を決定する決定ステップと、前記決定ステップで決定された前記提供用の対話行為を、前記フロントエンド及び前記バックエンドの一方へ提供する提供ステップとを含み、前記決定ステップでは前記提供用の対話行為における対話行為タイプを、前記フロントエンド及び前記バックエンドの集合から逐次取得した対話行為における、付帯情報の系列に基づかず対話行為タイプの系列に基づいて、決定する。このプログラムをコンピュータにインストールすれば、コンピュータが対話エージェントとしての装置として機能し、対話行為のバリエーションが多くなる要因となる付帯情報を除いて、対話行為タイプの系列から行動を決定するので、対話状態の数の低減化が可能となる。これにより、強化学習により行動選択の最適化を行う場合における最適化の負荷が抑えられ、最適化が容易となり得る。   Further, the program according to an aspect of the present invention is information on a predetermined dialogue action format including a front end that performs user interface processing and a back end that performs information processing, a dialogue action type, and incidental information. A program for causing a computer to execute a dialog control process for sending / receiving a certain dialog action, wherein the dialog control process is a dialog for providing according to a dialog action acquired from one of the front end and the back end. A determination step of determining an action; and a providing step of providing the providing interactive action determined in the determining step to one of the front end and the back end, wherein the providing step includes the providing interaction The dialogue action type in the action is sequentially acquired from the set of the front end and the back end. In dialog act, on the basis of the dialogue act type sequence not based on a series of supplementary information, determined. If this program is installed in a computer, the computer functions as a device as a dialog agent, and the action is determined from the series of dialog action types except for incidental information that causes variations in dialog action. Can be reduced. Thereby, the optimization load in the case of optimizing action selection by reinforcement learning can be suppressed, and optimization can be facilitated.

なお、これらの包括的又は具体的な態様は、システム、方法、集積回路、コンピュータプログラム又はコンピュータで読み取り可能なCD−ROM等の記録媒体で実現されてもよく、システム、方法、集積回路、コンピュータプログラム又は記録媒体の任意な組み合わせで実現されてもよい。   Note that these comprehensive or specific aspects may be realized by a system, method, integrated circuit, computer program, or recording medium such as a computer-readable CD-ROM, and the system, method, integrated circuit, computer. You may implement | achieve with arbitrary combinations of a program or a recording medium.

以下、図面を参照して本発明の実施の形態を詳細に説明する。なお、以下で説明する実施の形態は、いずれも本発明の包括的又は具体的な一例を示すものである。以下の実施の形態で示される数値、形状、構成要素、構成要素の配置、ステップ、ステップの順序等は、一例であって本発明を限定するものではない。また、以下の実施の形態における構成要素のうち、独立請求項に記載されていない構成要素については、任意に付加可能な構成要素である。また、各図は、模式図であり、必ずしも厳密に図示されたものではない。   Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. Note that each of the embodiments described below shows a comprehensive or specific example of the present invention. The numerical values, shapes, components, arrangement of components, steps, order of steps, and the like shown in the following embodiments are merely examples, and do not limit the present invention. In addition, among the constituent elements in the following embodiments, constituent elements that are not described in the independent claims can be arbitrarily added. Each figure is a mimetic diagram and is not necessarily illustrated strictly.

(提供するサービスの全体像)
まず、本実施の形態における対話システムが提供するサービスの態様について説明する。
(Overview of services provided)
First, an aspect of a service provided by the interactive system in the present embodiment will be described.

図1Aは、本実施の形態における対話システム10が提供するサービスの態様の一例を示す図である。対話システム10は、グループ1100、データセンタ運営会社1110及びサービスプロバイダ1120を備える。   FIG. 1A is a diagram illustrating an example of a service provided by the interactive system 10 according to the present embodiment. The dialogue system 10 includes a group 1100, a data center operating company 1110, and a service provider 1120.

グループ1100は、例えば企業、団体又は家庭等の施設(例えばビルディング、住宅等)であり、その規模を問わない。グループ1100は、機器1101及びホームゲートウェイ1102を備える。機器1101は、ユーザと何らかの方法で情報を交換するためのユーザインタフェースを有する。機器1101は、例えば、インターネットと接続可能な機器(例えば、スマートフォン、パーソナルコンピュータ(PC)、テレビ等)である。なお、機器1101は、それ自身ではインターネットと接続不可能な機器(例えば、洗濯機、冷蔵庫等)であってもよく、ホームゲートウェイ1102を介してインターネットと接続可能となる機器であってもよい。なお、ホームゲートウェイ1102が必要ない場合もある。ユーザ1010は、機器1101を使用する。機器1101が、インターネットに無線接続可能で携帯可能な機器(例えばスマートフォン、ノートPC等)であってもよく、この場合には、ユーザ1010及び機器1101は、必ずしもグループ1100内に所在していなくてもよい。なお、機器1101は、1台の機器に限られず、機器1101が、複数台の機器により構成されているとしてもよい。   The group 1100 is, for example, a facility such as a company, an organization, or a home (for example, a building, a house, etc.), and may be of any size. The group 1100 includes a device 1101 and a home gateway 1102. The device 1101 has a user interface for exchanging information with the user in some way. The device 1101 is, for example, a device that can be connected to the Internet (for example, a smartphone, a personal computer (PC), a television, or the like). The device 1101 itself may be a device that cannot be connected to the Internet (for example, a washing machine, a refrigerator, or the like), or may be a device that can be connected to the Internet via the home gateway 1102. Note that the home gateway 1102 may not be necessary. A user 1010 uses the device 1101. The device 1101 may be a portable device that can be wirelessly connected to the Internet (for example, a smartphone, a notebook PC, etc.). In this case, the user 1010 and the device 1101 are not necessarily located in the group 1100. Also good. Note that the device 1101 is not limited to a single device, and the device 1101 may include a plurality of devices.

データセンタ運営会社1110は、クラウドサーバ1111を備える。クラウドサーバ1111は、インターネットを介して様々な機器と連携するコンピュータであり、例えば仮想化サーバである。クラウドサーバ1111は、例えば、通常のデータベース管理ツール等で扱うことが困難な巨大なデータ(ビッグデータ)等を管理する。データセンタ運営会社1110は、データの管理、クラウドサーバ1111の管理等を行っている。なお、データセンタ運営会社1110は、データの管理又はクラウドサーバ1111の管理のみを行っている管理会社に限られず、他の事業を併せて行っている会社であってもよく、例えば、機器1101を開発又は製造している機器メーカであってもよい。また、データセンタ運営会社1110は一つの会社に限られず、例えば、図1Bに示すように、機器メーカ及び管理会社が共同又は分担してデータの管理又はクラウドサーバ1111の管理を行っている場合は、機器メーカ及び管理会社の両者がデータセンタ運営会社1110に該当し得る。   The data center operating company 1110 includes a cloud server 1111. The cloud server 1111 is a computer that cooperates with various devices via the Internet, and is, for example, a virtualization server. The cloud server 1111 manages, for example, huge data (big data) that is difficult to handle with a normal database management tool or the like. The data center operating company 1110 performs data management, cloud server 1111 management, and the like. Note that the data center operating company 1110 is not limited to a management company that only manages data or manages the cloud server 1111, and may be a company that also performs other businesses. It may be an equipment manufacturer that is developing or manufacturing. Further, the data center operating company 1110 is not limited to a single company. For example, as shown in FIG. 1B, when a device manufacturer and a management company jointly or share data management or management of the cloud server 1111 Both the device manufacturer and the management company can correspond to the data center operating company 1110.

サービスプロバイダ1120は、サーバ1121を備える。サーバ1121は、例えば1台又は複数台のコンピュータで実現され、その規模は問わず、記憶媒体として大容量のハードディスク等のストレージを備えてもよいし、例えば、PC内のメモリ等しか備えていなくてもよい。なお、サーバ1121が必ずしも記憶媒体を備えていなくてもよい。   The service provider 1120 includes a server 1121. The server 1121 is realized by, for example, one or a plurality of computers, and may be provided with a storage such as a large-capacity hard disk as a storage medium regardless of the scale, for example, only provided with a memory in a PC. May be. Note that the server 1121 does not necessarily include a storage medium.

次に、上述の態様の対話システム10における情報の流れを説明する。   Next, the flow of information in the dialog system 10 of the above-described aspect will be described.

まず、グループ1100の機器1101は、ユーザインタフェースを介して取得した入力情報を、直接或いはホームゲートウェイ1102を介してデータセンタ運営会社1110のクラウドサーバ1111に送信する。機器1101においてユーザ1010による入力情報の入力に用いられるユーザインタフェースは、例えば、キーボード、タッチパネル、或いは、既存の音声認識技術を用いた音声入力装置等である。クラウドサーバ1111は、機器1101からの入力情報を取得する。   First, the device 1101 of the group 1100 transmits the input information acquired via the user interface to the cloud server 1111 of the data center operating company 1110 directly or via the home gateway 1102. The user interface used for inputting input information by the user 1010 in the device 1101 is, for example, a keyboard, a touch panel, or a voice input device using existing voice recognition technology. The cloud server 1111 acquires input information from the device 1101.

次に、データセンタ運営会社1110のクラウドサーバ1111は、機器1101からの入力情報に基づく情報をサービスプロバイダ1120のサーバ1121に送信する。この入力情報に基づく情報は、入力情報の少なくとも一部と同一の情報を含むものであっても、その同一の情報を含まず入力情報に対して演算等の処理を施した結果としての情報であってもよい。また、この入力情報に基づく情報の送信の単位は、いかなる単位であってもよい。サーバ1121は、クラウドサーバ1111からの情報を取得する。   Next, the cloud server 1111 of the data center operating company 1110 transmits information based on the input information from the device 1101 to the server 1121 of the service provider 1120. The information based on the input information is information as a result of performing processing such as calculation on the input information without including the same information even if the information includes the same information as at least a part of the input information. There may be. The unit of information transmission based on this input information may be any unit. The server 1121 acquires information from the cloud server 1111.

そして、サービスプロバイダ1120のサーバ1121は、クラウドサーバ1111からの情報に対応して、ユーザへの提供用の情報を特定して、その提供用の情報をユーザ1010に提供すべく、クラウドサーバ1111に送信する。クラウドサーバ1111は、サーバ1121からの提供用の情報を機器1101に転送する又はその提供用の情報に対して演算等の処理を施した結果としての情報を機器1101に送信する。これにより、機器1101のユーザインタフェースからユーザ1010に情報が提供される。機器1101においてユーザ1010への情報の提供に用いられるユーザインタフェースは、例えば、ディスプレイ、或いは、既存の音声合成技術を用いた音声出力装置等である。   Then, the server 1121 of the service provider 1120 specifies information for provision to the user in response to the information from the cloud server 1111, and sends the provision information to the user 1010 to the cloud server 1111. Send. The cloud server 1111 transmits information to be provided from the server 1121 to the device 1101 or transmits information to the device 1101 as a result of processing such as computation on the information to be provided. As a result, information is provided to the user 1010 from the user interface of the device 1101. A user interface used for providing information to the user 1010 in the device 1101 is, for example, a display or a voice output device using an existing voice synthesis technique.

なお、サーバ1121が、クラウドサーバ1111を介さずに機器1101と通信を行うことで、ユーザ1010からの入力情報の取得、及び、提供用の情報の提供を行うこととしてもよい。また、対話システム10は、上述した例と異なる態様であってもよい。例えば、対話システム10において、データセンタ運営会社1110及びサービスプロバイダ1120を省いてもよく、機器1101がユーザから取得した入力情報に基づいて、提供用の情報を特定して、その提供用の情報をユーザに提供してもよい。   The server 1121 may acquire input information from the user 1010 and provide information for provision by communicating with the device 1101 without using the cloud server 1111. Further, the dialog system 10 may be in a mode different from the above-described example. For example, in the interactive system 10, the data center operating company 1110 and the service provider 1120 may be omitted. Based on the input information acquired by the device 1101 from the user, the providing information is specified, and the providing information is displayed. It may be provided to the user.

(実施の形態1)
(構成)
以下、一例としてPOMDPモデルを用いた対話システム10においてユーザと情報を交換する対話方法を行うための構成について説明する。
(Embodiment 1)
(Constitution)
Hereinafter, as an example, a configuration for performing a dialogue method for exchanging information with a user in the dialogue system 10 using the POMDP model will be described.

一般的に、POMDPモデルは、状態の集合Sと、行動の集合Aと、観測の集合Zと、状態遷移行列Tと、観測行列Oと、報酬行列Rと、信念状態の初期状態B0というモデル要素で定義される。ある環境内でエージェントが現在の状態を観測して取るべき行動を決定するPOMDPモデルを用いた従来の対話システムでは、ユーザを環境、システム(コンピュータシステム)をエージェントと対応づけ、ユーザの対話行為を観測とし、システムの対話行為を行動とみなす。これに対して、対話システム10では、1つのエージェントと2つの環境という構造でのモデル化を行う。   In general, the POMDP model is a model of a state set S, an action set A, an observation set Z, a state transition matrix T, an observation matrix O, a reward matrix R, and a belief state initial state B0. Defined by element. In a conventional dialogue system using the POMDP model in which an agent observes the current state in a certain environment and decides an action to be taken, the user is associated with the environment, the system (computer system) is associated with the agent, and the user's dialogue is performed. As an observation, the dialogue action of the system is regarded as an action. On the other hand, the dialog system 10 performs modeling with a structure of one agent and two environments.

図2は、対話システム10の概略構成図である。   FIG. 2 is a schematic configuration diagram of the dialogue system 10.

図2に示すように、対話システム10は、エージェント2001と、第1の環境としてのフロントエンド2002と、第2の環境としてのバックエンド2005と、知識ベース206とを備える。   As shown in FIG. 2, the dialogue system 10 includes an agent 2001, a front end 2002 as a first environment, a back end 2005 as a second environment, and a knowledge base 206.

エージェント2001は、対話エージェントとしての装置(エージェント装置)である。エージェント2001は、例えば、プロセッサ(マイクロプロセッサ)、メモリ等を備えるコンピュータに実装され得る。具体的には、例えば、メモリに格納されたプログラムをプロセッサが実行すること等によりエージェント2001の機能が実現され得る。エージェント2001は、フロントエンド2002とバックエンド2005との間で対話行為の交換を仲介する。即ち、エージェント2001は、フロントエンド2002及びバックエンド2005の各々と、対話行為の授受を行う。対話行為は、対話行為タイプと付帯情報とで構成される所定形式(所定対話行為形式)の情報である。   The agent 2001 is a device (agent device) as a dialogue agent. The agent 2001 can be implemented in a computer including a processor (microprocessor), a memory, and the like, for example. Specifically, for example, the function of the agent 2001 can be realized by a processor executing a program stored in a memory. The agent 2001 mediates the exchange of dialogue actions between the front end 2002 and the back end 2005. That is, the agent 2001 exchanges a dialogue action with each of the front end 2002 and the back end 2005. The dialogue action is information in a predetermined format (predetermined dialogue action format) composed of a dialogue action type and incidental information.

フロントエンド2002は、ユーザインタフェース処理を行う装置であり、自然言語で表現される情報をユーザとの間で交換する。フロントエンド2002は、例えば、エージェント2001と同一又は別のコンピュータに実装され得る。例えば、コンピュータのユーザインタフェース、及び、コンピュータのメモリに格納されたプログラムを実行するプロセッサ等により、フロントエンド2002の機能が実現され得る。   The front end 2002 is a device that performs user interface processing, and exchanges information expressed in a natural language with a user. The front end 2002 may be implemented on the same computer as the agent 2001 or on a different computer, for example. For example, the functions of the front end 2002 can be realized by a computer user interface and a processor that executes a program stored in a memory of the computer.

バックエンド2005は、検索処理等の情報処理を行う装置であり、知識ベース206への問い合わせ(検索処理)に基づく情報の提供を含む知識処理を行う。バックエンド2005は、例えば、エージェント2001と同一又は別のコンピュータに実装され得る。例えば、コンピュータの通信インタフェース、及び、コンピュータのメモリに格納されたプログラムを実行するプロセッサ等により、バックエンド2005の機能が実現され得る。   The back end 2005 is a device that performs information processing such as search processing, and performs knowledge processing including provision of information based on an inquiry (search processing) to the knowledge base 206. The back end 2005 can be implemented on, for example, the same computer as the agent 2001 or a different computer. For example, the functions of the back end 2005 can be realized by a communication interface of a computer and a processor that executes a program stored in a memory of the computer.

エージェント2001と、フロントエンド2002及びバックエンド2005の各々とが、互いに離れた複数の装置で実現される場合には、エージェント2001と、フロントエンド2002及びバックエンド2005の各々とは直接又は他装置を介して通信する。   When the agent 2001 and each of the front end 2002 and the back end 2005 are realized by a plurality of devices separated from each other, the agent 2001 and each of the front end 2002 and the back end 2005 are directly or other devices. Communicate through.

知識ベース206は、情報を保持する装置であり、例えば、情報を表すデータを構造化して管理するデータベース管理装置である。知識ベース206は、例えば、バックエンド2005と同一又は別のコンピュータに実装され得る。例えば、コンピュータにおけるメモリ、ハードディスク等の記憶媒体等によって知識ベース206が実現され得る。問診タスクを遂行するための対話システム10においては、知識ベース206は、問診タスクの遂行に有用な情報(例えば症状と病気とに関連する情報)を保持している。知識ベース206は複数台の装置で構成されていてもよい。   The knowledge base 206 is a device that holds information. For example, the knowledge base 206 is a database management device that manages data representing information in a structured manner. The knowledge base 206 can be implemented, for example, on the same computer as the back end 2005 or on a different computer. For example, the knowledge base 206 can be realized by a storage medium such as a memory or a hard disk in a computer. In the interactive system 10 for performing the inquiry task, the knowledge base 206 holds information useful for executing the inquiry task (for example, information related to symptoms and illness). The knowledge base 206 may be composed of a plurality of devices.

図2では、問診タスクを遂行するための対話システム10における対話行為を例示している。観測2003は、フロントエンド2002からエージェント2001が取得する対話行為の例である。観測2006は、バックエンド2005からエージェント2001が取得する対話行為の例である。行動2004は、エージェント2001がフロントエンド2002へ提供する対話行為の例である。また、行動2007は、エージェント2001がバックエンド2005へ提供する対話行為の例である。観測2003、観測2006、行動2004、及び、行動2007は、いずれも所定対話行為形式の情報(対話行為)の例である。この例での文字列情報の対話行為において、括弧より前の部分(例えば「Provide」、「Confirm」等)が対話行為タイプであり、括弧内の部分(例えば「めまい」、「頭痛」等)が付帯情報である。対話行為タイプは、例えば、予め定められた「Provide」、「Confirm」、「Check」、「push」等といった複数の値(対話行為タイプ値)のいずれかを表し、対話行為タイプ値は例えば文字列で表される。この例では対話行為タイプ値を、英単語で表現しているがこれは一例に過ぎず、いかなる言語或いは規則に基づいて表現してもよい。付帯情報は、例えば、キーワードを示す文字列情報である。   FIG. 2 illustrates an interactive action in the interactive system 10 for performing an inquiry task. Observation 2003 is an example of an interactive action acquired by the agent 2001 from the front end 2002. An observation 2006 is an example of an interactive action acquired by the agent 2001 from the back end 2005. The action 2004 is an example of an interactive action that the agent 2001 provides to the front end 2002. An action 2007 is an example of an interactive action provided by the agent 2001 to the back end 2005. Observation 2003, observation 2006, action 2004, and action 2007 are all examples of information (dialogue action) in a predetermined dialogue action format. In the dialogue action of the character string information in this example, the part before the parenthesis (eg “Provide”, “Confirm”, etc.) is the dialogue action type, and the part in the parenthesis (eg “vertigo”, “headache”, etc.) Is incidental information. The dialogue action type represents one of a plurality of values (dialogue action type values) such as “Provide”, “Confirm”, “Check”, “push”, etc., which are set in advance. Represented by a column. In this example, the dialogue action type value is expressed in English words, but this is only an example, and may be expressed based on any language or rule. The incidental information is, for example, character string information indicating a keyword.

対話システム10においては、エージェント2001と、フロントエンド2002及びバックエンド2005の集合との間で授受される対話行為の系列に対応して、タスクが遂行される。問診タスクの例では、ユーザから対話的にフロントエンド2002を介してエージェント2001に収集された情報に基づき、バックエンド2005で病気の特定が行われる。   In the dialogue system 10, tasks are performed in accordance with a series of dialogue actions exchanged between the agent 2001 and a set of the front end 2002 and the back end 2005. In the example of the inquiry task, the back end 2005 identifies a disease based on information collected by the agent 2001 through the front end 2002 interactively from the user.

以下、エージェント2001、フロントエンド2002、及び、バックエンド2005の、より詳細な構成について説明する。   Hereinafter, more detailed configurations of the agent 2001, the front end 2002, and the back end 2005 will be described.

図2に示すように、フロントエンド2002は、ユーザインタフェース処理に係る入力処理部201と出力処理部208とを備える。エージェント2001は、決定部200と提供部205とを備える。バックエンド2005は知識処理部207を備える。   As shown in FIG. 2, the front end 2002 includes an input processing unit 201 and an output processing unit 208 related to user interface processing. The agent 2001 includes a determining unit 200 and a providing unit 205. The back end 2005 includes a knowledge processing unit 207.

決定部200は、フロントエンド2002及びバックエンド2005の一方から取得した対話行為に応じて、フロントエンド2002及びバックエンド2005の一方への提供用の対話行為を決定する機能を担う。この機能を実現すべく決定部200は、分離部202と行動決定部203と合成部204とを備える。なお、決定部200は、提供用の対話行為における対話行為タイプを、過去に決定した対話行為タイプの系列にも基づいて、決定するように構成され得る。   The determination unit 200 has a function of determining an interactive action for provision to one of the front end 2002 and the back end 2005 according to the interactive action acquired from one of the front end 2002 and the back end 2005. In order to realize this function, the determination unit 200 includes a separation unit 202, an action determination unit 203, and a synthesis unit 204. Note that the determination unit 200 may be configured to determine the interactive action type in the providing interactive action based on a series of interactive action types determined in the past.

入力処理部201は、例えば、キーボード、タッチパネル、或いは、音声入力装置等のユーザインタフェース等によるユーザからの入力である自然言語表現(文字列)を既存の自然言語処理技術(例えば言語理解技術)により対話行為に変換し、対話行為に信頼度を付けて出力する。これにより、対話行為及び信頼度が分離部202により取得される。入力処理部201は、ユーザの入力が音声である場合に入力された音声を音声認識技術により文字化する前処理を行うこととしてもよい。   The input processing unit 201 uses, for example, a natural language expression (character string) that is input from a user through a user interface such as a keyboard, a touch panel, or a voice input device, using an existing natural language processing technology (for example, a language understanding technology). Convert to a dialogue act and output the dialogue act with confidence. Thereby, the dialogue action and the reliability are acquired by the separation unit 202. The input processing unit 201 may perform preprocessing for converting the input voice into text using a voice recognition technique when the user input is voice.

分離部202は、フロントエンド2002の入力処理部201或いはバックエンド2005の知識処理部207から取得した対話行為を、対話行為タイプと付帯情報とに分離する。例えば、対話行為「Provide(頭痛)」は、対話行為タイプ「Provide」と付帯情報「頭痛」とに分離される。分離部202は、分離した対話行為タイプを行動決定部203に入力する。即ち、分離部202は、フロントエンド2002及びバックエンド2005の集合から対話行為を逐次取得し、取得した対話行為から付帯情報を分離することで対話行為タイプの系列を行動決定部203に観測として逐次入力する。また、分離部202は、分離した付帯情報を合成部204へ入力する。   The separation unit 202 separates the dialogue action acquired from the input processing unit 201 of the front end 2002 or the knowledge processing unit 207 of the back end 2005 into a dialogue action type and incidental information. For example, the dialogue action “Provide (headache)” is separated into a dialogue action type “Provide” and accompanying information “headache”. The separation unit 202 inputs the separated dialogue action type to the action determination unit 203. That is, the separation unit 202 sequentially acquires the dialogue action from the set of the front end 2002 and the back end 2005, and separates the incidental information from the acquired dialogue action, so that the series of dialogue action types is sequentially observed as the observation by the action determination unit 203. input. Further, the separation unit 202 inputs the separated incidental information to the synthesis unit 204.

行動決定部203は、POMDPモデルを用いた既存の行動決定技術により、観測として逐次入力される対話行為タイプの系列に基づいて、行動としての対話行為タイプを決定して出力する。行動決定部203により例えば、対話行為タイプ「push」が決定され、出力される。POMDPモデルで参照される方策(policy)の学習には既存の技術を利用し得る。なお、POMDPで扱う状態の確率分布(信念状態とも称する)が、0か1の値しかとらないケースでは、モデルをMDP(マルコフ決定過程:Markov Decision Process)モデルとみなすことができる。つまり行動決定部203による行動の決定には、MDPモデルによるものも含まれる。これらのモデル(POMDPモデル、MDPモデル)では、選択的な行動決定のために参照される方策の最適化を、強化学習(Reinforcement Learning)によって行うことができる。なお、行動決定部203では、観測に基づいて、信念状態及び方策を参照して、行動を決定する。行動決定部203は、この信念状態を示す情報としての信念状態情報を保持しており、観測と決定した行動とに応じて信念状態情報を更新し得る。また、行動決定部203は、決定した行動としての対話行為タイプの履歴を保持してもよい。そして、行動決定部203は、行動としての対話行為タイプの決定を、過去に決定した行動としての対話行為タイプの系列にも基づいて行うこととしてもよい。   The action determination unit 203 determines and outputs a dialog action type as an action based on a series of dialog action types sequentially input as observations by an existing action determination technique using a POMDP model. For example, the action determining unit 203 determines and outputs the dialogue action type “push”. Existing techniques can be used to learn the policies referenced in the POMDP model. In the case where the probability distribution (also referred to as belief state) of the state handled by POMDP takes only a value of 0 or 1, the model can be regarded as an MDP (Markov Decision Process) model. That is, the action determination by the action determination unit 203 includes an MDP model. In these models (POMDP model, MDP model), it is possible to optimize a policy referred to for selective action determination by reinforcement learning (Reinforcement Learning). Note that the action determination unit 203 determines an action with reference to the belief state and the policy based on the observation. The action determination unit 203 holds belief state information as information indicating the belief state, and can update the belief state information according to the observation and the determined action. Moreover, the action determination unit 203 may hold a history of dialog action types as the determined actions. And the action determination part 203 is good also as determining the dialog action type as an action based also on the series of the dialog action type as an action determined in the past.

合成部204は、分離部202で分離された対話行為タイプに基づいて行動決定部203で決定されて出力された対話行為タイプと、分離部202で分離された付帯情報とを合成することで、提供用の対話行為を生成して出力する。合成部204により、例えば、対話行為「push(頭痛)」が出力される。   The combining unit 204 combines the interactive action type determined and output by the action determining unit 203 based on the interactive action type separated by the separating unit 202 and the incidental information separated by the separating unit 202, Generate and output an interactive action for provision. For example, the synthesizing unit 204 outputs a dialogue action “push (headache)”.

提供部205は、決定部200により決定された提供用の対話行為を、フロントエンド2002及びバックエンド2005の一方へ提供する機能を担う。提供部205は、合成部204から出力された対話行為の出力先となる環境を、フロントエンド2002及びバックエンド2005のいずれかに切り替え得る。具体的には、提供部205は、提供用の対話行為の出力先を、出力処理部208にすべきか、知識処理部207にすべきかを、対話行為の出力先を区別するために予め定められた基準に基づいて判定する。予め定め得られた基準は、例えば、対話行為の先頭の文字が大文字か小文字かにより出力先を区別する基準である。提供部205は、例えば行動2004で示すように提供用の対話行為の先頭の文字(つまり対話行為タイプの先頭の文字)が大文字であればその対話行為を出力処理部208に出力する。また、提供部205は、例えば行動2007で示すように提供用の対話行為の先頭の文字(つまり対話行為タイプの先頭の文字)が小文字であればその対話行為を知識処理部207に出力する。   The providing unit 205 has a function of providing the providing interactive action determined by the determining unit 200 to one of the front end 2002 and the back end 2005. The providing unit 205 can switch the environment that is the output destination of the interactive action output from the combining unit 204 to either the front end 2002 or the back end 2005. Specifically, the providing unit 205 determines in advance whether the output destination of the interactive action for provision should be the output processing unit 208 or the knowledge processing unit 207 in order to distinguish the output destination of the interactive action. Judgment based on the criteria. The criterion that has been determined in advance is, for example, a criterion that distinguishes the output destination depending on whether the first character of the dialogue action is uppercase or lowercase. For example, as shown by action 2004, providing section 205 outputs the interactive action to output processing section 208 if the first character of the providing interactive action (that is, the first character of the interactive action type) is capitalized. Further, for example, as shown by action 2007, providing section 205 outputs the interactive action to knowledge processing section 207 if the first character of the interactive action for provision (that is, the first letter of the interactive action type) is lowercase.

出力処理部208は、提供部205から出力された対話行為の示す意味表現を、応答文生成技術(例えば既存の文生成技術)によって、応答文に変換して、文字列としてユーザに提供する。文字列のユーザへの提供は、例えば、ディスプレイ、音声出力装置等のユーザインタフェースによって行われる。出力処理部208は、ユーザへ提供すべき文字列を、音声合成技術により音声化する後処理を行うこととしてもよい。   The output processing unit 208 converts the semantic expression indicating the interactive action output from the providing unit 205 into a response sentence using a response sentence generation technique (for example, an existing sentence generation technique), and provides it to the user as a character string. The provision of the character string to the user is performed by a user interface such as a display or a voice output device, for example. The output processing unit 208 may perform post-processing for converting a character string to be provided to the user into a voice by a voice synthesis technique.

知識処理部207は、知識ベース206を参照して、提供部205から出力された対話行為に応じた情報処理を行い、その結果を示す対話行為を、分離部202へ提供する。知識処理部207における情報処理は、例えば、知識ベース206から情報を検索して抽出する検索処理であり、例えば、エージェント2001からこれまでに取得した対話行為における付帯情報が表す文字列としてのキーワードのリストを、検索キーワード(検索用のキーワード)の集合として、知識ベースの内容を、AND検索する検索処理を行う。知識処理部207は、検索処理の結果に基づいて対話行為を生成して、生成した対話行為をエージェント2001の分離部202へ提供する。例えば、知識処理部207は、検索処理の結果が、充分に絞り込まれたか否かを判定し、充分に絞り込まれたことを示すように予め定められた所定の条件(例えば検索された情報の数の上限等の条件)が満たされて充分に絞り込まれたと判定した場合には、その検索結果を示す対話行為を生成して出力(分離部202へ提供)する。一方、充分に絞り込まれていないと判定した場合には、知識処理部207は、検索処理の結果を絞り込むために有効なキーワード(検索キーワード)を推定して、そのキーワードを示す対話行為を生成して出力(分離部202へ提供)する。検索処理の結果を絞り込むために有効なキーワードを示す対話行為の一例は、例えば、付帯情報として「発熱」を含ませた「suggest(発熱)」である。   The knowledge processing unit 207 refers to the knowledge base 206, performs information processing according to the dialogue action output from the providing unit 205, and provides the dialogue act indicating the result to the separation unit 202. Information processing in the knowledge processing unit 207 is, for example, search processing for searching for information from the knowledge base 206 and extracting it. For example, keyword processing as a character string represented by supplementary information in an interactive action acquired from the agent 2001 so far is performed. The list is set as a set of search keywords (search keywords), and a search process is performed to AND search the contents of the knowledge base. The knowledge processing unit 207 generates a dialogue action based on the search processing result, and provides the generated dialogue action to the separation unit 202 of the agent 2001. For example, the knowledge processing unit 207 determines whether or not the result of the search process has been sufficiently narrowed down, and a predetermined condition (for example, the number of pieces of retrieved information) is set to indicate that the search has been sufficiently narrowed down. If it is determined that the condition is sufficiently narrowed down, an interactive action indicating the search result is generated and output (provided to the separation unit 202). On the other hand, if it is determined that the search has not been sufficiently narrowed down, the knowledge processing unit 207 estimates an effective keyword (search keyword) to narrow down the search processing result, and generates a dialogue act indicating the keyword. And output (provide to the separation unit 202). An example of an interactive action indicating a keyword effective for narrowing down the search processing result is, for example, “suggest (fever)” including “fever” as incidental information.

このような構成を備えることによりエージェント2001の決定部200では、逐次取得した対話行為における対話行為タイプを抽出して、過去の対話行為タイプの系列に基づき、行動として出力すべき提供用の対話行為における対話行為タイプを決定できる。即ち、エージェント2001では、対話行為における付帯情報に基づく判断を行うことなく、過去の対話行為タイプの系列に基づき、出力すべき対話行為タイプの決定を行うことが可能となっている。   By providing such a configuration, the determining unit 200 of the agent 2001 extracts the interactive action types in the sequentially acquired interactive actions and provides the interactive actions to be output as actions based on the series of past interactive action types. Can determine the type of dialogue action. That is, the agent 2001 can determine a dialogue action type to be output based on a series of past dialogue action types without making a determination based on incidental information in the dialogue action.

このように対話行為の種類(対話行為全体の値の各々)ではなく、対話行為タイプの種類(対話行為タイプ値の各々)に基づいて対話行為タイプを決定することにより、対話状態の数を、少なく抑えることができる。対話状態の数を少なく抑えることは、強化学習による行動選択の最適化に有利となる。この最適化の結果としてエージェント2001は、環境の1つであるフロントエンド2002から、観測2003としての情報を取得(収集)するための質問のタイプ等に係る行動2004を状況に応じて適切に選択できるようになり得るし、情報処理の結果として環境の他の1つであるバックエンドから観測2006を得るための行動2007を適切に選択できるようになり得る。これらの選択(例えば質問のタイプの異なる対話行為タイプの選択等)を通じて、エージェント2001により、対話の主体者の制御、不確実な情報の確認の制御等の対話制御処理が行われ得る。   Thus, by determining the dialogue action type based on the type of dialogue action (each of the dialogue action type values) rather than the type of dialogue action (each of the values of the whole dialogue action), It can be kept low. Minimizing the number of dialogue states is advantageous for optimizing action selection by reinforcement learning. As a result of this optimization, the agent 2001 appropriately selects an action 2004 related to a question type or the like for acquiring (collecting) information as the observation 2003 from the front end 2002 which is one of environments. As a result of the information processing, it is possible to appropriately select the action 2007 for obtaining the observation 2006 from the back end that is another one of the environments. Through these selections (for example, selection of dialogue action types with different question types), the agent 2001 can perform dialogue control processing such as control of the subject of dialogue and control of confirmation of uncertain information.

なお、エージェント2001は、取得した対話行為における対話行為タイプと分離した付帯情報については、取得した最新の1つを保持すれば足りる。   Note that the agent 2001 only needs to retain the latest acquired one for the incidental information separated from the dialog action type in the acquired dialog action.

また、バックエンド2005においては、対話開始以降、取得した付帯情報の系列を、メモリ等の一領域であるスタックに積んで管理すると、複数の付帯情報を用いた高度なタスクを遂行可能となる。バックエンド2005での情報処理によって、例えば、「頭痛」、「めまい」等といった症状を表す付帯情報が収集され、これらの症状に基づいて、「病気A」、「病気B」、「病気C」等といった病気が、所望の情報として特定され得る。バックエンド2005においては、取得した対話行為の対話行為タイプを、例えばコマンドの種類として扱い、現在の対話行為タイプのみに応じて処理を行えばよく、対話行為タイプの履歴を管理する必要はない。   Further, in the back end 2005, if the acquired series of incidental information is accumulated and managed on a stack which is one area such as a memory after the start of the dialogue, it is possible to perform an advanced task using a plurality of incidental information. By the information processing in the back end 2005, for example, incidental information representing symptoms such as “headache”, “vertigo”, and the like is collected. Based on these symptoms, “sickness A”, “sickness B”, “sickness C”. Or the like can be identified as the desired information. In the back end 2005, the interactive action type of the acquired interactive action may be handled as, for example, a command type, and processing may be performed only according to the current interactive action type, and it is not necessary to manage the history of the interactive action type.

(動作)
以下、上述した構成を備える対話システム10の動作について説明する。
(Operation)
Hereinafter, the operation of the interactive system 10 having the above-described configuration will be described.

図3は、対話システム10における対話処理の一例を示すフローチャートである。以下、同図に即して、対話に係るエージェント2001の動作に注目して説明する。   FIG. 3 is a flowchart showing an example of dialogue processing in the dialogue system 10. Hereinafter, the operation of the agent 2001 related to the dialogue will be described with reference to FIG.

対話の開始にあたって、まず、エージェント2001は、信念状態を設定する(ステップS31)。信念状態とは、対話の進行状況とユーザの意図をあわせて定義された対話状態に対して、総和が1となるような確率値の集合(確率分布)のことである。例えば、対話開始時にはひとつの対話状態にいると想定し、その状態の確率値を1、それ以外の状態の確率値を0とする。信念状態の設定は、エージェント2001の決定部200が、初期状態としての信念状態を示す信念状態情報をメモリ等の記憶媒体に保持することで行われる。   In starting the dialogue, first, the agent 2001 sets a belief state (step S31). The belief state is a set of probability values (probability distribution) such that the sum is 1 with respect to the dialog state defined by combining the progress of the dialog and the user's intention. For example, assuming that the user is in one dialog state at the start of the dialog, the probability value of that state is 1, and the probability values of other states are 0. The belief state is set by the determination unit 200 of the agent 2001 holding belief state information indicating a belief state as an initial state in a storage medium such as a memory.

エージェント2001の決定部200は、信念状態情報が示す信念状態に基づいて行動を決定する(ステップS32)。具体的には、決定部200の行動決定部203は、どのような信念状態のときにどのような行動を取るべきかという基準の集合である方策を参照し、信念状態に基づいて行動としての対話行為タイプを決定する。決定部200では、行動決定部203において決定された対話行為タイプを含む、提供用の対話行為を提供部205に伝える。   The determination unit 200 of the agent 2001 determines an action based on the belief state indicated by the belief state information (step S32). Specifically, the behavior determination unit 203 of the determination unit 200 refers to a policy that is a set of criteria for what kind of behavior should be taken in what kind of belief state, and as an action based on the belief state Determine the interaction action type. The determination unit 200 informs the providing unit 205 of the providing interactive action including the interactive action type determined by the action determining unit 203.

次に、エージェント2001は、ステップS32で決定された行動が向けられた環境がフロントエンド2002であるか、バックエンド2005であるかを判定する(ステップS33)。具体的には、提供部205が、予め定められた基準に基づいて、提供用の対話行為に応じて出力先を判定する。そして提供部205は、判定結果に応じて、提供用の対話行為を、フロントエンド2002の出力処理部208、及び、バックエンド2005の知識処理部207のいずれかに提供する。   Next, the agent 2001 determines whether the environment to which the action determined in step S32 is directed is the front end 2002 or the back end 2005 (step S33). Specifically, the providing unit 205 determines an output destination according to a providing interactive action based on a predetermined criterion. The providing unit 205 provides the providing interactive action to either the output processing unit 208 of the front end 2002 or the knowledge processing unit 207 of the back end 2005 according to the determination result.

ステップS33での判定の結果として、環境の1つとしてのフロントエンド2002にエージェント2001から対話行為が提供された場合には、フロントエンド2002は、ユーザとのインタラクションを実行する(ステップS34)。つまり、フロントエンド2002の出力処理部208は、提供部205から取得した所定対話行為形式の行動(対話行為)を自然言語に変換してユーザに提示する。また、フロントエンド2002の入力処理部201は、ユーザからの応答(回答)を自然言語の形式で取得して、対話行為の形式に変換し、エージェント2001に提供する。   As a result of the determination in step S33, when an interactive action is provided from the agent 2001 to the front end 2002 as one of the environments, the front end 2002 executes an interaction with the user (step S34). That is, the output processing unit 208 of the front end 2002 converts an action (dialogue action) in a predetermined dialogue action format acquired from the providing unit 205 into a natural language and presents it to the user. Further, the input processing unit 201 of the front end 2002 acquires a response (answer) from the user in a natural language format, converts it into a dialogue action format, and provides it to the agent 2001.

一方、ステップS33での判定の結果として、環境の他の1つとしてのバックエンド2005にエージェント2001から対話行為が提供された場合には、バックエンド2005は、知識処理を実行する(ステップS35)。つまり、バックエンド2005の知識処理部207は、提供部205から取得した所定対話行為形式の行動(対話行為)に基づき、知識ベース206の検索処理を行い、検索処理の結果に基づく情報を対話行為の形式にして、エージェント2001に提供する。知識処理部207は、対話行為が知識ベース206の検索用のコマンド(例えば機械語のコマンド)としてそのまま用いることができればその対話行為であるコマンドを実行し、そのまま用いることができなければ機械語のコマンドに変換して実行する。また、知識処理部207は、検索処理の結果としての知識ベース206からの戻り値等に基づく情報を、対話行為の形式にして、エージェント2001に提供する。   On the other hand, as a result of the determination in step S33, when an interactive action is provided from the agent 2001 to the back end 2005 as another one of the environments, the back end 2005 executes knowledge processing (step S35). . That is, the knowledge processing unit 207 of the back end 2005 performs a search process of the knowledge base 206 based on the action (dialogue action) in the predetermined dialogue action format acquired from the providing unit 205, and the information based on the result of the search process is displayed as the dialogue action. And is provided to the agent 2001. The knowledge processing unit 207 executes a command that is an interactive action if the interactive action can be used as it is as a command for searching the knowledge base 206 (for example, a command in machine language). Convert to command and execute. In addition, the knowledge processing unit 207 provides information based on a return value from the knowledge base 206 as a result of the search processing to the agent 2001 in the form of a dialogue action.

ステップS34又はステップS35に続いて、エージェント2001は、フロントエンド2002又はバックエンド2005から所定対話行為形式の観測(対話行為)を受理(取得)する(ステップS36)。   Subsequent to step S34 or step S35, the agent 2001 receives (acquires) observation (dialogue action) of a predetermined dialogue action form from the front end 2002 or the back end 2005 (step S36).

次に、エージェント2001は、取得した対話行為に基づいて、対話処理を終了すべきか判断する(ステップS37)。例えば、エージェント2001は、観測として、フロントエンド2002から「Acknowledge()」という対話行為を取得したら、対話処理を終了すべきと判断し、対話処理を終了させる。   Next, the agent 2001 determines whether or not the dialogue process should be ended based on the acquired dialogue action (step S37). For example, when the agent 2001 obtains a dialogue act “Acknowledge ()” from the front end 2002 as an observation, the agent 2001 determines that the dialogue processing should be terminated and terminates the dialogue processing.

ステップS37で終了と判断しない場合には、エージェント2001は、現在の信念状態と、決定した行動(対話行為タイプの形式の行動)と、環境から得られた観測(対話行為タイプの形式の観測)とに基づき、信念状態を更新する(ステップS38)。つまり決定部200は、信念状態を示す信念状態情報を、取得した対話行為における対話行為タイプの系列と、決定した対話行為タイプの系列とに応じて更新する。   If it is not determined to end in step S37, the agent 2001 determines the current belief state, the determined action (action in the form of dialogue action type), and the observation obtained from the environment (observation in the form of dialogue action type). Based on the above, the belief state is updated (step S38). That is, the determination unit 200 updates the belief state information indicating the belief state according to the series of dialog action types in the acquired dialog action and the determined series of dialog action types.

ステップS38に続いて、エージェント2001は、ステップS32に戻って、ステップS36で取得した対話行為に対応して、行動の決定を行う。   Subsequent to step S38, the agent 2001 returns to step S32 and determines an action corresponding to the dialogue action acquired in step S36.

このように、対話処理においては、エージェント2001による、次の決定ステップ及び提供ステップを含む対話制御処理が含まれている。対話処理において、繰り返されるステップS36で、フロントエンド2002及びバックエンド2005のいずれかから対話行為を取得する度に、エージェント2001は、取得した対話行為に応じて提供用の対話行為を決定する決定ステップ(ステップS32)を行う。そしてエージェント2001は、この決定ステップで決定した提供用の対話行為を、フロントエンド2002及びバックエンド2005のいずれかへ提供する提供ステップ(ステップS33〜S35)を行う。決定ステップでは、エージェント2001は、提供用の対話行為における対話行為タイプを、フロントエンド2002及びバックエンド2005の集合から逐次取得した対話行為における、付帯情報の系列に基づかず対話行為タイプの系列に基づいて、決定する。エージェント2001は、対話行為タイプの系列に基づいて、信念状態を更新し、信念状態に基づいて、行動としての対話行為タイプを決定し得る。   As described above, the dialogue processing includes the dialogue control processing including the following determination step and provision step by the agent 2001. In the interactive process, every time the interactive action is acquired from either the front end 2002 or the back end 2005 in the repeated step S36, the agent 2001 determines a providing interactive action in accordance with the acquired interactive action. (Step S32) is performed. Then, the agent 2001 performs a providing step (steps S33 to S35) for providing the providing interactive action determined in the determining step to either the front end 2002 or the back end 2005. In the determination step, the agent 2001 determines the dialogue action type in the providing dialogue action based on the dialogue action type sequence in the dialogue action sequentially obtained from the set of the front end 2002 and the back end 2005, based on the series of incidental information. And decide. The agent 2001 may update the belief state based on the series of interaction action types, and may determine the interaction action type as an action based on the belief state.

このように、エージェント2001における信念状態は、行動の対話行為タイプと観測の対話行為タイプによって逐次更新され、対話処理の開始以降における対話行為タイプの系列の全てを反映した信念状態となっている。このため、エージェント2001は、信念状態に基づいて行動の決定を行えば、対話の進行状況に適合した行動で、かつ、ユーザの意図に適合した行動をとることができる。   As described above, the belief state in the agent 2001 is sequentially updated according to the dialogue action type of action and the dialogue action type of observation, and is a belief state reflecting all of the series of dialogue action types after the start of the dialogue processing. For this reason, if the agent 2001 determines the action based on the belief state, the agent 2001 can take an action that matches the progress of the dialogue and also an action that matches the user's intention.

以下、バックエンド2005における情報処理の一種である知識処理の一例について、図4A及び図4Bを用いて説明する。   Hereinafter, an example of knowledge processing, which is a type of information processing in the back end 2005, will be described with reference to FIGS. 4A and 4B.

図4Aは、バックエンド2005で参照される知識ベース206の一例を示す図である。   FIG. 4A is a diagram illustrating an example of the knowledge base 206 referred to in the back end 2005.

知識ベース206は、バックエンド2005の知識処理部207による知識処理において検索対象となるデータベースであり、例えば症状を検索キーワードとして病気を検索するための知識を構造化して管理している。図4Aの表は、知識ベース206の知識内容のイメージの一例を示す。図4Aの表中、ある症状の行と、ある病気の列との交点となるセルには、その病気である場合においてその症状が出やすければ「+」を、その症状が出にくければ「−」を記述している。検索キーワードとして、例えば、症状が出ることを指定する指定キーワードと、症状が出ないことを指定する除外キーワードとに区別して検索を行うこととしてもよい。症状を指定する指定キーワードと除外キーワードとのうちの1つ以上の組み合わせでAND検索を行うことで病気の集合から該当する病気を絞り込むことが可能となる。図4Aの例では、症状Aを指定キーワード(+)とし、症状Dを除外キーワード(−)としてAND検索を行うことで、該当する病気は、病気1のみとなる。図4Aは説明の便宜上の一例に過ぎず、知識ベース206において、検索キーワード(例えば症状)と検索対象名(例えば病気)とは、それぞれ多数(例えば数十、数千以上等)であり得る。   The knowledge base 206 is a database to be searched in knowledge processing by the knowledge processing unit 207 of the back end 2005. For example, knowledge for searching for diseases using symptoms as search keywords is structured and managed. The table in FIG. 4A shows an example of an image of knowledge content in the knowledge base 206. In the table of FIG. 4A, a cell that is the intersection of a row of a certain symptom and a column of a certain illness indicates “+” if the symptom is likely to appear in the case of the illness, and “−” if the symptom is difficult to appear. Is described. As a search keyword, for example, a search may be performed by distinguishing between a specified keyword that specifies that symptoms appear and an excluded keyword that specifies that symptoms do not appear. It is possible to narrow down corresponding diseases from a set of diseases by performing an AND search with a combination of one or more of a specified keyword for specifying symptoms and an excluded keyword. In the example of FIG. 4A, by performing an AND search using the symptom A as the designated keyword (+) and the symptom D as the exclusion keyword (−), the corresponding disease is only disease 1. FIG. 4A is merely an example for convenience of explanation. In the knowledge base 206, the search keyword (for example, symptom) and the search target name (for example, illness) can each be a large number (for example, tens or thousands or more).

図4Bは、バックエンド2005の知識処理部207による知識処理の一例を、質問木で表した概念図である。   FIG. 4B is a conceptual diagram illustrating an example of knowledge processing by the knowledge processing unit 207 of the back end 2005 using a question tree.

図4Bの例は、図4Aの表で例示される知識ベース206を用いて、症状に係る質問により病気を特定するという問診タスクを遂行することに関連した質問木の例であり、ここでは、説明の便宜上、比較的単純な質問木を示している。図4Bの質問木のルートノードは最初の質問を表し、症状Aが発症しているかどうかの質問を「症状A」と表現している。リーフノードは、質問により特定された病気を示している。ルートとリーフとの中間に位置する各中間ノードは、2番目以降の質問を表している。ノード間の矢印(エッジ)は、質問への回答が「+」(質問の症状が発症していることを示す回答)であるか「−」(質問の症状が発症していないことを示す回答)であるかに対応しており、質問木全体は、二分木となっている。ルートノードでは、全ての病気の集合を対応させ、質問によって、該当する病気の集合が逐次分割されて、病気が絞り込まれる。これ以上病気の集合を分割する質問がなくなったところで、そのときに残っている病気の集合(1つ又は複数の病気)が結論(検索処理の結果)となる。この質問木は、質問の順番によって、候補の絞込みの効率が異なる。最悪ケースの質問回数をなるべく少なくするためには、残っている病気の集合の「+」と「−」の割合が、1:1になるべく近い質問を選ぶとよい。   The example of FIG. 4B is an example of a query tree associated with performing an interrogation task of identifying a disease by a symptom question using the knowledge base 206 illustrated in the table of FIG. 4A, where: For convenience of explanation, a relatively simple question tree is shown. The root node of the question tree in FIG. 4B represents the first question, and the question as to whether or not symptom A has occurred is expressed as “symptom A”. The leaf node indicates the disease identified by the question. Each intermediate node located between the root and the leaf represents the second and subsequent questions. The arrow (edge) between the nodes indicates whether the answer to the question is “+” (an answer indicating that the symptom of the question has developed) or “−” (an answer indicating that the symptom of the question has not occurred) The entire question tree is a binary tree. In the root node, all disease sets are associated with each other, and the corresponding disease set is sequentially divided by the question to narrow down the diseases. When there are no more questions that divide the disease set, the disease set (one or more diseases) remaining at that time is the conclusion (result of the search process). In this question tree, the efficiency of narrowing down candidates varies depending on the order of questions. In order to reduce the worst-case question count as much as possible, it is preferable to select a question whose ratio of “+” and “−” in the remaining set of diseases is as close as possible to 1: 1.

バックエンド2005の知識処理部207としての動作は、エージェント2001からコマンドを示す対話行為を取得して、コマンドに基づく知識処理(検索処理等)を行い、コマンドに対する戻り値を示す対話行為をエージェント2001に返す(提供する)。より具体的には、知識処理部207は、取得した対話行為における対話行為タイプに付帯する付帯情報(症状を示すキーワード)を検索キーワードとしてスタックに積み、検索キーワードのリストに従って知識ベース206の検索を行う検索処理を行う。知識処理部207は、検索処理の結果として、検索対象の病気が充分絞り込まれたか否かを判定して、充分絞り込まれた場合には、結論として絞り込まれた検索対象の情報(病気)をエージェント2001に返す。絞り込みが不充分であると判定した場合には、知識処理部207は、検索対象を絞り込むのに有効な検索キーワードを、エージェント2001に提案(提供)する。なお、ここで示した、バックエンド2005による病気の特定という処理は、バックエンド2005による情報処理の一例に過ぎない。バックエンド2005で行われる情報処理は、例えば、キーワードを用いて、インターネット検索(インターネット上の情報の検索)を行い、検索の結果が所定数(例えば1つ、数個等)以下になるまでは、次の有効な検索キーワードを提案(提供)し、所定数以下になると検索の結果としての情報を提供するような処理であってもよい。この場合に、バックエンド2005は、既存のインターネット検索プログラムへのラッパー等を含んで構成され得る。   The operation of the back end 2005 as the knowledge processing unit 207 acquires a dialogue act indicating a command from the agent 2001, performs knowledge processing (search processing, etc.) based on the command, and performs a dialogue act indicating a return value for the command. Return to (provide). More specifically, the knowledge processing unit 207 accumulates incidental information (keyword indicating a symptom) incidental to the dialogue action type in the acquired dialogue action as a search keyword, and searches the knowledge base 206 according to the search keyword list. Perform the search process to be performed. As a result of the search processing, the knowledge processing unit 207 determines whether or not the search target disease is sufficiently narrowed down. When the search target disease is sufficiently narrowed down, the knowledge processing unit 207 concludes that the search target information (disease) is narrowed down as a conclusion. Return to 2001. When it is determined that the narrowing down is insufficient, the knowledge processing unit 207 proposes (provides) to the agent 2001 search keywords that are effective for narrowing down the search target. Note that the process of specifying a disease by the back end 2005 shown here is merely an example of information processing by the back end 2005. The information processing performed in the back end 2005 is performed, for example, by performing an Internet search (searching for information on the Internet) using a keyword, and until the search result is equal to or less than a predetermined number (for example, one or several) The next effective search keyword may be proposed (provided), and the process may be such that information as a search result is provided when the number is less than a predetermined number. In this case, the back end 2005 can be configured to include a wrapper to an existing Internet search program.

以下、対話システム10による対話のシーケンスについて説明する。図5は、対話システム10による対話のシーケンスの一例を示したシーケンス図である。   Hereinafter, a dialogue sequence by the dialogue system 10 will be described. FIG. 5 is a sequence diagram showing an example of a dialogue sequence by the dialogue system 10.

図5において、フロントエンド2002、エージェント2001及びバックエンド2005のそれぞれ(各オブジェクト)における処理区間(活性区間)を縦長長方形で表しており、オブジェクトから下に向かう縦の破線が時間経過を表し、横向きの矢線(矢印)のうち、実線の矢印が呼び出しメッセージ(つまりエージェント2001からの対話行為の提供)を表し、破線の矢印が手続きの結果通知メッセージ(つまりエージェント2001による対話行為の取得)を表している。また、図5ではバックエンド2005内で管理されるスタック50の内容(検索キーワードのリスト)を付記している。スタック50内においてキーワードに付加された正(+)の符号は、知識ベース206の検索時にそのキーワードが指定キーワードとして扱われることを意味し、キーワードに付加された負(−)の符号は、知識ベース206の検索時にそのキーワードが除外キーワードとして扱われることを意味する。   In FIG. 5, the processing section (active section) in each of the front end 2002, the agent 2001, and the back end 2005 (each object) is represented by a vertically long rectangle, and the vertical broken line from the object to the bottom represents the passage of time. Among the arrows (solid arrows), the solid line arrow represents a call message (that is, the provision of a dialogue action from the agent 2001), and the broken line arrow represents a procedure result notification message (that is, the acquisition of the dialogue action by the agent 2001). ing. In FIG. 5, the contents (a list of search keywords) of the stack 50 managed in the back end 2005 are appended. A positive (+) sign added to a keyword in the stack 50 means that the keyword is treated as a designated keyword when searching the knowledge base 206, and a negative (−) sign added to the keyword is knowledge This means that the keyword is treated as an excluded keyword when searching the base 206.

以下、図5に即して、問診タスクに係る対話の例に係るシーケンスにおける各ステップを順に説明する。   Hereinafter, referring to FIG. 5, each step in the sequence according to the example of the dialogue related to the inquiry task will be described in order.

ステップS101では、エージェント2001は、バックエンド2005に、知識ベース206の検索処理のための検索キーワードを格納するスタック50を空にさせるコマンドを表す対話行為「clear()」を、与える(提供する)。なお、エージェント2001が提供する対話行為の先頭が小文字であればバックエンド2005が提供先であり、大文字であればフロントエンド2002が提供先となるように定められている。   In step S 101, the agent 2001 gives (provides) an interactive action “clear ()” representing a command for emptying the stack 50 storing the search keyword for the search processing of the knowledge base 206 to the back end 2005. . Note that it is determined that the back end 2005 is the providing destination if the dialogue action provided by the agent 2001 is lowercase, and the front end 2002 is the providing destination if the uppercase is uppercase.

ステップS102では、エージェント2001は、バックエンド2005から、例えばコマンドに応じた処理が終わったこと等を表す対話行為「pass()」を、受ける(取得する)。   In step S102, the agent 2001 receives (acquires), from the back end 2005, an interactive action “pass ()” indicating that, for example, the processing according to the command is completed.

ステップS103では、エージェント2001は、フロントエンド2002に、「今日はどうされましたか?」という旨の質問を表す対話行為「What1st()」を提供する。これにより、フロントエンド2002は、ユーザに、例えば「今日はどうされましたか?」という自然言語で、質問する。この例では、この質問に対してユーザは、症状を示す「頭がくらくらします。」という回答を行う。   In step S <b> 103, the agent 2001 provides the front end 2002 with an interactive action “What1st ()” representing a question “What have you done today?”. As a result, the front end 2002 asks the user, for example, a natural language “How did you do today?”. In this example, in response to this question, the user makes an answer indicating that his / her head is dizzy.

ステップS104では、エージェント2001は、ユーザの「頭がくらくらします。」という回答をフロントエンド2002で変換した対話行為「Provide(頭痛)」を、フロントエンド2002から取得する。   In step S <b> 104, the agent 2001 acquires, from the front end 2002, an interactive action “Provide (headache)” obtained by converting the user's answer of “I'm dizzy” at the front end 2002.

ステップS104に続いて、エージェント2001は、取得した対話行為「Provide(頭痛)」における対話行為タイプ「Provide」に応じて対話行為タイプ「Confirm」を決定し、その「Confirm」と、取得した対話行為における付帯情報である「頭痛」とを合成することで提供用の対話行為「Confirm(頭痛)」を生成する。   Following step S104, the agent 2001 determines the dialogue action type “Confirm” according to the dialogue action type “Provide” in the obtained dialogue action “Provide (headache)”, and the “Confirm” and the obtained dialogue action are determined. The provided dialogue action “Confirm (headache)” is generated by synthesizing the accompanying information “headache”.

ステップS105では、エージェント2001は、対話行為「Confirm(頭痛)」をフロントエンド2002に提供する。これにより、フロントエンド2002は、対話行為「Confirm(頭痛)」に基づいて変換した自然言語「頭痛ですか?」により、ユーザに対して確認の質問を行う。この例では、この質問に対してユーザは、頭痛を訂正して「めまいです。」という回答を行う。   In step S <b> 105, the agent 2001 provides the front end 2002 with the dialogue action “Confirm (headache)”. Accordingly, the front end 2002 asks the user a confirmation question using the natural language “Is it a headache?” Converted based on the dialogue action “Confirm (headache)”. In this example, the user corrects the headache and answers “I am dizzy” to this question.

ステップS106では、エージェント2001は、ユーザの「めまいです。」という回答(つまり確認内容を訂正する回答)をフロントエンド2002で変換した対話行為「Correct(めまい)」を、フロントエンド2002から取得する。   In step S <b> 106, the agent 2001 acquires from the front end 2002 an interactive action “Correct” obtained by converting the user's answer “that is dizziness” (that is, an answer that corrects the confirmation content) by the front end 2002.

ステップS106に続いて、エージェント2001は、取得した対話行為「Correct(めまい)」における対話行為タイプ「Correct」に応じて対話行為タイプ「push」を決定し、その「push」と、取得した対話行為における付帯情報である「めまい」とを合成することで提供用の対話行為「push(めまい)」を生成する。   Subsequent to step S106, the agent 2001 determines the dialogue action type “push” according to the dialogue action type “Correct” in the obtained dialogue action “Correct”, the “push” and the obtained dialogue action. The provided dialogue action “push” is generated by synthesizing “vertigo” which is the incidental information in.

ステップS107では、エージェント2001は、対話行為「push(めまい)」をバックエンド2005に提供する。対話行為「push(めまい)」が表すコマンド(例えば検索キーワードの設定のためのコマンド)に応じて、バックエンド2005のスタック50には、付帯情報の「めまい」を示す指定キーワードが蓄積される。   In step S <b> 107, the agent 2001 provides the back end 2005 with the dialogue action “push”. In response to a command represented by the dialogue action “push” (for example, a command for setting a search keyword), the stack 50 of the back end 2005 stores a designated keyword indicating “vertigo” in the accompanying information.

ステップS108では、エージェント2001は、バックエンド2005から、例えばコマンドに応じた処理が終わったこと等を表す対話行為「pass()」を取得する。   In step S <b> 108, the agent 2001 acquires, from the back end 2005, for example, an interactive action “pass ()” indicating that the process according to the command is completed.

ステップS108に続いて、エージェント2001は、取得した対話行為「pass()」における対話行為タイプ「pass」に応じて対話行為タイプ「WhatElse」を決定し、対話行為「WhatElse()」を生成する。   Subsequent to step S108, the agent 2001 determines the dialogue action type “WhatElse” according to the dialogue action type “pass” in the acquired dialogue action “pass ()”, and generates the dialogue action “WhatElse ()”.

ステップS109では、エージェント2001は、対話行為「WhatElse()」をフロントエンド2002に提供する。なお、エージェント2001においては、逐次取得した対話行為における対話行為タイプの系列によって、対話行為タイプの決定に際して参照される信念状態が変化しているので、同内容の対話行為を取得した場合であっても異なる提供用の対話行為を決定して提供し得る。フロントエンド2002は、対話行為「WhatElse()」に基づいて変換した自然言語「他に気になることはありますか?」により、ユーザに対して更なる質問を行う。この例では、この質問に対してユーザは、更なる症状を示す「動悸もします。」という回答を行う。   In step S109, the agent 2001 provides the front end 2002 with the interactive action “WhatElse ()”. Note that, in the agent 2001, the belief state referred to when determining the dialogue action type is changed depending on the series of dialogue action types in the sequentially obtained dialogue actions. Even different providing interactive actions can be determined and provided. The front end 2002 asks the user further questions using the natural language “Do you care about others?” Converted based on the interactive action “WhatElse ()”. In this example, in response to this question, the user answers “I also palpitate” indicating further symptoms.

ステップS110では、エージェント2001は、ユーザの「動悸もします。」という回答をフロントエンド2002で変換した対話行為「Provide(動悸)」を、フロントエンド2002から取得する。   In step S <b> 110, the agent 2001 acquires from the front end 2002 an interactive action “Provide” obtained by converting the user's answer “I will also palpate” in the front end 2002.

ステップS110に続いて、エージェント2001は、取得した対話行為「Provide(動悸)」における対話行為タイプ「Provide」に応じて対話行為タイプ「push」を決定し、その「push」と、取得した対話行為における付帯情報である「動悸」とを合成することで提供用の対話行為「push(動悸)」を生成する。   Subsequent to step S110, the agent 2001 determines the dialogue action type “push” according to the dialogue action type “Provide” in the obtained dialogue action “Provide”, the “push” and the obtained dialogue action. The provided dialogue action “push” is generated by synthesizing “palpit” which is incidental information in.

ステップS111では、エージェント2001は、対話行為「push(動悸)」をバックエンド2005に提供する。対話行為「push(動悸)」が表すコマンド(例えば検索キーワードの設定のためのコマンド)に応じて、バックエンド2005のスタック50には、更に付帯情報の「動悸」を示す指定キーワードが蓄積される。   In step S111, the agent 2001 provides the back end 2005 with the dialogue action “push”. In response to a command represented by the dialogue action “push” (for example, a command for setting a search keyword), the stack 50 of the back end 2005 further stores a designated keyword indicating “palpit” of the accompanying information. .

ステップS112では、エージェント2001は、バックエンド2005から、例えばコマンドに応じた処理が終わったこと等を表す対話行為「pass()」を取得する。   In step S112, the agent 2001 acquires, from the back end 2005, for example, an interactive action “pass ()” indicating that the process according to the command is completed.

ステップS112に続いて、エージェント2001は、取得した対話行為「pass()」における対話行為タイプ「pass」に応じて対話行為タイプ「WhatElse」を決定し、対話行為「WhatElse()」を生成する。   Following step S112, the agent 2001 determines the dialogue action type “WhatElse” in accordance with the dialogue action type “pass” in the acquired dialogue action “pass ()”, and generates the dialogue action “WhatElse ()”.

ステップS113では、エージェント2001は、対話行為「WhatElse()」をフロントエンド2002に提供する。フロントエンド2002は、対話行為「WhatElse()」に基づいて変換した自然言語「他に気になることはありますか?」により、ユーザに対して更なる質問を行う。この例では、この質問に対してユーザは、他の症状がないことを示す「ないです。」という回答を行う。   In step S113, the agent 2001 provides the front end 2002 with the interactive action “WhatElse ()”. The front end 2002 asks the user further questions using the natural language “Do you care about others?” Converted based on the interactive action “WhatElse ()”. In this example, the user answers “No” to this question indicating that there are no other symptoms.

ステップS114では、エージェント2001は、ユーザの「ないです。」という回答をフロントエンド2002で変換した対話行為「Negative()」を、フロントエンド2002から取得する。   In step S <b> 114, the agent 2001 acquires from the front end 2002 an interactive action “Negative ()” obtained by converting the user's answer “No” in the front end 2002.

ステップS114に続いて、エージェント2001は、取得した対話行為「Negative()」における対話行為タイプ「Negative」に応じて対話行為タイプ「solve1st」を決定し、提供用の対話行為「solve1st()」を生成する。   Subsequent to step S114, the agent 2001 determines the dialogue action type “solve1st” according to the dialogue action type “Negative” in the acquired dialogue action “Negative ()”, and provides the providing dialogue action “solve1st ()”. Generate.

ステップS115では、エージェント2001は、対話行為「solve1st()」をバックエンド2005に提供する。対話行為「solve1st()」が表すコマンド(例えば検索実行のためのコマンド)に応じて、バックエンド2005では知識ベース206の検索処理を行う。バックエンド2005は、検索処理の結果が充分に絞り込まれたか否かを判定する。例えば、バックエンド2005は、検索処理の結果としての病気が所定数(例えば1つ、数個等)以下に絞り込まれたか否かを判定する。バックエンド2005は、検索処理の結果が充分に絞り込まれない場合には、知識ベース206を用いて、検索処理の結果を絞り込むために有効な検索キーワードを特定して提案する。この例では、検索処理の結果が所定数以下に絞り込まれずに、絞り込みに有効な検索キーワードとして「発熱」が提案される。このとき、この例では、バックエンド2005のスタック50に、指定キーワードか除外キーワードかが未決定の状態の「発熱」を示す検索キーワードが蓄積される。   In step S115, the agent 2001 provides the interactive action “solve1st ()” to the back end 2005. In response to a command (for example, a command for search execution) represented by the dialogue action “solve1st ()”, the back end 2005 performs a search process of the knowledge base 206. The back end 2005 determines whether or not the search processing result has been sufficiently narrowed down. For example, the back end 2005 determines whether or not the number of diseases as a result of the search process has been narrowed down to a predetermined number (for example, one, several, etc.) or less. When the search process result is not sufficiently narrowed down, the back end 2005 uses the knowledge base 206 to identify and propose an effective search keyword to narrow down the search process result. In this example, “heat generation” is proposed as a search keyword effective for narrowing down without narrowing down the search processing results to a predetermined number or less. At this time, in this example, a search keyword indicating “fever” in a state where the designated keyword or the excluded keyword is not determined is accumulated in the stack 50 of the back end 2005.

ステップS116では、エージェント2001は、バックエンド2005から、「発熱」の症状の質問を提案することを表す対話行為「suggest(発熱)」を取得する。   In step S <b> 116, the agent 2001 acquires from the back end 2005 an interactive action “suggest (fever)” representing suggesting a question of a “fever” symptom.

ステップS116に続いて、エージェント2001は、取得した対話行為「suggest(発熱)」における対話行為タイプ「suggest」に応じて対話行為タイプ「Check」を決定し、その「Check」と、取得した対話行為における付帯情報である「発熱」とを合成することで提供用の対話行為「Check(発熱)」を生成する。   Following step S116, the agent 2001 determines the dialogue action type “Check” according to the dialogue action type “suggest” in the obtained dialogue action “suggest (fever)”, and the “Check” and the obtained dialogue action are determined. The provisional interactive action “Check (fever)” is generated by synthesizing “fever” which is incidental information in FIG.

ステップS117では、エージェント2001は、対話行為「Check(発熱)」をフロントエンド2002に提供する。フロントエンド2002は、対話行為「Check(発熱)」に基づいて変換した自然言語「発熱はありますか?」により、ユーザに対して発熱の症状についての質問を行う。この例では、この質問に対してユーザは、発熱の症状が現れていないことを示す「ありません。」という回答を行う。   In step S117, the agent 2001 provides the front end 2002 with an interactive action “Check (heat generation)”. The front end 2002 asks the user about the symptom of fever by the natural language “Is there fever?” Converted based on the dialogue action “Check (fever)”. In this example, in response to this question, the user answers “No” indicating that no symptoms of fever have appeared.

ステップS118では、エージェント2001は、ユーザの「ありません。」という回答をフロントエンド2002で変換した対話行為「Negative()」を、フロントエンド2002から取得する。   In step S <b> 118, the agent 2001 acquires from the front end 2002 an interactive action “Negative ()” obtained by converting the user's answer “No” in the front end 2002.

ステップS118に続いて、エージェント2001は、取得した対話行為「Negative()」における対話行為タイプ「Negative」に応じて対話行為タイプ「set_negative」を決定し、提供用の対話行為「set_negative()」を生成する。   Following step S118, the agent 2001 determines the dialogue action type “set_negative” in accordance with the dialogue action type “Negative” in the obtained dialogue action “Negative ()”, and provides the dialogue action “set_negative ()” for provision. Generate.

ステップS119では、エージェント2001は、対話行為「set_negative()」をバックエンド2005に提供する。対話行為「set_negative()」が表すコマンド(例えばスタックに最後に積まれた検索キーワードを除外キーワードに設定した上で検索キーワードのリストで検索を実行するためのコマンド)に応じて、バックエンド2005では、スタック50の「発熱」を除外キーワードとして知識ベース206の検索処理を行う。そしてバックエンド2005は、検索処理の結果が充分に絞り込まれたか否かを判定する。この例では、検索処理の結果がまだ所定数以下に絞り込まれずに、絞り込みに有効な検索キーワードとして更に「咳」が提案される。このとき、この例では、バックエンド2005のスタック50に、「咳」を示す検索キーワードが蓄積される。   In step S119, the agent 2001 provides the interactive action “set_negative ()” to the back end 2005. In response to a command represented by the interactive action “set_negative ()” (for example, a command for executing a search using a list of search keywords after setting the search keyword last stacked on the stack as an exclusion keyword) The knowledge base 206 is searched using “heat generation” in the stack 50 as an exclusion keyword. Then, the back end 2005 determines whether or not the result of the search process has been sufficiently narrowed down. In this example, the result of the search process is not yet narrowed down to a predetermined number or less, and “cough” is further proposed as a search keyword effective for narrowing down. At this time, in this example, a search keyword indicating “cough” is accumulated in the stack 50 of the back end 2005.

ステップS120では、エージェント2001は、バックエンド2005から、「咳」の症状の質問を提案することを表す対話行為「suggest(咳)」を取得する。   In step S <b> 120, the agent 2001 obtains an interactive action “suggest” representing suggesting a question of a “cough” symptom from the back end 2005.

ステップS120に続いて、エージェント2001は、取得した対話行為「suggest(咳)」における対話行為タイプ「suggest」に応じて対話行為タイプ「Check」を決定し、その「Check」と、取得した対話行為における付帯情報である「咳」とを合成することで提供用の対話行為「Check(咳)」を生成する。   Following step S120, the agent 2001 determines the dialogue action type “Check” according to the dialogue action type “suggest” in the obtained dialogue action “suggest”, and the “Check” and the obtained dialogue action are determined. The provided interactive action “Check (cough)” is generated by synthesizing “cough” which is incidental information.

ステップS121では、エージェント2001は、対話行為「Check(咳)」をフロントエンド2002に提供する。フロントエンド2002は、対話行為「Check(咳)」に基づいて変換した自然言語「咳は出ますか?」により、ユーザに対して咳の症状についての質問を行う。この例では、この質問に対してユーザは、咳の症状が現れていることを示す「出ます。」という回答を行う。   In step S121, the agent 2001 provides the front end 2002 with an interactive action “Check (cough)”. The front end 2002 asks the user about cough symptoms using the natural language “Do you have a cough?” Converted based on the interactive action “Check (cough)”. In this example, in response to this question, the user answers “I will come out” indicating that cough symptoms are present.

ステップS122では、エージェント2001は、ユーザの「出ます。」という回答をフロントエンド2002で変換した対話行為「Positive()」を、フロントエンド2002から取得する。   In step S122, the agent 2001 acquires from the front end 2002 an interactive action “Positive ()” obtained by converting the user's answer “Exit” by the front end 2002.

ステップS122に続いて、エージェント2001は、取得した対話行為「Positive()」における対話行為タイプ「Positive」に応じて対話行為タイプ「set_positive」を決定し、提供用の対話行為「set_positive()」を生成する。   Subsequent to step S122, the agent 2001 determines the dialogue action type “set_positive” according to the dialogue action type “Positive” in the acquired dialogue action “Positive ()”, and provides the providing dialogue action “set_positive ()”. Generate.

ステップS123では、エージェント2001は、対話行為「set_positive()」をバックエンド2005に提供する。対話行為「set_positive()」が表すコマンド(例えばスタックに最後に積まれた検索キーワードを指定キーワードに設定した上で検索キーワードのリストで検索を実行するためのコマンド)に応じて、バックエンド2005では、スタック50の「咳」を指定キーワードにし、知識ベース206の検索処理を行う。そしてバックエンド2005は、検索処理の結果が充分に絞り込まれたか否かを判定する。この例では、検索処理の結果が所定数以下の1つである「病気C」に絞り込まれる。   In step S123, the agent 2001 provides the back end 2005 with the dialogue action “set_positive ()”. In response to a command represented by the interactive action “set_positive ()” (for example, a command for executing a search using a list of search keywords after setting a search keyword last loaded on the stack as a specified keyword) The knowledge base 206 is searched using “cough” in the stack 50 as a designated keyword. Then, the back end 2005 determines whether or not the result of the search process has been sufficiently narrowed down. In this example, the search processing result is narrowed down to “disease C”, which is one less than a predetermined number.

ステップS124では、エージェント2001は、バックエンド2005から、結論としての「病気C」を表す対話行為「conclude(病気C)」を取得する。   In step S <b> 124, the agent 2001 acquires a dialogue action “conclude (disease C)” representing “disease C” as a conclusion from the back end 2005.

ステップS124に続いて、エージェント2001は、取得した対話行為「conclude(病気C)」における対話行為タイプ「conclude」に応じて対話行為タイプ「Present」を決定し、その「Present」と、取得した対話行為における付帯情報である「病気C」とを合成することで提供用の対話行為「Present(病気C)」を生成する。   Following step S124, the agent 2001 determines the dialogue action type “Present” according to the dialogue action type “conclude” in the obtained dialogue action “conclude (disease C)”, and the “Present” and the obtained dialogue are obtained. The provided dialogue action “Present (disease C)” is generated by synthesizing “disease C” which is incidental information in the action.

ステップS125では、エージェント2001は、対話行為「Present(病気C)」をフロントエンド2002に提供する。フロントエンド2002は、対話行為「Present(病気C)」に基づいて変換した自然言語「病気Cのようです。」により、ユーザに対して結論を提供する。この例では、この結論の提供に対してユーザは、「わかりました。」という回答を行う。   In step S125, the agent 2001 provides the front end 2002 with the dialogue action “Present (illness C)”. The front end 2002 provides a conclusion to the user by the natural language “Like Sick C” converted based on the interactive action “Present (Sick C)”. In this example, the user answers “Okay” to provide this conclusion.

ステップS126では、エージェント2001は、ユーザの「わかりました。」という回答をフロントエンド2002で変換した対話行為「Acknowledge()」を、フロントエンド2002から取得する。これにより、エージェント2001が対話処理を終了させて、対話のシーケンスが終了する。   In step S <b> 126, the agent 2001 acquires from the front end 2002 an interactive action “Acknowledge ()” obtained by converting the user's answer “OK” by the front end 2002. As a result, the agent 2001 ends the dialogue processing, and the dialogue sequence is finished.

このように、エージェント2001が仲介してフロントエンド2002とバックエンド2005との対話が行われる。   In this way, the interaction between the front end 2002 and the back end 2005 is performed by the agent 2001.

上述の例で、エージェント2001がフロントエンド2002との間で授受する情報である対話行為のシーケンスは、次の対話行為シーケンス1となっている。   In the above-described example, the sequence of dialogue action that is information exchanged between the agent 2001 and the front end 2002 is the following dialogue action sequence 1.

対話行為シーケンス1=[What1st(),Provide(頭痛),Confirm(頭痛),Correct(めまい),WhatElse(),Provide(動悸),WhatElse(),Negative(),Check(発熱),Negative(),Check(咳),Positive(),Present(病気C),Acknowledge()]   Dialogue action sequence 1 = [What1st (), Provide (headache), Confirm (headache), Correct (vertigo), WhatElse (), Provide (palpitations), WhatElse (), Negative (), Check (fever), Negative () , Check (cough), Positive (), Present (disease C), Acknowledge ()]

また、対話行為シーケンス1にエージェント2001とバックエンド2005との間で授受される対話行為を加えたシーケンスは、次の対話行為シーケンス2となっている。   Further, a sequence obtained by adding a dialogue act exchanged between the agent 2001 and the back end 2005 to the dialogue act sequence 1 is the following dialogue act sequence 2.

対話行為シーケンス2=[clear(),pass(),What1st(),Provide(頭痛),Confirm(頭痛),Correct(めまい),push(めまい),pass(),WhatElse(),Provide(動悸),push(動悸),pass(),WhatElse(),Negative(),solve1st(),suggest(発熱),Check(発熱),Negative(),set_negative(),suggest(咳),Check(咳),Positive(),set_positive(),conclude(病気C),Present(病気C),Acknowledge()]   Dialogue action sequence 2 = [clear (), pass (), What1st (), Provide (headache), Confirm (headache), Correct (vertigo), push (vertigo), pass (), WhatElse (), Provide (palpitations) , Push (palpitations), pass (), WhatElse (), Negative (), solve1st (), suggest (fever), Check (fever), Negative (), set_negative (), suggest (cough), Check (cough), Positive (), set_positive (), conclude (disease C), present (disease C), Acknowledge ()]

対話行為シーケンス2において奇数番目の対話行為はエージェント2001の行動に該当し、偶数番目の対話行為はエージェント2001が、環境としてのフロントエンド2002又はバックエンド2005から得た観測に該当する。括弧内の付帯情報に注目すると、観測とそれに続く行動の間で一致している。つまり、エージェント2001(対話エージェント)は、Provideに対してConfirm、Correctに対してpush等と対話行為タイプを決定しているが、付帯情報については、単に仲介しているだけである。このような観測に応じて行動を決定する動作は、エージェント2001の決定部200(つまり分離部202、行動決定部203、及び、合成部204)によって実現される。   In the dialogue action sequence 2, the odd-numbered dialogue act corresponds to the action of the agent 2001, and the even-numbered dialogue act corresponds to the observation obtained by the agent 2001 from the front end 2002 or the back end 2005 as the environment. Looking at the accompanying information in parentheses, there is a match between the observation and subsequent actions. That is, the agent 2001 (dialogue agent) determines the dialogue action type as “Confirm” for “Provide”, “push” for “Correct”, etc., but it merely mediates the incidental information. The operation of determining an action according to such observation is realized by the determination unit 200 (that is, the separation unit 202, the action determination unit 203, and the synthesis unit 204) of the agent 2001.

(対話状態に係る考察)
以下、上述した対話システム10による対話において遷移する対話状態の数の低減化等について、図6A〜図6Dを用いて考察を行う。
(Consideration on dialogue state)
Hereinafter, the reduction of the number of dialog states that transition in the dialog by the dialog system 10 described above will be discussed with reference to FIGS. 6A to 6D.

まず、上述の図5の例に係る対話行為シーケンス1を用いて、ユーザと関わるフロントエンドのみを環境とした対話システムを仮定し、この仮定した対話システムでのフロントエンドとエージェント(ここでは知識処理の機能を包含するシステム)とでの対話の例について考える。   First, using the dialogue action sequence 1 according to the example of FIG. 5 described above, a dialogue system in which only the front end associated with the user is used as an environment is assumed, and the front end and the agent (here, knowledge processing) in the assumed dialogue system are assumed. Consider an example of interaction with a system that includes the functions of

図6Aは、対話行為シーケンス1が含まれるように作成した状態遷移の一例を示す状態遷移図である。なお、POMDPモデルにおいては、状態がsであるときに、行動aを取ったら、状態がs´に遷移する時の遷移確率T(s´|s,a)と、行動aを取った結果状態s´において観測zが得られる観測確率O(z|a,s´)とで行動と観測と状態の関係が表現される。ここでは、POMDPモデルにおける上述の確率を閾値処理して、行動と観測と状態の関係を、状態遷移図で表している。以下で説明する図6B〜図6Dの各状態遷移図も図6Aと同様である。例えば、状態遷移図での矢線は、状態の遷移確率が一定閾値を超える経路を表したものである。また、図6A〜図6Dにおいて、各ノードを表す円には、状態の名前を記している。ノード間のエッジを表す矢線には、エージェントから環境への行動としての対話行為を記している。また、各ノード(状態)に、エージェントによる環境の観測としての対話行為を記している。これにより、状態遷移図において、行動によって、環境の状態が変化し、変化した状態の下で観測がなされることが表される。   FIG. 6A is a state transition diagram illustrating an example of a state transition created so as to include the dialogue action sequence 1. In the POMDP model, if the action a is taken when the state is s, the transition probability T (s ′ | s, a) when the state transitions to s ′ and the result state obtained by taking the action a The relationship between the behavior, the observation, and the state is expressed by the observation probability O (z | a, s ′) at which the observation z is obtained at s ′. Here, the above probabilities in the POMDP model are subjected to threshold processing, and the relationship between behavior, observation and state is represented by a state transition diagram. Each state transition diagram of FIGS. 6B to 6D described below is also the same as FIG. 6A. For example, an arrow line in the state transition diagram represents a route in which the state transition probability exceeds a certain threshold. Further, in FIGS. 6A to 6D, the names of the states are written in circles representing the respective nodes. An arrow representing an edge between nodes describes a dialogue act as an action from the agent to the environment. In addition, each node (state) describes an interactive action as an environment observation by an agent. As a result, the state transition diagram indicates that the state of the environment changes depending on the behavior, and observation is performed under the changed state.

ここでは、対話行為シーケンス1を2つの部分(パート)に分けて考察を行う。まず、先行するパートである[What1st(),Provide(頭痛),Confirm(頭痛),Correct(めまい),WhatElse(),Provide(動悸),WhatElse(),Negative()]のパートは、オープン質問(open question)を主としたユーザ主体の対話が行われているパートである。このパートは、問診タスクにおいて、患者中心の問診と言われる。一方、後続するパートである[Check(発熱),Negative(),Check(咳),Positive(),Present(病気C),Acknowledge()]のパートは、クローズド質問(closed question)を主としたシステム(対話システム)主体の対話が行われているパートである。このパートは、問診タスクにおいて、医師中心の問診と言われる。   Here, the dialogue action sequence 1 is considered by dividing it into two parts. First, the preceding parts [What1st (), Provide (headache), Confirm (headache), Correct (vertigo), WhatElse (), Provide (palpitations), WhatElse (), Negative ()] are open questions. This is a part where user-centered dialogues are mainly conducted (open questions). This part is referred to as patient-centered interview in the interview task. On the other hand, the following parts [Check (fever), Negative (), Check (cough), Positive (), Present (disease C), Acknowledge ()] are mainly closed questions. This is the part where the system (dialogue system) is engaged. This part is called a doctor-centered interview in the interview task.

先行するパート(ユーザ主体の対話パート)について、図6Aでは、このパートの状態(ノード)を直線状に配置している。このパートに対応する対話行為のシーケンスは、Negative()という観測で終わる可変長のシーケンスとなる。このパートの状態の数を減らすには、「s1a」〜「s3a」を縮退させて、ループ構造にすればよいように思われる。ループによって、可変長のシーケンスに対応できる。   With respect to the preceding part (user-centered dialogue part), the state (node) of this part is arranged in a straight line in FIG. 6A. The sequence of dialogue actions corresponding to this part is a variable length sequence that ends with the observation Negative (). In order to reduce the number of states of this part, it seems that “s1a” to “s3a” are degenerated to form a loop structure. Loops can handle variable length sequences.

また、後続するパート(システム主体の対話パート)について、図6Aでは、このパートの状態(ノード)を木構造となるように配置している。対話行為シーケンス1のシステム主体の対話パートを、トレースするためには、「s4a」に続いて、状態の系列[s6a、s9a、s13a]という経路を辿ればよい。木構造のパートは全体として、図4Bに例示したような質問木に対応しており、質問と回答に従って異なる結論に到達できるようになっている。このシステム主体の対話パートは、例えば知識ベースの規模により増大し得る。つまり、1000の結論があれば、状態数は1000以上になる。また、図4Bの質問木では、単純な例であるので長さが揃っているが、システム主体の対話パートの経路の長さは可変長である。このパートも、ループ構造にすればよいように思われる。   Further, in FIG. 6A, the state (node) of the subsequent part (system-based dialogue part) is arranged in a tree structure. In order to trace the dialogue part of the system subject of the dialogue action sequence 1, it is only necessary to follow the path of the state series [s6a, s9a, s13a] following “s4a”. The part of the tree structure as a whole corresponds to the question tree illustrated in FIG. 4B so that different conclusions can be reached according to the question and the answer. This system-centered dialogue part can increase with the size of the knowledge base, for example. That is, if there are 1000 conclusions, the number of states becomes 1000 or more. The query tree in FIG. 4B is a simple example and has the same length, but the path length of the system-based dialogue part is variable. It seems that this part should also have a loop structure.

図6Bは、以上の考察に基づいて、2つのループ構造を持つようにした状態遷移の例を示す状態遷移図である。   FIG. 6B is a state transition diagram showing an example of state transition having two loop structures based on the above consideration.

図6Bは、図6Aと同様に、対話行為シーケンス1のユーザ主体の対話パート[What1st(),Provide(頭痛),Confirm(頭痛),Correct(めまい),WhatElse(),Provide(動悸),WhatElse(),Negative()]と、システム主体の対話パート[Check(発熱),Negative(),Check(咳),Positive(),Present(病気C),Acknowledge()]とに対応している。但し、図6Bでは、対話行為の付帯情報である「頭痛」、「病気C」等は、一般化して「*」で表している。この一般化した部分の付帯情報はいずれであっても、状態との対応関係が変わらないと考えられる。   6B is similar to FIG. 6A, the user-directed dialogue part of the dialogue action sequence 1 [What1st (), Provide (headache), Confirm (headache), Correct (vertigo), WhatElse (), Provide (palpitations), WhatElse (), Negative ()] and system-oriented dialogue parts [Check (fever), Negative (), Check (cough), Positive (), Present (disease C), Acknowledge ()]. However, in FIG. 6B, “headache”, “disease C”, and the like, which are supplementary information of the dialogue action, are generalized by “*”. Regardless of the generalized part of the incidental information, it is considered that the correspondence with the state does not change.

図6Bの状態「s1b」に注目すると、次の状態は「s1b」又は「s2b」である。つまり、「s1b」から出て「s1b」に戻るループを0回以上回った後に、ループから抜け出して、「s2b」に進む。「s1b」と「s2b」には、異なる観測が記されており、行動としての対話行為「WhatElse()」に対して、「Negative()」という対話行為が観測された場合に、ループから抜け出す。   When attention is paid to the state “s1b” in FIG. 6B, the next state is “s1b” or “s2b”. In other words, after the loop that goes out of “s1b” and returns to “s1b” is repeated zero or more times, the loop exits and goes to “s2b”. Different observations are written in “s1b” and “s2b”, and when a dialogue action “Negative ()” is observed with respect to the dialogue action “WhatElse ()” as an action, the process exits the loop. .

また、状態「s3b」に注目すると、次の状態は「s3b」又は「s4b」である。つまり、「s3b」から出て「s3b」に戻るループを0回以上回った後に、ループから抜け出して、「s4b」に進む。「s3b」と「s4b」には、同じ観測(「Negative()」及び「Positive()」)が記されており、行動「Check(*)」も同じであるため、ループを抜けるための条件は明確でない。このような場合には、ループを回る遷移確率とループを抜ける遷移確率との比によって、何回回ったらループを抜けるのかが決定される。しかし、問診により病気を特定するという問診タスクを考えれば、終了は、医者が、問診の内容によって決めるものであって、回数で決めるべきものではない。或いは「s4b」を除いて「s3b」から「s5b」に、行動「Present(*)」によって遷移すればよいのかもしれない(図示せず)。しかし、行動選択のための情報がない。ここでは、「Check(*)」という行動によってループを回るか「Present(*)」という行動によってループを抜けるかについて、強化学習によって得られた方策に従うとしても、状態と観測とが同じであれば、常に同じ行動が選ばれる。つまり、無限ループに入るか、ループを1回も回らないで通過するかしかできないことになる。これは、ユーザと関わるフロントエンドのみを環境として、対話行為の付帯情報を使わずに、状態を極力縮退させようとした場合に起こる。これでは、タスクが遂行できない。   When attention is paid to the state “s3b”, the next state is “s3b” or “s4b”. In other words, after the loop that goes out of “s3b” and returns to “s3b” is repeated zero or more times, the loop exits the loop and goes to “s4b”. Since “s3b” and “s4b” have the same observation (“Negative ()” and “Positive ()”) and the action “Check (*)” is also the same, the condition for exiting the loop Is not clear. In such a case, how many times the loop exits the loop is determined by the ratio of the transition probability that traverses the loop and the transition probability that exits the loop. However, considering an interrogation task in which an illness is identified through an interrogation, the termination is determined by the doctor according to the contents of the interrogation, not the number of times. Or it may be sufficient to change from “s3b” to “s5b” by the action “Present (*)” except for “s4b” (not shown). However, there is no information for action selection. Here, whether the state and observation are the same even if the policy obtained by reinforcement learning is used to determine whether to go around the loop by the action “Check (*)” or to exit the loop by the action “Present (*)” The same behavior is always chosen. In other words, you can only enter an infinite loop or pass through the loop without ever going through it. This occurs when only the front end associated with the user is used as an environment, and the state is degenerated as much as possible without using the incidental information of the dialogue action. With this, the task cannot be performed.

次に、上述の図5の例に係る対話行為シーケンス2を用いて、フロントエンド2002とバックエンド2005とのそれぞれを環境とした対話システム10について考える。   Next, consider the dialogue system 10 using the front end 2002 and the back end 2005 as environments using the dialogue action sequence 2 according to the example of FIG. 5 described above.

図6Cは、対話行為シーケンス2に対応して作成した状態遷移の一例を示す状態遷移図である。図6Cの状態遷移図は、2つのループ構造を持ち、かつ、2つの環境に対応するようにしたものである。   FIG. 6C is a state transition diagram illustrating an example of a state transition created corresponding to the dialogue action sequence 2. The state transition diagram of FIG. 6C has two loop structures and corresponds to two environments.

全体を通して、2つのループが存在するのは、図6Bと図6Cとで同様である。図6Cでは、各ノードの配置について、左側がフロントエンド2002とエージェント2001との間で授受される対話行為と、右側がエージェント2001とバックエンド2005との間で授受される対話行為と、それぞれ対応するようにノードを配置している。   The existence of two loops throughout is similar in FIGS. 6B and 6C. In FIG. 6C, regarding the arrangement of each node, the left side corresponds to the interactive action exchanged between the front end 2002 and the agent 2001, and the right side corresponds to the interactive action exchanged between the agent 2001 and the back end 2005. The nodes are arranged to do so.

ここでは、上述の対話行為シーケンス1と同様に、対話行為シーケンス2を2つの部分(パート)に分けて考察を行う。つまり、ユーザ主体の対話パートである[clear(),pass(),What1st(),Provide(頭痛),Confirm(頭痛),Correct(めまい),push(めまい),pass(),WhatElse(),Provide(動悸),push(動悸),pass(),WhatElse(),Negative()]のパートと、これに後続するパートであるシステム主体の対話パートである[solve1st(),suggest(発熱),Check(発熱),Negative(),set_negative(),suggest(咳),Check(咳),Positive(),set_positive(),conclude(病気C),Present(病気C),Acknowledge()]のパートに分ける。   Here, like the above-described dialogue action sequence 1, the dialogue action sequence 2 is divided into two parts (parts) for consideration. In other words, the user-centered conversation parts [clear (), pass (), What1st (), Provide (headache), Confirm (headache), Correct (vertigo), push (vertigo), pass (), WhatElse (), Provide (powder), push (powder), pass (), WhatElse (), Negative ()] parts, and subsequent parts that are system-oriented dialog parts [solve1st (), suggest (fever), Check (fever), Negative (), set_negative (), suggest (cough), Check (cough), Positive (), set_positive (), conclude (disease C), Present (disease C), Acknowledge () Divide.

図6Cにおけるユーザ主体の対話パートには、1つ目のループが存在し、このループの終了条件は、フロントエンド2002からの観測(具体的には「Negative()」)によって与えられる。この1つ目のループの終了条件は、図6Bに示す1つ目のループの終了条件と同様である。一方、図6Cにおけるシステム主体の対話パートには、2つ目のループが存在し、ループの終了条件は、バックエンド2005からの観測(具体的には「conclude(*)」)によって与えられる。補足すれば、「s5c」においてとるべき行動は「Check(*)」であり、その遷移先は3つあるが、次に想定される観測毎に状態を設定されているので、観測確率を乗ずると観測に応じた状態の確率が高くなる。つまり、2つ目のループの終了条件は、図6Bとは異なり、観測として与えられた対話行為が状態の確率に反映され、行動決定の基準となり得るので、強化学習により適切な方策の獲得が可能となる。   A first loop exists in the user-centered dialogue part in FIG. 6C, and the end condition of this loop is given by observation from the front end 2002 (specifically, “Negative ()”). The end condition of the first loop is the same as the end condition of the first loop shown in FIG. 6B. On the other hand, a second loop exists in the system-based dialogue part in FIG. 6C, and the loop termination condition is given by observation from the back end 2005 (specifically, “conclude (*)”). In other words, the action to be taken in “s5c” is “Check (*)”, and there are three transition destinations. However, since the state is set for each next assumed observation, the observation probability is multiplied. And the probability of a state corresponding to the observation increases. In other words, the end condition of the second loop is different from that shown in FIG. 6B. Since the dialogue act given as an observation is reflected in the probability of the state and can be used as a criterion for action determination, acquisition of an appropriate policy can be achieved by reinforcement learning. It becomes possible.

なお、図6Cにおける1つ目のループでは、[Confirm(頭痛),Correct(めまい)]というシーケンスに対応する状態遷移は省略されており、これについては、次の図6Dを用いて考察する。   In the first loop in FIG. 6C, the state transition corresponding to the sequence [Confirm (headache), Correct (vertigo)] is omitted, and this will be discussed with reference to FIG. 6D.

図6Dは、図6Cの「s2c」の状態を分割して、不確実性への対応を行うための拡張を行った状態遷移を示す状態遷移図である。図6Dにおいて、「s2d lev0」、「s2d lev1」、「s2d posi」、及び「s2d corr」の4つを除くノードについては、図6Cにおける同じ名前のノードと対応している。   FIG. 6D is a state transition diagram illustrating a state transition in which the state of “s2c” in FIG. 6C is divided and expanded to cope with the uncertainty. In FIG. 6D, the nodes except for “s2d lev0”, “s2d lev1”, “s2d posi”, and “s2d corr” correspond to the nodes having the same name in FIG. 6C.

拡張の1つ目は、フロントエンド2002の入力処理部201から得られる言語理解の結果の信頼度に応じた状態の分割である。「s2d lev0」及び「s2d lev1」の各ノードは、予め設定した信頼度の閾値との大小比較によって分かれるようにしたものであり、閾値より大きいものは「s2d lev0」とし、閾値未満であれば「s2d lev1」としている。この例では、2分割であるが、必要に応じて分割数は、数倍程度に増やせばよい。例えば、4分割する場合の各閾値の設定の仕方としては、信頼度の取り得る値域を4等分するように閾値を設定する方法、頻度分布を得て4分位点を閾値として設定する方法等が挙げられる。   The first extension is a state division according to the reliability of the language understanding result obtained from the input processing unit 201 of the front end 2002. Each node of “s2d lev0” and “s2d lev1” is separated by a magnitude comparison with a predetermined reliability threshold, and “s2d lev0” is greater than the threshold, and if it is less than the threshold “S2d lev1”. In this example, the number of divisions is two, but the number of divisions may be increased several times as necessary. For example, as a method of setting each threshold value in the case of dividing into four, a method of setting a threshold value so that a range of reliability can be divided into four equal parts, a method of obtaining a frequency distribution and setting a quartile as a threshold value Etc.

拡張の2つ目は、エージェント2001がフロントエンド2002から得られた情報をバックエンド2005へ仲介する前に、フロントエンド2002に確認を行うことで確実性を高める場合に対応した状態「s2d posi」と「s2d corr」とを設けたことである。   The second extension is the state “s2d posi” corresponding to the case where the agent 2001 confirms the front end 2002 before mediating the information obtained from the front end 2002 to the back end 2005 to increase the certainty. And “s2d corr”.

対話行為シーケンス2の[Provide(頭痛),Confirm(頭痛),Correct(めまい),push(めまい),pass(),WhatElse(),Provide(動悸),push(動悸)]の部分に沿って、状態遷移の様子を追ってみると、「Provide(頭痛)」が観測される際の信頼度が比較的低い場合に状態「s2d lev1」にいると想定され、「Confirm(頭痛)」という行動が決定され、状態は「s2d corr」に遷移し、「Correct(めまい)」が観測される。次に「push(めまい)」という行動が決定されて「s3c」に遷移し、「pass()」が観測される。次に、「WhatElse()」という行動が決定され、「Provide(動悸)」が比較的高い信頼度とともに観測されると「s2d lev0」にいると想定される。ここでは、確認を行わずに、行動「push(動悸)」を伴って「s3c」に遷移する。   According to the [Provide, Confirm (headache), Correct, push (vertigo), pass (), WhatElse (), Provide (palpation), push (palpitation)] part of dialogue action sequence 2 Following the state transition, it is assumed that the state is “s2d lev1” when the reliability when “Provide (headache)” is observed is relatively low, and the action “Confirm (headache)” is decided Then, the state transitions to “s2d corr”, and “Correct” is observed. Next, the action “push (vertigo)” is determined, transition is made to “s3c”, and “pass ()” is observed. Next, when the action “WhatElse ()” is determined and “Provide” is observed with a relatively high degree of reliability, it is assumed that the user is in “s2d lev0”. Here, without confirming, the process transitions to “s3c” with the action “push”.

このように、状態を、フロントエンド2002からの観測の信頼度に基づいて分割し、分割された状態毎に別々の行動を紐付けることができる。図6Dの例では、信頼度のレベル(つまり閾値での分割数)が2つで、信頼度が高いときには確認を行わず、信頼度が低いときには確認を行う。このような信頼度に応じた行動を定める方策を人手によって設定することは、信頼度のレベルが2つであれば容易である。信頼度のレベルを多段階にする場合においては、レベル毎に確認を行うか行わないかを設定することには、試行錯誤が必要となり得る。   In this manner, the state can be divided based on the reliability of observation from the front end 2002, and different actions can be associated with each divided state. In the example of FIG. 6D, when the reliability level (that is, the number of divisions at the threshold) is two and the reliability is high, confirmation is not performed, and when the reliability is low, confirmation is performed. It is easy to manually set a policy for determining an action according to such reliability if the level of reliability is two. In the case where the level of reliability is set in multiple stages, trial and error may be required to set whether to perform confirmation for each level.

なお、図5の例についての説明において、対話行為シーケンス2について、観測の対話行為とそれに続く行動の対話行為との間で付帯情報が一致することを説明したが、図6Dでは、[s2d lev1,s2d posi,s3c」の経路で、例えば、[Provide(頭痛),Confirm(頭痛),Positive(),push(頭痛)]というシーケンスに対応する状態遷移も可能となっている。上述したように、エージェント2001は、取得した対話行為における対話行為タイプと分離した付帯情報については、取得した最新の1つを保持しているので、保持している最新の付帯情報を、必要に応じて行動の対話行為として補うことで、図6Dの状態遷移に対応できる。   In the description of the example of FIG. 5, it has been described that the incidental information matches between the dialog action of observation and the dialog action of the subsequent action in the dialog action sequence 2, but in FIG. 6D, [s2d lev1 , S2d posi, s3c ", for example, state transition corresponding to the sequence [Provide (headache), Confirm (headache), Positive (), push (headache)] is also possible. As described above, since the agent 2001 holds the latest acquired one of the incidental information separated from the dialogue action type in the acquired dialog action, the agent 2001 needs the latest incidental information held. Accordingly, it is possible to cope with the state transition of FIG.

(比較実験結果)
以下、対話システム10の効果を定量的に示すための比較実験について説明する。
(Comparison experiment result)
Hereinafter, a comparative experiment for quantitatively showing the effect of the dialogue system 10 will be described.

対話システム10を用いて問診タスクとしての対話のシミュレーション実験を行った。図7は、対話システム10を用いたシミュレーション実験の結果を示す図である。   A dialogue simulation experiment as an inquiry task was conducted using the dialogue system 10. FIG. 7 is a diagram illustrating a result of a simulation experiment using the dialogue system 10.

このシミュレーション実験では、知識ベース206として、39種類の症状と854の病気の関係を収めたものを用いた。また、対話行為タイプとして、観測2003、観測2006、行動2004、及び、行動2007(図2参照)に含まれる対話行為における対話行為タイプを用いた。対話のシミュレーション実験において対話システム10のフロントエンド2002と対話するユーザとしての患者シミュレータは、指定された病気と関連づけられた症状の回答(対話行為「Provide()」に相当する回答)を1回行い、その後は、対話システム10の質問に返答する。   In this simulation experiment, a knowledge base 206 containing 39 kinds of symptoms and 854 illnesses was used. Moreover, the dialogue action type in the dialogue action contained in the observation 2003, the observation 2006, the action 2004, and the action 2007 (see FIG. 2) was used as the dialogue action type. The patient simulator as a user who interacts with the front end 2002 of the dialogue system 10 in the dialogue simulation experiment performs a response of a symptom associated with the specified disease (an answer corresponding to the dialogue action “Provide ()”) once. Thereafter, the question of the dialogue system 10 is answered.

その他の主な条件は、以下の通りである。   Other main conditions are as follows.

・フロントエンド2002における言語理解の機能部分は、25%の割合で誤った症状を生成する。
・信頼度に応じた状態の分割数は4で、分割のための3つの閾値は、0.2、0.5及び0.8である。
・バックエンド2005(知識処理部207)は、症状に係る検索キーワードを用いて検索して特定された病気(病気の候補)が1つになるか、又は、病気を絞り込むためのキーワード(症状)の候補がなくなると、検索により特定された病気を結論として出力(エージェント2001に提供)する。それ以外の場合には、バックエンド2005は、絞り込むために有効なキーワードを提案(エージェント2001に提供)する。
・結論として得られた病気の数が3つ以内で、かつ、患者シミュレータに対して指定された病気が含まれれば、正解とする。
-The functional part of language understanding in the front end 2002 generates false symptoms at a rate of 25%.
The number of divisions according to the reliability is 4, and the three threshold values for division are 0.2, 0.5, and 0.8.
The back end 2005 (knowledge processing unit 207) searches for a symptom-related search keyword to identify one disease (disease candidate) or a keyword (symptom) for narrowing down the disease. When there are no more candidates, the disease identified by the search is output as a conclusion (provided to the agent 2001). In other cases, the back end 2005 proposes (provides to the agent 2001) effective keywords for narrowing down.
-If the number of illnesses obtained as a conclusion is within 3 and the illness specified for the patient simulator is included, the answer is correct.

図7には、以上の条件で、「確認戦略なし」と、「確認戦略あり(hand-crafted)」と、「確認戦略あり(強化学習)」との3種類のモデルにおける実験結果をまとめている。ここで、「確認戦略なし」は、図6Cの状態遷移図に対応するモデルである。また、「確認戦略あり(hand-crafted)」は、信頼度が0.5以上の2つの状態については確認を行わず、信頼度が0.5未満の2つの状態については確認を行うようにしたものであり、図6Dの状態遷移図に対応するモデルである。「確認戦略あり(強化学習)」も、図6Dの状態遷移図の類型に相当するモデルであるが、このモデルでは、信頼度に応じた4つの状態が取るべき行動について、確認(Confirm)してから「push」するか、確認しないで「push」するかは、POMDPモデルでの強化学習によって得られた方策に従うようにした。ある環境内でエージェントは現在の状態を観測して取るべき行動を決定するところ、強化学習では、エージェントが逐次選択した行動を行うことで、環境から最も多くの報酬が得られるような方策を学習する。「確認戦略あり(強化学習)」のモデルの強化学習での報酬については、トレーニング用の対話コーパスに表れる対話行為の系列が通る経路については5、それ以外は−50を基本として、特に、「s2d corr」からの「push(*)」は100、「s2d posi」からの「push(*)」は−1として、誤りの訂正のための確認を行って訂正されれば価値が高く、訂正の必要がないときの確認は価値が低いという設定を行った。   FIG. 7 summarizes the experimental results in three types of models, “No confirmation strategy”, “Hand-crafted”, and “With confirmation strategy (reinforcement learning)” under the above conditions. Yes. Here, “no confirmation strategy” is a model corresponding to the state transition diagram of FIG. 6C. In addition, “hand-crafted” does not check for two states with a reliability of 0.5 or higher, but checks for two states with a reliability of less than 0.5. This is a model corresponding to the state transition diagram of FIG. 6D. “With confirmation strategy (reinforcement learning)” is a model corresponding to the type of state transition diagram in FIG. 6D. In this model, the actions to be taken by the four states according to the reliability are confirmed. Whether to “push” afterwards or to “push” without confirming is to follow the policy obtained by reinforcement learning in the POMDP model. In an environment, the agent determines the action to be taken by observing the current state. In reinforcement learning, the agent learns the policy that can obtain the most reward from the environment by performing the action selected by the agent sequentially. To do. As for the reward in the reinforcement learning of the model with “confirmation strategy (reinforcement learning)”, the path through which the dialogue action appears in the training dialogue corpus is 5; “push (*)” from “s2d corr” is 100, “push (*)” from “s2d posi” is −1, and it is highly valuable if it is corrected by checking for error correction. Confirmation when there is no need is set to be low value.

図7の平均ターン数は、フロントエンド2002とユーザ(患者シミュレータ)の間のインタラクションのみについてカウントしたターン数である。また、平均報酬は、「確認戦略あり(強化学習)」の他に強化学習を用いないモデルについても同じ条件で算出している。   The average number of turns in FIG. 7 is the number of turns counted only for the interaction between the front end 2002 and the user (patient simulator). The average reward is also calculated under the same conditions for a model that does not use reinforcement learning, in addition to “with confirmation strategy (reinforcement learning)”.

実験結果として図7のように、正解率は、「確認戦略あり(強化学習)」が最も高く、「確認戦略あり(hand-crafted)」が次に高く、「確認戦略なし」が最も低いことが確認できた。また、平均ターン数は、「確認戦略あり(強化学習)」が最も少なく、「確認戦略あり(hand-crafted)」が次に少なく、「確認戦略なし」が最も多いことが確認できた。また、得られる平均報酬は、「確認戦略あり(強化学習)」が最も高く、「確認戦略あり(hand-crafted)」が次に高く、「確認戦略なし」が最も低いことが確認できた。   As a result of the experiment, as shown in FIG. 7, the correct answer rate is the highest with “confirmation strategy (reinforcement learning)”, the next highest with “hand-crafted”, and the lowest with “no confirmation strategy” Was confirmed. It was also confirmed that the average number of turns was the smallest with “confirmation strategy (reinforcement learning)”, the second smallest with “hand-crafted” and the most common “no confirmation strategy”. It was also confirmed that the average reward obtained was the highest for “with confirmation strategy (reinforcement learning)”, the next highest for “hand-crafted”, and the lowest for “no confirmation strategy”.

なお、「確認戦略あり(強化学習)」のモデルの強化学習に用いたPOMDPソルバーによる学習結果が収束するまでに要した時間は1秒未満であるが、図6Aの状態遷移図に対応するモデルではPOMDPソルバーが要した時間は30日以上であった。   The time taken for the learning result by the POMDP solver used for the reinforcement learning of the model with “confirmation strategy (reinforcement learning)” to converge is less than 1 second, but the model corresponding to the state transition diagram of FIG. 6A Then, the time required for the POMDP solver was 30 days or more.

(他の実施の形態等)
以上のように、本発明に係る技術の例示として実施の形態1を用いて説明した。しかしながら、上述の実施の形態は一例にすぎず、各種の変更、付加、省略等が可能であることは言うまでもない。
(Other embodiments, etc.)
As described above, the first embodiment has been described as an example of the technique according to the present invention. However, it goes without saying that the above-described embodiment is merely an example, and various modifications, additions, omissions, and the like are possible.

上述の実施の形態では、バックエンド2005が知識ベース206の検索処理を行う例を示したが、バックエンド2005における情報処理は、検索処理でなくてもよく、いかなる処理であってもよい。バックエンド2005は知識ベース206以外の外部装置と通信してもよい。また、知識ベース206は必ずしもバックエンド2005の外部に存在する必要はなくバックエンド2005に含まれるものとしてもよい。   In the above-described embodiment, an example in which the back end 2005 performs the search processing of the knowledge base 206 has been described. However, the information processing in the back end 2005 may not be the search processing but may be any processing. The back end 2005 may communicate with external devices other than the knowledge base 206. Further, the knowledge base 206 does not necessarily need to exist outside the back end 2005 and may be included in the back end 2005.

また、上述の実施の形態では、フロントエンド2002、バックエンド2005が1つずつである例を示したが、フロントエンド2002及びバックエンド2005のそれぞれは、1つに限定されず、複数設けてもよい。   In the above-described embodiment, an example in which there is one front end 2002 and one back end 2005 has been described. However, each of the front end 2002 and the back end 2005 is not limited to one, and a plurality of front ends 2002 and back ends 2005 may be provided. Good.

また、上述の実施の形態では、付帯情報がキーワードである例を示したが、付帯情報は文字列以外の情報であってもよい。例えば、付帯情報は、標章、図形、画像、音声データ等であってもよい。また、例えば、付帯情報は、キーワードのみではなく、キーワードの種類を表すスロットとキーワードとの組であってもよい。   In the above-described embodiment, an example in which the incidental information is a keyword has been shown, but the incidental information may be information other than a character string. For example, the incidental information may be a mark, a figure, an image, audio data, or the like. Further, for example, the incidental information may be not only a keyword but also a set of a slot and a keyword representing a keyword type.

また、上述の実施の形態では行動決定部203が、POMDPモデルに基づいて行動として対話行為タイプを決定することとしたが、行動決定部203は、必ずしもPOMDPモデルに基づくものでなくてもよい。行動決定部203は、例えば、信念状態に依らず、予め定められた方策と過去に入力された対話行為タイプの系列(履歴)とに基づいて、対話行為タイプを決定するものであってもよい。   In the above-described embodiment, the action determining unit 203 determines the dialogue action type as the action based on the POMDP model. However, the action determining unit 203 does not necessarily have to be based on the POMDP model. For example, the action determining unit 203 may determine a dialogue action type based on a predetermined policy and a series (history) of dialogue action types input in the past, regardless of the belief state. .

また、上述の実施の形態では、提供部205が、対話行為における先頭文字が大文字か小文字かにより対話行為の提供先がフロントエンド2002かバックエンド2005かを判定する例を示した。しかし、対話行為における対話行為タイプの値(対話行為タイプ値)が、フロントエンド2002に向けたものとして予め定められた種類(第1種)か、バックエンド2005に向けたものとして予め定められた種類(第2種)かにより区別できれば足りるので、その区別を、大文字か小文字かによる区別以外の方法で実現してもよい。提供部205が、対話行為タイプ値と、第1種か第2種かの種類(つまり提供先を区別する種類)とを対応付けた対応表を有していてもよい。例えば、提供部205は、決定部200により決定された提供用の対話行為における対話行為タイプが第1種及び第2種のいずれの対話行為タイプ値を表すかに基づいて、対話行為の提供先を選択し、選択した提供先へ対話行為を提供し得る。   In the above-described embodiment, the example in which the providing unit 205 determines whether the providing destination of the interactive action is the front end 2002 or the back end 2005 based on whether the first character in the interactive action is uppercase or lowercase. However, the value of the dialogue action type in the dialogue action (dialogue action type value) is predetermined as a type (first type) that is predetermined for the front end 2002 or predetermined for the back end 2005. Since it suffices to distinguish according to the type (second type), the distinction may be realized by a method other than the distinction based on whether it is uppercase or lowercase. The providing unit 205 may have a correspondence table in which the interactive action type value is associated with the first type or the second type (that is, the type for distinguishing the providing destination). For example, the providing unit 205 provides the destination of the interactive action based on whether the interactive action type in the providing interactive action determined by the determining unit 200 represents the first type or the second type of interactive action type value. Can be selected to provide an interactive action to the selected provider.

上述の実施の形態では、対話システム10を問診に用いる場合を例として説明した。しかし、上述の対話行為タイプは、問診に限らず、対話により情報を特定するタスクにおいては共通するものである。   In the above-described embodiment, the case where the interactive system 10 is used for an inquiry has been described as an example. However, the above-described dialogue action type is not limited to an inquiry, but is common to tasks that specify information through dialogue.

そのため、対話システム10を、問診の例に限らず、種々の分野において、ユーザとの対話により情報を特定するタスクの遂行に適用することが可能である。具体例としては、対話システム10は、料理等の分野でのレシピ検索、観光等の分野での旅行プラン検索、不動産売買等の分野での不動産物件検索、テレビジョン放送等の分野での映像コンテンツ検索等に適用可能である。この場合に、対話システム10(図2参照)では、例えば、知識ベース206には、所定の分野(対話システム10の適用分野等)に有用な情報を保持させておき、フロントエンド2002で、当該分野に関して、自然言語で表現される情報をユーザとの間で交換するようにすればよい。なお、対話システム10が行う対話処理は図3で例示した処理と同様である。   Therefore, the dialogue system 10 is not limited to the example of inquiry, and can be applied to the performance of a task for specifying information through dialogue with the user in various fields. As a specific example, the dialogue system 10 is a video content in fields such as recipe search in the field of cooking, travel plan search in the field of tourism, real estate property search in the field of real estate sales, television broadcasting, and the like. It can be applied to search. In this case, in the dialog system 10 (see FIG. 2), for example, the knowledge base 206 holds information useful for a predetermined field (application field of the dialog system 10, etc.), and the front end 2002 Regarding the field, information expressed in a natural language may be exchanged with the user. Note that the dialogue processing performed by the dialogue system 10 is the same as the processing illustrated in FIG.

対話システム10をレシピ検索に用いる場合においては、知識ベース206に、例えば、食材、調味料、料理、調理方法等に関連する情報を保持させ、フロントエンド2002では、例えば、好みの料理のジャンルや食材等に関する情報をユーザとの対話により取得するようにすればよい。また、対話システム10を旅行プラン検索に用いる場合においては、知識ベース206に、例えば、行き先、人数、宿泊数、予算等に関する情報を保持させ、フロントエンド2002では、例えば、ユーザが所望する旅行プランの行き先や人数等に関する情報をユーザとの対話により取得するようにすればよい。また、対話システム10を不動産物件検索に用いる場合においては、知識ベース206には、例えば、住居エリア、間取り、築年数、最寄り駅からの距離、家賃等に関連する情報を保持させ、フロントエンド2002では、例えば、ユーザが所望する不動産物件の住居エリアや間取り等に関する情報をユーザとの対話により取得するようにすればよい。また、対話システム10を映像コンテンツ検索に用いる場合においては、知識ベース206には、例えば、ジャンル、出演者、放送局、放送日時等に関する情報を保持させ、フロントエンド2002では、例えば、ユーザが見たい番組のジャンルや出演者等に関する情報をユーザとの対話により取得するようにすればよい。なお、いずれのタスクにおいても、ユーザとの対話によりユーザから取得する情報の種類、取得順、総数等は、予め定められた一定値等である必要はなく、ユーザが所望する情報が十分に絞り込まれて特定されるという条件を満たすように動的に決定されればよい。   When the dialog system 10 is used for recipe search, the knowledge base 206 holds information related to, for example, ingredients, seasonings, cooking, cooking methods, and the like. What is necessary is just to acquire the information regarding foodstuff etc. by the dialog with a user. Further, when the dialog system 10 is used for travel plan search, the knowledge base 206 holds information on destinations, number of people, number of nights, budget, etc., and the front end 2002, for example, travel plans desired by the user. Information on the destination and the number of people may be acquired through dialogue with the user. Further, when the dialogue system 10 is used for real estate property search, the knowledge base 206 holds information related to, for example, a residential area, floor plan, building age, distance from the nearest station, rent, etc., and the front end 2002 Then, what is necessary is just to acquire the information regarding the residence area, floor plan, etc. of the real estate property which a user desires by dialog with a user. Further, when the interactive system 10 is used for video content search, the knowledge base 206 holds, for example, information on genre, performers, broadcast stations, broadcast date and time, and the front end 2002 displays, for example, a user's view. What is necessary is just to acquire the information regarding the genre of a program, a performer, etc. by dialogue with a user. In any task, the type, order of acquisition, and total number of information acquired from the user through dialogue with the user do not need to be predetermined constant values, and the information desired by the user is sufficiently narrowed down. It may be determined dynamically so as to satisfy the condition of being specified.

以上の各例において、エージェント2001における分離部202は、フロントエンド2002及びバックエンド2005のいずれかから取得した対話行為を対話行為タイプと付帯情報とに分離するが、前述のとおり、情報を特定するタスクでは、対話行為タイプは分野を問わず共通するため、対話行為タイプの値は、問診の例と同様のものを用いることができる。   In each of the above examples, the separation unit 202 in the agent 2001 separates the interactive action acquired from either the front end 2002 or the back end 2005 into the interactive action type and the incidental information, but specifies the information as described above. In the task, since the dialogue action type is common regardless of the field, the value of the dialogue action type can be the same as the example of the inquiry.

なお、具体的な適用分野に応じて、対話行為タイプを適宜追加してもよい。例えば、レシピ検索においては、実施の形態で例示した対話行為タイプに加え、ユーザからの情報要求に応じて推薦するレシピ(お薦めレシピ)の情報を提示するケースとして、フロントエンド2002からエージェント2001への推薦情報要求の対話行為タイプ「RequestRecommend」、エージェント2001からバックエンド2005への推薦情報探索の対話行為タイプ「seek_recommend」、バックエンド2005からエージェント2001への推薦情報提供の対話行為タイプ「inform_recommend」、エージェント2001からフロントエンド2002への推薦情報提示「PresentRecommend」、及び、お薦め情報等を追加してもよい。このようにして、分野に応じて効率的に情報の特定を行うことが可能となる。   Note that a dialogue action type may be added as appropriate according to a specific application field. For example, in the recipe search, in addition to the interactive action type exemplified in the embodiment, information on a recommended recipe (recommended recipe) in response to a request for information from the user is presented to the agent 2001 from the front end 2002. Dialogue action type “RequestRecommend” for recommendation information request, dialogue action type “seek_recommend” for recommendation information search from agent 2001 to back end 2005, dialogue action type “inform_recommend” for providing recommendation information from back end 2005 to agent 2001, agent Recommendation information presentation “PresentRecommend” from 2001 to the front end 2002, recommendation information, and the like may be added. In this way, information can be efficiently identified according to the field.

また、上記実施の形態における各構成要素(エージェント2001、フロントエンド2002、バックエンド2005等)の一部又は全部は、1個のシステムLSI(Large Scale Integration:大規模集積回路)から構成されているとしてもよい。システムLSIは、複数の構成部を1個のチップ上に集積して製造された超多機能LSIであり、具体的には、マイクロプロセッサ、ROM、RAM等を含んで構成されるコンピュータシステムである。前記RAMには、コンピュータプログラムが記録されている。前記マイクロプロセッサが、前記コンピュータプログラムに従って動作することにより、システムLSIは、その機能を達成する。また、上記各装置を構成する構成要素の各部は、個別に1チップ化されていてもよいし、一部又はすべてを含むように1チップ化されてもよい。また、ここでは、システムLSIとしたが、集積度の違いにより、IC、LSI、スーパーLSI、ウルトラLSIと呼称されることもある。また、集積回路化の手法はLSIに限るものではなく、専用回路又は汎用プロセッサで実現してもよい。LSI製造後に、プログラムすることが可能なFPGA(Field Programmable Gate Array)や、LSI内部の回路セルの接続や設定を再構成可能なリコンフィギュラブル・プロセッサを利用してもよい。更には、半導体技術の進歩又は派生する別技術によりLSIに置き換わる集積回路化の技術が登場すれば、当然、その技術を用いて機能ブロックの集積化を行ってもよい。バイオ技術の適用等が可能性としてあり得る。   In addition, some or all of the components (agent 2001, front end 2002, back end 2005, etc.) in the above-described embodiment are configured by one system LSI (Large Scale Integration). It is good. The system LSI is an ultra-multifunctional LSI manufactured by integrating a plurality of components on a single chip. Specifically, the system LSI is a computer system including a microprocessor, a ROM, a RAM, and the like. . A computer program is recorded in the RAM. The system LSI achieves its functions by the microprocessor operating according to the computer program. In addition, each part of the constituent elements constituting each of the above devices may be individually made into one chip, or may be made into one chip so as to include a part or all of them. Although the system LSI is used here, it may be called IC, LSI, super LSI, or ultra LSI depending on the degree of integration. Further, the method of circuit integration is not limited to LSI's, and implementation using dedicated circuitry or general purpose processors is also possible. An FPGA (Field Programmable Gate Array) that can be programmed after manufacturing the LSI, or a reconfigurable processor that can reconfigure the connection and setting of circuit cells inside the LSI may be used. Furthermore, if integrated circuit technology comes out to replace LSI's as a result of the advancement of semiconductor technology or a derivative other technology, it is naturally also possible to carry out function block integration using this technology. Biotechnology can be applied as a possibility.

また、上記実施の形態における各構成要素の一部又は全部は、コンピュータ等の装置に脱着可能なICカード又は単体のモジュールから構成されているとしてもよい。前記ICカード又は前記モジュールは、マイクロプロセッサ、ROM、RAM等から構成されるコンピュータシステムである。前記ICカード又は前記モジュールは、上記の超多機能LSIを含むとしてもよい。マイクロプロセッサが、コンピュータプログラムに従って動作することにより、前記ICカード又は前記モジュールは、その機能を達成する。このICカード又はこのモジュールは、耐タンパ性を有するとしてもよい。   In addition, some or all of the components in the above embodiments may be configured from an IC card that can be attached to and detached from an apparatus such as a computer or a single module. The IC card or the module is a computer system including a microprocessor, a ROM, a RAM, and the like. The IC card or the module may include the super multifunctional LSI described above. The IC card or the module achieves its function by the microprocessor operating according to the computer program. This IC card or this module may have tamper resistance.

また、本発明の一態様としては、例えば図3、図5等に示す手順の全部又は一部を含む対話方法であるとしてもよい。対話システム10で用いられる対話方法は、例えば、エージェント2001が、フロントエンド2002及びバックエンド2005の一方から取得した対話行為に応じて提供用の対話行為を決定する決定ステップと、エージェント2001が、前記決定ステップで決定された提供用の対話行為を、フロントエンド2002及びバックエンド2005の一方へ提供する提供ステップとを含み、前記決定ステップでは提供用の対話行為における対話行為タイプを、フロントエンド2002及びバックエンド2005の集合から逐次取得した対話行為における、付帯情報の系列に基づかず対話行為タイプの系列に基づいて、決定する。例えば、前記決定ステップは、フロントエンド2002及びバックエンド2005の集合から対話行為を逐次取得し、取得した対話行為における付帯情報と対話行為タイプとを分離する分離サブステップと、前記分離サブステップで分離された対話行為タイプを観測とし、その観測に基づいて、観測に対応して行動を決定するための基準となる信念状態情報を参照して、行動としての対話行為タイプを決定する行動決定サブステップと、前記行動決定サブステップで決定された対話行為タイプと前記分離サブステップで分離された付帯情報とを合成することで提供用の対話行為を生成する合成サブステップと、前記分離サブステップで分離された対話行為タイプの系列である観測と、前記行動決定サブステップで決定された対話行為タイプの系列である行動とに応じて信念状態情報を更新する更新ステップとを含む。また、この対話方法をコンピュータにより実現するコンピュータプログラム(例えば前記決定ステップと前記提供ステップとを含む対話制御処理を行うプログラム等)であるとしてもよいし、前記コンピュータプログラムからなるデジタル信号であるとしてもよい。また、本発明の一態様としては、前記コンピュータプログラム又は前記デジタル信号をコンピュータで読み取り可能な記録媒体、例えば、フレキシブルディスク、ハードディスク、CD−ROM、MO、DVD、DVD−ROM、DVD−RAM、BD(Blu-ray(登録商標) Disc)、半導体メモリ等に記録したものとしてもよい。また、これらの記録媒体に記録されている前記デジタル信号であるとしてもよい。また、本発明の一態様としては、前記コンピュータプログラム又は前記デジタル信号を、電気通信回線、無線又は有線通信回線、インターネットを代表とするネットワーク、データ放送等を経由して伝送するものとしてもよい。また、本発明の一態様としては、マイクロプロセッサとメモリを備えたコンピュータシステムであって、前記メモリは、上記コンピュータプログラムを記録しており、前記マイクロプロセッサは、前記コンピュータプログラムに従って動作するとしてもよい。また、前記プログラム又は前記デジタル信号を前記記録媒体に記録して移送することにより、或いは前記プログラム又は前記デジタル信号を、前記ネットワーク等を経由して移送することにより、独立した他のコンピュータシステムにより実施するとしてもよい。   Moreover, as one aspect of the present invention, for example, an interactive method including all or part of the procedures shown in FIGS. The dialog method used in the dialog system 10 includes, for example, a determination step in which the agent 2001 determines a dialog action for provision according to the dialog action acquired from one of the front end 2002 and the back end 2005; A providing step of providing the providing interactive action determined in the determining step to one of the front end 2002 and the back end 2005, wherein the determining step sets the interactive action type in the providing interactive action to the front end 2002 and It is determined based on a series of interactive action types, not based on a series of incidental information, in the interactive actions sequentially obtained from the set of backends 2005. For example, the determining step sequentially acquires dialogue actions from a set of the front end 2002 and the back end 2005, and separates the incidental information and the dialogue action type in the acquired dialogue actions, and the separation sub-step separates Action decision sub-step of determining the dialogue action type as an action by using the observed dialogue action type as an observation and referring to the belief state information as a reference for deciding the action corresponding to the observation based on the observation And a synthesizing substep for generating a providing dialogue action by synthesizing the dialogue action type determined in the action determining substep and the incidental information separated in the separating substep, and separating in the separating substep Of the dialogue action type determined in the action determination sub-step Including an update step of updating the belief state information in response to the actions and a column. Further, the present invention may be a computer program (for example, a program for performing a dialog control process including the determining step and the providing step) that realizes the dialog method, or may be a digital signal composed of the computer program. Good. In one embodiment of the present invention, the computer program or the digital signal can be read by a computer, such as a flexible disk, a hard disk, a CD-ROM, an MO, a DVD, a DVD-ROM, a DVD-RAM, and a BD. (Blu-ray (registered trademark) Disc), recorded on a semiconductor memory, or the like. The digital signal may be recorded on these recording media. Further, as one aspect of the present invention, the computer program or the digital signal may be transmitted via an electric communication line, a wireless or wired communication line, a network typified by the Internet, data broadcasting, or the like. Further, an aspect of the present invention may be a computer system including a microprocessor and a memory, the memory recording the computer program, and the microprocessor operating according to the computer program. . In addition, the program or the digital signal is recorded on the recording medium and transferred, or the program or the digital signal is transferred via the network or the like and executed by another independent computer system. You may do that.

また、上記実施の形態で示した対話システム10に係る技術は、上述したサービスの態様(図1参照)の他、例えば、以下のクラウドサービスの類型において実現され得る。但し、上記実施の形態で示した技術の適用が、ここで説明するクラウドサービスの類型に限られるものではない。   In addition to the above-described service mode (see FIG. 1), the technology related to the dialogue system 10 described in the above embodiment can be realized, for example, in the following types of cloud services. However, the application of the technology shown in the above embodiment is not limited to the type of cloud service described here.

(サービスの類型1:自社データセンタ型クラウドサービス)
図8は、サービスの類型1(自社データセンタ型クラウドサービス)における対話システムが提供するサービスの全体像を示す図である。本類型では、サービスプロバイダ1120が、機器1101からユーザ1010により入力される情報を取得し、ユーザ1010に対して機器1101を介してサービスを提供する。本類型では、サービスプロバイダ1120が、データセンタ運営会社の機能を有している。すなわち、サービスプロバイダ1120が、ビッグデータを管理するクラウドサーバを保有している。本類型では、データセンタ運営会社は存在しない。本類型では、サービスプロバイダ1120は、データセンタとしてのクラウドサーバ1203を有し、オペレーティングシステム(OS)1202及びアプリケーションプログラム(アプリケーション)1201を管理する。サービスプロバイダ1120は、OS1202及びアプリケーション1201を用いて、クラウドサーバ1203により機器1101と通信することで、サービスを提供する。
(Service type 1: In-house data center type cloud service)
FIG. 8 is a diagram showing an overview of services provided by the interactive system in service type 1 (in-house data center type cloud service). In this type, the service provider 1120 acquires information input by the user 1010 from the device 1101 and provides the service to the user 1010 via the device 1101. In this type, the service provider 1120 has a function of a data center operating company. That is, the service provider 1120 has a cloud server that manages big data. In this category, there is no data center operating company. In this type, the service provider 1120 has a cloud server 1203 as a data center, and manages an operating system (OS) 1202 and application programs (applications) 1201. The service provider 1120 provides services by communicating with the device 1101 through the cloud server 1203 using the OS 1202 and the application 1201.

(サービスの類型2:IaaS利用型クラウドサービス)
図9は、サービスの類型2(IaaS利用型クラウドサービス)における対話システムが提供するサービスの全体像を示す図である。ここで、IaaSとは、インフラストラクチャー・アズ・ア・サービスの略であり、コンピュータシステムを構築および稼動させるための基盤そのものを、インターネット経由のサービスとして提供するクラウドサービス提供モデルである。
(Service type 2: Cloud service using IaaS)
FIG. 9 is a diagram illustrating an overview of services provided by the interactive system in service type 2 (IaaS-based cloud service). Here, IaaS is an abbreviation for infrastructure as a service, and is a cloud service provision model that provides a base for constructing and operating a computer system as a service via the Internet.

本類型では、データセンタ運営会社1110が、データセンタ(クラウドサーバ)1203を運営及び管理している。また、サービスプロバイダ1120は、OS1202及びアプリケーション1201を管理する。サービスプロバイダ1120は、サービスプロバイダ1120が管理するOS1202及びアプリケーション1201を用いてサービスを提供する。   In this type, the data center operating company 1110 operates and manages the data center (cloud server) 1203. The service provider 1120 manages the OS 1202 and the application 1201. The service provider 1120 provides a service using the OS 1202 and the application 1201 managed by the service provider 1120.

(サービスの類型3:PaaS利用型クラウドサービス)
図10は、サービスの類型3(PaaS利用型クラウドサービス)における対話システムが提供するサービスの全体像を示す図である。ここで、PaaSとは、プラットフォーム・アズ・ア・サービスの略であり、ソフトウェアを構築および稼動させるための土台となるプラットフォームを、インターネット経由のサービスとして提供するクラウドサービス提供モデルである。
(Service type 3: Cloud service using PaaS)
FIG. 10 is a diagram showing an overall image of services provided by the interactive system in service type 3 (PaaS use type cloud service). Here, PaaS is an abbreviation for Platform as a Service, and is a cloud service provision model that provides a platform serving as a foundation for constructing and operating software as a service via the Internet.

本類型では、データセンタ運営会社1110は、OS1202を管理し、データセンタ(クラウドサーバ)1203を運営及び管理している。また、サービスプロバイダ1120は、アプリケーション1201を管理する。サービスプロバイダ1120は、データセンタ運営会社1110が管理するOS1202及びサービスプロバイダ1120が管理するアプリケーション1201を用いてサービスを提供する。   In this type, the data center operating company 1110 manages the OS 1202 and operates and manages the data center (cloud server) 1203. The service provider 1120 manages the application 1201. The service provider 1120 provides a service using the OS 1202 managed by the data center operating company 1110 and the application 1201 managed by the service provider 1120.

(サービスの類型4:SaaS利用型クラウドサービス)
図11は、サービスの類型4(SaaS利用型クラウドサービス)における対話システムが提供するサービスの全体像を示す図である。ここで、SaaSとは、ソフトウェア・アズ・ア・サービスの略である。SaaS利用型クラウドサービスは、例えば、データセンタ(クラウドサーバ)を保有しているプラットフォーム提供者が提供するアプリケーションを、データセンタ(クラウドサーバ)を保有していない会社又は個人等の利用者がインターネット等のネットワーク経由で使用できる機能を有するクラウドサービス提供モデルである。
(Service type 4: Cloud service using SaaS)
FIG. 11 is a diagram illustrating an overview of services provided by the interactive system in service type 4 (SaaS-based cloud service). Here, SaaS is an abbreviation for software as a service. The SaaS-based cloud service is, for example, an application provided by a platform provider who owns a data center (cloud server), and a user such as a company or individual who does not have a data center (cloud server) uses the Internet. This is a cloud service provision model that has functions that can be used via other networks.

本類型では、データセンタ運営会社1110は、アプリケーション1201を管理し、OS1202を管理し、データセンタ(クラウドサーバ)1203を運営及び管理している。また、サービスプロバイダ1120は、データセンタ運営会社1110が管理するOS1202及びアプリケーション1201を用いてサービスを提供する。   In this type, the data center operating company 1110 manages the application 1201, manages the OS 1202, and operates and manages the data center (cloud server) 1203. The service provider 1120 provides a service using the OS 1202 and the application 1201 managed by the data center operating company 1110.

以上、いずれのクラウドサービスの類型においても、サービスプロバイダ1120がサービスを提供する。また、例えば、サービスプロバイダ又はデータセンタ運営会社は、OS、アプリケーション又はビッグデータのデータベース等を自ら開発してもよいし、また、第三者に開発させてもよい。   As described above, in any cloud service type, the service provider 1120 provides a service. Further, for example, the service provider or the data center operating company may develop an OS, an application, a big data database, or the like, or may allow a third party to develop it.

なお、上述したクラウドサービスの類型に依らずに、図1に示す機器1101(例えばスマートフォン、PC等)単体で対話システム10を構成してもよいし、例えば、知識ベース206を機器1101の外部のネットワーク上に配置して知識ベース206及び機器1101とで対話システム10を構成してもよい。   Note that the conversation system 10 may be configured by a single device 1101 (for example, a smartphone, a PC, or the like) illustrated in FIG. 1 without depending on the type of the cloud service described above. For example, the knowledge base 206 may be stored outside the device 1101. The dialogue system 10 may be configured by the knowledge base 206 and the device 1101 arranged on a network.

また、上記実施の形態で示した各構成要素及び機能を任意に組み合わせることで実現される形態も本発明の範囲に含まれる。   In addition, embodiments realized by arbitrarily combining the constituent elements and functions described in the above embodiments are also included in the scope of the present invention.

本発明は、例えば問診等といった対話により情報を提供する対話システムとして利用可能である。   The present invention can be used as a dialog system that provides information through a dialog such as an inquiry.

10 対話システム
200 決定部
201 入力処理部
202 分離部
203 行動決定部
204 合成部
205 提供部
206 知識ベース
207 知識処理部
208 出力処理部
1010 ユーザ
1100 グループ
1101 機器
1102 ホームゲートウェイ
1110 データセンタ運営会社
1111 クラウドサーバ
1120 サービスプロバイダ
1121 サーバ
1201 アプリケーションプログラム
1202 オペレーティングシステム(OS)
1203 クラウドサーバ
2001 エージェント
2002 フロントエンド
2003、2006 観測
2004、2007 行動
2005 バックエンド
DESCRIPTION OF SYMBOLS 10 Dialog system 200 Determination part 201 Input processing part 202 Separation part 203 Behavior determination part 204 Composition part 205 Provision part 206 Knowledge base 207 Knowledge processing part 208 Output processing part 1010 User 1100 Group 1101 Equipment 1102 Home gateway 1110 Data center management company 1111 Cloud Server 1120 Service provider 1121 Server 1201 Application program 1202 Operating system (OS)
1203 Cloud server 2001 Agent 2002 Front end 2003, 2006 Observation 2004, 2007 Action 2005 Back end

Claims (12)

ユーザインタフェース処理を行うフロントエンド、及び、情報処理を行うバックエンドの各々と、対話行為タイプと付帯情報とで構成される所定対話行為形式の情報である対話行為の授受を行うエージェント装置であって、
前記フロントエンド及び前記バックエンドの一方から取得した対話行為に応じて提供用の対話行為を決定する決定部と、
前記決定部により決定された前記提供用の対話行為を、前記フロントエンド及び前記バックエンドの一方へ提供する提供部とを備え、
前記決定部は、前記提供用の対話行為における対話行為タイプを、前記フロントエンド及び前記バックエンドの集合から逐次取得した対話行為における、付帯情報の系列に基づかず対話行為タイプの系列に基づいて、決定する
エージェント装置。
An agent device that transmits and receives a dialogue action, which is information of a predetermined dialogue action type configured by a dialogue action type and incidental information, with each of a front end that performs user interface processing and a back end that performs information processing. ,
A determination unit that determines a providing dialogue action according to a dialogue action acquired from one of the front end and the back end;
A providing unit that provides the providing interactive action determined by the determining unit to one of the front end and the back end;
The determination unit, based on a series of dialogue action types, not based on a series of incidental information in a dialogue action sequentially obtained from the set of the front end and the back end, the dialogue action type in the providing dialogue action, Determine agent device.
前記決定部は、前記提供用の対話行為における対話行為タイプを、過去に決定した対話行為タイプの系列にも基づいて、決定する
請求項1記載のエージェント装置。
The agent device according to claim 1, wherein the determination unit determines a dialog action type in the providing dialog action based on a series of dialog action types determined in the past.
前記決定部は、
観測としての対話行為タイプの系列に基づいて、行動としての対話行為タイプを決定する行動決定部と、
前記フロントエンド及び前記バックエンドの集合から対話行為を逐次取得し、取得した対話行為から付帯情報を分離することで対話行為タイプの系列を前記行動決定部に観測として逐次入力する分離部と、
前記行動決定部で決定された対話行為タイプと前記分離部で分離された付帯情報とを合成することで提供用の対話行為を生成する合成部とを有し、
前記行動決定部は、行動としての対話行為タイプの前記決定を、過去に決定した行動としての対話行為タイプの系列にも基づいて、行う
請求項2記載のエージェント装置。
The determination unit
An action determination unit that determines a dialogue action type as an action based on a series of dialogue action types as an observation;
A separating unit that sequentially acquires dialogue actions from the set of the front end and the back end, and sequentially inputs a series of dialogue action types as observations to the action determining unit by separating incidental information from the acquired dialogue actions;
A synthesizing unit that generates a dialogue act for provision by synthesizing the dialogue act type determined by the action deciding unit and the incidental information separated by the separating unit;
The agent device according to claim 2, wherein the action determination unit performs the determination of the dialogue action type as an action based on a series of dialog action types as an action determined in the past.
前記行動決定部は、POMDP(Partially Observable Markov Decision Process)モデルに基づいて行動を決定する
請求項3記載のエージェント装置。
The agent device according to claim 3, wherein the behavior determination unit determines a behavior based on a POMDP (Partially Observable Markov Decision Process) model.
前記観測としての対話行為タイプは、予め定められた複数の対話行為タイプ値のいずれかを表し、
前記行動としての対話行為タイプは、前記フロントエンドに向けた第1種の対話行為タイプ値と前記バックエンドに向けた第2種の対話行為タイプ値とに区別される予め定められた複数の対話行為タイプ値のいずれかを表し、
前記提供部は、前記決定部により決定された提供用の対話行為における対話行為タイプが第1種及び第2種のいずれの対話行為タイプ値を表すかに基づいて、前記フロントエンド及び前記バックエンドのうち当該対話行為の提供先を選択し、選択した提供先へ当該対話行為を提供する
請求項3又は4記載のエージェント装置。
The dialogue action type as the observation represents one of a plurality of predetermined dialogue action type values,
The dialogue action type as the action is a plurality of predetermined dialogues that are classified into a first kind of dialogue action type value for the front end and a second kind of dialogue action type value for the back end. Represents one of the action type values,
The providing unit includes the front end and the back end based on whether the interactive action type in the providing interactive action determined by the determining unit represents a first or second interactive action type value. The agent device according to claim 3 or 4, wherein a provision destination of the dialogue action is selected from among the two, and the dialogue action is provided to the selected provision destination.
前記付帯情報はキーワードを表す
請求項1〜5のいずれか一項に記載のエージェント装置。
The agent device according to claim 1, wherein the incidental information represents a keyword.
請求項1〜6のいずれか一項に記載のエージェント装置と、
自然言語で表現される情報をユーザとの間で交換する前記フロントエンドと、
知識ベースの検索に基づき情報の提供を行う前記バックエンドとを備える
対話システム。
The agent device according to any one of claims 1 to 6,
The front end for exchanging information expressed in natural language with a user;
An interactive system comprising the back end for providing information based on a knowledge base search.
前記付帯情報は前記知識ベースの検索のために利用可能なキーワードを表し、
前記バックエンドは、前記エージェント装置から取得した対話行為における付帯情報が表すキーワードを用いて前記知識ベースの検索処理を行い、検索処理の結果に基づいて生成した対話行為を前記エージェント装置に提供する
請求項7記載の対話システム。
The incidental information represents keywords that can be used for searching the knowledge base,
The back end performs a search process of the knowledge base using a keyword represented by incidental information in a dialog action acquired from the agent device, and provides the agent device with a dialog action generated based on a result of the search process. Item 8. The dialogue system according to Item 7.
前記バックエンドは、前記知識ベースの検索処理の結果が充分に絞り込まれたか否かを判定し、充分に絞り込まれたと判定した場合には当該結果を表す対話行為を前記エージェント装置に提供し、充分に絞り込まれていないと判定した場合には前記検索処理の結果を絞り込むために有効なキーワードを表す対話行為を前記エージェント装置に提供する
請求項8記載の対話システム。
The back end determines whether or not the result of the knowledge base search process has been sufficiently narrowed down. When it is determined that the result has been sufficiently narrowed down, the back end provides the agent device with an interactive action indicating the result, The dialog system according to claim 8, wherein if it is determined that the search result has not been narrowed down, a dialog act representing a keyword effective for narrowing down the result of the search process is provided to the agent device.
自然言語で表現される情報をユーザとの間で交換するフロントエンドと、
知識ベースの検索に基づく情報の提供を行うバックエンドと、
前記フロントエンド及び前記バックエンドの各々と、対話行為タイプと付帯情報とで構成される所定対話行為形式の情報である対話行為の授受を行うエージェント装置とを含む対話システムにおいて用いられる対話方法であって、
前記エージェント装置が、前記フロントエンド及び前記バックエンドの一方から取得した対話行為に応じて提供用の対話行為を決定する決定ステップと、
前記エージェント装置が、前記決定ステップで決定された前記提供用の対話行為を、前記フロントエンド及び前記バックエンドの一方へ提供する提供ステップとを含み、
前記決定ステップでは前記提供用の対話行為における対話行為タイプを、前記フロントエンド及び前記バックエンドの集合から逐次取得した対話行為における、付帯情報の系列に基づかず対話行為タイプの系列に基づいて、決定する
対話方法。
A front end for exchanging information expressed in natural language with users;
A backend that provides information based on knowledge-based searches;
A dialogue method used in a dialogue system including each of the front end and the back end, and an agent device that exchanges a dialogue act that is information of a predetermined dialogue act type including a dialogue act type and incidental information. And
A determination step in which the agent device determines a providing interactive action according to an interactive action acquired from one of the front end and the back end;
A providing step in which the agent device provides the providing interactive action determined in the determining step to one of the front end and the back end;
In the determining step, a dialogue action type in the providing dialogue action is determined based on a dialogue action type sequence not based on a series of incidental information in a dialogue action sequentially obtained from the set of the front end and the back end. How to interact.
前記決定ステップは、
前記フロントエンド及び前記バックエンドの集合から対話行為を逐次取得し、取得した対話行為における付帯情報と対話行為タイプとを分離する分離サブステップと、
前記分離サブステップで分離された対話行為タイプを観測とし、当該観測に基づいて、観測に対応して行動を決定するための基準となる信念状態情報を参照して、行動としての対話行為タイプを決定する行動決定サブステップと、
前記行動決定サブステップで決定された対話行為タイプと前記分離サブステップで分離された付帯情報とを合成することで提供用の対話行為を生成する合成サブステップと、
前記分離サブステップで分離された対話行為タイプの系列である観測と、前記行動決定サブステップで決定された対話行為タイプの系列である行動とに応じて前記信念状態情報を更新する更新ステップとを含む
請求項10記載の対話方法。
The determining step includes
Separation sub-step of sequentially obtaining dialogue actions from the set of the front end and the back end, and separating incidental information and dialogue action types in the obtained dialogue actions;
The dialogue action type separated in the separation substep is set as an observation, and based on the observation, the belief state information as a reference for determining the action corresponding to the observation is referred to, and the dialogue action type as the action is determined. An action decision sub-step to decide;
A synthesizing substep for generating a providing dialogue act by synthesizing the dialogue act type determined in the action determining substep and the incidental information separated in the separating substep;
An update step of updating the belief state information according to an observation that is a series of dialogue action types separated in the separation substep and an action that is a series of dialogue action types determined in the action determination substep. The interaction method according to claim 10.
ユーザインタフェース処理を行うフロントエンド、及び、情報処理を行うバックエンドの各々と、対話行為タイプと付帯情報とで構成される所定対話行為形式の情報である対話行為の授受を行う対話制御処理を、コンピュータに実行させるためのプログラムであって、
前記対話制御処理は、
前記フロントエンド及び前記バックエンドの一方から取得した対話行為に応じて提供用の対話行為を決定する決定ステップと、
前記決定ステップで決定された前記提供用の対話行為を、前記フロントエンド及び前記バックエンドの一方へ提供する提供ステップとを含み、
前記決定ステップでは前記提供用の対話行為における対話行為タイプを、前記フロントエンド及び前記バックエンドの集合から逐次取得した対話行為における、付帯情報の系列に基づかず対話行為タイプの系列に基づいて、決定する
プログラム。
A dialogue control process for exchanging a dialogue action, which is information of a predetermined dialogue action format composed of each of a front end for performing user interface processing and a back end for information processing, and a dialogue action type and incidental information, A program for causing a computer to execute,
The dialogue control process includes:
A determining step of determining a providing interactive action according to an interactive action obtained from one of the front end and the back end;
Providing the interactive action determined in the determining step to one of the front end and the back end; and
In the determining step, a dialogue action type in the providing dialogue action is determined based on a dialogue action type sequence not based on a series of incidental information in a dialogue action sequentially obtained from the set of the front end and the back end. Program.
JP2017012528A 2016-07-01 2017-01-26 Agent device, dialogue system, dialogue method and program Active JP6832502B2 (en)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN201710404504.3A CN107562770A (en) 2016-07-01 2017-06-01 Information processing method and recording medium
US15/627,350 US11055799B2 (en) 2016-07-01 2017-06-19 Information processing method and recording medium
EP18190248.7A EP3438988A1 (en) 2016-07-01 2017-06-20 Information processing method and recording medium
EP17176796.5A EP3264301A1 (en) 2016-07-01 2017-06-20 Information processing method and recording medium

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2016131739 2016-07-01
JP2016131739 2016-07-01

Publications (2)

Publication Number Publication Date
JP2018010610A true JP2018010610A (en) 2018-01-18
JP6832502B2 JP6832502B2 (en) 2021-02-24

Family

ID=60995597

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017012528A Active JP6832502B2 (en) 2016-07-01 2017-01-26 Agent device, dialogue system, dialogue method and program

Country Status (1)

Country Link
JP (1) JP6832502B2 (en)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019215483A (en) * 2018-06-14 2019-12-19 Zホールディングス株式会社 Leaning device, learning method, and learning program
CN112100353A (en) * 2020-09-15 2020-12-18 京东方科技集团股份有限公司 Man-machine conversation method and system, computer device and medium
CN112420026A (en) * 2019-08-23 2021-02-26 微软技术许可有限责任公司 Optimized keyword retrieval system
JP2022500713A (en) * 2018-09-19 2022-01-04 京東方科技集團股▲ふん▼有限公司Boe Technology Group Co., Ltd. Machine-assisted dialogue system, as well as medical condition inquiry device and its method
JP7441583B2 (en) 2019-08-01 2024-03-01 インターナショナル・ビジネス・マシーンズ・コーポレーション Conversation flow adaptation methods, systems, and programs in cognitive dialogue
WO2024069974A1 (en) * 2022-09-30 2024-04-04 日本電信電話株式会社 Dialogue device, dialogue method, and dialogue program

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003528373A (en) * 2000-02-14 2003-09-24 ファースト オピニオン コーポレーション Automatic diagnostic system and method
JP2008039928A (en) * 2006-08-02 2008-02-21 Xanavi Informatics Corp Speech interactive apparatus and speech interactive program
JP2009223720A (en) * 2008-03-18 2009-10-01 Yahoo Japan Corp Script creation support method and program for natural language interaction agent
JP2010140282A (en) * 2008-12-11 2010-06-24 Nippon Telegr & Teleph Corp <Ntt> Interaction device, interaction method, interaction program and recording medium
US20150066479A1 (en) * 2012-04-20 2015-03-05 Maluuba Inc. Conversational agent
JP2015225402A (en) * 2014-05-26 2015-12-14 ソフトバンク株式会社 Information retrieval device, information retrieval program, and information retrieval system
JP2016001242A (en) * 2014-06-11 2016-01-07 日本電信電話株式会社 Question sentence creation method, device, and program

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003528373A (en) * 2000-02-14 2003-09-24 ファースト オピニオン コーポレーション Automatic diagnostic system and method
JP2008039928A (en) * 2006-08-02 2008-02-21 Xanavi Informatics Corp Speech interactive apparatus and speech interactive program
JP2009223720A (en) * 2008-03-18 2009-10-01 Yahoo Japan Corp Script creation support method and program for natural language interaction agent
JP2010140282A (en) * 2008-12-11 2010-06-24 Nippon Telegr & Teleph Corp <Ntt> Interaction device, interaction method, interaction program and recording medium
US20150066479A1 (en) * 2012-04-20 2015-03-05 Maluuba Inc. Conversational agent
JP2015225402A (en) * 2014-05-26 2015-12-14 ソフトバンク株式会社 Information retrieval device, information retrieval program, and information retrieval system
JP2016001242A (en) * 2014-06-11 2016-01-07 日本電信電話株式会社 Question sentence creation method, device, and program

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
南 泰浩、外5名: "対話行為タイプ列Trigramによる行動予測確率に基づくPOMDP対話制御", 電子情報通信学会論文誌, vol. 第J95−A巻,第1号, JPN6014033766, 1 January 2012 (2012-01-01), JP, pages 2 - 15, ISSN: 0004390412 *
星川 祐人、外1名: "同時進行性のあるチャット対話における発話タイプ推定", 第7回データ工学と情報マネジメントに関するフォーラム (第13回日本データベース学会年次大会), JPN6019048915, 18 August 2015 (2015-08-18), JP, pages 1 - 7, ISSN: 0004390413 *

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019215483A (en) * 2018-06-14 2019-12-19 Zホールディングス株式会社 Leaning device, learning method, and learning program
JP7013329B2 (en) 2018-06-14 2022-01-31 ヤフー株式会社 Learning equipment, learning methods and learning programs
JP2022500713A (en) * 2018-09-19 2022-01-04 京東方科技集團股▲ふん▼有限公司Boe Technology Group Co., Ltd. Machine-assisted dialogue system, as well as medical condition inquiry device and its method
JP7357614B2 (en) 2018-09-19 2023-10-06 京東方科技集團股▲ふん▼有限公司 Machine-assisted dialogue system, medical condition interview device, and method thereof
JP7441583B2 (en) 2019-08-01 2024-03-01 インターナショナル・ビジネス・マシーンズ・コーポレーション Conversation flow adaptation methods, systems, and programs in cognitive dialogue
CN112420026A (en) * 2019-08-23 2021-02-26 微软技术许可有限责任公司 Optimized keyword retrieval system
CN112100353A (en) * 2020-09-15 2020-12-18 京东方科技集团股份有限公司 Man-machine conversation method and system, computer device and medium
CN112100353B (en) * 2020-09-15 2024-06-07 京东方科技集团股份有限公司 Man-machine conversation method and system, computer equipment and medium
WO2024069974A1 (en) * 2022-09-30 2024-04-04 日本電信電話株式会社 Dialogue device, dialogue method, and dialogue program

Also Published As

Publication number Publication date
JP6832502B2 (en) 2021-02-24

Similar Documents

Publication Publication Date Title
JP6832502B2 (en) Agent device, dialogue system, dialogue method and program
US11055799B2 (en) Information processing method and recording medium
US10997371B2 (en) Automatic response server device, terminal device, response system, response method, and program
JP6753707B2 (en) Artificial intelligence system that supports communication
JP6163607B2 (en) Method and apparatus for constructing event knowledge database
US9514425B2 (en) Method and system for providing user-customized contents
JP2019212321A (en) Semantic information generation method, semantic information generation apparatus, and program
US9330418B2 (en) System and method for creating a family tree data structure
US8751433B2 (en) Efficient probabilistic reasoning over semantic data
CN105378721A (en) Knowledge capture and discovery system
US20200050500A1 (en) Natural language interface to web api
CN111259154B (en) Data processing method and device, computer equipment and storage medium
JP7502283B2 (en) System and method for auto-completion of ICS flows using artificial intelligence/machine learning
US20180218264A1 (en) Dynamic resampling for sequential diagnosis and decision making
US20160378765A1 (en) Concept expansion using tables
CN109791571A (en) Information processing system, information processing unit, information processing method and storage medium
CN106844499A (en) Many wheel session interaction method and devices
JP2022068120A (en) Method for processing chat channel communications, chat channel processing system, and program (intelligent chat channel processor)
García‐Ortega et al. StarTroper, a film trope rating optimizer using machine learning and evolutionary algorithms
CN112667869B (en) Data processing method, device, system and storage medium
JP2022059725A (en) Information processor, information processing system, and program
Chakrabarti Artificial conversations for chatter bots using knowledge representation, learning, and pragmatics
Le et al. Generating predictable and adaptive dialog policies in single-and multi-domain goal-oriented dialog systems
US10339221B2 (en) Auto-completion and auto-correction of cryptic language commands with dynamic learning of syntax rules
JP7442217B1 (en) Program, information processing method, and information processing device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190730

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200522

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200609

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200629

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20201124

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201211

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: 20201222

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210113

R151 Written notification of patent or utility model registration

Ref document number: 6832502

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151