WO2018066258A1 - 対話装置、対話装置の制御方法、および制御プログラム - Google Patents

対話装置、対話装置の制御方法、および制御プログラム Download PDF

Info

Publication number
WO2018066258A1
WO2018066258A1 PCT/JP2017/030408 JP2017030408W WO2018066258A1 WO 2018066258 A1 WO2018066258 A1 WO 2018066258A1 JP 2017030408 W JP2017030408 W JP 2017030408W WO 2018066258 A1 WO2018066258 A1 WO 2018066258A1
Authority
WO
WIPO (PCT)
Prior art keywords
utterance
user
unit
database
correct
Prior art date
Application number
PCT/JP2017/030408
Other languages
English (en)
French (fr)
Inventor
和典 森下
慎哉 佐藤
弘康 伊神
直起 江角
Original Assignee
シャープ株式会社
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 シャープ株式会社 filed Critical シャープ株式会社
Priority to JP2018543774A priority Critical patent/JP6715943B2/ja
Priority to CN201780061614.2A priority patent/CN109791766A/zh
Priority to US16/339,166 priority patent/US20190311716A1/en
Publication of WO2018066258A1 publication Critical patent/WO2018066258A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/274Converting codes to words; Guess-ahead of partial word inputs
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L13/00Speech synthesis; Text to speech systems
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/28Constructional details of speech recognition systems
    • G10L15/30Distributed recognition, e.g. in client-server systems, for mobile phones or network applications
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/268Morphological analysis
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/223Execution procedure of a spoken command

Definitions

  • the present invention relates to a dialog device, a control method for the dialog device, and a control program, for example, a dialog device that interacts with a user by voice or text.
  • Patent Document 1 discloses an interactive device that interacts with a user by voice.
  • Some dialog devices store user utterances in a database and use past user utterances stored in the database to generate dialog device utterances.
  • the phrase may be omitted in the user's utterance.
  • the dialogue device utters “(Do you like apples?)”, Instead of answering “(I like apples)”, the user will say “I like” (subject omitted), or Sometimes say “Yes” (omission of answer).
  • the dialogue apparatus may not be able to effectively use the user's utterance to generate the utterance of the dialogue apparatus.
  • the interactive device supplements a phrase omitted in the user's utterance, the supplemented user's utterance may be incorrect. That is, the supplemented user's utterance may deviate from the user's intention. Incorrectly supplemented user utterances may not be used effectively to generate dialogue device utterances.
  • the present invention has been made in view of the above-mentioned problems, and its purpose is to save a user's utterance in order to generate an utterance of an interactive device by saving it without omission and error. It is to make effective use of past user utterances.
  • an interactive apparatus is an interactive apparatus that interacts with a user by voice or text, and a phrase that is insufficient for the user's utterance input to the interactive apparatus. If there is an utterance, the utterance complementing unit that complements the utterance of the user based on the previous utterance of the dialog device and the user, and the utterance of the user supplemented by the utterance complementing unit based on a predetermined determination condition
  • a correctness determination unit that determines whether the user's utterance is correct, and if the correctness determination unit determines that the utterance of the user is correct, an utterance storage unit that stores information on the utterance of the user in an utterance database, and the utterance storage unit includes the utterance
  • An utterance generation unit configured to generate an utterance of the dialog apparatus using the user's utterance stored in the database.
  • a control method for an interactive device is a control method for an interactive device that interacts with a user by voice or text, and the user is input to the interactive device.
  • Utterance complementing step for complementing the user's utterance based on the previous utterance of at least one of the dialog device and the user, and the utterance completion based on a predetermined condition
  • the correct / incorrect determination step for determining the correctness of the user's utterance supplemented in the step
  • the correct / incorrect determination step if the user's utterance is determined to be correct, the utterance information of the user is generated as the utterance information of the user
  • An utterance storage step for storing the utterance database in the utterance database, and the user stored in the utterance database in the utterance storage step.
  • the stored past user's utterance can be effectively used in order to generate a dialog device utterance.
  • FIG. It is a block diagram which shows the structure of the dialogue apparatus which concerns on Embodiment 1.
  • FIG. It is a flowchart which shows the flow of the speech information acquisition process which the control part of the dialogue apparatus which concerns on Embodiment 1 performs. It is a flowchart which shows the flow of the speech production
  • FIG. It is a flowchart which shows the flow of the speech complementation process performed in the speech information acquisition process shown in FIG. It is a flowchart which shows the flow of the speech preservation
  • FIG. 10 is a flowchart illustrating a flow of an utterance storing process according to the second embodiment.
  • 10 is a flowchart illustrating a flow of an utterance confirmation process according to the third embodiment.
  • Embodiment 1 Hereinafter, embodiments of the present invention will be described in detail.
  • FIG. 1 is a block diagram showing the configuration of the interactive apparatus 1.
  • the dialogue apparatus 1 may interact with the user by text.
  • the dialogue apparatus 1 includes a voice input unit 10, a control unit 20, and a voice output unit 30. Further, the dialogue apparatus 1 stores a scenario database 40, an utterance database 50, and a category table 60. Although not shown, a recognition dictionary is also stored for the voice recognition unit 21 described later to recognize the user's voice. The recognition dictionary describes the correspondence between the voice detected by the voice input unit 10 and the word or phrase indicated by the voice.
  • the voice input unit 10 detects a user's utterance and generates voice data corresponding to the user's utterance.
  • the voice input unit 10 is specifically a microphone.
  • the voice data detected by the voice input unit 10 is transmitted to the control unit 20.
  • the control unit 20 generates an utterance of the dialogue apparatus 1.
  • the user's utterance detected by the voice input unit 10 is voice-recognized, and the user's utterance information obtained as a result of the voice recognition is stored in the utterance database 50.
  • the control unit 20 includes a speech recognition unit 21, a morpheme analysis unit 22, a complement processing unit 23 (speech supplement unit), an utterance generation unit 24, an utterance storage unit 25, and a correctness determination unit 26.
  • the processing performed by each unit of the control unit 20 will be described in the description of the utterance information acquisition processing described later.
  • the voice output unit 30 converts the utterance of the interactive device 1 generated by the control unit 20 into voice and outputs the voice.
  • the audio output unit 30 is specifically a speaker.
  • the dialogue apparatus 1 may convert the utterance of the dialogue apparatus 1 into text and output it.
  • the scenario database 40 stores a scenario for generating an utterance of the dialogue apparatus 1.
  • the scenario includes a question scenario (see FIG. 4) described later.
  • the utterance database 50 stores utterance information of the past dialogue apparatus 1 and utterance information of past users.
  • the category table 60 the word and the category of the word are associated with each other.
  • the category of the word being uttered is often related to the topic of the utterance.
  • the word category is hereinafter referred to as a topic category.
  • An example of the scenario database 40, the utterance database 50, and the category table 60 will be described later. Note that some or all of the data such as the scenario database 40, the utterance database 50, and the category table 60 may be distributed and stored on the network.
  • data such as the scenario database 40, the utterance database 50, and the category table 60 may be provided to the interactive device 1 regularly or irregularly via the Internet.
  • the control unit 20 may also be in a server on the Internet. In this configuration, the control unit 20 in the server may control the voice input unit 10 and the voice output unit 30 of the interactive apparatus 1 via the Internet, a home network (for example, a wireless LAN), or the like.
  • FIG. 2 is a flowchart showing the flow of the utterance information acquisition process.
  • the utterance generation unit 24 generates an utterance of the dialogue apparatus 1 (S1).
  • the user may utter the dialogue apparatus 1 first.
  • the voice input unit 10 detects the user's utterance and generates voice data corresponding to the user's utterance. The flow of the utterance generation process (S1) will be described later.
  • the voice recognition unit 21 receives voice data corresponding to the user's utterance from the voice input unit 10 (S2, utterance acquisition step).
  • the voice recognition unit 21 performs voice recognition processing on the voice data received from the voice input unit 10, thereby converting voice data corresponding to the user's utterance into text data (S3).
  • the voice recognition unit 21 may request the user to speak again by display or notification using voice or the like, or may wait until the user speaks again. Good.
  • the speech recognition unit 21 outputs the result of speech recognition, that is, text data corresponding to the user's utterance, to the morpheme analysis unit 22.
  • the speech recognition unit 21 may output the result of speech recognition to the morphological analysis unit 22 even when the speech recognition process fails.
  • the morphological analyzer 22 receives the text input by the user. Moreover, S3 mentioned above is abbreviate
  • text data obtained as a result of voice recognition or user text input is referred to as user speech data.
  • the morpheme analysis unit 22 performs morpheme analysis on the user's utterance data acquired from the speech recognition unit 21 (S4). That is, the morphological analysis unit 22 divides the user's utterance into morphemes (for example, words) which are the smallest units having meaning as a language. In addition, since morphological analysis is a technique that has existed in the past, description on morphological analysis is omitted here.
  • the morphological analysis unit 22 evaluates the result of the morphological analysis (S5). Specifically, the morphological analysis unit 22 determines whether there is a clause omitted in the user's utterance.
  • the phrase is composed of one or more words.
  • the complement processing unit 23 When there is an omitted clause in the user's utterance (Yes in S6), the complement processing unit 23 omits the omitted clause (based on at least one of the immediately previous utterance of the interactive device 1 and the past user's utterance ( For example, the subject, predicate, and modifier are complemented (S7, utterance complementing step). In addition, the flow of the speech complementing process (S7) by the complementing processing unit 23 will be described later. On the other hand, when there is no omitted clause in the user's utterance (No in S6), the complement processing unit 23 does not perform the utterance complement process.
  • the utterance storage unit 25 acquires user utterance data from the complement processing unit 23. As described above, when there is a clause omitted in the user's utterance, the complement processing unit 23 complements the omitted clause in S7. Therefore, the user's utterance acquired by the utterance storage unit 25 is a complete state with no omitted clauses.
  • the utterance storage unit 25 refers to the category table 60 (see FIG. 8) and identifies the topic category of each word included in the user's utterance.
  • the utterance storage unit 25 adds information on topic categories of all words included in the user's utterance as attached information to the user's utterance information. For example, when the user's utterance is “I like apples”, the utterance storage unit 25 includes, in the user's utterance information, “fruit”, which is the topic category of “apples”, and “likes”. Each accessory information of the category “preference” is added.
  • the utterance storage unit 25 stores the user's utterance information with the attached information in the utterance database 50 (see FIG. 7) (S8, utterance storage step).
  • the attached information may be used to generate an utterance of the interactive apparatus 1.
  • the utterance database 50 when the additional information of the time when the user's utterance is input is added to the past user's utterance information “I bought a cake”, the dialogue apparatus 1 reads from the scenario database 40. , Get a scenario in the same topic category as the user's utterance, and generate an utterance such as "Did you eat the cake you bought yesterday?" Or "The cake you bought on last birthday was delicious” it can.
  • the dialogue apparatus 1 From the scenario database 40, a scenario of the same topic category as the user's utterance can be acquired, and an utterance such as “The Seto Ohashi seen last evening was beautiful” can be generated.
  • the complement processing unit 23 when the complement processing unit 23 supplements the user's utterance, the supplemented user's utterance may be out of the user's intention. For example, when the user utters “sweet”, the complement processing unit 23 complements the subject omitted in the user's utterance. However, the subject complemented by the complement processing unit 23 may be different from the subject intended by the user. Therefore, the correctness / incorrectness determination unit 26 determines the correctness / incorrectness of the supplemented user's utterance based on a predetermined determination condition, and the supplementary user's utterance information is included in the utterance database 50 only when the supplemented user's utterance is correct. Save to.
  • the correctness determination unit 26 may determine the correctness of the supplemented user's utterance based on any determination condition. For example, the correctness / incorrectness determination unit 26 may use the information of the utterance of the immediately preceding user or the dialog device 1 in order to determine the correctness of the supplemented user's utterance. An example of the utterance storage process (S8) by the correctness determination unit 26 will be described later. This completes the speech information acquisition process.
  • the user's utterance can be stored in the utterance database 50 in a complete state, that is, in a state in which a phrase is not omitted.
  • Information on the utterances of the past user stored in the utterance database 50 can be used to generate the utterances of the dialogue apparatus 1.
  • a method for generating an utterance of the dialog device 1 using information on the utterances of past users stored in the utterance database 50 will be described later.
  • FIG. 4 is a diagram illustrating an example of the data structure of the scenario database 40.
  • the scenario database 40 includes a plurality of scenarios including scenarios of questions from the interactive device 1 to the user.
  • the scenario database 40 may further include a scenario for generating an utterance (for example, a call, notification, etc.) of the dialogue apparatus 1 other than the question.
  • the utterance generation unit 24 in the utterance database 50 the last of the previous user utterance information stored in the utterance database 50.
  • the topic category information associated with the user's utterance information (stored in) is referred to.
  • the utterance generation unit 24 searches the scenario database 40 shown in FIG. 4 for a scenario having the same topic category as the topic category associated with the immediately preceding user's utterance (S201).
  • the utterance generation unit 24 changes the utterance of the previous user from the scenario database 40.
  • a scenario of a topic category different from the corresponding topic category (for example, the “anything” topic category in FIG. 4) is selected (S205).
  • the topic category of the utterance of the dialogue apparatus 1 generated by the utterance generation unit 24 is similar to, for example, the topic category of the utterance of the immediately preceding user (that is, the same upper conceptual category as the topic category of the utterance of the immediately preceding user ( (To be described later).
  • the utterance generation unit 24 generates the next utterance of the dialog device 1 by replacing the topic category of the scenario selected in S205 with the topic category of the previous utterance of the dialog device 1 or the user (S206, utterance generation step). . If there is no scenario in the scenario database 40 that has the same topic category as the topic category associated with the previous user's utterance (No in S201), the dialogue apparatus 1 does not utter an operation such as reconciliation. Then, it may respond to the user's utterance.
  • the utterance generation unit 24 uses the utterance (for example, “by the way”) to inform the user that the topic is to be changed. ) May be generated.
  • the utterance generation unit 24 is associated with the scenario from the scenario database 40. Conditions and results (see FIG. 4) are extracted (S202). Further, the utterance generation unit 24 searches the utterance database 50 for information on the utterances of the dialog device 1 or the user that satisfies the scenario conditions extracted in S202 (S203).
  • the utterance generation unit 24 reads from the scenario database 40. A scenario of a topic category different from the topic category corresponding to the user's previous utterance is selected (S205).
  • the utterance generation unit 24 extracts the scenario One of the scenarios is selected from (S204).
  • the utterance generation unit 24 After that, the utterance generation unit 24 generates the next utterance of the dialog device 1 by replacing the topic category of the scenario selected in S204 or S205 with the topic category of the previous utterance of the dialog device 1 or the user (S206, Utterance generation step). This completes the utterance generation process.
  • FIG. 5 is a flowchart showing the flow of the speech complement process S7.
  • the complementation processing unit 23 determines whether or not the subject is omitted in the user's speech obtained as a result of the morphological analysis by the morpheme analysis unit 22 (S301). .
  • the complement processing unit 23 complements the subject in the user's utterance (S302).
  • the complementary processing unit 23 refers to the utterance database 50 and stores the last utterance information of the previous interactive device 1 stored in the utterance database 50 (that is, lastly stored in the utterance database 50). ) Acquire utterance information of the interactive device 1. And the subject of a user's utterance is complemented based on the subject of the utterance of the dialog apparatus 1 immediately before. For example, when the user speaks “I like grapes” according to “Scenario 2” in the scenario database 40 shown in FIG. The complement processing unit 23 may complement the subject “you” omitted in the user's utterance, and generate a supplemented user utterance “XX (user registration name) likes grapes”.
  • the complement processing unit 23 may generate an utterance “I like grapes” without including the user's registered name in the complemented user utterance.
  • the complement processing unit 23 utters the user ’s “I love” utterance and the user says “Apple is delicious”. Based on the previous utterance, a complementary user utterance “I love apples” may be generated.
  • the complement processing unit 23 may supplement the user's utterance based on the previous utterance (of the dialog apparatus 1 or the user) other than the question of the dialog apparatus 1.
  • the complement processing unit 23 utters the user's utterance according to the scenario for completion. You may supplement. For example, in a scenario for completion, a part of speech (word) or clause of a sentence is blank, and a sentence corresponding to the supplemented user's utterance is completed by filling in the blank based on the user's utterance. It may be configured to.
  • the complement processing unit 23 next determines whether or not the predicate is omitted in the user's utterance (S303).
  • the complement processing unit 23 complements the predicate in the user's utterance based on the utterance of the previous dialog device 1 (S304). For example, if the utterance of the previous dialog device 1 is “Do you like grapes?” And the user utters “I like it”, the complement processing unit 23 will say “XX (User's registered name). ) Like the grapes "generates a complementary user utterance.
  • the complement processing unit 23 may further perform a step of supplementing the modifier with the user's utterance.
  • the complement processing unit 23 next determines whether or not the answer is omitted in the user's utterance (S305). That is, the complement processing unit 23 determines whether the user's utterance is “Yes” or other positive, “No”, or other negative. In the case where the answer is omitted in the user's utterance (Yes in S305), the complement processing unit 23 refers to the utterance database 50 (see FIG. 7) and acquires the utterance information of the immediately previous dialog device 1. Then, the user's utterance is complemented based on the utterance of the previous dialog device 1 (S306).
  • the complement processing unit 23 displays “XX (user registered name)”. Generates a complementary user utterance "I hate grapes”.
  • the complement processing unit 23 does not perform the utterance complement processing for the user's utterance.
  • FIG. 6 is a flowchart showing the flow of the utterance storing process S8. Below, the flow of the speech preservation
  • the correctness determination unit 26 is associated with the same topic category as the topic category of the word included in the user's utterance complemented by the complementing processing unit 23 from the utterance database 50.
  • the user's utterance information of the past is searched (S401, correctness determination step).
  • the correctness determination unit 26 does not find information on the utterance of the past user associated with the same topic category as the topic category of the word included in the supplemented user utterance (No in S402), the correctness of the supplemented user It is determined that the utterance is incorrect. In this case, the utterance storage unit 25 does not store the supplemented user utterance information in the utterance database 50 (S403). However, when it is determined that the user's utterance supplemented by the correctness / incorrectness determination unit 26 is an error, the user may confirm whether the supplemented user's utterance is appropriate.
  • the utterance storage unit 25 when it is answered that the user's supplemented utterance is appropriate, the utterance storage unit 25 also stores in the utterance database 50 the supplemented user's utterance determined by the correctness determination unit 26 as an error. This configuration will be described later in a third embodiment.
  • the correct / incorrect determination unit 26 finds information on a past user's utterance associated with the same topic category as the topic category of the word included in the supplemented user's utterance (Yes in S402), the correct user's utterance is detected. It is determined that the utterance is correct. In this case, the utterance storage unit 25 stores the user's utterance information supplemented by the complement processing unit 23 in the utterance database 50 (S404). In S7 of the utterance information acquisition process, if the complement processing unit 23 does not supplement the user's utterance, the correctness determination unit 26 does not determine whether the user's utterance is correct, and the utterance storage unit 25 does not complete the user. You may save the utterance.
  • the correctness / incorrectness determination unit 26 determines whether the supplemented user's utterance is based on a condition regarding who (which user) uttered in addition to a condition regarding what topic category the supplemented user's utterance relates to. Correctness may be determined. According to the configuration of the present modification, the number of conditions for determining the correctness of the utterance of the supplemented user is increased, so that the correctness of the utterance of the supplemented user can be determined more accurately.
  • the correctness / incorrectness determination unit 26 is able to find from the utterance database 50 information on past user utterances associated with the same topic category as the supplemented user's utterance topic category (FIG. 6). (Yes in S402), with reference to the attached information added to the utterance information of the found past user, it is specified who (that is, which user) the utterance of the found past user is the utterance. . Then, the correct / incorrect determination unit 26 determines that the utterance of the supplemented user is correct when the uttered user (who) matches between the uttered user and the utterance of the past user found.
  • the correctness determination unit 26 refers to, for example, user identification information (registered name or registration number) registered in advance in the interactive device 1 in order to identify who has found the past utterance. May be.
  • FIG. 7 is a diagram illustrating an example of a data structure of the utterance database 50 in which the utterance information of the interactive device 1 and the past user is stored.
  • robot described in the “Who” item of the utterance database 50 shown in FIG.
  • information on each utterance by the robot that is, the interactive device 1 and the user is stored.
  • the utterance database 50 shown in FIG. 7 “When” (date and time of utterance), “Where” (where the utterance was made), “Who” (the subject of the utterance) with respect to the information of each utterance by the robot and the user.
  • FIG. 7 information of a plurality of topic categories (“What”) is added to the information of each utterance as attached information.
  • the past user utterance information includes additional information indicating the means (whether voice input or text input) that the utterance was input to the dialogue apparatus 1.
  • additional information indicating whether the utterance is stored in the utterance database 50 (whether or not complemented) may be added.
  • FIG. 8 is a diagram illustrating an example of the data structure of the category table 60 indicating the correspondence between words and topic categories of the words.
  • the topic category “fruit” is associated with the word “apple”.
  • one topic category is associated with each word, but information on each word may be associated with information on one or more topic categories.
  • topic categories may have an inclusive relationship. That is, a word associated with a certain topic category may be a part of a word associated with another topic category (superordinate concept category). For example, the topic categories “sweetness”, “acidity”, and “umami” shown in FIG. 8 may be included in the “taste” of the upper conceptual category (not shown). Topic categories (such as “sweetness” and “acidity”, “sweetness” and “umami”) included in the same superordinate concept category are similar.
  • the utterance generation unit 24 described above preferably generates the utterance of the dialog device 1 according to a topic category scenario that is the same as or similar to the topic category of the user's previous utterance. .
  • the correctness / incorrectness determination unit 26 when the topic category of the word included in the supplemented user utterance matches the topic category of the utterance of the past user, the supplemented user utterance Was determined to be correct (see FIG. 6).
  • the correctness determination unit 26 determines the correctness of the supplemented user's utterance by a method different from the method described in the first embodiment.
  • FIG. 9 is a flowchart showing the flow of the utterance storing process according to the present embodiment. Below, the flow of the speech preservation
  • the correctness / incorrectness determination unit 26 in the utterance database 50 the previous utterance of the conversation apparatus 1 stored in the utterance database 50 (that is, stored in the utterance database 50).
  • the information on the combination of the topic categories associated with the utterance of the dialog device 1 (stored last) is referred to (S501).
  • the utterance storage unit 25 When the combination of topic categories of a plurality of words included in the supplemented user utterance is not the same as the combination of topic categories associated with the utterance of the previous dialog device 1 (No in S502), the utterance storage unit 25 The supplemented user utterance information is not stored in the utterance database 50 (S503). Note that, as described in the third embodiment, when it is determined that the user's utterance supplemented by the correctness / incorrectness determination unit 26 is an error, the user may confirm the suitability of the supplemented user's utterance. In this configuration, when it is answered that the user's supplemented utterance is appropriate, the utterance storage unit 25 also stores in the utterance database 50 the supplemented user's utterance determined by the correctness determination unit 26 as an error.
  • the utterance storage unit 25 stores the supplemented user utterance information in the utterance database 50 (S504).
  • the correctness / incorrectness determination unit 26 may or may not determine whether the user's utterance is correct or incorrect. If the correctness / incorrectness determination unit 26 does not determine whether the user's utterance is correct or incorrect, the utterance storage unit 25 may store the utterance of the user that is not complemented.
  • the user's utterance is highly related to the utterance of the previous conversation apparatus 1.
  • the user's utterance has low relevance to the utterance of the immediately previous dialog device 1.
  • the complement processing unit 23 complements the user's utterance based on the utterance of the previous dialog device 1
  • the topic category of the word included in the supplemented user's utterance is the same as the topic category of the word included in the utterance of the previous dialog device 1, that is, only in the former case,
  • the utterance storage unit 25 stores the supplemented user utterance in the utterance database 50. Therefore, the utterance storage unit 25 can store only the utterance information of the user who is highly likely to be correctly supplemented in the utterance database 50.
  • the utterance storing process described in the present embodiment may be combined with the utterance storing process described in the first embodiment.
  • the correctness / incorrectness determination unit 26 determines whether or not the topic category of the word included in the supplemented user's utterance matches the topic category of the past user's utterance. To do.
  • the correctness determination unit 26 determines that the supplemented user utterance is correct.
  • the correctness determination unit 26 uses the method described in the present embodiment to correct the speech of the supplemented user's utterance. The correctness is further determined. In this configuration, the correctness determination unit 26 can more accurately determine the correctness of the supplemented user's utterance.
  • the utterance generation unit 24 searches the scenario database 40 for scenarios having the same topic category as the topic category of words included in the supplemented user's utterance or similar topic categories. (S601).
  • the utterance generation unit 24 selects the user's utterance. Based on the topic category, the utterance of the dialogue apparatus 1 is generated (S603). For example, when the supplemented user's utterance is “lemon is sweet”, the utterance generation unit 24 is based on the topic category (eg, fruit) of “lemon” and the topic category (eg, sweetness) of “sweet”. The utterance of the dialogue apparatus 1 is generated. For example, the utterance generation unit 24 may generate “Lemon is sweet?” As the utterance of the dialogue apparatus 1.
  • the morpheme analysis unit 22 performs morphological analysis on the user's utterance, thereby confirming that the subject ([what]) is omitted in the user's utterance. Identify. Then, the utterance generation unit 24 determines “what is sweet?” As the utterance of the dialogue apparatus 1 based on the result of the morphological analysis by the morpheme analysis unit 22 and the topic category of “sweet” that is the user's utterance. It may be generated.
  • the utterance generation unit 24 finds a question scenario in the same topic category as the supplemented user's utterance from the scenario database 40 (Yes in S602), the utterance generation unit 24 follows the found question scenario.
  • the utterance of the interactive device 1 is generated (S604). For example, when the supplemented user's utterance is “lemon is sweet”, the utterance generation unit 24 searches the scenario database 40 for topic categories corresponding to “lemon” and “sweet” (for example, fruit, sweetness, sourness, umami). Etc.). And the utterance production
  • the utterance generation unit 24 replaces [A] with “lemon” and replaces [B] with By replacing it with “sweet”, “Lemon is sweet?” May be generated as an utterance of the dialogue apparatus 1.
  • the utterance generation unit 24 causes the voice output unit 30 to output the utterance (question) of the dialogue apparatus 1 generated in this way (S605). Thereafter, the control unit 20 of the dialogue apparatus 1 waits for a user's response to the utterance of the dialogue apparatus 1 for a certain period of time.
  • the utterance storage process ends. On the other hand, if the user responds (Yes in S606), the correctness determination unit 26 determines whether the user's response is affirmative (“Yes”, “Yes”, etc.), or is negative (“No”, “No”, etc.). Is determined (S607). If the user response is affirmative (Yes in S607), the utterance storage unit 25 stores the supplemented user utterance in the utterance database 50 (S608). On the other hand, if the user response is negative (No in S607), the utterance storage unit 25 does not store the supplemented user utterance in the utterance database 50.
  • the utterance generation unit 24 confirms the correctness of the supplemented user's utterance with the user.
  • the utterance storage unit 25 stores the user utterance in the utterance database 50. Therefore, it is possible to more accurately determine whether the supplemented user's utterance is correct or incorrect. In addition, it is possible to reduce a possibility that information of a user's utterance that is not in error (that is, correct) is not stored in the utterance database 50.
  • the control unit 20 of the interactive apparatus 1 may be realized by a logic circuit (hardware) formed in an integrated circuit (IC chip) or the like, or may be realized by software using a CPU (Central Processing Unit). .
  • the interactive apparatus 1 includes a CPU that executes instructions of a program that is software that realizes each function, a ROM (Read Only Memory) in which the above-described program and various data are recorded so as to be readable by a computer (or CPU), or A storage device (these are referred to as “recording media”), a RAM (Random Access Memory) for expanding the program, and the like are provided.
  • a computer or CPU
  • the recording medium a “non-temporary tangible medium” such as a tape, a disk, a card, a semiconductor memory, a programmable logic circuit, or the like can be used.
  • the program may be supplied to the computer via an arbitrary transmission medium (such as a communication network or a broadcast wave) that can transmit the program.
  • a transmission medium such as a communication network or a broadcast wave
  • the present invention can also be realized in the form of a data signal embedded in a carrier wave in which the program is embodied by electronic transmission.
  • the dialogue device (1) is a dialogue device that interacts with a user by voice or text, and when there is a phrase that is insufficient in the user's utterance input to the dialogue device, the dialogue device
  • An utterance complementing unit (complementation processing unit 23) that complements the user's utterance based on the previous utterance of the device and the user, and the user's utterance complemented by the utterance complementing unit based on a predetermined determination condition
  • the correctness / incorrectness determination unit (26) for determining whether the user's utterance is correct, and the utterance storage unit (25) for storing the user's utterance information in the utterance database (50) when the correctness / incorrectness determination unit determines that the user's utterance is correct
  • an utterance generation unit (24) for generating an utterance of the dialogue apparatus using the utterance of the user stored in the utterance database by the utterance storage unit.
  • the utterance of the dialog device can be generated using the user utterance information input to the dialog device.
  • the user's utterance is supplemented. Therefore, the utterance database stores information on complete utterances of users who do not have insufficient phrases.
  • the dialogue apparatus can generate the utterance of the dialogue apparatus by effectively using the user's utterance stored in the utterance database.
  • the speech complementing unit supplements the user's speech based on a word included in the previous speech of at least one of the dialog device and the user. May be.
  • the utterance complementation unit complements the user's utterance based on the last dialogue device or user utterance saved in the utterance database. May be.
  • the user's utterance can be easily complemented based on the conversation topic between the past dialog device and the user. For example, when at least one of the interactive apparatus and the user has spoken a topic related to a certain word first, the subsequent user's utterance is likely to include the certain word. Therefore, when the above-mentioned word is supplemented to the user's utterance, it is highly possible that the supplemented user's utterance is correct.
  • the correctness determination unit refers to (a) information indicating a correspondence relationship between a word and a category of the word, and (b) the utterance
  • the category of the word included in the user's utterance complemented by the complementing unit matches the category of the word included in the previous utterance of at least one of the dialog device and the user, the user's utterance is determined to be correct. May be.
  • the dialog device is the interactive apparatus according to any one of the aspects 1 to 3, wherein the utterance storage unit includes (i) a category of one or a plurality of words included in the user's utterance together with the user's utterance. May be stored in the utterance database. (Ii) Information indicating the date and time or place where the user's utterance was input, and (iii) User identification information.
  • the correctness determination unit refers to (a) information indicating a correspondence relationship between a word and a category of the word, ) A plurality of combinations of categories corresponding to a plurality of words included in the user's utterance complemented by the utterance complementation unit are included in at least one utterance of the dialog device and the user stored in the utterance database. The user's utterance may be determined to be correct if the word matches the category combination corresponding to the word.
  • the correctness / incorrectness of the user's utterance can be more accurately determined based on a combination of categories of a plurality of words included in the previous utterance of at least one of the dialog device and the user.
  • the correct / incorrect determination unit in the dialog device includes: (a) the dialog for confirming to the user whether the user's utterance is supplemented by the utterance complementing unit. (B) If the user's utterance that the user's utterance complemented by the utterance complementation unit is accepted is input to the dialogue device, the user's utterance may be determined to be correct. Good.
  • the interactive device control method is a control method for the interactive device (1) that interacts with a user by voice or text, and is a phrase that is insufficient for the user's utterance input to the interactive device. If there is an utterance, the utterance complementing step for complementing the utterance of the user based on the utterance of at least one of the dialog device and the user, and the utterance of the user supplemented in the utterance complementing step based on a predetermined condition If the user's utterance is determined to be correct in the correct / incorrect determination step and the correct / incorrect determination step, the user's utterance information is stored in the utterance database (50) for generating the utterance of the dialog device.
  • the interactive apparatus may be realized by a computer.
  • the interactive apparatus is realized by the computer by operating the computer as each unit (software element) included in the interactive apparatus.
  • a control program for the interactive apparatus and a computer-readable recording medium on which the control program is recorded also fall within the scope of the present invention.
  • Dialogue Device 23 Complementary Processing Unit (Speech Complementing Unit) 24 utterance generation unit 25 utterance storage unit 26 correctness determination unit 50 utterance database

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Machine Translation (AREA)
  • User Interface Of Digital Computer (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

補完処理部(23)は、対話装置(1)に入力されたユーザの発話において、省略された文節がある場合、該ユーザの発話を補完する。発話保存部(25)は、ユーザの発話を、省略および誤りのない文節で、対話装置(1)の発話を生成するために利用される発話データベース(50)に保存する。保存した過去のユーザの発話データは対話装置の発話を生成するために有効利用される。

Description

対話装置、対話装置の制御方法、および制御プログラム
 本発明は、対話装置、対話装置の制御方法、および制御プログラムに関し、例えば、ユーザと音声またはテキストで対話する対話装置に関する。
 従来、ユーザと音声またはテキストで対話する対話装置が開発されている。例えば、特許文献1には、ユーザと音声で対話する対話装置が開示されている。対話装置の中には、ユーザの発話をデータベースに保存し、データベースに保存した過去のユーザの発話を、対話装置の発話を生成するために利用するものもある。
日本国公開特許公報「特開2015-87728号公報(2015年5月7日公開)」
 しかしながら、ユーザの発話において、文節が省略される場合がある。例えば、「(あなたは)リンゴが好き?」と対話装置が発話した場合、ユーザは、「(私は)リンゴが好きです」と回答するのではなく、「好き」(主語の省略)、あるいは「はい」(回答の省略)等と発話する場合がある。この場合、対話装置は、ユーザの発話を、対話装置の発話を生成するために有効利用することができない場合がある。より利用価値のあるデータベースを構築するために、ユーザの発話を補完して、データベースに保存することが考えられる。しかしながら、対話装置が、ユーザの発話において省略された文節を補完した場合、補完したユーザの発話が誤りである可能性がある。すなわち、補完したユーザの発話は、ユーザの意図から外れる可能性がある。誤って補完されたユーザの発話は、対話装置の発話を生成するために有効利用できない場合がある。
 本発明は、前記の問題点に鑑みてなされたものであり、その目的は、ユーザの発話を、省略および誤りのない状態で保存することにより、対話装置の発話を生成するために、保存した過去のユーザの発話を有効利用することにある。
 上記の課題を解決するために、本発明の一態様に係る対話装置は、ユーザと音声またはテキストで対話する対話装置であって、当該対話装置に入力されたユーザの発話に不足している文節がある場合、当該対話装置およびユーザの少なくとも一方の先の発話に基づいて、上記ユーザの発話を補完する発話補完部と、所定の判定条件に基づき、上記発話補完部が補完した上記ユーザの発話の正誤を判定する正誤判定部と、上記ユーザの発話は正しいと上記正誤判定部が判定した場合、上記ユーザの発話の情報を発話データベースに保存する発話保存部と、上記発話保存部が上記発話データベースに保存した上記ユーザの発話を用いて、当該対話装置の発話を生成する発話生成部と、を備える。
 また、上記の課題を解決するために、本発明の一態様に係る対話装置の制御方法は、ユーザと音声またはテキストで対話する対話装置の制御方法であって、当該対話装置に入力されたユーザの発話に不足している文節がある場合、当該対話装置およびユーザの少なくとも一方の先の発話に基づいて、上記ユーザの発話を補完する発話補完ステップと、所定の条件に基づいて、上記発話補完ステップにおいて補完した上記ユーザの発話の正誤を判定する正誤判定ステップと、上記正誤判定ステップにおいて上記ユーザの発話は正しいと判定した場合、上記ユーザの発話の情報を、当該対話装置の発話を生成するための発話データベースに保存する発話保存ステップと、上記発話保存ステップにおいて上記発話データベースに保存した上記ユーザの発話を用いて、当該対話装置の発話を生成する発話生成ステップと、を含む。
 本発明の一態様によれば、ユーザの発話を、省略および誤りのない状態で保存することにより、対話装置の発話を生成するために、保存した過去のユーザの発話を有効利用することができる。
実施形態1に係る対話装置の構成を示すブロック図である。 実施形態1に係る対話装置の制御部が実行する発話情報取得処理の流れを示すフローチャートである。 図2に示す発話情報取得処理において実行される発話生成処理の流れを示すフローチャートである。 実施形態1に係る対話装置に保存されるシナリオデータベースのデータ構造の一例を示す図である。 図2に示す発話情報取得処理において実行される発話補完処理の流れを示すフローチャートである。 図2に示す発話情報取得処理において実行される発話保存処理の流れを示すフローチャートである。 実施形態1に係る対話装置に保存される発話データベースのデータ構造の一例を示す図である。 実施形態1に係る対話装置が備えたカテゴリ表のデータ構造の一例を示す図である。 実施形態2に係る発話保存処理の流れを示すフローチャートである。 実施形態3に係る発話確認処理の流れを示すフローチャートである。
 〔実施形態1〕
 以下、本発明の実施の形態について、詳細に説明する。
 (対話装置1の構成)
 図1を用いて、本実施形態に係る対話装置1の構成を説明する。対話装置1は、ユーザと音声で対話する機械(例えば、ロボット)である。図1は、対話装置1の構成を示すブロック図である。なお、一変形例では、対話装置1は、ユーザとテキストで対話してもよい。
 図1に示すように、対話装置1は、音声入力部10、制御部20、および音声出力部30を備えている。また、対話装置1には、シナリオデータベース40、発話データベース50、およびカテゴリ表60が保存されている。また、図示しないが、後述する音声認識部21がユーザの音声を認識するために、認識辞書も保存されている。認識辞書は、音声入力部10が検出する音声と、その音声が示す単語または文節との対応関係を記載している。
 音声入力部10は、ユーザの発話を検出して、ユーザの発話に対応する音声データを生成する。音声入力部10は、具体的にはマイクロフォンである。音声入力部10が検出した音声データは制御部20に送信される。
 制御部20は、対話装置1の発話を生成する。また、音声入力部10が検出したユーザの発話を音声認識し、音声認識の結果として得られたユーザの発話の情報を、発話データベース50に保存する。図1に示すように、制御部20は、音声認識部21、形態素解析部22、補完処理部23(発話補完部)、発話生成部24、発話保存部25、および正誤判定部26を含む。制御部20の各部が行う処理については、後述する発話情報取得処理の説明中で説明する。
 音声出力部30は、制御部20が生成した対話装置1の発話を、音声に変換して出力する。音声出力部30は、具体的にはスピーカである。一変形例では、対話装置1は、対話装置1の発話を、テキストに変換して出力してもよい。
 シナリオデータベース40には、対話装置1の発話を生成するためのシナリオが保存されている。シナリオは、後述する質問用シナリオ(図4参照)を含む。発話データベース50には、過去の対話装置1の発話の情報および過去のユーザの発話の情報が保存されている。カテゴリ表60では、単語と、その単語のカテゴリとが対応付けられている。発話中の単語のカテゴリは、その発話の話題に関係する場合が多い。単語のカテゴリを、以下では、話題カテゴリと呼ぶ。シナリオデータベース40、発話データベース50、およびカテゴリ表60の一例をそれぞれ後述する。なお、シナリオデータベース40、発話データベース50、およびカテゴリ表60等のデータの一部または全部は、ネットワーク上に分散して保存されていてよい。また、この構成では、シナリオデータベース40、発話データベース50、およびカテゴリ表60等のデータは、インターネットを通じて、定期的または不定期的に、対話装置1に提供されてもよい。また、制御部20も、インターネット上のサーバ内にあってもよい。この構成では、サーバ内の制御部20が、インターネット、およびホームネットワーク(例えば、無線LAN)等を介して、対話装置1の音声入力部10および音声出力部30を制御してもよい。
 (発話情報取得処理の流れ)
 図2を用いて、制御部20が実行する発話情報取得処理の流れを説明する。図2は、発話情報取得処理の流れを示すフローチャートである。
 図2に示すように、発話情報取得処理では、まず、発話生成部24が対話装置1の発話を生成する(S1)。あるいは、ユーザが先に対話装置1に対して発話をしてもよい。どちらの場合であっても、音声入力部10は、ユーザの発話を検出して、ユーザの発話に対応する音声データを生成する。発話生成処理(S1)の流れを後で説明する。
 音声認識部21は、音声入力部10から、ユーザの発話に対応する音声データを受信する(S2、発話取得ステップ)。音声認識部21は、音声入力部10から受信した音声データに対し、音声認識処理を実行することにより、ユーザの発話に対応する音声データを、テキストデータに変換する(S3)。音声認識部21は、音声認識処理を失敗した場合、表示または音声等を用いた報知によって、ユーザに対し、再度発話することを要求してもよいし、ユーザが再度発話するまで待機してもよい。音声認識部21は、音声認識の結果、すなわち、ユーザの発話に対応するテキストデータを、形態素解析部22に出力する。音声認識部21は、音声認識処理を失敗した場合であっても、音声認識の結果を形態素解析部22に出力してもよい。なお、対話装置1がユーザとテキストで対話する機械である場合、S2において、形態素解析部22は、ユーザが入力したテキストを受信する。また、上述したS3は省略される。以下では、音声認識またはユーザのテキスト入力の結果として得られるテキストデータを、ユーザの発話データと呼ぶ。
 形態素解析部22は、音声認識部21から取得したユーザの発話データに対し、形態素化解析を実行する(S4)。すなわち、形態素解析部22は、ユーザの発話を、言語として意味を持つ最小単位である形態素(例えば、単語)に分割する。なお、形態素解析は従来から存在する技術であるから、ここでは、形態素解析に関する説明を省略する。
 続いて、形態素解析部22は、形態素解析の結果を評価する(S5)。具体的には、形態素解析部22は、ユーザの発話において省略された文節があるかどうかを判定する。ここで、文節は、1または複数の単語で構成される。
 ユーザの発話において省略された文節がある場合(S6でYes)、補完処理部23は、直前の対話装置1の発話、および、過去のユーザの発話の少なくとも一方に基づいて、省略された文節(例えば、主語、述語、修飾語)を補完する(S7、発話補完ステップ)。なお、補完処理部23による発話補完処理(S7)の流れを後で説明する。一方、ユーザの発話において省略された文節がない場合(S6でNo)、補完処理部23は発話補完処理を行わない。
 発話保存部25は、補完処理部23から、ユーザの発話データを取得する。前述したように、ユーザの発話において省略された文節がある場合、S7において、補完処理部23が省略された文節を補完する。したがって、発話保存部25が取得するユーザの発話は、省略された文節がない、完全な状態である。
 次に、発話保存部25は、カテゴリ表60(図8参照)を参照して、ユーザの発話に含まれる各単語の話題カテゴリを特定する。発話保存部25は、ユーザの発話の情報に、該ユーザの発話に含まれる全ての単語の話題カテゴリの情報を、付属情報として付加する。例えば、ユーザの発話が「私はリンゴが好きです」である場合、発話保存部25は、ユーザの発話の情報に、「リンゴ」の話題カテゴリである“果物”、および、「好き」の話題カテゴリである“嗜好”の各付属情報を付加する。発話保存部25は、付属情報を付加したユーザの発話の情報を、発話データベース50(図7参照)に保存する(S8、発話保存ステップ)。なお、付属情報は、対話装置1の発話を生成するために利用されてよい。例えば、発話データベース50において、「ケーキを買った」という過去のユーザの発話の情報に、ユーザの発話が入力された時間の付属情報が付加されている場合、対話装置1は、シナリオデータベース40から、ユーザの発話と同じ話題カテゴリのシナリオを取得して、「昨日買ったケーキをもう食べた?」といった発話や、「去年の誕生日に買ったケーキはおいしかったね」といった発話を生成することができる。また、発話データベース50において、「ここの景色はきれいだね」という過去のユーザの発話の情報に、ユーザの発話が入力された場所および時間の付属情報が付加されている場合、対話装置1は、シナリオデータベース40から、ユーザの発話と同じ話題カテゴリのシナリオを取得して、「先月の夕方に見た瀬戸大橋はきれいだったね」といった発話を生成することができる。
 S7において、補完処理部23がユーザの発話を補完した場合、補完したユーザの発話は、ユーザの意図から外れている可能性がある。例えば、ユーザが「甘い」と発話した場合、補完処理部23は、ユーザの発話において省略された主語を補完する。しかしながら、補完処理部23が補完する主語は、ユーザの意図する主語とは異なる可能性がある。そこで、正誤判定部26は、所定の判定条件に基づいて、補完したユーザの発話の正誤を判定して、補完したユーザの発話が正しい場合のみ、補完したユーザの発話の情報を、発話データベース50に保存する。正誤判定部26は、補完したユーザの発話の正誤を、どのような判定条件に基づいて判定してもよい。例えば、正誤判定部26は、補完したユーザの発話の正誤を判定するために、直前のユーザまたは対話装置1の発話の情報を利用してもよい。正誤判定部26による発話保存処理(S8)の一例を後で説明する。以上で、発話情報取得処理が終了する。
 上述した発話情報取得処理によれば、ユーザの発話を、完全な状態、つまり、文節が省略されていない状態で、発話データベース50に保存することができる。発話データベース50に保存された過去のユーザの発話の情報は、対話装置1の発話を生成するために利用することができる。発話データベース50に保存されている過去のユーザの発話の情報を用いて、対話装置1の発話を生成する方法については、後で説明する。
 (S1;発話生成処理の流れ)
 図3および図4を用いて、前述した発話情報取得処理(図2参照)のS1、すなわち発話生成処理の流れを説明する。図3は、発話生成処理S1の流れを示すフローチャートである。図4は、シナリオデータベース40のデータ構造の一例を示す図である。図4に示すように、シナリオデータベース40は、対話装置1からユーザへの質問のシナリオを含む複数のシナリオを含む。なお、図示しないが、シナリオデータベース40は、質問以外の対話装置1の発話(例えば、呼びかけ、報知等)を生成するためのシナリオをさらに含んでいてもよい。
 図3に示すように、発話生成処理では、まず、発話生成部24は、発話データベース50において、直前の(つまり、発話データベース50に保存されている過去のユーザの発話の情報の中で、最後に保存された)ユーザの発話の情報に対応付けられた話題カテゴリの情報を参照する。
 次に、発話生成部24は、図4に示すシナリオデータベース40中から、直前のユーザの発話に対応付けられた話題カテゴリと同じ話題カテゴリのシナリオを検索する(S201)。シナリオデータベース40中に、直前のユーザの発話に対応付けられた話題カテゴリと同じ話題カテゴリのシナリオがない場合(S201でNo)、発話生成部24は、シナリオデータベース40から、直前のユーザの発話に対応する話題カテゴリとは異なる話題カテゴリ(例えば、図4の「なんでも」の話題カテゴリ)のシナリオを選択する(S205)。この場合、発話生成部24が生成する対話装置1の発話の話題カテゴリは、例えば、直前のユーザの発話の話題カテゴリと類似する(すなわち、直前のユーザの発話の話題カテゴリと同じ上位概念カテゴリ(後述)に含まれる)ことが好ましい。
 発話生成部24は、S205において選択したシナリオの話題カテゴリを、対話装置1またはユーザの先の発話の話題カテゴリに置き換えることによって、対話装置1の次の発話を生成する(S206、発話生成ステップ)。なお、シナリオデータベース40中に、直前のユーザの発話に対応付けられた話題カテゴリと同じ話題カテゴリのシナリオがない場合(S201でNo)、対話装置1は、発話をせずに、相槌等の動作で、ユーザの発話に応答してもよい。あるいは、対話装置1の次の発話の話題カテゴリが、直前のユーザの発話の話題カテゴリと大きく異なる場合、発話生成部24は、話題を変えることをユーザに伝えるための発話(例えば、「ところで」)を生成してもよい。
 一方、シナリオデータベース40中に、直前のユーザの発話に対応する話題カテゴリと同じ話題カテゴリのシナリオがある場合(S201でYes)、発話生成部24は、シナリオデータベース40から、シナリオと対応付けられた条件および結果(図4参照)を抽出する(S202)。また、発話生成部24は、発話データベース50中から、S202において抽出したシナリオの条件を満たす対話装置1またはユーザの先の発話の情報を検索する(S203)。
 発話データベース50中に、S202において抽出したシナリオに対応する条件および結果と一致する対話装置1またはユーザの先の発話の情報がない場合(S203でNO)、発話生成部24は、シナリオデータベース40から、直前のユーザの発話に対応する話題カテゴリとは異なる話題カテゴリのシナリオを選択する(S205)。一方、発話データベース50中、S202において抽出したシナリオに対応する条件および結果と一致する対話装置1またはユーザの先の発話の情報がある場合(S203でYES)、発話生成部24は、抽出したシナリオの中から、いずれかのシナリオを選択する(S204)。その後、発話生成部24は、S204またはS205において選択したシナリオの話題カテゴリを、対話装置1またはユーザの先の発話の話題カテゴリに置き換えることによって、対話装置1の次の発話を生成する(S206、発話生成ステップ)。以上で、発話生成処理は終了する。
 (S7;発話補完処理の流れ)
 図5を用いて、前述した発話情報取得処理(図2参照)のS7、すなわち発話補完処理の流れを説明する。図5は、発話補完処理S7の流れを示すフローチャートである。
 図5に示すように、発話補完処理では、まず、補完処理部23は、形態素解析部22による形態素解析の結果として得られたユーザの発話において、主語が省略されたかどうかを判定する(S301)。ユーザの発話において、主語が省略された場合(S301でYes)、補完処理部23は、ユーザの発話に主語を補完する(S302)。
 具体的には、補完処理部23は、発話データベース50を参照して、直前の(つまり、発話データベース50に保存されている過去の対話装置1の発話の情報の中で、最後に保存された)対話装置1の発話の情報を取得する。そして、直前の対話装置1の発話の主語に基づいて、ユーザの発話の主語を補完する。例えば、対話装置1が図4に示すシナリオデータベース40の“シナリオ2”にしたがって「あなたはブドウが好きですか」と発話した後、ユーザが「それ(ブドウ)が好きです」と発話した場合、補完処理部23は、ユーザの発話において省略された主語「あなた」を補完して、「XX(ユーザの登録名)はブドウが好きです」という、補完したユーザの発話を生成してよい。あるいは、補完処理部23は、補完したユーザの発話にユーザの登録名を含めずに、「ブドウが好きです」という発話を生成してもよい。また、別の例では、ユーザが「リンゴは美味しい」と発話した後、「大好き」と発話した場合、補完処理部23は、ユーザの「大好き」という発話を、「リンゴは美味しい」というユーザの先の発話に基づいて、「リンゴは大好き」という補完したユーザの発話を生成してよい。この例のように、補完処理部23は、対話装置1の質問以外の(対話装置1またはユーザの)先の発話に基づいて、ユーザの発話を補完してもよい。一変形例では、シナリオデータベース40において、各シナリオに対し、ユーザの発話を補完するための補完用シナリオが対応付けられている場合、補完処理部23は、補完用シナリオにしたがって、ユーザの発話を補完してもよい。例えば、補完用シナリオでは、文の一部の品詞(単語)または文節が空白になっており、ユーザの発話に基づいて、空白が埋められることで、補完したユーザの発話に対応する一文が完成するように構成されていてよい。
 ユーザの発話において、主語が省略されていない場合(S301でNo)、補完処理部23は、次に、ユーザの発話において、述語が省略されたかどうかを判定する(S303)。ユーザの発話において、述語が省略された場合(S303でYes)、補完処理部23は、直前の対話装置1の発話に基づいて、ユーザの発話に述語を補完する(S304)。例えば、直前の対話装置1の発話が、「あなたはブドウが好きですか?」であり、ユーザが「私は好きです」と発話した場合、補完処理部23は、「XX(ユーザの登録名)はブドウが好きです」という補完したユーザの発話を生成する。なお、図示しないが、補完処理部23は、ユーザの発話に修飾語を補完する工程をさらに行ってもよい。
 ユーザの発話において、述語が省略されていない場合(S303でNo)、補完処理部23は、次に、ユーザの発話において、回答が省略されたかどうかを判定する(S305)。つまり、補完処理部23は、ユーザの発話が「はい」またはその他の肯定であるか、「いいえ」またはその他の否定であるかを判定する。ユーザの発話において、回答が省略された場合(S305でYes)、補完処理部23は、発話データベース50(図7参照)を参照して、直前の対話装置1の発話の情報を取得する。そして、直前の対話装置1の発話に基づいて、ユーザの発話を補完する(S306)。例えば、直前の対話装置1の発話が「あなたはブドウが好きですか?」であり、ユーザが「いいえ」(否定)と発話した場合、補完処理部23は、「XX(ユーザの登録名)はブドウが嫌いです」という補完したユーザの発話を生成する。
 ユーザの発話において、いずれの文節も省略されていない場合(S305でNo)、補完処理部23は、ユーザの発話に対する発話補完処理を行わない。
 (S8;発話保存処理の流れ)
 図6を用いて、前述した発話情報取得処理のS8、すなわち発話保存処理の流れを説明する。図6は、発話保存処理S8の流れを示すフローチャートである。以下では、補完処理部23がユーザの発話を補完した場合の発話保存処理の流れを説明する。
 図6に示すように、発話保存処理では、まず、正誤判定部26は、発話データベース50から、補完処理部23が補完したユーザの発話に含まれる単語の話題カテゴリと同じ話題カテゴリと対応付けられた過去のユーザの発話の情報を検索する(S401、正誤判定ステップ)。
 正誤判定部26は、補完したユーザの発話に含まれる単語の話題カテゴリと同じ話題カテゴリと対応付けられた過去のユーザの発話の情報を発見しなかった場合(S402でNo)、補完したユーザの発話は誤りであると判定する。この場合、発話保存部25は、補完したユーザの発話の情報を発話データベース50に保存しない(S403)。ただし、正誤判定部26が補完したユーザの発話は誤りであると判定した場合、補完したユーザの発話の適否をユーザに確認してもよい。この構成では、ユーザが補完したユーザの発話は適切であると回答した場合、発話保存部25は、正誤判定部26が誤りであると判定した補完したユーザの発話も発話データベース50に保存する。なお、この構成については、後の実施形態3で説明する。
 一方、正誤判定部26は、補完したユーザの発話に含まれる単語の話題カテゴリと同じ話題カテゴリと対応付けられた過去のユーザの発話の情報を発見した場合(S402でYes)、補完したユーザの発話は正しいと判定する。この場合、発話保存部25は、補完処理部23が補完したユーザの発話の情報を発話データベース50に保存する(S404)。なお、発話情報取得処理のS7において、補完処理部23がユーザの発話を補完しなかった場合、正誤判定部26は、ユーザの発話の正誤を判定せず、発話保存部25は、補完しないユーザの発話を保存してよい。
 (変形例)
 一変形例では、正誤判定部26は、補完したユーザの発話が、どんな話題カテゴリに関するかという条件に加えて、だれ(どのユーザ)が発話したかという条件に基づいて、補完したユーザの発話の正誤を判定してもよい。本変形例の構成によれば、補完したユーザの発話の正誤を判定する条件の数が増えるので、補完したユーザの発話の正誤をより正確に判定することができる。
 本変形例では、正誤判定部26は、補完したユーザの発話の話題カテゴリと同じ話題カテゴリと対応付けられた過去のユーザの発話の情報を発話データベース50から発見することができた場合(図6のS402でYes)、発見した過去のユーザの発話の情報に付加された付属情報を参照して、発見した過去のユーザの発話が、だれ(つまり、どのユーザ)の発話であるかを特定する。そして、正誤判定部26は、発話したユーザと、発見した過去のユーザの発話との間で、発話をしたユーザ(だれ)が一致する場合に、補完したユーザの発話は正しいと判定する。なお、正誤判定部26は、発見した過去の発話がだれの発話であるかを特定するために、例えば、対話装置1に予め登録されたユーザの識別情報(登録名または登録番号など)を参照してもよい。
 (発話データベース50の一例)
 図7は、対話装置1および過去のユーザの発話の情報が保存された発話データベース50のデータ構造の一例を示す図である。ここで、図7に示す発話データベース50の“Who”の項目に記載した「ロボット」は、対話装置1に対応する。図7に示すように、発話データベース50には、ロボット(すなわち、対話装置1)およびユーザによる各発話の情報が保存されている。また、図7に示す発話データベース50では、ロボットおよびユーザによる各発話の情報に対し、“When”(発話された日時)、“Where”(発話された場所)、“Who”(発話の主体)、および“What”(発話と対応付けられた話題カテゴリ)についての各付属情報が付加されている。なお、図7において、各発話の情報には、複数の話題カテゴリ(“What”)の情報が、付属情報として付加されている。また、図7において、ある発話の話題カテゴリ(“What”)の項目に記載された“A=B”は、上記ある発話が、話題カテゴリの“A”と対応付けられた1つの単語、および話題カテゴリの“B”と対応付けられた他の単語を含むことを示す。また、他の発話の話題カテゴリ(“What”)の項目に記載された“AB=C”は、上記ある発話が、話題カテゴリの“A”および“B”と対応付けられた1つの単語、および話題カテゴリの“C”と対応付けられた他の単語を含むことを示す。
 図示しないが、発話データベース50において、過去のユーザの発話の情報には、その発話が、どのような手段(音声入力か、またはテキスト入力か)で対話装置1に入力されたかを示す付属情報、または、その発話がどのような状態(補完されたか、または補完されなかったか)で発話データベース50に保存されたかを示す付属情報が付加されてもよい。
 (カテゴリ表60の一例)
 図8は、単語と該単語の話題カテゴリとの対応関係を示すカテゴリ表60のデータ構造の一例を示す図である。例えば、図8では、“リンゴ”という単語に対し、“果物”という話題カテゴリが対応付けられている。図8に示すカテゴリ表60では、各単語にそれぞれ1つの話題カテゴリが対応付けられているが、各単語の情報には、1または複数の話題カテゴリの情報が対応付けられていてよい。
 また、話題カテゴリには包含関係があってもよい。すなわち、ある話題カテゴリに対応付けられた単語は、他の話題カテゴリ(上位概念カテゴリ)に対応付けられた単語の一部であってもよい。例えば、図8に示す話題カテゴリの“甘み”、“酸味”、および“うま味”は、図示しない上位概念カテゴリの“味覚”に含まれていてもよい。同じ上位概念カテゴリに含まれる話題カテゴリ同士(“甘み”と“酸味”、“甘み”と“うま味”など)は類似する。前述した発話生成部24は、対話装置1の発話を生成する際、直前のユーザの発話の話題カテゴリと同じかまたは類似する話題カテゴリのシナリオにしたがって、対話装置1の発話を生成することが好ましい。
 〔実施形態2〕
 前記実施形態1の発話保存処理S8において、正誤判定部26は、補完したユーザの発話に含まれる単語の話題カテゴリが、過去のユーザの発話の話題カテゴリと一致する場合に、補完したユーザの発話は正しいと判定した(図6参照)。本実施形態では、正誤判定部26が、前記実施形態1で説明した方法とは異なる方法で、補完したユーザの発話の正誤を判定する構成を説明する。
 (S8;発話保存処理の流れ)
 図9を用いて、本実施形態に係る発話保存処理S8の流れを説明する。図9は、本実施形態に係る発話保存処理の流れを示すフローチャートである。以下では、補完処理部23がユーザの発話を補完した場合の発話保存処理の流れを説明する。
 図9に示すように、本実施形態に係る発話保存処理では、まず、正誤判定部26は、発話データベース50において、直前の(つまり、発話データベース50に保存されている過去の対話装置1の発話の情報の中で、最後に保存された)対話装置1の発話と対応付けられた話題カテゴリの組合せの情報を参照する(S501)。
 補完したユーザの発話に含まれる複数の単語の話題カテゴリの組合せが、直前の対話装置1の発話と対応付けられた話題カテゴリの組合せと同じでない場合(S502でNo)、発話保存部25は、補完したユーザの発話の情報を発話データベース50に保存しない(S503)。なお、実施形態3で説明するように、正誤判定部26が補完したユーザの発話は誤りであると判定した場合、補完したユーザの発話の適否をユーザに確認してもよい。この構成では、ユーザが補完したユーザの発話は適切であると回答した場合、発話保存部25は、正誤判定部26が誤りであると判定した補完したユーザの発話も発話データベース50に保存する。
 一方、補完したユーザの発話に含まれる複数の単語の話題カテゴリの組合せが、直前の対話装置1の発話と対応付けられた話題カテゴリの組合せと同じである場合(S502でYes)、発話保存部25は、補完したユーザの発話の情報を発話データベース50に保存する(S504)。なお、発話情報取得処理のS7において、補完処理部23がユーザの発話を補完しなかった場合、正誤判定部26は、ユーザの発話の正誤を判定してもよいし、しなくてもよい。正誤判定部26がユーザの発話の正誤を判定しない場合、発話保存部25は、補完されていないユーザの発話を保存してもよい。
 対話装置1とユーザとが同一の話題に関して対話を継続している場合、ユーザの発話は、直前の対話装置1の発話と関連性が高い。一方、ユーザが話題を切り替えた場合、ユーザの発話は、直前の対話装置1の発話と関連性が低い。前述したように、補完処理部23は、直前の対話装置1の発話に基づいて、ユーザの発話を補完するので、前者の場合には、ユーザの発話を正しく補完することができる可能性が高いが、後者の場合には、ユーザの発話を正しく補完することができる可能性が低い。本実施形態の構成によれば、補完したユーザの発話に含まれる単語の話題カテゴリが、直前の対話装置1の発話に含まれる単語の話題カテゴリと同じである場合、すなわち、前者の場合のみ、発話保存部25は、補完したユーザの発話を発話データベース50に保存する。したがって、発話保存部25は、正しく補完された可能性が高いユーザの発話の情報のみを、発話データベース50に保存することができる。
 なお、本実施形態で説明した発話保存処理と、前記実施形態1で説明した発話保存処理とを組み合わせてもよい。例えば、正誤判定部26は、まず、前記実施形態1で説明したように、補完したユーザの発話に含まれる単語の話題カテゴリが、過去のユーザの発話の話題カテゴリと一致するか否かを判定する。補完したユーザの発話に含まれる単語の話題カテゴリが、過去のユーザの発話の話題カテゴリと一致する場合、正誤判定部26は、補完したユーザの発話は正しいと判定する。一方、補完したユーザの発話に含まれる単語の話題カテゴリが、過去のユーザの発話の話題カテゴリと一致しない場合、正誤判定部26は、本実施形態で説明した方法で、補完したユーザの発話の正誤をさらに判定する。この構成では、正誤判定部26は、補完したユーザの発話の正誤をより正確に判定することができる。
 〔実施形態3〕
 本実施形態では、前記実施形態1および2で説明した発話情報取得処理(図2参照)の発話保存処理S8において、発話保存部25が、補完したユーザの発話を保存しないことを決定した場合、発話生成部24が、補完したユーザの発話の正誤をユーザに確認する構成を説明する。
 (発話確認処理)
 図10を用いて、本実施形態に係る発話確認処理の流れを説明する。前記実施形態1または2で説明した発話保存処理(図6および図9参照)において、発話保存部25が、補完したユーザの発話を保存しないことを決定した場合、制御部20は、以下で説明する発話確認処理を実行する。
 図10に示すように、発話確認処理では、まず、発話生成部24は、シナリオデータベース40から、補完したユーザの発話に含まれる単語の話題カテゴリと同じ話題カテゴリまたは類似する話題カテゴリのシナリオを検索する(S601)。
 発話生成部24が、シナリオデータベース40から、補完したユーザの発話に含まれる単語の話題カテゴリと同じ話題カテゴリのシナリオを発見しなかった場合(S602でNo)、発話生成部24は、ユーザの発話の話題カテゴリに基づいて、対話装置1の発話を生成する(S603)。例えば、補完したユーザの発話が「レモンは甘い」であった場合、発話生成部24は、「レモン」の話題カテゴリ(例えば、果物)および「甘い」の話題カテゴリ(例えば、甘み)に基づいて、対話装置1の発話を生成する。例えば、発話生成部24は、対話装置1の発話として、「レモンは甘いの?」を生成してもよい。また、補完しないユーザの発話が「甘い」であった場合、形態素解析部22が、ユーザの発話に対する形態素解析を実行することにより、ユーザの発話において主語([何])が省略されたことを特定する。そして、発話生成部24は、形態素解析部22による形態素解析の結果と、ユーザの発話である「甘い」の話題カテゴリとに基づいて、対話装置1の発話として、「何が甘いの?」を生成してもよい。
 また、発話生成部24が、シナリオデータベース40から、補完したユーザの発話と同じ話題カテゴリの質問用シナリオを発見した場合(S602でYes)、発話生成部24は、発見した質問用シナリオにしたがって、対話装置1の発話を生成する(S604)。例えば、補完したユーザの発話が「レモンは甘い」である場合、発話生成部24は、シナリオデータベース40から、「レモン」および「甘い」に対応する話題カテゴリ(例えば、果物、甘み、酸味、うま味等)の質問用シナリオを取得する。そして、発話生成部24は、取得した質問用シナリオにしたがって、対話装置1の発話を生成してもよい。例えば、発話生成部24が取得した質問用シナリオが「[A]は[B]なの?」である場合、発話生成部24は、上記[A]を「レモン」に置き換え、上記[B]を「甘い」に置き換えることによって、対話装置1の発話として、「レモンは甘いの?」を生成してよい。
 発話生成部24は、このようにして生成した対話装置1の発話(質問)を、音声出力部30に出力させる(S605)。その後の一定時間、対話装置1の制御部20は、対話装置1の発話に対するユーザの返答を待つ。
 対話装置1が発話をしてから一定時間、ユーザが返答をしなかった場合(S606でNo)、発話保存処理は終了する。一方、ユーザが返答をした場合(S606でYes)、正誤判定部26は、ユーザの返答が肯定(「はい」、「うん」等)であるか、それとも否定(「いいえ」「ちがう」等)であるかを判定する(S607)。ユーザの返答が肯定である場合(S607でYes)、発話保存部25は、補完したユーザの発話を発話データベース50に保存する(S608)。一方、ユーザの返答が否定である場合(S607でNo)、発話保存部25は、補完したユーザの発話を発話データベース50に保存しない。
 本実施形態の構成によれば、正誤判定部26が、補完したユーザの発話は誤りであると判定した場合、発話生成部24は、補完したユーザの発話の正誤をユーザに確認する。そして、ユーザが、補完したユーザの発話は正しいと返答した場合に、発話保存部25は、ユーザの発話を発話データベース50に保存する。そのため、補完したユーザの発話の正誤をより正確に判定することができる。また、誤りでない(つまり、正しい)ユーザの発話の情報が発話データベース50に保存されない可能性を低減することができる。
 〔ソフトウェアによる実現例〕
 対話装置1の制御部20は、集積回路(ICチップ)等に形成された論理回路(ハードウェア)によって実現してもよいし、CPU(Central Processing Unit)を用いてソフトウェアによって実現してもよい。
 後者の場合、対話装置1は、各機能を実現するソフトウェアであるプログラムの命令を実行するCPU、上記プログラムおよび各種データがコンピュータ(またはCPU)で読み取り可能に記録されたROM(Read Only Memory)または記憶装置(これらを「記録媒体」と称する)、上記プログラムを展開するRAM(Random Access Memory)などを備えている。そして、コンピュータ(またはCPU)が上記プログラムを上記記録媒体から読み取って実行することにより、本発明の目的が達成される。上記記録媒体としては、「一時的でない有形の媒体」、例えば、テープ、ディスク、カード、半導体メモリ、プログラマブルな論理回路などを用いることができる。また、上記プログラムは、該プログラムを伝送可能な任意の伝送媒体(通信ネットワークや放送波等)を介して上記コンピュータに供給されてもよい。なお、本発明は、上記プログラムが電子的な伝送によって具現化された、搬送波に埋め込まれたデータ信号の形態でも実現され得る。
 〔まとめ〕
 本発明の態様1に係る対話装置(1)は、ユーザと音声またはテキストで対話する対話装置であって、当該対話装置に入力されたユーザの発話に不足している文節がある場合、当該対話装置およびユーザの少なくとも一方の先の発話に基づいて、上記ユーザの発話を補完する発話補完部(補完処理部23)と、所定の判定条件に基づき、上記発話補完部が補完した上記ユーザの発話の正誤を判定する正誤判定部(26)と、上記ユーザの発話は正しいと上記正誤判定部が判定した場合、上記ユーザの発話の情報を発話データベース(50)に保存する発話保存部(25)と、上記発話保存部が上記発話データベースに保存した上記ユーザの発話を用いて、当該対話装置の発話を生成する発話生成部(24)と、を備える。
 上記の構成によれば、対話装置に入力されたユーザの発話の情報を用いて、対話装置の発話を生成することができる。また、ユーザの発話に不足している文節がある場合、該ユーザの発話は補完される。したがって、発話データベースには、文節が不足していない完全なユーザの発話の情報が保存される。これにより、対話装置は、発話データベースに保存されているユーザの発話を有効に利用して、対話装置の発話を生成することができる。
 本発明の態様2に係る対話装置は、上記態様1において、上記発話補完部は、当該対話装置およびユーザの少なくとも一方の上記先の発話に含まれる単語に基づいて、上記ユーザの発話を補完してもよい。なお、発話データベースに、対話装置およびユーザの両方の発話の情報が保存される場合、発話補完部は、発話データベースに最後に保存された対話装置またはユーザの発話に基づいて、ユーザの発話を補完してもよい。
 上記の構成によれば、過去の対話装置とユーザとの対話の話題に基づいて、ユーザの発話を簡単に補完することができる。例えば、対話装置およびユーザの少なくとも一方が、ある単語に関係する話題を先に発話していた場合、続くユーザの発話にも上記ある単語が含まれる可能性が高い。したがって、ユーザの発話に上記ある単語を補完した場合、補完したユーザの発話は正しい可能性が高い。
 本発明の態様3に係る対話装置は、上記態様1または2において、上記正誤判定部は、(a)単語と該単語のカテゴリとの対応関係を示す情報を参照して、(b)上記発話補完部が補完した上記ユーザの発話に含まれる単語のカテゴリが、上記対話装置およびユーザの少なくとも一方の上記先の発話に含まれる単語のカテゴリと一致する場合、上記ユーザの発話は正しいと判定してもよい。
 上記の構成によれば、補完したユーザの発話の正誤を簡単に判定することができる。そのため、正しい可能性が高いユーザの発話の情報のみを、発話データベースに選択的に保存することができる。
 本発明の態様4に係る対話装置は、上記態様1から3のいずれかにおいて、上記発話保存部は、上記ユーザの発話とともに、(i)上記ユーザの発話に含まれる1または複数の単語のカテゴリを示す情報、(ii)上記ユーザの発話が入力された日時または場所を示す情報、および、(iii)上記ユーザの識別情報のうちの少なくとも1つを、上記発話データベースに保存してもよい。
 上記の構成によれば、発話データベースに保存された上記情報を利用して、ユーザの発話の正誤を判定する精度を向上させることができる。
 本発明の態様5に係る対話装置は、上記態様1から4のいずれかにおいて、上記正誤判定部は、(a)単語と該単語のカテゴリとの対応関係を示す情報を参照して、(b)上記発話補完部が補完した上記ユーザの発話に含まれる複数の単語と対応するカテゴリの組合せが、上記発話データベースに保存されている当該対話装置およびユーザの少なくとも一方の1つの発話に含まれる複数の単語と対応するカテゴリの組合せと一致する場合、上記ユーザの発話は正しいと判定してもよい。
 上記の構成によれば、対話装置およびユーザの少なくとも一方の先の発話に含まれる複数の単語のカテゴリの組合せに基づいて、ユーザの発話の正誤をより正確に判定することができる。
 本発明の態様6に係る対話装置は、上記態様1から5のいずれかにおいて、上記正誤判定部は、(a)上記発話補完部が補完した上記ユーザの発話の正誤をユーザに確認する当該対話装置の発話を出力し、(b)上記発話補完部が補完した上記ユーザの発話は正しいことを認めるユーザの発話が当該対話装置に入力された場合、上記ユーザの発話は正しいと判定してもよい。
 上記の構成によれば、補完したユーザの発話の正誤をより正確に判定することができる。
 本発明の態様7に係る対話装置の制御方法は、ユーザと音声またはテキストで対話する対話装置(1)の制御方法であって、当該対話装置に入力されたユーザの発話に不足している文節がある場合、当該対話装置およびユーザの少なくとも一方の先の発話に基づいて、上記ユーザの発話を補完する発話補完ステップと、所定の条件に基づいて、上記発話補完ステップにおいて補完した上記ユーザの発話の正誤を判定する正誤判定ステップと、上記正誤判定ステップにおいて上記ユーザの発話は正しいと判定した場合、上記ユーザの発話の情報を、当該対話装置の発話を生成するための発話データベース(50)に保存する発話保存ステップと、上記発話保存ステップにおいて上記発話データベースに保存した上記ユーザの発話を用いて、当該対話装置の発話を生成する発話生成ステップと、を含む。上記の構成によれば、上記態様1に係る対話装置と同様の効果を奏することができる。
 本発明の各態様に係る対話装置は、コンピュータによって実現してもよく、この場合には、コンピュータを上記対話装置が備える各部(ソフトウェア要素)として動作させることにより上記対話装置をコンピュータにて実現させる対話装置の制御プログラム、およびそれを記録したコンピュータ読み取り可能な記録媒体も、本発明の範疇に入る。
 本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。さらに、各実施形態にそれぞれ開示された技術的手段を組み合わせることにより、新しい技術的特徴を形成することができる。
  1 対話装置
 23 補完処理部(発話補完部)
 24 発話生成部
 25 発話保存部
 26 正誤判定部
 50 発話データベース

Claims (8)

  1.  ユーザと音声またはテキストで対話する対話装置であって、
     当該対話装置に入力されたユーザの発話に不足している文節がある場合、当該対話装置およびユーザの少なくとも一方の先の発話に基づいて、上記ユーザの発話を補完する発話補完部と、
     所定の判定条件に基づき、上記発話補完部が補完した上記ユーザの発話の正誤を判定する正誤判定部と、
     上記ユーザの発話は正しいと上記正誤判定部が判定した場合、上記ユーザの発話の情報を発話データベースに保存する発話保存部と、
     上記発話保存部が上記発話データベースに保存した上記ユーザの発話を用いて、当該対話装置の発話を生成する発話生成部と、
    を備えたことを特徴とする対話装置。
  2.  上記発話補完部は、当該対話装置およびユーザの少なくとも一方の上記先の発話に含まれる単語に基づいて、上記ユーザの発話を補完することを特徴とする請求項1に記載の対話装置。
  3.  上記正誤判定部は、
     (a)単語と該単語のカテゴリとの対応関係を示す情報を参照して、
     (b)上記発話補完部が補完した上記ユーザの発話に含まれる単語のカテゴリが、上記対話装置およびユーザの少なくとも一方の上記先の発話に含まれる単語のカテゴリと一致する場合、上記ユーザの発話は正しいと判定することを特徴とする請求項1または2に記載の対話装置。
  4.  上記発話保存部は、上記ユーザの発話とともに、(i)上記ユーザの発話に含まれる1または複数の単語のカテゴリを示す情報、(ii)上記ユーザの発話が入力された日時または場所を示す情報、および、(iii)上記ユーザの識別情報のうちの少なくとも1つを、上記発話データベースに保存することを特徴とする請求項1から3のいずれか1項に記載の対話装置。
  5.  上記正誤判定部は、
     (a)単語と該単語のカテゴリとの対応関係を示す情報を参照して、
     (b)上記発話補完部が補完した上記ユーザの発話に含まれる複数の単語と対応するカテゴリの組合せが、上記発話データベースに保存されている当該対話装置およびユーザの少なくとも一方の1つの発話に含まれる複数の単語と対応するカテゴリの組合せと一致する場合、上記ユーザの発話は正しいと判定することを特徴とする請求項1から4のいずれか1項に記載の対話装置。
  6.  上記正誤判定部は、
     (a)上記発話補完部が補完した上記ユーザの発話の正誤をユーザに確認する当該対話装置の発話を出力し、
     (b)上記発話補完部が補完した上記ユーザの発話は正しいことを認めるユーザの発話が当該対話装置に入力された場合、上記ユーザの発話は正しいと判定することを特徴とする請求項1から5のいずれか1項に記載の対話装置。
  7.  ユーザと音声またはテキストで対話する対話装置の制御方法であって、
     当該対話装置に入力されたユーザの発話に不足している文節がある場合、当該対話装置およびユーザの少なくとも一方の先の発話に基づいて、上記ユーザの発話を補完する発話補完ステップと、
     所定の条件に基づいて、上記発話補完ステップにおいて補完した上記ユーザの発話の正誤を判定する正誤判定ステップと、
     上記正誤判定ステップにおいて上記ユーザの発話は正しいと判定した場合、上記ユーザの発話の情報を、当該対話装置の発話を生成するための発話データベースに保存する発話保存ステップと、
     上記発話保存ステップにおいて上記発話データベースに保存した上記ユーザの発話を用いて、当該対話装置の発話を生成する発話生成ステップと、
    を含むことを特徴とする対話装置の制御方法。
  8.  請求項1~6のいずれか1項に記載の対話装置としてコンピュータを機能させるための制御プログラムであって、上記各部としてコンピュータを機能させるための制御プログラム。
PCT/JP2017/030408 2016-10-06 2017-08-24 対話装置、対話装置の制御方法、および制御プログラム WO2018066258A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2018543774A JP6715943B2 (ja) 2016-10-06 2017-08-24 対話装置、対話装置の制御方法、および制御プログラム
CN201780061614.2A CN109791766A (zh) 2016-10-06 2017-08-24 对话装置、对话装置的控制方法及控制程序
US16/339,166 US20190311716A1 (en) 2016-10-06 2017-08-24 Dialog device, control method of dialog device, and a non-transitory storage medium

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2016-198479 2016-10-06
JP2016198479 2016-10-06

Publications (1)

Publication Number Publication Date
WO2018066258A1 true WO2018066258A1 (ja) 2018-04-12

Family

ID=61831743

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2017/030408 WO2018066258A1 (ja) 2016-10-06 2017-08-24 対話装置、対話装置の制御方法、および制御プログラム

Country Status (4)

Country Link
US (1) US20190311716A1 (ja)
JP (1) JP6715943B2 (ja)
CN (1) CN109791766A (ja)
WO (1) WO2018066258A1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021117580A (ja) * 2020-01-23 2021-08-10 株式会社ミクシィ 情報処理装置、及びプログラム
JP2021139921A (ja) * 2020-02-28 2021-09-16 Kddi株式会社 ユーザ周辺データに応じて雑談のような対話を進行させる対話装置、プログラム及び方法
KR102628304B1 (ko) * 2023-06-29 2024-01-24 주식회사 멜로우컴퍼니 자연어 처리 프로세서를 이용한 영상 원문 수정 장치

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210065708A1 (en) * 2018-02-08 2021-03-04 Sony Corporation Information processing apparatus, information processing system, information processing method, and program
CN112988987B (zh) * 2019-12-16 2024-06-28 科沃斯商用机器人有限公司 人机交互方法、装置、智能机器人和存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07175808A (ja) * 1993-12-17 1995-07-14 Sharp Corp 自然言語処理装置
JP2000112936A (ja) * 1998-10-01 2000-04-21 Atr Interpreting Telecommunications Res Lab 言語処理装置及び語義決定装置
JP2005181442A (ja) * 2003-12-16 2005-07-07 Fuji Electric Holdings Co Ltd 音声対話装置、その方法、プログラム
JP2005339237A (ja) * 2004-05-27 2005-12-08 Aruze Corp アプリケーション利用補助システム

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005157494A (ja) * 2003-11-20 2005-06-16 Aruze Corp 会話制御装置及び会話制御方法
JP4475628B2 (ja) * 2003-11-25 2010-06-09 株式会社ユニバーサルエンターテインメント 会話制御装置、会話制御方法並びにこれらのプログラム
JP4849662B2 (ja) * 2005-10-21 2012-01-11 株式会社ユニバーサルエンターテインメント 会話制御装置
JP2007272534A (ja) * 2006-03-31 2007-10-18 Advanced Telecommunication Research Institute International 省略語補完装置、省略語補完方法、及びプログラム
US8073681B2 (en) * 2006-10-16 2011-12-06 Voicebox Technologies, Inc. System and method for a cooperative conversational voice user interface
JP5149737B2 (ja) * 2008-08-20 2013-02-20 株式会社ユニバーサルエンターテインメント 自動会話システム、並びに会話シナリオ編集装置
CN105373527B (zh) * 2014-08-27 2020-11-27 中兴通讯股份有限公司 一种省略恢复方法及问答系统
CN105589844B (zh) * 2015-12-18 2017-08-08 北京中科汇联科技股份有限公司 一种用于多轮问答系统中缺失语义补充的方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07175808A (ja) * 1993-12-17 1995-07-14 Sharp Corp 自然言語処理装置
JP2000112936A (ja) * 1998-10-01 2000-04-21 Atr Interpreting Telecommunications Res Lab 言語処理装置及び語義決定装置
JP2005181442A (ja) * 2003-12-16 2005-07-07 Fuji Electric Holdings Co Ltd 音声対話装置、その方法、プログラム
JP2005339237A (ja) * 2004-05-27 2005-12-08 Aruze Corp アプリケーション利用補助システム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
NAOKI ESUMI ET AL.: "Kokoro, Ugoku Denwa Robohon", DAI 78 KAI REPORTS OF THE MEETING OF SPECIAL INTERNET GROUP ON SPOKEN LANGUAGE UNDERSTANDING AND DIALOGUE PROCESSING, 1 October 2016 (2016-10-01), pages 39 - 40 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021117580A (ja) * 2020-01-23 2021-08-10 株式会社ミクシィ 情報処理装置、及びプログラム
JP7436804B2 (ja) 2020-01-23 2024-02-22 株式会社Mixi 情報処理装置、及びプログラム
JP2021139921A (ja) * 2020-02-28 2021-09-16 Kddi株式会社 ユーザ周辺データに応じて雑談のような対話を進行させる対話装置、プログラム及び方法
JP7352491B2 (ja) 2020-02-28 2023-09-28 Kddi株式会社 ユーザ周辺データに応じて雑談のような対話を進行させる対話装置、プログラム及び方法
KR102628304B1 (ko) * 2023-06-29 2024-01-24 주식회사 멜로우컴퍼니 자연어 처리 프로세서를 이용한 영상 원문 수정 장치

Also Published As

Publication number Publication date
JPWO2018066258A1 (ja) 2019-09-05
US20190311716A1 (en) 2019-10-10
CN109791766A (zh) 2019-05-21
JP6715943B2 (ja) 2020-07-01

Similar Documents

Publication Publication Date Title
WO2018066258A1 (ja) 対話装置、対話装置の制御方法、および制御プログラム
US11887590B2 (en) Voice enablement and disablement of speech processing functionality
US11264030B2 (en) Indicator for voice-based communications
US10453449B2 (en) Indicator for voice-based communications
US10460034B2 (en) Intention inference system and intention inference method
US11093110B1 (en) Messaging feedback mechanism
US20170103757A1 (en) Speech interaction apparatus and method
US9588967B2 (en) Interpretation apparatus and method
JP2014191030A (ja) 音声認識端末およびコンピュータ端末を用いる音声認識方法
JP2019090942A (ja) 情報処理装置、情報処理システム、情報処理方法、および情報処理プログラム
CN103246643A (zh) 语音翻译装置和语音翻译方法
US11798559B2 (en) Voice-controlled communication requests and responses
US10593319B1 (en) Parallelization of instruction steps
US20190005950A1 (en) Intention estimation device and intention estimation method
WO2022267405A1 (zh) 语音交互方法、系统、电子设备及存储介质
US20170337922A1 (en) System and methods for modifying user pronunciation to achieve better recognition results
JP4845955B2 (ja) 音声認識結果訂正装置および音声認識結果訂正方法
JP2017211610A (ja) 出力制御装置、電子機器、出力制御装置の制御方法、および出力制御装置の制御プログラム
JP6306447B2 (ja) 複数の異なる対話制御部を同時に用いて応答文を再生する端末、プログラム及びシステム
JP5818753B2 (ja) 音声対話システム及び音声対話方法
US11563708B1 (en) Message grouping
JP5381211B2 (ja) 音声対話装置及びプログラム
JP2008243076A (ja) 翻訳装置、方法及びプログラム
JP6538399B2 (ja) 音声処理装置、音声処理方法およびプログラム
WO2023047623A1 (ja) 情報処理装置、情報処理方法及び情報処理プログラム

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 17858098

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2018543774

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 17858098

Country of ref document: EP

Kind code of ref document: A1