WO2019208859A1 - Method for generating pronunciation dictionary and apparatus therefor - Google Patents
Method for generating pronunciation dictionary and apparatus therefor Download PDFInfo
- Publication number
- WO2019208859A1 WO2019208859A1 PCT/KR2018/004971 KR2018004971W WO2019208859A1 WO 2019208859 A1 WO2019208859 A1 WO 2019208859A1 KR 2018004971 W KR2018004971 W KR 2018004971W WO 2019208859 A1 WO2019208859 A1 WO 2019208859A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- vocabulary
- user
- voice
- phonetic
- speech
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/01—Assessment or evaluation of speech recognition systems
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L15/18—Speech classification or search using natural language modelling
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/26—Speech to text systems
Definitions
- the present invention relates to a method for applying (generating) a user dictionary (ie, a user pronunciation dictionary) in an automatic speech recognition device.
- a user dictionary ie, a user pronunciation dictionary
- Speech recognition is a technology that converts speech into text using a computer. This technology has made a rapid improvement in recognition rate in recent years.
- Unregistered words are words that the language processing system cannot process. When a vocabulary that cannot be reflected in the system at the time of system development occurs in service, the system needs a function to cope with it. Without proper correspondence to unregistered words, the system's output cannot be guaranteed and even the system may not work.
- the default method for dealing with non-registered words is to set a default processing method, and in the worst case, give a fixed answer.
- a vocabulary is analyzed as a noun
- a vocabulary is unknown (converted to phonetic) in a translation
- a word unknown is output as a unknown word.
- User dictionaries can be applied in a more aggressive way to respond to unregistered words in the service system. That is, the user directly enters the information of the vocabulary and allows the system to refer to it. For example, in linguistic analysis, users can register vocabulary and vocabulary analysis information, and in translation, the original vocabulary and translated vocabulary information, and the system refers to this information during operation and processes unregistered words.
- phonetic symbols have different notation or classification criteria for each system, and there is no unified standard.
- users who are new to the system need to learn about notation. Or you should have a program that converts vocabulary to phonetic symbols, but most programs that convert vocabulary to phonetic symbols are not 100% accurate.
- An object of the present invention is to propose a method for easily and accurately registering a vocabulary and a corresponding phonetic symbol in speech recognition.
- An aspect of the present invention provides a method of generating a pronunciation dictionary by a speech recognition apparatus, the method comprising: receiving a voice from a user or a mechanical device; Recognizing the input voice using an acoustic model; Generating a phonetic symbol for the speech based on the recognized result; Receiving a user vocabulary from a user; And associating the input user vocabulary with the generated phonetic symbol and storing the same in the phonetic dictionary.
- evaluating the reliability of the recognized result evaluating the reliability of the recognized result; And when the reliability is less than a preset threshold, requesting the user vocabulary corresponding to the phonetic symbol.
- selecting a misrecognition and / or unrecognition portion from the recognized result And requesting the user vocabulary corresponding to the misrecognition and / or unrecognition portion.
- evaluating the reliability of the recognized result Preferably, evaluating the reliability of the recognized result; Generating a vocabulary candidate group that can be inferred from the phonetic symbols when the reliability is smaller than a preset threshold and searching from a text corpus; And after registering the searched vocabulary candidate group in the pronunciation dictionary, recognizing the voice using the acoustic model.
- the method may further include requesting a user to determine whether to register the searched vocabulary or the vocabulary before registering the pronunciation dictionary.
- evaluating the reliability of the recognized result Searching for a vocabulary that can be inferred from the dictionary by storing all inferred phonetic symbols corresponding to each word of a text corpus when the reliability is less than a preset threshold; And after registering the searched vocabulary in the pronunciation dictionary, recognizing the voice by using the acoustic model.
- the method may further include requesting a user to determine whether to register the searched word or words before registering the pronunciation dictionary.
- the weight of the acoustic model may be set higher than the weight of the language model to generate the phonetic symbols.
- candidates of all possible letters or phoneme units may be added to the pronunciation dictionary and the language model used to generate the phonetic symbols.
- the phonetic dictionary and the language model used to generate the phonetic symbols may consist of all possible letters or phoneme units.
- a method of generating a pronunciation dictionary in a speech recognition apparatus comprising: receiving a speech-text parallel corpus in which speech data and text are corresponded; Recognizing the voice data using an acoustic model; Generating a phonetic symbol and a text result for the speech data based on the recognized result; And updating the phonetic dictionary with respect to differently expressed parts by matching the phonetic-text parallel corpus with the phonetic symbols and the text results.
- the method may further include learning the acoustic model using the updated pronunciation dictionary and the speech-text parallel corpus.
- Another aspect of the invention the step of receiving text from the user or the machine; Requesting a voice of a corresponding vocabulary from a user of a vocabulary of an input text not included in the pronunciation dictionary; Recognizing the input voice using an acoustic model; Generating a phonetic symbol for the speech based on the recognized result; And associating the input user vocabulary with the generated phonetic symbol and storing the same in the phonetic dictionary.
- a voice recognition apparatus comprising: a voice input unit configured to receive a voice from a user; A vocabulary input unit for receiving a user vocabulary from a user; A memory for storing a pronunciation dictionary comprising a vocabulary and a pronunciation symbol corresponding to the vocabulary; And a processor for controlling the voice input unit, the vocabulary input unit, and the storage unit, wherein the processor receives a voice from a user through the voice input unit, recognizes the input voice using an acoustic model, Generates a phonetic symbol for the voice based on the recognized result using a language model, receives a user vocabulary from a user through the vocabulary input unit, and associates the input user vocabulary with the generated phonetic symbol. Can be stored in the pronunciation dictionary.
- a user may easily and accurately register a vocabulary and a corresponding phonetic symbol in speech recognition.
- the user does not need to receive a separate education and does not need a separate program.
- FIG. 1 is a block diagram of a speech recognition apparatus according to an embodiment of the present invention.
- FIG. 2 is a diagram illustrating a pronunciation dictionary of a speech recognition apparatus according to an embodiment of the present invention.
- FIG. 3 is a diagram for describing a method of generating a pronunciation dictionary, according to an exemplary embodiment.
- FIG. 4 is a diagram for describing a method of generating a pronunciation dictionary, according to an exemplary embodiment.
- FIG. 5 is a diagram for describing a method of generating a pronunciation dictionary, according to an exemplary embodiment.
- FIG. 6 illustrates a configuration of a voice recognizer according to an embodiment of the present invention.
- FIG. 7 is a diagram illustrating a method of generating a pronunciation dictionary of a speech recognition apparatus according to an embodiment of the present invention.
- FIG. 1 is a block diagram of a speech recognition apparatus according to an embodiment of the present invention.
- the speech recognition apparatus 100 may include a voice input unit 110 that receives a voice from a user, a vocabulary input unit 120 that receives a vocabulary from a user, various data related to voice (especially a pronunciation dictionary, an acoustic model, And a processor 140 for processing the voice of the input user and storing (updating) the pronunciation dictionary.
- a voice input unit 110 that receives a voice from a user
- a vocabulary input unit 120 that receives a vocabulary from a user
- various data related to voice especially a pronunciation dictionary, an acoustic model
- a processor 140 for processing the voice of the input user and storing (updating) the pronunciation dictionary.
- the voice input unit 110 may include a microphone, and when a user's uttered voice is input, the voice input unit 110 converts the voice signal into an electrical signal and outputs it to the processor 140.
- the vocabulary input unit 120 generates input data for a vocabulary input from a user or a mechanical device and outputs the input data to the processor 140.
- the vocabulary input unit 120 may be implemented as a keyboard, a key pad, a touch pad (static pressure / capacitance), or the like.
- the processor 140 may acquire a voice data of the user by applying a speech recognition algorithm or a speech recognition engine to a signal received from the voice input unit 110.
- the signal input to the processor 140 may be converted into a more useful form for speech recognition, the processor 140 converts the input signal from analog form to digital form and detects the start and end points of the voice. To detect the actual speech section / data included in the speech data. This is called end point detection (EPD).
- EPD end point detection
- the processor 140 may perform Cepstrum, Linear Predictive Coefficient (LPC), Mel Frequency Cepstral Coefficient (MFCC), or Filter Bank energy within the detected interval.
- LPC Linear Predictive Coefficient
- MFCC Mel Frequency Cepstral Coefficient
- Filter Bank energy may be applied to extract a feature vector of a signal.
- the processor 140 may store information about the end point of the voice data and the feature vector by using the memory 130 that stores the data.
- the memory 130 may be a flash memory, a hard disc, a memory card, a read-only memory (ROM), a random access memory (RAM), a memory card, an electrically erasable programmable memory (EPEPROM).
- a storage medium may include at least one of a read-only memory (PROM), a programmable read-only memory (PROM), a magnetic memory, a magnetic disk, and an optical disk.
- the processor 140 may obtain a recognition result by comparing the extracted feature vector with the trained reference pattern.
- an acoustic model for modeling and comparing signal characteristics of speech and a language model for modeling linguistic order relations such as words or syllables corresponding to a recognized vocabulary may be used.
- the acoustic model may be further divided into a direct comparison method of setting a recognition object as a feature vector model and comparing it with a feature vector of speech data and a statistical method of statistically processing the feature vector of the recognition object.
- the direct comparison method is a method of setting a unit of a word, a phoneme, or the like to be recognized as a feature vector model and comparing how similar the input speech is.
- a vector quantization method is used. According to the vector quantization method, a feature vector of input speech data is mapped with a codebook, which is a reference model, and encoded into a representative value to compare the code values.
- the statistical model method is a method of constructing a unit for a recognition object into a state sequence and using a relationship between state columns.
- the status column may consist of a plurality of nodes.
- Methods using the relationship between the state columns again include Dynamic Time Warping (DTW), Hidden Markov Model (HMM), and neural networks.
- DTW Dynamic Time Warping
- HMM Hidden Markov Model
- Dynamic time warping is a method of compensating for differences in the time axis when considering the dynamic characteristics of speech whose length varies over time even if the same person pronounces the same. Assuming a Markov process with probability and observed probability of nodes (output symbols) in each state, we estimate state transition probability and observed probability of the nodes from the training data, and calculate the probability that the voice input from the estimated model will occur. Is a recognition technology.
- a language model that models linguistic order relations such as words or syllables may apply acoustic relations between units constituting language to units obtained in speech recognition, thereby reducing acoustic ambiguity and reducing recognition errors.
- the linguistic model has a model based on a statistical language model and a finite state automata (FSA), and the statistical linguistic model uses a chain probability of words such as Unigram, Bigram, and Trigram.
- FSA finite state automata
- the processor 140 may use any of the methods described above in recognizing the voice. For example, an acoustic model with a hidden Markov model may be used, or an N-best search method that integrates the acoustic model and the language model.
- the N-best search method can improve recognition performance by selecting up to N recognition result candidates using acoustic models and language models, and then re-evaluating the ranks of these candidates.
- the processor 140 may calculate a confidence score (or may be abbreviated as 'confidence') in order to secure the reliability of the recognition result.
- the confidence score is a measure of how reliable the result is for a speech recognition result. It can be defined as a relative value of the phoneme or word that is a recognized result and the probability that the word is spoken from other phonemes or words. have. Therefore, the reliability score may be expressed as a value between 0 and 1, or may be expressed as a value between 0 and 100. If the confidence score is larger than a predetermined threshold, the recognition result may be recognized, and if the confidence score is small, the recognition result may be rejected.
- the reliability score may be obtained according to various conventional reliability score obtaining algorithms.
- the processor 140 may perform the voice recognition operation using the acoustic model.
- the processor 140 may be implemented in a computer-readable recording medium using software, hardware, or a combination thereof.
- Hardware implementations include Application Specific Integrated Circuits (ASICs), Digital Signal Processors (DSPs), Digital Signal Processing Devices (DSPDs), Programmable Logic Devices (PLDs), Field Programmable Gate Arrays (FPGAs), Processors, and Micros It may be implemented using at least one of an electrical unit such as a controller (microcontrollers), a micro-processor (micro-processor).
- a software implementation it may be implemented with a separate software module that performs at least one function or operation, and the software code may be implemented by a software application written in a suitable programming language.
- the processor 140 implements the functions, processes, and / or methods proposed in FIGS. 2 to 7 to be described later.
- FIG. 2 is a diagram illustrating a pronunciation dictionary of a speech recognition apparatus according to an embodiment of the present invention.
- the pronunciation dictionary includes a vocabulary (surface form) 210 and a phonetic symbol 220 corresponding to each vocabulary.
- the phonetic symbol of the vocabulary of 'computer' may be represented as [K AH M P Y UW T ER].
- FIG. 2 illustrates English
- the present invention is not limited thereto and the present invention may be applied to all languages.
- the phonetic symbols representing the vocabulary and the pronunciation of each vocabulary may be expressed in different languages.
- FIG. 3 is a diagram for describing a method of generating a pronunciation dictionary, according to an exemplary embodiment.
- a user When a new word or pronunciation is added to a speech recognizer, a user inputs a vocabulary and a phonetic symbol pair by using a program or a program (which may generate a phonetic symbol different from the actual pronunciation). According to the embodiment of the present invention, the user only needs to input a voice or vocabulary.
- the user vocabulary for the voice recognizer (ie, the user vocabulary used in the voice recognizer) is composed of a surface layer form and a phonetic symbol of the vocabulary as described above.
- the voice recognizer may receive a voice from a user or a mechanical device to generate a phonetic symbol, and the voice recognizer may receive a user vocabulary from a user through a keyboard.
- the voice recognizer receives a voice from a user or a machine to generate a phonetic symbol [S IH STR AA N], receives a user vocabulary 'SYSTRAN' through a keyboard, and then pronounces the vocabulary 'SYSTRAN'.
- the process of matching [S IH STR AA N] as a symbol and registering it in a pronunciation dictionary (ie, memory) is illustrated.
- the speech recognizer minimizes the influence of a language model and maximizes the influence of an acoustic model among a myriad of phonetic candidates.
- the candidate with the highest score can be selected.
- the weight for the acoustic model may be set higher than the weight for the language model.
- a phonetic symbol may be generated using only an acoustic model among phonetic symbol candidates.
- all possible letters or phoneme unit candidates may be added to the phonetic dictionary and the language model. That is, phonetic symbols may be generated using a phonetic dictionary and a language model to which all possible letters or phoneme unit candidates are added.
- the phonetic dictionary and the language model may consist of all possible letter or phoneme unit candidates. That is, phonetic symbols may be generated using a phonetic dictionary and language model composed of all possible letters or phoneme unit candidates.
- the voice recognizer can generate phonetic symbols quickly, easily and accurately.
- the speech recognizer can generate a phonetic symbol as it is, without error, compared to a surface type vocabulary-pronounced symbol conversion program. Can be generated.
- the speech recognizer may be applied to a third language to generate phonetic symbols.
- FIG. 4 is a diagram for describing a method of generating a pronunciation dictionary, according to an exemplary embodiment.
- the phonetic symbol for the target voice is generated by the voice recognizer and the user only needs to input the corresponding vocabulary.
- the voice recognizer may receive a voice from a user or a machine to generate a phonetic symbol.
- the voice recognizer may receive a voice from a user or a machine, and recognize the input voice using an acoustic model.
- the speech recognizer may generate a phonetic symbol for the voice based on the recognized result.
- the voice recognizer recognizes the input voice and may automatically or manually (ie, by the user) select a misrecognized and unrecognized portion (that is, a portion that cannot determine the surface type vocabulary corresponding to the input voice). . Then, the surface type vocabulary corresponding to the misrecognition and the unrecognition portion can be directly input from the user or the mechanical device.
- the voice recognizer may store the phonetic vocabulary input from a user or a mechanical device and the phonetic symbols secured in a part of a false or unrecognized part of the voice recognizer in the phonetic dictionary.
- the voice recognizer generates a phonetic symbol [S IH S T R AA N] by receiving a voice from a user or a machine, but illustrates a case in which the surface type vocabulary cannot be determined.
- the voice recognizer requests a user of the surface type vocabulary corresponding to the phonetic symbol [S IH STR AA N], and the user uses the surface type vocabulary corresponding to the phonetic symbol [S IH STR AA N] (ie, 'SYSTRAN'). ) Can be input.
- the speech recognizer can store the phonetic word 'SYSTRAN' input from the user and the phonetic symbol [S IH STR AA N], which can be obtained from the part of the speech recognition that is misidentified or unrecognized. have.
- FIG. 5 is a diagram for describing a method of generating a pronunciation dictionary, according to an exemplary embodiment.
- FIG. 5 is an example opposite to the method of FIG. 4, in which a user recognizes only a voice corresponding to a vocabulary from a user and generates a phonetic symbol in a speech recognizer.
- the voice recognizer may receive a user vocabulary from a user through a keyboard.
- the voice recognizer determines whether the input user vocabulary exists in the existing pronunciation dictionary by comparing with the existing pronunciation dictionary. In other words, the voice recognizer may receive text from a user or a machine, and determine whether the text is present in a pronunciation dictionary among the vocabulary of the input text.
- the voice recognizer may request a voice for the input user vocabulary.
- the voice recognizer when the voice recognizer receives a voice of a pronunciation corresponding to the corresponding vocabulary from a user or a machine, the voice recognizer recognizes the user voice using an acoustic model.
- the voice recognizer may generate a phonetic symbol corresponding to the input voice, and store the phonetic dictionary in correspondence with the input surface type vocabulary and the generated phonetic symbol.
- the voice recognizer may request a voice for the 'SYSTRAN' from the user or the apparatus.
- a voice for 'SYSTRAN' is received from a user or a mechanical device, a phonetic symbol [S IH S T R AA N] may be generated from the voice.
- the input vocabulary 'SYSTRAN' and the generated phonetic symbol [S IH S T R AA N] may be associated with each other and stored in a pronunciation dictionary (ie, a memory).
- FIG. 6 illustrates a configuration of a voice recognizer according to an embodiment of the present invention.
- a new vocabulary may be automatically added to a pronunciation dictionary by automatically extracting an unregistered vocabulary from a voice / text pair. Based on this, a new acoustic model can be learned from the updated pronunciation dictionary and the speech / text pair.
- a speech recognizer when a speech recognizer receives a speech-text parallel corpus stored in correspondence with speech data, the speech recognizer recognizes speech data of the input speech-text parallel corpus using an acoustic model and pronounces the speech data from the speech data. Create a symbol. That is, the speech recognizer may generate a phonetic symbol and text result of the speech data from the result recognized using the existing phonetic dictionary and language model. Then, the phonetic symbols generated for the speech-text parallel corpus and the text results may be aligned with each other to generate phonetic symbols for each text. In other words, it is possible to update the phonetic dictionary with respect to differently expressed parts by matching the phonetic symbols and the text results with the speech-text parallel corpus. That is, a new pronunciation dictionary is generated.
- the speech recognizer learns the acoustic model using the input speech-text parallel corpus and the newly generated pronunciation dictionary.
- the speech recognizer can obtain an improved pronunciation dictionary and acoustic model.
- the new acoustic model obtained as described above may reduce the problem caused by the error of the existing phonetic symbol generator and reduce the learning ambiguity caused by the inconsistency between the text and the voice caused by the user's pronunciation error.
- FIG. 7 is a diagram illustrating a method of generating a pronunciation dictionary of a speech recognition apparatus according to an embodiment of the present invention.
- the voice recognition apparatus receives a voice from a user or a machine (S701).
- the speech recognition apparatus recognizes the input voice using an acoustic model in operation S702.
- the speech recognition apparatus may evaluate the reliability of the recognized result.
- the speech recognition apparatus may search for a lexical candidate group inferred by the phonetic symbols from the text corpus.
- the speech recognition apparatus may register the searched vocabulary candidate group in the pronunciation dictionary and then re-recognize the speech using the acoustic model.
- the speech recognition apparatus may evaluate the reliability of the recognized result.
- the speech recognition apparatus may search for a vocabulary that can be inferred from the dictionary by storing all inferred pronunciation symbols corresponding to each word of the text corpus.
- the speech recognition apparatus may register the searched vocabulary in the pronunciation dictionary, and then re-recognize the speech using the acoustic model.
- the speech recognition apparatus generates a phonetic symbol for the speech based on the recognized result (S703).
- a phonetic dictionary and a language model may be used to generate phonetic symbols.
- the weight of the acoustic model may be set higher than the weight for the language model to generate a phonetic symbol.
- candidates of all possible letters or phoneme units may be added to the pronunciation dictionary and the language model used to generate the phonetic symbols.
- the pronunciation dictionary and the language model used to generate the phonetic symbols may be composed of all possible letters or phoneme units.
- the speech recognition apparatus receives a user vocabulary from the user (S704).
- the voice recognition apparatus may request the voice corresponding to the user vocabulary.
- steps S701 to S703 may be performed after step S704.
- the speech recognition apparatus may evaluate the reliability of the result of the recognition in step S702. In this case, when the reliability is smaller than a preset threshold, the speech recognition apparatus may request the user vocabulary corresponding to the phonetic symbol and receive a user vocabulary from the user.
- the speech recognition apparatus may select a misrecognition and / or unrecognition portion from the recognition result in step S702.
- the voice recognition apparatus may request the user vocabulary corresponding to the misrecognition and / or unrecognized portion and receive a user vocabulary from a user.
- the speech recognition apparatus stores the input user vocabulary and the generated phonetic symbols in the phonetic dictionary (S705).
- the speech recognition apparatus may receive a speech-text parallel corpus stored in correspondence with speech data and text.
- the speech recognition apparatus may recognize the speech data using an acoustic model and generate a phonetic symbol for the speech data based on the recognized result using a pronunciation dictionary and a language model.
- the speech recognition apparatus may update the pronunciation dictionary by associating a phonetic symbol with respect to the voice data and the text.
- the speech recognition apparatus may learn the acoustic model using the updated pronunciation dictionary and the speech-text parallel corpus.
- Embodiments according to the present invention may be implemented by various means, for example, hardware, firmware, software, or a combination thereof.
- an embodiment of the present invention may include one or more application specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), FPGAs ( field programmable gate arrays), processors, controllers, microcontrollers, microprocessors, and the like.
- ASICs application specific integrated circuits
- DSPs digital signal processors
- DSPDs digital signal processing devices
- PLDs programmable logic devices
- FPGAs field programmable gate arrays
- processors controllers, microcontrollers, microprocessors, and the like.
- an embodiment of the present invention may be implemented in the form of a module, procedure, function, etc. that performs the functions or operations described above.
- the software code may be stored in memory and driven by the processor.
- the memory may be located inside or outside the processor, and may exchange data with the processor by various known means.
- the present invention can be applied to various speech recognition technologies.
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Machine Translation (AREA)
Abstract
Description
본 발명은 자동 음성인식 장치에서 사용자 사전(즉, 사용자 발음 사전)을 적용(생성)하기 위한 방법 이를 지원하는 장치에 관한 것이다. The present invention relates to a method for applying (generating) a user dictionary (ie, a user pronunciation dictionary) in an automatic speech recognition device.
자동음성인식은(이하 음성 인식) 컴퓨터를 이용하여 음성을 문자로 변환해주는 기술이다. 이 기술은 최근 들어 급격한 인식율 향상을 이뤘다.Automatic speech recognition (hereinafter referred to as speech recognition) is a technology that converts speech into text using a computer. This technology has made a rapid improvement in recognition rate in recent years.
다만, 언어처리 전반에 걸쳐 발생하는 문제가 언어처리에서도 발생하는데, 이는 바로 미등록어 문제이다. However, a problem that occurs throughout language processing also occurs in language processing, which is an unregistered language problem.
미등록어란 언어처리 시스템이 처리하지 못하는 어휘를 말한다. 시스템 개발 당시에 시스템에 반영하지 못한 어휘가 서비스 시 발생했을 때 시스템은 이에 대응하기 위한 기능이 필요하다. 미등록어에 적절히 대응하지 않을 경우 시스템의 결과물은 보증할 수 없으며 심지어 시스템이 동작하지 않을 수도 있다. Unregistered words are words that the language processing system cannot process. When a vocabulary that cannot be reflected in the system at the time of system development occurs in service, the system needs a function to cope with it. Without proper correspondence to unregistered words, the system's output cannot be guaranteed and even the system may not work.
미등록어에 대응하는 기본 방법은 기본 처리 방식을 정해두는 것이고 최악의 경우 정해진 답변을 내놓는다. 예를 들어 언어분석에서는 어휘를 명사로 분석하고, 번역에서는 모르는 어휘를 음차(소리나는 대로 변환)하고, 음성인식에서는 모르는 단어를 모르는 단어라고 출력한다.The default method for dealing with non-registered words is to set a default processing method, and in the worst case, give a fixed answer. For example, in linguistic analysis, a vocabulary is analyzed as a noun, in translation, a vocabulary is unknown (converted to phonetic) in a translation, and in a speech recognition a word unknown is output as a unknown word.
서비스 중인 시스템에서 미등록어에 대응하는 조금 더 적극적인 방법으로 사용자 사전을 적용할 수 있다. 즉, 사용자가 어휘의 정보를 직접 입력하고 시스템이 이를 참조하게 한다. 예를 들어 언어분석에서는 어휘와 어휘의 분석 정보를, 번역에서는 원 어휘와 번역 어휘 정보를 사용자가 등록할 수 있게 하고, 시스템은 운영 중에 이 정보를 참고하여 미등록어를 처리한다.User dictionaries can be applied in a more aggressive way to respond to unregistered words in the service system. That is, the user directly enters the information of the vocabulary and allows the system to refer to it. For example, in linguistic analysis, users can register vocabulary and vocabulary analysis information, and in translation, the original vocabulary and translated vocabulary information, and the system refers to this information during operation and processes unregistered words.
음성인식에서는 사용자가 어휘를 등록하려면 어휘와 그에 해당하는 발음기호를 등록해야 한다. In voice recognition, in order to register a vocabulary, a user must register a vocabulary and a corresponding phonetic symbol.
다만, 발음기호는 표기법이나 분류 기준이 시스템마다 다르며 통일된 기준이 없다. 또한, 시스템을 처음 접한 사용자는 표기법에 대한 별도의 학습이 필요하다. 아니면 어휘를 발음기호로 변환해주는 프로그램이 있어야 하지만 어휘를 발음기호로 변환해주는 대부분의 프로그램은 정확도가 100%가 아니다.However, phonetic symbols have different notation or classification criteria for each system, and there is no unified standard. In addition, users who are new to the system need to learn about notation. Or you should have a program that converts vocabulary to phonetic symbols, but most programs that convert vocabulary to phonetic symbols are not 100% accurate.
본 발명의 목적은, 음성 인식에서 사용자가 어휘와 그에 해당하는 발음 기호를 간편하고 정확하게 등록하는 방법을 제안한다. An object of the present invention is to propose a method for easily and accurately registering a vocabulary and a corresponding phonetic symbol in speech recognition.
본 발명에서 이루고자 하는 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급하지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.Technical problems to be achieved in the present invention are not limited to the above-mentioned technical problems, and other technical problems not mentioned above will be clearly understood by those skilled in the art from the following description. Could be.
본 발명의 일 양상은, 음성 인식 장치가 발음 사전을 생성하는 방법에 있어서, 사용자 혹은 기계장치로부터 음성을 입력받는 단계; 상기 입력된 음성을 음향 모델을 이용하여 인식하는 단계; 상기 인식된 결과를 기반으로 상기 음성에 대한 발음 기호를 생성하는 단계; 사용자로부터 사용자 어휘를 입력 받는 단계; 및 상기 입력된 사용자 어휘와 상기 생성된 발음 기호를 대응시켜 상기 발음 사전에 저장하는 단계를 포함할 수 있다. An aspect of the present invention provides a method of generating a pronunciation dictionary by a speech recognition apparatus, the method comprising: receiving a voice from a user or a mechanical device; Recognizing the input voice using an acoustic model; Generating a phonetic symbol for the speech based on the recognized result; Receiving a user vocabulary from a user; And associating the input user vocabulary with the generated phonetic symbol and storing the same in the phonetic dictionary.
바람직하게, 상기 인식한 결과에 대한 신뢰도를 평가하는 단계; 및 상기 신뢰도가 기 설정된 임계값보다 작을 때, 상기 발음 기호와 대응되는 상기 사용자 어휘를 요청하는 단계를 더 포함할 수 있다. Preferably, evaluating the reliability of the recognized result; And when the reliability is less than a preset threshold, requesting the user vocabulary corresponding to the phonetic symbol.
바람직하게, 상기 인식한 결과에서 오인식 및/또는 미인식 부분을 선택하는 단계; 및 상기 오인식 및/또는 미인식 부분에 대응되는 상기 사용자 어휘를 요청하는 단계를 더 포함할 수 있다.Preferably, selecting a misrecognition and / or unrecognition portion from the recognized result; And requesting the user vocabulary corresponding to the misrecognition and / or unrecognition portion.
바람직하게, 상기 인식한 결과에 대한 신뢰도를 평가하는 단계; 상기 신뢰도가 기 설정된 임계값보다 작을 때, 상기 발음 기호로 유추 가능한 어휘 후보군을 생성하여 텍스트 말뭉치로부터 검색하는 단계; 및 상기 검색된 어휘 후보군을 상기 발음 사전에 등록한 후, 상기 음성을 상기 음향 모델을 이용하여 재인식하는 단계를 더 포함할 수 있다. Preferably, evaluating the reliability of the recognized result; Generating a vocabulary candidate group that can be inferred from the phonetic symbols when the reliability is smaller than a preset threshold and searching from a text corpus; And after registering the searched vocabulary candidate group in the pronunciation dictionary, recognizing the voice using the acoustic model.
바람직하게, 상기 검색된 어휘 혹은 어휘들을 발음사전에 등록하기 전 사용자에게 등록 여부를 결정을 요청하는 단계를 더 포함할 수 있다.Preferably, the method may further include requesting a user to determine whether to register the searched vocabulary or the vocabulary before registering the pronunciation dictionary.
바람직하게, 상기 인식한 결과에 대한 신뢰도를 평가하는 단계; 상기 신뢰도가 기 설정된 임계값보다 작을 때, 텍스트 말뭉치의 각 단어에 대하여 모든 유추 가능한 발음 기호가 대응되어 저장된 사전으로부터 상기 발음 기호로 유추 가능한 어휘를 검색하는 단계; 및 상기 검색된 어휘를 상기 발음 사전에 등록한 후, 상기 음성을 상기 음향 모델을 이용하여 재인식하는 단계를 더 포함할 수 있다. Preferably, evaluating the reliability of the recognized result; Searching for a vocabulary that can be inferred from the dictionary by storing all inferred phonetic symbols corresponding to each word of a text corpus when the reliability is less than a preset threshold; And after registering the searched vocabulary in the pronunciation dictionary, recognizing the voice by using the acoustic model.
바람직하게, 상기 검색된 어휘 혹은 어휘들을 발음사전에 등록하기 전 사용자에게 등록 여부의 결정을 요청하는 단계를 더 포함할 수 있다.Preferably, the method may further include requesting a user to determine whether to register the searched word or words before registering the pronunciation dictionary.
바람직하게, 상기 발음 기호를 생성하기 위하여 상기 음향 모델의 가중치가 상기 언어 모델에 대한 가중치 보다 높게 설정될 수 있다. Preferably, the weight of the acoustic model may be set higher than the weight of the language model to generate the phonetic symbols.
바람직하게, 상기 발음 기호를 생성하기 위하여 이용되는 상기 발음 사전 및 상기 언어 모델에 가능한 모든 글자 또는 자소 단위의 후보가 추가될 수 있다. Preferably, candidates of all possible letters or phoneme units may be added to the pronunciation dictionary and the language model used to generate the phonetic symbols.
바람직하게, 상기 발음 기호를 생성하기 위하여 이용되는 상기 발음 사전 및 상기 언어 모델은 가능한 모든 글자 혹은 자소 단위로만 구성될 수 있다. Preferably, the phonetic dictionary and the language model used to generate the phonetic symbols may consist of all possible letters or phoneme units.
본 발명의 다른 일 양상은, 음성 인식 장치가 발음 사전을 생성하는 방법에 있어서, 음성 데이터와 텍스트가 대응되어 저장된 음성-텍스트 병렬 말뭉치를 입력 받는 단계; 상기 음성 데이터를 음향 모델을 이용하여 인식하는 단계; 상기 인식된 결과를 기반으로 상기 음성 데이터에 대한 발음 기호 및 텍스트 결과를 생성하는 단계; 및 상기 음성-텍스트 병렬 말뭉치를 상기 발음기호 및 텍스트 결과를 대응시켜, 서로 다르게 표현된 부분에 대해 상기 발음 사전을 업데이트하는 단계를 더 포함할 수 있다. According to another aspect of the present invention, there is provided a method of generating a pronunciation dictionary in a speech recognition apparatus, the method comprising: receiving a speech-text parallel corpus in which speech data and text are corresponded; Recognizing the voice data using an acoustic model; Generating a phonetic symbol and a text result for the speech data based on the recognized result; And updating the phonetic dictionary with respect to differently expressed parts by matching the phonetic-text parallel corpus with the phonetic symbols and the text results.
바람직하게, 상기 업데이트된 발음 사전과 상기 음성-텍스트 병렬 말뭉치를 이용하여 상기 음향 모델을 학습하는 단계를 더 포함할 수 있다. Preferably, the method may further include learning the acoustic model using the updated pronunciation dictionary and the speech-text parallel corpus.
본 발명의 다른 일 양상은, 사용자 혹는 기계장치로부터 텍스트를 입력받는 단계; 입력된 텍스트의 어휘 중 상기 발음 사전에 없는 어휘에 대해 사용자에게 해당 어휘의 음성을 요청하는 단계; 상기 입력된 음성을 음향 모델을 이용하여 인식하는 단계; 상기 인식된 결과를 기반으로 상기 음성에 대한 발음 기호를 생성하는 단계; 및 상기 입력된 사용자 어휘와 상기 생성된 발음 기호를 대응시켜 상기 발음 사전에 저장하는 단계를 포함할 수 있다.Another aspect of the invention, the step of receiving text from the user or the machine; Requesting a voice of a corresponding vocabulary from a user of a vocabulary of an input text not included in the pronunciation dictionary; Recognizing the input voice using an acoustic model; Generating a phonetic symbol for the speech based on the recognized result; And associating the input user vocabulary with the generated phonetic symbol and storing the same in the phonetic dictionary.
본 발명의 다른 일 양상은, 음성 인식 장치에 있어서, 사용자로부터 음성을 입력받는 음성 입력부; 사용자로부터 사용자 어휘를 입력받는 어휘 입력부; 어휘와 상기 어휘에 대응되는 발음기호로 구성된 발음 사전을 저장하는 메모리; 및 상기 음성 입력부, 상기 어휘 입력부 및 상기 저장부를 제어하는 프로세서를 포함하고, 상기 프로세서는 상기 음성 입력부를 통해 사용자로부터 음성을 입력 받고, 상기 입력된 음성을 음향 모델을 이용하여 인식하고, 발음 사전과 언어 모델을 이용하여 상기 인식된 결과를 기반으로 상기 음성에 대한 발음 기호를 생성하며, 상기 어휘 입력부를 통해 사용자로부터 사용자 어휘를 입력 받고, 상기 입력된 사용자 어휘와 상기 생성된 발음 기호를 대응시켜 상기 발음 사전에 저장할 수 있다. According to another aspect of the present invention, there is provided a voice recognition apparatus comprising: a voice input unit configured to receive a voice from a user; A vocabulary input unit for receiving a user vocabulary from a user; A memory for storing a pronunciation dictionary comprising a vocabulary and a pronunciation symbol corresponding to the vocabulary; And a processor for controlling the voice input unit, the vocabulary input unit, and the storage unit, wherein the processor receives a voice from a user through the voice input unit, recognizes the input voice using an acoustic model, Generates a phonetic symbol for the voice based on the recognized result using a language model, receives a user vocabulary from a user through the vocabulary input unit, and associates the input user vocabulary with the generated phonetic symbol. Can be stored in the pronunciation dictionary.
본 발명의 실시예에 따르면, 음성인식에서 사용자가 어휘와 그에 해당하는 발음기호를 간편하고 정확하게 등록할 수 있다. According to an embodiment of the present invention, a user may easily and accurately register a vocabulary and a corresponding phonetic symbol in speech recognition.
또한, 본 발명의 실시예에 따르면, 사용자가 별도의 교육을 받을 필요가 없으며 또한 별도의 프로그램을 필요로 하지 않는다. In addition, according to the embodiment of the present invention, the user does not need to receive a separate education and does not need a separate program.
또한, 본 발명의 실시예에 따르면, 특정 언어에 구애되지 않고 모든 언어에 적용 가능하다. In addition, according to an embodiment of the present invention, it is applicable to all languages without regard to a specific language.
본 발명에서 얻을 수 있는 효과는 이상에서 언급한 효과로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.The effects obtainable in the present invention are not limited to the above-mentioned effects, and other effects not mentioned will be clearly understood by those skilled in the art from the following description. .
본 발명에 관한 이해를 돕기 위해 상세한 설명의 일부로 포함되는, 첨부 도면은 본 발명에 대한 실시예를 제공하고, 상세한 설명과 함께 본 발명의 기술적 특징을 설명한다.BRIEF DESCRIPTION OF THE DRAWINGS The accompanying drawings, included as part of the detailed description in order to provide a thorough understanding of the present invention, provide embodiments of the present invention and together with the description, describe the technical features of the present invention.
도 1은 본 발명의 일 실시예에 따른 음성 인식 장치의 블록도이다. 1 is a block diagram of a speech recognition apparatus according to an embodiment of the present invention.
도 2는 본 발명의 일 실시예에 따른 음성 인식 장치의 발음 사전을 예시하는 도면이다. 2 is a diagram illustrating a pronunciation dictionary of a speech recognition apparatus according to an embodiment of the present invention.
도 3은 본 발명의 일 실시예에 따른 발음 사전을 생성하는 방법을 설명하기 위한 도면이다. 3 is a diagram for describing a method of generating a pronunciation dictionary, according to an exemplary embodiment.
도 4는 본 발명의 일 실시예에 따른 발음 사전을 생성하는 방법을 설명하기 위한 도면이다. 4 is a diagram for describing a method of generating a pronunciation dictionary, according to an exemplary embodiment.
도 5는 본 발명의 일 실시예에 따른 발음 사전을 생성하는 방법을 설명하기 위한 도면이다. 5 is a diagram for describing a method of generating a pronunciation dictionary, according to an exemplary embodiment.
도 6은 본 발명의 일 실시예에 따른 음성 인식기의 구성을 예시한다. 6 illustrates a configuration of a voice recognizer according to an embodiment of the present invention.
도 7은 본 발명의 일 실시예에 따른 음성 인식 장치의 발음 사전을 생성하는 방법을 예시하는 도면이다. 7 is a diagram illustrating a method of generating a pronunciation dictionary of a speech recognition apparatus according to an embodiment of the present invention.
이하, 본 발명에 따른 바람직한 실시 형태를 첨부된 도면을 참조하여 상세하게 설명한다. 첨부된 도면과 함께 이하에 개시될 상세한 설명은 본 발명의 예시적인 실시형태를 설명하고자 하는 것이며, 본 발명이 실시될 수 있는 유일한 실시형태를 나타내고자 하는 것이 아니다. 이하의 상세한 설명은 본 발명의 완전한 이해를 제공하기 위해서 구체적 세부사항을 포함한다. 그러나, 당업자는 본 발명이 이러한 구체적 세부사항 없이도 실시될 수 있음을 안다. Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings. The detailed description, which will be given below with reference to the accompanying drawings, is intended to explain exemplary embodiments of the present invention and is not intended to represent the only embodiments in which the present invention may be practiced. The following detailed description includes specific details in order to provide a thorough understanding of the present invention. However, one of ordinary skill in the art appreciates that the present invention may be practiced without these specific details.
몇몇 경우, 본 발명의 개념이 모호해지는 것을 피하기 위하여 공지의 구조 및 장치는 생략되거나, 각 구조 및 장치의 핵심기능을 중심으로 한 블록도 형식으로 도시될 수 있다. In some instances, well-known structures and devices may be omitted or shown in block diagram form centering on the core functions of the structures and devices in order to avoid obscuring the concepts of the present invention.
도 1은 본 발명의 일 실시예에 따른 음성 인식 장치의 블록도이다. 1 is a block diagram of a speech recognition apparatus according to an embodiment of the present invention.
도 1을 참조하면, 음성 인식 장치(100)는 사용자로부터 음성을 입력 받는 음성 입력부(110), 사용자로부터 어휘를 입력 받는 어휘 입력부(120), 음성 관련 다양한 데이터(특히, 발음 사전, 음향 모델, 언어 모델 등)를 저장하는 메모리(130) 및 입력된 사용자의 음성을 처리하고 발음 사전을 저장(업데이트)하는 프로세서(140)를 포함할 수 있다. Referring to FIG. 1, the
음성 입력부(110)는 마이크로폰(microphone)을 포함할 수 있고, 사용자의 발화(utterance)된 음성이 입력되면 이를 전기적 신호로 변환하여 프로세서(140)로 출력한다. The
어휘 입력부(120)는 사용자 혹은 기계장치로부터 입력된 어휘에 대한 입력 데이터를 발생시켜 프로세서(140)로 출력한다. 어휘 입력부(120)는 키보드(keyboard), 키 패드(key pad), 터치 패드(정압/정전) 등으로 구현될 수 있다.The
프로세서(140)는 음성 입력부(110)로부터 수신한 신호에 음성 인식(speech recognition) 알고리즘 또는 음성 인식 엔진(speech recognition engine)을 적용하여 사용자의 음성 데이터를 획득할 수 있다.The
이때, 프로세서(140)로 입력되는 신호는 음성 인식을 위한 더 유용한 형태로 변환될 수 있으며, 프로세서(140)는 입력된 신호를 아날로그 형태에서 디지털 형태로 변환하고, 음성의 시작과 끝 지점을 검출하여 음성 데이터에 포함된 실제 음성 구간/데이터을 검출할 수 있다. 이를 EPD(End Point Detection)이라 한다.At this time, the signal input to the
그리고, 프로세서(140)는 검출된 구간 내에서 켑스트럼(Cepstrum), 선형 예측 코딩(Linear Predictive Coefficient: LPC), 멜프리퀀시켑스트럼(Mel Frequency Cepstral Coefficient: MFCC) 또는 필터 뱅크 에너지(Filter Bank Energy) 등의 특징 벡터 추출 기술을 적용하여 신호의 특징 벡터를 추출할 수 있다.In addition, the
프로세서(140)는 데이터를 저장하는 메모리(130)를 이용하여 음성 데이터의 끝 지점에 관한 정보 및 특징 벡터를 저장할 수 있다.The
메모리(130)는 플래시 메모리(flash memory), 하드 디크스(hard disc), 메모리 카드, 롬(ROM:Read-Only Memory), 램(RAM:Random Access Memory), 메모리 카드, EEPROM(Electrically Erasable Programmable Read-Only Memory), PROM(Programmable Read-Only Memory), 자기 메모리, 자기 디스크, 광디스크 중 적어도 하나의 저장 매체를 포함할 수 있다.The
그리고, 프로세서(140)는 추출된 특징 벡터와 훈련된 기준 패턴과의 비교를 통하여 인식 결과를 얻을 수 있다. 이를 위해, 음성의 신호적인 특성을 모델링하여 비교하는 음향 모델(Acoustic Model)과 인식 어휘에 해당하는 단어나 음절 등의 언어적인 순서 관계를 모델링하는 언어 모델(Language Model)이 사용될 수 있다.In addition, the
음향 모델은 다시 인식 대상을 특징 벡터 모델로 설정하고 이를 음성 데이터의 특징 벡터와 비교하는 직접 비교 방법과 인식 대상의 특징 벡터를 통계적으로 처리하여 이용하는 통계 방법을 나뉠 수 있다.The acoustic model may be further divided into a direct comparison method of setting a recognition object as a feature vector model and comparing it with a feature vector of speech data and a statistical method of statistically processing the feature vector of the recognition object.
직접 비교 방법은 인식 대상이 되는 단어, 음소 등의 단위를 특징 벡터 모델로 설정하고 입력 음성이 이와 얼마나 유사한지를 비교하는 방법으로서, 대표적으로 벡터 양자화(Vector Quantization) 방법이 있다. 벡터 양자화 방법에 의하면 입력된 음성 데이터의 특징 벡터를 기준 모델인 코드북(codebook)과 매핑시켜 대표 값으로 부호화함으로써 이 부호 값들을 서로 비교하는 방법이다.The direct comparison method is a method of setting a unit of a word, a phoneme, or the like to be recognized as a feature vector model and comparing how similar the input speech is. As a representative example, a vector quantization method is used. According to the vector quantization method, a feature vector of input speech data is mapped with a codebook, which is a reference model, and encoded into a representative value to compare the code values.
통계적 모델 방법은 인식 대상에 대한 단위를 상태 열(State Sequence)로 구성하고 상태 열 간의 관계를 이용하는 방법이다. 상태 열은 복수의 노드(node)로 구성될 수 있다. 상태 열 간의 관계를 이용하는 방법은 다시 동적 시간 와핑(Dynamic Time Warping: DTW), 히든 마르코프 모델(Hidden Markov Model: HMM), 신경 회로망을 이용한 방식 등이 있다.The statistical model method is a method of constructing a unit for a recognition object into a state sequence and using a relationship between state columns. The status column may consist of a plurality of nodes. Methods using the relationship between the state columns again include Dynamic Time Warping (DTW), Hidden Markov Model (HMM), and neural networks.
동적 시간 와핑은 같은 사람이 같은 발음을 해도 신호의 길이가 시간에 따라 달라지는 음성의 동적 특성을 고려하여 기준 모델과 비교할 때 시간 축에서의 차이를 보상하는 방법이고, 히든 마르코프 모델은 음성을 상태 천이 확률 및 각 상태에서의 노드(출력 심볼)의 관찰 확률을 갖는 마르코프 프로세스로 가정한 후에 학습 데이터를 통해 상태 천이 확률 및 노드의 관찰 확률을 추정하고, 추정된 모델에서 입력된 음성이 발생할 확률을 계산하는 인식 기술이다.Dynamic time warping is a method of compensating for differences in the time axis when considering the dynamic characteristics of speech whose length varies over time even if the same person pronounces the same. Assuming a Markov process with probability and observed probability of nodes (output symbols) in each state, we estimate state transition probability and observed probability of the nodes from the training data, and calculate the probability that the voice input from the estimated model will occur. Is a recognition technology.
한편, 단어나 음절 등의 언어적인 순서 관계를 모델링하는 언어 모델은 언어를 구성하는 단위들 간의 순서 관계를 음성 인식에서 얻어진 단위들에 적용함으로써 음향적인 모호성을 줄이고 인식의 오류를 줄일 수 있다. 언어 모델에는 통계적 언어 모델과 유한 상태 네트워크(Finite State Automata: FSA)에 기반한 모델이 있고, 통계적 언어 모델에는 Unigram, Bigram, Trigram 등 단어의 연쇄 확률이 이용된다.On the other hand, a language model that models linguistic order relations such as words or syllables may apply acoustic relations between units constituting language to units obtained in speech recognition, thereby reducing acoustic ambiguity and reducing recognition errors. The linguistic model has a model based on a statistical language model and a finite state automata (FSA), and the statistical linguistic model uses a chain probability of words such as Unigram, Bigram, and Trigram.
프로세서(140)는 음성을 인식함에 있어 상술한 방식 중 어느 방식을 사용해도 무방하다. 예를 들어, 히든 마르코프 모델이 적용된 음향 모델을 사용할 수도 있고, 음향 모델과 언어 모델을 통합한 N-best 탐색법을 사용할 수 있다. N-best 탐색법은 음향 모델과 언어 모델을 이용하여 N개까지의 인식 결과 후보를 선택한 후, 이들 후보의 순위를 재평가함으로써 인식 성능을 향상시킬 수 있다.The
프로세서(140)는 인식 결과의 신뢰성을 확보하기 위해 신뢰도 점수(confidence score)(또는 '신뢰도'로 약칭될 수 있음)를 계산할 수 있다.The
신뢰도 점수는 음성 인식 결과에 대해서 그 결과를 얼마나 믿을 만한 것인가를 나타내는 척도로서, 인식된 결과인 음소나 단어에 대해서, 그 외의 다른 음소나 단어로부터 그 말이 발화되었을 확률에 대한 상대값으로 정의할 수 있다. 따라서, 신뢰도 점수는 0 에서 1 사이의 값으로 표현할 수도 있고, 0 에서 100 사이의 값으로 표현할 수도 있다. 신뢰도 점수가 미리 설정된 임계값(threshold)보다 큰 경우에는 인식 결과를 인정하고, 작은 경우에는 인식 결과를 거절(rejection)할 수 있다.The confidence score is a measure of how reliable the result is for a speech recognition result. It can be defined as a relative value of the phoneme or word that is a recognized result and the probability that the word is spoken from other phonemes or words. have. Therefore, the reliability score may be expressed as a value between 0 and 1, or may be expressed as a value between 0 and 100. If the confidence score is larger than a predetermined threshold, the recognition result may be recognized, and if the confidence score is small, the recognition result may be rejected.
이외에도, 신뢰도 점수는 종래의 다양한 신뢰도 점수 획득 알고리즘에 따라 획득될 수 있다.In addition, the reliability score may be obtained according to various conventional reliability score obtaining algorithms.
신뢰도 점수가 임계값보다 크나, 사용자로부터 잘못된 인식이라는 피드백이 들어온 경우, 즉, 오인식인 경우, 프로세서(140)는 음향 모델을 이용하여 음성 재인식 동작을 수행할 수 있다. If the confidence score is greater than the threshold value, but the feedback of the false recognition from the user is received, that is, the false recognition, the
프로세서(140)는 소프트웨어, 하드웨어 또는 이들의 조합을 이용하여 컴퓨터로 읽을 수 있는 기록 매체 내에서 구현될 수 있다. 하드웨어적인 구현에 의하면, ASICs(Application Specific Integrated Circuits), DSPs(Digital Signal Processors), DSPDs(Digital Signal Processing Devices), PLDs(Programmable Logic Devices), FPGAs(Field Programmable Gate Arrays), 프로세서(processor), 마이크로 컨트롤러(microcontrollers), 마이크로 프로세서(micro-processor) 등의 전기적인 유닛 중 적어도 하나를 이용하여 구현될 수 있다.The
소프트웨어적인 구현에 의하면, 적어도 하나의 기능 또는 동작을 수행하는 별개의 소프트웨어 모듈과 함께 구현될 수 있고, 소프트웨어 코드는 적절한 프로그램 언어로 쓰여진 소프트웨어 어플리케이션에 의해 구현될 수 있다.According to a software implementation, it may be implemented with a separate software module that performs at least one function or operation, and the software code may be implemented by a software application written in a suitable programming language.
프로세서(140)는 이하에서 후술할 도 2 내지 도 7에서 제안된 기능, 과정 및/또는 방법을 구현한다. The
도 2는 본 발명의 일 실시예에 따른 음성 인식 장치의 발음 사전을 예시하는 도면이다. 2 is a diagram illustrating a pronunciation dictionary of a speech recognition apparatus according to an embodiment of the present invention.
도 2를 참조하면, 발음 사전은 어휘(표층형태)(210)와 각각의 어휘에 대응하는 발음 기호(220)를 포함한다. 일례로, 'computer'의 어휘에 대한 발음 기호는 [K AH M P Y UW T ER]로 표기될 수 있다. Referring to FIG. 2, the pronunciation dictionary includes a vocabulary (surface form) 210 and a
도 2에서는 영어를 예시하고 있으나, 본 발명이 이에 한정되는 것은 아니며 모든 언어에 본 발명이 적용될 수 있다. 또한, 어휘와 각각의 어휘의 발음을 표기하는 발음 기호는 서로 다른 언어로 표기될 수도 있다. Although FIG. 2 illustrates English, the present invention is not limited thereto and the present invention may be applied to all languages. In addition, the phonetic symbols representing the vocabulary and the pronunciation of each vocabulary may be expressed in different languages.
도 3은 본 발명의 일 실시예에 따른 발음 사전을 생성하는 방법을 설명하기 위한 도면이다. 3 is a diagram for describing a method of generating a pronunciation dictionary, according to an exemplary embodiment.
음성인식기에 새 단어나 발음이 기존과 다른 단어를 추가할 때, 기존에는 사용자가 직접 혹은 프로그램(실제 발음과 다른 발음기호를 생성할 수도 있음)을 이용해 어휘와 발음기호 쌍을 입력했지만, 도 3의 실시예에 따르면, 사용자가 음성이나 어휘만 입력하면 된다.When a new word or pronunciation is added to a speech recognizer, a user inputs a vocabulary and a phonetic symbol pair by using a program or a program (which may generate a phonetic symbol different from the actual pronunciation). According to the embodiment of the present invention, the user only needs to input a voice or vocabulary.
도 3를 참조하면, 음성인식기를 위한 사용자 어휘(즉, 음성인식기 내에서 이용되는 사용자 어휘)는 앞서 설명한 바와 같이, 어휘의 표층형태와 발음 기호로 구성된다. Referring to FIG. 3, the user vocabulary for the voice recognizer (ie, the user vocabulary used in the voice recognizer) is composed of a surface layer form and a phonetic symbol of the vocabulary as described above.
음성인식기는 사용자 혹은 기계장치로부터 음성을 입력받아 발음 기호를 생성할 수 있으며, 또한 음성인식기는 사용자로부터 키보드 등을 통해 사용자 어휘를 입력 받을 수 있다. The voice recognizer may receive a voice from a user or a mechanical device to generate a phonetic symbol, and the voice recognizer may receive a user vocabulary from a user through a keyboard.
도 3의 경우, 음성인식기는 사용자 혹은 기계장치로부터 음성을 입력받아 발음 기호 [S IH S T R AA N]을 생성하고, 키보드를 통해 사용자 어휘 'SYSTRAN'을 입력 받은 후, 어휘 'SYSTRAN'에 대한 발음 기호로서 [S IH S T R AA N]를 매칭시켜 발음 사전(즉, 메모리)에 등록하는 과정을 예시한다. In the case of FIG. 3, the voice recognizer receives a voice from a user or a machine to generate a phonetic symbol [S IH STR AA N], receives a user vocabulary 'SYSTRAN' through a keyboard, and then pronounces the vocabulary 'SYSTRAN'. The process of matching [S IH STR AA N] as a symbol and registering it in a pronunciation dictionary (ie, memory) is illustrated.
여기서, 음성인식기가 사용자 혹은 기계장치로부터 입력된 음성으로부터 발음 기호를 생성하는 방법의 일례로, 음성인식기는 음성인식 시에 무수히 많은 발음 기호 후보들 중에서 언어모델의 영향을 최소화하고 음향모델의 영향을 극대화함으로써 점수가 가장 높은 후보(혹은 후보들)을 선택할 수 있다. 일례로, 발음 기호를 생성하기 위하여 발음 기호 후보들의 점수를 도출할 때, 음향모델에 대한 가중치가 언어모델에 대한 가중치 보다 높게 설정될 수 있다. 또는, 발음 기호 후보들 중에서 음향모델만을 이용하여 발음 기호가 생성될 수도 있다. Here, as an example of a method in which a speech recognizer generates a phonetic symbol from a voice input from a user or a machine, the speech recognizer minimizes the influence of a language model and maximizes the influence of an acoustic model among a myriad of phonetic candidates. Thus, the candidate with the highest score (or candidates) can be selected. For example, when the scores of the phonetic symbol candidates are derived to generate phonetic symbols, the weight for the acoustic model may be set higher than the weight for the language model. Alternatively, a phonetic symbol may be generated using only an acoustic model among phonetic symbol candidates.
또한, 음성인식기가 발음 기호를 생성하는 방법의 다른 예로, 발음 사전 및 언어모델에, 가능한 모든 글자 혹은 자소 단위 후보가 추가될 수 있다. 즉, 가능한 모든 글자 혹은 자소 단위 후보가 추가된 발음 사전 및 언어모델을 이용하여 발음 기호가 생성될 수 있다. In addition, as another example of how the speech recognizer generates a phonetic symbol, all possible letters or phoneme unit candidates may be added to the phonetic dictionary and the language model. That is, phonetic symbols may be generated using a phonetic dictionary and a language model to which all possible letters or phoneme unit candidates are added.
또한, 음성인식기가 발음 기호를 생성하는 방법의 또 다른 예로, 발음 사전 및 언어모델이, 가능한 모든 글자 혹은 자소 단위 후보로만 구성될 수 있다. 즉, 가능한 모든 글자 혹은 자소 단위 후보로만 구성된 발음 사전 및 언어모델을 이용하여 발음 기호가 생성될 수 있다. In addition, as another example of a method in which the speech recognizer generates a phonetic symbol, the phonetic dictionary and the language model may consist of all possible letter or phoneme unit candidates. That is, phonetic symbols may be generated using a phonetic dictionary and language model composed of all possible letters or phoneme unit candidates.
위와 같은 방식을 이용하면 사용자가 발음 기호를 공부하지 않더라도 음성인식기는 빠르고 손쉽고 정확하게 발음 기호를 생성할 수 있다.Using the above method, even if the user does not study the phonetic symbols, the voice recognizer can generate phonetic symbols quickly, easily and accurately.
또한, 위와 같은 방식을 이용하면, 음성인식기는 표층형 어휘-발음 기호 변환 프로그램에 비해 오류가 없고 실제 인식할 발음 그대로의 발음 기호를 생성할 수 있으므로, 비표준 발음, 불규칙 발음도 문제없이 발음 기호를 생성할 수 있다. 또한, 음성인식기는 제3의 언어에도 적용하여 발음 기호를 생성할 수 있다.In addition, using the above-described method, the speech recognizer can generate a phonetic symbol as it is, without error, compared to a surface type vocabulary-pronounced symbol conversion program. Can be generated. In addition, the speech recognizer may be applied to a third language to generate phonetic symbols.
도 4는 본 발명의 일 실시예에 따른 발음 사전을 생성하는 방법을 설명하기 위한 도면이다. 4 is a diagram for describing a method of generating a pronunciation dictionary, according to an exemplary embodiment.
도 4는 앞서 도 3의 실시예에 대한 일례로서, 목표 음성에 대해 발음기호는 음성인식기가 생성하고 사용자는 해당 '어휘만 입력'하면 입력하면 된다.4 is an example of the embodiment of FIG. 3 above, the phonetic symbol for the target voice is generated by the voice recognizer and the user only needs to input the corresponding vocabulary.
음성인식기는 사용자 혹은 기계장치로부터 음성을 입력받아 발음 기호를 생성할 수 있다. 일례로, 음성인식기는 사용자 혹은 기계장치로부터 음성을 입력 받고, 입력된 음성을 음향 모델을 이용하여 인식할 수 있다. 그리고, 음성인식기는 인식된 결과를 기반으로 음성에 대한 발음 기호를 생성할 수 있다.The voice recognizer may receive a voice from a user or a machine to generate a phonetic symbol. For example, the voice recognizer may receive a voice from a user or a machine, and recognize the input voice using an acoustic model. The speech recognizer may generate a phonetic symbol for the voice based on the recognized result.
이때, 음성인식기는 입력된 음성을 인식하고, 자동 혹은 수동(즉, 사용자에 의해)으로 오인식 및 미인식 부분(즉, 입력된 음성에 대응되는 표층형 어휘를 결정할 수 없는 부분)을 선택할 수 있다. 그리고, 오인식 및 미인식 부분에 대응하는 표층형 어휘를 사용자 혹은 기계장치로부터 직접 입력 받을 수 있다. In this case, the voice recognizer recognizes the input voice and may automatically or manually (ie, by the user) select a misrecognized and unrecognized portion (that is, a portion that cannot determine the surface type vocabulary corresponding to the input voice). . Then, the surface type vocabulary corresponding to the misrecognition and the unrecognition portion can be directly input from the user or the mechanical device.
그리고, 음성인식기는 사용자 혹은 기계장치로부터 입력된 표층형 어휘와 음성인식기로부터 오인식 혹은 미인식된 부분에서 확보할 수 있는 발음 기호를 대응시켜 발음 사전에 저장할 수 있다. The voice recognizer may store the phonetic vocabulary input from a user or a mechanical device and the phonetic symbols secured in a part of a false or unrecognized part of the voice recognizer in the phonetic dictionary.
도 4의 경우, 음성인식기는 사용자 혹은 기계장치로부터 음성을 입력받아 발음 기호 [S IH S T R AA N]을 생성하였으나, 이에 대한 표층형 어휘를 결정할 수 없는 경우를 예시한다. 이 경우, 음성인식기를 발음 기호 [S IH S T R AA N]에 대응되는 표층형 어휘를 사용자에게 요청하고, 사용자로부터 발음 기호 [S IH S T R AA N]에 대응되는 표층형 어휘(즉, 'SYSTRAN')를 입력 받을 수 있다. In FIG. 4, the voice recognizer generates a phonetic symbol [S IH S T R AA N] by receiving a voice from a user or a machine, but illustrates a case in which the surface type vocabulary cannot be determined. In this case, the voice recognizer requests a user of the surface type vocabulary corresponding to the phonetic symbol [S IH STR AA N], and the user uses the surface type vocabulary corresponding to the phonetic symbol [S IH STR AA N] (ie, 'SYSTRAN'). ) Can be input.
음성인식기는 사용자로부터 입력된 표층형 어휘 'SYSTRAN'와 음성인식기로부터 오인식 혹은 미인식된 부분에서 확보할 수 있는 발음 기호 [S IH S T R AA N]를 대응시켜 발음 사전(즉, 메모리)에 저장할 수 있다.The speech recognizer can store the phonetic word 'SYSTRAN' input from the user and the phonetic symbol [S IH STR AA N], which can be obtained from the part of the speech recognition that is misidentified or unrecognized. have.
도 5는 본 발명의 일 실시예에 따른 발음 사전을 생성하는 방법을 설명하기 위한 도면이다. 5 is a diagram for describing a method of generating a pronunciation dictionary, according to an exemplary embodiment.
도 5는 앞서 도 4의 방법과 반대의 예로서, 목표 어휘에 대해 사용자로부터는 어휘에 해당하는 '음성만 입력'받고 발음기호를 음성 인식기에서 생성하는 방법이다.FIG. 5 is an example opposite to the method of FIG. 4, in which a user recognizes only a voice corresponding to a vocabulary from a user and generates a phonetic symbol in a speech recognizer.
음성인식기는 사용자로부터 키보드 등을 통해 사용자 어휘를 입력 받을 수 있다. The voice recognizer may receive a user vocabulary from a user through a keyboard.
음성인식기는 사용자 혹은 기계장치로부터 사용자 어휘가 입력되었을 때, 기존 발음 사전과 비교하여 입력된 사용자 어휘가 기존 발음 사전에 존재하는지 여부를 판단한다. 다시 말해, 음성인식기는 사용자 혹는 기계장치로부터 텍스트를 입력받고, 입력받은 텍스트의 어휘 중 발음 사전에 존재하는지 여부를 판단할 수 있다.When the user vocabulary is input from a user or a mechanical device, the voice recognizer determines whether the input user vocabulary exists in the existing pronunciation dictionary by comparing with the existing pronunciation dictionary. In other words, the voice recognizer may receive text from a user or a machine, and determine whether the text is present in a pronunciation dictionary among the vocabulary of the input text.
그리고, 만약 입력된 사용자 어휘가 기존 발음 사전에 존재하지 않는다면, 해당 어휘에 대해 사용자에게 묻는 절차를 수행한다. 즉, 해당 어휘를 발음 사전에 등록하기 위하여 입력된 사용자 어휘와 대응되는 발음 기호를 생성하여야 하므로, 음성인식기는 입력된 사용자 어휘에 대한 음성을 요청할 수 있다. If the input user vocabulary does not exist in the existing pronunciation dictionary, a procedure of asking the user about the corresponding vocabulary is performed. That is, since a phonetic symbol corresponding to the input user vocabulary must be generated in order to register the vocabulary in the pronunciation dictionary, the voice recognizer may request a voice for the input user vocabulary.
이때, 음성인식기가 사용자 혹은 기계장치로부터 해당 어휘에 대응하는 발음의 음성을 입력 받으면, 음성인식기는 사용자 음성을 음향 모델을 이용하여 인식한다. 그리고, 음성인식기는 입력된 음성에 대응하는 발음 기호를 생성하고, 입력된 표층형 어휘와 생성된 발음 기호를 대응시켜서 발음 사전에 저장할 수 있다. In this case, when the voice recognizer receives a voice of a pronunciation corresponding to the corresponding vocabulary from a user or a machine, the voice recognizer recognizes the user voice using an acoustic model. The voice recognizer may generate a phonetic symbol corresponding to the input voice, and store the phonetic dictionary in correspondence with the input surface type vocabulary and the generated phonetic symbol.
도 5의 경우, 음성인식기는 사용자로부터 입력된 어휘 중 'SYSTRAN'이 기존의 발음 사전에 존재하지 않으므로, 사용자 혹은 기계장치에게 'SYSTRAN'에 대한 음성을 요청할 수 있다. 그리고, 사용자 혹은 기계장치로부터 'SYSTRAN'에 대한 음성을 입력 받으면, 해당 음성으로부터 발음 기호 [S IH S T R AA N]를 생성할 수 있다. 그리고, 입력된 어휘 'SYSTRAN'과 생성된 발음 기호 [S IH S T R AA N]를 대응시켜 발음 사전(즉, 메모리)에 저장할 수 있다. In the case of FIG. 5, since the 'SYSTRAN' does not exist in the existing pronunciation dictionary among the vocabulary input by the user, the voice recognizer may request a voice for the 'SYSTRAN' from the user or the apparatus. When a voice for 'SYSTRAN' is received from a user or a mechanical device, a phonetic symbol [S IH S T R AA N] may be generated from the voice. The input vocabulary 'SYSTRAN' and the generated phonetic symbol [S IH S T R AA N] may be associated with each other and stored in a pronunciation dictionary (ie, a memory).
도 6은 본 발명의 일 실시예에 따른 음성 인식기의 구성을 예시한다. 6 illustrates a configuration of a voice recognizer according to an embodiment of the present invention.
도 6의 실시예에 따르면, 음성/텍스트 쌍으로부터 미등록 어휘를 자동 추출하여 발음사전에 신규 어휘를 자동으로 추가할 수 있다. 이를 토대로, 업데이트된 발음사전과 상기 음성/텍스트 쌍으로부터 새 음향모델도 학습할 수 있다.According to the embodiment of FIG. 6, a new vocabulary may be automatically added to a pronunciation dictionary by automatically extracting an unregistered vocabulary from a voice / text pair. Based on this, a new acoustic model can be learned from the updated pronunciation dictionary and the speech / text pair.
도 6을 참조하면, 음성인식기는 음성 데이터와 텍스트가 대응되어 저장된 음성-텍스트 병렬 말뭉치를 입력 받으면, 입력된 음성-텍스트 병렬 말뭉치의 음성 데이터를 음향 모델을 이용하여 음성 인식하고, 음성 데이터로부터 발음 기호를 생성한다. 즉, 음성인식기는 기존의 발음 사전 및 언어모델을 이용하여 인식된 결과로부터 음성 데이터에 대한 발음 기호 및 텍스트 결과를 생성할 수 있다. 그리고, 음성-텍스트 병렬 말뭉치를 생성된 발음 기호와 텍스트 결과를 서로 맞춤 정렬하여 각 텍스트(즉, 단어)에 대한 발음 기호를 생성할 수 있다. 다심 말해, 음성-텍스트 병렬 말뭉치를 발음기호 및 텍스트 결과를 대응시켜, 서로 다르게 표현된 부분에 대해 발음 사전을 업데이트할 수 있다. 즉, 새로운 발음 사전이 생성된다. Referring to FIG. 6, when a speech recognizer receives a speech-text parallel corpus stored in correspondence with speech data, the speech recognizer recognizes speech data of the input speech-text parallel corpus using an acoustic model and pronounces the speech data from the speech data. Create a symbol. That is, the speech recognizer may generate a phonetic symbol and text result of the speech data from the result recognized using the existing phonetic dictionary and language model. Then, the phonetic symbols generated for the speech-text parallel corpus and the text results may be aligned with each other to generate phonetic symbols for each text. In other words, it is possible to update the phonetic dictionary with respect to differently expressed parts by matching the phonetic symbols and the text results with the speech-text parallel corpus. That is, a new pronunciation dictionary is generated.
그리고, 음성인식기는 입력된 음성-텍스트 병렬 말뭉치와 새로 생성한 발음 사전을 이용해 음향모델을 학습한다. Then, the speech recognizer learns the acoustic model using the input speech-text parallel corpus and the newly generated pronunciation dictionary.
이렇게 함으로써, 음성인식기는 개선된 발음 사전과 음향모델을 획득할 수 있다. In this way, the speech recognizer can obtain an improved pronunciation dictionary and acoustic model.
위와 같이 획득된 새로운 음향 모델은 기존에 사용 중이던 발음 기호 생성 프로그램의 오류로 인한 문제를 줄일 수 있고, 사용자 발음 오류로 인한 텍스트와 음성 간의 불일치로 인한 학습 모호성을 줄일 수 있다.The new acoustic model obtained as described above may reduce the problem caused by the error of the existing phonetic symbol generator and reduce the learning ambiguity caused by the inconsistency between the text and the voice caused by the user's pronunciation error.
도 7은 본 발명의 일 실시예에 따른 음성 인식 장치의 발음 사전을 생성하는 방법을 예시하는 도면이다.7 is a diagram illustrating a method of generating a pronunciation dictionary of a speech recognition apparatus according to an embodiment of the present invention.
도 7을 참조하면, 음성 인식 장치는 사용자 혹은 기계장치로부터 음성을 입력 받는다(S701).Referring to FIG. 7, the voice recognition apparatus receives a voice from a user or a machine (S701).
음성 인식 장치는 상기 입력된 음성을 음향 모델을 이용하여 인식한다(S702).The speech recognition apparatus recognizes the input voice using an acoustic model in operation S702.
여기서, 음성 인식 장치는 인식한 결과에 대한 신뢰도를 평가할 수 있다. 그리고, 신뢰도가 기 설정된 임계값보다 작을 때, 음성 인식 장치는 상기 발음 기호로 유추 가능한 어휘 후보군을 텍스트 말뭉치로부터 검색할 수 있다. 그리고, 음성 인식 장치는 상기 검색된 어휘 후보군을 상기 발음 사전에 등록한 후, 상기 음성을 상기 음향 모델을 이용하여 재인식할 수 있다. Here, the speech recognition apparatus may evaluate the reliability of the recognized result. When the reliability is smaller than a preset threshold, the speech recognition apparatus may search for a lexical candidate group inferred by the phonetic symbols from the text corpus. The speech recognition apparatus may register the searched vocabulary candidate group in the pronunciation dictionary and then re-recognize the speech using the acoustic model.
또한, 음성 인식 장치는 인식한 결과에 대한 신뢰도를 평가할 수 있다. 그리고, 신뢰도가 기 설정된 임계값보다 작을 때, 음성 인식 장치는 텍스트 말뭉치의 각 단어에 대하여 모든 유추 가능한 발음 기호가 대응되어 저장된 사전으로부터 상기 발음 기호로 유추 가능한 어휘를 검색할 수 있다. 그리고, 음성 인식 장치는 상기 검색된 어휘를 상기 발음 사전에 등록한 후, 상기 음성을 상기 음향 모델을 이용하여 재인식할 수 있다. In addition, the speech recognition apparatus may evaluate the reliability of the recognized result. When the reliability is smaller than the preset threshold, the speech recognition apparatus may search for a vocabulary that can be inferred from the dictionary by storing all inferred pronunciation symbols corresponding to each word of the text corpus. The speech recognition apparatus may register the searched vocabulary in the pronunciation dictionary, and then re-recognize the speech using the acoustic model.
음성 인식 장치는 상기 인식된 결과를 기반으로 상기 음성에 대한 발음 기호를 생성한다(S703).The speech recognition apparatus generates a phonetic symbol for the speech based on the recognized result (S703).
이때, 발음 기호를 생성하기 위하여 발음 사전과 언어 모델이 이용될 수 있다. 또한, 발음 기호를 생성하기 위해 상기 음향 모델의 가중치가 상기 언어 모델에 대한 가중치 보다 높게 설정될 수 있다. In this case, a phonetic dictionary and a language model may be used to generate phonetic symbols. In addition, the weight of the acoustic model may be set higher than the weight for the language model to generate a phonetic symbol.
또한, 상기 발음 기호를 생성하기 위하여 이용되는 상기 발음 사전 및 상기 언어 모델에 가능한 모든 글자 또는 자소 단위의 후보가 추가될 수 있다. In addition, candidates of all possible letters or phoneme units may be added to the pronunciation dictionary and the language model used to generate the phonetic symbols.
또한, 상기 발음 기호를 생성하기 위하여 이용되는 상기 발음 사전 및 상기 언어 모델은 가능한 모든 글자 혹은 자소 단위로만 구성될 수 있다. In addition, the pronunciation dictionary and the language model used to generate the phonetic symbols may be composed of all possible letters or phoneme units.
음성 인식 장치는 사용자로부터 사용자 어휘를 입력 받는다(S704).The speech recognition apparatus receives a user vocabulary from the user (S704).
여기서, 음성 인식 장치는 상기 입력된 사용자 어휘가 상기 발음 사전에 존재하지 않을 때, 상기 사용자 어휘와 대응되는 상기 음성을 요청할 수 있다. 이 경우, 앞서 S701 단계 내지 S703 단계는 S704 단계 이후에 수행될 수 있다. Here, when the input user vocabulary does not exist in the pronunciation dictionary, the voice recognition apparatus may request the voice corresponding to the user vocabulary. In this case, steps S701 to S703 may be performed after step S704.
또한, 음성 인식 장치는 앞서 S702 단계에서 상기 인식한 결과에 대한 신뢰도를 평가할 수 있다. 이때, 신뢰도가 기 설정된 임계값보다 작을 때, 음성 인식 장치는 상기 발음 기호와 대응되는 상기 사용자 어휘를 요청하고, 사용자로부터 사용자 어휘를 입력 받을 수 있다. In addition, the speech recognition apparatus may evaluate the reliability of the result of the recognition in step S702. In this case, when the reliability is smaller than a preset threshold, the speech recognition apparatus may request the user vocabulary corresponding to the phonetic symbol and receive a user vocabulary from the user.
또한, 음성 인식 장치는 앞서 S702 단계에서 상기 인식한 결과에서 오인식 및/또는 미인식 부분을 선택할 수 있다. 그리고, 음성 인식 장치는 상기 오인식 및/또는 미인식 부분에 대응되는 상기 사용자 어휘를 요청하고, 사용자로부터 사용자 어휘를 입력 받을 수 있다.In addition, the speech recognition apparatus may select a misrecognition and / or unrecognition portion from the recognition result in step S702. The voice recognition apparatus may request the user vocabulary corresponding to the misrecognition and / or unrecognized portion and receive a user vocabulary from a user.
음성 인식 장치는 상기 입력된 사용자 어휘와 상기 생성된 발음 기호를 대응시켜 상기 발음 사전에 저장한다(S705).The speech recognition apparatus stores the input user vocabulary and the generated phonetic symbols in the phonetic dictionary (S705).
한편, 음성 인식 장치는 음성 데이터와 텍스트가 대응되어 저장된 음성-텍스트 병렬 말뭉치를 입력 받을 수 있다. 그리고, 음성 인식 장치는 상기 음성 데이터를 음향 모델을 이용하여 인식하고, 발음 사전과 언어 모델을 이용하여 상기 인식된 결과를 기반으로 상기 음성 데이터에 대한 발음 기호를 생성할 수 있다. 그리고, 음성 인식 장치는 상기 음성 데이터에 대한 발음 기호와 상기 텍스트를 대응시켜 상기 발음 사전을 업데이트할 수 있다. On the other hand, the speech recognition apparatus may receive a speech-text parallel corpus stored in correspondence with speech data and text. The speech recognition apparatus may recognize the speech data using an acoustic model and generate a phonetic symbol for the speech data based on the recognized result using a pronunciation dictionary and a language model. The speech recognition apparatus may update the pronunciation dictionary by associating a phonetic symbol with respect to the voice data and the text.
또한, 음성 인식 장치는 상기 업데이트된 발음 사전과 상기 음성-텍스트 병렬 말뭉치를 이용하여 상기 음향 모델을 학습할 수 있다. In addition, the speech recognition apparatus may learn the acoustic model using the updated pronunciation dictionary and the speech-text parallel corpus.
본 발명에 따른 실시예는 다양한 수단, 예를 들어, 하드웨어, 펌웨어(firmware), 소프트웨어 또는 그것들의 결합 등에 의해 구현될 수 있다. 하드웨어에 의한 구현의 경우, 본 발명의 일 실시예는 하나 또는 그 이상의 ASICs(application specific integrated circuits), DSPs(digital signal processors), DSPDs(digital signal processing devices), PLDs(programmable logic devices), FPGAs(field programmable gate arrays), 프로세서, 콘트롤러, 마이크로 콘트롤러, 마이크로 프로세서 등에 의해 구현될 수 있다.Embodiments according to the present invention may be implemented by various means, for example, hardware, firmware, software, or a combination thereof. In the case of a hardware implementation, an embodiment of the present invention may include one or more application specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), FPGAs ( field programmable gate arrays), processors, controllers, microcontrollers, microprocessors, and the like.
펌웨어나 소프트웨어에 의한 구현의 경우, 본 발명의 일 실시예는 이상에서 설명된 기능 또는 동작들을 수행하는 모듈, 절차, 함수 등의 형태로 구현될 수 있다. 소프트웨어 코드는 메모리에 저장되어 프로세서에 의해 구동될 수 있다. 상기 메모리는 상기 프로세서 내부 또는 외부에 위치하여, 이미 공지된 다양한 수단에 의해 상기 프로세서와 데이터를 주고 받을 수 있다.In the case of implementation by firmware or software, an embodiment of the present invention may be implemented in the form of a module, procedure, function, etc. that performs the functions or operations described above. The software code may be stored in memory and driven by the processor. The memory may be located inside or outside the processor, and may exchange data with the processor by various known means.
본 발명은 본 발명의 필수적 특징을 벗어나지 않는 범위에서 다른 특정한 형태로 구체화될 수 있음은 당업자에게 자명하다. 따라서, 상술한 상세한 설명은 모든 면에서 제한적으로 해석되어서는 아니 되고 예시적인 것으로 고려되어야 한다. 본 발명의 범위는 첨부된 청구항의 합리적 해석에 의해 결정되어야 하고, 본 발명의 등가적 범위 내에서의 모든 변경은 본 발명의 범위에 포함된다. It will be apparent to those skilled in the art that the present invention may be embodied in other specific forms without departing from the essential features of the present invention. Accordingly, the above detailed description should not be construed as limiting in all aspects and should be considered as illustrative. The scope of the present invention should be determined by reasonable interpretation of the appended claims, and all changes within the equivalent scope of the present invention are included in the scope of the present invention.
본 발명은 다양한 음성 인식 기술 분야에 적용될 수 있다. The present invention can be applied to various speech recognition technologies.
Claims (14)
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2020560362A JP2021529338A (en) | 2018-04-27 | 2018-04-27 | Pronunciation dictionary generation method and device for that |
| PCT/KR2018/004971 WO2019208859A1 (en) | 2018-04-27 | 2018-04-27 | Method for generating pronunciation dictionary and apparatus therefor |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| PCT/KR2018/004971 WO2019208859A1 (en) | 2018-04-27 | 2018-04-27 | Method for generating pronunciation dictionary and apparatus therefor |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2019208859A1 true WO2019208859A1 (en) | 2019-10-31 |
Family
ID=68295544
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/KR2018/004971 Ceased WO2019208859A1 (en) | 2018-04-27 | 2018-04-27 | Method for generating pronunciation dictionary and apparatus therefor |
Country Status (2)
| Country | Link |
|---|---|
| JP (1) | JP2021529338A (en) |
| WO (1) | WO2019208859A1 (en) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN112530414A (en) * | 2021-02-08 | 2021-03-19 | 数据堂(北京)科技股份有限公司 | Iterative large-scale pronunciation dictionary construction method and device |
Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR100277694B1 (en) * | 1998-11-11 | 2001-01-15 | 정선종 | Automatic Pronunciation Dictionary Generation in Speech Recognition System |
| US20020013707A1 (en) * | 1998-12-18 | 2002-01-31 | Rhonda Shaw | System for developing word-pronunciation pairs |
| KR20100130263A (en) * | 2009-06-03 | 2010-12-13 | 삼성전자주식회사 | Phonetic dictionary expansion device and method for speech recognition |
| KR20130011323A (en) * | 2011-07-21 | 2013-01-30 | 한국전자통신연구원 | Apparatus and method for generating multiple pronunciation dictionary based on statistics |
| KR20160098910A (en) * | 2015-02-11 | 2016-08-19 | 한국전자통신연구원 | Expansion method of speech recognition database and apparatus thereof |
Family Cites Families (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH03217900A (en) * | 1990-01-24 | 1991-09-25 | Oki Electric Ind Co Ltd | Text voice synthesizing device |
| US8401847B2 (en) * | 2006-11-30 | 2013-03-19 | National Institute Of Advanced Industrial Science And Technology | Speech recognition system and program therefor |
| JP5327054B2 (en) * | 2007-12-18 | 2013-10-30 | 日本電気株式会社 | Pronunciation variation rule extraction device, pronunciation variation rule extraction method, and pronunciation variation rule extraction program |
| JP2012063526A (en) * | 2010-09-15 | 2012-03-29 | Ntt Docomo Inc | Terminal device, speech recognition method and speech recognition program |
| JP6410491B2 (en) * | 2014-06-27 | 2018-10-24 | インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation | Pronunciation dictionary expansion system, expansion program, expansion method, acoustic model learning method, learning program, and learning system using the extended pronunciation dictionary obtained by the expansion method |
| JP6475517B2 (en) * | 2015-03-02 | 2019-02-27 | 日本放送協会 | Pronunciation sequence expansion device and program thereof |
-
2018
- 2018-04-27 JP JP2020560362A patent/JP2021529338A/en active Pending
- 2018-04-27 WO PCT/KR2018/004971 patent/WO2019208859A1/en not_active Ceased
Patent Citations (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR100277694B1 (en) * | 1998-11-11 | 2001-01-15 | 정선종 | Automatic Pronunciation Dictionary Generation in Speech Recognition System |
| US20020013707A1 (en) * | 1998-12-18 | 2002-01-31 | Rhonda Shaw | System for developing word-pronunciation pairs |
| KR20100130263A (en) * | 2009-06-03 | 2010-12-13 | 삼성전자주식회사 | Phonetic dictionary expansion device and method for speech recognition |
| KR20130011323A (en) * | 2011-07-21 | 2013-01-30 | 한국전자통신연구원 | Apparatus and method for generating multiple pronunciation dictionary based on statistics |
| KR20160098910A (en) * | 2015-02-11 | 2016-08-19 | 한국전자통신연구원 | Expansion method of speech recognition database and apparatus thereof |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN112530414A (en) * | 2021-02-08 | 2021-03-19 | 数据堂(北京)科技股份有限公司 | Iterative large-scale pronunciation dictionary construction method and device |
| CN112530414B (en) * | 2021-02-08 | 2021-05-25 | 数据堂(北京)科技股份有限公司 | Iterative large-scale pronunciation dictionary construction method and device |
Also Published As
| Publication number | Publication date |
|---|---|
| JP2021529338A (en) | 2021-10-28 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| Zissman et al. | Automatic language identification | |
| CN100559462C (en) | Voice processing apparatus, method of speech processing, program and recording medium | |
| Hazen | Automatic language identification using a segment-based approach | |
| US6208964B1 (en) | Method and apparatus for providing unsupervised adaptation of transcriptions | |
| KR100612839B1 (en) | Domain based dialogue speech recognition method and device | |
| US5787230A (en) | System and method of intelligent Mandarin speech input for Chinese computers | |
| WO2023163383A1 (en) | Multimodal-based method and apparatus for recognizing emotion in real time | |
| US5937383A (en) | Apparatus and methods for speech recognition including individual or speaker class dependent decoding history caches for fast word acceptance or rejection | |
| US11450320B2 (en) | Dialogue system, dialogue processing method and electronic apparatus | |
| US12087291B2 (en) | Dialogue system, dialogue processing method, translating apparatus, and method of translation | |
| WO2019208860A1 (en) | Method for recording and outputting conversation between multiple parties using voice recognition technology, and device therefor | |
| CN107886968B (en) | Voice evaluation method and system | |
| WO2015163684A1 (en) | Method and device for improving set of at least one semantic unit, and computer-readable recording medium | |
| WO2019172734A2 (en) | Data mining device, and voice recognition method and system using same | |
| WO2020096078A1 (en) | Method and device for providing voice recognition service | |
| WO2014200187A1 (en) | Apparatus for learning vowel reduction and method for same | |
| WO2020091123A1 (en) | Method and device for providing context-based voice recognition service | |
| Zhang et al. | Phonetic RNN-transducer for mispronunciation diagnosis | |
| WO2019208858A1 (en) | Voice recognition method and device therefor | |
| JP2014164261A (en) | Information processor and information processing method | |
| WO2020096073A1 (en) | Method and device for generating optimal language model using big data | |
| Kou et al. | Fix it where it fails: Pronunciation learning by mining error corrections from speech logs | |
| WO2019208859A1 (en) | Method for generating pronunciation dictionary and apparatus therefor | |
| Wang et al. | L2 mispronunciation verification based on acoustic phone embedding and Siamese networks | |
| Pranjol et al. | Bengali speech recognition: An overview |
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: 18916031 Country of ref document: EP Kind code of ref document: A1 |
|
| ENP | Entry into the national phase |
Ref document number: 2020560362 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: 18916031 Country of ref document: EP Kind code of ref document: A1 |