WO2018229937A1 - 意図推定装置及び意図推定方法 - Google Patents
意図推定装置及び意図推定方法 Download PDFInfo
- Publication number
- WO2018229937A1 WO2018229937A1 PCT/JP2017/022144 JP2017022144W WO2018229937A1 WO 2018229937 A1 WO2018229937 A1 WO 2018229937A1 JP 2017022144 W JP2017022144 W JP 2017022144W WO 2018229937 A1 WO2018229937 A1 WO 2018229937A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- intention
- estimation
- unit
- character string
- intentions
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
Definitions
- the present invention relates to an intention estimation device and an intention estimation method for recognizing an input character string and estimating a user's intention.
- an intention estimation device that recognizes speech uttered by a user and converts it into a character string and estimates a user's intention as to what operation to perform from the character string is known. Since there is a case where a plurality of intentions are included in one utterance (hereinafter also referred to as multi-intention utterance), the intention estimation device is required to be able to estimate the intention with respect to the multi-intention utterance.
- Non-Patent Document 1 a character string is expressed in a format called Bag of words, and the Bag of words is used as a feature quantity, and a support vector machine or logarithmic linear model ( A classifier (intention understanding model) called “maximum entropy model” is learned, and the intention is estimated based on the probability value calculated using the learning result.
- a classifier intention understanding model
- maximum entropy model A classifier (intention understanding model) called “maximum entropy model”
- search for ramen shop and Chinese food One character string includes the intention of “search for ramen shop” and the intention of “search for Chinese food”. Even if it has the structure of, the intention of the speaker or the like is estimated.
- Non-Patent Document 1 When applying the intention estimation method disclosed in Non-Patent Document 1 to a case where a plurality of intentions can be included in one utterance, a separate model is learned for each intention, The determination results based on the model will be integrated.
- the present invention has been made to solve the above-described problems. Even when the acquired character string can be either a single intention character string or a multiple intention character string, the intention can be accurately estimated.
- An object is to provide an intention estimation device.
- the intention estimation apparatus includes a morpheme analysis unit that analyzes a morpheme included in a character string based on the acquired character string, and estimates an intention number for the character string. According to the estimated intention number, the character The intention number estimation unit for determining whether a string is a single intention character string including only one intention or a multi-intention character string including multiple intentions, and the intention number estimation unit. If it is determined to be a character string, based on the morpheme analyzed by the morpheme analyzer, the intention to the single intention string is determined by using a single intention estimation model in which the degree of association with the morpheme is associated with each intention.
- the single intention estimation unit and the intention number estimation unit determine that the character string is a double intention character string
- the degree of association with the morpheme for each of the plurality of intentions is based on the morpheme analyzed by the morpheme analysis unit.
- Associated complex intention estimation mode A multiple intention estimation unit that estimates a plurality of intentions with respect to the multi-intention character string, and an estimation result integration unit that integrates a plurality of intentions estimated by the multiple intention estimation unit as a complex intention. .
- FIG. 1 is a diagram illustrating a configuration example of an intention estimation apparatus according to Embodiment 1.
- FIG. 6 is a diagram illustrating an example of an intention number estimation model according to Embodiment 1.
- FIG. 6 is a diagram illustrating an example of a single intention estimation model in Embodiment 1.
- FIG. 6 is a diagram illustrating an example of a composite intention estimation model according to Embodiment 1.
- FIG. 5A and 5B are diagrams illustrating an example of a hardware configuration of the intention estimation apparatus according to Embodiment 1.
- 3 is a diagram illustrating a configuration example of an intention number estimation model generation device according to Embodiment 1.
- FIG. 5 is a flowchart for explaining processing in which the intention number estimation model generation device generates an intention number estimation model in the first embodiment.
- FIG. 6 is a diagram illustrating an example of a dialogue performed between a user and a navigation device in the first embodiment.
- 4 is a flowchart for explaining an operation of the intention estimation apparatus according to the first embodiment.
- it is a flowchart for demonstrating operation
- Embodiment 1 it is a figure which shows an example of the final score of each intention number which an intention number estimation part calculates.
- Embodiment 1 it is a figure which shows an example of the final score of each intention number which an intention number estimation part calculates.
- the intention number estimation unit is an example of a determination result of the user's intention, which is the estimation result of the composite intention estimation unit.
- the integration result of the intent integrated by the estimation result integration part it is a figure which shows the integration result of the intent integrated by the estimation result integration part.
- 6 is a diagram illustrating a configuration example of an intention estimation apparatus according to Embodiment 2.
- FIG. In Embodiment 2 it is a figure which shows the example of an interaction
- Embodiment 2 it is an example of the determination result of a user's intention which the compound intention estimation part determined.
- this Embodiment 2 it is a figure which shows an example of the integrated result of the intent integrated by the estimation result integration part.
- Embodiment 2 it is a figure which shows an example of the content of the final intention estimation result produced
- Embodiment 1 FIG. 1
- the intention estimation device 1 is installed in a navigation device that performs route guidance for a user such as a vehicle driver as an example, estimates the user's intention from the utterance content spoken by the user, Control that causes the navigation device to execute an operation according to the estimated user intention is performed.
- the intention estimation device 1 may be connected to the navigation device via a network or the like.
- the example etc. which are mounted in a navigation apparatus are only examples, and the intention estimation apparatus 1 according to Embodiment 1 is not limited to the user of the navigation apparatus, and accepts information input by utterances or the like from the user.
- the present invention can be applied to an intention estimation apparatus that estimates the intention of a user of the apparatus in any apparatus that performs an operation corresponding to the information.
- FIG. 1 is a diagram illustrating a configuration example of an intention estimation apparatus 1 according to the first embodiment.
- the intention estimation apparatus 1 includes a voice reception unit 101, a voice recognition unit 102, a morpheme analysis unit 103, a dependency analysis unit 104, an intention number estimation model storage unit 105, and an intention number estimation.
- Unit 106, single intention estimation model storage unit 107, single intention estimation unit 108, compound intention estimation model storage unit 109, compound intention estimation unit 110, estimation result integration unit 111, command execution unit 112, response A generation unit 113 and a notification control unit 114 are provided.
- the first embodiment as shown in FIG.
- the intention estimation apparatus 1 includes an intention number estimation model storage unit 105, a single intention estimation model storage unit 107, and a composite intention estimation model storage unit 109.
- the intention number estimation model storage unit 105, the single intention estimation model storage unit 107, and the composite intention estimation model storage unit 109 are not limited to this, and the intention estimation device 1 outside the intention estimation device 1 is used. It is good also as what is provided in the place which can be referred.
- the voice reception unit 101 receives a voice including a user's utterance.
- the voice reception unit 101 outputs the received voice information to the voice recognition unit 102.
- the voice recognition unit 102 recognizes voice data corresponding to the voice received by the voice reception unit 101 and converts it into a character string.
- the voice recognition unit 102 outputs the character string to the morpheme analysis unit 103.
- the morpheme analysis unit 103 performs morpheme analysis on the character string output from the speech recognition unit 102.
- morpheme analysis is an existing natural language processing technique in which a character string is divided into morphemes that are the smallest units having meaning as a language, and parts of speech are given using a dictionary. For example, when a morphological analysis is performed on a character string “go to Tokyo Tower”, the character string is divided into morphemes such as “Tokyo Tower / proprietary noun, he / case particle, go / verb”.
- the morpheme analysis unit 103 outputs the morpheme analysis result to the dependency analysis unit 104 and the intention number estimation unit 106.
- the dependency analysis unit 104 analyzes the relationship between morphemes with respect to the character string after the morpheme analysis by the morpheme analysis unit 103, and generates dependency information.
- the relationship between morphemes is a dependency relationship of morphemes included in a character string.
- the dependency relationship refers to a relationship between morphemes such as “operation target” and “parallel relationship”.
- the dependency analysis unit 104 may use an existing analysis method such as Shift-reduce or spanning tree as a dependency analysis method.
- the dependency analysis unit 104 outputs the analysis result of the relationship between morphemes to the intention number estimation unit 106 as dependency information.
- the intention number estimation model storage unit 105 stores an intention number estimation model.
- the intention number estimation model is a model for estimating the number of intentions using dependency information as a feature amount.
- FIG. 2 is a diagram illustrating an example of an intention number estimation model in the first embodiment.
- the degree of association between each intention number and the dependency information is described as a score.
- the dependency information is expressed in a form in which the relationship between the morphemes and the number of appearances thereof are connected by “_”. For example, as shown in FIG. 2, when a set of morphemes having a “parallel relationship” appears once in one character string, the dependency information is “parallel relationship_1”.
- “operation target — 1 item” indicates that there is only one set of morphemes having a relationship of “operation target” in one character string. 1 "in many cases. Therefore, as shown in FIG.
- the intention number of the user is estimated by a statistical method using the intention number estimation model illustrated in FIG.
- the intention number estimation unit 106 estimates the number of intentions included in the character string using the intention number estimation model stored in the intention number estimation model storage unit 105 based on the dependency information output from the dependency analysis unit 104. To do. A specific method of intention number estimation by the intention number estimation unit 106 will be described later.
- the intention number estimation unit 106 determines whether the character string based on the voice received by the voice reception unit 101 is a single intention utterance or a multi-intention utterance according to the estimated number of intentions. In response, the morpheme analysis result of the character string output by the morpheme analysis unit 103 is output to the single intention estimation unit 108 or the composite intention estimation unit 110.
- the intention number estimation unit 106 determines that the character string based on the voice received by the voice reception unit 101 is a single intention character string based on the single intention utterance, and outputs the character output by the morpheme analysis unit 103.
- the morphological analysis result of the column is output to the single intention estimation unit 108.
- the morphological analysis result of the character string output by the morpheme analysis unit 103 is output to the composite intention estimation unit 110. .
- the intention number is estimated by a statistical method using the intention number estimation model, but the present invention is not limited to this.
- a correspondence relationship between dependency information and the number of intentions may be prepared in advance as a rule, and the number of intentions may be estimated. For example, if there is only one “parallel relationship” between the facility name and the facility type in the character string, the number of intentions included in the character string is “2”. It is possible to estimate the number of intentions by a rule such as “
- a maximum entropy method can be used as the intention estimation method in the first embodiment, which will be described later.
- the single intention estimator and the complex intention estimator use statistical methods to estimate the likelihood of the intention corresponding to the input morpheme from a set of morpheme and intention collected in advance. Estimate.
- the single intention estimation model storage unit 107 stores an intention estimation model for performing intention estimation using morphemes as feature quantities.
- the main intention indicates the classification or function of the intention.
- the main intention is an upper layer generated in response to an input made by the user first operating an input device (not shown) such as destination setting or listening to music.
- the slot name and the slot value indicate information necessary for executing the main intention.
- FIG. 3 is a diagram illustrating an example of a single intention estimation model in the first embodiment.
- the score of each morpheme with respect to the intention is the degree of association between the intention and each morpheme. The higher the degree of association between the intention and each morpheme, the higher the score of each morpheme. Is set. As illustrated in FIG.
- the single intention estimation unit 108 estimates the user's intention using the single intention estimation model stored in the single intention estimation model storage unit 107 based on the morphological analysis result of the character string output from the morphological analysis unit 103. Specifically, the single intention estimation unit 108 uses the single intention estimation model to determine the intention that the score corresponding to the morpheme analyzed by the morpheme analysis unit 103 and the intention becomes the largest. Estimated. The single intention estimation unit 108 outputs the estimation result to the command execution unit 112 as a single intention estimation result.
- the compound intention estimation model storage unit 109 stores a compound intention estimation model created by learning different models for each intention.
- the compound intention estimation model is a model created by learning by a statistical method with the learning data of the intent to be estimated as a positive example and the learning data of other intentions as all negative examples for each intention. This is a model for determining whether or not each intention belongs to the estimation target intention.
- FIG. 4 is a diagram illustrating an example of the composite intention estimation model in the first embodiment.
- the composite intention estimation model includes a plurality of determination preparation diagram estimation models generated for each intention.
- the score of each morpheme with respect to the intention is the degree of association between the intention and each morpheme.
- the compound intention estimation model is a model in which a plurality of intentions are created separately by learning the degree of association between the intention and the morpheme, and the degree of relationship with the morpheme is associated with each intention.
- the composite intention estimation unit 110 uses the composite intention estimation model stored in the composite intention estimation model storage unit 109 to generate a character string morphological analysis result output from the morphological analysis unit 103 for each determination preparation diagram estimation model. Based on this, it is determined whether or not the character string based on the voice received by the voice receiving unit 101 has the corresponding intention. Specifically, the composite intention estimation unit 110 determines whether the score in which the morpheme analyzed by the morpheme analysis unit 103 is associated with the intention is greater than or equal to a preset threshold for each determination preparation diagram estimation model. It is determined whether or not the character string has the corresponding intention. The composite intention estimation unit 110 outputs the determination result for each determination preparation diagram estimation model included in the composite intention estimation model to the estimation result integration unit 111 as an estimation result.
- the estimation result integration unit 111 integrates the estimation results for each determination preparation diagram estimation model included in the compound intention estimation model output from the compound intention estimation unit 110.
- the estimation result integration unit 111 outputs the estimated intention integration result to the command execution unit 112 as a composite intention estimation result.
- the response generation unit 113 Based on the execution operation information output from the command execution unit 112, the response generation unit 113 generates response data corresponding to the command that the command execution unit 112 has executed by the command processing unit.
- the response data may be generated in the form of text data or in the form of audio data.
- the response generation unit 113 When the response generation unit 113 generates the response data in the form of voice data, the response generation unit 113 outputs a synthesized sound such as “Search for nearby restaurants. Please select from the list.” For this purpose, it is sufficient to generate voice data.
- the response generation unit 113 outputs the generated response data to the notification control unit 114.
- the notification control unit 114 outputs the response data output from the response generation unit 113 from, for example, an output device such as a speaker included in the navigation device, and notifies the user. That is, the notification control unit 114 controls the output device to notify the user that the command has been executed by the command processing unit.
- the notification mode may be anything as long as the user can recognize the notification, such as notification by display, notification by voice, or notification by vibration.
- FIGS. 5A and 5B are diagrams showing an example of the hardware configuration of the intention estimation apparatus 1 according to Embodiment 1 of the present invention.
- a speech recognition unit 102 a morpheme analysis unit 103, a dependency analysis unit 104, an intention number estimation unit 106, a single intention estimation unit 108, a composite intention estimation unit 110, and an estimation
- the functions of the result integration unit 111, the command execution unit 112, the response generation unit 113, and the notification control unit 114 are realized by the processing circuit 501.
- the intention estimation apparatus 1 is a processing circuit for controlling a process for estimating a user's intention or a process for executing and notifying a machine command corresponding to the estimated intention based on the received information related to the user's utterance.
- the processing circuit 501 may be dedicated hardware as shown in FIG. 5A or may be a CPU (Central Processing Unit) 506 that executes a program stored in the memory 505 as shown in FIG. 5B.
- CPU Central Processing Unit
- the processing circuit 501 When the processing circuit 501 is dedicated hardware, the processing circuit 501 includes, for example, a single circuit, a composite circuit, a programmed processor, a parallel programmed processor, an ASIC (Application Specific Integrated Circuit), and an FPGA (Field-Programmable). Gate Array) or a combination of these.
- the processing circuit 501 is the CPU 506, the speech recognition unit 102, the morpheme analysis unit 103, the dependency analysis unit 104, the intention number estimation unit 106, the single intention estimation unit 108, the composite intention estimation unit 110, and the estimation result
- the functions of the integration unit 111, the command execution unit 112, the response generation unit 113, and the notification control unit 114 are realized by software, firmware, or a combination of software and firmware.
- the execution unit 112, the response generation unit 113, and the notification control unit 114 are processes such as an HDD (Hard Disk Drive) 502, a CPU 506 that executes a program stored in the memory 505, or a system LSI (Large-Scale Integration). Realized by a circuit.
- HDD Hard Disk Drive
- LSI Large-Scale Integration
- the programs stored in the HDD 502, the memory 505, and the like include a speech recognition unit 102, a morpheme analysis unit 103, a dependency analysis unit 104, an intention number estimation unit 106, a single intention estimation unit 108, a composite intention
- the computer executes the procedures and methods of the estimation unit 110, the estimation result integration unit 111, the command execution unit 112, the response generation unit 113, and the notification control unit 114.
- the memory 505 is, for example, a RAM (Random Access Memory), a ROM (Read Only Memory), a flash memory, an EPROM (Erasable Programmable Read Only Memory, an EEPROM). Or a volatile semiconductor memory, a magnetic disk, a flexible disk, an optical disk, a compact disk, a mini disk, or a DVD (Digital Versatile Disc).
- the speech recognition unit 102, the morphological analysis unit 103, the dependency analysis unit 104, the intention number estimation unit 106, the single intention estimation unit 108, the complex intention estimation unit 110, the estimation result integration unit 111, a command A part of the functions of the execution unit 112, the response generation unit 113, and the notification control unit 114 may be realized by dedicated hardware, and a part may be realized by software or firmware.
- the function of the speech recognition unit 102 is realized by a processing circuit 501 as dedicated hardware.
- the morpheme analysis unit 103, the dependency analysis unit 104, the intention number estimation unit 106, and the single intention estimation unit 108 As for the composite intention estimation unit 110, the estimation result integration unit 111, the command execution unit 112, the response generation unit 113, and the notification control unit 114, the processing circuit reads and executes the program stored in the memory 505
- the function can be realized.
- the intention number estimation model storage unit 105, the single intention estimation model storage unit 107, and the composite intention estimation model storage unit 109 use, for example, the HDD 502. This is merely an example, and the intention number estimation model storage unit 105, the single intention estimation model storage unit 107, and the composite intention estimation model storage unit 109 are configured by a DVD or a memory 505 or the like. Also good.
- the intention estimation device 1 includes an input interface device 503 and an output interface device 504 that communicate with an external device such as a navigation device.
- the voice reception unit 101 includes an input interface device 503.
- the operation of the intention estimation apparatus 1 according to Embodiment 1 will be described.
- the operation related to the generation process of the intention number estimation model which is a premise of the operation of estimating the intention of the user in the intention estimation device 1, will be described.
- the generation process of the intention number estimation model is performed by the intention number estimation model generation apparatus 2 that is different from the intention estimation apparatus 1.
- FIG. 6 is a diagram illustrating a configuration example of the intention number estimation model generation device 2 according to the first embodiment.
- the intention number estimation model generation apparatus 2 includes a learning data storage unit 115, a morpheme analysis unit 103, a dependency analysis unit 104, and an intention number estimation model generation unit 116, as shown in FIG.
- the configurations and operations of the morpheme analysis unit 103 and the dependency analysis unit 104 are the same as the configurations and operations of the morpheme analysis unit 103 and the dependency analysis unit 104 described with reference to FIG. A duplicate description is omitted.
- the learning data storage unit 115 stores the correspondence between the character string and the number of intentions as learning data.
- the intention number estimation model generation device 2 includes the learning data storage unit 115.
- the learning data storage unit 115 is not limited thereto, and the learning data storage unit 115 is external to the intention number estimation model generation device 2.
- the intention number estimation model generation device 2 may be provided in a place where it can be referred to.
- FIG. 7 is a diagram illustrating an example of learning data stored in the learning data storage unit 115 in the first embodiment.
- the learning data is data in which an intention number corresponding to an utterance sentence example (hereinafter referred to as an utterance sentence example) that is an example sentence of a character string output by speech or the like is given.
- an utterance sentence example an example sentence of a character string output by speech or the like
- the intention number “1” is given to the utterance sentence example 701 “I want to go to XX”.
- the learning data is created in advance by a model creator or the like.
- a model creator or the like creates learning data to which an intention number is assigned in advance for each utterance sentence example for a plurality of utterance sentence examples, and stores the learning data in the learning data storage unit 115.
- the intention number estimation model generation unit 116 is based on the learning data stored in the learning data storage unit 115 and the analysis result of the relationship between morphemes by the dependency analysis unit 104, and the number of intentions corresponding to the utterance sentence example. Is calculated by a statistical method, and an intention number estimation model (see FIG. 2) indicating the correspondence between dependency information and the number of intentions is generated.
- the intention number estimation model generation unit 116 stores the generated intention number estimation model in the intention number estimation model storage unit 105.
- FIG. 8 is a flowchart for explaining processing in which the intention number estimation model generation device 2 generates an intention number estimation model in the first embodiment.
- the morphological analysis unit 103 performs morphological analysis on each sentence example of the learning data stored in the learning data storage unit 115 (step ST801). For example, in the case of the utterance sentence example 701 in FIG. 7, the morphological analysis unit 103 performs a morphological analysis on “I want to go to XX”, and “ The result of morphological analysis is obtained.
- the morpheme analysis unit 103 outputs the morpheme analysis result to the dependency analysis unit 104.
- the dependency analysis unit 104 performs dependency analysis using the morpheme analyzed by the morpheme analysis unit 103 based on the morpheme analysis result output from the morpheme analysis unit 103 (step ST802). For example, in the case of the utterance sentence example 701, the dependency analysis unit 104 performs dependency analysis on the morphemes “OO”, “HE”, “GO”, and “TAI”. The dependency analysis unit 104 obtains the analysis result of the relationship between the morphemes “operation target” from the morpheme, assigns the number of intentions to the analysis result, and sets “_1 operation target” as dependency information. It outputs to the number estimation model production
- the intention number estimation model generation unit 116 generates an intention number estimation model using the learning data stored in the learning data storage unit 115 based on the dependency information output by the dependency analysis unit 104 (step). ST803). For example, in the case of an utterance sentence example 701 “I want to go to XX”, the dependency information is “operation target — 1”, and the number of intentions included in the learning data is “number of intentions 1” as shown in FIG. is there. Therefore, in the case where the utterance sentence example 701 is used, the intention number estimation model generation unit 116 has a score of “one intention number” for the dependency information “operation target — 1 case” than a score of other intention numbers. Learn to be higher.
- the intention number estimation model generation unit 116 performs the same processing as the above-described steps ST801 to ST803 on all utterance sentence examples included in the learning data, and finally generates an intention number estimation model as shown in FIG. Generate. Then, the intention number estimation model generation unit 116 stores the generated intention number estimation model in the intention number estimation model storage unit 105. Note that the intention number estimation model storage unit 105 is provided at a location accessible by the intention number estimation model generation device 2 via a network, for example.
- the intention number estimation model generation unit 116 uses all the dependency information output from the dependency analysis unit 104 as feature quantities for estimation of the number of intentions.
- the configuration is not limited to this.
- the intention number estimation model generation unit 116 selects a feature amount by determining a clear rule such as “use only parallel relationship” or “use only target of motion”, or estimates the intention number using a statistical method. It is also possible to adopt a configuration that uses only dependency information that is highly effective.
- the intention number estimation model generation device 2 different from the intention estimation device 1 generates the intention number estimation model and stores it in the intention number estimation model storage unit 105.
- the intention estimation apparatus 1 may generate the intention number estimation model and store it in the intention number estimation model storage unit 105.
- the intention estimation apparatus 1 further includes a learning data storage unit 115 and an intention number estimation model generation unit 116 in addition to the configuration described with reference to FIG. Note that the learning data storage unit 115 may be provided outside the intention estimation apparatus 1 in a place where the intention estimation apparatus 1 can be referred to.
- the intention estimation apparatus 1 according to Embodiment 1 using the intention number estimation model is used. The operation related to the intention estimation process will be described.
- FIG. 9 is a diagram illustrating an example of a dialogue performed between the user and the navigation device in the first embodiment.
- FIG. 10 is a flowchart for explaining the operation of the intention estimation apparatus 1 according to the first embodiment.
- the navigation device outputs, for example, a voice “Please speak when it beeps” from a speaker included in the navigation device (S1).
- the voice control unit (not shown) of the intention estimation device 1 causes the navigation device to output a voice saying “Please speak when you make a beep.”
- the navigation device outputs a voice saying “Please speak when it beeps”
- the user utters “I want to go to XX” in response to the voice (U1).
- the voice output by the navigation device in response to an instruction from the intention estimation device 1 is represented as “S”
- the utterance from the user is represented as “U”.
- the voice receiving unit 101 receives the voice of the utterance.
- the voice recognition unit 102 performs voice recognition processing on the voice received by the voice receiving unit 101 (step ST1001), and converts the voice into a character string.
- the voice recognition unit 102 outputs the converted character string to the morpheme analysis unit 103.
- the morpheme analysis unit 103 performs a morpheme analysis process on the character string output from the speech recognition unit 102 (step ST1002). For example, the morpheme analysis unit 103 obtains morphemes “OO”, “HE”, “GO”, and “TAI”, and uses the morpheme analysis result as a dependency analysis unit 104 and an intention number estimation unit.
- the data is output to 106.
- the dependency analysis unit 104 performs dependency analysis processing on the morpheme analysis result output from the morpheme analysis unit 103 (step ST1003). For example, in the dependency analysis unit 104, since the morpheme “XX” is a target of the operation “going”, the character string output from the speech recognition unit 102 has a relationship between the morphemes “operation target”. Analyzes that there is. Further, since there is one “operation target”, the morphological analysis unit 103 analyzes “operation target — 1”. Then, the morphological analysis unit 103 outputs the analysis result of “operation target — 1” as dependency information to the intention number estimation unit 106.
- the intention number estimation unit 106 uses the dependency information “operation target — 1” output from the dependency analysis unit 104 in step ST1003 as a feature amount and stores the intention number estimation model stored in the intention number estimation model storage unit 105. And the number of intentions is estimated (step ST1004).
- the intention number estimation operation by the intention number estimation unit 106 will be described in detail with reference to FIG.
- FIG. 11 is a flowchart for explaining the operation of intention number estimation section 106 in step ST1004 of FIG.
- the intention number estimation unit 106 collates the dependency information output from the dependency analysis unit 104 with the intention number estimation model, and acquires a score of each dependency information for each intention number (step ST1101).
- FIG. 12 is a diagram illustrating an example of the dependency information score for each intention number acquired by the intention number estimation unit 106 in the first embodiment.
- the intention number estimation unit 106 when the dependency information as the feature amount is “operation target — 1”, the intention number estimation unit 106, for example, sets the feature amount “operation target — 1” for the intention number “1”. 0.2 is acquired as a score.
- the intention number estimation unit 106 similarly obtains the score of the feature quantity “operation target_1” for other intention numbers.
- the intention number estimation unit 106 calculates the final score of each intention number with respect to the estimation target, which is one character string to be estimated, based on the score of each intention number acquired in step ST1101 (Ste ST1102).
- the final score obtained by the intention number estimation unit 106 is a product calculated by multiplying each intention number by all the scores of the dependency information for the intention number.
- the final score is a product calculated by multiplying each intention number by the score of each feature quantity used for estimating the intention number with respect to the intention number.
- FIG. 13 is a diagram illustrating a calculation formula used by the intention number estimation unit 106 to calculate the final score in the first embodiment. In FIG.
- S is the final score of a certain number of intentions (hereinafter referred to as the number of target intentions) as a final score calculation target among a plurality of intention numbers for the estimation target.
- Si is a score of the i-th feature amount with respect to the target intention number.
- FIG. 14 is a diagram showing an example of the final score of each intention number calculated by the intention number estimation unit 106 in the first embodiment.
- the intention number estimation unit 106 calculates the final score shown in FIG. 14 using the calculation formula shown in FIG. In this example, the dependency information serving as the feature amount is one of “operation target — 1”, so the final score and the score corresponding to the feature amount “operation target — 1” are the same. As shown in FIG. 14, the score of the feature quantity “operation target — 1” is 0.2 and the final score S is 0.2 with respect to the intention number “1”. Similarly, the intention number estimation unit 106 calculates a final score for each of the other intention numbers.
- the intention number estimation unit 106 estimates the number of intentions based on the final score of each intention number calculated in step ST1102 (step ST1103). Specifically, the intention number estimation unit 106 estimates the number of intentions having the highest final score among the calculated number of intentions of the estimation target as the number of intentions of the estimation target. Here, the intention number estimation unit 106 estimates the intention number “1” as the intention number.
- the intention number estimation unit 106 determines whether the intention number is larger than 1 as a result of estimating the intention number in step ST1004 (step ST1005).
- step ST1005 when the estimated number of intentions is larger than 1 (in the case of “YES” in step ST1005), the process proceeds to steps ST1010 to ST1014. Details of the processing after step ST1010 when the estimated number of intentions is greater than 1 in step ST1005 will be described later with a specific example.
- step ST1005 when the estimated number of intentions is 1 or less (in the case of “NO” in step ST1005), the process proceeds to step ST1006.
- the intention number estimation unit 106 estimates the number of intentions. As a result, the number of intentions is “1”, so the process proceeds to step ST1006.
- the intention number estimation unit 106 outputs a character string that is a morpheme analysis result obtained by the morpheme analysis unit 103 in step ST1002 to the single intention estimation unit 108. Then, the single intention estimation unit 108 uses the single intention estimation model (see FIG.
- the single intention estimation unit 108 uses the single intention estimation model to estimate the intention that the score of the morphological analysis result of the character string by the morpheme analysis unit 103 is the largest as the user's intention.
- the single intention estimation unit 108 outputs the intention estimation result to the command execution unit 112 as a single intention estimation result.
- the command execution unit 112 causes the command processing unit of the navigation device to execute a command corresponding to the single intention estimation result output from the single intention estimation unit 108 in step ST1006 (step ST1007).
- the command execution unit 112 causes the command processing unit of the navigation device to execute an operation of setting the facility XX as the destination.
- the command execution part 112 outputs the execution operation information which shows the content of the command performed by step ST1007 to the response production
- the response generation unit 113 generates response data corresponding to the command executed by the command processing unit 112 by the command processing unit 112 based on the execution operation information output from the command execution unit 112 in step ST1007 (step ST1008).
- the response generation unit 113 outputs the generated response data to the notification control unit 114.
- the notification control unit 114 outputs voice based on the response data output from the response generation unit 113 in step ST1008, for example, from a speaker included in the navigation device (step ST1009). As a result, as shown in “S2” of FIG. 9, a voice such as “XX set as destination” is output, and the executed command can be notified to the user.
- the operation of the intention estimation apparatus 1 in this case is as shown in FIG. It explains along.
- the voice receiving unit 101 receives the voice of the utterance, and the voice recognition unit 102 performs voice recognition processing on the voice of the received utterance (step ST1001). Convert to The voice recognition unit 102 outputs the converted character string to the morphological analysis unit 103 and the intention number estimation unit 106.
- the morpheme analysis unit 103 performs a morpheme analysis process on the character string output from the speech recognition unit 102 (step ST1002).
- the morpheme analyzing unit 103 obtains morphemes of “ ⁇ ”, “mo”, “stop”, “te”, “highway”, “choose”, “select”, and “te”, and The information is output to the dependency analysis unit 104 as a morphological analysis result.
- the dependency analysis unit 104 performs dependency analysis processing on the morpheme analysis result output from the morpheme analysis unit 103 (step ST1003).
- “ ⁇ ” is the target of the “stop” operation
- “Highway” is the target of the “selection” operation
- the operations “stop” and “selection” are in a parallel relationship.
- the dependency analysis unit 104 outputs the analysis results of “operation target — 2” and “parallel relationship — 1” as dependency information to the intention number estimation unit 106.
- the intention number estimation unit 106 uses the intention number estimation model stored in the intention number estimation model storage unit 105 with the acquired dependency information “operation target — 2” and “parallel relationship — 1” as feature amounts.
- the number is estimated (step ST1004).
- the specific operation of step ST1004 is as described in detail with reference to FIG. 11 as described above.
- the intention number estimation unit 106 is related to The dependency information output from the reception analysis unit 104 is compared with the intention number estimation model, and the score of each dependency information for each intention number is acquired (see step ST1101 in FIG. 11). Subsequently, the intention number estimation unit 106 calculates a final score for the number of intentions to be estimated from the calculation formula shown in FIG. 13 (see step ST1102 in FIG. 11).
- FIG. 15 is a diagram showing an example of the final score of each intention number calculated by the intention number estimation unit 106 in the first embodiment.
- the intention number estimation unit 106 calculates the final score shown in FIG. 15 for the utterance “U2” by the user, using the calculation formula shown in FIG. 13.
- the score of the feature quantity “operation target_2” is 0.01, and the score of “parallel relationship_1” is 0.01.
- the intention number estimation unit 106 calculates a final score for each of the other intention numbers for the utterance “U2”.
- the intention number estimation unit 106 estimates the number of intentions based on the calculated final score of each intention number (see step ST1103 in FIG. 11). Specifically, the intention number estimation unit 106 estimates the number of intentions “2” having the highest final score among the calculated number of intentions of the estimation target as the number of intentions of the estimation target.
- the intention number estimation unit 106 determines whether the intention number is larger than 1 as a result of estimating the intention number in step ST1004 (step ST1005).
- step ST1005 when the estimated number of intentions is larger than 1 (in the case of “YES” in step ST1005), the process proceeds to step ST1010.
- the process proceeds to step ST1010.
- step ST1010 the intention number estimation unit 106 outputs a character string that is a morpheme analysis result obtained by the morpheme analysis unit 103 in step ST1002 to the composite intention estimation unit 110.
- the compound intention estimation unit 110 uses the compound intention estimation model (see FIG. 4) stored in the compound intention estimation model storage unit 109 to perform a morphological result on a character string, that is, a compound intention speech sentence.
- the user's intention is estimated (step ST1010).
- FIG. 16 is an example of a determination result of the user's intention, which is the estimation result by the composite intention estimation unit 110 in the first embodiment.
- the intention number estimation unit 106 determines that the intention estimation score exceeds 0.5 when the intention estimation score for the intention determined using the above three determination preparation diagram estimation models exceeds 0.5. Are determined to be relevant intent.
- the intention estimation score is a probability value calculated based on the sum of the scores of each morpheme. Accordingly, the sum of the intention estimation scores in each determination preparation diagram estimation model is “1”.
- FIG. 16B shows the determination result of the determination ready map estimation model of the intention “route change [highway priority]”.
- the composite intention estimation unit 110 has an intention estimation score of 0.7 and exceeds 0.5 (see FIG.
- the estimation result integration unit 111 adds a corresponding intention other than “other intentions” to the integration result among the plurality of corresponding intentions output as the intention estimation result from the composite intention estimation unit 110 in step ST1010. Are integrated (step ST1011).
- the estimation result integration unit 111 adds the intention “route change [highway priority]” to the integration result.
- FIG. 17 is a diagram illustrating an example of an intention integration result integrated by the estimation result integration unit 111 in the first embodiment.
- the estimation result integration unit 111 outputs the estimated intention integration result to the command execution unit 112 as a composite intention estimation result.
- the command execution unit 112 causes the command processing unit of the navigation device to execute a command corresponding to the composite intention estimation result output from the composite intention estimation unit 110 in step ST1011 (step ST1012).
- the command execution unit 112 causes the command processing unit of the navigation device to execute an operation of adding the facility ⁇ to the waypoint.
- the command execution unit 112 causes the command processing unit of the navigation device to execute an operation of changing the route to the highway priority.
- the command execution part 112 outputs the execution operation information which shows the content of the command performed by step ST1012 to the response production
- the response generation unit 113 generates response data corresponding to the command executed by the command processing unit 112 by the command processing unit 112 based on the execution operation information output from the command execution unit 112 in step ST1012 (step ST1013).
- the response generation unit 113 outputs the generated response data to the notification control unit 114.
- the notification control unit 114 outputs voice based on the response data output from the response generation unit 113 in step ST1013, for example, from a speaker included in the navigation device (step ST1014).
- voice such as “ ⁇ ⁇ has been added to the waypoint” and “The route has been given priority to the expressway” are output, , Notification of executed commands can be performed.
- the intention estimation apparatus 1 estimates the number of intentions for a character string and the morpheme analysis unit 103 that analyzes the morpheme included in the character string based on the acquired character string.
- the character string is a single intention character string (single intention utterance) including only one intention or a multiple intention character string (multipurpose intention utterance) including a plurality of intentions.
- the intention number estimation unit 106 and the intention number estimation unit 106 determine whether the character string is a single intention character string, the relationship between the morpheme for each intention based on the morpheme analyzed by the morpheme analysis unit 103
- a composite intention estimation unit 110 that estimates a plurality of intentions for the multi-intention character string using a composite intention estimation information model in which a degree of association with a morpheme is associated with each of a plurality of intentions
- an estimation result integration unit 111 that integrates a plurality of intentions estimated by the composite intention estimation unit 110 as a composite intention.
- Embodiment 2 when it is estimated from the user's utterance that the user's intention is 2 or more, the estimation result integration unit 111 integrates the combined intention estimation result estimated by the combined intention estimation unit 110, and the command execution unit 112. However, the navigation apparatus is caused to execute a command corresponding to the integrated combined intention estimation result.
- an upper limit is set for the number of intentions of the combined intention estimation result estimated by the combined intention estimation unit 110 will be described. The second embodiment of the present invention will be described below with reference to the drawings.
- FIG. 18 is a diagram illustrating a configuration example of the intention estimation apparatus 1B according to the second embodiment.
- the intention estimation device 1B according to the second embodiment is different from the intention estimation device 1 described with reference to FIG. 1 in the first embodiment in that an estimation result selection unit 117 is provided. Since the other configuration of the intention estimation device 1B is the same as the configuration of the intention estimation device 1 described with reference to FIG. 1 in the first embodiment, the same configuration as the intention estimation device 1 is the same as FIG. A duplicate description is omitted.
- the estimation result integration unit 111 outputs a combined intention estimation result, which is an integration result of the estimated intention, to the estimation result selection unit 117.
- the estimation result integration unit 111 also outputs the intention estimation score to the estimation result selection unit 117 by including it in the combined intention estimation result.
- the intention number estimation unit 106 outputs information on the estimated intention number to the estimation result selection unit 117.
- the estimation result selection unit 117 uses the intention number output from the intention number estimation unit 106 as the intention output upper limit for the combined intention estimation result output from the estimation result integration unit 111, and determines the intention as the estimation result as the combined intention estimation. Select from the top of the resulting intention estimation scores. A specific method for selecting the estimation intention will be described later.
- FIG. 19 is a diagram illustrating an example of a dialogue performed between the user and the navigation device in the second embodiment.
- FIG. 20 is a flowchart for explaining the operation of intention intent device 1B in the second embodiment.
- the navigation device outputs, for example, a voice “Please speak when you hear a beep” from a speaker included in the navigation device (S01).
- the voice control unit (not shown) of the intention estimation device 1B causes the navigation device to output a voice “Please speak when you hear a slap.”
- the navigation device outputs a voice saying “Please speak when it beeps”
- the user utters “Oh, XX doesn't have to be near, is there a convenience store nearby” (U01).
- the voice that the navigation device receives and outputs an instruction from the intention estimation device 1 ⁇ / b> B is represented as “S”
- the utterance from the user is represented as “U”.
- step ST2001 to step ST2011, step ST2013 to step ST2015 of FIG. 20 are the same as those of step ST1001 to step ST1001 of FIG. 10 described in the first embodiment. It is the same as the specific operation of ST1014.
- the voice receiving unit 101 receives a voice uttered by a user, performs voice recognition processing on the voice received by the voice recognition unit 102 and converts it into a character string, and a morpheme analysis unit 103 performs a morphological analysis on the character string. Processing is performed (steps ST2001 and ST2002). For example, the morpheme analysis unit 103, the morpheme analysis unit 103, “XX”, “HA”, “Yorai”, “None”, “Te”, “Good”, “Near”, “Ni”, “Convenience store” And the morpheme of “A” is obtained, and information on the morpheme is output to the dependency analysis unit 104 and the intention number estimation unit 106 as a morpheme analysis result.
- the dependency analysis unit 104 performs dependency analysis processing on the character string (step ST2003). For example, because “XX” is the target of the “Ori” action, “Combined” is the target of the “Yes” action, and the actions “Good” and “Yes” are “Parallel”.
- the dependency analysis unit 104 outputs the analysis results of “operation object — 2” and “parallel relationship — 1” as dependency information to the intention number estimation unit 106.
- intention number estimation section 106 estimates the number of intentions (step ST2004).
- the number of intentions estimated by the number-of-intentions estimation unit 106 is “2” (see step ST1104 in FIG.
- step ST2005 the estimated number of intentions is larger than “1” (step ST2005).
- step ST2010 the process proceeds to the processing after step ST2010.
- the steps so far are the same as steps ST1001 to 1005 in FIG. 10 described in the first embodiment.
- step ST2010 the intention number estimation unit 106 outputs a character string that is a result of the morphological analysis performed by the morpheme analysis unit 103 to the composite intention estimation unit 110. Then, the compound intention estimation unit 110 estimates the user's intention with respect to the compound intention utterance.
- FIG. 21 is an example of a determination result of the user's intention determined by the composite intention estimation unit 110 in the second embodiment.
- the intention estimation unit 106 determines that the intention estimation score is 0 when the intention estimation score for the intention determined using the above three determination preparation diagram estimation models exceeds 0.5. An intention determined to exceed .5 shall be determined to be the corresponding intention.
- FIG. 21C is a determination result of the intention “route deletion” determination preparation diagram estimation model.
- the estimation result integration unit 111 adds a corresponding intention other than “other intentions” to the integration result among the plurality of corresponding intentions output as the intention estimation result from the composite intention estimation unit 110 in step ST2010. Are integrated (step ST2011).
- FIG. 22 is a diagram illustrating an example of an intention integration result integrated by the estimation result integration unit 111 in the second embodiment.
- the estimation result integration unit 111 outputs the estimated intention integration result to the estimation result selection unit 117 as a composite intention estimation result.
- the estimation result selection unit 117 uses the intention number output from the intention number estimation unit 106 in step ST2004 as the intention output upper limit for the combined intention estimation result output from the estimation result integration unit 111 in step ST2011, and sets the estimation result as an estimation result.
- the intention is selected from the top of the intention estimation score of the composite intention estimation result, and the selected estimation intention is set as the final intention estimation result (step ST2012).
- the estimation result selection unit 117 selects only the estimated intentions higher than the intention estimation score using the intention number output from the intention number estimation unit 106 as the intention output upper limit and the intention estimation score as a criterion. .
- step ST2004 the intention number estimation unit 106 estimates the number of intentions “2”. Therefore, the estimation result selection unit 117 sets the number of final intention estimation results to “2” or less.
- estimation result selection unit 117 sets the intention number output from the intention number estimation unit 106 as the intention output upper limit, selects the top two of the intention estimation scores of the composite intention estimation result, and outputs the result as the final intention estimation result.
- FIG. 23 is a diagram illustrating an example of the content of the final intention estimation result generated by the estimation result selection unit 117 in the second embodiment.
- the estimation result selection unit 117 outputs the final intention estimation result to the command execution unit 112.
- the command execution unit 112 causes the command processing unit of the navigation device to execute a command corresponding to the final intention estimation result output from the estimation result selection unit 117 in step ST2012 (step ST2013). For example, the command execution unit 112 causes the command processing unit of the navigation device to execute a command for deleting a waypoint and a command for searching for a nearby convenience store. Further, the response generation unit 113 generates response data corresponding to the command executed by the command processing unit 112 by the command execution unit 112 (step ST2014), and the notification control unit 114 outputs the response data generated by the response generation unit 113. Then, the sound is output from a speaker included in the navigation device (step ST2015). As a result, as shown in “S02” in FIG.
- the estimation result integration unit 111 integrates the intention number estimated by the intention number estimation unit 106 as an upper limit.
- an intention higher in the intention estimation score calculated when the intention number estimation unit 106 estimates the number of intentions is selected, and an estimation result selection unit 117 that is a composite intention is provided.
- an output upper limit is set for the composite intention estimation result obtained by the estimation result integration unit 111, and the output of an inappropriate intention estimation result is suppressed. Therefore, the accuracy of the final integration result is further improved.
- the functions of the intention estimation devices 1 and 1B described so far may be executed by other devices.
- some functions may be executed by a server provided outside or a mobile terminal such as a smartphone or a tablet.
- the intention estimation devices 1 and 1B estimate the user's intention based on the voice generated by the user's utterance.
- the information is not limited to this.
- the intention estimation devices 1 and 1B can accept a character string input by the user using an input device such as a keyboard, and can estimate the user's intention based on the character string.
- the intention estimation apparatus is configured to improve the accuracy of estimating the intention of a character string
- the intention estimation apparatus is applied to an intention estimation apparatus that recognizes an input character string and estimates a user's intention. be able to.
- 1, 1B intention estimation device, 2 intention number estimation model generation device 101 speech reception unit, 102 speech recognition unit, 103 morpheme analysis unit, 104 dependency analysis unit, 105 intention number estimation model storage unit, 106 intention number estimation unit, 107 single intention estimation model storage unit, 108 single intention estimation unit, 109 compound intention estimation model storage unit, 110 compound intention estimation unit, 111 estimation result integration unit, 112 command execution unit, 113 response generation unit, 114 notification control unit, 115 Data storage unit for learning, 116 intention number estimation model generation unit, 117 estimation result selection unit, 501 processing circuit, 502 HDD, 503 input interface device, 504 output interface device, 505 memory, 506 CPU.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Machine Translation (AREA)
Abstract
取得した文字列に基づき当該文字列に含まれる形態素の解析を行う形態素解析部(103)と、文字列に対する意図数を推定し、推定した意図数に応じて、当該文字列が、一つしか意図を含まない単意図文字列であるか、複数の意図を含む複意図文字列であるかを判断する意図数推定部(106)と、意図数推定部(106)が、文字列は単意図文字列であると判断した場合、形態素解析部(103)が解析した形態素に基づき、意図毎に形態素との関連度が対応付けられた単意図推定モデルを用いて、当該単意図文字列に対する意図を単意図として推定する単意図推定部(108)と、意図数推定部(106)が、文字列は複意図文字列であると判断した場合、形態素解析部(103)が解析した形態素に基づき、複数の意図毎に形態素との関連度が対応付けられた複合意図推定情報モデルを用いて、当該複意図文字列に対する複数の意図を推定する複合意図推定部(110)と、複合意図推定部(110)が推定した複数の意図を複合意図として統合する推定結果統合部(111)とを備えた。
Description
この発明は、入力された文字列を認識してユーザの意図を推定する意図推定装置及び意図推定方法に関するものである。
従来、ユーザにより発話された音声を音声認識して文字列に変換し、当該文字列から、どのような操作を実行したいのかという使用者の意図を推定する意図推定装置が知られている。1つの発話に複数の意図が含まれる場合(以下、複意図発話ともいう)もあるため、意図推定装置は、複意図発話に対して意図を推定可能であることが求められる。
例えば、非特許文献1に開示されている教師あり学習を用いた方式では、文字列をBag of wordsと呼ばれる形式で表現し、当該Bag of wordsを特徴量として、サポートベクトルマシンまたは対数線形モデル(最大エントロピーモデル)と呼ばれる分類器(意図理解モデル)を学習させ、学習結果を用いて算出される確率値に基づき、意図が推定される。当該方式によれば、例えば、「ラーメン屋と中華料理を検索して。」等、1つの文字列が、「ラーメン屋を検索」という意図と、「中華料理を検索」という意図を含む、並列の構造を持つ場合でも、発話者等の意図が推定される。
高村大也著、「言語処理のための機械学習入門」、第5版、株式会社コロナ社、2010年8月5日、p.99-146
このような、非特許文献1に開示されている意図推定の方式を、1つの発話に複数の意図が含まれ得る場合にも適用する場合、意図毎に別々のモデルを学習し、実行時に各モデルに基づく判定結果を統合することになる。
しかしながら、上述したような、1つの発話に対して、実行時に複数のモデルに基づく判定結果を統合する方式では、発話が1つの意図しか含まない場合(以下、単意図発話ともいう)でも、複数のモデルそれぞれに基づく意図推定を行うため、複数の意図が推定されて出力されることがあり、全体として意図の推定精度が低くなる場合があるという課題があった。
しかしながら、上述したような、1つの発話に対して、実行時に複数のモデルに基づく判定結果を統合する方式では、発話が1つの意図しか含まない場合(以下、単意図発話ともいう)でも、複数のモデルそれぞれに基づく意図推定を行うため、複数の意図が推定されて出力されることがあり、全体として意図の推定精度が低くなる場合があるという課題があった。
この発明は上記のような課題を解決するためになされたもので、取得した文字列が単意図文字列、複意図文字列のどちらもあり得る場合においても、精度よく意図を推定することができる意図推定装置を提供することを目的とする。
この発明に係る意図推定装置は、取得した文字列に基づき当該文字列に含まれる形態素の解析を行う形態素解析部と、文字列に対する意図数を推定し、推定した意図数に応じて、当該文字列が、一つしか意図を含まない単意図文字列であるか、複数の意図を含む複意図文字列であるかを判断する意図数推定部と、意図数推定部が、文字列は単意図文字列であると判断した場合、形態素解析部が解析した形態素に基づき、意図毎に形態素との関連度が対応付けられた単意図推定モデルを用いて、当該単意図文字列に対する意図を単意図として推定する単意図推定部と、意図数推定部が、文字列は複意図文字列であると判断した場合、形態素解析部が解析した形態素に基づき、複数の意図毎に形態素との関連度が対応付けられた複合意図推定モデルを用いて、当該複意図文字列に対する複数の意図を推定する複合意図推定部と、複合意図推定部が推定した複数の意図を複合意図として統合する推定結果統合部とを備えたものである。
この発明によれば、ユーザの意図を推定する精度を向上することができる。
以下、この発明の実施の形態について、図面を参照しながら詳細に説明する。
実施の形態1.
実施の形態1.
実施の形態1に係る意図推定装置1は、一例として、車両のドライバ等のユーザに対して経路案内等を行うナビゲーション装置に搭載され、ユーザが発話した発話内容から、ユーザの意図を推定し、当該推定したユーザの意図に応じた操作を、ナビゲーション装置に実行させる制御を行うものとする。意図推定装置1が、ナビゲーション装置と、ネットワーク等を介して接続されるようにしてもよい。
なお、ナビゲーション装置に搭載される例等は一例に過ぎず、実施の形態1に係る意図推定装置1は、ナビゲーション装置のユーザに限らず、ユーザから発話等によって入力された情報を受け付け、当該受け付けた情報に応じた動作を行うあらゆる装置において、当該装置のユーザの意図を推定する意図推定装置に適用できる。
なお、ナビゲーション装置に搭載される例等は一例に過ぎず、実施の形態1に係る意図推定装置1は、ナビゲーション装置のユーザに限らず、ユーザから発話等によって入力された情報を受け付け、当該受け付けた情報に応じた動作を行うあらゆる装置において、当該装置のユーザの意図を推定する意図推定装置に適用できる。
図1は、実施の形態1に係る意図推定装置1の構成例を示す図である。
意図推定装置1は、図1に示すように、音声受付部101と、音声認識部102と、形態素解析部103と、係り受け解析部104と、意図数推定モデル記憶部105と、意図数推定部106と、単意図推定モデル記憶部107と、単意図推定部108と、複合意図推定モデル記憶部109と、複合意図推定部110と、推定結果統合部111と、コマンド実行部112と、応答生成部113と、通知制御部114とを備える。
なお、この実施の形態1では、図1に示すように、意図数推定モデル記憶部105、単意図推定モデル記憶部107、及び、複合意図推定モデル記憶部109は、意図推定装置1に備えられるものとするが、これに限らず、意図数推定モデル記憶部105、単意図推定モデル記憶部107、及び、複合意図推定モデル記憶部109は、意図推定装置1の外部の、意図推定装置1が参照可能な場所に備えられるものとしてもよい。
意図推定装置1は、図1に示すように、音声受付部101と、音声認識部102と、形態素解析部103と、係り受け解析部104と、意図数推定モデル記憶部105と、意図数推定部106と、単意図推定モデル記憶部107と、単意図推定部108と、複合意図推定モデル記憶部109と、複合意図推定部110と、推定結果統合部111と、コマンド実行部112と、応答生成部113と、通知制御部114とを備える。
なお、この実施の形態1では、図1に示すように、意図数推定モデル記憶部105、単意図推定モデル記憶部107、及び、複合意図推定モデル記憶部109は、意図推定装置1に備えられるものとするが、これに限らず、意図数推定モデル記憶部105、単意図推定モデル記憶部107、及び、複合意図推定モデル記憶部109は、意図推定装置1の外部の、意図推定装置1が参照可能な場所に備えられるものとしてもよい。
音声受付部101は、ユーザの発話を含む音声を受け付ける。音声受付部101は、受け付けた音声の情報を音声認識部102に出力する。
音声認識部102は、音声受付部101が受け付けた音声に対応する音声データを音声認識した上で文字列に変換する。音声認識部102は、文字列を形態素解析部103に出力する。
形態素解析部103は、音声認識部102から出力された文字列に対して形態素解析を行う。
ここで、形態素解析とは、文字列を、言語として意味を持つ最小単位である形態素に区切り、辞書を利用して品詞を付与する、既存の自然言語処理技術である。例えば、「東京タワーへ行く」という文字列に対して形態素解析が行われると、当該文字列は、「東京タワー/固有名詞、へ/格助詞、行く/動詞」のような形態素に区切られる。
形態素解析部103は、形態素解析結果を、係り受け解析部104及び意図数推定部106に出力する。
ここで、形態素解析とは、文字列を、言語として意味を持つ最小単位である形態素に区切り、辞書を利用して品詞を付与する、既存の自然言語処理技術である。例えば、「東京タワーへ行く」という文字列に対して形態素解析が行われると、当該文字列は、「東京タワー/固有名詞、へ/格助詞、行く/動詞」のような形態素に区切られる。
形態素解析部103は、形態素解析結果を、係り受け解析部104及び意図数推定部106に出力する。
係り受け解析部104は、形態素解析部103による形態素解析後の文字列に対して、形態素間の関係性の解析を行い、係り受け情報を生成する。ここで、形態素間の関係性とは、文字列に含まれる形態素の係り受けの関係である。係り受けの関係とは、例えば「動作対象」、「並列関係」等の、形態素間の関係をいう。係り受け解析部104は、係り受けの解析手法として、例えば、Shift-reduce、または、全域木等、既存の解析手法を用いればよい。
係り受け解析部104は、形態素間の関係性の解析結果を、係り受け情報として意図数推定部106に出力する。
係り受け解析部104は、形態素間の関係性の解析結果を、係り受け情報として意図数推定部106に出力する。
意図数推定モデル記憶部105は、意図数推定モデルを記憶する。意図数推定モデルとは、係り受け情報を特徴量として意図数推定を行うためのモデルである。
図2は、実施の形態1における意図数推定モデルの一例を示す図である。
図2に例示した意図数推定モデルにおいては、各意図数と、係り受け情報との関連度がスコアとして記述されている。
この実施の形態1では、係り受け情報は、各形態素間の関係性及びその出現件数が“_”で接続される形で表現されている。
例えば図2のように、「並列関係」の関係にある形態素の組が1つの文字列の中に1回出現している場合には、係り受け情報は、「並列関係_1件」となる。
図2に示された係り受け情報のうち、「動作対象_1件」は、一つの文字列に「動作対象」の関係にある形態素の組が1組しかないことを示すため、意図数も「1」となる場合が多い。したがって、図2に示すように、「動作対象_1件」については、意図数「1件」に対するスコアが、意図数「2件」及び「3件」に対するスコアよりも高くなる。これに対し、「並列関係_1件」及び「動作対象_2件」については、いずれも意図数が2以上になる可能性が高いので、意図数「2件」及び「3件」に対するスコアが、意図数「1件」に対するスコアよりも高くなる。このように、意図数推定モデルでは、意図数と係り受け情報の関連度に応じて、当該関連度が高いほど高いスコアが設定されている。
なお、説明を容易にするため、図2では、意図数について、「1件」、「2件」及び「3件」の三種類のみを示している。
この実施の形態1では、図2に例示したような意図数推定モデルを用いて、統計的な手法で、ユーザの意図数を推定する。
図2に例示した意図数推定モデルにおいては、各意図数と、係り受け情報との関連度がスコアとして記述されている。
この実施の形態1では、係り受け情報は、各形態素間の関係性及びその出現件数が“_”で接続される形で表現されている。
例えば図2のように、「並列関係」の関係にある形態素の組が1つの文字列の中に1回出現している場合には、係り受け情報は、「並列関係_1件」となる。
図2に示された係り受け情報のうち、「動作対象_1件」は、一つの文字列に「動作対象」の関係にある形態素の組が1組しかないことを示すため、意図数も「1」となる場合が多い。したがって、図2に示すように、「動作対象_1件」については、意図数「1件」に対するスコアが、意図数「2件」及び「3件」に対するスコアよりも高くなる。これに対し、「並列関係_1件」及び「動作対象_2件」については、いずれも意図数が2以上になる可能性が高いので、意図数「2件」及び「3件」に対するスコアが、意図数「1件」に対するスコアよりも高くなる。このように、意図数推定モデルでは、意図数と係り受け情報の関連度に応じて、当該関連度が高いほど高いスコアが設定されている。
なお、説明を容易にするため、図2では、意図数について、「1件」、「2件」及び「3件」の三種類のみを示している。
この実施の形態1では、図2に例示したような意図数推定モデルを用いて、統計的な手法で、ユーザの意図数を推定する。
意図数推定部106は、係り受け解析部104から出力された係り受け情報に基づき、意図数推定モデル記憶部105に記憶されている意図数推定モデルを用いて文字列に含まれる意図数を推定する。意図数推定部106による意図数推定の具体的な手法は後述する。
意図数推定部106は、推定した意図数に応じて、音声受付部101が受け付けた音声に基づく文字列が、単意図発話であるか、複意図発話であるかを判断し、当該判断結果に応じて、形態素解析部103が出力した、文字列の形態素解析結果を、単意図推定部108、あるいは、複合意図推定部110に出力する。具体的には、意図数推定部106は、音声受付部101が受け付けた音声に基づく文字列が単意図発話による単意図文字列であると判断した場合は、形態素解析部103が出力した、文字列の形態素解析結果を、単意図推定部108に出力する。また、音声受付部101が受け付けた音声に基づく文字列が複意図発話であると判断した場合は、形態素解析部103が出力した、文字列の形態素解析結果を、複合意図推定部110に出力する。
意図数推定部106は、推定した意図数に応じて、音声受付部101が受け付けた音声に基づく文字列が、単意図発話であるか、複意図発話であるかを判断し、当該判断結果に応じて、形態素解析部103が出力した、文字列の形態素解析結果を、単意図推定部108、あるいは、複合意図推定部110に出力する。具体的には、意図数推定部106は、音声受付部101が受け付けた音声に基づく文字列が単意図発話による単意図文字列であると判断した場合は、形態素解析部103が出力した、文字列の形態素解析結果を、単意図推定部108に出力する。また、音声受付部101が受け付けた音声に基づく文字列が複意図発話であると判断した場合は、形態素解析部103が出力した、文字列の形態素解析結果を、複合意図推定部110に出力する。
なお、この実施の形態1では、意図数推定モデルを用いて、統計的な手法で意図数を推定するが、これに限らない。統計的な手法の代わりに、ルールとして係り受け情報と意図数の対応関係を事前に用意し、意図数を推定してもよい。例えば、「文字列の中に、施設名及び施設種類の「並列関係」が1件のみであれば、当文字列が含む意図数を「2」とする。」のようなルールにより意図数を推定することが可能である。
また、後述する、この実施の形態1における意図推定の方式としては、例えば最大エントロピー法が利用できる。単意図推定部と複合意図推定部は、意図推定の際に、統計的手法を利用して、予め大量に収集した形態素と意図の組から、入力された形態素に対応する意図がどれだけ尤もらしいかを推定する。
単意図推定モデル記憶部107は、形態素を特徴量として意図推定を行うための意図推定モデルを記憶する。意図は、「<主意図>[<スロット名>=<スロット値>、・・・]」のような形で表現することができる。ここで、主意図とは、意図の分類または機能を示すものである。ナビゲーション装置の例では、主意図とは、目的地設定、または、音楽を聞く等、ユーザが、例えば入力装置(図示省略)を最初に操作して行った入力に対応して発生する、上位層のコマンドに対応する。
スロット名及びスロット値は、主意図を実行するために必要な情報を示す。例えば、「近くのレストランを検索する」という文字列に含まれる意図は、主意図が「周辺検索」であり、スロット名が「施設種類」であり、スロット値が「レストラン」である。よって、近くのレストランを検索する」という文字列に含まれる意図は、「周辺検索[施設種類=レストラン]」のように表すことができる。
スロット名及びスロット値は、主意図を実行するために必要な情報を示す。例えば、「近くのレストランを検索する」という文字列に含まれる意図は、主意図が「周辺検索」であり、スロット名が「施設種類」であり、スロット値が「レストラン」である。よって、近くのレストランを検索する」という文字列に含まれる意図は、「周辺検索[施設種類=レストラン]」のように表すことができる。
図3は、実施の形態1における単意図推定モデルの一例を示す図である。
図3に示すように、単意図推定モデルは、「目的地設定[施設=○○]」(○○は具体的な施設名であり、以下同じ)または「周辺検索[施設種類=レストラン]」等の意図に対する各形態素のスコアを表すものである。この実施の形態1の単意図推定モデルにおいて、意図に対する各形態素のスコアとは、意図と各形態素との関連度であり、意図と各形態素との関連度が高いほど、各形態素のスコアは高く設定されている。単意図推定モデルは、図3に示すように、意図と形態素との関連度の学習によって作成された、意図毎に形態素との関係度を対応付けたモデルである。
例えば、図3に示すように、形態素「行く」または「目的地」については、ユーザは目的地設定を意図している可能性が高いので、意図「目的地設定[施設=○○]」における、形態素「行く」または「目的地」のスコアは、他の形態素のスコアよりも高くなる。一方で、形態素「美味しい」または「食事」については、ユーザは周辺レストランの検索を意図している可能性が高いので、意図「周辺検索[施設種類=レストラン]」における、形態素「美味しい」または「食事」のスコアは、他の形態素のスコアよりも高くなる。
図3に示すように、単意図推定モデルは、「目的地設定[施設=○○]」(○○は具体的な施設名であり、以下同じ)または「周辺検索[施設種類=レストラン]」等の意図に対する各形態素のスコアを表すものである。この実施の形態1の単意図推定モデルにおいて、意図に対する各形態素のスコアとは、意図と各形態素との関連度であり、意図と各形態素との関連度が高いほど、各形態素のスコアは高く設定されている。単意図推定モデルは、図3に示すように、意図と形態素との関連度の学習によって作成された、意図毎に形態素との関係度を対応付けたモデルである。
例えば、図3に示すように、形態素「行く」または「目的地」については、ユーザは目的地設定を意図している可能性が高いので、意図「目的地設定[施設=○○]」における、形態素「行く」または「目的地」のスコアは、他の形態素のスコアよりも高くなる。一方で、形態素「美味しい」または「食事」については、ユーザは周辺レストランの検索を意図している可能性が高いので、意図「周辺検索[施設種類=レストラン]」における、形態素「美味しい」または「食事」のスコアは、他の形態素のスコアよりも高くなる。
単意図推定部108は、形態素解析部103が出力した、文字列の形態素解析結果に基づき、単意図推定モデル記憶部107に記憶されている単意図推定モデルを用いてユーザの意図を推定する。具体的には、単意図推定部108は、単意図推定モデルを用いて、形態素解析部103によって形態素解析された形態素と意図とが対応付けられたスコアが一番大きくなる意図を、ユーザの意図と推定する。単意図推定部108は、推定結果を、単意図推定結果としてコマンド実行部112に出力する。
複合意図推定モデル記憶部109は、意図毎に別々のモデルの学習によって作成された複合意図推定モデルを記憶する。複合意図推定モデルは、各意図に対して、推定対象意図の学習データを正例とし、それ以外の意図の学習データを全て負例として、統計的な手法による学習によって作成されたモデルであり、各意図が推定対象意図に所属するかどうかの2値について判断するためのモデルである。
図4は、実施の形態1における複合意図推定モデルの一例を示す図である。
複合意図推定モデルは、意図毎に生成された複数の判定用意図推定モデルを含む。
なお、図4では、説明を容易にするため、意図の数は「目的地設定[施設=○○]」(図4A参照)、「周辺検索[施設種類=レストラン]」(図4B参照)、及び「経由地追加[施設=○○]」(図4C参照)の三つとして例を示している。この実施の形態1の複合意図推定モデルにおいて、意図に対する各形態素のスコアとは、意図と各形態素との関連度であり、意図と各形態素との関連度が高いほど、各形態素のスコアは高く設定されている。複合意図推定モデルは、図4に示すように、複数の意図について、別々に、意図と形態素との関連度の学習によって作成され、意図毎に形態素との関係度を対応付けたモデルである。
複合意図推定モデルは、意図毎に生成された複数の判定用意図推定モデルを含む。
なお、図4では、説明を容易にするため、意図の数は「目的地設定[施設=○○]」(図4A参照)、「周辺検索[施設種類=レストラン]」(図4B参照)、及び「経由地追加[施設=○○]」(図4C参照)の三つとして例を示している。この実施の形態1の複合意図推定モデルにおいて、意図に対する各形態素のスコアとは、意図と各形態素との関連度であり、意図と各形態素との関連度が高いほど、各形態素のスコアは高く設定されている。複合意図推定モデルは、図4に示すように、複数の意図について、別々に、意図と形態素との関連度の学習によって作成され、意図毎に形態素との関係度を対応付けたモデルである。
複合意図推定部110は、複合意図推定モデル記憶部109に記憶されている複合意図推定モデルを用いて、判定用意図推定モデル毎に、形態素解析部103が出力した、文字列の形態素解析結果に基づき、音声受付部101で受け付けた音声に基づく文字列が、該当の意図であるか否かを判定する。具体的には、複合意図推定部110は、判定用意図推定モデル毎に、形態素解析部103によって形態素解析された形態素と意図とが対応付けられたスコアが、予め設定された閾値以上かどうかを判定し、文字列が、該当の意図であるか否かを判定する。
複合意図推定部110は、複合意図推定モデルに含まれる判定用意図推定モデル毎の判定結果を、推定結果として、推定結果統合部111へ出力する。
複合意図推定部110は、複合意図推定モデルに含まれる判定用意図推定モデル毎の判定結果を、推定結果として、推定結果統合部111へ出力する。
推定結果統合部111は、複合意図推定部110が出力した、複合意図推定モデルに含まれる判定用意図推定モデル毎の推定結果を統合する。
推定結果統合部111は、推定した意図の統合結果を、複合意図推定結果としてコマンド実行部112へ出力する。
推定結果統合部111は、推定した意図の統合結果を、複合意図推定結果としてコマンド実行部112へ出力する。
コマンド実行部112は、単意図推定部108から出力された単意図推定結果、または、推定結果統合部111から出力された複合意図推定結果に基づき、対応するコマンドを、ナビゲーション装置のコマンド処理部に、実行させる。例えば、“美味しい店を探して”というユーザの発話に対して、単意図推定部108が、「周辺検索[施設種類=レストラン]」の意図を推定し、単意図推定結果として出力した場合、コマンド実行部112は、周辺のレストランを検索するというコマンドを、ナビゲーション装置のコマンド処理部に、実行させる。
コマンド実行部112は、コマンド処理部に実行させたコマンドの内容を示す実行操作情報を、応答生成部113に出力する。
コマンド実行部112は、コマンド処理部に実行させたコマンドの内容を示す実行操作情報を、応答生成部113に出力する。
応答生成部113は、コマンド実行部112から出力された実行操作情報に基づき、コマンド実行部112がコマンド処理部に実行させたコマンドに対応する応答データを生成する。応答データは、テキストデータの形式で生成してもよいし、音声データの形式で生成してもよい。
応答生成部113が、応答データを音声データの形式で生成する場合、応答生成部113は、例えば、「周辺のレストランを検索しました。リストから選択してください」のような合成音を出力するための音声データを生成すればよい。
応答生成部113は、生成した応答データを、通知制御部114に出力する。
応答生成部113が、応答データを音声データの形式で生成する場合、応答生成部113は、例えば、「周辺のレストランを検索しました。リストから選択してください」のような合成音を出力するための音声データを生成すればよい。
応答生成部113は、生成した応答データを、通知制御部114に出力する。
通知制御部114は、応答生成部113から出力された応答データを、例えば、ナビゲーション装置が備えるスピーカ等の出力装置から出力させ、ユーザに通知する。つまり、通知制御部114は、出力装置を制御して、コマンド処理部によりコマンドが実行されたことをユーザに通知させる。なお、通知の態様については、表示による通知、音声による通知、または振動による通知等、ユーザが通知を認識できるものであれば何でもよい。
次に、この実施の形態1に係る意図推定装置1のハードウェア構成について説明する。
図5A,図5Bは、この発明の実施の形態1に係る意図推定装置1のハードウェア構成の一例を示す図である。
この発明の実施の形態1において、音声認識部102と、形態素解析部103と、係り受け解析部104と、意図数推定部106と、単意図推定部108と、複合意図推定部110と、推定結果統合部111と、コマンド実行部112と、応答生成部113と、通知制御部114の各機能は、処理回路501により実現される。すなわち、意図推定装置1は、受け付けたユーザの発話に関する情報に基づき、ユーザの意図を推定する処理、または、推定した意図に応じた機械コマンドを実行及び通知させる処理の制御を行うための処理回路501を備える。
処理回路501は、図5Aに示すように専用のハードウェアであっても、図5Bに示すようにメモリ505に格納されるプログラムを実行するCPU(Central Processing Unit)506であってもよい。
図5A,図5Bは、この発明の実施の形態1に係る意図推定装置1のハードウェア構成の一例を示す図である。
この発明の実施の形態1において、音声認識部102と、形態素解析部103と、係り受け解析部104と、意図数推定部106と、単意図推定部108と、複合意図推定部110と、推定結果統合部111と、コマンド実行部112と、応答生成部113と、通知制御部114の各機能は、処理回路501により実現される。すなわち、意図推定装置1は、受け付けたユーザの発話に関する情報に基づき、ユーザの意図を推定する処理、または、推定した意図に応じた機械コマンドを実行及び通知させる処理の制御を行うための処理回路501を備える。
処理回路501は、図5Aに示すように専用のハードウェアであっても、図5Bに示すようにメモリ505に格納されるプログラムを実行するCPU(Central Processing Unit)506であってもよい。
処理回路501が専用のハードウェアである場合、処理回路501は、例えば、単一回路、複合回路、プログラム化したプロセッサ、並列プログラム化したプロセッサ、ASIC(Application Specific Integrated Circuit)、FPGA(Field-Programmable Gate Array)、またはこれらを組み合わせたものが該当する。
処理回路501がCPU506の場合、音声認識部102と、形態素解析部103と、係り受け解析部104と、意図数推定部106と、単意図推定部108と、複合意図推定部110と、推定結果統合部111と、コマンド実行部112と、応答生成部113と、通知制御部114の各機能は、ソフトウェア、ファームウェア、または、ソフトウェアとファームウェアとの組み合わせにより実現される。すなわち、音声認識部102と、形態素解析部103と、係り受け解析部104と、意図数推定部106と、単意図推定部108と、複合意図推定部110と、推定結果統合部111と、コマンド実行部112と、応答生成部113と、通知制御部114は、HDD(Hard Disk Drive)502、メモリ505等に記憶されたプログラムを実行するCPU506、またはシステムLSI(Large-Scale Integration)等の処理回路により実現される。また、HDD502、またはメモリ505等に記憶されたプログラムは、音声認識部102と、形態素解析部103と、係り受け解析部104と、意図数推定部106と、単意図推定部108と、複合意図推定部110と、推定結果統合部111と、コマンド実行部112と、応答生成部113と、通知制御部114の手順や方法をコンピュータに実行させるものであるとも言える。ここで、メモリ505とは、例えば、RAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリ、EPROM(Erasable Programmable Read Only Memory)、EEPROM(Electrically Erasable Programmable Read-Only Memory)等の、不揮発性もしくは揮発性の半導体メモリ、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、またはDVD(Digital Versatile Disc)等が該当する。
なお、音声認識部102と、形態素解析部103と、係り受け解析部104と、意図数推定部106と、単意図推定部108と、複合意図推定部110と、推定結果統合部111と、コマンド実行部112と、応答生成部113と、通知制御部114の各機能について、一部を専用のハードウェアで実現し、一部をソフトウェアまたはファームウェアで実現するようにしてもよい。例えば、音声認識部102については専用のハードウェアとしての処理回路501でその機能を実現し、形態素解析部103と、係り受け解析部104と、意図数推定部106と、単意図推定部108と、複合意図推定部110と、推定結果統合部111と、コマンド実行部112と、応答生成部113と、通知制御部114については処理回路がメモリ505に格納されたプログラムを読み出して実行することによってその機能を実現することが可能である。
意図数推定モデル記憶部105、単意図推定モデル記憶部107、及び、複合意図推定モデル記憶部109は、例えば、HDD502を使用する。なお、これは一例にすぎず、意図数推定モデル記憶部105、単意図推定モデル記憶部107、及び、複合意図推定モデル記憶部109は、DVD、またはメモリ505等によって構成されるものであってもよい。
また、意図推定装置1は、ナビゲーション装置等の外部機器との通信を行う、入力インタフェース装置503、及び、出力インタフェース装置504を有する。
音声受付部101は、入力インタフェース装置503で構成される。
意図数推定モデル記憶部105、単意図推定モデル記憶部107、及び、複合意図推定モデル記憶部109は、例えば、HDD502を使用する。なお、これは一例にすぎず、意図数推定モデル記憶部105、単意図推定モデル記憶部107、及び、複合意図推定モデル記憶部109は、DVD、またはメモリ505等によって構成されるものであってもよい。
また、意図推定装置1は、ナビゲーション装置等の外部機器との通信を行う、入力インタフェース装置503、及び、出力インタフェース装置504を有する。
音声受付部101は、入力インタフェース装置503で構成される。
次に、実施の形態1に係る意図推定装置1の動作について説明する。
まず、意図推定装置1におけるユーザの意図を推定する動作の前提となる、意図数推定モデルの生成処理に関する動作について説明する。
ここでは、意図数推定モデルの生成処理は、意図推定装置1とは別の、意図数推定モデル生成装置2によって行われるものとする。
まず、意図推定装置1におけるユーザの意図を推定する動作の前提となる、意図数推定モデルの生成処理に関する動作について説明する。
ここでは、意図数推定モデルの生成処理は、意図推定装置1とは別の、意図数推定モデル生成装置2によって行われるものとする。
図6は、実施の形態1の意図数推定モデル生成装置2の構成例を示す図である。
意図数推定モデル生成装置2は、図6に示すように、学習用データ記憶部115と、形態素解析部103と、係り受け解析部104と、意図数推定モデル生成部116とを備える。
形態素解析部103及び係り受け解析部104の構成及び動作は、図1等を用いて説明した形態素解析部103及び係り受け解析部104の構成及び動作と同様であるため、同じ符号を付して重複した説明を省略する。
意図数推定モデル生成装置2は、図6に示すように、学習用データ記憶部115と、形態素解析部103と、係り受け解析部104と、意図数推定モデル生成部116とを備える。
形態素解析部103及び係り受け解析部104の構成及び動作は、図1等を用いて説明した形態素解析部103及び係り受け解析部104の構成及び動作と同様であるため、同じ符号を付して重複した説明を省略する。
学習用データ記憶部115は、文字列と意図数との対応関係を学習用データとして記憶する。なお、ここでは、意図数推定モデル生成装置2が学習用データ記憶部115を備えるものとしているが、これに限らず、学習用データ記憶部115は、意図数推定モデル生成装置2の外部の、意図数推定モデル生成装置2が参照可能な場所に備えられるようにしてもよい。
ここで、図7は、実施の形態1において、学習用データ記憶部115に記憶されている学習用データの例を示す図である。
図7に示すように、学習用データは、発話等により音声出力される文字列の例示文である発話の文例(以下、発話文例という)に、対応する意図数が付与されたデータである。例えば、発話文例701「○○へ行きたい」については、意図数「1件」が付与されている。
学習用データは、予め、モデルの作成者等によって作成されるものである。モデルの作成者等は、複数の発話文例について、発話文例毎に予め意図数を付与した学習データを作成し、学習用データ記憶部115に記憶させておく。
図7に示すように、学習用データは、発話等により音声出力される文字列の例示文である発話の文例(以下、発話文例という)に、対応する意図数が付与されたデータである。例えば、発話文例701「○○へ行きたい」については、意図数「1件」が付与されている。
学習用データは、予め、モデルの作成者等によって作成されるものである。モデルの作成者等は、複数の発話文例について、発話文例毎に予め意図数を付与した学習データを作成し、学習用データ記憶部115に記憶させておく。
意図数推定モデル生成部116は、学習用データ記憶部115に記憶されている学習用データ、及び、係り受け解析部104による形態素間の関係性の解析結果に基づき、発話文例と対応する意図数を統計的な手法で学習し、係り受け情報と意図数の対応関係を示す意図数推定モデル(図2参照)を生成する。意図数推定モデル生成部116は、生成した意図数推定モデルを、意図数推定モデル記憶部105に記憶させる。
図8は、実施の形態1において、意図数推定モデル生成装置2が意図数推定モデルを生成する処理を説明するためのフローチャートである。
まず、形態素解析部103は、学習用データ記憶部115に記憶されている学習用データの各文例に対して形態素解析を行う(ステップST801)。例えば、図7の発話文例701の場合、形態素解析部103は、「○○へ行きたい」に対して形態素解析を行い、「○○/名詞、へ/格助詞、行き/動詞、たい/助動詞」という形態素解析結果を得る。形態素解析部103は、形態素解析結果を、係り受け解析部104に出力する。
まず、形態素解析部103は、学習用データ記憶部115に記憶されている学習用データの各文例に対して形態素解析を行う(ステップST801)。例えば、図7の発話文例701の場合、形態素解析部103は、「○○へ行きたい」に対して形態素解析を行い、「○○/名詞、へ/格助詞、行き/動詞、たい/助動詞」という形態素解析結果を得る。形態素解析部103は、形態素解析結果を、係り受け解析部104に出力する。
係り受け解析部104は、形態素解析部103から出力された形態素解析結果に基づき、形態素解析部103が解析した形態素を用いて、係り受け解析を行う(ステップST802)。例えば、発話文例701の場合、係り受け解析部104は、形態素「○○」、「へ」、「行き」及び「たい」に対し係り受け解析を行う。係り受け解析部104は、前記形態素から「動作対象」という形態素間の関係性の解析結果を得て、当該解析結果に意図数を付与して、「動作対象_1件」を係り受け情報として意図数推定モデル生成部116に出力する。
意図数推定モデル生成部116は、係り受け解析部104が出力した係り受け情報に基づき、学習用データ記憶部115に記憶されている学習用データを用いて、意図数推定モデルを生成する(ステップST803)。例えば、発話文例701「○○へ行きたい」の場合、係り受け情報は「動作対象_1件」であり、学習用データに含まれる意図数は図7に示すように「意図数1件」である。したがって、意図数推定モデル生成部116は、発話文例701を用いた場合、係り受け情報「動作対象_1件」に対しては、「意図数1件」のスコアが他の意図数のスコアよりも高くなるように学習する。意図数推定モデル生成部116は、学習用データに含まれる全ての発話文例に対して上記のステップST801~ステップST803と同様の処理を行い、最終的に図2に示すような意図数推定モデルを生成する。
そして、意図数推定モデル生成部116は、生成した意図数推定モデルを、意図数推定モデル記憶部105に記憶させる。なお、意図数推定モデル記憶部105は、例えば、ネットワークを介して、意図数推定モデル生成装置2がアクセス可能な場所に備えられている。
そして、意図数推定モデル生成部116は、生成した意図数推定モデルを、意図数推定モデル記憶部105に記憶させる。なお、意図数推定モデル記憶部105は、例えば、ネットワークを介して、意図数推定モデル生成装置2がアクセス可能な場所に備えられている。
なお、ここでは、意図数推定モデル生成部116は、係り受け解析部104から出力されたすべての係り受け情報を特徴量として意図数推定に使うものとしたが、意図数推定モデル生成部116の構成は、これに限るものではない。意図数推定モデル生成部116は、「並列関係のみ使用」あるいは「動作の対象のみ使用」のように明確な規則を決めて特徴量を選択する構成、あるいは統計的な手法を用いて意図数推定に効果が高い係り受け情報のみを使用する構成とすることもできる。
また、ここでは、意図推定装置1とは別の意図数推定モデル生成装置2が、意図数推定モデルを生成し、意図数推定モデル記憶部105に記憶させるものとしたが、これに限らず、意図推定装置1が意図数推定モデルを生成して意図数推定モデル記憶部105に記憶させるものとしてもよい。この場合、意図推定装置1は、図1を用いて説明した構成に加え、学習用データ記憶部115及び意図数推定モデル生成部116をさらに備える。なお、学習用データ記憶部115は、意図推定装置1の外部の、意図推定装置1が参照可能な場所に備えられるようにしてもよい。
続いて、上記のとおり意図数推定モデルが生成され、意図数推定モデル記憶部105に記憶されていることを前提に、当該意図数推定モデルを用いた、実施の形態1に係る意図推定装置1における意図推定処理に関する動作について説明する。
ここで、図9は、実施の形態1において、ユーザとナビゲーション装置との間で行われる対話例を示す図である。
図10は、実施の形態1に係る意図推定装置1の動作を説明するためのフローチャートである。
図10は、実施の形態1に係る意図推定装置1の動作を説明するためのフローチャートである。
まず、図9に示すように、ナビゲーション装置が、「ピっと鳴ったらお話ください。」という音声を、例えばナビゲーション装置が備えるスピーカから出力する(S1)。具体的には、意図推定装置1の音声制御部(図示省略)が、ナビゲーション装置に対して、「ピっと鳴ったらお話ください。」という音声を出力させる。
ナビゲーション装置が、「ピっと鳴ったらお話ください」という音声を出力すると、当該音声に対し、ユーザが「○○へ行きたい。」と発話する(U1)。なお、図9では、ナビゲーション装置が意図推定装置1から指示を受けて出力する音声を「S」と表し、ユーザからの発話を「U」と表している。
ナビゲーション装置が、「ピっと鳴ったらお話ください」という音声を出力すると、当該音声に対し、ユーザが「○○へ行きたい。」と発話する(U1)。なお、図9では、ナビゲーション装置が意図推定装置1から指示を受けて出力する音声を「S」と表し、ユーザからの発話を「U」と表している。
ユーザが「○○へ行きたい」(U1)と発話すると、音声受付部101が当該発話による音声を受け付ける。音声認識部102は、音声受付部101が受け付けた音声に対して音声認識処理を行い(ステップST1001)、当該音声を文字列に変換する。音声認識部102は、変換した文字列を形態素解析部103に出力する。
形態素解析部103は、音声認識部102から出力された文字列に対し、形態素解析処理を行う(ステップST1002)。例えば、形態素解析部103は、「○○」、「へ」、「行き」及び「たい」という形態素を得て、当該形態素の情報を、形態素解析結果として係り受け解析部104及び意図数推定部106に出力する。
形態素解析部103は、音声認識部102から出力された文字列に対し、形態素解析処理を行う(ステップST1002)。例えば、形態素解析部103は、「○○」、「へ」、「行き」及び「たい」という形態素を得て、当該形態素の情報を、形態素解析結果として係り受け解析部104及び意図数推定部106に出力する。
係り受け解析部104は、形態素解析部103から出力された形態素解析結果に対し係り受け解析処理を実施する(ステップST1003)。例えば、係り受け解析部104は、形態素「○○」は「行き」という動作の対象であるため、音声認識部102から出力された文字列には、「動作対象」という形態素間の関係性があると解析する。また、「動作対象」が1件であるため、形態素解析部103は、「動作対象_1件」と解析する。そして、形態素解析部103は、「動作対象_1件」との解析結果を、係り受け情報とし、意図数推定部106に出力する。
意図数推定部106は、ステップST1003において係り受け解析部104から出力された係り受け情報「動作対象_1件」を特徴量として、意図数推定モデル記憶部105に記憶されている意図数推定モデルを用いて、意図数を推定する(ステップST1004)。意図数推定部106による意図数の推定動作について、図11を用いて詳細に説明する。
図11は、図10のステップST1004における、意図数推定部106の動作について説明するためのフローチャートである。
まず、意図数推定部106は、係り受け解析部104から出力された係り受け情報と意図数推定モデルとを照合し、各意図数に対する各係り受け情報のスコアを取得する(ステップST1101)。
まず、意図数推定部106は、係り受け解析部104から出力された係り受け情報と意図数推定モデルとを照合し、各意図数に対する各係り受け情報のスコアを取得する(ステップST1101)。
ここで、図12は、実施の形態1において、意図数推定部106が取得する、各意図数に対する係り受け情報のスコアの一例を示す図である。
図12に示すように、特徴量とする係り受け情報が「動作対象_1件」である場合、意図数推定部106は、例えば、意図数「1件」に対する特徴量「動作対象_1件」のスコアとして、0.2を取得する。意図数推定部106は、他の意図数についても、同様に、特徴量「動作対象_1件」のスコアを取得する。
図12に示すように、特徴量とする係り受け情報が「動作対象_1件」である場合、意図数推定部106は、例えば、意図数「1件」に対する特徴量「動作対象_1件」のスコアとして、0.2を取得する。意図数推定部106は、他の意図数についても、同様に、特徴量「動作対象_1件」のスコアを取得する。
次に、意図数推定部106は、ステップST1101で取得した各意図数のスコアに基づき、意図数を推定する対象としている1つの文字列である推定対象に対する各意図数の最終スコアを算出する(ステップST1102)。この実施の形態1において、意図数推定部106が求める最終スコアとは、各意図数について、当該意図数に対する各係り受け情報のスコアを全て乗算して算出された積である。すなわち、最終スコアとは、各意図数について、当該意図数に対する、意図数推定に用いる各特徴量のスコアを全て乗算して算出された積である。
図13は、実施の形態1において、意図数推定部106が最終スコアを算出するために用いる計算式を示す図である。
図13において、Sは、推定対象に対する複数の意図数のうち、最終スコアの算出対象としたある意図数(以下、対象意図数という)の最終スコアである。また、図13において、Siは、対象意図数に対するi番目の特徴量のスコアである。
図13は、実施の形態1において、意図数推定部106が最終スコアを算出するために用いる計算式を示す図である。
図13において、Sは、推定対象に対する複数の意図数のうち、最終スコアの算出対象としたある意図数(以下、対象意図数という)の最終スコアである。また、図13において、Siは、対象意図数に対するi番目の特徴量のスコアである。
図14は、実施の形態1において、意図数推定部106が算出する、各意図数の最終スコアの一例を示す図である。
意図数推定部106は、図13に示す計算式を用いて、図14に示す最終スコアを算出する。この例では、特徴量となる係り受け情報は「動作対象_1件」の1つであるため、最終スコアと特徴量「動作対象_1件」に対応するスコアは同じである。
図14に示したように、意図数「1件」に対して、特徴量「動作対象_1件」のスコアは0.2となり、最終スコアSも0.2となる。意図数推定部106は、同様に、他の意図数についても、それぞれ最終スコアを算出する。
意図数推定部106は、図13に示す計算式を用いて、図14に示す最終スコアを算出する。この例では、特徴量となる係り受け情報は「動作対象_1件」の1つであるため、最終スコアと特徴量「動作対象_1件」に対応するスコアは同じである。
図14に示したように、意図数「1件」に対して、特徴量「動作対象_1件」のスコアは0.2となり、最終スコアSも0.2となる。意図数推定部106は、同様に、他の意図数についても、それぞれ最終スコアを算出する。
図11のフローチャートに戻る。
意図数推定部106は、ステップST1102において算出した各意図数の最終スコアに基づき、意図数を推定する(ステップST1103)。具体的には、意図数推定部106は、算出した推定対象の各意図数のうち、最も高い最終スコアを有する意図数を、推定対象の意図数として推定する。
ここでは、意図数推定部106は、意図数「1件」を意図数として推定する。
意図数推定部106は、ステップST1102において算出した各意図数の最終スコアに基づき、意図数を推定する(ステップST1103)。具体的には、意図数推定部106は、算出した推定対象の各意図数のうち、最も高い最終スコアを有する意図数を、推定対象の意図数として推定する。
ここでは、意図数推定部106は、意図数「1件」を意図数として推定する。
図10のフローチャートに戻る。
意図数推定部106は、ステップST1004で意図数を推定した結果、意図数が1より大きいかどうかを判定する(ステップST1005)。
ステップST1005において、推定した意図数が1より大きい場合(ステップST1005の“YES”の場合)、ステップST1010~ステップST1014へ進む。ステップST1005において、推定した意図数が1より大きくなった場合の、ステップST1010以降の処理の詳細については、具体例をあげて後述する。
意図数推定部106は、ステップST1004で意図数を推定した結果、意図数が1より大きいかどうかを判定する(ステップST1005)。
ステップST1005において、推定した意図数が1より大きい場合(ステップST1005の“YES”の場合)、ステップST1010~ステップST1014へ進む。ステップST1005において、推定した意図数が1より大きくなった場合の、ステップST1010以降の処理の詳細については、具体例をあげて後述する。
ステップST1005において、推定した意図数が1以下の場合(ステップST1005の“NO”の場合)、ステップST1006へ進む。
例えば、図9のU1の例では、意図数推定部106は意図数を推定した結果、意図数が「1」であるため、ステップST1006へ進む。
ステップST1006において、意図数推定部106は、ステップST1002において形態素解析部103が形態素解析した形態素解析結果である文字列を単意図推定部108に出力する。そして、単意図推定部108は、単意図推定モデル記憶部107に記憶された単意図推定モデル(図3参照)を用いて、形態素解析結果である文字列、すなわち、単意図発話文に対して、ユーザの意図を推定する(ステップST1006)。例えば、文字列が「○○へ行きたい。」である場合、「目的地設定[施設=○○]」をユーザの意図と推定する。具体的には、単意図推定部108は、単意図推定モデルを用いて、形態素解析部103による、文字列の形態素解析結果のスコアが一番大きくなる意図を、ユーザの意図と推定する。
単意図推定部108は、当該意図推定結果を、単意図推定結果としてコマンド実行部112に出力する。
例えば、図9のU1の例では、意図数推定部106は意図数を推定した結果、意図数が「1」であるため、ステップST1006へ進む。
ステップST1006において、意図数推定部106は、ステップST1002において形態素解析部103が形態素解析した形態素解析結果である文字列を単意図推定部108に出力する。そして、単意図推定部108は、単意図推定モデル記憶部107に記憶された単意図推定モデル(図3参照)を用いて、形態素解析結果である文字列、すなわち、単意図発話文に対して、ユーザの意図を推定する(ステップST1006)。例えば、文字列が「○○へ行きたい。」である場合、「目的地設定[施設=○○]」をユーザの意図と推定する。具体的には、単意図推定部108は、単意図推定モデルを用いて、形態素解析部103による、文字列の形態素解析結果のスコアが一番大きくなる意図を、ユーザの意図と推定する。
単意図推定部108は、当該意図推定結果を、単意図推定結果としてコマンド実行部112に出力する。
コマンド実行部112は、ステップST1006において単意図推定部108から出力された単意図推定結果に対応するコマンドを、ナビゲーション装置のコマンド処理部に、実行させる(ステップST1007)。例えば、コマンド実行部112は、ナビゲーション装置のコマンド処理部に、施設○○を目的地に設定するという操作を実行させる。
また、コマンド実行部112は、ステップST1007で実行させたコマンドの内容を示す実行操作情報を、応答生成部113に出力する。
また、コマンド実行部112は、ステップST1007で実行させたコマンドの内容を示す実行操作情報を、応答生成部113に出力する。
応答生成部113は、ステップST1007においてコマンド実行部112から出力された実行操作情報に基づき、コマンド実行部112がコマンド処理部に実行させたコマンドに対応する応答データを生成する(ステップST1008)。応答生成部113は、生成した応答データを、通知制御部114に出力する。
通知制御部114は、ステップST1008において応答生成部113から出力された応答データに基づく音声を、例えば、ナビゲーション装置が備えるスピーカから出力させる(ステップST1009)。その結果、図9の「S2」に示すように、「○○を目的地に設定しました。」等の音声が出力され、ユーザへの、実行されたコマンドの通知を行うことができる。
次に、図9において「U2」で示すように、ユーザが、「△△も寄って、高速道路を選択して。」と発話したとして、この場合の意図推定装置1の動作を、図10に沿って説明する。
「U2」で示すようにユーザが発話すると、音声受付部101が当該発話による音声を受け付け、音声認識部102は、受け付けた発話による音声に対して音声認識処理を行い(ステップST1001)、文字列に変換する。音声認識部102は、変換した文字列を形態素解析部103及び意図数推定部106に出力する。
形態素解析部103は、音声認識部102から出力された文字列に対し、形態素解析処理を行う(ステップST1002)。例えば、形態素解析部103は、「△△」、「も」、「寄っ」、「て」、「高速道路」、「を」、「選択し」及び「て」の形態素を得、当該形態素の情報を、形態素解析結果として係り受け解析部104に出力する。
「U2」で示すようにユーザが発話すると、音声受付部101が当該発話による音声を受け付け、音声認識部102は、受け付けた発話による音声に対して音声認識処理を行い(ステップST1001)、文字列に変換する。音声認識部102は、変換した文字列を形態素解析部103及び意図数推定部106に出力する。
形態素解析部103は、音声認識部102から出力された文字列に対し、形態素解析処理を行う(ステップST1002)。例えば、形態素解析部103は、「△△」、「も」、「寄っ」、「て」、「高速道路」、「を」、「選択し」及び「て」の形態素を得、当該形態素の情報を、形態素解析結果として係り受け解析部104に出力する。
次に、係り受け解析部104は、形態素解析部103から出力された形態素解析結果に対して係り受け解析処理を行う(ステップST1003)。ここでは、「△△」は「寄っ」の動作の対象であり、「高速道路」は「選択」の動作の対象であり、また動作「寄っ」と「選択」とは並列の関係にあるため、係り受け解析部104は、「動作対象_2件」及び「並列関係_1件」との解析結果を、係り受け情報とし、意図数推定部106に出力する。
意図数推定部106は、取得した係り受け情報「動作対象_2件」及び「並列関係_1件」を特徴量として、意図数推定モデル記憶部105に記憶されている意図数推定モデルを用いて意図数を推定する(ステップST1004)。
ステップST1004の具体的な動作は、上記のように、図11を用いて詳細に説明したとおりであるが、まず、「U1」の場合の処理と同じように、意図数推定部106は、係り受け解析部104から出力された係り受け情報と意図数推定モデルを照合し、各意図数に対する各係り受け情報のスコアを取得する(図11のステップST1101参照)。
続いて、意図数推定部106は、図13で示した計算式より、推定対象の意図数に対する最終スコアを算出する(図11のステップST1102参照)。
ステップST1004の具体的な動作は、上記のように、図11を用いて詳細に説明したとおりであるが、まず、「U1」の場合の処理と同じように、意図数推定部106は、係り受け解析部104から出力された係り受け情報と意図数推定モデルを照合し、各意図数に対する各係り受け情報のスコアを取得する(図11のステップST1101参照)。
続いて、意図数推定部106は、図13で示した計算式より、推定対象の意図数に対する最終スコアを算出する(図11のステップST1102参照)。
図15は、実施の形態1において、意図数推定部106が算出する、各意図数の最終スコアの一例を示す図である。
意図数推定部106は、図13に示す計算式を用いて、ユーザによる発話「U2」に対して、図15に示す最終スコアを算出する。ここでは、意図数「1件」に対して、特徴量「動作対象_2件」のスコアは0.01、「並列関係_1件」のスコアは0.01となる。その結果、意図数推定部106は、発話「U2」に対する意図数「1件」の最終スコアSを1e-4(=0.0001)と算出する。意図数推定部106は、同様に、発話「U2」に対する他の意図数についても、それぞれ最終スコアを算出する。
意図数推定部106は、図13に示す計算式を用いて、ユーザによる発話「U2」に対して、図15に示す最終スコアを算出する。ここでは、意図数「1件」に対して、特徴量「動作対象_2件」のスコアは0.01、「並列関係_1件」のスコアは0.01となる。その結果、意図数推定部106は、発話「U2」に対する意図数「1件」の最終スコアSを1e-4(=0.0001)と算出する。意図数推定部106は、同様に、発話「U2」に対する他の意図数についても、それぞれ最終スコアを算出する。
意図数推定部106は、算出した各意図数の最終スコアに基づき、意図数を推定する(図11のステップST1103参照)。具体的には、意図数推定部106は、算出した推定対象の各意図数のうち、最も高い最終スコアを有する意図数「2件」を、推定対象の意図数として推定する。
図10のフローチャートに戻る。
意図数推定部106は、ステップST1004で意図数を推定した結果、意図数が1より大きいかどうかを判定する(ステップST1005)。
ステップST1005において、推定した意図数が1より大きい場合(ステップST1005の“YES”の場合)、ステップST1010へ進む。
ここでは、推定した意図数は1より大きい「2件」であるため(ステップST1005の“YES”の場合)、ステップST1010に進む。
意図数推定部106は、ステップST1004で意図数を推定した結果、意図数が1より大きいかどうかを判定する(ステップST1005)。
ステップST1005において、推定した意図数が1より大きい場合(ステップST1005の“YES”の場合)、ステップST1010へ進む。
ここでは、推定した意図数は1より大きい「2件」であるため(ステップST1005の“YES”の場合)、ステップST1010に進む。
ステップST1010において、意図数推定部106は、ステップST1002において形態素解析部103が形態素解析した形態素解析結果である文字列を複合意図推定部110に出力する。そして、複合意図推定部110は、複合意図推定モデル記憶部109に記憶された複合意図推定モデル(図4参照)を用いて、形態素結果である文字列、すなわち、複意図発話文に対して、ユーザの意図を推定する(ステップST1010)。
ここで、図16は、この実施の形態1において、複合意図推定部110が推定結果とした、ユーザの意図の判定結果の一例である。
図16では、説明を容易にするため、複合意図推定モデル記憶部109に記憶されている複合意図推定モデルとして、意図「経由地追加[施設=△△]」の判定用意図推定モデル、意図「ルート変更[高速道路優先]」の判定用意図推定モデル、及び、意図「目的地設定[施設=△△]」の判定用意図推定モデルの三つのモデルがあるものとして説明する。すなわち、複合意図推定部110は、形態素解析部103による形態素解析結果である文字列が、この三つの意図に該当するかどうかについて判定する。意図数推定部106は、上記三つの判定用意図推定モデルを用いて判定する意図に対する意図推定スコアが0.5を超えた場合に、当該意図推定スコアが0.5を超えたと判定された意図を、該当意図であると判定するものとする。
なお、意図推定スコアとは、各形態素のスコアを足したものを元に算出される確率値をいう。よって、各判定用意図推定モデルにおいて意図推定スコアを合計すると「1」となる。
図16では、説明を容易にするため、複合意図推定モデル記憶部109に記憶されている複合意図推定モデルとして、意図「経由地追加[施設=△△]」の判定用意図推定モデル、意図「ルート変更[高速道路優先]」の判定用意図推定モデル、及び、意図「目的地設定[施設=△△]」の判定用意図推定モデルの三つのモデルがあるものとして説明する。すなわち、複合意図推定部110は、形態素解析部103による形態素解析結果である文字列が、この三つの意図に該当するかどうかについて判定する。意図数推定部106は、上記三つの判定用意図推定モデルを用いて判定する意図に対する意図推定スコアが0.5を超えた場合に、当該意図推定スコアが0.5を超えたと判定された意図を、該当意図であると判定するものとする。
なお、意図推定スコアとは、各形態素のスコアを足したものを元に算出される確率値をいう。よって、各判定用意図推定モデルにおいて意図推定スコアを合計すると「1」となる。
図16において、図16Aは、意図「経由地追加[施設=△△]」の判定用意図推定モデルの判定結果である。複合意図推定部110は、意図「経由地追加[施設=△△]」の意図推定スコアとして0.75を得る。この場合、意図推定スコアが0.5を超えるため、複合意図推定部110は、意図「経由地追加[施設=△△]」が「U2」の文字列の該当意図であると判定する。
図16において、図16Bは、意図「ルート変更[高速道路優先]」の判定用意図推定モデルの判定結果である。複合意図推定部110は、意図推定スコアが0.7であり、0.5を超えるため(図16B参照)、意図「ルート変更[高速道路優先]」も「U2」の文字列の該当意図であると判定する。
図16において、図16Cは、意図「目的地設定[施設=△△]」の判定用意図推定モデルの判定結果である。複合意図推定部110は、意図「目的地設定[施設=△△]」の意図推定スコアが0.5以下であるため、意図「目的地設定[施設=△△]」ではなく、「他の意図」が「U2」の文字列の該当意図であると判定する。
図16において、図16Bは、意図「ルート変更[高速道路優先]」の判定用意図推定モデルの判定結果である。複合意図推定部110は、意図推定スコアが0.7であり、0.5を超えるため(図16B参照)、意図「ルート変更[高速道路優先]」も「U2」の文字列の該当意図であると判定する。
図16において、図16Cは、意図「目的地設定[施設=△△]」の判定用意図推定モデルの判定結果である。複合意図推定部110は、意図「目的地設定[施設=△△]」の意図推定スコアが0.5以下であるため、意図「目的地設定[施設=△△]」ではなく、「他の意図」が「U2」の文字列の該当意図であると判定する。
複合意図推定部110は、図16A~図16Cで示す三つの意図推定モデルにより得た該当意図である、「経由地追加[施設=△△]」、「ルート変更[高速道路優先]」、及び、「他の意図」を、意図推定結果として推定結果統合部111に出力する。
推定結果統合部111は、ステップST1010において複合意図推定部110から意図推定結果として出力された複数の該当意図のうち、「他の意図」以外の該当意図を、統合結果に加えることで、該当意図を統合する(ステップST1011)。
図16Aに示すように、意図「経由地追加[施設=△△]」の判定用意図推定モデルの判定結果は、意図「経由地追加[施設=△△]」であるため、推定結果統合部111は、意図「経由地追加[施設=△△]」を統合結果に加える。推定結果統合部111は、意図「ルート変更[高速道路優先]」を統合結果に加える。
一方、図16Cに示すように、意図「目的地設定[施設=△△]」の判定用意図推定モデルの判定結果は、「他の意図」であるため、推定結果統合部111は、意図「目的地設定[施設=△△]」も「他の意図」も統合結果には加えない。
一方、図16Cに示すように、意図「目的地設定[施設=△△]」の判定用意図推定モデルの判定結果は、「他の意図」であるため、推定結果統合部111は、意図「目的地設定[施設=△△]」も「他の意図」も統合結果には加えない。
図17は、この実施の形態1において、推定結果統合部111により統合された意図の統合結果の一例を示す図である。
推定結果統合部111は、推定した意図の統合結果を、複合意図推定結果としてコマンド実行部112へ出力する。
推定結果統合部111は、推定した意図の統合結果を、複合意図推定結果としてコマンド実行部112へ出力する。
コマンド実行部112は、ステップST1011において複合意図推定部110から出力された複合意図推定結果に対応するコマンドを、ナビゲーション装置のコマンド処理部に、実行させる(ステップST1012)。例えば、コマンド実行部112は、ナビゲーション装置のコマンド処理部に、施設△△を経由地に追加するという操作を実行させる。また、コマンド実行部112は、ナビゲーション装置のコマンド処理部に、ルートを高速道路優先に変更するという操作を実行させる。
また、コマンド実行部112は、ステップST1012で実行させたコマンドの内容を示す実行操作情報を、応答生成部113に出力する。
また、コマンド実行部112は、ステップST1012で実行させたコマンドの内容を示す実行操作情報を、応答生成部113に出力する。
応答生成部113は、ステップST1012においてコマンド実行部112から出力された実行操作情報に基づき、コマンド実行部112がコマンド処理部に実行させたコマンドに対応する応答データを生成する(ステップST1013)。応答生成部113は、生成した応答データを、通知制御部114に出力する。
通知制御部114は、ステップST1013において応答生成部113から出力された応答データに基づく音声を、例えば、ナビゲーション装置が備えるスピーカから出力させる(ステップST1014)。その結果、図9の「S3」に示すように、「△△を経由地に追加しました。」、及び、「ルートを高速道路優先にしました。」等の音声が出力され、ユーザへの、実行されたコマンドの通知を行うことができる。
以上のように、実施の形態1によれば、意図推定装置1を、取得した文字列に基づき当該文字列に含まれる形態素の解析を行う形態素解析部103と、文字列に対する意図数を推定し、推定した意図数に応じて、当該文字列が、一つしか意図を含まない単意図文字列(単意図発話)であるか、複数の意図を含む複意図文字列(複意図発話)であるかを判断する意図数推定部106と、意図数推定部106が、文字列は単意図文字列であると判断した場合、形態素解析部103が解析した形態素に基づき、意図毎に形態素との関連度が対応付けられた単意図推定モデルを用いて、当該単意図文字列に対する意図を単意図として推定する単意図推定部108と、意図数推定部106が、文字列は複意図文字列であると判断した場合、形態素解析部103が解析した形態素に基づき、複数の意図毎に形態素との関連度が対応付けられた複合意図推定情報モデルを用いて、当該複意図文字列に対する複数の意図を推定する複合意図推定部110と、複合意図推定部110が推定した複数の意図を複合意図として統合する推定結果統合部111とを備えるように構成した。これにより、取得した文字列が単意図文字列、複意図文字列のどちらもあり得る場合においても、精度よく意図を推定することができる。
実施の形態2.
実施の形態1では、ユーザの発話から、ユーザの意図が2以上であると推定した場合、複合意図推定部110が推定した複合意図推定結果を推定結果統合部111が統合し、コマンド実行部112が、当該統合された複合意図推定結果に対応するコマンドをナビゲーション装置に実行させるようにしていた。
この実施の形態2では、さらに、複合意図推定部110が推定した複合意図推定結果の意図数に上限を設定する実施の形態について説明する。
以下、図面を用いて本発明の実施の形態2について説明する。
実施の形態1では、ユーザの発話から、ユーザの意図が2以上であると推定した場合、複合意図推定部110が推定した複合意図推定結果を推定結果統合部111が統合し、コマンド実行部112が、当該統合された複合意図推定結果に対応するコマンドをナビゲーション装置に実行させるようにしていた。
この実施の形態2では、さらに、複合意図推定部110が推定した複合意図推定結果の意図数に上限を設定する実施の形態について説明する。
以下、図面を用いて本発明の実施の形態2について説明する。
図18は、実施の形態2に係る意図推定装置1Bの構成例を示す図である。
この実施の形態2の意図推定装置1Bは、実施の形態1において図1を用いて説明した意図推定装置1とは、推定結果選択部117を備える点において異なる。意図推定装置1Bのその他の構成については、実施の形態1において図1を用いて説明した意図推定装置1の構成と同様であるので、意図推定装置1と同様の構成については、図1と同一の符号を付して重複した説明を省略する。
なお、この実施の形態2では、推定結果統合部111は、推定した意図の統合結果である複合意図推定結果を推定結果選択部117に出力する。このとき、推定結果統合部111は、意図推定スコアについても、複合意図推定結果に含めて、推定結果選択部117に出力する。
また、この実施の形態2では、意図数推定部106は、推定した意図数の情報を、推定結果選択部117に出力するようにする。
この実施の形態2の意図推定装置1Bは、実施の形態1において図1を用いて説明した意図推定装置1とは、推定結果選択部117を備える点において異なる。意図推定装置1Bのその他の構成については、実施の形態1において図1を用いて説明した意図推定装置1の構成と同様であるので、意図推定装置1と同様の構成については、図1と同一の符号を付して重複した説明を省略する。
なお、この実施の形態2では、推定結果統合部111は、推定した意図の統合結果である複合意図推定結果を推定結果選択部117に出力する。このとき、推定結果統合部111は、意図推定スコアについても、複合意図推定結果に含めて、推定結果選択部117に出力する。
また、この実施の形態2では、意図数推定部106は、推定した意図数の情報を、推定結果選択部117に出力するようにする。
推定結果選択部117は、推定結果統合部111から出力された複合意図推定結果に対し、意図数推定部106から出力された意図数を意図出力上限として、推定結果とする意図を、複合意図推定結果の意図推定スコアの上位から選択する。推定意図の選択について具体的な手法は後述する。
実施の形態2における意図推定装置1Bの動作について説明する。
ここで、図19は、実施の形態2において、ユーザとナビゲーション装置との間で行われる対話例を示す図である。
図20は、実施の形態2における意図推定装置1Bの動作を説明するためのフローチャートである。
ここで、図19は、実施の形態2において、ユーザとナビゲーション装置との間で行われる対話例を示す図である。
図20は、実施の形態2における意図推定装置1Bの動作を説明するためのフローチャートである。
まず、図19に示すように、ナビゲーション装置が、「ピっと鳴ったらお話ください。」という音声を、例えばナビゲーション装置が備えるスピーカから出力する(S01)。具体的には、意図推定装置1Bの音声制御部(図示省略)が、ナビゲーション装置に対して、「ピっと鳴ったらお話ください。」という音声を出力させる。
ナビゲーション装置が、「ピっと鳴ったらお話ください。」という音声を出力すると、当該音声に対し、ユーザが「○○は寄らなくていい、近くにコンビニある?」と発話する(U01)。なお、ここでは、図19に示すように、ナビゲーション装置が意図推定装置1Bから指示を受けて出力する音声を「S」と表し、ユーザからの発話を「U」と表している。
ナビゲーション装置が、「ピっと鳴ったらお話ください。」という音声を出力すると、当該音声に対し、ユーザが「○○は寄らなくていい、近くにコンビニある?」と発話する(U01)。なお、ここでは、図19に示すように、ナビゲーション装置が意図推定装置1Bから指示を受けて出力する音声を「S」と表し、ユーザからの発話を「U」と表している。
以下、図20のフローチャートに沿って説明するが、図20のステップST2001~ステップST2011,ステップST2013~ステップST2015の具体的な動作は、それぞれ、実施の形態1で説明した図10のステップST1001~ステップST1014の具体的な動作と同様である。
まず、音声受付部101がユーザの発話による音声を受け付け、音声認識部102が受け付けた音声に対して音声認識処理を行って文字列に変換し、形態素解析部103が文字列に対して形態素解析処理を行う(ステップST2001、ST2002)。例えば、形態素解析部103は、形態素解析部103は、「○○」、「は」、「寄ら」、「なく」、「て」、「いい」、「近く」、「に」、「コンビニ」及び「ある」の形態素を得て、当該形態素の情報を、形態素解析結果として係り受け解析部104及び意図数推定部106に出力する。
次に、係り受け解析部104が文字列に対して係り受け解析処理を行う(ステップST2003)。例えば、「○○」が「寄ら」の動作の対象であり、「コンビに」が「ある」の動作の対象であり、また、動作「いい」と「ある」は「並列関係」であるため、係り受け解析部104は、「動作対象_2件」、「並列関係_1件」との解析結果を、係り受け情報とし、意図数推定部106に出力する。
そして、係り受け解析部104から出力された係り受け情報を用いて、意図数推定部106が意図数を推定する(ステップST2004)。ここでは、意図数推定部106が推定した意図数が「2件」となり(実施の形態1で説明した図11のステップST1104参照)、推定された意図数が「1」より大きいため(ステップST2005の“YES”の場合)、ステップST2010以後の処理に移る。ここまでは実施の形態1で説明した図10のステップST1001~1005と同様である。
次に、係り受け解析部104が文字列に対して係り受け解析処理を行う(ステップST2003)。例えば、「○○」が「寄ら」の動作の対象であり、「コンビに」が「ある」の動作の対象であり、また、動作「いい」と「ある」は「並列関係」であるため、係り受け解析部104は、「動作対象_2件」、「並列関係_1件」との解析結果を、係り受け情報とし、意図数推定部106に出力する。
そして、係り受け解析部104から出力された係り受け情報を用いて、意図数推定部106が意図数を推定する(ステップST2004)。ここでは、意図数推定部106が推定した意図数が「2件」となり(実施の形態1で説明した図11のステップST1104参照)、推定された意図数が「1」より大きいため(ステップST2005の“YES”の場合)、ステップST2010以後の処理に移る。ここまでは実施の形態1で説明した図10のステップST1001~1005と同様である。
ステップST2010において、意図数推定部106は、形態素解析部103が形態素解析した結果である文字列を複合意図推定部110に出力する。そして、複合意図推定部110は、複意図発話文に対して、ユーザの意図を推定する。
ここで、図21は、実施の形態2において、複合意図推定部110が判定した、ユーザの意図の判定結果の一例である。
図21では、説明を容易にするため、複合意図推定モデル記憶部109に記憶されている複合意図推定モデルとして、意図「経由地削除[施設=○○]」の判定用意図推定モデル、意図「周辺検索[施設種類=コンビニ]」の判定用意図推定モデル、意図「ルート削除」の判定用意図推定モデルの三つのモデルがあるものとして説明する。なお、実施の形態1と同様、意図数推定部106は、上記三つの判定用意図推定モデルを用いて判定する意図に対する意図推定スコアが0.5を超えた場合に、当該意図推定スコアが0.5を超えたと判定された意図を、該当意図であると判定するものとする。
図21では、説明を容易にするため、複合意図推定モデル記憶部109に記憶されている複合意図推定モデルとして、意図「経由地削除[施設=○○]」の判定用意図推定モデル、意図「周辺検索[施設種類=コンビニ]」の判定用意図推定モデル、意図「ルート削除」の判定用意図推定モデルの三つのモデルがあるものとして説明する。なお、実施の形態1と同様、意図数推定部106は、上記三つの判定用意図推定モデルを用いて判定する意図に対する意図推定スコアが0.5を超えた場合に、当該意図推定スコアが0.5を超えたと判定された意図を、該当意図であると判定するものとする。
図21において、図21Aは、意図「経由地削除[施設=○○]」の判定用意図推定モデルの判定結果である。複合意図推定部110は、意図「経由地削除[施設=○○]」の意図推定スコアが0.65を得る。この場合、意図推定スコアが0.5を超えるため、複合意図推定部110は、意図「経由地削除[施設=○○]」が「U01」の文字列の該当意図であると判定する。
図21において、図21Bは、意図「周辺検索[施設種類=コンビニ]」判定用意図推定モデルの判定結果であり、図21Cは、意図「ルート削除」判定用意図推定モデルの判定結果である。複合意図推定部110は、意図推定スコアが0.7であり、0.5を超えるため(図21B参照)、意図「周辺検索[施設種類=コンビニ]」も「U01」の文字列の該当意図であると判定する。また、複合意図推定部110は、意図推定スコアが0.55であり、0.5を超えるため(図21C参照)、「ルート削除」も「U01」の文字列の該当意図であると判定する。
複合意図推定部110は、図21A~図21Cで示す三つの意図推定モデルにより得た該当意図である、「経由地削除[施設=○○]」、「周辺検索[施設種類=コンビニ]」、及び、「ルート削除」を推定結果統合部111に出力する。
図21において、図21Bは、意図「周辺検索[施設種類=コンビニ]」判定用意図推定モデルの判定結果であり、図21Cは、意図「ルート削除」判定用意図推定モデルの判定結果である。複合意図推定部110は、意図推定スコアが0.7であり、0.5を超えるため(図21B参照)、意図「周辺検索[施設種類=コンビニ]」も「U01」の文字列の該当意図であると判定する。また、複合意図推定部110は、意図推定スコアが0.55であり、0.5を超えるため(図21C参照)、「ルート削除」も「U01」の文字列の該当意図であると判定する。
複合意図推定部110は、図21A~図21Cで示す三つの意図推定モデルにより得た該当意図である、「経由地削除[施設=○○]」、「周辺検索[施設種類=コンビニ]」、及び、「ルート削除」を推定結果統合部111に出力する。
推定結果統合部111は、ステップST2010において複合意図推定部110から意図推定結果として出力された複数の該当意図のうち、「他の意図」以外の該当意図を、統合結果に加えることで、該当意図を統合する(ステップST2011)。
図21Aに示すように、意図「経由地削除[施設=○○]」の判定用意図推定モデルの判定結果は、意図「経由地削除[施設=○○]」であるため、推定結果統合部111は、意図「経由地削除[施設=○○]」を統合結果に加える。また、図21B及び図21Cに示すように、意図「周辺検索[施設種類=コンビニ]」の判定用意図推定モデルの判定結果は「周辺検索[施設種類=コンビニ]」であり、意図「ルート削除」の判定用意図推定モデルの判定結果は「ルート削除」であるため、推定結果統合部111は、「周辺検索[施設種類=コンビニ]」及び「ルート削除」も同様に統合結果に加える。このとき、この実施の形態2では、推定結果統合部111は、意図推定スコアも、統合結果に加える。
図22は、この実施の形態2において、推定結果統合部111により統合された意図の統合結果の一例を示す図である。
推定結果統合部111は、推定した意図の統合結果を、複合意図推定結果として推定結果選択部117へ出力する。
推定結果統合部111は、推定した意図の統合結果を、複合意図推定結果として推定結果選択部117へ出力する。
推定結果選択部117は、ステップST2011において推定結果統合部111から出力された複合意図推定結果に対し、ステップST2004において意図数推定部106から出力された意図数を意図出力上限として、推定結果とする意図を、複合意図推定結果の意図推定スコアの上位から選択し、選択した推定意図を最終意図推定結果とする(ステップST2012)。
具体的には、推定結果選択部117は、意図数推定部106から出力された意図数を意図出力上限とし、意図推定スコアを判断基準として、当該意図推定スコアの上位の推定意図のみを選択する。
具体的には、推定結果選択部117は、意図数推定部106から出力された意図数を意図出力上限とし、意図推定スコアを判断基準として、当該意図推定スコアの上位の推定意図のみを選択する。
ここで、ステップST2004において、意図数推定部106は意図数「2件」と推定した。そのため、推定結果選択部117は、最終意図推定結果の数を「2」以下にする。推定結果統合部111による推定統合結果は、「経由地削除[施設=○○]」、「周辺検索[施設種類=コンビニ]」及び「ルート削除」の3つである。
また、図22で示したように意図推定スコアは、「経由地削除[施設=○○]」が「0.65」、「周辺検索[施設種類=コンビニ]」が「0.7」、「ルート削除」が「0.55」である。
推定結果選択部117は、意図数推定部106から出力された意図数を意図出力上限とし、複合意図推定結果の意図推定スコアの上位二つを選択して、最終意図推定結果として出力するので、推定結果選択部117は、「経由地削除[施設=○○]」及び「周辺検索[施設種類=コンビニ]」を選択し、最終意図推定結果とすることになる。
また、図22で示したように意図推定スコアは、「経由地削除[施設=○○]」が「0.65」、「周辺検索[施設種類=コンビニ]」が「0.7」、「ルート削除」が「0.55」である。
推定結果選択部117は、意図数推定部106から出力された意図数を意図出力上限とし、複合意図推定結果の意図推定スコアの上位二つを選択して、最終意図推定結果として出力するので、推定結果選択部117は、「経由地削除[施設=○○]」及び「周辺検索[施設種類=コンビニ]」を選択し、最終意図推定結果とすることになる。
このように、意図推定装置1Bでは、推定結果選択部117により、「ルート削除」を複合意図推定結果から削除することで、余計な意図推定結果の出力を抑え、複合意図推定結果に上限を設けない場合に比べ、意図推定の精度をより向上することができる。その結果、より適切な最終意図推定結果を得ることができる。
図23は、実施の形態2において、推定結果選択部117により生成された最終意図推定結果の内容の一例を示す図である。
推定結果選択部117は、最終意図推定結果をコマンド実行部112に出力する。
図23は、実施の形態2において、推定結果選択部117により生成された最終意図推定結果の内容の一例を示す図である。
推定結果選択部117は、最終意図推定結果をコマンド実行部112に出力する。
コマンド実行部112は、ステップST2012において推定結果選択部117から出力された最終意図推定結果に対応するコマンドを、ナビゲーション装置のコマンド処理部に、実行させる(ステップST2013)。例えば、コマンド実行部112は、ナビゲーション装置のコマンド処理部に、経由地を削除するコマンド及び周辺のコンビニを検索するコマンドを実行させる。
また、応答生成部113は、コマンド実行部112がコマンド処理部に実行させたコマンドに対応する応答データを生成し(ステップST2014)、通知制御部114は、応答生成部113が生成した応答データを、ナビゲーション装置が備えるスピーカから出力させる(ステップST2015)。その結果、図19の「S02」に示すように、「経由地○○を削除しました。」「周辺のコンビニを検索します。リストから選択してください。」等の音声が出力され、ユーザへの、実行されたコマンドの通知を行うことができる。具体的な動作は、実施の形態1で説明した、図10のステップST1012~ステップST1014と同じである。
また、応答生成部113は、コマンド実行部112がコマンド処理部に実行させたコマンドに対応する応答データを生成し(ステップST2014)、通知制御部114は、応答生成部113が生成した応答データを、ナビゲーション装置が備えるスピーカから出力させる(ステップST2015)。その結果、図19の「S02」に示すように、「経由地○○を削除しました。」「周辺のコンビニを検索します。リストから選択してください。」等の音声が出力され、ユーザへの、実行されたコマンドの通知を行うことができる。具体的な動作は、実施の形態1で説明した、図10のステップST1012~ステップST1014と同じである。
以上のように、実施の形態2によれば、実施の形態1に係る意図推定装置1の構成に加え、意図数推定部106が推定した意図数を上限として、推定結果統合部111が統合した複数の意図のうち、意図数推定部106が意図数を推定する際に算出した意図推定スコアの上位の意図を選択し、複合意図とする推定結果選択部117を備えるように構成した。これにより、意図数推定部106で得た意図数結果を用いて、推定結果統合部111で得た複合意図推定結果に対して出力上限を設定し、不適切な意図推定結果の出力を抑えることができるため、最終統合結果の精度がより向上する。
なお、これまで説明した意図推定装置1,1Bの機能の一部は他の装置で実行されるようにしてもよい。例えば、一部の機能を、外部に設けられたサーバ、あるいは、スマートフォンまたはタブレット等の携帯端末等により実行するようにしてもよい。
また、上述した実施の形態1,2では、意図推定装置1,1Bは、ユーザの発話による音声をもとに、ユーザの意図を推定するものとしたが、ユーザの意図を推定する元となる情報はこれに限らない。例えば、意図推定装置1,1Bは、ユーザがキーボード等の入力装置を用いて入力した文字列を受け付け、当該文字列をもとに、ユーザの意図を推定するようにすることもできる。
なお、本願発明はその発明の範囲内において、各実施の形態の自由な組み合わせ、あるいは各実施の形態の任意の構成要素の変形、もしくは各実施の形態において任意の構成要素の省略が可能である。
この発明に係る意図推定装置は、文字列の意図を推定する精度を向上することができるように構成したため、入力された文字列を認識してユーザの意図を推定する意図推定装置等に適用することができる。
1,1B 意図推定装置、2 意図数推定モデル生成装置、101 音声受付部、102 音声認識部、103 形態素解析部、104 係り受け解析部、105 意図数推定モデル記憶部、106 意図数推定部、107 単意図推定モデル記憶部、108 単意図推定部、109 複合意図推定モデル記憶部、110 複合意図推定部、111 推定結果統合部、112 コマンド実行部、113 応答生成部、114 通知制御部、115 学習用データ記憶部、116 意図数推定モデル生成部、117 推定結果選択部、501 処理回路、502 HDD、503 入力インタフェース装置、504 出力インタフェース装置、505 メモリ、506 CPU。
Claims (8)
- 取得した文字列に基づき当該文字列に含まれる形態素の解析を行う形態素解析部と、
前記文字列に対する意図数を推定し、推定した意図数に応じて、当該文字列が、一つしか意図を含まない単意図文字列であるか、複数の意図を含む複意図文字列であるかを判断する意図数推定部と、
前記意図数推定部が、前記文字列は単意図文字列であると判断した場合、前記形態素解析部が解析した形態素に基づき、意図毎に形態素との関連度が対応付けられた単意図推定モデルを用いて、当該単意図文字列に対する意図を単意図として推定する単意図推定部と、
前記意図数推定部が、前記文字列は複意図文字列であると判断した場合、前記形態素解析部が解析した形態素に基づき、複数の意図毎に形態素との関連度が対応付けられた複合意図推定モデルを用いて、当該複意図文字列に対する複数の意図を推定する複合意図推定部と、
前記複合意図推定部が推定した複数の意図を複合意図として統合する推定結果統合部
とを備えた意図推定装置。 - 前記形態素解析部が解析した形態素に基づき、前記文字列に含まれる形態素間の関係性を解析し、係り受け情報を生成する係り受け解析部を備え、
前記意図数推定部は、前記係り受け解析部が生成した係り受け情報に基づき、前記文字列に対する意図数を推定する
ことを特徴とする請求項1記載の意図推定装置。 - 前記意図数推定部は、
前記係り受け情報を特徴量とし、前記係り受け情報と意図数との対応関係を学習した意図数推定モデルを用いて、前記文字列に対する意図数を推定する
ことを特徴とする請求項2記載の意図推定装置。 - 前記意図数推定部が推定した意図数を上限として、前記推定結果統合部が統合した複数の意図のうち、前記意図数推定部が意図数を推定する際に算出した意図推定スコアの上位の意図を選択し、前記複合意図とする推定結果選択部を備えた
ことを特徴とする請求項1記載の意図推定装置。 - 形態素解析部が、取得した文字列に基づき当該文字列に含まれる形態素の解析を行うステップと、
意図数推定部が、前記文字列に対する意図数を推定し、推定した意図数に応じて、当該文字列が、一つしか意図を含まない単意図文字列であるか、複数の意図を含む複意図文字列であるかを判断するステップと、
単意図推定部が、前記意図数推定部が、前記文字列は単意図文字列であると判断した場合、前記形態素解析部が解析した形態素に基づき、意図毎に形態素との関連度が対応付けられた単意図推定モデルを用いて、当該単意図文字列に対する意図を単意図として推定するステップと、
複合意図推定部が、前記意図数推定部が、前記文字列は複意図文字列であると判断した場合、前記形態素解析部が解析した形態素に基づき、複数の意図毎に形態素との関連度が対応付けられた複合意図推定モデルを用いて、当該複意図文字列に対する複数の意図を推定するステップと、
推定結果統合部が、前記複合意図推定部が推定した複数の意図を複合意図として統合するステップ
とを備えた意図推定方法。 - 係り受け解析部が、前記形態素解析部が解析した形態素に基づき、前記文字列に含まれる形態素間の関係性を解析し、係り受け情報を生成するステップを備え、
前記意図数推定部は、前記係り受け解析部が生成した係り受け情報に基づき、前記文字列に対する意図数を推定するステップを有する
ことを特徴とする請求項5記載の意図推定方法。 - 前記意図数推定部は、
前記係り受け情報を特徴量とし、前記係り受け情報と意図数との対応関係を学習した意図数推定モデルを用いて、前記文字列に対する意図数を推定するステップを有する
ことを特徴とする請求項6記載の意図推定方法。 - 推定結果選択部が、前記意図数推定部が推定した意図数を上限として、前記推定結果統合部が統合した複数の意図のうち、前記意図数推定部が意図数を推定する際に算出した意図推定スコアの上位の意図を選択し、前記複合意図とするステップを備えた
ことを特徴とする請求項5記載の意図推定方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2017/022144 WO2018229937A1 (ja) | 2017-06-15 | 2017-06-15 | 意図推定装置及び意図推定方法 |
JP2019514140A JP6632764B2 (ja) | 2017-06-15 | 2017-06-15 | 意図推定装置及び意図推定方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2017/022144 WO2018229937A1 (ja) | 2017-06-15 | 2017-06-15 | 意図推定装置及び意図推定方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2018229937A1 true WO2018229937A1 (ja) | 2018-12-20 |
Family
ID=64659078
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2017/022144 WO2018229937A1 (ja) | 2017-06-15 | 2017-06-15 | 意図推定装置及び意図推定方法 |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP6632764B2 (ja) |
WO (1) | WO2018229937A1 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102490519B1 (ko) * | 2022-07-21 | 2023-01-19 | 주식회사 라피치 | 발신자의 텍스트데이터에 대응하여 암호화를 하는 개인정보 보호 기능을 가지는 자동응답 시스템 및 방법 |
WO2023208504A1 (de) | 2022-04-29 | 2023-11-02 | Siemens Mobility GmbH | Fahrzeug mit brennstoffzellensystem und aufbereitungsvorrichtung zur aufbereitung des prozesswassers |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000200273A (ja) * | 1998-11-04 | 2000-07-18 | Atr Interpreting Telecommunications Res Lab | 発話意図認識装置 |
WO2016120904A1 (ja) * | 2015-01-28 | 2016-08-04 | 三菱電機株式会社 | 意図推定装置及び意図推定方法 |
-
2017
- 2017-06-15 JP JP2019514140A patent/JP6632764B2/ja active Active
- 2017-06-15 WO PCT/JP2017/022144 patent/WO2018229937A1/ja active Application Filing
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000200273A (ja) * | 1998-11-04 | 2000-07-18 | Atr Interpreting Telecommunications Res Lab | 発話意図認識装置 |
WO2016120904A1 (ja) * | 2015-01-28 | 2016-08-04 | 三菱電機株式会社 | 意図推定装置及び意図推定方法 |
Non-Patent Citations (1)
Title |
---|
MASAYUKI SHIRAKI ET AL.: "Investigation of statistical techniques for intention understanding in spoken dialog", IPSJ SIG NOTES, vol. 2004, no. 15, 7 February 2004 (2004-02-07), pages 69 - 74 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023208504A1 (de) | 2022-04-29 | 2023-11-02 | Siemens Mobility GmbH | Fahrzeug mit brennstoffzellensystem und aufbereitungsvorrichtung zur aufbereitung des prozesswassers |
KR102490519B1 (ko) * | 2022-07-21 | 2023-01-19 | 주식회사 라피치 | 발신자의 텍스트데이터에 대응하여 암호화를 하는 개인정보 보호 기능을 가지는 자동응답 시스템 및 방법 |
Also Published As
Publication number | Publication date |
---|---|
JP6632764B2 (ja) | 2020-01-22 |
JPWO2018229937A1 (ja) | 2019-07-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10269346B2 (en) | Multiple speech locale-specific hotword classifiers for selection of a speech locale | |
JP6637848B2 (ja) | 音声認識装置及び方法と電子装置 | |
CN107039038B (zh) | 学习个性化实体发音 | |
US11538478B2 (en) | Multiple virtual assistants | |
US11282522B2 (en) | Artificial intelligence apparatus and method for recognizing speech of user | |
JP6556575B2 (ja) | 音声処理装置、音声処理方法及び音声処理プログラム | |
US20180218728A1 (en) | Domain-Specific Speech Recognizers in a Digital Medium Environment | |
KR20140025361A (ko) | 위치-기반 대화 해석 | |
US11443747B2 (en) | Artificial intelligence apparatus and method for recognizing speech of user in consideration of word usage frequency | |
US11676572B2 (en) | Instantaneous learning in text-to-speech during dialog | |
US10685644B2 (en) | Method and system for text-to-speech synthesis | |
US11257482B2 (en) | Electronic device and control method | |
US20180301144A1 (en) | Electronic device, method for adapting acoustic model thereof, and voice recognition system | |
US11211059B2 (en) | Artificial intelligence apparatus and method for recognizing speech with multiple languages | |
KR20210001937A (ko) | 사용자의 음성 입력을 인식하는 디바이스 및 그 동작 방법 | |
US20190005950A1 (en) | Intention estimation device and intention estimation method | |
JP4634156B2 (ja) | 音声対話方法および音声対話装置 | |
WO2018229937A1 (ja) | 意図推定装置及び意図推定方法 | |
US20220375469A1 (en) | Intelligent voice recognition method and apparatus | |
JP2021033051A (ja) | 情報処理装置、情報処理方法およびプログラム | |
US20220392439A1 (en) | Rescoring Automatic Speech Recognition Hypotheses Using Audio-Visual Matching | |
JP6580281B1 (ja) | 翻訳装置、翻訳方法、および翻訳プログラム | |
JP5980101B2 (ja) | 音響モデル学習用テキスト作成装置とその方法とプログラム | |
WO2010073406A1 (ja) | 情報提供装置、通信端末、情報提供システム、情報提供方法、情報出力方法、情報提供プログラム、情報出力プログラムおよび記録媒体 | |
KR20210098250A (ko) | 전자 장치 및 이의 제어 방법 |
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: 17913941 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2019514140 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: 17913941 Country of ref document: EP Kind code of ref document: A1 |