Dialogue device, dialogue method, and program
The dialogue system addresses the high cost of building interaction systems by using a database of examples created by non-experts and selection rules to manage dialogue states, enabling efficient and cost-effective execution of multiple tasks with accurate responses.
Patent Information
- Application Number
- JP2023523707
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2021-05-24
- Publication Date
- 2025-04-08
- Estimated Expiration
- 2041-05-24
AI Technical Summary
Existing interaction systems that require expert knowledge, such as expert systems, are costly to build due to the need for manual scenario creation by experts, and become even more expensive when multiple tasks need to be executed simultaneously.
A dialogue system that includes an example storage unit for storing speech statements, response statements, and status information, a selection rule storage unit for defining dialogue states and transitions, and a mechanism for selecting and presenting responses based on user inputs and stored examples, allowing non-experts to contribute to example creation and reducing costs.
The system enables the construction of a dialogue system for achieving specific tasks at a lower cost by leveraging collective intelligence from non-experts and allowing multiple tasks to be executed simultaneously with high accuracy and scenario-like dialogue flow.
Smart Images

Figure 0007658428000001 
Figure 0007658428000002 
Figure 0007658428000003
Abstract
Description
[Technical field]
[0001] The present invention relates to a technique for conducting a dialogue with a human being using a natural language. [Background technology]
[0002] With the advancement of speech recognition technology and speech synthesis technology, dialogue systems that communicate with humans using natural language have become widespread. Dialogue systems are generally classified into task-oriented dialogue systems (hereinafter also called "task dialogue systems") that are designed to accomplish a specific task, and non-task-oriented dialogue systems (generally also called "chat dialogue systems") that aim for the purpose of dialogue itself. There are various technologies for building dialogue systems, but in many cases, a scenario approach or an example approach is used.
[0003] The scenario approach is a technology mainly used in task dialogue systems. In the scenario approach, a scenario for achieving the purpose of the dialogue is prepared in advance, and the dialogue system executes a dialogue with the user according to that scenario. For example, in a dialogue about submitting tax return documents, the purpose of the dialogue is to enable the user to properly submit the tax return documents by instructing the user on the tax return documents that should be submitted. In the scenario approach, in many cases, a specialist with specialized knowledge creates the scenario. For this reason, it is often called an expert system (for example, see Non-Patent Document 1).
[0004] The example method is a technology mainly used in chat dialogue systems. In the example method, simple utterance and response rules called examples (if the user speaks like this, the system responds like this) are prepared in advance, and the dialogue system executes dialogue with the user by uttering responses to the user's utterances according to the rules. In the example method, examples are prepared, for example, by automatically generating them based on conversations held on a social networking service (SNS), or by having multiple users create them while pretending to be specific characters (for example, see Non-Patent Document 2). [Prior art documents] [Non-patent literature]
[0005] [Non-Patent Document 1] "Case Studies of Expert Systems", Japan Information Processing Development Center, April 1986 [Non-Patent Document 2] Ryuichiro Higashinaka, Masahiro Mizukami, Hidetoshi Kawabata, Emi Yamaguchi, Noritake Adachi, and Junji Tomita, "Role play-based question-answering by real users for building chatbots with consistent personalities", Proceedings of the SIGDIAL 2018 Conference, pages 264-272, July 2018. Summary of the Invention [Problem to be solved by the invention]
[0006] Dialogue systems that execute tasks that require specialized knowledge, including expert systems, are very costly to build because they use a scenario-based approach in which experts manually create scenarios. In addition, to build a dialogue system that executes multiple tasks simultaneously, it is necessary to appropriately combine scenarios created by multiple experts, which is even more costly than building a dialogue system that executes a single task.
[0007] In view of the above technical problems, an object of the present invention is to construct a dialogue system for accomplishing a specified task at low cost. [Means for solving the problem]
[0008] A dialogue device of one embodiment of the present invention includes an example memory unit that stores a plurality of examples each consisting of an utterance sentence, a response sentence, and situation information; a selection rule memory unit that stores selection rules each consisting of a dialogue state, situation information usable in that dialogue state, and a dialogue state to transition to when an example of that situation information is selected; an utterance reception unit that accepts a user utterance spoken by the user; an example selection unit that uses the selection rules to select from the plurality of examples a selection example whose situation information corresponds to situation information usable in the current dialogue state and whose utterance sentence corresponds to the user utterance; and an utterance presentation unit that presents to the user a system utterance based on the response sentence included in the selected example. Effect of the Invention
[0009] According to the present invention, a dialogue system for accomplishing a predetermined task can be constructed at low cost. [Brief description of the drawings]
[0010] [Figure 1] FIG. 1 is a diagram illustrating an example of the functional configuration of the dialogue device of the first embodiment. [Diagram 2] FIG. 2 is a diagram illustrating a processing procedure of the dialogue method according to the first embodiment. [Diagram 3] FIG. 3 is a diagram illustrating an example of a functional configuration of the dialogue device according to the second embodiment. [Figure 4] FIG. 4 is a diagram illustrating a processing procedure of the interaction method according to the second embodiment. [Diagram 5] FIG. 5 is a diagram illustrating an example of the functional configuration of a computer. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0011] Hereinafter, an embodiment of the present invention will be described in detail. In the drawings, components having the same functions are designated by the same reference numerals, and duplicated explanations will be omitted.
[0012] [First embodiment] The first embodiment of the present invention is a dialogue device and method that can execute various tasks simultaneously and can be constructed at low cost without requiring the labor of an expert. The present invention solves the above-mentioned problems by introducing two elemental technologies: (1) collection of examples with situation information by non-experts, and (2) response selection according to the situation by dialogue control. By creating examples of content that many non-experts can answer with confidence (i.e., they have knowledge close to expertise in part), it becomes possible to construct a database in which expert knowledge is collected as a whole. This makes it possible to build a dialogue system at a lower cost than the cost required for an expert with expert knowledge to create a scenario. In addition, a dialogue control technology is introduced to realize a dialogue equivalent to the scenario method using examples that are usually used in casual conversation. Dialogue control is a technology used in slot-value task dialogue systems and is not usually used in example-based dialogue systems. In order to introduce dialogue control, an additional attribute called situation information is combined with the collected examples. This makes it possible to realize a dialogue flow like the scenario method and highly accurate responses according to the situation in an example-based dialogue system.
[0013] 1, the dialogue device 1 of the first embodiment includes, for example, an example storage unit 10-1, a dialogue state storage unit 10-2, a selection rule storage unit 10-3, an example collection unit 11, an utterance reception unit 12, a dialogue state acquisition unit 13, an example selection unit 14, a dialogue state update unit 15, and an utterance presentation unit 16. The dialogue device 1 may also include a speech recognition unit 17 and a speech synthesis unit 18. The dialogue method of the first embodiment is realized by the dialogue device 1 executing the processing of each step shown in FIG.
[0014] The dialogue device is a special device configured by loading a special program into a publicly known or dedicated computer having, for example, a central processing unit (CPU), a main storage device (RAM), and the like. The dialogue device executes each process under the control of, for example, the central processing unit. Data input to the dialogue device and data obtained in each process are stored in, for example, the main storage device, and the data stored in the main storage device is read out to the central processing unit as necessary and used for other processes. At least a part of each processing unit included in the dialogue device may be configured by hardware such as an integrated circuit. Each storage unit included in the dialogue device may be configured by, for example, a main storage device such as a random access memory (RAM), an auxiliary storage device configured by a semiconductor memory element such as a hard disk, an optical disk, or a flash memory, or middleware such as a relational database or a key-value store. The multiple storage units included in the dialogue device may be implemented as multiple physically different storage devices, or may be implemented by logically dividing one storage device into multiple areas.
[0015] Hereinafter, the dialogue method executed by the dialogue device 1 of the first embodiment will be described in detail with reference to FIG.
[0016] The dialogue device 1 receives a text representing the content of a user utterance as input, and outputs a text representing the content of a system utterance in response to the user utterance, thereby executing a dialogue with a user who is a dialogue partner. The dialogue executed by the dialogue device 1 may be text-based or voice-based.
[0017] When a text-based dialogue is performed, the dialogue between the user and the dialogue device 1 is performed using a dialogue screen displayed on a display unit (not shown) such as a display provided in the dialogue device 1. The display unit may be installed in the housing of the dialogue device 1, or may be installed outside the housing of the dialogue device 1 and connected to the dialogue device 1 via a wired or wireless interface. The dialogue screen includes at least an input area for inputting a user utterance and a display area for presenting a system utterance. The dialogue screen may include a history area for displaying a history of the dialogue performed from the start of the dialogue to the present, or the history area may also serve as the display area. The user inputs text representing the content of the user utterance into the input area of the dialogue screen. The dialogue device 1 displays text representing the content of the system utterance in the display area of the dialogue screen.
[0018] When executing a dialogue based on voice, the dialogue device 1 further includes a voice recognition unit 17 and a voice synthesis unit 18. The dialogue device 1 also includes a microphone and a speaker (not shown). The microphone and the speaker may be installed in the housing of the dialogue device 1, or may be installed outside the housing of the dialogue device 1 and connected to the dialogue device 1 via a wired or wireless interface. The microphone and the speaker may also be mounted on an android imitating a human being, or a robot imitating an animal or a fictional character. In this case, the android or the robot may include the voice recognition unit 17 and the voice synthesis unit 18, and the dialogue device 1 may be configured to input and output text representing the contents of a user utterance or a system utterance. The microphone collects utterances made by a user and outputs voice representing the contents of the user utterance. The voice recognition unit 17 receives voice representing the contents of the user utterance as input, and outputs text representing the contents of the user utterance, which is a result of voice recognition of the voice. The text representing the contents of the user utterance is input to the utterance reception unit 12. The text representing the contents of the system utterance output by the utterance presentation unit 16 is input to the voice synthesis unit 18. The voice synthesis unit 18 receives the text representing the contents of the system utterance as input, and outputs a voice representing the contents of the system utterance obtained as a result of voice synthesis of the text. The speaker emits the voice representing the contents of the system utterance.
[0019] The example storage unit 10-1 stores a plurality of examples input by a plurality of example registrants. An example consists of an utterance sentence that is expected to be spoken by a user, a response sentence for the system to respond to the utterance, and at least one piece of situation information corresponding to the pair of the utterance sentence and the response sentence. The situation information is information that indicates the category of the topic being discussed in the current dialogue, such as "tourist information" or "administrative procedures". The situation information that the example registrant sets in the example may be selected from predefined situation information, or may be arbitrarily created by the example registrant.
[0020] The example registrant may be an expert with specialized knowledge or a non-expert without specialized knowledge. Examples can be input by, for example, collecting data using a website (see Non-Patent Document 2). On the website, a non-expert may post a combination of an utterance sentence expressing the content of a user utterance, a response sentence expressing the content of a system utterance responding to the user utterance, and situation information in which the user utterance and the system utterance are made. For example, assuming a task dialogue regarding "tourist information" and "administrative procedures", non-experts with knowledge close to a certain part of the specialty may participate in the dialogue, such as people who live in the region, people who have lived there, people who are interested in the region, people who are performing administrative procedures, and people who have performed administrative procedures. In addition to task dialogues such as "tourist information" and "administrative procedures", examples with situation information set to "chat" may be collected in advance and stored in the example storage unit 10-1 assuming a chat dialogue.
[0021] Non-Patent Document 2 describes that many example registrants create examples by becoming a specific character, but in this embodiment, it is not essential that example registrants create examples by becoming a specific character. Example registrants may create examples without becoming a specific character, and examples created by becoming a specific character and examples created without becoming a specific character may be mixed.
[0022] The dialogue state storage unit 10-2 stores information representing a dialogue state. The dialogue state is information representing the state of the current dialogue, and is determined based on the dialogue that has taken place from the start of the dialogue to the immediately preceding utterance. In practice, the dialogue state is set by the dialogue state update unit 15, which will be described later, when presenting the immediately preceding system utterance. The initial value of the dialogue state may be arbitrarily set from situation information set in any of the examples stored in the example storage unit 10-1. Alternatively, it may be set to, for example, "start of dialogue" as a formal dialogue state for dialogue control. In this case, a formal example in which situation information is set to "start of dialogue" is stored in advance in the example storage unit 10-1.
[0023] The selection rule storage unit 10-3 stores predefined selection rules. The selection rules represent the correspondence between a dialogue state, situation information, and a destination dialogue state, and define situation information available in the current dialogue state and a destination dialogue state to which the current dialogue state transitions when an example of that situation information is selected. The selection rules define that (1) in a certain dialogue state X, an example with situation information Y or Z can be selected, and (2) when example A with situation information Z is selected, a transition is made to another dialogue state W different from X, or to dialogue state X. Regarding (1), for example, (1-1) when the dialogue state is "tourist information", examples with situation information "tourist information", "history", or "shrine" can be selected. Regarding (2), for example, the definition is as follows: (2-1) when the dialogue state is "tourist information", if an example with status information of "gourmet" is selected and the topic of gourmet is spoken about, then the dialogue state is transitioned to "tourist information", (2-2) when the dialogue state is "dialogue start", if an example with status information of "greeting" is selected, then the dialogue state is transitioned to "dialogue standby", (2-3) when the dialogue state is "dialogue standby", if an example with status information of "tourist information" is selected, then the dialogue state is transitioned to "tourist information". If the configuration is such that the example registrant can arbitrarily set the status information when inputting an example, each time new status information is added, the selection rules for that status information (in which dialogue state the status information can be selected, which dialogue state a transition occurs when that status information is selected, and which status information can be selected in the dialogue state corresponding to that status information, and which dialogue state a transition occurs when that status information is selected) are also manually added. In addition, assuming that a chat dialogue is inserted during the execution of a task, in the case where examples with the situation information set to "chat" are collected, selection rules are pre-stored that are defined so that, for example, when the dialogue state is "administrative procedures" or "tourist information," an example with the situation information of "chat" can be selected and used as a response sentence.
[0024] In step S11, the example collection unit 11 receives examples input by an example registrant and stores them in the example storage unit 10-1.
[0025] In step S12, the utterance receiving unit 12 receives as input text representing the content of the user utterance input to the dialogue device 1 (or output by the voice recognition unit 17), and outputs the text representing the content of the user utterance to the dialogue state acquisition unit 13.
[0026] In step S13, the dialogue state acquisition unit 13 receives text representing the content of the user's utterance from the utterance receiving unit 12, acquires the dialogue state stored in the dialogue state memory unit 10-2 as the dialogue state at the time when the text representing the content of the user's utterance was received, and outputs the acquired dialogue state and the text representing the content of the user's utterance to the example selection unit 14.
[0027] In step S14, the example selection unit 14 receives text representing the dialogue state and the contents of the user utterance from the dialogue state acquisition unit 13, acquires examples (hereinafter also referred to as "selected examples") for responding to the user utterance from the example storage unit 10-1, and outputs the acquired selected examples to the dialogue state update unit 15. First, the example selection unit 14 acquires situation information that can be used in the current dialogue state based on the selection rules stored in the selection rule storage unit 10-3. Next, the example selection unit 14 searches for examples stored in the example storage unit 10-1 based on the text representing the contents of the user utterance and the situation information that can be used in the current dialogue state. For example, if the current dialogue state is "administrative procedures" and the contents of the user utterance are a question, an example including a response sentence that is an answer to the question sentence is searched for. A well-known search method may be used. Furthermore, when "chat" is acquired as situation information that can be used in the current dialogue state, examples stored in the example storage unit 10-1 are arbitrarily searched for that have situation information of "chat", or examples having speech sentences that are highly similar to the content of the user's utterance. When searching for examples having speech sentences that are highly similar to the content of the user's utterance, a well-known search method may be used. Next, the example selection unit 14 calculates a response selection score that indicates the appropriateness of the example as a response for each of the searched examples, based on a search score that indicates the degree of suitability with the search conditions and the correspondence between the speech sentences and response sentences set in the example. Then, the example selection unit 14 acquires the example with the highest response selection score as the selected example.
[0028] As described above, the selection rule can be defined as a relationship in which examples of situation information Y and Z can be selected when the dialogue state is X, but this is just one example. Selection can also be made by weighting, such as weighting the response selection scores so that when the dialogue state is X, examples of situation information Y are weighted at *.8 and examples of situation information Z are weighted at *.2, and the example with the highest response selection score is selected. Specifically, when the dialogue state is "tourist information", examples of situation information "tourist information" and "shrine" can be selected, and the weights are set as *.8 for the example of situation information "tourist information" and *.2 for the example of "shrine". In this case, if the response selection score of the example of "tourist information" is 30 and the response selection score of the example of "shrine" is 100, then the response selection score of (1) the example of "tourist information" is 30 x 0.8 = 24, and the response selection score of (2) the example of "shrine" is 100 x 0.2 = 20. In this case, when comparing (1) and (2), 24>20, so the example "tourist information" is selected.
[0029] In step S15, the dialogue state update unit 15 receives a selected example from the example selection unit 14, and if the dialogue state transitions according to the selection rule used to select the selected example, it updates the dialogue state stored in the dialogue state storage unit 10-2 and outputs the response sentence included in the selected example to the speech presentation unit 16. The new dialogue state is set according to the selection rule based on the current dialogue state and the situation information included in the selected example. For example, if the current dialogue state is "dialogue start" and the situation information included in the selected example is "administrative procedure", the dialogue state stored in the dialogue state storage unit 10-2 is updated to "administrative procedure" according to the selection rule that sets the dialogue state to be transitioned to when an example with situation information "administrative procedure" is selected when the dialogue state is "dialogue start". If the current dialogue state is "administrative procedure" and the status information included in the selected example is also "administrative procedure", the dialogue state remains "administrative procedure" (the dialogue state is not updated) according to the selection rule set for "administrative procedure" as the dialogue state to transition to when an example with status information "administrative procedure" is selected when the dialogue state is "administrative procedure". If the current dialogue state is "greeting" and the status information included in the selected example is "administrative procedure", the dialogue state stored in the dialogue state storage unit 10-2 is updated to "administrative procedure" according to the selection rule set for "administrative procedure" as the dialogue state to transition to when an example with status information "administrative procedure" is selected when the dialogue state is "dialogue standby". For example, a priority may be assigned to the status information, and when the current dialogue state and the status information included in the selected example received from the example selection unit 14 differ, the status information with the higher priority may be selected and updated to become the new dialogue state. For example, if the situation information allows the example of "chat" or "administrative procedure" to be selected when the dialogue state is "greeting," the dialogue state can be easily updated to "administrative procedure" by setting the priority of "administrative procedure" higher than that of "chat." By configuring in this way, the progress of the dialogue can be controlled so that the example selection unit 14 can easily select the example of "administrative procedure" rather than "chat" as the next utterance.In addition, examples that are expected to be spoken only once in a conversation, such as "self-introduction" or "greetings," may be controlled so that their priority is lowered after the first selection, so that they are not selected the second or subsequent times.
[0030] In step S16, the utterance presenting unit 16 receives the response sentence from the dialogue state updating unit 15, and presents the response sentence to the user as text representing the contents of the system utterance in a predetermined manner. When a text-based dialogue is being executed, the text representing the contents of the system utterance is output to the display unit of the dialogue device 1. When a voice-based dialogue is being executed, the text representing the contents of the system utterance is input to the voice synthesis unit 18, and the voice representing the contents of the system utterance output by the voice synthesis unit 18 is reproduced from a predetermined speaker.
[0031] In step S100, the dialogue device 1 judges whether or not the current dialogue has ended. If it is judged that the current dialogue has ended (YES), the process ends and waits until the next dialogue starts. If it is judged that the current dialogue has not ended (NO), the process returns to step S12 and the next user utterance is accepted. The dialogue end judgement may be performed by judging whether or not the current state is a predefined end state. The predefined end state may be, for example, a state in which the status information has been updated to "Ended" or a state in which the user or the system has uttered a predetermined greeting such as "That's all" or "Thank you very much."
[0032] <Specific example of the first embodiment> Hereinafter, a specific example of a dialogue realized by the dialogue device 1 of the first embodiment will be described, assuming a task-based dialogue system that can selectively execute two tasks, "tourist guidance" and "administrative procedures."
[0033] Assume that the following examples 1 to 5 are stored in the example storage unit 10-1. Note that when two pieces of situation information X and Y are written together, such as "X / Y," this indicates that multiple pieces of situation information are added to one example. Example 1: User utterance: "Do I need a certificate of residence to file my tax return?" System response: "If you have a My Number card, you do not need a resident registration card. However, if you do not have a My Number card, you will need a resident registration card or a certified copy of your family register with your My Number written on it." Status information: Administrative procedures / tax returns Example 2: User utterance "Where can I get a My Number card?" System response: "You can issue it at the general counter." Status information: Administrative procedures / My Number Example 3: User utterance "Do you have any local specialties?" System response: "Keihanna has magnificent nature and fresh air." Status information: Tourist information / specialties Example 4: User utterance "Hello" The system responds: "Hello, how can we help you today?" Status Information: Greetings Example 5: User utterance " " System response: "How can we help you?" Status information: Administrative procedures / start of dialogue Example 6: User utterance: "Nothing in particular" System utterance: "I understand. Thank you for using our service." Status Information: Terminated
[0034] When a new dialogue is started, the current dialogue state is set to "dialogue start" as an initial value, and the dialogue device passively waits for the user to speak, the dialogue device waits in the "dialogue start" dialogue state until the user speaks. If a selection rule is set such that an example with status information of "greeting" is available when the dialogue state is "dialogue start", the dialogue device selects example 4 to which status information of "greeting" is assigned, and outputs a system utterance to the user, "What may we help you with?" At this time, if a selection rule is set such that when an example with status information of "greeting" is selected when the dialogue state is "dialogue start", the dialogue state transitions to "administrative procedure", the dialogue state transitions to "administrative procedure".
[0035] In an example such as Example 5, which assumes that the dialogue device will spontaneously speak to the user, no user utterance may be set. Example 5 is registered in advance as a formal example used to transition the dialogue state in dialogue control.
[0036] When a new dialogue is started, the current dialogue state is set to "dialogue start" as an initial value, and the dialogue device spontaneously utters, it selects example 5 to which the status information of "dialogue start" is attached, and outputs the system utterance "What is your business?" to the user. In this case, if the selection rule is set such that when the current dialogue state is "dialogue start" and an example with status information of "administrative procedures" is selected, the dialogue state transitions to "administrative procedures" because "administrative procedures" is also attached to the status information of the selected example (example 5). If the user then utters "Where can I issue a My Number card?", example 2 that matches the content of the user utterance is selected from among the examples to which status information available in the current dialogue state "administrative procedures" (here, it is assumed that "administrative procedures" is set in the selection rule), and the system utterance "It can be issued at the general counter" is output. In this case, if the current dialogue state is "administrative procedure" and a selection rule is set such that if an example with status information of "administrative procedure" is selected, the dialogue state will remain "administrative procedure." Since the status information of the selected example (example 2) is "administrative procedure," the dialogue state will remain "administrative procedure."
[0037] If the dialogue device utters to the user, "What can I do for you?" and the user utters, "Nothing in particular," example 6 that matches the content of the user utterance is selected, and the system outputs the utterance, "I understand. Thank you for using our service." In this case, if a selection rule is set that transitions to "End" when an example with status information of "End" is selected when the current dialogue state is "Administrative Procedure," the dialogue state transitions to "End" because the status information of the selected example (example 6) is "End." The dialogue device, whose dialogue state has now become "End," performs an end process for the current dialogue and waits until the next dialogue is started.
[0038] In the above specific example, an example of a dialogue for executing a task such as "administrative procedure" or "tourist guide" has been described, but it is also possible to insert a chat dialogue during the execution of a task. In this case, as described above, when the dialogue state is "administrative procedure" or "tourist guide", a selection rule is defined in advance so that an example with the situation information set to "chat" can be selected as a response sentence, and is stored in the selection rule storage unit 10-3. In addition, examples with the situation information set to "chat" are collected in advance and stored in the example storage unit 10-1. For example, when a user utters a topic that can be considered as chatting even during the guidance of an administrative procedure, a selection rule is defined so that an example with the situation information set to "chat" can be selected and a dialogue can be performed according to the topic uttered by the user. In this way, by inserting chat during a task dialogue, it is possible to ease the user's tension and foster a sense of familiarity with the dialogue device, and it is expected to have the effect of making the user concentrate more on the dialogue.
[0039] For example, the flow of the task dialogue without small talk is as follows: User: "Hello" (Dialogue state: Start of dialogue) System: (Status information responds with an example greeting) (Status information: Greeting, Dialogue state: Transition to dialogue waiting) User: "Where is my number card?" (Dialogue state: administrative procedure) System: (Situation information responds with an example of "window guidance") (Situation information: window guidance, dialogue state: transition to window guidance) User: "Where is your residence card? Where is your tax payment certificate?" (Dialogue state: administrative procedure) System: (Status information responds with an example of contact information) For example, when the dialogue state is "administrative procedures" or "guidance at the counter," the situation information can be set to give a high weight to examples of "administrative procedures" and "guidance at the counter," making it more likely that examples of "administrative procedures" and "guidance at the counter" will be selected.
[0040] For example, the flow of a task dialogue when small talk is inserted is as follows: User: Hello (Dialogue state: Start of dialogue) System: Status information returns an example of a greeting (status information: greeting, dialogue state: dialogue waiting, transition) User: It's a nice day today. (Dialogue state: chat) System: The situation information responds with an example of chatting (situation information: chatting, dialogue state: transition to chatting) For example, by setting the situation information to be weighted more heavily when the dialogue state is "chat," examples with the situation information of "chat" are more likely to be selected.
[0041] In this way, by introducing dialogue control based on selection rules, even in an example-based dialogue system, the designer can freely decide what kind of dialogue he wants to proceed in what dialogue state.
[0042] [Second embodiment] The second embodiment of the present invention is a dialogue device and method capable of paraphrasing the system utterance presented by the dialogue device 1 of the first embodiment into an utterance that fully represents a specific character and presenting it. As shown in Fig. 3, the dialogue device 2 of the second embodiment includes the example storage unit 10-1, the dialogue state storage unit 10-2, the selection rule storage unit 10-3, the example collection unit 11, the utterance reception unit 12, the dialogue state acquisition unit 13, the example selection unit 14, the dialogue state update unit 15, and the utterance presentation unit 16 included in the dialogue device 1 of the first embodiment, and further includes an utterance conversion unit 21. The dialogue device 2 may include a speech recognition unit 17 and a speech synthesis unit 18, as in the first embodiment. The dialogue device 2 executes the process of each step shown in Fig. 4, thereby realizing the dialogue method of the second embodiment.
[0043] Hereinafter, the dialogue method executed by the dialogue device 2 of the second embodiment will be described with reference to FIG. 4, focusing on the differences from the first embodiment.
[0044] In step S11-2, the example collection unit 11 receives a conversion example input by the example registrant and stores it in the example storage unit 10-1. A conversion example is an example for converting a certain spoken sentence into a paraphrased speech sentence of the original spoken sentence. A paraphrased speech sentence is, for example, a speech sentence when a certain spoken sentence is spoken by impersonating a specific character. A conversion example consists of the pre-conversion speech sentence (i.e., a speech sentence that can be presented in an existing dialogue system), the post-conversion speech sentence (i.e., a speech sentence when it is assumed that the pre-conversion speech sentence is spoken by a specific character), and situation information indicating the target character, such as "a paraphrase of <specific character>".
[0045] In step S21, the utterance conversion unit 21 receives a response sentence from the dialogue state update unit 15, converts the response sentence into a paraphrased response sentence using a conversion example stored in the example memory unit 10-1, and outputs the converted response sentence to the utterance presentation unit 16.
[0046] The utterance presentation unit 16 of the second embodiment receives the converted response sentence from the utterance conversion unit 21, and presents the converted response sentence to the user as text representing the content of the system utterance in a predetermined manner.
[0047] [Variations] In the above embodiment, the dialogue device includes the dialogue state storage unit 10-2, and the dialogue state acquisition unit 13 acquires the current dialogue state by reading out the dialogue state stored in the dialogue state storage unit 10-2. However, it is also possible to configure the dialogue state acquisition unit 13 to estimate the dialogue state based on the progress of the dialogue, etc. In this case, the dialogue device does not need to include the dialogue state storage unit 10-2 and the dialogue state update unit 15. For example, in a slot-value dialogue system that executes a task by analyzing the content of a user's utterance and filling in values corresponding to predefined slots, the next state can be estimated from the degree to which the slot values are filled. For the estimation, language understanding using sequence labeling such as conditional random fields (CRF) and neural networks (NN) can be used. In this method, for an input sentence such as "Where can I issue my number card?", it is estimated which part corresponds to which slot. Specifically, it is estimated as "Can you (issue: work) (my number card: purpose) at (where: what you are listening)?" Then, the estimated "Where": what you are asking, "My Number": purpose, "Issuing": work" is input to the slot value. If the example storage unit 10-1 has an example corresponding to the combination of "Where": what you are asking, "My Number": purpose, "Issuing": work", the example is output as a selected example. If there is no example corresponding to the combination, the example corresponding to the most similar combination is output, or an utterance is made to inquire the user about the slot that is the difference between the most similar combination and the current combination, the contents of the slot are updated or added, and an example corresponding to the combination is again attempted to be output. For example, if the slot value is filled with "What you are asking: where, purpose: restroom", the dialogue state can be estimated as "guide to the town hall", and the corresponding response "The restrooms are on the east side of each floor" can be selected.For example, a response corresponding to a slot value that has already been filled from among a number of predefined slots may be selected, or a response sentence inquiring about the contents of a slot that has not yet been filled may be selected.
[0048] By configuring as described above, the dialogue device of the present invention can build a dialogue system for accomplishing a predetermined task at low cost. First, by collecting examples from multiple example registrants, a dialogue system with expert knowledge on the task can be built in a collective intelligence. A scenario formed by a series of conditional branches needs to be created by an expert with expert knowledge on the entire task so as to have consistency, but if the examples are created in a question-and-answer format, even a non-expert with only partial knowledge on the task can create them, so that the cost of building a dialogue system can be reduced. In addition, by adding an attribute called situation information to the examples and defining the situation information that can be used according to the dialogue state, a series of dialogues like a scenario can be realized using the examples. Furthermore, by setting information corresponding to the tasks in the dialogue state and situation information, it has become possible to execute multiple tasks simultaneously. In a scenario-based dialogue system, dialogue control is required to further appropriately combine multiple scenarios corresponding to each task created by an expert, but in the present invention, a dialogue system that can execute multiple tasks simultaneously can be easily realized by simply defining a selection rule for transitioning between tasks.
[0049] Although the embodiments of the present invention have been described above, the specific configuration is not limited to these embodiments, and it goes without saying that the present invention includes appropriate design changes and the like within the scope of the gist of the present invention. The various processes described in the embodiments are not only executed in chronological order according to the order described, but may also be executed in parallel or individually depending on the processing capacity of the device executing the processes or as necessary.
[0050] [Programs, recording media] When the various processing functions of each device described in the above embodiment are realized by a computer, the processing contents of the functions that each device should have are described by a program. Then, the various processing functions of each device are realized on the computer by loading this program into the storage unit 1020 of the computer shown in Fig. 5 and operating the arithmetic processing unit 1010, the input unit 1030, the output unit 1040, etc.
[0051] The program describing the processing contents can be recorded on a computer-readable recording medium. The computer-readable recording medium is, for example, a non-transitory recording medium, such as a magnetic recording device or an optical disk.
[0052] The program may be distributed, for example, by selling, transferring, lending, etc. portable recording media such as DVDs and CD-ROMs on which the program is recorded. Furthermore, the program may be distributed by storing the program in a storage device of a server computer and transferring the program from the server computer to other computers via a network.
[0053] A computer that executes such a program, for example, first stores a program recorded on a portable recording medium or a program transferred from a server computer in the auxiliary recording unit 1050, which is a non-transient storage device of the computer. Then, when executing a process, the computer reads the program stored in the auxiliary recording unit 1050, which is a non-transient storage device, into the storage unit 1020, which is a temporary storage device, and executes a process according to the read program. As another execution form of the program, the computer may directly read the program from the portable recording medium and execute a process according to the program, or may execute a process according to the received program each time a program is transferred from the server computer to the computer. Alternatively, the server computer may not transfer the program to the computer, but may execute the above-mentioned process by a so-called ASP (Application Service Provider) type service that realizes a processing function only by issuing an execution instruction and obtaining a result. Note that the program in this embodiment includes information used for processing by an electronic computer and equivalent to a program (data that is not a direct instruction to a computer but has a nature that specifies the processing of a computer, etc.).
[0054] In addition, in this embodiment, the present device is configured by executing a specific program on a computer, but at least a part of the processing contents may be realized by hardware.
Claims
1. an example storage unit that stores a plurality of examples each including an utterance sentence, a response sentence, and situation information that is information representing a category of a topic in a dialogue between the utterance sentence and the response sentence; a selection rule storage unit for storing selection rules each including a dialogue state, situation information available in that dialogue state, and a dialogue state to which the dialogue state is to be transitioned when an example of that situation information is selected; an utterance receiving unit that receives a user utterance uttered by a user; an example selection unit that selects, from the plurality of examples, a selection example whose situation information corresponds to situation information available in a current dialogue state and whose utterance sentence corresponds to the user utterance, using the selection rule; an utterance presentation unit that presents to the user a system utterance based on a response sentence included in the selected example; An interactive device comprising:
2. 2. An interactive device according to claim 1, the example selection unit acquires situation information available in the current dialogue state from the selection rules, and selects, as the selected example, an example including a response sentence that is a reply to the user utterance from among the examples set with the acquired situation information. Interactive device.
3. 3. An interactive device according to claim 1 or 2, the example storage unit further stores a conversion example including a pre-conversion utterance sentence, a post-conversion utterance sentence, and information indicating a character; a speech conversion unit that converts a response sentence included in the selected example into a response sentence spoken by a predetermined character using the conversion example, Interactive device.
4. 4. An interactive device according to claim 1, a dialogue state storage unit that stores the current dialogue state; The current dialogue state is updated to the dialogue state of the transition destination included in the selection rule. a dialogue state update unit for updating the dialogue state; Further equipped with the example selection unit selects the selected example by using the current dialogue state stored in the dialogue state storage unit. Interactive device.
5. 4. An interactive device according to claim 1, a dialogue state acquisition unit configured to estimate the current dialogue state based on a progress status from the start of the dialogue to the present, the example selection unit selects the selection example by using the current dialogue state estimated by the dialogue state acquisition unit. Interactive device.
6. 6. An interactive device according to claim 1, the example selection unit selects the selected example by weighting situation information available in a current dialogue state; Interactive device.
7. an example storage unit stores a plurality of examples each including an utterance sentence, a response sentence, and situation information representing a category of a topic in a dialogue between the utterance sentence and the response sentence; a selection rule storage unit stores a selection rule including a dialogue state, situation information available in that dialogue state, and a dialogue state to which the dialogue state is to be transitioned when an example of that situation information is selected; The speech receiving unit receives a user utterance spoken by a user, an example selection unit selects, from the plurality of examples, a selection example whose situation information corresponds to situation information available in a current dialogue state and whose utterance sentence corresponds to the user utterance, using the selection rules; an utterance presentation unit presents to the user a system utterance based on a response sentence included in the selected example; How to interact.
8. A program for causing a computer to function as the interactive device according to any one of claims 1 to 6.
Citation Information
Patent Citations
Communication device and control program for communication device
JP2020067584A
Interactive device, interactive method, and program
JP2020119221A