Dictionary creation system, learning data creation system, voice recognition system, dictionary creation method and program

JP7632464B2Active Publication Date: 2025-02-19NEC CORP
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
JP2022530402
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2020-06-09
Publication Date
2025-02-19

AI Technical Summary

Benefits of technology

【0012】 本開示により、専門用語等の類義語を登録する作業負担を軽減することができる辞書生成システム、学習データ生成システム、音声認識システム、辞書生成方法およびコンピュータ可読媒体を提供することができる。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007632464000001
    Figure 0007632464000001
  • Figure 0007632464000002
    Figure 0007632464000002
  • Figure 0007632464000003
    Figure 0007632464000003
Patent Text Reader

Abstract

A dictionary generation system (10, 10a) is provided with: a registration data storage unit (13) that stores registration data for associating a registered word string with a predetermined class; a character string conversion unit (14) that converts uttered speech data into a character string; a class inference unit (15, 15a) that infers a class of a word string included in the character string; and a dictionary generation unit (17) that, when there is no correlation between the word string included in the character string and the registered word string associated with the inferred class, associates the word string included in the character string with the registered word string associated with the inferred class, and generates a dictionary.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present disclosure relates to a dictionary generation system, a training data generation system, a speech recognition system, a dictionary generation method, and a computer-readable medium. [Background technology]

[0002] There is known a speech recognition system that converts speech data into text data and analyzes the text data by natural language processing. For example, Patent Document 1 discloses an information processing device that performs morphological analysis on text data corresponding to speech data and processes objects based on the analysis results.

[0003] On the other hand, speech data may contain technical terms such as industry jargon, unique expressions, and abbreviations. For example, when speech data uttered by a person is used as speech data, the speech data may contain technical terms. In order to accurately recognize such technical terms that differ from normal expressions, it is required for the speech recognition system to use a dictionary in which technical terms are registered in advance. [Prior art documents] [Patent documents]

[0004] [Patent Document 1] JP 2016-167027 A Summary of the Invention [Problem to be solved by the invention]

[0005] However, depending on the industry, the terms used are often not recognized as technical terms, and creating a dictionary of technical terms can be a heavy workload.

[0006] In view of the above-mentioned problems, an object of the present disclosure is to provide a dictionary generation system, a training data generation system, a speech recognition system, a dictionary generation method, and a computer-readable medium that can reduce the workload of registering synonyms for technical terms, etc. [Means for solving the problem]

[0007] A dictionary generation system according to one aspect of the present disclosure includes a registration data storage unit that stores registration data associating a registered word string with a predetermined class, a string conversion unit that converts spoken voice data into a string, a class estimation unit that estimates a class of a word string contained in the string, and a dictionary generation unit that, when there is no correlation between the word string contained in the string and a registered word string associated with the estimated class, corresponds the word string contained in the string with the registered word string associated with the estimated class to generate a dictionary.

[0008] A training data generation system according to an aspect of the present disclosure includes a dictionary generation device. The dictionary generation device includes a storage unit that stores registration data that associates a registered word string with a predetermined class, a string conversion unit that converts speech data into a string, a class estimation unit that estimates a class of a word string included in the string, and a dictionary generation unit that generates a dictionary by associating a word string included in the string with a registered word string associated with the estimated class when there is no correlation between the word string included in the string and a registered word string associated with the estimated class. The training data generation system uses the generated dictionary to estimate a class of a word string included in a training string, assigns the estimated class to the word string included in the training string as a correct label, and generates text data with a correct label.

[0009] A speech recognition system according to an aspect of the present disclosure includes a training data generation system having a dictionary generation device. The dictionary generation device includes a storage unit that stores registration data that associates a registered word sequence with a predetermined class, a character string conversion unit that converts speech data into a character string, a class estimation unit that estimates a class of a word sequence included in the character string, and a dictionary generation unit that generates a dictionary by associating a word sequence included in the character string with a registered word sequence associated with the estimated class when there is no correlation between the word sequence included in the character string and a registered word sequence associated with the estimated class. The training data generation system estimates a class of a word sequence included in a training string using the generated dictionary, assigns the estimated class to the word sequence included in the training string as a correct label, and generates text data with a correct label. The speech recognition system trains a class estimation model using the correct-labeled text data generated by the training data generation system as training data, and estimates a class corresponding to a word sequence included in the speech data using the trained class estimation model.

[0010] A dictionary generation method according to an aspect of the present disclosure includes a character string conversion step of converting speech data into a character string; The method includes a class estimation step of estimating a class of a word string contained in the character string, and a dictionary generation step of generating a dictionary by associating the registered word string associated with the estimated class with the word string contained in the character string when there is no correlation between the registered word string associated with the estimated class stored in a registration data storage unit that stores registration data associating registered word strings with predetermined classes and the word string contained in the character string.

[0011] A computer-readable medium according to an aspect of the present disclosure is a non-transitory computer-readable medium having a dictionary generation program stored therein. The dictionary generation program causes a computer to execute a string conversion step of converting speech voice data into a string, a class estimation step of estimating a class of a word string included in the string, and a dictionary generation step of generating a dictionary by associating the registered word string associated with the estimated class with the word string included in the string when there is no correlation between the registered word string stored in an enrollment data storage unit that stores enrollment data associating the registered word string with a predetermined class and the registered word string associated with the estimated class and the word string included in the string. Effect of the Invention

[0012] The present disclosure makes it possible to provide a dictionary generation system, a training data generation system, a voice recognition system, a dictionary generation method, and a computer-readable medium that can reduce the workload of registering synonyms for technical terms, etc. [Brief description of the drawings]

[0013] [Figure 1] 1 is a block diagram showing a configuration of a dictionary generation system according to an embodiment. [Diagram 2] 1 is a schematic configuration diagram showing an example of a system to which a dictionary creation device according to a first embodiment can be applied. [Diagram 3] 1 is a block diagram showing an example of a configuration of a dictionary creation device according to a first embodiment. [Figure 4] 4 is a flowchart showing an example of processing performed by the dictionary creation device according to the first embodiment. [Diagram 5] FIG. 4 is a diagram showing an example of a data structure of registration data according to the first embodiment. [Figure 6] FIG. 4 is a diagram showing an example of a data structure of a first class estimation processing result according to the first embodiment. [Figure 7] FIG. 2 is a diagram showing an example of a data structure of a dictionary generated by the dictionary generation device according to the first embodiment. [Figure 8]5 is a flowchart illustrating an example of a first class estimation process according to the first embodiment. [Figure 9] FIG. 4 is a diagram for explaining a first class estimation process according to the first embodiment. [Figure 10] FIG. 3 is a diagram showing an example of a display on a display unit according to the first embodiment. [Figure 11] FIG. 3 is a diagram showing an example of a display on a display unit according to the first embodiment. [Figure 12] FIG. 11 is a block diagram showing an example of the configuration of a voice recognition device according to a second embodiment. [Figure 13] 13 is a flowchart showing an example of processing in a dictionary and learning data generation mode of the voice recognition device according to the second embodiment. [Figure 14] 11 is a flowchart showing an example of a process in a learning mode of the voice recognition device according to the second embodiment. [Figure 15] 13 is a flowchart showing an example of a process in an operation mode of the voice recognition device according to the second embodiment. [Figure 16] 13 is a flowchart showing an example of processing in a dictionary generation mode of the voice recognition device according to the third embodiment. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0014] Hereinafter, the present disclosure will be described through embodiments, but the disclosure according to the claims is not limited to the following embodiments. In addition, all of the configurations described in the embodiments are not necessarily essential as means for solving the problems. In each drawing, the same elements are given the same reference numerals, and duplicated explanations are omitted as necessary.

[0015] <Overview of the embodiment> First, an overview of an embodiment of the present disclosure will be described with reference to Fig. 1. Fig. 1 is a block diagram showing a configuration of a dictionary generation system 10 according to the overview of the embodiment. The dictionary generation system 10 includes a registration data storage unit 13, a character string conversion unit 14, a class estimation unit 15, and a dictionary generation unit 17. The enrollment data storage unit 13 is a storage medium that stores enrollment data that associates enrollment word strings with predetermined classes. The character string conversion unit 14 converts the speech voice data into a character string. The class estimation unit 15 estimates the class of a word string contained in the converted character string. When there is no correlation between a word string contained in a character string and a registered word string associated with an estimated class, the dictionary generation unit 17 generates a dictionary by associating the word string contained in the character string with the registered word string associated with an estimated class.

[0016] With this configuration, the dictionary generation system 10 estimates the class of a word string based on the speech data, and associates the word string based on the speech data with a registered word string based on the estimated class. Therefore, the dictionary generation system 10 can reduce the workload of registering synonyms.

[0017] <Embodiment 1> Next, a first embodiment of the present disclosure will be described with reference to Figs. 2 to 11. Fig. 2 is a schematic configuration diagram showing an example of a system to which a dictionary generation system (hereinafter, referred to as a dictionary generation device) 10 according to the first embodiment can be applied. The system is a system that recognizes a class of a word string contained in uttered voice data from the uttered voice data. As an example, the system provides text data for querying or registering data in a database at a base when a person working in the field in police work, the financial industry, the railway industry, or the like queries or registers data in the database at the base by voice call.

[0018] Here, the spoken voice data is data of a voice obtained as a result of a person or a computer uttering a language as a voice. The spoken voice data may be data showing a waveform of a spoken voice. The spoken voice data includes voice call data. A word string is a character string consisting of one or more words and expressing a meaning. A class indicates an item when a word string is classified according to a predetermined criterion. As an example, a word string is "Shibatarou", "February 2, 1990", "090-1234-5678", "Shabu (stimulant drug)", "Fuyo (regular savings account)", "Ekitsu (overrun)", "123M", and "Delay". For example, the corresponding classes are "Name", "Date of birth", "Telephone number", "Crime type", "Account type", "Cause", "Train name", and "Situation", respectively.

[0019] The system includes a dictionary generation device 10, a training data generation device (also called a training data generation system) 20, and a voice recognition device (also called a voice recognition system) 30.

[0020] The dictionary generating device 10 is a computer that registers synonyms of word strings included in speech data and generates a dictionary. For example, the dictionary generating device 10 generates a dictionary that associates "shabu" with "stimulant drug," "fuyo" with "regular savings account," or "ekitsu" with "overrun."

[0021] The training data generation device 20 is a computer that assigns correct labels to text data having the same content as the spoken voice data, using the dictionary provided by the dictionary generation device 10. Then, the training data generation device 20 generates correct-labeled text data, which is text data to which the correct labels have been assigned.

[0022] The speech recognition device 30 is a computer that extracts a word string from speech data and estimates a class corresponding to the word string using a class estimation model. The class estimation model may be a model based on natural language processing such as morphological analysis and word semantic analysis and named entity extraction processing using a dictionary supplied from the dictionary generation device 10. The class estimation model may also have a neural network such as a recurrent neural network (RNN) or a convolutional neural network (CNN). The class estimation model is trained and optimized using text data with correct labels supplied from the training data generation system 20 as training data. The speech recognition device 30 then outputs the word string and the estimated class in a predetermined data format.

[0023] 3 is a block diagram showing an example of the configuration of the dictionary generation device 10 according to the embodiment 1. The dictionary generation device 10 includes a speech voice data acquisition unit 11, a registered data acquisition unit 12, a registered data storage unit 13, a character string conversion unit 14, a class estimation unit 15, a display unit 16, a dictionary generation unit 17, and a dictionary storage unit 18.

[0024] The speech voice data acquisition unit 11 acquires speech voice data such as voice call data, etc. The speech voice data acquisition unit 11 supplies the acquired speech voice data to the character string conversion unit 14.

[0025] The enrollment data acquisition unit 12 acquires enrollment data that associates a registered word string, which is a word string registered in advance, with a class corresponding to the registered word string. The class corresponding to the registered word string may be determined in advance. For example, the registered word string and the class may be input based on speech data by an operator who has knowledge of technical terms. Here, in the first embodiment, the enrollment data includes a record that associates each of the multiple registered word strings with a class. The enrollment data acquisition unit 12 stores the acquired enrollment data in the enrollment data storage unit 13.

[0026] The registration data storage unit 13 is a storage medium that stores the registration data.

[0027] The character string conversion unit 14 converts the speech voice data into a character string and obtains text data corresponding to the speech voice data. Here, the converted character string is referred to as an input character string, and the text data corresponding to the speech voice data is referred to as input text data. The character string conversion unit 14 may convert the speech voice data into an input character string using a known technique. Then, the character string conversion unit 14 supplies the input text data to the class estimation unit 15.

[0028] The class estimation unit 15 extracts a word string to be subjected to class estimation, which is included in the input string of the input text data supplied from the string conversion unit 14. The word string included in this input string is called an input word string. Here, in the present embodiment 1, the input string includes a plurality of input word strings.

[0029] Then, the class estimation unit 15 estimates the class of the extracted input word string. In the first embodiment, the class estimation unit 15 judges whether the input character string includes an input word string that is correlated with any of a plurality of registered word strings included in the record of the registered data, and estimates the class of the input word string based on the judgment result. Here, "correlated" indicates that the two word strings match, or that the similarity between the two word strings is high even if they do not match. Examples of high similarity include the difference between half-width characters and full-width characters, or the difference between uppercase and lowercase letters. In addition, the class estimation unit 15 may determine that the similarity is high when the distance such as the Levenshtein distance and the Jaro-Winkler distance is equal to or less than a predetermined threshold value.

[0030] For example, when an input character string includes an input word string that is correlated with any one of a plurality of registered word strings included in a record, the class estimation unit 15 estimates the class associated with the correlated registered word string as the class of the input word string. On the other hand, when the input character string includes an input word string that is not correlated with any of the multiple registered word strings included in the record, the class estimation unit 15 selects one class from the classes in the record excluding the classes of registered word strings that are correlated with other input word strings included in the input character string. Then, the class estimation unit 15 estimates the selected class as the class of the input word string. That is, in this case, the class estimation unit 15 selects the class of the input word string from the classes associated with the registered word string that is not correlated with any of the registered word strings. In the first embodiment, the determination result on the presence or absence of correlation is notified to the operator by the display unit 16 described later, and the class of the input word string is selected by the operator. However, without being limited to this, a class may be automatically selected for the input word string by any natural language processing and named entity extraction processing, etc.

[0031] The class estimation unit 15 supplies the input word string that has no correlation with any of the registered word strings and the estimated class to the dictionary creation unit 17.

[0032] The display unit 16 is a display device such as a display that displays the input word string that is not correlated with any of the multiple registered word strings included in the record of the registered data when the input character string includes the input word string that is not correlated with any of the multiple registered word strings included in the record of the registered data. In this case, the display unit 16 may display classes excluding classes associated with registered word strings that are correlated with other input word strings included in the input character string as classes included in the record, from the viewpoint of ease of viewing. Then, the operator may input the class of the input word string into the input unit (not shown) based on the display by the display unit 16. The display unit 16 may also be a display input device such as a touch panel, and may receive input from the operator in addition to the above display.

[0033] When there is no correlation between an input word string included in an input character string and a registered word string associated with an estimated class, the dictionary generation unit 17 associates the input word string included in the input character string with the registered word string associated with the estimated class. In this way, the dictionary generation unit 17 generates a dictionary. The dictionary generation unit 17 stores the generated dictionary in the dictionary storage unit 18.

[0034] The dictionary storage unit 18 is a storage medium that stores the dictionary generated by the dictionary generation unit 17.

[0035] Next, the processing of the dictionary generating device 10 will be described with reference to Figs. 4 to 7. Fig. 4 is a flowchart showing an example of the processing of the dictionary generating device 10 according to the first embodiment.

[0036] First, the speech voice data acquisition unit 11 acquires speech voice data (step S10). At this time, the speech voice data acquisition unit 11 may acquire a voice signal output from another device (not shown) via a communication means (not shown). The speech voice data acquisition unit 11 may also receive a voice input via a microphone (not shown) or the like and acquire a voice signal. The speech voice data acquisition unit 11 may use the acquired voice signal as speech voice data, or may use a sampled voice signal as speech voice data.

[0037] As an example, consider a case where a worker in the railway industry registers data on train status via voice communication. For example, the voice communication data may include the content, "Delays have occurred due to the 123M train line." The speech voice data acquisition unit 11 supplies the acquired speech voice data to the character string conversion unit 14 .

[0038] Next, the enrollment data acquisition unit 12 accepts an input from an operator, acquires enrollment data corresponding to the speech voice data, and stores the enrollment data in the enrollment data storage unit 13 (step S11).

[0039] Here, the registered data will be described. Fig. 5 is a diagram showing an example of the data structure of the registered data according to the first embodiment. The registered data includes classes of "train name", "cause", and "situation", and registered word strings of "123M", "overrun", and "delay", which are associated with each other.

[0040] Next, the character string conversion unit 14 converts the speech data into an input character string to obtain input text data (step S12). In this example, the character string conversion unit 14 obtains the text data "Delay occurred due to 123M connection." Then, the character string conversion unit 14 supplies the input text data to the class estimation unit 15. Note that step S12 may be performed before step S11, or steps S11 and S12 may be performed in parallel.

[0041] Next, the class estimation unit 15 performs a first class estimation process on the input word string included in the input character string of the input text data, and estimates a class corresponding to each of the input word strings (step S13). FIG. 6 is a diagram showing an example of a data structure of the first class estimation process result according to the first embodiment. The class estimation unit 15 recognizes "123M", "ekitsuu" and "delay" as the input word strings, and estimates the classes of "train name", "cause" and "situation" corresponding to each of them. Then, the class estimation unit 15 supplies the input word string ("ekitsuu") that has no correlation with any of the registered word strings in the record of the registered data, and the estimated class ("cause") to the dictionary generation unit 17.

[0042] Next, the dictionary generation unit 17 generates a dictionary by associating the input word string supplied from the class estimation unit 15 with a registered word string associated with the estimated class in the registered data (step S14). Fig. 7 is a diagram showing an example of the data structure of a dictionary generated by the dictionary generation device 10 according to the first embodiment. In this example, the generated dictionary is a table that associates the input word string "EKITSU", which has no correlation with any registered word string in the record of the registered data, with the registered word string "OVERRUN", which is associated with the class "Cause" in the registered data.

[0043] The first class estimation process shown in step S13 in Fig. 4 will now be described in detail with reference to Figs. 8 to 11. Fig. 8 is a flowchart showing an example of the first class estimation process according to the first embodiment.

[0044] First, the class estimation unit 15 divides an input character string into input word strings by morphological analysis or the like, and extracts a plurality of input word strings from the divided input word strings (step S20). Fig. 9 is a diagram for explaining the first class estimation process according to the first embodiment. In this example, "123M", "ekitsu", and "delay" are extracted from text data "Delay occurred due to 123M ekitsu".

[0045] At this time, the class estimation unit 15 may perform preprocessing on the input word string, such as normalizing characters that have the same pronunciation and can be interchanged with each other (for example, half-width and full-width, uppercase and lowercase, and kanji, katakana, and hiragana).

[0046] Then, the process shown in the following steps S21 to S24 is repeated for each extracted input word string.

[0047] The class estimation unit 15 searches the extracted input word string for each of a plurality of registered word strings (step S21).

[0048] Then, the class estimation unit 15 judges whether or not any of the registered word strings is hit, that is, whether or not there is a correlated registered word string (step S22). If the class estimation unit 15 judges that there is a hit (Yes in step S22), it estimates the class associated with the registered word string in the record of the registered data as the class of the input word string (step S23). In this example, the class of "123M" is estimated to be "train name", and the class of "delay" is estimated to be "situation".

[0049] On the other hand, if the class estimation unit 15 determines that there is no hit (No in step S22), it reserves the estimation of the class of the input word string and proceeds to the next process (step S24).

[0050] Then, the class estimation unit 15 checks whether or not there is a hit for all input word strings, and then causes the display unit 16 to display the input word strings for which there is no hit and the class of the registered data (step S25).

[0051] 10 and 11 are diagrams showing an example of the display of the display unit 16 according to the first embodiment. As shown in FIG. 10, for example, the display unit 16 displays the input word string "EKITSU" for which there was no hit, and the class of the record of the registered data including the class "Cause" of the registered word string that was not correlated with any of the input word strings. The display unit 16 may then allow the operator to select the class of the input word string for which there was no hit using a pull-down menu or the like. Also, as shown in FIG. 11, the display unit 16 may display the input word string "EKITSU" for which there was no hit, the class of the registered word string that was not correlated with any of the input word strings, and "Cause", and prompt the operator to confirm or correct it.

[0052] In addition, in FIGS. 10 and 11, the input word strings that have hits and the classes of the registered word strings that have hits are displayed in association with each other, but this may be omitted.

[0053] Then, based on the operator's input, the class estimation unit 15 selects a class for the input word string that has no hits, excluding classes of registered word strings that are correlated with other input word strings that have hits (step S26). As a result, the class estimation unit 15 estimates the selected class as the class for the input word string that has no hits.

[0054] In this way, the class estimation unit 15 of the dictionary generation device 10 semi-automatically estimates the class of the input word string based on the speech data, and registers synonyms based on the estimated class. The display unit 16 of the dictionary generation device 10 then displays the input word strings that are not correlated with the registered word string, and prompts the operator to select a class. This allows the operator to select a class only for the class of the input word string that is not correlated with the registered word string, thereby reducing the workload of dictionary generation.

[0055] After the dictionary is generated, the class estimation unit 15 may use the generated dictionary to estimate the class of a word string included in the character string. In this case, instead of step S20, the class estimation unit 15 may use the generated dictionary to divide the input character string into input word strings by morphological analysis or the like, and extract a plurality of input word strings from the divided input word strings. Also, instead of step S21, the class estimation unit 15 may search for each of the registered word strings to which synonyms associated with the registered word string in the dictionary have been added, from the extracted input word string. Hereinafter, this class estimation process using a dictionary and search will be referred to as a second class estimation process.

[0056] In this case, instead of step S14, the dictionary generation unit 17 may generate a record that associates the input word string supplied from the class estimation unit 15 with a registered word string associated with the estimated class in the registered data, and update the dictionary in the dictionary storage unit 18. This makes it possible to avoid duplicate registration in the dictionary, and further reduce the workload of the operator from the next time onwards.

[0057] As described above, according to the first embodiment, the dictionary creation device 10 semi-automatically associates an input word string based on spoken voice data with a pre-registered word string, thereby reducing the workload of registering synonyms.

[0058] <Embodiment 2> Next, a second embodiment of the present disclosure will be described with reference to Figs. 12 to 15. Fig. 12 is a block diagram showing an example of a configuration of a voice recognition device 30a according to the second embodiment. The voice recognition device 30a according to the second embodiment basically has the same functions as the voice recognition device 30 according to the first embodiment. However, the voice recognition device 30a has a dictionary generation device 10a built therein.

[0059] The speech recognition device 30a includes, in addition to the various components of the dictionary creation device 10a, a mode processing unit 21a, a label assignment unit 22, a correct labeled data storage unit 23, and an output unit 24. The speech recognition device 30a has three operation modes: a "dictionary and learning data generation mode," a "learning mode," and an "operational mode," and operates the components according to the selected operation mode.

[0060] The "dictionary and training data generation mode" is an operation mode that generates a dictionary and generates training data for a class estimation model based on the third class estimation process described later. The "training mode" is an operation mode that trains a class estimation model. And the "operational mode" is a mode that uses the trained class estimation model to estimate classes corresponding to word strings included in speech data.

[0061] The mode processing unit 21a controls the connections between the components using switches SW1-8 provided between the components according to the selected operation mode, and selects the components to be used. The mode processing unit 21a is connected to a class estimation unit 15a (described later) and causes the class estimation unit 15a to execute class estimation processing according to the selected operation mode.

[0062] The dictionary creation device 10a basically has the same configuration and functions as the dictionary creation device 10 according to the first embodiment. However, the dictionary creation device 10a has a class estimation unit 15a instead of the class estimation unit 15.

[0063] The class estimation unit 15a performs class estimation processing on the input word string supplied from the character string conversion unit 14 in accordance with the selected operation mode, and estimates the class of the input word string. When the operation mode is the “dictionary and learning data generation mode”, the class estimation unit 15a estimates the class of a word string included in an input string for learning, using the dictionary generated in the previous process (second class estimation process).

[0064] On the other hand, when the operation mode is the "learning mode" or the "operational mode", the class estimation unit 15a estimates the class of the word string of the learning data or the input word string by a class estimation model that uses the dictionary generated in the "dictionary and learning data generation mode" (third class estimation process). Note that when the operation mode is the "learning mode", the class estimation unit 15a further optimizes the class estimation model based on the estimated class and the correct label.

[0065] The labeling unit 22 assigns the estimated class as a correct label to the input word string included in the learning input string, and generates text data with a correct label. The correct-labeled data storage unit 23 then stores the correct-labeled text data in the correct-labeled data storage unit 23.

[0066] The correct labeled data storage unit 23 is a storage medium that stores correct labeled text data. The various components of the dictionary generation device 10a, the label assignment unit 22, and the correct-labeled data storage unit 23 configure a training data generation device 20a. The training data generation device 20a has the same functions as the training data generation device 20 according to the first embodiment, but differs from the training data generation device 20a in that it is incorporated in a speech recognition device 30a and that the dictionary generation device 10a is incorporated therein.

[0067] When the operation mode is the "operational mode", the output unit 24 outputs the input word string and the estimated class in a predetermined data format.

[0068] Fig. 13 is a flowchart showing an example of processing in a dictionary and learning data generation mode of the voice recognition device 30a according to the embodiment 2. Note that steps similar to those in Fig. 4 are given the same reference numerals and descriptions thereof will be omitted as appropriate.

[0069] First, the mode processing unit 21a of the voice recognition device 30a sets the operation mode to the "dictionary and learning data generation mode" (step S30). Then, the mode processing unit 21a connects the registered data storage unit 13 to the class estimation unit 15 (SW1), the character string conversion unit 14 to the class estimation unit 15a (SW2), the display unit 16 to the mode processing unit 21a (SW3), the class estimation unit 15a to the dictionary generation unit 17 (SW4), the class estimation unit 15a to the label assignment unit 22 (SW5), and the dictionary storage unit 18 to the mode processing unit 21a (SW6).

[0070] Next, the speech data acquisition unit 11 of the voice recognition device 30a acquires the speech data (step S10). Next, the registration data acquisition unit 12 of the voice recognition device 30a stores the registration data in the registration data storage unit 13 (step S11). In addition, the character string conversion unit 14 of the voice recognition device 30a converts the speech data into an input character string (step S12).

[0071] Next, the class estimation unit 15a of the speech recognition device 30a performs the above-mentioned second class estimation process on the input word string included in the input character string, using the dictionary supplied from the dictionary storage unit 18 and the registered data supplied from the registered data storage unit 13 (step S31). Then, the class estimation unit 15a supplies the input word string that is not correlated with any of the registered word strings and the estimated class to the dictionary generation unit 17, and also supplies each input word string and each estimated class to the correct-labeled data storage unit 23.

[0072] Next, the dictionary generation unit 17 of the speech recognition device 30a generates a record that associates the input word string provided by the class estimation unit 15a with a registered word string associated with the estimated class in the registered data, and updates the dictionary (step S32).

[0073] The labeled data storage unit 23 also annotates the text data using the classes estimated for each input word string, generating labeled text data (step S33). The labeled data storage unit 23 then ends the process. Note that step S33 may be performed before step S32, or steps S32 and S33 may be performed in parallel.

[0074] FIG. 14 is a flowchart illustrating an example of a process in the learning mode of the voice recognition device 30a according to the second embodiment. First, the mode processing unit 21a sets the operation mode to the "learning mode" (step S40). Then, the mode processing unit 21a connects the dictionary storage unit 18 to the mode processing unit 21a (SW6), the correct labeled data storage unit 23 to the mode processing unit 21a (SW7), and the class estimation unit 15a to the output unit 24 (SW8).

[0075] Next, the class estimation unit 15a acquires the correct-labeled text data from the correct-labeled data storage unit 23 (step S41). The correct-labeled text data is data generated by the training data generation device 20a of the speech recognition device 30a.

[0076] Next, the class estimation unit 15a uses the answer-added text data as learning data to learn a class estimation model based on the third class estimation process (step S42). At this time, the class estimation unit 15a inputs text data included in the answer-added text data to the class estimation model, and updates the class estimation model based on the error between the class output by executing the third class estimation process and the correct label. The third class estimation process includes a process of dividing the character string of the text data into word strings and extracting them, and a process of estimating a class for the extracted word string, and is executed using a dictionary generated in the "dictionary and learning data generation mode".

[0077] The class estimation unit 15a optimizes the class estimation model by repeating this process a predetermined number of times (step S43).

[0078] Fig. 15 is a flowchart showing an example of a process in the operation mode of the voice recognition device 30a according to the embodiment 2. Note that steps similar to those in Fig. 13 are given the same reference numerals and the description thereof will be omitted as appropriate.

[0079] First, the mode processing unit 21a sets the operation mode to the "operation mode" (step S50). Then, the mode processing unit 21a connects the character string conversion unit 14 to the class estimation unit 15a (SW2), the dictionary storage unit 18 to the mode processing unit 21a (SW6), and the class estimation unit 15a to the output unit 24 (SW8).

[0080] Next, the speech voice data acquisition unit 11 acquires speech voice data (step S10). Next, the character string conversion unit 14 converts the speech voice data into an input character string (step S12).

[0081] Next, the class estimation unit 15a executes a third class estimation process by a trained class estimation model using the dictionary stored in the dictionary storage unit 18, and estimates a class corresponding to the input word string included in the speech voice data (step S51). The class estimation unit 15a supplies the estimation result to the output unit 24.

[0082] Then, the output unit 24 outputs the input word string and the estimated class in a predetermined data format (step S52).

[0083] Thus, according to the second embodiment, the voice recognition device 30a can generate training data in parallel while obtaining the same effects as those of the first embodiment. Furthermore, since the voice recognition device 30a estimates the class of a word string included in a character string using the generated dictionary, it is possible to improve the efficiency of annotation work in addition to dictionary generation work, and further reduce the workload. Therefore, it is possible to easily obtain a large amount of training data, and the estimation accuracy of the class estimation model is improved.

[0084] <Embodiment 3> Next, a third embodiment of the present disclosure will be described with reference to Fig. 16. The third embodiment is characterized in that a speech recognition device 30a generates and updates a dictionary using a trained class estimation model.

[0085] The voice recognition device 30a according to the third embodiment has the same functions and configuration as the voice recognition device 30a according to the second embodiment. The voice recognition device 30a according to the third embodiment has a "dictionary generation mode" in addition to the operation modes of the second embodiment. The "dictionary generation mode" is an operation mode in which a dictionary is generated using a class estimation model that has been trained in the "learning mode."

[0086] Fig. 16 is a flowchart showing an example of processing in a dictionary generation mode of the voice recognition device 30a according to the third embodiment. Steps in Fig. 16 include steps S60 to S62 instead of steps S30, S31, and S33 in Fig. 13. Steps similar to those in Fig. 13 are denoted by the same reference numerals and will not be described as appropriate.

[0087] First, the class estimation unit 15a sets the operation mode to the "dictionary generation mode" (step S60). Then, the mode processing unit 21a connects the registered data storage unit 13 to the class estimation unit 15 (SW1), the character string conversion unit 14 to the class estimation unit 15a (SW2), the class estimation unit 15a to the dictionary generation unit 17 (SW4), and the dictionary storage unit 18 to the mode processing unit 21a (SW6).

[0088] In response to the speech data being converted into the input character string through steps S10 to S12, the class estimation unit 15a executes a third class estimation process for the input word string using the trained class estimation model (step S61). In this third class estimation process, the class estimation unit 15a may extract the input word string of the input character string using a dictionary stored in the dictionary storage unit 18, and estimate the class of the input word string. Then, the class estimation unit 15a supplies the estimation result to the dictionary generation unit 17.

[0089] Next, the dictionary generating unit 17 compares the estimation result with the registered data (step S61). Specifically, the dictionary generating unit 17 compares the input word string with the registered word string associated with the class estimated corresponding to the input word string, and determines whether there is a correlation between the two. The determination of the presence or absence of correlation may be performed in the same manner as the determination of the presence or absence of correlation by the class estimation unit 15 of the dictionary generating device 10 of the first embodiment.

[0090] Next, the dictionary generating unit 17 updates the dictionary by associating input word strings and registered word strings that are in the same class but have no correlation with each other (step S32).

[0091] The speech recognition device 30a according to the third embodiment may further generate text data with a correct label in the above-mentioned "dictionary generation mode". In this case, in addition to step S60, the class estimation unit 15a may connect the class estimation unit 15a to the label assignment unit 22 (SW5). Then, in response to the dictionary being updated in step S32, the correct labeled data storage unit 23 may generate text data with a correct label, similar to the process shown in step S33 of FIG. 13.

[0092] As described above, according to the third embodiment, the speech recognition device 30a automatically associates an input word string with a registered word string using a trained class estimation model in the "dictionary generation mode", thereby further reducing the workload of registering synonyms. By further training the class estimation model in the "training mode" using the updated dictionary in this way, a more accurate class estimation model can be obtained.

[0093] In the above-mentioned embodiment, the computer is configured as a computer system including a personal computer, a word processor, etc. However, the present invention is not limited to this, and the computer can also be configured as a server of a LAN (local area network), a host for computer (personal computer) communication, a computer system connected to the Internet, etc. It is also possible to distribute functions to each device on the network and configure a computer as a whole network.

[0094] In addition, in the above-described embodiment, the present disclosure has been described as a hardware configuration, but the present disclosure is not limited to this. Any process of the present disclosure can be realized by causing a processor to execute a computer program.

[0095] In the above examples, the processor may be a central processing unit (CPU), a graphics processing unit (GPU), a field-programmable gate array (FPGA), a digital signal processor (DSP), an application specific integrated circuit (ASIC), or the like.

[0096] In the above example, the program can be stored and provided to the computer using various types of non-transitory computer readable media. The non-transitory computer readable media includes various types of tangible storage media. Examples of the non-transitory computer readable media include magnetic recording media (e.g., flexible disks, magnetic tapes, hard disk drives), magneto-optical recording media (e.g., magneto-optical disks), CD-ROM (Read Only Memory), CD-R, CD-R / W, DVD (Digital Versatile Disc), BD (Blu-ray (registered trademark) Disc), and semiconductor memory (e.g., mask ROM, PROM (Programmable ROM), EPROM (Erasable PROM), flash ROM, RAM (Random Access Memory)). The program may also be provided to the computer by various types of transitory computer readable media. Examples of the transitory computer readable media include electric signals, optical signals, and electromagnetic waves. The temporary computer-readable medium can supply the program to the computer via a wired communication path such as an electric wire or an optical fiber, or via a wireless communication path.

[0097] The order of execution of each process in the system and method shown in the claims, specification, and drawings is not specifically stated as "before," "prior to," etc., and may be implemented in any order as long as the output of a previous process is not used in a subsequent process. Even if the operational flow in the claims, specification, and drawings is described using "first," "next," etc. for convenience, it does not mean that it is essential to implement the process in this order.

[0098] Although the present disclosure has been described above with reference to the embodiments, the present disclosure is not limited to the above. Various modifications that can be understood by a person skilled in the art can be made to the configuration and details of the present disclosure within the scope of the invention.

[0099] A part or all of the above-described embodiments can be described as, but is not limited to, the following supplementary notes. (Additional Note) (Appendix 1) a registration data storage unit for storing registration data that associates a registration word string with a predetermined class; a character string conversion unit that converts the speech data into a character string; a class estimation unit that estimates a class of a word string included in the character string; a dictionary generating unit that generates a dictionary by associating a word string included in the character string with a registered word string associated with the estimated class when there is no correlation between the word string included in the character string and the registered word string associated with the estimated class; A dictionary generation system comprising: (Appendix 2) The character string includes a string of words, the enrollment data includes a record associating each of a plurality of enrollment word strings with a class; The class estimation unit includes: If the character string includes a word string that is correlated with any one of the plurality of registered word strings included in the record, a class associated with the registered word string that is correlated with the word string is estimated as a class of the word string; If the character string includes a word string that is not correlated with any of the plurality of registered word strings included in the record, a class in the record selected excluding a class associated with a registered word string that is correlated with other word strings included in the character string is estimated as a class of the uncorrelated word string. 2. A dictionary generation system as described in appendix 1. (Appendix 3) and a display unit that, when the character string includes a word string that is not correlated with any of the plurality of registered word strings included in the record, displays the uncorrelated word string and classes excluding classes associated with registered word strings that are correlated with other word strings included in the character string. 3. A dictionary generation system as described in appendix 2. (Appendix 4) The class estimation unit estimates a word string and a class corresponding to the word string from the character string using a trained class estimation model. 2. A dictionary generation system as described in appendix 1. (Appendix 5) The class estimation unit estimates a class of a word string included in the character string by using the generated dictionary. 5. A dictionary generation system according to any one of claims 1 to 4. (Appendix 6) A learning data generation system including a dictionary generation device, The dictionary generation device includes: a storage unit that stores enrollment data that associates enrollment word strings with predetermined classes; a character string conversion unit that converts the speech data into a character string; a class estimation unit that estimates a class of a word string included in the character string; a dictionary generating unit that generates a dictionary by associating a word string included in the character string with a registered word string associated with the estimated class when there is no correlation between the word string included in the character string and the registered word string associated with the estimated class; having The learning data generation system includes: Using the generated dictionary, a class of a word string included in a training string is estimated; The estimated class is assigned as a correct label to the word string included in the learning string, and text data with the correct label is generated. Training data generation system. (Appendix 7) The class estimation unit estimates a class of a word string included in the character string by using the generated dictionary. 7. A training data generation system as described in appendix 6. (Appendix 8) A speech recognition system including a training data generation system having a dictionary generation device, The dictionary generation device includes: a storage unit that stores enrollment data that associates enrollment word strings with predetermined classes; a character string conversion unit that converts the speech data into a character string; a class estimation unit that estimates a class of a word string included in the character string; a dictionary generating unit that generates a dictionary by associating a word string included in the character string with a registered word string associated with the estimated class when there is no correlation between the word string included in the character string and the registered word string associated with the estimated class; Including, The training data generation system estimates a class of a word string included in a training string using the generated dictionary, The estimated class is assigned as a correct label to a word string included in the learning string to generate text data with a correct label; The speech recognition system includes: training a class estimation model using the correct-labeled text data generated by the training data generation system as training data; Using the trained class estimation model, a class corresponding to a word string included in the speech data is estimated. Voice recognition system. (Appendix 9) The class estimation unit estimates a word string and a class corresponding to the word string from the character string using the trained class estimation model. 9. The speech recognition system of claim 8. (Appendix 10) A character string conversion step of converting the speech data into a character string; a class estimation step of estimating a class of a word string included in the character string; a dictionary generating step of generating a dictionary by associating the registered word string associated with the estimated class with the word string included in the character string when there is no correlation between the registered word string associated with the estimated class stored in a registration data storage unit that stores registration data associating the registered word string with a predetermined class and the word string included in the character string; A dictionary generation method comprising: (Appendix 11) A character string conversion step of converting the speech data into a character string; a class estimation step of estimating a class of a word string included in the character string; a dictionary generating step of generating a dictionary by associating the registered word string associated with the estimated class with the word string included in the character string when there is no correlation between the registered word string associated with the estimated class stored in a registration data storage unit that stores registration data associating the registered word string with a predetermined class and the word string included in the character string; A non-transitory computer-readable medium storing a dictionary generation program for causing a computer to execute the above. [Explanation of symbols]

[0100] 10, 10a Dictionary generation system (dictionary generation device) 11 Speech data acquisition unit 12 Registration data acquisition section 13 Registration data storage unit 14 String conversion section 15,15a Class Estimation Section 16 Display section 17 Dictionary Generation Unit 18 Dictionary storage section 20, 20a Learning data generating device 21a Mode processing section 22 Labeling section 23 Data storage with correct labels 24 Output section 30, 30a Voice recognition device

Claims

1. A registration data storage unit for storing registration data including records that associate each of a plurality of registered word strings with a predetermined class; a character string conversion unit that converts the speech voice data into a character string including a string of a plurality of words; if the character string includes a word string that matches any one of the plurality of registered word strings included in the record, or that has a degree of similarity therebetween that is higher than a threshold and that is determined to be correlated with each other, estimating a class associated with the registered word string that is correlated with the word string as a class of the word string; a class estimation unit that, when the character string does not match any of the plurality of registered word strings included in the record, or includes a word string whose similarity is lower than a threshold and which is determined to be uncorrelated with each other, estimates a class in the record selected excluding a class associated with a registered word string that is correlated with other word strings included in the character string, as a class of the uncorrelated word string; a dictionary generating unit that generates a dictionary by registering a word string included in the character string and one registered word string selected from the registered word strings associated with the estimated class in association with each other when the word string does not match each other or the similarity between the word string and each of the registered word strings associated with the estimated class is lower than a threshold and the word strings are determined to have no correlation with each other; A dictionary generation system comprising:

2. and a display unit that, when the character string includes a word string that is not correlated with any of the plurality of registered word strings included in the record, displays the uncorrelated word string and classes excluding classes associated with registered word strings that are correlated with other word strings included in the character string. The dictionary generating system according to claim 1 .

3. The class estimation unit estimates a word string and a class corresponding to the word string from the character string using a trained class estimation model. The dictionary generating system according to claim 1 .

4. The class estimation unit estimates a class of a word string included in the character string by using the generated dictionary. The dictionary generating system according to any one of claims 1 to 3.

5. A learning data generation system including a dictionary generation device, The dictionary generation device includes: a storage unit that stores enrollment data including a record that associates each of a plurality of enrollment word strings with a predetermined class; a character string conversion unit that converts the speech voice data into a character string including a string of a plurality of words; if the character string includes a word string that matches any one of the plurality of registered word strings included in the record, or that has a degree of similarity therebetween that is higher than a threshold and that is determined to be correlated with each other, estimating a class associated with the registered word string that is correlated with the word string as a class of the word string; a class estimation unit that, when the character string does not match any of the plurality of registered word strings included in the record, or includes a word string whose similarity is lower than a threshold and which is determined to be uncorrelated with each other, estimates a class in the record selected excluding a class associated with a registered word string that is correlated with other word strings included in the character string, as a class of the uncorrelated word string; a dictionary generating unit that generates a dictionary by registering a word string included in the character string and one registered word string selected from the registered word strings associated with the estimated class in association with each other when the word string does not match each other or the similarity between the word string and each of the registered word strings associated with the estimated class is lower than a threshold and the word strings are determined to have no correlation with each other; having The learning data generation system includes: Using the generated dictionary, a class of a word string included in a training string is estimated; The estimated class is assigned as a correct label to the word string included in the learning string, and text data with the correct label is generated. Training data generation system.

6. A speech recognition system including a training data generation system having a dictionary generation device, The dictionary generation device includes: a storage unit that stores enrollment data including a record that associates each of a plurality of enrollment word strings with a predetermined class; a character string conversion unit that converts the speech voice data into a character string including a string of a plurality of words; if the character string includes a word string that matches any one of the plurality of registered word strings included in the record, or that has a degree of similarity therebetween that is higher than a threshold and that is determined to be correlated with each other, estimating a class associated with the registered word string that is correlated with the word string as a class of the word string; a class estimation unit that, when the character string does not match any of the plurality of registered word strings included in the record, or includes a word string whose similarity is lower than a threshold and which is determined to be uncorrelated with each other, estimates a class in the record selected excluding a class associated with a registered word string that is correlated with other word strings included in the character string, as a class of the uncorrelated word string; a dictionary generating unit that generates a dictionary by registering a word string included in the character string and one registered word string selected from the registered word strings associated with the estimated class in association with each other when the word string does not match each other or the similarity between the word string and each of the registered word strings associated with the estimated class is lower than a threshold and the word strings are determined to have no correlation with each other; Including, The training data generation system estimates a class of a word string included in a training string using the generated dictionary, The estimated class is assigned as a correct label to a word string included in the learning string to generate text data with a correct label; The speech recognition system includes: training a class estimation model using the correct-labeled text data generated by the training data generation system as training data; Using the trained class estimation model, a class corresponding to a word string included in the speech data is estimated. Voice recognition system.

7. The class estimation unit estimates a word string and a class corresponding to the word string from the character string using the trained class estimation model.

7. The speech recognition system of claim 6.

8. storing enrollment data including a record associating each of a plurality of enrollment word strings with a predetermined class; Converting the speech data into a character string including a sequence of multiple words; if the character string includes a word string that matches any one of the plurality of registered word strings included in the record, or that has a degree of similarity therebetween that is higher than a threshold and that is determined to be correlated with each other, estimating a class associated with the registered word string that is correlated with the word string as a class of the word string; if the character string does not match any of the plurality of registered word strings included in the record, or includes a word string whose similarity is lower than a threshold and which is determined to be uncorrelated with each other, a class in the record selected excluding a class associated with a registered word string that is correlated with other word strings included in the character string is estimated as a class of the uncorrelated word string; a dictionary generating step of generating a dictionary by registering a word string included in the character string and one registered word string selected from the registered word strings associated with the estimated class in association with each other in a case where the word string does not match each other or the similarity between the word string and each of the registered word strings associated with the estimated class is lower than a threshold value and it is determined that there is no correlation between the word string and each of the registered word strings. A dictionary generation method comprising:

9. storing enrollment data including a record associating each of a plurality of enrollment word strings with a predetermined class; Converting the speech data into a character string including a sequence of multiple words; if the character string includes a word string that matches any one of the plurality of registered word strings included in the record, or that has a degree of similarity therebetween that is higher than a threshold and that is determined to be correlated with each other, estimating a class associated with the registered word string that is correlated with the word string as a class of the word string; if the character string does not match any of the plurality of registered word strings included in the record, or includes a word string whose similarity is lower than a threshold and which is determined to be uncorrelated with each other, a class in the record selected excluding a class associated with a registered word string that is correlated with other word strings included in the character string is estimated as a class of the uncorrelated word string; a dictionary generating step of generating a dictionary by registering the word string included in the character string and one registered word string selected from the registered word strings associated with the estimated class in association with each other in a case where the word string included in the character string does not match each other or the similarity between the word string and each registered word string is lower than a threshold value and it is determined that there is no correlation between the word string and each registered word string. A dictionary generation program that causes a computer to execute the above.

Citation Information

Patent Citations

  • Apparatus, method and program for preparing language model

    JP2006059105A

  • Specific information detecting device, specific information detecting method, and specific information detecting program

    JP2011039576A

  • Information processing device, information processing method, and program

    JP2016167027A

  • Leveraging corporal data for data parsing and predicting

    US20170371958A1