WO2002039426A1 - Dispositif de reconnaissance vocale - Google Patents

Dispositif de reconnaissance vocale Download PDF

Info

Publication number
WO2002039426A1
WO2002039426A1 PCT/JP2001/009711 JP0109711W WO0239426A1 WO 2002039426 A1 WO2002039426 A1 WO 2002039426A1 JP 0109711 W JP0109711 W JP 0109711W WO 0239426 A1 WO0239426 A1 WO 0239426A1
Authority
WO
WIPO (PCT)
Prior art keywords
word
speech recognition
score
unit
words
Prior art date
Application number
PCT/JP2001/009711
Other languages
English (en)
French (fr)
Inventor
Katsuki Minamino
Yasuharu Asano
Hiroaki Ogawa
Helmut Lucke
Original Assignee
Sony Corporation
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corporation filed Critical Sony Corporation
Priority to US10/416,092 priority Critical patent/US7240002B2/en
Publication of WO2002039426A1 publication Critical patent/WO2002039426A1/ja

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/083Recognition networks

Definitions

  • the present invention relates to a speech recognition device, and more particularly to, for example, a speech recognition device capable of efficiently performing highly accurate speech recognition.
  • FIG. 1 shows a configuration of an example of a conventional speech recognition device.
  • the voice uttered by the user is input to a microphone (microphone) 1, which converts the input voice into a voice signal as an electric signal.
  • This audio signal is supplied to an AD (Analog Digital) converter 2.
  • the AD converter 2 samples and quantizes the analog audio signal from the microphone 1 and converts it to digital signal audio data. This audio data is supplied to the feature extraction unit 3.
  • the feature extraction unit 3 performs sound processing for each appropriate frame for the audio data from the AD conversion unit 2 and the like, thereby extracting a feature amount such as MFCC (Mel Frequency Cepstrum Co efficient), for example. Supply to matching unit 4.
  • the feature extraction unit 3 can also extract other feature amounts such as a spectrum, a linear prediction coefficient, a cepstrum coefficient, and a line spectrum pair.
  • the matching unit 4 uses the feature amount from the feature extraction unit 3 to input to the microphone 1 while referring to the acoustic model database 5, the dictionary database 6, and the grammar database 7 as needed.
  • the input speech is recognized, for example, based on the continuous distribution HMM method or the like.
  • the acoustic model database 5 stores acoustic models representing acoustic features such as individual phonemes and syllables in the language of the speech to be recognized.
  • HMM Hidden Markov Model
  • Dictionary database 6 For each word (vocabulary) of, a word dictionary in which information about pronunciation (phonological information) is described is stored.
  • the grammar database 7 stores grammar rules (language models) that describe how each word registered in the word dictionary of the dictionary database 6 is linked (connected).
  • a grammar rule for example, a rule based on a context-free grammar (CFG) or a statistical word chain probability (N-gram) can be used.
  • CFG context-free grammar
  • N-gram statistical word chain probability
  • the matching unit 4 refers to the word dictionary in the dictionary database 6 and connects the acoustic models stored in the acoustic model database 5 to form a word acoustic model (word model). Further, the matching unit 4 connects some word models by referring to the grammar rules stored in the grammar database 7, and uses the word models connected in this way based on the feature amounts.
  • the voice input to the microphone 1 is recognized by the continuous distribution HMM method. That is, the matching unit 4 detects the sequence of the word model with the highest score (likelihood) at which the feature value of the time series output by the feature extraction unit 3 is observed, and determines the word sequence corresponding to the sequence of the word model. Output as a speech recognition result.
  • the matching unit 4 accumulates the appearance probabilities of the respective feature amounts for the word strings corresponding to the connected word models, and uses the accumulated value as a score, and determines the word string having the highest score as a result of the speech recognition. Output as
  • the score calculation is generally given by an acoustic score given by the acoustic model stored in the acoustic model database 5 (hereinafter, appropriately referred to as an acoustic score) and a grammatical rule stored in the grammar database 7.
  • a linguistic score (hereinafter referred to as a linguistic score, as appropriate) is evaluated by comprehensive evaluation.
  • the acoustic score is based on the probability (observation probability) of observing the sequence of the feature amount output by the feature extracting unit 3 from the acoustic model constituting the word model. Is calculated for each word.
  • the language score is obtained based on the probability that the word of interest and the word immediately before the word are linked (connected).
  • the acoustic score for each word The speech recognition result is determined based on the final score (hereinafter referred to as the final score as appropriate) obtained by comprehensively evaluating the scorer and the language score.
  • the final score S of the word string is calculated according to the following equation, for example.
  • represents taking a summary by changing k from 1 to N.
  • C k represents a weight applied to the language score L (w k ) of the word w k .
  • the matching section 4 for example, the N of the greatest final score shown in equation (1), the word sequence w ,, w 2, ⁇ ⁇ ⁇ , matching processing for obtaining the w N is performed, the word sequence w ,, w 2, ⁇ ⁇ ⁇ , w N is output as a speech recognition result.
  • the voice recognition device of FIG. 1 By performing the above processing, in the voice recognition device of FIG. 1, for example, when the user utters “I want to go to New York”, “New York”, “Nii”, “I want to go” , And “is” are given an acoustic score and a linguistic score, and when the final score obtained by comprehensively evaluating them is the largest, the word string "New York”, “Nii”, “I want to go” "And” is "are output as speech recognition results.
  • the matching section 4 evaluates the word sequence of the 5 5 kinds, among them, the best match to the utterance of the user ( The one with the highest final score) must be determined. If the number of words registered in the word dictionary increases, the number of words arranged in the number of words becomes the number of words multiplied by the number of words, so that the number of word strings to be evaluated is huge. It becomes a number.
  • the acoustic calculation is terminated.
  • pruning techniques and linguistic pruning techniques that narrow down the words to be scored based on language scores.
  • the target of score calculation is narrowed down based on a predetermined criterion (for example, an acoustic score in the middle of calculation as described above, or a language score given to a word), and the calculation is performed. The amount can be reduced.
  • a common (shared) method uses the same acoustic model for the words in the word dictionary that have the same phoneme at the beginning, and from the phoneme at the beginning to the phoneme that is the same. For the different phonemes thereafter, there is a method in which an acoustic model is used individually to construct a single tree-structured network as a whole, and this is used to determine the acoustic score.
  • the phoneme information of “Akita” is “akita” and the phoneme information of “Akebono” is “akebono”.
  • the acoustic scores of the words “Akita” and “Akebono” are also calculated for the first two phonemes a and k.
  • the remaining phonemes k, i, t, a of the word “Akita” and the remaining phonemes e, b, o, n, 0 of the word “Akebono” the acoustic scores are calculated independently.
  • the calculation amount of the acoustic score can be significantly reduced.
  • the word to be calculated is identified as “Akita”.
  • the word to be calculated is “Akebono”. it can.
  • the word cannot be identified at the start of the calculation of the acoustic score of the word, so that the language score can be considered (applied) for the word. Can not. As a result, it becomes difficult to use the linguistic pruning method as described above before the start of the acoustic score of a word, and useless calculation may be performed.
  • the acoustic when calculating an acoustic score, instead of targeting all words in the word dictionary, the acoustic There is a method of preliminarily selecting (preliminary selection) the words to be calculated, and calculating the acoustic score only for the preselected words.
  • the preliminary selection is performed using, for example, a simple acoustic model or a grammar rule that is not so accurate.
  • the preliminary selection method is described in, for example, LR Bahl, SV De Gennaro, PS Go palakrishnan and RL Mercer, "A Fast Approximate Acoustic Match for Large Vocabulary Speech Recognition, IEEE Trans.Speech and Audio Proc., Vol. 1, pp.59-67, 1993 and the like.
  • the acoustic score of a word is calculated using a sequence of feature quantities of speech. If the start point and the end point of the series of feature quantities used for the calculation are different, the required acoustic score also changes. This change affects the final score of equation (1) obtained by comprehensively evaluating the acoustic score and the language score.
  • the start point and end point of a series of feature quantities corresponding to a certain word can be obtained by using, for example, dynamic programming.
  • an arbitrary point in the sequence of feature amounts is set as a candidate for a word boundary, and a score obtained by comprehensively evaluating the acoustic score and the linguistic score for each word in the word string that is a candidate for the speech recognition result (hereinafter, appropriately (Called the word score).
  • the candidate of the word boundary giving the largest accumulated value is stored together with the accumulated value.
  • the word boundary that gives the best cumulative value, that is, the highest final score is also determined.
  • Viterbi decoding One pass decoding, or the like.
  • Seiichi Nakagawa "Speech Recognition by Stochastic Model” Details can be found in IEICE, pp.20-26, July 1, 1998, etc.
  • the word boundary is, that is, which point of the feature amount sequence (feature amount sequence) is to be the starting point.
  • the correct word boundary between “today” and “ha” is In the case of time t, when performing preliminary selection for the word ⁇ ha '' following the word ⁇ today '', if the preliminary selection is performed with the correct time t and the preceding time t, _ as the starting point, Preselection is affected not only by the features of the word “ha” but also by the features of the last part of the word “today” immediately before it. On the other hand, if the preliminary selection is performed starting from the correct time t and the later time t1 + 1 , the feature of the first part of the word “ha” is not used in the preliminary selection.
  • the direction from left to right represents the passage of time, and the start time of the voice section is 0, and the voice section is at time T. There is to end.
  • the calculation of the word score (sound score and language score) up to the end time T of the voice section is not completed until the end of the feature sequence, that is, in FIG. Since it is not possible to determine a typical word boundary, it is difficult to uniquely determine the word boundary that is the starting point of the preliminary selection at the stage of preliminary selection.
  • the time tgatet 1 + 1 is determined as a candidate for the end point of the utterance of the word“ today ”. If so, these three times t and tricht l + 1 are held, and starting from each of them, the next word is preselected.
  • FIG. 2 shows a state in which the word score of the word “ha” is calculated starting from time t H and time t 2 is obtained as a candidate for the ending point.
  • (C) shows a state in which the word score of the word “good” is calculated with the time as a starting point, and the time t 2 + l is obtained as a candidate of the ending point.
  • FIG. 2 (D) shows a state in which the word score of the word “ha” is calculated starting from time t, and time t 2 + 1 is obtained as a candidate for the end point. during time as a starting point a, the word "will" perform the calculation of word scores, as a candidate for the end point, and shows a state where the time 1 2 obtained.
  • FIG. 2 (F) shows a state in which the word score of the word “ha” is calculated from the time t l + l as a starting point, and the time is obtained as a candidate for the ending point.
  • G) shows a state in which the word score of the word “good” is calculated starting from time t 1 + 1 , and time t 2 + 2 is obtained as a candidate for the ending point. Note that in FIG. 2, t H ⁇ t, ⁇ t
  • FIG. 2 (B) to 2 (G) those shown in FIG. 2 (B), FIG. 2 (E), and FIG. 2 (F) are all words that are candidates for speech recognition results.
  • column there is the same in the "today”, “may”, further, also the end of the last "is” of the word string, because it is the same at the time t 2, the one most appropriate from among them, for example, until the time It is possible to select based on the word score cumulative value and discard the rest.
  • a selection from Figure 2 (B), Figure 2 (E), or Figure 2 (F) has been added to Figure 2 (C), Figure 2 (D), and Figure 2 (G). Since it is not possible to determine the correct one from the ones shown in the above, it is necessary to keep these four cases. Then, in each of these four cases, the preliminary selection is performed again.
  • the word score is calculated while holding many word boundary candidates until the calculation of the word score using the feature sequence of the voice section is completed.
  • a truly correct word boundary is held as a candidate for a word boundary, in principle, the same correct word boundary as in the case of using the dynamic programming described above is finally obtained.
  • you fail to maintain a truly correct word boundary as a candidate for a word boundary you will misrecognize a word starting or ending at that word boundary, and furthermore, May also be misrecognized.
  • Preselection is generally performed using simple acoustic models and grammar rules that are not very accurate. That is, since the preliminary selection is generally performed for all words in the word dictionary, if the preliminary selection is performed using a high-accuracy acoustic model or grammar rule, the amount of calculation and the amount Many resources such as memory capacity are required. Therefore, the preliminary selection can be performed at high speed with relatively few resources even when targeting large vocabulary by using simple acoustic models and grammar rules.
  • the matching process using a feature sequence is completed for a certain word, and after a probable end point is determined for the time being, the end point is used as the start point and the corresponding start point is used. This is performed using the feature sequence after the specified time. That is, the preliminary selection is performed when the boundaries between words (word boundaries) included in the continuously uttered speech have not been finally determined.
  • the start point and end point of the feature sequence used for preliminary selection deviate from the start and end points of the corresponding word, the feature including the phoneme features of the word immediately before and after the word is used.
  • the preliminary selection is performed using a quantity sequence or a feature quantity sequence lacking the feature quantity of the first or last part of the corresponding word, that is, a so-called acoustically unstable feature quantity sequence.
  • the words included in the utterance may not be selected. If the correct word is not selected in the preliminary selection, no matching process is performed for that word, and the speech recognition result is incorrect. Therefore, in the preliminary selection, there are a method of relaxing the acoustic or linguistic judgment criteria when selecting words to increase the number of selected words, and a method of using highly accurate acoustic models and grammatical rules .
  • the present invention has been made in view of such a situation, and it is an object of the present invention to enable efficient speech recognition processing while maintaining high recognition performance.
  • the first speech recognition device of the present invention calculates a score for a word to be subjected to speech recognition, and configures a word string that is a candidate for a speech recognition result based on the score,
  • Storage means for storing a connection relation between words of a word string which is a candidate for a speech recognition result; correction means for correcting the connection relation stored in the storage means; and a speech recognition result based on the corrected connection relation.
  • a word boundary limiting means for limiting a boundary position of a word represented by the connection relationship stored in the storage means.
  • a first speech recognition method includes a configuration step of calculating a score for a word to be subjected to speech recognition, and configuring a word string that is a candidate for a speech recognition result based on the score;
  • a storage step of storing a connection relationship between words of a word string that is a candidate for a voice recognition result, a correction step of correcting the connection relationship stored in the storage step, and a voice recognition result based on the corrected connection relationship.
  • a word boundary restriction step of restricting a boundary position of a represented word.
  • the first recording medium comprises: a configuration step of calculating a score for a word to be subjected to voice recognition, and forming a word string that is a candidate for a voice recognition result based on the score; A storage step of storing a connection relation between words of a word string that is a candidate for a voice recognition result, a correction step of correcting the connection relation stored in the storage step, and a voice recognition result based on the corrected connection relation. It is characterized in that a program including a determining step of determining a word string and a word boundary restriction step of restricting a boundary position of a word represented by the connection relation stored in the storage step is recorded.
  • the second speech recognition device is configured to select, from a group of words to be subjected to speech recognition, one or more words following a word already obtained in a word string that is a candidate for a speech recognition result.
  • Means a means for calculating a score for the word selected by the selecting means, and forming a word string as a candidate for speech recognition result based on the score; and It is characterized by comprising a determination unit for determining a word string that is a speech recognition result from among them, and a start position restriction unit for restricting a start position of a word selected by the selection unit.
  • a second speech recognition method is a method for selecting one or more words following a word already obtained in a word string that is a candidate for speech recognition results from a group of words to be subjected to speech recognition.
  • a start position restriction step of restricting the start position of the word selected in the selection step.
  • the second recording medium of the present invention includes a selecting step of selecting, from a group of words to be subjected to speech recognition, one or more words following a word already obtained in a word string that is a candidate for a speech recognition result. And the score for the word selected in the selection step Calculating and constructing a word string that is a candidate for speech recognition result based on the score, and determining a word string that is a speech recognition result from the word string that is a candidate for speech recognition result A program including a step and a start position restriction step of restricting a start position of a word selected in the selection step is recorded.
  • a score is calculated for a word to be subjected to speech recognition, and the word is used as a candidate for a speech recognition result based on the score.
  • a word string is formed. Further, the connection relationship between the words of the word string that is a candidate for the speech recognition result is corrected, and the word string that is the speech recognition result is determined based on the corrected connection relationship. In this case, the boundary position of the word represented by the connection relationship between the words in the word string that is a candidate for the speech recognition result is limited.
  • a word sequence that is a candidate for a speech recognition result from a group of words to be subjected to speech recognition follows a word that has already been obtained.
  • One or more words are selected, and a score is calculated for the selected words. Further, based on the score, a word string that is a candidate for the speech recognition result is formed, and from that, a word string that is the speech recognition result is determined. In this case, the starting position of a word selected from a group of words to be subjected to speech recognition is restricted.
  • FIG. 1 is a block diagram showing a configuration of an example of a conventional voice recognition device.
  • FIG. 2 is a diagram for explaining the necessity of holding a candidate for a boundary between words.
  • FIG. 3 is a block diagram showing a configuration example of a speech recognition device to which the present invention is applied.
  • FIG. 4 is a diagram for explaining word connection information.
  • FIG. 5 is a flowchart for explaining processing of the speech recognition device in FIG.
  • FIG. 6 is a diagram for explaining the processing of the reevaluation unit 15.
  • FIG. 7 is a block diagram showing a configuration example of the first embodiment of the speech recognition device to which the present invention is applied.
  • FIG. 8 is a diagram for explaining the processing of the word connection relationship management unit 21.
  • FIG. 9 is a diagram showing a simulation result.
  • FIG. 10 is a diagram for explaining the effect of correcting the word score.
  • FIG. 11 is a flowchart illustrating a speech recognition process performed by the speech recognition device in FIG.
  • FIG. 12 is a block diagram illustrating a configuration example of a second embodiment of the speech recognition device to which the present invention has been applied.
  • FIG. 13 is a diagram for explaining the processing of the word connection relationship management unit 22.
  • FIG. 14 is a flowchart illustrating a speech recognition process performed by the speech recognition device in FIG.
  • FIG. 15 is a diagram for explaining a method of complementing a word as a result of the word preliminary selection.
  • FIG. 16 is a block diagram illustrating a configuration example of a third embodiment of the speech recognition device to which the present invention has been applied.
  • FIG. 17 is a block diagram illustrating a configuration example of a fourth embodiment of the speech recognition device to which the present invention has been applied.
  • FIG. 18 is a diagram for explaining the processing of the word connection relationship management units 21 and 22.
  • FIG. 19 is a flowchart illustrating the speech recognition processing by the speech recognition device in FIG.
  • FIG. 20 is a block diagram showing a configuration example of a computer according to an embodiment of the present invention.
  • FIG. 3 shows a configuration example of a speech recognition device to which the present invention is applied.
  • parts corresponding to those in FIG. 1 are denoted by the same reference numerals, and are described below. , The explanation is omitted as appropriate.
  • the sequence of the feature amounts of the user-generated speech output by the feature amount extraction unit 3 is supplied to the control unit 11 in frame units.
  • the control unit 11 includes the feature amount extraction unit 3 Are supplied to the feature amount storage unit 12.
  • the control unit 11 refers to the word connection information stored in the word connection information storage unit 16 and controls the matching unit 14 and the reevaluation unit 15. Further, the control unit 11 performs, based on an acoustic score, a linguistic score, or the like as a matching processing result obtained by the matching unit 14 performing the same matching processing as the matching unit 4 in FIG. 1 described above.
  • the word connection information is generated, and the storage contents of the word connection information storage unit 16 are updated with the word connection information. Further, the control unit 11 corrects the storage content of the word connection information storage unit 16 based on the output of the reevaluation unit 15. Further, the control unit 11 determines and outputs the final speech recognition result based on the word connection information stored in the word connection information storage unit 16.
  • the feature amount storage unit 12 stores the series of feature amounts supplied from the control unit 11 until, for example, a recognition result of a user's voice is obtained.
  • the control unit 11 sets the time at which the feature amount output by the feature extraction unit 3 is obtained (hereinafter referred to as an extraction time as appropriate) with the start time of the voice section as a reference (for example, 0).
  • the feature amount is supplied to the feature amount storage unit 12, and the feature amount storage unit 12 stores the feature amount together with the extraction time.
  • the feature values stored in the feature value storage unit 12 and their extraction times can be referred to as necessary in the word preliminary selection unit 13, the matching unit 14, and the reevaluation unit 15. I'm sorry
  • the word preselection unit 13 requires a word connection information storage unit 16, an acoustic model database 17A, a dictionary database 18A, and a grammar database 19A in response to a request from the matching unit 14.
  • a word preliminary selection process of selecting one or more words to be subjected to the matching process in the matching unit 14 is performed using the feature amounts stored in the feature amount storage unit 12 while referring to the words accordingly.
  • the matching unit 14 Based on the control from the control unit 11, the matching unit 14 6.
  • the reevaluation unit 15 Based on the control from the control unit 11, the reevaluation unit 15 refers to the acoustic model database 17C, the dictionary database 18C, and the grammar database 19C as necessary, and The word connection information stored in 16 is re-evaluated using the feature amount stored in the feature amount storage unit 12, and the re-evaluation result is supplied to the control unit 11.
  • the word connection information storage unit 16 stores the word connection information supplied from the control unit 11 until a recognition result of the user's voice is obtained.
  • the word connection information represents a connection (chain or concatenation) relationship between words constituting a word string that is a candidate for a final speech recognition result, and includes an acoustic score and a language score of each word, and The start time and end time of the utterance corresponding to the word are also included.
  • FIG. 4 shows the word connection information stored in the word connection information storage unit 16 using a graph structure.
  • the graph structure as the word connection information includes an arc representing a word (in FIG. 4, a portion indicated by a line connecting ⁇ marks) and a node representing a boundary between the words (FIG. 4). In the figure).
  • the node has time information, and the time information indicates the extraction time of the feature corresponding to the node.
  • the extraction time is the time at which the feature amount output by the feature extraction unit 3 is obtained, with the start time of the voice section being 0, so in FIG. 4, the start of the voice section,
  • the time information of the node Node corresponding to the beginning of the word is 0.
  • the nodes are the start and end of the arc, but the time information of the start node (start node) or the end node (end node) is These represent the start time or end time of the utterance of the word corresponding to the node, that is, the word boundary.
  • the time from the left to the right represents the passage of time. Therefore, among the nodes on the left and right of a certain arc, the left node is the start node, and the right node is the end node. Become.
  • the arc has an acoustic score and a linguistic score of the word corresponding to the arc.
  • an arc corresponding to a word that is likely to be a speech recognition result is connected to the node Node, which indicates the start of a speech section.
  • Arc for "Today”, Arc 6 for "Good”, and Arc n for "Weather” are connected. Whether the word is likely to be a speech recognition result is determined based on the acoustic score and the linguistic score obtained by the matching unit 14.
  • termination node Node 2 is arc Ar c, the end of which corresponds to the "today”
  • the terminating node Node 7 is the end of the arc Arc 6 corresponding to "good”
  • arcs corresponding to probable words are connected to the terminal nodes Node 12 which are the ends of Arc n corresponding to “weather”.
  • one or more paths composed of arcs and nodes are formed from left to right starting from the start of the voice section.
  • the control unit 11 determines, for each path formed from the start to the end of the voice section, that path.
  • the acoustic and linguistic scores of the arcs constituting the arc are accumulated, and the final score is obtained.
  • a word string corresponding to the arc constituting the path having the highest final score is determined and output as the speech recognition result.
  • the end of one arc is the start node of one or more arcs to be connected next.
  • the path is configured so that the branches and leaves expand. Exceptionally, if the end of one arc matches the end of another arc, that is, the end node of one arc and the end node of another arc are shared by the same node There are cases.
  • the terminal node is shared by the same node Node 8 .
  • word connection information stored in the word connection information storage unit 16 can be referred to as necessary in the word preliminary selection unit 13, the matching unit 14, and the re-evaluation unit 15. It has become.
  • the acoustic model database 17A, 17B, and 17C basically store the acoustic model as described in the acoustic model database 5 of FIG.
  • the acoustic model database 17 B stores high-accuracy acoustic models that can perform processing with higher accuracy than the acoustic model database 17 A
  • the acoustic model database 17 C stores the acoustic model database 1 It stores a more accurate acoustic model that can perform processing with higher accuracy than 7B.
  • the acoustic model database 17B contains: For each phoneme or syllable, for example, an acoustic model that does not depend on the context before and after, as well as an acoustic model that depends on context between words, that is, a crossword model is stored.
  • the acoustic model database 17C stores, for each phoneme or syllable, for example, an acoustic model that does not depend on the context before and after, as well as an acoustic model that depends on the context within the word, .
  • the dictionary databases 18A, 18B and 18C basically store word dictionaries as described in the dictionary database 6 of FIG.
  • the word dictionary of the dictionary database 18B stores highly accurate phonological information that can be processed with higher accuracy than the word dictionary of the dictionary database 18A.
  • the dictionary stores highly accurate phonological information that can be processed with higher accuracy than the word dictionary in the dictionary database 18B.
  • the word dictionary of the dictionary database 18B includes A plurality of types of phoneme information are registered for each word. For example, in the word dictionary of the 18C dictionary, more phonological information is registered for each word.
  • the grammar databases 19 A, 19 B, and 19 C basically store the grammar rules as described in the grammar database 7 in FIG.
  • the grammar database 19B stores high-precision grammar rules that can be processed with higher precision than the grammar database 19A, and the grammar database 19C is more accurate than the grammar database 19B. It memorizes grammar rules with higher precision that can be processed more efficiently. That is, if the grammar database 19 A stores, for example, grammar rules based on a unigram (probability of occurrence of a word), the grammar database 19 B stores, for example, a bigram (considering the relationship with the immediately preceding word). (Probability of occurrence of a word). The grammar database 19 C stores grammar rules based on, for example, trigrams (probabilities of occurrence of words in consideration of the relation between the immediately preceding word and the immediately preceding word) and context-free grammar. ing.
  • the acoustic model database 17A contains one pattern acoustic model for each phoneme or syllable, and the acoustic model database 17B contains multiple pattern acoustic models for each phoneme or syllable.
  • the acoustic model database 17 C stores acoustic models of more patterns for each phoneme and syllable.
  • the dictionary database 18 A stores one type of phonological information for each word
  • the dictionary database 18 B stores multiple types of phonological information for each word.
  • the dictionary database 18 C stores more and more phonological information for each word.
  • the grammar database 19A stores simple grammar rules
  • the grammar database 19B stores high-precision grammar rules
  • the grammar database 19C stores more precise grammar rules. Have been.
  • the word preliminary selection unit 13 that refers to the acoustic model database 17 A, the dictionary database 18 A, and the grammar database 19 A does not have high accuracy but targets many words. As a result, it is possible to quickly obtain an acoustic score and a language score.
  • the re-evaluation unit 15 which refers to the acoustic model database 17C, the dictionary database 18C, and the grammar database 19C, quickly and with higher accuracy of the acoustic score and language for a small number of words. Scores can now be obtained.
  • the accuracy of the acoustic model stored in each of the acoustic model databases 17A to 17C is set to be superior or inferior, but the acoustic model databases 17A to 17C include
  • the same acoustic model can be stored.
  • the acoustic model databases 17A to 17C can be shared by one acoustic model database.
  • the storage contents of the word dictionaries of the dictionary databases 18 A to 18 C and the grammar rules of the grammar databases 19 A to 19 C can be the same.
  • the speech as the speech is converted into digital voice data via the microphone 1 and the AD converter 2 and supplied to the feature extractor 3.
  • the feature extracting unit 3 sequentially extracts a feature amount of a sound from the sound data supplied thereto for each frame, and supplies the extracted feature amount to the control unit 11.
  • the control unit 11 recognizes a voice section by some method, and in the voice section, associates a series of feature amounts supplied from the feature extraction unit 3 with an extraction time of each feature amount. Then, it is supplied to and stored in the feature amount storage unit 12.
  • control unit 11 After the start of the voice section, the control unit 11 generates a node (hereinafter, appropriately referred to as an initial node) representing the start of the voice section in step S1 and supplies the node to the word connection information storage unit 16.
  • an initial node representing the start of the voice section in step S1
  • the control unit 11 stores the node Node in FIG. 4 in the word connection information storage unit 16 in step S1.
  • control unit 11 determines whether or not there is an intermediate node by referring to the word connection information in the word connection information storage unit 16.
  • a path extending from the start to the end of the voice section is formed by connecting the arc to the terminal node.
  • the terminal nodes whose arcs are not yet connected and which have not reached the end of the voice section are the intermediate nodes (for example, node Node 8 in FIG. 4, Node 1G , Node, ,) To determine whether such an intermediate node exists.
  • the voice section is recognized by some method, and the time corresponding to the terminal node can be recognized by referring to the time information of the terminal node. Whether or not the end node that is not performed is an intermediate node that has not reached the end of the voice section can be determined by comparing the last time of the voice section with the time information of the end node. .
  • step S2 If it is determined in step S2 that there is an intermediate node, the process proceeds to step S3, where the control unit 11 sets one of the intermediate nodes in the information connection information as an arc connecting to the intermediate node. It is selected as a node that determines the word (hereinafter referred to as an attention node as appropriate).
  • the control unit 11 selects the intermediate node as the target node. Further, when there are a plurality of intermediate nodes in the information connection information, the control unit 11 Select one of the nodes as the node of interest. Specifically, for example, the control unit 11 refers to the time information of each of the plurality of intermediate nodes, and the time indicated by the time information is the oldest (the one on the start side of the voice section) or the newest. The object (the one at the end of the voice section) is selected as the node of interest.
  • control unit 11 accumulates, for example, an acoustic score and a language score of an arc constituting a path from an initial node to each of a plurality of intermediate nodes, and accumulates the accumulated score (hereinafter, appropriately, The node at the end of the path where the partial cumulative score becomes the largest or the path that becomes the smallest is selected as the node of interest.
  • control unit 11 sends an instruction to perform matching processing using the time information of the node of interest as a start time (hereinafter, appropriately referred to as a matching processing instruction) to the matching unit 14 and the re-evaluation unit 15. Output.
  • the reevaluation unit 15 Upon receiving the matching processing command from the control unit 11, the reevaluation unit 15 proceeds to step S 4, and refers to the word connection information storage unit 16 to determine the path (from the initial node to the attention node).
  • a word string represented by an arc that forms a partial path (which will be referred to as a partial path) will be recognized, and the partial word string will be reevaluated. That is, as described later, the partial word string is a word that is a candidate for a speech recognition result obtained by performing a matching process by the matching unit 14 on the word that is preliminarily selected by the word preliminary selection unit 13. This is an intermediate result in the column, but in the re-evaluation unit 15, the intermediate result is evaluated again.
  • the re-evaluation unit 15 reads out a series of feature amounts corresponding to the partial word string from the feature amount storage unit 12 to recalculate the language score and the acoustic score for the partial word string. That is, the re-evaluation unit 15 calculates, for example, the feature amount associated with the time represented by the time information of the initial node, which is the first node of the partial path, to the time represented by the time information of the node of interest.
  • the sequence (feature amount series) is read from the feature amount storage unit 12.
  • the re-evaluation unit 15 refers to the acoustic model database 17 C, the dictionary data base 18 C, and the grammar data base 19 C, and reads the feature amount series read out from the feature amount storage unit 12.
  • the language score and the And recalculate the acoustic score. This recalculation is performed without fixing the word boundaries of each word constituting the partial word string. Therefore, the reevaluation unit 15 recalculates the linguistic score and the acoustic score of the partial word string, and determines the word boundaries of each word constituting the partial word string based on the dynamic programming. Will be performed.
  • the reevaluation unit 15 obtains a new language score and acoustic score of each word of the partial word string and a new word boundary as described above.
  • the partial path corresponding to the partial word string of the word connection information storage section 16 is updated by the new word boundary. Correct the time information of the nodes that make up.
  • the correction of the word connection information by the re-evaluation unit 15 is performed via the control unit 11.
  • the reevaluation unit 15 By using the feature sequence from the time corresponding to Node 3 to the time corresponding to Node 5 and referring to the acoustic model database 17 C and the dictionary database 18 C, each of the words “good” and “weather” Construct a word model and calculate acoustic scores.
  • the re-evaluation unit 15 calculates the language score of each of the words “good” and “weather” by referring to the grammar database 19 C. Specifically, for example, if the grammar database 19 C stores a grammar rule based on a trigram, the re-evaluation unit 15 determines that the word “good” Using the word “ha” and the word “today” before it, the probability that the word is linked to “today”, “ha” and “good” is calculated, and the language score is calculated based on the probability. In addition, the re-evaluation unit 15 calculates the word “weather” Using the word "good” immediately before and the word "ha” before it, the word "ha”
  • the probability of linking with “good” and “weather” is calculated, and the language score is calculated based on the probability.
  • the re-evaluation unit 15 accumulates the acoustic score and the linguistic score obtained as described above, and determines the word boundary between the words “good” and “weather” so that the accumulated value becomes the largest. Then, the re-evaluation unit 15 calculates the acoustic score of Arc 3 corresponding to the word “good” and the acoustic score of Arc 4 corresponding to the word “weather” based on the acoustic score and the linguistic score thus obtained. In addition to correcting the word score and the determined word boundary, the time information of the node Node 4 corresponding to the word boundary between the words “good” and “weather” is corrected.
  • the reevaluation unit 15 determines the word boundaries between the words of the partial word string based on the dynamic planning method, and sequentially corrects the word connection information stored in the word connection information 16. Go. Then, since the word preliminary selection unit 13 and the matching unit 14 perform processing with reference to the corrected word connection information, the accuracy and reliability of the processing in each of them can be improved.
  • the word boundary of the word connection information is corrected in the re-evaluation unit 15, the number of word boundary candidates to be stored as the word connection information can be significantly reduced, and the memory capacity can be improved efficiently. Can be planned.
  • the re-evaluation unit 15 calculates the first and last words for the words constituting the partial word string. Calculate the acoustic score using a crossword model that takes into account each of the words connected before and after the word except for the word, and also calculate the language score taking into account each of the words connected before and after the word Therefore, high-precision processing can be performed.
  • the re-evaluation unit 15 finishes correcting the word connection information in the word connection information storage unit 16 as described above, it supplies the fact to the matching unit 14 via the control unit 11.
  • the matching unit 14 After receiving the matching processing command from the control unit 11 as described above, the matching unit 14 notifies the re-evaluation unit 15 via the control unit 11 that the correction of the word connection information has been completed. Upon receipt, the node of interest and the time information it has are supplied to the word preliminary selection unit 13 to request word preliminary selection processing, and the flow proceeds to step S5.
  • step S5 when the word preliminary selection unit 13 receives the request for the word preliminary selection process from the matching unit 14, the word preliminary selection unit 13 performs a word preliminary selection process of selecting word candidates to be arcs connected to the node of interest. This is done for words registered in the word dictionary of dictionary database 18A.
  • the word preliminary selection unit 13 recognizes, from the time information of the node of interest, the start time of a sequence of feature amounts used for calculating the language score and the acoustic score, and provides necessary features after the start time. A series of quantities is read from the feature quantity storage unit 12. Further, the word preliminary selection unit 13 constructs a word model of each word registered in the word dictionary of the dictionary database 18 A by connecting the acoustic model of the acoustic model database 17 A, and Based on this, an acoustic score is calculated using a sequence of feature values read from the feature value storage unit 12.
  • the word preliminary selection unit 13 calculates the language score of the word corresponding to each word model based on the grammar rules stored in the grammar database 19A. That is, the preliminary word selector 1 3, the language score of each word, for example, c Note determined based on Yuniguramu, in preliminary word selector 1 3, by referring to the word connection information, the acoustic score of each word The calculation is performed using the word immediately before that word (the node of interest ends in This can be done using a crossword model that depends on the word corresponding to the arc that is present).
  • the word preliminary selection unit 13 calculates the language score of each word by referring to the word connection information based on a bigram that defines the probability that the word is linked to the word immediately before it. It is possible.
  • the word preliminary selection unit 13 obtains an acoustic score and a language score for each word as described above, and obtains a score obtained by comprehensively evaluating the acoustic score and the language score (hereinafter, appropriately referred to as a word score).
  • the top L words are supplied to the matching unit 14 as words to be subjected to matching processing.
  • the word preliminary selection unit 13 selects a word based on the word score obtained by comprehensively evaluating the acoustic score and the language score of each word.
  • the word preliminary selection unit 13 uses other words. For example, it is possible to select a word based on only an acoustic score or only a language score.
  • the word preliminary selection unit 13 uses only the first part of the sequence of feature values read from the feature value storage unit 12 to perform corresponding processing based on the sound model of the sound model database 17A. It is also possible to find some phonemes of the first part of a word and to select words whose first part matches the phoneme.
  • the word preliminary selection unit 13 refers to the word connection information, recognizes the part of speech of the immediately preceding word (the word corresponding to the arc whose terminal node is the end node of the attention node), and recognizes the word following the part of speech. It is also possible to select a word of a part-of-speech that is likely to be a part of speech of the subject.
  • any method may be used for selecting a word in the word preliminary selection unit 13, and ultimately, a word may be randomly selected.
  • the matching unit 14 Upon receiving L words (hereinafter, appropriately referred to as “selected words”) used in the matching process from the word preliminary selecting unit 13, the matching unit 14 performs matching processing on the selected words in step S 6. Do.
  • the matching unit 14 is used to calculate the language score and the acoustic score.
  • the start time of the feature amount sequence is recognized from the time information of the node of interest, and the necessary feature amount sequence after the start time is read from the feature amount storage unit 12. Further, the matching unit 14 recognizes the phoneme information of the selected word from the word preliminary selection unit 13 by referring to the dictionary database 18 B, and stores the acoustic model corresponding to the phoneme information in the acoustic model database 1.
  • 7 Word model is constructed by reading from B and connecting.
  • the matching unit 14 uses the feature amount sequence read from the feature amount storage unit 12 to calculate the acoustic score of the selected word from the word preliminary selection unit 13. calculate.
  • the matching unit 14 can calculate the acoustic score of a word based on a crossword model by referring to the word connection information.
  • the matching unit 14 calculates the language score of the selected word from the word preliminary selection unit 13 by referring to the grammar database 19B. That is, the matching unit 14 recognizes, for example, the word immediately before the selected word from the word preliminary selection unit 13 and the word before that by referring to the word connection information, and converts the word into a bigram or trigram.
  • the language score of the selected word from the word preliminary selection unit 13 is calculated from the probability based on the selected word.
  • the matching unit 14 obtains the acoustic score and the linguistic score for all the L selected words from the word preliminary selecting unit 13 as described above, and proceeds to step S7.
  • step S7 for each selected word, a word score obtained by comprehensively evaluating the acoustic score and the language score is obtained, and the word connection information stored in the word connection information storage unit 16 is updated based on the word score. You.
  • step S7 the matching unit 14 obtains a word score for the selected word, and for example, compares the word score with a predetermined threshold to determine a word as an arc connected to the node of interest, To narrow down. Then, the matching unit 14 supplies the words remaining as a result of the narrowing down to the control unit 11 together with the acoustic score, the language score, and the end time of the word.
  • the end time of the word is recognized from the extraction time of the feature amount used for calculating the acoustic score.
  • the set of each end time and the corresponding acoustic score and language score for the word is controlled by the control. Supplied to part 11.
  • the control unit 11 When the control unit 11 receives the acoustic score, the language score, and the end time of the word supplied from the matching unit 14 as described above, the control unit 11 stores a word connection information storage unit for each word from the matching unit 14.
  • the arc is extended with the target node in the word connection information (FIG. 4) stored in 16 as the start node, and the arc is connected to the end node corresponding to the position of the end time. Further, the control unit 11 gives a corresponding word, its acoustic score and language score to each arc, and gives a corresponding end time as time information to the terminal node of each arc. . Then, returning to step S2, the same processing is repeated thereafter.
  • the word connection information is successively updated based on the processing result of the matching unit 14 and is successively corrected in the reevaluation unit 15, so that the word preliminary selection unit 13 and the matching unit 1 4) It is possible to always perform processing using word connection information.
  • control unit 11 When updating the word connection information, the control unit 11 shares the terminal node as described above, if possible.
  • step S2 when it is determined that there is no intermediate node, the process proceeds to step S8, and the control unit 11 refers to the word connection information, and determines each of the nodes configured as the word connection information.
  • the final score is obtained by accumulating the word scores for the paths.For example, a word string corresponding to the arc constituting the path having the highest final score is output as a speech recognition result for the utterance of the user, and the processing is performed. Exit.
  • the word preliminary selection unit 13 one or more words following the already determined word in the word sequence that is a candidate for the speech recognition result are selected, and the matching unit 14 is selected.
  • a score is calculated for the selected word (selected word), and a word string that is a candidate for a speech recognition result is formed based on the score.
  • the re-evaluation unit 15 corrects the word connection relationship between the words in the word string that is a candidate for the speech recognition result, and the control unit 11 compares the word recognition relationship with the speech recognition result based on the corrected word connection relationship. Is determined. Accordingly, highly accurate speech recognition can be performed while suppressing an increase in resources required for processing.
  • the processing is performed using a feature amount sequence after the time represented by such highly accurate time information. Therefore, even if the criteria for selecting a word to be selected in the preliminary word selection unit 13 and the criteria for narrowing down words in the matching unit 14 are strengthened, there is a possibility that a correct word is excluded as a result of speech recognition. It can be very low.
  • the criteria for selecting a word to be selected in the word preliminary selection unit 13 are strengthened, the number of words to be subjected to the matching process in the matching unit 14 decreases, and as a result, the processing of the matching unit 14 is reduced. The required amount of computation and memory capacity can also be reduced.
  • the word starting at a certain time among the words constituting the word string as a correct speech recognition result is not selected at that time in the word preliminary selection unit 13, even if the word is not selected at that time, If it is selected at a shifted time (accordingly, an erroneous time), the erroneous time is corrected in the re-evaluation unit 15, and a word string as a correct speech recognition result can be obtained. That is, even if the word preselection unit 13 does not select a word constituting a word string as a correct speech recognition result, the reevaluation unit 15 corrects the selection omission and corrects the speech recognition result. As a word sequence.
  • FIG. 7 shows a configuration example of a first embodiment of a speech recognition device to which the present invention is applied.
  • the speech recognition device of FIG. 7 is basically the same as that of FIG. 3 except that a word connection relationship management unit 21 is newly provided between the control unit 11 and the word connection information storage unit 16. It is configured in the same way as in.
  • control unit 11 generates the word connection information storage unit 16 via the word connection relationship management unit 21 based on the information from the matching unit 14.
  • the written word connection information is written.
  • the word connection relationship management unit 21 restricts the boundary position of the word represented by the word connection information.
  • the control unit 11 upon receiving the acoustic score, the language score, and the end time of the word supplied from the matching unit 14, the control unit 11 receives the word connection information for each word from the matching unit 14.
  • the arc is extended with the node of interest in the word connection information (FIG. 4) stored in the storage unit 16 as the start node, and the arc is connected to the end node corresponding to the position of the end time. Further, the control unit 11 assigns a corresponding word, its acoustic score and a linguistic score to each arc, and sets the corresponding end time as time information for the terminal node of each arc.
  • the word connection information FIG. 4
  • the word connection relation management unit 21 limits the position of the end node (word end time) of the arc extended from the target node as the start node.
  • the control unit 11 writing the end time is the minimum unit of the time T s the arc that corresponds to all words with terminal node, as a word connection information, the word connection information storage section 1 6.
  • the boundary position of a word (that is, the end time of the word) can be set at the timing when the feature amount is obtained in the feature extraction unit 3, so that the timing that can be set as the end node (hereinafter, the node in that a memory timing) also, as shown by the arrows in FIG. 8 (C), becomes a timing of the minimum unit time T s, the result, seven times a to g each successive per the above-mentioned time T s An arc whose terminating node is sometimes stored as word connection information.
  • the word connection relation management unit 21 limits the position of the terminal node (end time of the word) to a timing obtained by thinning out the timing at which the feature amount is supplied from the feature extraction unit 3.
  • word connection relation management unit 2 1, the position of the end node, for example, as shown in FIG. 8 (D), to limit the timing of each time 3 T s.
  • word connection relation management unit 21 limited by word connection relation management unit 2 1, a position which can be taken as the position of the terminal node (timing), hereinafter, this case c that new node memory timing, the control unit 1 1, the word " As shown in FIG. 8 (B), even if seven consecutive times a to g for each time T s are obtained as candidates for the end time of “today”, the word connection relation management unit 21 ends the The position of the node is limited to two times c and f, and as a result, the storage capacity required for the word connection information storage unit 16 can be reduced. Furthermore, in this case, the number of intermediate nodes that are subsequently regarded as nodes of interest is reduced, so that the processing speed can be increased.
  • a correct word boundary may not be obtained. That is, in FIG. In the embodiment, as shown in FIG. 8A, the correct word boundary between the words “today” and “ha” is time d, but the position of the terminal node is shown in FIG. As shown in, we are restricted to times c and f, and we cannot get the correct word boundary time d as a terminal node.
  • FIG. 9 shows a simulation result of the speech recognition processing performed by limiting the position of the terminal node.
  • the column of “time interval” represents the restriction condition of the position of the terminal node.
  • the number described therein is the time interval T s at which the feature amount is supplied from the feature extraction unit 3.
  • the column of “word correct rate” indicates a speech recognition rate.
  • the time interval T s of the feature quantity supplied from the feature extraction unit 3 and a 1 0 ms.
  • the number of words targeted for speech recognition was 20,000 words, and speech recognition was performed for 20 utterances by each of the 10 speakers, that is, for a total of 200 utterances. Trigram was used as grammar. From the simulation results of FIG. 9, the position of the terminal node, be limited to the time T s to 4 T S its Re respectively each time, it can be seen that most similar recognition performance is obtained.
  • the simulation does not target only 200 utterances, so the vertical difference of about 0.5% to 1% in the recognition rate in the column of “word correct rate” is within the range of the error. is there.
  • Fig. 10 (A) which is similar to Fig. 8 (A)
  • the word “Today” and "Ha” As a candidate for the boundary position, that is, a candidate for the end time of the word “today”, for example, as shown in FIG. 10 (B), two consecutive times (timings) d and e separated by a time T s are It is assumed that it was obtained.
  • the matching unit 1 for example, shown in FIG. 1 0 (A)
  • the word score of the word "kyou" with the end time of each time a to g for each time T s is calculated, according to the word score
  • the word “today” whose end times are times d and e, respectively, remains due to the narrowing described above.
  • the word connection relationship management unit 21 if the position of the terminal node is limited to a timing every time 3 T S , for example, as shown in FIG. 10 (C), both the times d and e Since the timing is not at the restricted timing, that is, at the position of the new node storage timing, any arc having the end times of the times d and e is not stored in the word connection information storage unit 16.
  • the control unit 11 controls the matching unit 14 to perform matching.
  • the word score calculated by the unit 14 is corrected, and based on the corrected word score (hereinafter, appropriately referred to as a correction score), a candidate for a boundary position of a word in a word string that is a candidate for a speech recognition result is provisionally determined ( ).
  • the matching unit 14 determines the acoustic score A ′ (X) and the language score L ′ (X) (hereinafter referred to as , And the corrected acoustic score A '(X) and the corrected language score L' (X), respectively, are calculated according to the following equations.
  • a '(X) ma x ⁇ A (x.,), A (x), A (x +1 ) ⁇
  • L '(x) max ⁇ L (x_,), L (x), L ( +1 ) ⁇
  • Equation (2) Here, in equation (2), max ⁇ means the maximum value in Katsuko ⁇ .
  • acoustic scores A (x_,) and A (x) in equation (2) , A (x +1 ) are subjected to some normalization so that they do not depend on the length of time to calculate each acoustic score.
  • the acoustic score of a word whose end time is a certain time X is the acoustic score of that time, and the adjacent times x_ and x + 1 before and after the time are the end times. It is corrected to the largest acoustic score of the word. Further, the same correction is made for the language score.
  • the word score of a word ending at a certain time X is the largest word score of a word ending at a time close to the time X including the time X. Will be corrected to
  • the word score of the word “today” having the time c as the end time is corrected to the word score of the word “today” having the time d immediately after the time c as the end time, and the time f is the end time.
  • the word score of the word “today” is also corrected to the word score of the word “today” whose end time is the time e immediately before the time f.
  • the corrected word score (correction score) of the word “today” whose end times are times c and f, respectively, is equal to or greater than a predetermined threshold. Therefore, by narrowing down based on such a correction score, as shown in Fig. 10 (D), not only the word “today” with time d and e as the end time, but also the time The word “today”, which ends with “”, will also remain.
  • the position of the terminal node is limited to a timing every time 3 T S as shown in FIG. 10 (E) similar to FIG. 10 (C).
  • the time c and f close to the correct time d are obtained as the end time of the word "today", and each of the times c and f is stored as a node.
  • the times c and f close to the correct end time d are stored as nodes, and the boundary position between words is corrected to the correct position by the processing of the re-evaluation unit 15 described above. Become.
  • steps S11 to S16 the same processing as in steps S1 to S6 of FIG. 5 is performed.
  • step S16 the matching unit 14 calculates the acoustic score and the linguistic score of each of the selected words from the word preliminary selection unit 13 as described above. After finding, go to step S 17 and match In accordance with equation (2), the tuning unit 14 corrects the acoustic score and the language score of each word with the acoustic score and the language score of the same word whose end time is another time. Further, the matching unit 14 calculates a corrected word score (corrected score) from the corrected acoustic score and language score. Then, the matching unit 14 proceeds to step S18, narrows down words based on the correction score, and thereby determines (temporarily determines) a candidate for a word boundary position without particularly limiting the position. .
  • the matching unit 14 supplies the words remaining as a result of the narrowing down in step S18 to the control unit 11 along with the acoustic score, the language score, and the end time of the word.
  • control unit 11 When the control unit 11 receives the acoustic score, the language score, and the end time of the word supplied from the matching unit 14 as described above, the control unit 11 determines the end time of each word in the word connection relation management unit 2 Supply 1
  • step S 19 the word connection relationship management unit 21 thins out the end time that is a word boundary candidate at the new node storage timing, that is, deletes the end time that is not at the new node storage timing. Finally, the remaining end time is finally determined as a time that becomes a word boundary candidate.
  • the word connection relation management unit 21 returns the end time finally left in this way to the control unit 11, and the control unit 11 ends the word connection relation management unit 21 in step S 20.
  • the word connection information stored in the word connection information storage unit 16 is updated via the word connection relationship management unit 21.
  • step S 20 for each word for which the end time has been returned from the word connection relation management unit 21, the word connection information storage unit 16
  • the arc is extended using the target node in the stored word connection information (FIG. 4) as the start node, and the arc is connected to the end node corresponding to the end time position.
  • the control unit 11 assigns a corresponding word, an acoustic score and a linguistic score to each arc, and associates each arc with a terminal node of each arc. Then, the corresponding end time is given as time information.
  • step S12 If it is determined in step S12 that there is no intermediate node, the process proceeds to step S21, and the control unit 11 refers to the word connection information as in step S8 of FIG.
  • the final score is obtained by accumulating the word scores. For example, the word string corresponding to the arc constituting the path having the highest final score is determined by the user. Output as the speech recognition result for the utterance, and terminate the process.
  • the word connection relationship management unit 21 restricts the position of the terminal node to the evening timing (new node storage timing) in which the timing at which the feature amount is supplied from the feature extraction unit 3 is thinned out. Therefore, the storage capacity and processing time of the word connection information storage unit 16 can be reduced, and the processing efficiency can be increased.
  • the re-evaluation unit 15 corrects the position to a correct word boundary position, so that it is possible to prevent the recognition performance from deteriorating.
  • the word recognition unit 13 is provided to configure the speech recognition device.
  • the speech recognition device is configured without the word selection unit 13. It is also possible.
  • FIG. 12 shows a configuration example of a second embodiment of the speech recognition device to which the present invention is applied.
  • the speech recognition device of FIG. 12 is basically the same as that of FIG. 1 except that a word connection relationship management unit 22 is newly provided between the word preliminary selection unit 13 and the matching unit 14. It is configured in the same way as in 3.
  • the attention node output by the matching unit 14 together with the request for the word preliminary selection processing, and the time information possessed by the matching node 14 are transmitted through the word connection relation management unit 22. It is supplied to the word preliminary selection unit 13. At this time, the word connection relationship management unit 22 receives the time information of the node of interest from the matching unit 14. Information, that is, the start position (start time) of the selected word is restricted.
  • the control section 11 1 Writes in the word connection information storage unit 16 arcs corresponding to all the words whose end nodes have the end time with the time T s as the minimum unit as word connection information. Therefore, for example, as shown in Fig.
  • the word connection relationship management unit 22 determines the position of the node of interest (word start time) supplied from the matching unit 14 to the preliminary word selection unit 13, and the timing at which the feature amount is supplied from the feature extraction unit 3. Is limited to the timing of thinning out.
  • word connection relation management unit 2 2 the position of the target node, for example, as shown in FIG. 1 3 (B), to limit the timing of each time 2 T s. Accordingly, in a word preliminary selection section 1 3, (start time of the word) timing preliminary word selection processing is started, is restricted to the timing of each time 2 T s.
  • the word connection relationship management unit 22 determines that the position of the attention node supplied from the matching unit 14 is a position permitted as the start time of the word (hereinafter, appropriately referred to as a permitted position).
  • the target node is supplied as it is to the word preliminary selection unit 13, and the position of the target node supplied from the matching unit 14 is set to a position that is not permitted as the start time of the word (hereinafter, appropriately, (Referred to as permitted position)
  • the time information of the target node is temporarily stored without being supplied to the word preliminary selection unit 13.
  • the word preliminary selection unit 13 performs the word preliminary selection with only the permitted position as the start position, so that the processing time required for the word preliminary selection processing can be reduced.
  • the word preliminary selection unit 13 when the word preliminary selection is performed with only the permitted position as the start position, the result of the word preliminary selection with the non-permitted position as the start position cannot be obtained. In this state, the word starting from the non-permitted position will not be processed by the matching processing unit 14.
  • the time information of the node of interest which is output by the matching unit 14 together with the request for the word preliminary selection process, has the time T s as a minimum unit in this case.
  • a word preliminary selection process starting from a non-permitted position as well as a permitted position may be required.
  • a word whose starting position is a non-permitted position is not supplied to the matching unit 14 as a result of word preselection, and as a result, it is not processed at all, which leads to deterioration in recognition performance. .
  • the word connection relationship managing unit 22 sets the non-permitted position as the starting position.
  • the word is complemented and supplied to the matching unit 14. That is, for example, the word connection relationship management unit 22 determines, for each time 2 T s shown in FIG. 13 (B), of the times a to g at the time T s shown in FIG. 13 (A).
  • the word connection relationship management unit 22 sets the times b and d at the permitted positions before and after the time c, which is the non-permitted position, as shown in FIG.
  • a set of words obtained as a result of the word preselection process at the start position is complemented as a word preselection result at time c as the start position, and supplied to the matching unit 14.
  • the word connection relation management unit 22 sets the times d and f of the permitted positions before and after the time e, which is the non-permitted position, as the start position, as shown in FIG.
  • the set of words obtained as a result of the word preliminary selection processing is complemented as a word preliminary selection result starting at time e, and is supplied to the matching unit 14.
  • the word preselection unit 13 actually performs the word preselection processing only on the word whose start time is the permitted position, but the matching unit 14 specifies the permitted position. Not only the word as the result of the word pre-selection as the start time, but also the word as the result of the word pre-selection with the non-permitted position as the start time is complemented and supplied. Therefore, it is possible to prevent the recognition performance from deteriorating while reducing the cost required for the word preliminary selection processing.
  • the word connection relation management unit 22 receives a request from the matching unit 14 for the word preliminary selection process starting from the non-permitted position as a start time, as described above, the word connection Since the word whose start position is the permitted position is complemented and supplied as a preliminary word selection result to the matching unit 14, for the complementation, for example, the permitted position from the preliminary word selection unit 13 is set to the start time. It is necessary to temporarily store the word as a result of the word preliminary selection.
  • the word connection relation management unit 22 If the word connection relation management unit 22 does not store a word preliminary selection result used for complementing a word whose start time is the non-permitted position, the word connection relation management unit 22 Requests the word preliminary selection unit 13 to perform a word preselection process starting from a permission position near the permission position and starting from the permission position supplied from the word preselection unit 13 in response to the request. According to the result of the word preselection, the word whose starting point is the forbidden position is complemented.
  • steps S31 to S34 the same processing as in steps S1 to S4 in FIG. 5 is performed.
  • step S34 as described in step S4 in FIG. 5, the reevaluation unit 15 corrects the word connection information in the word connection information storage unit 16 and the matching unit 14 corrects the word connection information.
  • the matching unit 14 outputs the node of interest and the time information of the node together with the request for the word preliminary selection process, as described above.
  • the request for the word preliminary selection process output by the matching unit 14 together with the attention node and the time information is received by the word connection relationship management unit 22.
  • the word connection relationship management unit 22 Upon receiving the request for the word preliminary selection process, the word connection relationship management unit 22 receives, in step S35, whether or not the request for the word preliminary selection process from the matching unit 14 uses the permitted position as the start time. Determine whether In step S35, when it is determined that the request for the word preliminary selection processing is to start from the permitted position, the word connection relationship management unit 22 sends the request for the word preliminary selection processing to The information is supplied to the word preliminary selection unit 13 and the process proceeds to step S36. In step S36, the word preliminary selection unit 13 performs word preliminary selection processing in the same manner as in step S5 in FIG. 5, and stores the resulting word (selected word) in word connection relationship management. Supply to part 22. The word connection relation management unit 22 temporarily stores the selected word from the word preliminary selection unit 13 (this is a start position at the permitted position) and supplies the word to the matching unit 14 as a word preliminary selection result. And proceed to step S38.
  • step S35 when it is determined in step S35 that the request for the word preliminary selection processing does not start at the permitted position, that is, when the start time is at the non-permitted position, step S37 Then, the word connection relation management unit 22 determines the word preliminary selection result starting from the permitted positions before and after the non-permitted position from the word preliminary selection results already obtained from the word preliminary selection unit 13. Then, it is complemented as a word preliminary selection result with the non-permitted position as the start time. Then, the word connection relation management unit 2 2 The word preliminary selection result with the non-permitted position obtained as a start time as a start time is supplied to the matching unit 14, and the process proceeds to step S38.
  • steps S38 to S40 the same processes as those in steps S6 to S8 in FIG. 5 are performed.
  • the word as the result of the word preliminary selection starting from the non-permitted position is complemented by the word preliminary selection result starting from the permitted position before and after the non-permitted position.
  • this complementation is, for example, at the disallowed position X as shown in Fig. 15 (A). It is possible to do so based on the word pre-selection results starting from a plurality of permitted positions ⁇ ,, x 2 , 3, ⁇ 4. ⁇ 5 , ⁇ 6 within a certain range from ⁇ .
  • the disallowed position X is set as the non-permitted position X.
  • the non-permitted position X as shown in FIG. 15 (B). It is possible to adopt a weight that becomes smaller as the distance from is increased. That is, in this case, the complement of the unauthorized position x Q, a distance from the unauthorized position x Q are close, for example, a word as a preliminary word selection result to the start position to allow the position x 3 and x 4 Often used. The distance from the unauthorized position x Q is far, for example, for the word of the preliminary word selection result to the start position permission position X, and x 6, with fewer, complement is performed.
  • Part words can be selected, for example, based on a word score obtained in a word preliminary selection process. That is, some words used for completion are selected, for example, in descending order of word score. And it is possible.
  • the timing for starting the word preliminary selection process is limited to only the permitted positions.
  • the matching unit 14 requests the word preliminary selection process from the non-permitted position, the word preliminary selection process is performed. Since the selection result is complemented, the processing amount can be significantly reduced without deteriorating the recognition performance.
  • the reevaluation unit 15 is provided to constitute the speech recognition device. However, it is possible to configure without the re-evaluation unit 15.
  • FIG. 16 shows a configuration example of a third embodiment of a speech recognition device to which the present invention is applied.
  • the same reference numerals are given to portions corresponding to the case in FIG. 12, and the description thereof will be appropriately omitted below. That is, the voice recognition device of FIG. 16 basically has the same configuration as that of FIG. 16 except that two word preliminary selection units 13 A and 13 B are provided instead of one word preliminary selection unit 13. The configuration is the same as in the case of 12.
  • the words registered in the dictionary database 18 A are classified into two categories: words having a long phoneme and words having a short phoneme.
  • A performs a word preliminary selection process for words having a long phoneme number.
  • the word preliminary selection section 13 B performs a word preliminary selection process for words having a short phoneme number.
  • the word connection relationship management unit 22 sets different conditions for the timing at which the word preliminary selection unit 13 A starts the word preliminary selection process and the timing at which the word preliminary selection unit 13 B starts the word preliminary selection process. It is designed to limit.
  • the word connection relationship management unit 22 limits the timing interval at which the word preliminary selection unit 13 A starts the word preliminary selection process to be relatively long, and the word preliminary selection unit 13 A The interval between the timings at which the preliminary selection processing is started is limited so as to be relatively short.
  • a word with a short phoneme such as a particle
  • the cost of the word preselection process is reduced.
  • a word with a short phoneme such as a particle
  • the timing at which the word preselection process is started is restricted so that the interval becomes longer.
  • the difference between the timing and the start time of the utterance of the word tends to be large with respect to the utterance time of the word, and as a result, it is difficult to be detected in the word preliminary selection processing.
  • words with a large number of phonemes and a long utterance time generally have a long utterance time.
  • the timing of starting the word preselection process is limited so that the interval becomes long.
  • the difference between the evening's timing and the utterance start time of the word is not so large with respect to the utterance time of the word, and as a result, it is hardly detected in the word preselection process. It will not be.
  • the word pre-selection processing is started at a shorter time for words having a short phoneme number, and the word pre-selection processing is performed at a shorter time for words having a long phoneme number.
  • the start timing By setting the start timing to be longer, the processing efficiency can be improved while preventing the recognition performance from deteriorating due to missed detection of a word having a short phoneme number.
  • the words registered in the dictionary database 18 A are divided into two categories, and two word preliminary selection units 13 A and 13 B are provided.
  • the number of categories into which words are classified and the number of word preliminary selection sections can be three or more.
  • words are classified according to the number of phonemes.
  • the average time when a word is uttered is obtained, and the word is classified according to the average time. It is also possible to classify.
  • words can be classified based on their importance, and the higher the importance, the shorter the time interval for starting the word preselection process can be made.
  • the importance of a word is, for example, It is possible to collect information such as the frequency of use of each word and the utterance history, and make settings based on that information.
  • FIG. 17 shows a configuration example of a fourth embodiment of a speech recognition device to which the present invention has been applied.
  • the speech recognition device is basically configured in the same manner as in FIG. 3 except that a word connection relationship management unit 21 shown in FIG. 7 and a word connection relationship management unit 22 shown in FIG. 12 are newly provided. ing.
  • the word connection relation management unit 21 limits the position of the terminal node stored as the word connection information, and the word connection relation management unit 22 selects the word preliminary selection. The start timing of the process is restricted.
  • word connection relation management unit 2 when the interval of the timing characteristic amount is obtained by the feature extraction section 3, a time T s, word connection relation management unit 2 1, the position of the end node, for example, as shown in FIG. 1 8 (B), to limit the timing of each time 2 T S. Furthermore, word connection relation management unit 2 2 limits the start timing of the preliminary word selection process, for example, as shown in FIG. 1 8 (C), the timing of each time between 4 T s.
  • the word connection relation management unit 2 1 the position of the end node, from being limited to the timing of each time 2 T s, in the matching section 1 4, at the timing of every time 2 T s, the preliminary word A selection process may be required.
  • the start timing of the preliminary word selection processing, in word connection relation management unit 2 2 is limited to the timing of each time 4 T s.
  • a word connection relation management unit 2 2 for the required word preselection process to start time disablement position, as shown in FIG. 1 8 (D), allowed position (here, time 4 T S Is complemented by the processing result of the word preliminary selection processing with the start time of It has become.
  • steps S51 to S54 the same processing is performed as in steps S1 to S4 of FIG.
  • step S54 as described in step S4 of FIG. 5, the reevaluation unit 15 corrects the word connection information in the word connection information storage unit 16 and the matching unit 14 corrects the word connection information.
  • the matching unit 14 outputs the node of interest and the time information of the node together with the request for the word preliminary selection process, as described above.
  • the request for the word preliminary selection processing output by the matching unit 14 together with the attention node and the time information is received by the word connection relationship management unit 22.
  • the word connection relationship management unit 22 receives, in step S55, whether or not the request for the word preliminary selection process from the matching unit 14 uses the permitted position as the start time. Determine whether In step S55, if it is determined that the request for the word preliminary selection processing is to start at the permitted position, the word connection relation management unit 22 sends the request for the word preliminary selection processing to The information is supplied to the word preliminary selection unit 13 and the process proceeds to step S56.
  • the word preliminary selection unit 13 performs a word preliminary selection process in the same manner as in step S5 in FIG. 5, and stores the resulting words (selected words) in word connection relationship management. Supply to part 22.
  • the word connection relation management unit 22 temporarily stores the selected word from the word preliminary selection unit 13 (this is a start position at the permitted position) and supplies the word to the matching unit 14 as a word preliminary selection result. And proceed to step S58.
  • step S57 The word connection relationship management unit 22 reads the result of the word preliminary selection starting from the permitted position before and after the non-permitted position as the start time. From the word pre-selection results that have already been obtained, and complement them as the word pre-selection results with the non-permitted position as the start time. Then, the word connection relationship management unit 22 supplies the word preliminary selection result with the non-permitted position obtained as a result of the complementation as the start time to the matching unit 14, and proceeds to step S58.
  • step S58 as described in step S6 of FIG. 5, the matching unit 14 sets the acoustic scores and the respective sound scores of all the selected words as the word preliminary selection results from the word preliminary selection unit 13 as The language score is obtained, and the process proceeds to step S59.
  • step S59 the matching unit 14 sets the acoustic score and the language score of each word to the acoustic score and the language of the same word whose end time is another time according to the equation (2). Correct each according to the score. Further, the matching unit 14 calculates a corrected word score (corrected score) from the corrected acoustic score and the linguistic score. Then, the matching unit 14 proceeds to step S60, narrows down the words based on the correction score, and thereby determines a candidate for a word boundary position without particularly limiting the position (tentative decision). I do.
  • the matching unit 14 supplies the words remaining as a result of the narrowing down in step S60 to the control unit 11 along with the acoustic score, the language score, and the end time of the word.
  • control unit 11 When the control unit 11 receives the acoustic score, the language score, and the end time of the word supplied from the matching unit 14 as described above, the control unit 11 determines the end time of each word in the word connection relation management unit 2 Supply 1
  • step S61 the word connection relationship management unit 21 thins out the end time that is a word boundary candidate at the new node storage timing, that is, deletes the end time that is not at the new node storage timing. Finally, the remaining end time is finally determined as a time that becomes a word boundary candidate.
  • the word connection relation management unit 21 returns the end time finally left in this way to the control unit 11, and the control unit 11 described in step S 6 2 in step S 7 of FIG. Similarly to the case, the word whose end time is returned from the word connection relation management unit 21 is stored in the word connection information storage unit 16. The word connection information is updated via the word connection relation management unit 21.
  • step S52 when it is determined that there is no intermediate node, the process proceeds to step S63, and the control unit 11 refers to the word connection information as in step S8 in FIG.
  • the speech recognition result for the user's utterance is determined and output, and the process ends.
  • the processing efficiency can be further improved while maintaining the recognition performance.
  • the word connection relation management unit 2 1 the position of the terminal nodes is stored as a word connection information, as well as limit the time 4 T S your capital of time, word connection in relation management unit 2 2, the start timing of the preliminary word selection processing, in the case of limiting the time each time 8 T s, while substantially maintaining the recognition rate in the case of not performing such limitations, about the amount of calculation 15% reduction.
  • the timing of the restriction by the word connection relationship management unit 22 is synchronized with the time interval twice as long as the timing of the restriction by the word connection relationship management unit 21.
  • the timing restriction by the word connection relationship management units 21 and 22 can be independently performed.
  • the timing interval restricted by the word connection relationship management unit 21 does not need to be fixed but can be variable. The same applies to the timing interval restricted by the word connection relationship management unit 22.
  • the speech recognition device in each of the above-described embodiments includes, for example, a case where a database is searched by voice, a case where various devices are operated, a case where data is input to each device, and a case where a voice dialogue system is used. And so on. More specifically, for example, a database search device that displays corresponding map information in response to an inquiry about a place name by voice, or an industrial robot that sorts packages in response to a voice command.
  • the present invention can be applied to a dictation system in which text is created by voice input instead of a keyboard and a keyboard, and a dialogue system in a robot that has a conversation with a user.
  • FIG. 20 shows a configuration example of an embodiment of a computer in which a program for executing the series of processes described above is installed.
  • the program can be recorded in advance on a hard disk 105 or a ROM 103 as a recording medium built in the computer.
  • the program may be a removable recording medium such as a floppy disk, CD-ROM (Compact Disc Read Only Memory), MO (Magneto Optical) disk, DVD (Digital Versatile Disc), magnetic disk, or semiconductor memory. 1 can be stored temporarily or permanently.
  • a removable recording medium 111 can be provided as so-called package software.
  • the program can be installed from the removable recording medium 111 as described above at the convenience store, or transmitted from a download site to a computer via a digital satellite broadcasting artificial satellite by wireless or LAN. (Local Area Network), via a network such as Internet Connection Network, and wiredly transferred to a computer.
  • the computer receives the transferred program in the communication unit 108 and uses the built-in hard disk 105 It can be installed at
  • the computer has a CPlK Central Processing Unit (CPlK Central Processing Unit) 102 built-in.
  • the CPU 102 is connected to an input / output interface 110 via a bus 101, and the CPU 102 is connected to a CPU via the input / output interface 110 by a user.
  • a command is input by operating the input unit 107 including a board, a mouse, a microphone, etc.
  • the command is stored in a read-only memory (R0M) 103 according to the command. Execute the program.
  • the CPU 102 may execute a program stored in the hard disk 105, a program transferred from a satellite or a network, received by the communication unit 108 and installed on the hard disk 105, or The program read from the removable recording medium 111 attached to the drive 109 and installed on the hard disk 105 is loaded into a RAM (Random Access Memory) 104 and executed. Accordingly, the CPU 102 performs the processing according to the above-described flowchart or the processing performed by the configuration of the above-described block diagram. Then, the CPU 102 converts the processing result as necessary, for example, through an input / output interface 110, using an LCD (Liquid Crystal Dipspray), a speaker, or the like. Output from the output unit 106 or transmitted from the communication unit 108, and further recorded on the hard disk 105.
  • a program stored in the hard disk 105 a program transferred from a satellite or a network, received by the communication unit 108 and installed on the hard disk 105, or
  • processing steps for describing a program for causing a computer to perform various types of processing do not necessarily have to be processed in chronological order in the order described as a flowchart, and may be performed in parallel or in parallel. It also includes processes that are executed individually (for example, parallel processing or processing by objects).
  • the program may be processed by one computer, or may be processed in a distributed manner by a plurality of computers. Furthermore, the program may be transferred to a remote computer and executed.
  • a score is calculated for a word to be subjected to speech recognition, and a speech recognition result candidate is calculated based on the score. Is formed. Further, the connection relationship between the words of the word string that is a candidate for the speech recognition result is corrected, and the word string that is the speech recognition result is determined based on the corrected connection relationship. In this case, the audio The boundary position of the word represented by the connection relationship between the words in the word string that is a candidate for the recognition result is restricted. Therefore, processing efficiency can be improved.
  • a word sequence that is a candidate for a speech recognition result from a group of words to be subjected to speech recognition, One or more subsequent words are selected, and a score is calculated for the selected words. Further, based on the score, a word string that is a candidate for the speech recognition result is formed, and from that, a word string that is the speech recognition result is determined. In this case, the starting position of a word selected from a group of words to be subjected to speech recognition is restricted. Therefore, processing efficiency can be improved.

Description

明細書
技術分野
本発明は、 音声認識装置に関し、 特に、 例えば、 精度の高い音声認識を、 効率 的に行うことができるようにする音声認識装置に関する。 背景技術
図 1は、 従来の音声認識装置の一例の構成を示している。
ユーザが発した音声は、 マイク (マイクロフォン) 1に入力され、 マイク 1で は、 その入力音声が、 電気信号としての音声信号に変換される。 この音声信号は, AD (Analog Digital)変換部 2に供給される。 AD変換部 2では、 マイク 1から のアナログ信号の音声信号がサンプリング、 量子化され、 ディジタル信号の音声 データに変換される。 この音声データは、 特徴抽出部 3に供給される。
特徴抽出部 3は、 AD変換部 2らの音声デ一夕について、 適当なフレームごと に音響処理を施し、 これにより、 例えば、 MFCC(Mel Frequency Cepstrum Co efficient)等の特徴量を抽出して、 マッチング部 4に供給する。 なお、 特徴抽出 部 3では、 その他、 例えば、 スペクトルや、 線形予測係数、 ケプストラム係数、 線スぺクトル対等の特徴量を抽出することが可能である。
マッチング部 4は、 特徴抽出部 3からの特徴量を用いて、 音響モデルデータべ —ス 5、 辞書データベース 6、 および文法デ一夕べ一ス 7を必要に応じて参照し ながら、 マイク 1に入力された音声 (入力音声) を、 例えば、 連続分布 HMM法 等に基づいて音声認識する。
即ち、 音響モデルデータベース 5は、 音声認識する音声の言語における個々の 音素や音節などの音響的な特徴を表す音響モデルを記憶している。 ここでは、 連 続分布 HMM法に基づいて音声認識を行うので、 音響モデルとしては、 例えば、 HMM(Hidden Markov Model)が用いられる。 辞書データベース 6は、 認識対象 の各単語 (語彙) について、 その発音に関する情報 (音韻情報) が記述された単 語辞書を記憶している。 文法データベース 7は、 辞書データベース 6の単語辞書 に登録されている各単語が、 どのように連鎖する (つながる) かを記述した文法 規則 (言語モデル) を記憶している。 ここで、 文法規則としては、 例えば、 文脈 自由文法 (C F G) や、 統計的な単語連鎖確率 (N— g r a m) などに基づく規 則を用いることができる。
マッチング部 4は、 辞書データベース 6の単語辞書を参照することにより、 音 響モデルデータベース 5に記憶されている音響モデルを接続することで、 単語の 音響モデル (単語モデル) を構成する。 さらに、 マッチング部 4は、 幾つかの単 語モデルを、 文法データベース 7に記憶された文法規則を参照することにより接 続し、 そのようにして接続された単語モデルを用いて、 特徴量に基づき、 連続分 布 H MM法によって、 マイク 1に入力された音声を認識する。 即ち、 マッチング 部 4は、 特徴抽出部 3が出力する時系列の特徴量が観測されるスコア (尤度) が 最も高い単語モデルの系列を検出し、 その単語モデルの系列に対応する単語列を、 音声の認識結果として出力する。
つまり、 マッチング部 4は、 接続された単語モデルに対応する単語列について、 各特徴量の出現確率を累積し、 その累積値をスコアとして、 そのスコアを最も高 くする単語列を、 音声認識結果として出力する。
スコア計算は、 一般に、 音響モデルデータベース 5に記憶された音響モデルに よって与えられる音響的なスコア (以下、 適宜、 音響スコアという) と、 文法デ 一夕ベース 7に記憶された文法規則によって与えられる言語的なスコア (以下、 適宜、 言語スコアという) とを総合評価することで行われる。
即ち、 音響スコアは、 例えば、 H MM法による場合には、 単語モデルを構成す る音響モデルから、 特徴抽出部 3が出力する特徴量の系列が観測される確率 (出 現する確率) に基づいて、 単語ごとに計算される。 また、 言語スコアは、 例えば、 バイグラムによる場合には、 注目している単語と、 その単語の直前の単語とが連 鎖 (連接) する確率に基づいて求められる。 そして、 各単語についての音響スコ ァと言語スコアとを総合評価して得られる最終的なスコア (以下、 適宜、 最終ス コアという) に基づいて、 音声認識結果が確定される。
具体的には、 ある N個の単語からなる単語列における k番目の単語を wkとし て、 その単語 wkの音響スコアを A (wk) と、 言語スコアを L (wk) と、 それ ぞれ表すとき、 その単語列の最終スコア Sは、 例えば、 次式にしたがって計算さ れる。
S =∑ (A (wk) + C k X L (wk) )
- … ( 1 ) 但し、 ∑は、 kを 1から Nに変えてのサメーシヨンをとることを表す。 また、 C kは、 単語 wkの言語スコア L (wk) にかける重みを表す。
マッチング部 4では、 例えば、 式 (1 ) に示す最終スコアを最も大きくする N と、 単語列 w,, w2, · · · , wNを求めるマッチング処理が行われ、 その単語 列 w,, w2, · · ·, wNが、 音声認識結果として出力される。
以上のような処理が行われることにより、 図 1の音声認識装置では、 例えば、 ユーザが、 「ニューヨークに行きたいです」 と発話した場合には、 「ニューョー ク」 、 「に」 、 「行きたい」 、 「です」 といった各単語に、 音響スコアおよび言 語スコアが与えられ、 それらを総合評価して得られる最終スコアが最も大きいと きに、 単語列 「ニューヨーク」 、 「に」 、 「行きたい」 、 「です」 が、 音声認識 結果として出力される。
ところで、 上述の場合において、 辞書データベース 6の単語辞書に、 「ニュー ヨーク」 、 「に」 、 「行きたい」 、 および 「です」 の 5単語が登録されていると すると、 これらの 5単語を用いて構成しうる 5単語の並びは、 5 5通り存在する 従って、 単純には、 マッチング部 4では、 この 5 5通りの単語列を評価し、 その 中から、 ユーザの発話に最も適合するもの (最終スコアを最も大きくするもの) を決定しなければならない。 そして、 単語辞書に登録する単語数が増えれば、 そ の単語数分の単語の並びの数は、 単語数の単語数乗通りになるから、 評価の対象 としなければならない単語列は、 膨大な数となる。 さらに、 一般には、 発話中に含まれる単語の数は未知であるから、 5単語の並 びからなる単語列だけでなく、 1単語、 2単語、 · · ·からなる単語列も、 評価 の対象とする必要がある。 従って、 評価すべき単語列の数は、 さらに膨大なもの となるから、 そのような膨大な単語列の中から、 音声認識結果として最も確から しいものを、 計算量および使用するメモリ容量の観点から効率的に決定すること は、 非常に重要な問題である。
計算量およびメモリ容量の効率化を図る方法としては、 例えば、 音響スコアを 求める過程において、 その途中で得られる音響スコアが所定の閾値以下となった 場合に、 そのスコア計算を打ち切るという音響的な枝刈り手法や、 言語スコアに 基づいて、 スコア計算の対象とする単語を絞り込む言語的な枝刈り手法がある。 これらの枝刈り手法によれば、 スコア計算の対象が、 所定の判断基準 (例えば、 上述したような計算途中の音響スコアや、 単語に与えられる言語スコア) に基づ いて絞り込まれることで、 計算量の削減を図ることができる。 しかしながら、 そ の反面、 絞り込みを強くすると、 即ち、 判断基準を厳しくすると、 本来、 音声認 識結果として正しいものまでも枝刈りされてしまい、 誤認識が生じることになる 従って、 枝刈り手法による場合には、 音声認識結果として正しいものが枝刈りさ れないように、 ある程度のマージンをもたせた絞り込みを行う必要があり、 この ため、 計算量を大きく削減することは困難である。
また、 音響スコアの計算を、 スコア計算の対象となっているすべての単語につ いて独立に行うと、 その計算量が大きくなることから、 複数の単語についての音 響スコアの計算の一部を共通化 (共有化) する方法が提案されている。 この共通 化の方法としては、 単語辞書の単語のうち、 その先頭の音韻が同一のものについ て、 その先頭の音韻から、 同一になっている音韻までは、 音響モデルを共通に用 い、 それ以後の異なる音韻には、 音響モデルを個々に用いることにより、 全体と して 1つの木構造のネットワークを構成し、 これを用いて、 音響スコアを求める 方法がある。 具体的には、 例えば、 いま、 単語 「秋田」 と 「曙」 を考え、 「秋 田」 の音韻情報が 「aki t a」 であり、 「曙」 の音韻情報が 「akebono」 であるとす ると、 単語 「秋田」 と 「曙」 の音響スコアは、 それぞれの先頭から 2番目までの 音韻 a, kについては兼用で計算される。 そして、 単語 「秋田」 の残りの音韻 k, i , t, a、 および単語 「曙」 の残りの音韻 e, b, o, n, 0については、 それぞれ独立に音 響スコアが計算される。
従って、 この方法によれば、 音響スコアの計算量を大幅に低減することができ る。
しかしながら、 この方法では、 音響スコアの計算が共通化される部分 (音響ス コアが兼用で計算される部分) において、 その音響スコアの計算の対象となって いる単語を決定することができない。 即ち、 上述の単語 「秋田」 と 「曙」 の例で いえば、 れぞれの先頭から 2番目までの音韻 a, kについて音響スコアが計算さ れている間は、 その音響スコアが計算されている単語が、 「秋田」 であるのか、 または 「曙」 であるのかを同定することができない。
そして、 この場合、 「秋田」 については、 その 3番目の音韻 iについて音響ス コアの計算が開始されたときに、 その計算の対象となっている単語が 「秋田」 で あることを同定することができ、 「曙」 についても、 その 3番目の音韻 eについ ての音響スコアの計算が開始されたときに、 その計算の対象となっている単語が 「曙」 であることを同定することができる。
従って、 音響スコアの計算の一部を共通化してしまうと、 単語の音響スコアの 計算の開始時に、 その単語を同定することができないため、 その単語について、 言語スコアを考慮 (適用) することができない。 その結果、 単語の音響スコアの 開始前に、 上述したような言語的な枝刈り手法を用いることが困難となり、 無駄 な計算が行われることがある。
さらに、 音響スコアの計算の一部を共通化する場合、 単語辞書のすべての単語 を対象として、 上述したような木構造のネットワークが構成されるから、 これを 保持するための大きなメモリ容量が必要となる。
また、 計算量およびメモリ容量の効率化を図る方法としては、 音響スコアを計 算する場合に、 単語辞書のすべての単語を対象とするのではなく、 その音響スコ ァの計算の対象とする単語を予備的に選択 (予備選択) し、 その予備選択された 単語についてだけ、 音響スコアを計算する方法がある。 ここで、 予備選択は、 例 えば、 それほど精度の高くない、 簡易的な音響モデルや文法規則を用いて行われ る。
なお、 予備選択の方法は、 例えば、 L. R. Bahl, S. V. De Gennaro, P. S. Go palakrishnan and R. L. Mercer, "A Fast Approximate Acoustic Match for La rge Vocabulary Speech Recognition , IEEE Trans. Speech and Audio Proc. , vol. 1, pp.59-67, 1993等に記載されている。
ところで、 単語の音響スコアは、 音声の特徴量の系列を用いて計算されるが、 その計算に使用する特徴量の系列の始点ゃ終点が異なれば、 求められる音響スコ ァも変化する。 そして、 この変化は、 音響スコアと言語スコアとを総合評価して 求められる式 (1) の最終スコアに影響する。
ある単語に対応する特徴量の系列の始点および終点、 即ち、 単語どうしの境界 (単語境界) は、 例えば、 動的計画法(Dynamic Programming)を用いて求めるこ とができる。 即ち、 特徴量の系列の任意の点を、 単語境界の候補とし、 音声認識 結果の候補となる単語列の各単語について、 その音響スコアと言語スコアとを総 合評価したスコア (以下、 適宜、 単語スコアという) を、 逐次累積していく。 そ して、 その単語スコアの累積の際に、 最も大きい累積値を与える単語境界の候補 を、 その累積値とともに記憶していく。
これにより、 最終的な単語スコアの累積値が求めらると、 最も良い累積値、 即 ち、 最も大きい最終スコアを与える単語境界も求められる。
上述のようにして単語境界を求める方法は、 ビ夕ビデコーディング(Viterbi d ecoding)、 あるいはワンパスデコーディング(One pass decoding)等と呼ばれ、 例えば、 中川聖一、 「確率モデルによる音声認識」 、 電子情報通信学会、 pp.20- 26、 1 988年 7月 1日等に、 その詳細が記載されている。
ところで、 上述の予備選択を効果的に行うには、 単語境界をどこにするか、 即 ち、 特徴量の系列 (特徴量系列) のどの点を始点とするかが非常に重要である。 具体的には、 例えば、 図 2 (A) に示すような、 音声 「今日はいい天気です ね」 について得られた特徴量系列において、 「今日」 と 「は」 との正しい単語境 界が、 時刻 t ,である場合において、 単語 「今日」 に続く単語 「は」 に関して予 備選択を行うときに、 正しい時刻 t ,より先行する時刻 t ,_,を始点として予備選 択を行うと、 その予備選択には、 単語 「は」 の特徴量だけでなく、 その直前の単 語 「今日」 の最後の部分の特徴量が影響する。 一方、 正しい時刻 t ,より後行す る時刻 t 1+1を始点として予備選択を行うと、 その予備選択においては、 単語 「は」 の最初の部分の特徴量が用いられないことになる。
従って、 いずれにしても、 始点を誤ると、 予備選択、 ひいては、 その後に行わ れるマッチング処理に悪影響を与えることとなる。
なお、 図 2においては (後述する図 4および図 6においても同様) 、 左から右 方向が、 時間の経過を表しており、 また、 音声区間の開始時刻を 0として、 音声 区間は時刻 Tで終了するものとしてある。
上述した動的計画法を用いる方法では、 特徴量系列の最後、 即ち、 図 2におい ては、 音声区間の終了時刻 Tまでの単語スコア (音響スコアおよび言語スコア) の計算が終了しないと、 最終的な単語境界を決定することができないため、 予備 選択を行う段階では、 その予備選択の始点となる単語境界を一意に決定すること は困難である。
そこで、 単語境界の候補を、 音声区間の特徴量系列を用いた単語スコアの計算 が終了するまで保持しておく方法がある。
この方法では、 例えば、 音声区間の開始時刻 0を始点として、 単語 「今日」 の 単語スコアを計算した場合に、 時刻 t„ t 1+1が、 単語 「今日」 の発話の 終点の候補として求まったとすると、 この 3通りの時刻 t い t„ t l+1が保持 され、 それぞれを始点として、 次の単語の予備選択が行われる。
いま、 この予備選択によって、 時刻 t Mを始点とした場合には、 「は」 と
「いい」 の 2単語が、 時刻 t ,を始点とした場合には、 「は」 の 1単語が、 時刻 t |+1を始点とした場合には、 「は」 と 「いい」 の 2単語が、 それぞれ得られた とし、 さらに、 これらの各単語を対象として単語スコアの計算を行うことにより, 図 2 (B) 乃至図 2 (G) にそれぞれ示すような結果が得られたとする。
即ち、 図 2 (B) は、 時刻 t Hを始点として、 単語 「は」 の単語スコアの計 算を行い、 その終点の候補として、 時刻 t2が得られた状態を示しており、 図 2 (C) は、 時刻 を始点として、 単語 「いい」 の単語スコアの計算を行い、 その終点の候補として、 時刻 t2+lが得られた状態を示している。 また、 図 2
(D) は、 時刻 を始点として、 単語 「は」 の単語スコアの計算を行い、 その 終点の候補として、 時刻 t2+1が得られた状態を示しており、 図 2 (E) は、 時 刻 を始点として、 単語 「は」 の単語スコアの計算を行い、 その終点の候補と して、 時刻 12が得られた状態を示している。 さらに、 図 2 (F) は、 時刻 t l+l を始点として、 単語 「は」 の単語スコアの計算を行い、 その終点の候補として、 時刻 が得られた状態を示しており、 図 2 (G) は、 時刻 t1+1を始点として、 単語 「いい」 の単語スコアの計算を行い、 その終点の候補として、 時刻 t2+2が 得られた状態を示している。 なお、 図 2においては、 t H< t ,< t |+|< 2< t 2 +l< t 2+2となっている。
図 2 (B) 乃至図 2 (G) のうち、 図 2 (B) 、 図 2 (E) 、 および図 2 (F) に示したものについては、 いずれも、 音声認識結果の候補としての単語列 が、 「今日」 、 「は」 で同一あり、 さらに、 その単語列の最後 「は」 の終点も、 時刻 t2で同一であるから、 その中から最も適切なものを、 例えば、 時刻 まで の単語スコアの累積値等に基づいて選び、 残りを破棄することが可能である。 しかしながら、 いまの時点では、 図 2 (B) 、 図 2 (E) 、 または図 2 (F) のうちから選んだものに、 図 2 (C) 、 図 2 (D) 、 図 2 (G) に示したものを 加えた中から、 正しいものを確定することはできないから、 これらの 4通りの場 合を保持しておく必要がある。 そして、 この 4通りの場合それぞれについて、 再 び、 予備選択を行っていくことになる。
従って、 この方法では、 音声区間の特徴量系列を用いた単語スコアの計算が終 了するまで、 多くの単語境界の候補を保持しながら、 単語スコアの計算を行って いく必要があり、 計算量およびメモリ容量の効率化の観点からは好ましくない。 なお、 この場合、 単語境界の候補として、 真に正しい単語境界を保持していれ ば、 原理的には、 上述の動的計画法を用いた場合と同様の正しい単語境界を、 最 終的に得ることができるが、 その反面、 単語境界の候補として、 真に正しい単語 境界を保持し損ねると、 その単語境界を始点または終点とする単語を誤認識し、 さらには、 それに起因して、 その後に続く単語も誤認識することがある。
一方、 予備選択は、 一般に、 それほど精度の高くない、 簡易的な音響モデルや 文法規則を用いて行われる。 即ち、 予備選択は、 一般に、 単語辞書の単語すベて を対象として行われるため、 精度の高い音響モデルや文法規則を用いて予備選択 を行うと、 リアルタイム性を維持するには、 計算量やメモリ容量といったリソ一 スが多く必要となる。 そこで、 予備選択は、 簡易的な音響モデルや文法規則を用 いることで、 大語彙を対象とした場合でも、 比較的少ないリソースで、 高速に行 うことが可能となっている。
しかしながら、 予備選択は、 ある単語について、 特徴量の系列 (特徴量系列) を用いてのマッチング処理が終了し、 とりあえず確からしい終点が求められた後 に、 その終点を始点として、 その始点に対応する時刻以後の特徴量系列を用いて 行われる。 即ち、 予備選択は、 連続発話された音声に含まれる単語どうしの境界 (単語境界) が、 最終的に確定していない時点で行われる。
従って、 予備選択に用いられる特徴量系列の始点ゃ終点が、 対応する単語の始 点や終点からずれている場合には、 その単語の直前の単語や直後の単語の音韻の 特徴量を含む特徴量系列や、 対応する単語の最初や最後の部分の特徴量が欠けた 特徴量系列、 即ち、 いわば音響的に安定していない特徴量系列を用いて、 予備選 択が行われることになる。
このため、 簡易的な音響モデルを用いる予備選択では、 発話中に含まれる単語 が選択されないことが起こり得る。 そして、 予備選択において、 正しい単語が選 択されない場合には、 その単語についてマッチング処理が行われないから、 音声 認識結果は誤つたものとなる。 そこで、 予備選択において、 単語を選択するときの音響的または言語的な判断 基準を緩くして、 選択される単語の数を多くする方法や、 精度の高い音響モデル および文法規則を用いる方法がある。
しかしながら、 予備選択において、 単語を選択するときの音響的または言語的 な判断基準を緩くすると、 音声認識結果としてそれほど可能性の高くない単語の 多くも、 マッチング処理の対象となり、 予備選択に比較して 1単語あたりの負荷 が重いマッチング処理に要する計算量やメモリ容量といったリソースが大きく増 大する。
また、 予備選択において、 精度の高い音響モデルおよび文法規則を用いる場合 には、 予備選択に要するリソースが大きく増大する。 発明の開示
本発明は、 このような状況に鑑みてなされたものであり、 高い認識性能を維持 しながら、 音声認識処理を、 効率的に行うことができるようにするものである。 本発明の第 1の音声認識装置は、 音声認識の対象となっている単語について、 スコアを計算し、 そのスコアに基づいて、 音声認識結果の候補となる単語列を構 成する構成手段と、 音声認識結果の候補となる単語列の単語どうしの接続関係を 記憶する記憶手段と、 記憶手段に記憶された接続関係を修正する修正手段と、 修 正後の接続関係に基づいて、 音声認識結果となる単語列を確定する確定手段と、 記憶手段に記憶される接続関係によって表される単語の境界位置を制限する単語 境界制限手段とを備えることを特徴とする。
本発明の第 1の音声認識方法は、 音声認識の対象となっている単語について、 スコアを計算し、 そのスコアに基づいて、 音声認識結果の候補となる単語列を構 成する構成ステップと、 音声認識結果の候補となる単語列の単語どうしの接続関 係を記憶する記憶ステップと、 記憶ステップにおいて記憶された接続関係を修正 する修正ステップと、 修正後の接続関係に基づいて、 音声認識結果となる単語列 を確定する確定ステップと、 記憶ステップにおいて記憶される接続関係によって 表される単語の境界位置を制限する単語境界制限ステップとを備えることを特徴 とする。
本発明の第 1の記録媒体は、 音声認識の対象となっている単語について、 スコ ァを計算し、 そのスコアに基づいて、 音声認識結果の候補となる単語列を構成す る構成ステップと、 音声認識結果の候補となる単語列の単語どうしの接続関係を 記憶する記憶ステップと、 記憶ステップにおいて記憶された接続関係を修正する 修正ステップと、 修正後の接続関係に基づいて、 音声認識結果となる単語列を確 定する確定ステップと、 記憶ステップにおいて記憶される接続関係によって表さ れる単語の境界位置を制限する単語境界制限ステップとを備えるプログラムが記 録されていることを特徵とする。
本発明の第 2の音声認識装置は、 音声認識の対象となっている単語群から、 音 声認識結果の候補となる単語列の、 既に求まっている単語に続く 1以上の単語を 選択する選択手段と、 選択手段において選択された単語について、 スコアを計算 し、 そのスコアに基づいて、 音声認識結果の候補となる単語列を構成する構成手 段と、 音声認識結果の候補となる単語列の中から、 音声認識結果となる単語列を 確定する確定手段と、 選択手段において選択される単語の開始位置を制限する開 始位置制限手段とを備えることを特徴とする。
本発明の第 2の音声認識方法は、 音声認識の対象となっている単語群から、 音 声認識結果の候補となる単語列の、 既に求まっている単語に続く 1以上の単語を 選択する選択ステップと、 選択ステップにおいて選択された単語について、 スコ ァを計算し、 そのスコアに基づいて、 音声認識結果の候補となる単語列を構成す る構成ステップと、 音声認識結果の候補となる単語列の中から、 音声認識結果と なる単語列を確定する確定ステップと、 選択ステップにおいて選択される単語の 開始位置を制限する開始位置制限ステップとを備えることを特徴とする。
本発明の第 2の記録媒体は、 音声認識の対象となっている単語群から、 音声認 識結果の候補となる単語列の、 既に求まっている単語に続く 1以上の単語を選択 する選択ステップと、 選択ステップにおいて選択された単語について、 スコアを 計算し、 そのスコアに基づいて、 音声認識結果の候補となる単語列を構成する構 成ステップと、 音声認識結果の候補となる単語列の中から、 音声認識結果となる 単語列を確定する確定ステップと、 選択ステップにおいて選択される単語の開始 位置を制限する開始位置制限ステップとを備えるプログラムが記録されているこ とを特徴とする。
本発明の第 1の音声認識装置および音声認識方法、 並びに記録媒体においては, 音声認識の対象となっている単語について、 スコアが計算され、 そのスコアに基 づいて、 音声認識結果の候補となる単語列が構成される。 さらに、 音声認識結果 の候補となる単語列の単語どうしの接続関係が修正され、 その修正後の接続関係 に基づいて、 音声認識結果となる単語列が確定される。 この場合において、 音声 認識結果の候補となる単語列の単語どうしの接続関係によって表される単語の境 界位置が制限される。
本発明の第 2の音声認識装置および音声認識方法、 並びに記録媒体においては、 音声認識の対象となっている単語群から、 音声認識結果の候補となる単語列の、 既に求まっている単語に続く 1以上の単語が選択され、 その選択された単語につ いて、 スコアが計算される。 さらに、 そのスコアに基づいて、 音声認識結果の候 補となる単語列が構成され、 その中から、 音声認識結果となる単語列が確定され る。 この場合において、 音声認識の対象となっている単語群から選択される単語 の開始位置が制限される。 図面の簡単な説明
図 1は、 従来の音声認識装置の一例の構成を示すプロック図である。
図 2は、 単語どうしの境界の候補を保持する必要性を説明する図である。
図 3は、 本発明が適用される音声認識装置の構成例を示すブロック図である。 図 4は、 単語接続情報を説明するための図である。
図 5は、 図 3の音声認識装置の処理を説明するためのフローチャートである。 図 6は、 再評価部 1 5の処理を説明するための図である。 図 7は、 本発明を適用した音声認識装置の第 1実施の形態の構成例を示すプロ ック図である。
図 8は、 単語接続関係管理部 2 1の処理を説明するための図である。
図 9は、 シミュレーション結果を示す図である。
図 1 0は、 単語スコアを補正することによる効果を説明するための図である。 図 1 1は、 図 7の音声認識装置による音声認識処理を説明するフローチャート である。
図 1 2は、 本発明を適用した音声認識装置の第 2実施の形態の構成例を示すブ ロック図である。
図 1 3は、 単語接続関係管理部 2 2の処理を説明するための図である。
図 1 4は、 図 1 2の音声認識装置による音声認識処理を説明するフローチヤ一 卜である。
図 1 5は、 単語予備選択結果としての単語の補完方法を説明するための図であ る。
図 1 6は、 本発明を適用した音声認識装置の第 3実施の形態の構成例を示すブ 口ック図である。
図 1 7は、 本発明を適用した音声認識装置の第 4実施の形態の構成例を示すブ 口ック図である。
図 1 8は、 単語接続関係管理部 2 1と 2 2の処理を説明するための図である。 図 1 9は、 図 1 7の音声認識装置による音声認識処理を説明するフローチヤ一 卜である。
図 2 0は、 本発明を適用したコンピュータの一実施の形態の構成例を示すプロ ック図である。 発明を実施するための最良の形態
図 3は、 本発明が適用される音声認識装置の構成例を示している。 なお、 図中、 図 1における場合と対応する部分については、 同一の符号を付してあり、 以下で は、 その説明は、 適宜省略する。
特徴量抽出部 3が出力する、 ユーザが発した音声の特徴量の系列は、 フレーム 単位で、 制御部 1 1に供給されるようになっており、 制御部 1 1は、 特徴量抽出 部 3からの特徴量を、 特徴量記憶部 1 2に供給する。
また、 制御部 1 1は、 単語接続情報記憶部 1 6に記憶された単語接続情報を参 照し、 マッチング部 1 4や再評価部 1 5を制御する。 さらに、 制御部 1 1は、 マ ツチング部 1 4が、 前述した図 1のマッチング部 4と同様のマッチング処理を行 うことにより得られるマッチング処理結果としての音響スコアや言語スコア等に 基づいて、 単語接続情報を生成し、 その単語接続情報によって、 単語接続情報記 憶部 1 6の記憶内容を更新する。 また、 制御部 1 1は、 再評価部 1 5の出力に基 づいて、 単語接続情報記憶部 1 6の記憶内容を修正する。 さらに、 制御部 1 1は, 単語接続情報記憶部 1 6に記憶された単語接続情報に基づいて、 最終的な音声認 識結果を確定して出力する。
特徴量記憶部 1 2は、 制御部 1 1から供給される特徴量の系列を、 例えば、 ュ 一ザの音声の認識結果が得られるまで記憶する。 なお、 制御部 1 1は、 音声区間 の開始時刻を基準 (例えば 0 ) とする、 特徴抽出部 3が出力する特徴量が得られ た時刻 (以下、 適宜、 抽出時刻という) を、 その特徴量とともに、 特徴量記憶部 1 2に供給するようになっており、 特徴量記憶部 1 2は、 特徴量を、 その抽出時 刻とともに記憶する。 特徴量記憶部 1 2に記憶された特徴量およびその抽出時刻 は、 単語予備選択部 1 3、 マッチング部 1 4、 および再評価部 1 5において、 必 要に応じて参照することができるようになつている。
単語予備選択部 1 3は、 マッチング部 1 4からの要求に応じ、 単語接続情報記 憶部 1 6、 音響モデルデータベース 1 7 A、 辞書データベース 1 8 A、 および文 法データベース 1 9 Aを必要に応じて参照しながら、 マッチング部 1 4でマッチ ング処理の対象とする 1以上の単語を選択する単語予備選択処理を、 特徴量記憶 部 1 2に記憶された特徴量を用いて行う。
マッチング部 1 4は、 制御部 1 1からの制御に基づき、 単語接続情報記憶部 1 6、 音響モデルデータベース 1 7 B、 辞書データベース 1 8 B、 および文法デー 夕ベース 1 9 Bを必要に応じて参照しながら、 単語予備選択部 1 3からの単語予 備選択処理の結果得られる単語を対象としたマッチング処理を、 特徴量記憶部 1 2に記憶された特徴量を用いて行い、 そのマッチング処理の結果を、 制御部 1 1 に供給する。
再評価部 1 5は、 制御部 1 1からの制御に基づき、 音響モデルデータベース 1 7 C、 辞書データベース 1 8 C、 および文法データベース 1 9 Cを必要に応じて 参照しながら、 単語接続情報記憶部 1 6に記憶された単語接続情報の再評価を、 特徴量記憶部 1 2に記憶された特徴量を用いて行い、 その再評価結果を、 制御部 1 1に供給する。
単語接続情報記憶部 1 6は、 制御部 1 1から供給される単語接続情報を、 ユー ザの音声の認識結果が得られるまで記憶する。
ここで、 単語接続情報は、 最終的な音声認識結果の候補となる単語列を構成す る単語どうしの接続 (連鎖または連接) 関係を表すもので、 各単語の音響スコア および言語スコア、 並びに各単語に対応する発話の開始時刻および終了時刻も含 んでいる。
即ち、 図 4は、 単語接続情報記憶部 1 6に記憶される単語接続情報を、 グラフ 構造を用いて示している。
図 4の実施の形態において、 単語接続情報としてのグラフ構造は、 単語を表す アーク (図 4において、 〇印どうしを結ぶ線分で示す部分) と、 単語どうしの境 界を表すノード (図 4において〇印で示す部分) とから構成されている。
ノードは、 時刻情報を有しており、 この時刻情報は、 そのノードに対応する特 徴量の抽出時刻を表す。 上述したように、 抽出時刻は、 音声区間の開始時刻を 0 とする、 特徴抽出部 3が出力する特徴量が得られた時刻であるから、 図 4におい て、 音声区間の開始、 即ち、 最初の単語の先頭に対応するノード Node,が有する 時刻情報は 0となる。 ノードは、 アークの始端および終端となるが、 始端のノー ド (始端ノード) 、 または終端のノード (終端ノード) が有する時刻情報は、 そ れぞれ、 そのノードに対応する単語の発話の開始時刻、 または終了時刻、 つまり 単語の境界を表す。
なお、 図 4では、 左から右方向が、 時間の経過を表しており、 従って、 あるァ —クの左右にあるノードのうち、 左側のノードが始端ノードとなり、 右側のノー ドが終端ノードとなる。
アークは、 そのアークに対応する単語の音響スコアおよび言語スコアを有して おり、 このアークが、 終端ノードとなっているノードを始端ノードとして、 順次 接続されていくことにより、 音声認識結果の候補となる単語の系列が構成されて いく。
即ち、 制御部 1 1においては、 まず最初に、 音声区間の開始を表すノード Nod e,に対して、 音声認識結果として確からしい単語に対応するアークが接続される c 図 4の実施の形態では、 「今日」 に対応するアーク Arc,、 「いい」 に対応する アーク Arc6、 および 「天気」 に対応する Arc nが接続されている。 なお、 音声認 識結果として確からしい単語かどうかは、 マッチング部 1 4において求められる 音響スコアおよび言語スコアに基づいて決定される。
そして、 以下、 同様にして、 「今日」 に対応するアーク Ar c ,の終端である終 端ノード Node2、 「いい」 に対応するアーク Arc6の終端である終端ノード Node7
「天気」 に対応する Arc nの終端である終端ノード Node12それぞれに対して、 同 様に、 確からしい単語に対応するアークが接続されていく。
以上のようにしてアークが接続されていくことで、 音声区間の開始を始点とし て、 左から右方向に、 アークとノードで構成される 1以上のパスが構成されて行 くが、 例えば、 そのパスのすべてが、 音声区間の最後 (図 4の実施の形態では、 時刻 T ) に到達すると、 制御部 1 1において、 音声区間の開始から最後までに形 成された各パスについて、 そのパスを構成するアークが有している音響スコアお よび言語スコアが累積され、 最終スコアが求められる。 そして、 例えば、 その最 終スコアが最も高いパスを構成するアークに対応する単語列が、 音声認識結果と して確定されて出力される。 具体的には、 例えば、 図 4において、 ノード Node iから、 「今日」 に対応する アーク Arc,、 ノード Node2、 「は」 に対応するアーク Arc2、 ノード Node3、 「い い」 に対応するアーク Arc3、 ノード Node4、 「天気」 に対応するアーク Arc4、 ノ ード Node5、 「ですね」 に対応するアーク Arc5、 およびノード Node6で構成され るパスについて、 最も高い最終スコアが得られた場合には、 単語列 「今日」 、 「は」 、 「いい」 、 「天気」 、 「ですね」 が、 音声認識結果として出力されるこ とになる。
なお、 上述の場合には、 音声区間内にあるノードについて、 必ずアークを接続 して、 音声区間の開始から最後にまで延びるパスを構成するようにしたが、 この ようなパスを構成する過程において、 それまでに構成されたパスについてのスコ ァから、 音声認識結果として不適当であることが明らかであるパスに関しては、 その時点で、 パスの構成を打ち切る (その後に、 アークを接続しない) ようにす ることが可能である。
また、 上述のようなパスの構成ルールに従えば、 1つのアークの終端が、 次に 接続される 1以上のアークの始端ノードなり、 基本的には、 枝葉が拡がるように、 パスが構成されて行くが、 例外的に、 1つのアークの終端が、 他のアークの終端 に一致する場合、 つまり、 あるアークの終端ノードと、 他のアークの終端ノード とが同一のノードに共通化される場合がある。
即ち、 文法規則としてバイグラムを用いた場合には、 別のノードから延びる 2 つのアークが、 同一の単語に対応するものであり、 さらに、 その単語の発話の終 了時刻も同一であるときには、 その 2つのアークの終端は一致する。
図 4において、 ノード Node7を始端として延びるアーク Arc 7、 およびノード N odel 3を始端として延びるアーク Arc13は、 いずれも 「天気」 に対応するものであ り、 その発話の終了時刻も同一であるため、 その終端ノードは、 同一のノード N ode8に共通化されている。
なお、 ノードの共通化は行わないようにすることも可能であるが、 メモリ容量 の効率化の観点からは、 行うのが好ましい。 また、 図 4では、 文法規則としてバイグラムを用いているが、 その他、 例えば、 トライグラム等を用いる場合も、 ノードの共通化は可能である。
さらに、 単語接続情報記憶部 1 6に記憶されている単語接続情報は、 単語予備 選択部 1 3、 マッチング部 1 4、 および再評価部 1 5において、 必要に応じて参 照することができるようになつている。
図 3に戻り、 音響モデルデ一夕ベース 1 7 A, 1 7 B、 および 1 7 Cは、 基本 的には、 図 1の音響モデルデータベース 5において説明したような音響モデルを 記憶している。
但し、 音響モデルデータベース 1 7 Bは、 音響モデルデータベース 1 7 Aより も精度の高い処理が可能な高精度の音響モデルを記憶しており、 音響モデルデー 夕ベース 1 7 Cは、 音響モデルデータベース 1 7 Bよりも精度の高い処理が可能 なより高精度の音響モデルを記憶している。 即ち、 音響モデルデータベース 1 7 Aにおいて、 各音素や音節について、 例えば、 前後のコンテキストに依存しない 1パターンの音響モデルだけが記憶されているとすると、 音響モデルデータべ一 ス 1 7 Bには、 各音素や音節について、 例えば、 前後のコンテキストに依存しな い音響モデルの他、 単語間にまたがるコンテキストに依存する音響モデル、 つま り、 クロスワードモデルも記憶されている。 そして、 音響モデルデータベース 1 7 Cには、 各音素や音節について、 例えば、 前後のコンテキストに依存しない音 響モデルおよびクロスヮードモデルの他、 単語内のコンテキストに依存する音響 モデルも記憶されている。
辞書デ一夕ベース 1 8 A, 1 8 B、 および 1 8 Cは、 基本的には、 図 1の辞書 デ—夕ベース 6において説明したような単語辞書を記憶している。
即ち、 辞書データベース 1 8 A乃至 1 8 Cの単語辞書には、 同一セットの単語 が登録されている。 但し、 辞書データベース 1 8 Bの単語辞書は、 辞書データべ ース 1 8 Aの単語辞書よりも精度の高い処理が可能な高精度の音韻情報を記憶し ており、 辞書データベース 1 8 Cの単語辞書は、 辞書データベース 1 8 Bの単語 辞書よりもさらに精度の高い処理が可能な高精度の音韻情報を記憶している。 即 ち、 辞書データベース 1 8 Aの単語辞書には、 例えば、 各単語に対して、 1通り の音韻情報 (読み) だけ登録されているとすると、 辞書データベース 1 8 Bの単 語辞書には、 例えば、 各単語に対して、 複数通りの音韻情報が登録されている。 そして、 辞書デ一夕ベース 1 8 Cの単語辞書には、 例えば、 各単語に対して、 さ らに多くの通りの音韻情報が登録されている。
具体的には、 例えば、 単語 「おはよう」 に対して、 辞書データベース 1 8 Aの 単語辞書には、 1通りの音韻情報 「おはよう」 だけが、 辞書データベース 1 8 B の単語辞書には、 「おはよう」 の他、 「おはよ一」 や 「おはよ」 が、 辞書デ一夕 ベース 1 8 Cの単語辞書には、 「おはよう」 、 「おはよ一」 、 および 「おはよ」 の他、 「はよう」 や 「はよ一」 が、 それぞれ音韻情報として登録されている。 文法データベース 1 9 A , 1 9 B、 および 1 9 Cは、 基本的には、 図 1の文法 データベース 7において説明したような文法規則を記憶している。
但し、 文法データベース 1 9 Bは、 文法データベース 1 9 Aよりも精度の高い 処理が可能な高精度の文法規則を記憶しており、 文法データベース 1 9 Cは、 文 法データベース 1 9 Bよりも精度の高い処理が可能なより高精度の文法規則を記 憶している。 即ち、 文法データベース 1 9 Aが、 例えば、 ュニグラム (単語の生 起確率) に基づく文法規則を記憶しているとすると、 文法データベース 1 9 Bは、 例えば、 バイグラム (直前の単語との関係を考慮した単語の生起確率) を記憶し ている。 そして、 文法データベース 1 9 Cは、 例えば、 トライグラム (直前の単 語およびそのさらに 1つ前の単語との関係を考慮した単語の生起確率) や文脈自 由文法等に基づく文法規則を記憶している。
以上のように、 音響モデルデ一夕ベース 1 7 Aには、 各音素や音節について、 1パターンの音響モデルが、 音響モデルデータベース 1 7 Bには、 各音素や音節 について、 複数パターンの音響モデルが、 音響モデルデータベース 1 7 Cには、 各音素や音節について、 さらに多くのパターンの音響モデルが、 それぞれ記憶さ れている。 また、 辞書データベース 1 8 Aには、 各単語について、 1通りの音韻 情報が、 辞書データベース 1 8 Bには、 各単語について、 複数通りの音韻情報が、 辞書データベース 1 8 Cには、 各単語について、 さらに多くの通りの音韻情報が、 それぞれ記憶されている。 そして、 文法データベース 1 9 Aには、 簡易な文法規 則が、 文法データベース 1 9 Bには、 精度の高い文法規則が、 文法データベース 1 9 Cには、 さらに精度の高い文法規則が、 それぞれ記憶されている。
これにより、 音響モデルデ一夕べ一ス 1 7 A、 辞書データベース 1 8 A、 およ び文法データベース 1 9 Aを参照する単語予備選択部 1 3では、 それほど精度は 高くないが、 多くの単語を対象として、 迅速に、 音響スコアおよび言語スコアを 求めることができるようになつている。 また、 音響モデルデータベース 1 7 B、 辞書データベース 1 8 B、 および文法データベース 1 9 Bを参照するマッチング 部 1 4では、 ある程度の数の単語を対象として、 迅速に、 精度の高い音響スコア および言語スコアを求めることができるようになつている。 そして、 音響モデル データベース 1 7 C、 辞書データベース 1 8 C、 および文法データベース 1 9 C を参照する再評価部 1 5では、 少ない数の単語を対象として、 迅速に、 より精度 の高い音響スコアおよび言語スコアを求めることができるようになつている。 なお、 ここでは、 音響モデルデータベース 1 7 A乃至 1 7 Cそれぞれに記憶さ せる音響モデルの精度について優劣を設けるようにしたが、 音響モデルデータべ ース 1 7 A乃至 1 7 Cには、 いずれにも、 同一の音響モデルを記憶させることが でき、 この場合、 音響モデルデータベース 1 7 A乃至 1 7 Cは、 1つの音響モデ ルデ一夕ベースに共通化することができる。 同様に、 辞書データベース 1 8 A乃 至 1 8 Cの単語辞書それぞれの記憶内容や、 文法データべ一ス 1 9 A乃至 1 9 C それぞれの文法規則も、 同一にすることができる。
次に、 図 5のフローチャートを参照して、 図 3の音声認識装置による音声認識 処理について説明する。
ユーザが発話を行うと、 その発話としての音声は、 マイク 1および A D変換部 2を介することにより、 ディジタルの音声データとされ、 特徴抽出部 3に供給さ れる。 特徴抽出部 3は、 そこに供給される音声データから、 音声の特徴量を、 フ レームごとに順次抽出し、 制御部 1 1に供給する。 制御部 1 1は、 何らかの手法で音声区間を認識するようになっており、 音声区 間においては、 特徴抽出部 3から供給される特徴量の系列を、 各特徴量の抽出時 刻と対応付けて、 特徴量記憶部 1 2に供給して記憶させる。
さらに、 制御部 1 1は、 音声区間の開始後、 ステップ S 1において、 音声区間 の開始を表すノード (以下、 適宜、 初期ノードという) を生成し、 単語接続情報 記憶部 1 6に供給して記憶させる。 即ち、 制御部 1 1は、 ステップ S 1において, 図 4におけるノード Node,を、 単語接続情報記憶部 1 6に記憶させる。
そして、 ステップ S 2に進み、 制御部 1 1は、 単語接続情報記憶部 1 6の単語 接続情報を参照することで、 途中ノードが存在するかどうかを判定する。
即ち、 上述したように、 図 4に示した単語接続情報においては、 終端ノードに、 アークが接続されていくことにより、 音声区間の開始から最後にまで延びるパス が形成されて行くが、 ステップ S 2では、 終端ノードのうち、 まだアークが接続 されておらず、 かつ、 音声区間の最後にまで到達していないものが、 途中ノード (例えば、 図 4におけるノード Node8や、 Node1G, Node,,) として検索され、 その ような途中ノードが存在するかどうかが判定される。
なお、 上述したように、 音声区間は何らかの手法で認識され、 さらに、 終端ノ ードに対応する時刻は、 その終端ノードが有する時刻情報を参照することで認識 することができるから、 アークが接続されていない終端ノードが、 音声区間の最 後に到達していない途中ノードであるかどうかは、 音声区間の最後の時刻と、 終 端ノードが有する時刻情報とを比較することで判定することができる。
ステップ S 2において、 途中ノードが存在すると判定された場合、 ステップ S 3に進み、 制御部 1 1は、 情報接続情報の中に存在する途中ノードのうちの 1つ を、 それに接続するアークとしての単語を決定するノード (以下、 適宜、 注目ノ —ドという) として選択する。
即ち、 制御部 1 1は、 情報接続情報の中に 1つの途中ノードしか存在しない場 合には、 その途中ノードを、 注目ノードとして選択する。 また、 制御部 1 1は、 情報接続情報の中に複数の途中ノードが存在する場合には、 その複数の途中ノー ドのうちの 1つを注目ノードとして選択する。 具体的には、 制御部 1 1は、 例え ば、 複数の途中ノードそれぞれが有する時刻情報を参照し、 その時刻情報が表す 時刻が最も古いもの (音声区間の開始側のもの) 、 または最も新しいもの (音声 区間の終わり側のもの) を、 注目ノードとして選択する。 あるいは、 また、 制御 部 1 1は、 例えば、 初期ノードから、 複数の途中ノードそれぞれに至るまでのパ スを構成するアークが有する音響スコアおよび言語スコアを累積し、 その累積値 (以下、 適宜、 部分累積スコアという) が最も大きくなるパス、 または小さくな るパスの終端になっている途中ノードを、 注目ノードとして選択する。
その後、 制御部 1 1は、 注目ノードが有する時刻情報を開始時刻としてマッチ ング処理を行う旨の指令 (以下、 適宜、 マッチング処理指令という) を、 マッチ ング部 1 4および再評価部 1 5に出力する。
再評価部 1 5は、 制御部 1 1からマッチング処理指令を受信すると、 ステップ S 4に進み、 単語接続情報記憶部 1 6を参照することにより、 初期ノードから注 目ノードに至るまでのパス (以下、 適宜、 部分パスという) を構成するアークに よって表される単語列 (以下、 適宜、 部分単語列という) を認識し、 その部分単 語列の再評価を行う。 即ち、 部分単語列は、 後述するようにして、 単語予備選択 部 1 3が予備選択した単語を対象に、 マッチング部 1 4がマッチング処理を行う ことにより得られた音声認識結果の候補とする単語列の途中結果であるが、 再評 価部 1 5では、 その途中結果が、 再度、 評価される。
具体的には、 再評価部 1 5は、 部分単語列について、 言語スコアおよび音響ス コアを再計算するため、 部分単語列に対応する特徴量の系列を、 特徴量記憶部 1 2から読み出す。 即ち、 再評価部 1 5は、 例えば、 部分パスの先頭のノードであ る初期ノードが有する時刻情報が表す時刻から、 注目ノードが有する時刻情報が 表す時刻までに対応付けられている特徴量の系列 (特徴量系列) を、 特徴量記憶 部 1 2から読み出す。 さらに、 再評価部 1 5は、 音響モデルデータベース 1 7 C、 辞書デ一夕ベース 1 8 C、 および文法デ一夕ベース 1 9 Cを参照し、 特徴量記憶 部 1 2から読み出した特徴量系列を用いて、 部分単語列について、 言語スコアお よび音響スコアを再計算する。 なお、 この再計算は、 部分単語列を構成する各単 語の単語境界を固定せずに行われる。 従って、 再評価部 1 5では、 部分単語列の 言語スコアおよび音響スコアを再計算することにより、 部分単語列について、 そ れを構成する各単語の単語境界の決定が、 動的計画法に基づいて行われることに なる。
再評価部 1 5は、 以上のようにして、 部分単語列の各単語の言語スコアおよび 音響スコア、 並びに単語境界を新たに得ると、 その新たな言語スコアおよび音響 スコアによって、 単語接続情報記憶部 1 6の部分単語列に対応する部分パスを構 成するアークが有する言語スコアおよび音響スコアを修正するとともに、 新たな 単語境界によって、 単語接続情報記憶部 1 6の部分単語列に対応する部分パスを 構成するノードが有する時刻情報を修正する。 なお、 本実施の形態では、 再評価 部 1 5による単語接続情報の修正は、 制御部 1 1を介して行われるようになって いる。
即ち、 例えば、 図 6に示すノード Node5が注目ノードとされた場合において、 初期ノード Node,から注目ノード Node5に至る部分パスのうちの、 例えば、 ノー ド Node3、 単語 「いい」 に対応するアーク Arc3、 ノード Node4、 単語 「天気」 に 対応する Arc4、 およびノード Node5の部分で表される単語列 「いい」 、 「天気」 に注目すると、 再評価部 1 5は、 ノード Node3に対応する時刻からノード Node5 に対応する時刻までの特徴量系列を用い、 音響モデルデータベース 1 7 Cおよび 辞書データベース 1 8 Cを参照することで、 単語 「いい」 、 「天気」 それぞれの 単語モデルを構成し、 音響スコアを計算する。 さらに、 再評価部 1 5は、 文法デ 一夕ベース 1 9 Cを参照することで、 単語 「いい」 、 「天気」 それぞれの言語ス コアを計算する。 具体的には、 例えば、 文法データべ一ス 1 9 Cに、 トライダラ ムに基づく文法規則が記憶されている場合には、 再評価部 1 5は、 単語 「いい」 については、 .その直前の単語 「は」 と、 さらにその前の単語 「今日」 を用い、 単 語が、 「今日」 、 「は」 、 「いい」 と連鎖する確率を求め、 その確率に基づいて 言語スコアを計算する。 また、 再評価部 1 5は、 単語 「天気」 については、 その 直前の単語 「いい」 と、 さらにその前の単語 「は」 を用い、 単語が、 「は」 、
「いい」 、 「天気」 と連鎖する確率を求め、 その確率に基づいて言語スコアを計 算する。
再評価部 1 5は、 以上のようにして求められる音響スコアおよび言語スコアを 累積し、 その累積値が最も大きくなるように、 単語 「いい」 と 「天気」 の単語境 界を決定する。 そして、 再評価部 1 5は、 そのようにして求まった音響スコアお よび言語スコアによって、 単語 「いい」 に対応するアーク Arc3と、 単語 「天 気」 に対応する Arc4がそれぞれ有する音響スコアおよび言語スコアを修正する とともに、 決定した単語境界によって、 単語 「いい」 と 「天気」 の単語境界に対 応するノード Node4が有する時刻情報を修正する。
従って、 再評価部 1 5では、 部分単語列の各単語どうしの単語境界が、 動的計 画法に基づいて決定され、 単語接続情報 1 6に記憶された単語接続情報が、 逐次 修正されていく。 そして、 この修正された単語接続情報を参照して、 単語予備選 択部 1 3およびマッチング部 1 4で処理が行われるため、 それぞれにおける処理 の精度および信頼性を向上させることができる。
さらに、 再評価部 1 5において単語接続情報の単語境界が修正されるため、 単 語接続情報として記憶しておく単語境界の候補の数を大幅に削減することができ、 メモリ容量の効率化を図ることができる。
即ち、 従来においては、 例えば、 前述の図 2で説明したように、 単語 「今日」 と 「は」 との単語境界の候補として、 時刻 t卜い t„ t I の 3つを保持してお く必要があり、 また、 正しい単語境界である時刻 を保持し損ねた場合には、 その後のマッチング処理に悪影響を与える。 これに対して、 再評価部 1 5におい て単語境界を逐次修正する場合には、 例えば、 誤った単語境界である時刻 の 1つだけしか保持しなかったとしても、 再評価部 1 5において、 その誤った単 語境界である時刻 t が、 正しい単語境界である時刻 t ,に修正されるから、 そ の後のマッチング処理に悪影響を与えることはない。
また、 再評価部 1 5では、 部分単語列を構成する単語については、 最初と最後 の単語を除き、 その前と後に接続する単語それぞれを考慮したクロスヮードモデ ルを用いて音響スコアを計算し、 さらに、 言語スコアの計算も、 その前と後に接 続する単語それぞれを考慮して行うことができ、 従って、 高精度の処理を行うこ とができる。
再評価部 1 5は、 以上のようにして、 単語接続情報記憶部 1 6の単語接続情報 の修正を終了すると、 その旨を、 制御部 1 1を介して、 マッチング部 1 4に供給 する。
マッチング部 1 4は、 上述したように、 制御部 1 1からマッチング処理指令を 受信した後、 再評価部 1 5から、 制御部 1 1を介して、 単語接続情報の修正が終 了した旨を受信すると、 注目ノード、 およびそれが有する時刻情報を、 単語予備 選択部 1 3に供給し、 単語予備選択処理を要求して、 ステップ S 5に進む。
ステップ S 5では、 単語予備選択部 1 3は、 マッチング部 1 4から、 単語予備 選択処理の要求を受信すると、 注目ノードに接続されるアークとなる単語の候補 を選択する単語予備選択処理を、 辞書データベース 1 8 Aの単語辞書に登録され た単語を対象として行う。
即ち、 単語予備選択部 1 3は、 言語スコアおよび音響スコアを計算するのに用 いる特徴量の系列の開始時刻を、 注目ノードが有する時刻情報から認識し、 その 開始時刻以降の、 必要な特徴量の系列を特徴量記憶部 1 2から読み出す。 さらに、 単語予備選択部 1 3は、 辞書データベース 1 8 Aの単語辞書に登録された各単語 の単語モデルを、 音響モデルデータベース 1 7 Aの音響モデルを接続することで 構成し、 その単語モデルに基づき、 特徴量記憶部 1 2から読み出した特徴量の系 列を用いて、 音響スコアを計算する。
また、 単語予備選択部 1 3は、 各単語モデルに対応する単語の言語スコアを、 文法データベース 1 9 Aに記憶された文法規則に基づいて計算する。 即ち、 単語 予備選択部 1 3は、 各単語の言語スコアを、 例えばュニグラムに基づいて求める c なお、 単語予備選択部 1 3においては、 単語接続情報を参照することにより、 各単語の音響スコアの計算を、 その単語の直前の単語 (注目ノードが終端となつ ているアークに対応する単語) に依存するクロスヮードモデルを用いて行うこと が可能である。
また、 単語予備選択部 1 3においては、 単語接続情報を参照することにより、 各単語の言語スコアの計算を、 その単語が、 その直前の単語と連鎖する確率を規 定するバイグラムに基づいて行うことが可能である。
単語予備選択部 1 3は、 以上のようにして、 各単語について音響スコアおよび 言語スコアを求めると、 その音響スコアおよび言語スコアを総合評価したスコア を、 以下、 適宜、 単語スコアという) を求め、 その上位 L個を、 マッチング処理 の対象とする単語として、 マッチング部 1 4に供給する。
なお、 ここでは、 単語予備選択部 1 3において、 各単語の音響スコアおよび言 語スコアを総合評価した単語スコアに基づいて、 単語を選択するようにしたが、 単語予備選択部 1 3では、 その他、 例えば、 音響スコアだけや、 言語スコアだけ に基づいて、 単語を選択するようにすることが可能である。
また、 単語予備選択部 1 3では、 特徴量記憶部 1 2から読み出した特徴量の系 列の最初の部分だけを用いて、 音響モデルデ一夕ベース 1 7 Aの音響モデルに基 づき、 対応する単語の最初の部分の幾つかの音韻を求め、 最初の部分が、 その音 韻に一致する単語を選択するようにすることも可能である。
さらに、 単語予備選択部 1 3では、 単語接続情報を参照して、 直前の単語 (注 目ノードが終端ノードとなっているアークに対応する単語) の品詞を認識し、 そ の品詞に続く単語の品詞として可能性の高い品詞の単語を選択するようにするこ とも可能である。
即ち、 単語予備選択部 1 3における単語の選択方法は、 どのような方法を用い ても良く、 究極的には、 単語を、 ランダムに選択しても良い。
マッチング部 1 4は、 単語予備選択部 1 3から、 マッチング処理に用いる L個 の単語 (以下、 適宜、 選択単語という) を受信すると、 ステップ S 6において、 その選択単語を対象として、 マッチング処理を行う。
即ち、 マッチング部 1 4は、 言語スコアおよび音響スコアを計算するのに用い る特徴量の系列の開始時刻を、 注目ノードが有する時刻情報から認識し、 その開 始時刻以降の、 必要な特徴量の系列を特徴量記憶部 1 2から読み出す。 さらに、 マッチング部 1 4は、 辞書データベース 1 8 Bを参照することで、 単語予備選択 部 1 3からの選択単語の音韻情報を認識し、 その音韻情報に対応する音響モデル を、 音響モデルデータベース 1 7 Bから読み出して接続することで、 単語モデル を構成する。
そして、 マッチング部 1 4は、 上述のようにして構成した単語モデルに基づき、 特徴量記憶部 1 2から読み出した特徴量系列を用いて、 単語予備選択部 1 3から の選択単語の音響スコアを計算する。 なお、 マッチング部 1 4においては、 単語 接続情報を参照することにより、 単語の音響スコアの計算を、 クロスワードモデ ルに基づいて行うようにすることが可能である。
さらに、 マッチング部 1 4は、 文法データベース 1 9 Bを参照することで、 単 語予備選択部 1 3からの選択単語の言語スコアを計算する。 即ち、 マッチング部 1 4は、 例えば、 単語接続情報を参照することにより、 単語予備選択部 1 3から の選択単語の直前の単語、 さらには、 その前の単語を認識し、 バイグラムやトラ ィグラムに基づく確率から、 単語予備選択部 1 3からの選択単語の言語スコアを 求める。
マッチング部 1 4は、 以上のようにして、 単語予備選択部 1 3からの L個の選 択単語すベてについて、 その音響スコアおよび言語スコアを求め、 ステップ S 7 に進む。 ステップ S 7では、 選択単語それぞれについて、 その音響スコアおよび 言語スコアを総合評価した単語スコアが求められ、 その単語スコアに基づいて、 単語接続情報記憶部 1 6に記憶された単語接続情報が更新される。
即ち、 ステップ S 7では、 マッチング部 1 4は、 選択単語について単語スコア を求め、 例えば、 その単語スコアを所定の閾値と比較すること等によって、 注目 ノードに接続するアークとしての単語を、 選択単語の中から絞り込む。 そして、 マッチング部 1 4は、 その絞り込みの結果残った単語を、 その音響スコア、 言語 スコア、 およびその単語の終了時刻とともに、 制御部 1 1に供給する。 なお、 マッチング部 1 4において、 単語の終了時刻は、 音響スコアを計算する のに用いた特徴量の抽出時刻から認識される。 また、 ある単語について、 その終 了時刻としての蓋然性の高い抽出時刻が複数得られた場合には、 その単語につい ては、 各終了時刻と、 対応する音響スコアおよび言語スコアとのセットが、 制御 部 1 1に供給される。
制御部 1 1は、 上述のようにしてマッチング部 1 4から供給される単語の音響 スコア、 言語スコア、 およ 終了時刻を受信すると、 マッチング部 1 4からの各 単語について、 単語接続情報記憶部 1 6に記憶された単語接続情報 (図 4 ) にお ける注目ノードを始端ノードとして、 アークを延ばし、 そのアークを、 終了時刻 の位置に対応する終端ノードに接続する。 さらに、 制御部 1 1は、 各アークに対 して、 対応する単語、 並びにその音響スコアおよび言語スコアを付与するととも に、 各アークの終端ノードに対して、 対応する終了時刻を時刻情報として与える。 そして、 ステップ S 2に戻り、 以下、 同様の処理が繰り返される。
以上のように、 単語接続情報は、 マッチング部 1 4の処理結果に基づいて、 逐 次更新され、 さらに、 再評価部 1 5において逐次修正されるので、 単語予備選択 部 1 3およびマッチング部 1 4は、 常時、 単語接続情報を利用して処理を行うこ とが可能となる。
なお、 制御部 1 1は、 単語接続情報を更新する際に、 可能であれば、 上述した ような終端ノードの共通化を行う。
一方、 ステップ S 2において、 途中ノードが存在しないと判定された場合、 ス テツプ S 8に進み、 制御部 1 1は、 単語接続情報を参照することで、 その単語接 続情報として構成された各パスについて、 単語スコアを累積することで、 最終ス コアを求め、 例えば、 その最終スコアが最も大きいパスを構成するアークに対応 する単語列を、 ユーザの発話に対する音声認識結果として出力して、 処理を終了 する。
以上のように、 単語予備選択部 1 3において、 音声認識結果の候補となる単語 列の、 既に求まっている単語に続く 1以上の単語が選択され、 マッチング部 1 4 において、 その選択された単語 (選択単語) について、 スコアが計算されて、 そ のスコアに基づき、 音声認識結果の候補となる単語列が構成される。 そして、 再 評価部 1 5において、 音声認識結果の候補となる単語列の単語どうしの単語接続 関係が修正され、 制御部 1 1において、 その修正後の単語接続関係に基づいて、 音声認識結果となる単語列が確定される。 従って、 処理に要するリソースの増大 を抑えながら、 精度の高い音声認識を行うことができる。
即ち、 再評価部 1 5において単語接続情報の単語境界が修正されるため、 注目 ノードが有する時刻情報が、 単語境界を表している精度が高くなり、 単語予備選 択部 1 3やマッチング部 1 4では、 そのような精度の高い時刻情報が表す時刻以 降の特徴量系列を用いて処理が行われる。 従って、 単語予備選択部 1 3において 選択する単語の判断基準や、 マッチング部 1 4において単語を絞り込むときの判 断基準を強化しても、 音声認識結果として正しい単語が除外されてしまう可能性 を極めて低くすることができる。
そして、 単語予備選択部 1 3において選択する単語の判断基準を強化した場合 には、 マッチング部 1 4においてマッチング処理の対象となる単語数が少なくな り、 その結果、 マッチング部 1 4の処理に要する演算量およびメモリ容量も少な くすることができる。
さらに、 仮に、 単語予備選択部 1 3において、 正しい音声認識結果としての単 語列を構成する単語のうち、 ある時刻から開始する単語が、 その時刻に選択され なかったとしても、 その時刻から多少ずれた時刻 (従って、 誤った時刻) におい て選択されれば、 再評価部 1 5において、 その誤った時刻が修正され、 正しい音 声認識結果としての単語列を得ることができる。 即ち、 単語予備選択部 1 3で、 正しい音声認識結果としての単語列を構成する単語の選択漏れがあつたとしても、 再評価部 1 5において、 その選択漏れを是正して、 正しい音声認識結果としての 単語列を得ることができる。
従って、 再評価部 1 5では、 マッチング部 1 4における終了時刻の検出の誤り の他、 単語予備選択部 1 3における単語の選択の誤りも是正することができる。 次に、 図 7は、 本発明を適用した音声認識装置の第 1実施の形態の構成例を示 している。 なお、 図中、 図 3における場合と対応する部分については、 同一の符 号を付してあり、 以下では、 その説明は、 適宜省略する。 即ち、 図 7の音声認識 装置は、 制御部 1 1と単語接続情報記憶部 1 6との間に、 単語接続関係管理部 2 1が新たに設けられている他は、 基本的に、 図 3における場合と同様に構成され ている。
従って、 図 7の実施の形態においては、 制御部 1 1は、 単語接続関係管理部 2 1を介して、 単語接続情報記憶部 1 6に対して、 マッチング部 1 4からの情報に 基づいて生成した単語接続情報を書き込むが、 その際、 単語接続関係管理部 2 1 は、 その単語接続情報によって表される単語の境界位置を制限する。
即ち、 制御部 1 1は、 上述したように、 マッチング部 1 4から供給される単語 の音響スコア、 言語スコア、 および終了時刻を受信すると、 マッチング部 1 4か らの各単語について、 単語接続情報記憶部 1 6に記憶された単語接続情報 (図 4 ) における注目ノードを始端ノードとして、 アークを延ばし、 そのアークを、 終了時刻の位置に対応する終端ノードに接続する。 さらに、 制御部 1 1は、 各ァ ークに対して、 対応する単語、 並びにその音響スコアおよび言語スコアを付与す るとともに、 各アークの終端ノードに対して、 対応する終了時刻を時刻情報とし て与える。
その際、 単語接続関係管理部 2 1は、 注目ノードを始点ノードとして延ばされ るアークの終端ノードの位置 (単語の終了時刻) を制限する。
即ち、 例えば、 いま、 図 8 (A) に示すように、 特徴抽出部 3において、 時間 Tsごとに特徴量が抽出され、 制御部 1 1に供給されるとすると、 制御部 1 1は、 この時間 Tsを最小単位とした終了時刻を終端ノードとする単語すべてに対応す るアークを、 単語接続情報として、 単語接続情報記憶部 1 6に書き込む。
従って、 例えば、 図 8 (A) に示すように、 「今日はいい天気ですね」 と発話 された場合において、 単語 「今日」 と 「は」 との間の境界位置の候補、 即ち、 単 語 「今日」 の終了時刻の候補として、 例えば、 図 8 ( B ) に示すように、 時間 T sごとの連続する 7つの時刻 (タイミング) a, b, c , d , e , f , gが得ら れたときには、 この 7つの時刻 a乃至 gそれぞれを終端ノードとする単語 「今 日」 に対応するアークが、 単語接続情報として記憶されることになる。
即ち、 単語の境界位置 (つまり、 単語の終了時刻) は、 特徴抽出部 3において 特徴量が得られるタイミングで設定することができるため、 終端ノードとするこ とができるタイミング (以下、 適宜、 ノード記憶タイミングという) も、 図 8 ( C ) に矢印で示すように、 時間 Tsを最小単位としたタイミングとなり、 その 結果、 上述のような時間 Tsごとの連続する 7つの時刻 a乃至 gそれぞれを終端 ノードとするアークが、 単語接続情報として記憶されることがある。
しかしながら、 このように、 多数のアークが、 単語接続情報として記憶される のは、 単語接続情報記憶部 1 6の記憶容量や、 処理時間等の観点から効率的では ない。
そこで、 単語接続関係管理部 2 1は、 終端ノードの位置 (単語の終了時刻) を、 特徴抽出部 3から特徴量が供給されるタイミングを間引いたタイミングに制限す る。
即ち、 単語接続関係管理部 2 1は、 終端ノードの位置を、 例えば、 図 8 (D ) に示すように、 時間 3 Tsごとのタイミングに制限する。
ここで、 単語接続関係管理部 2 1によって制限された、 終端ノードの位置とし てとり得る位置 (タイミング) を、 以下、 適宜、 新ノード記憶タイミングという c この場合、 制御部 1 1において、 単語 「今日」 の終了時刻の候補として、 図 8 ( B ) に示したように、 時間 Tsごとの連続する 7つの時刻 a乃至 gが得られた としても、 単語接続関係管理部 2 1において、 終端ノードの位置は、 2つの時刻 cと f に制限されることとなり、 その結果、 単語接続情報記憶部 1 6として必要 な記憶容量を低減することができる。 さらに、 この場合、 その後に注目ノードと される途中ノードが少なくなることから、 処理の高速化を図ることができる。 ところで、 上述のように、 単語接続関係管理部 2 1において、 終端ノードの位 置を制限した場合には、 正しい単語境界が得られないことがある。 即ち、 図 8の 実施の形態においては、 図 8 (A) に示すように、 単語 「今日」 と 「は」 との間 の正しい単語境界は、 時刻 dであるが、 終端ノードの位置は、 図 8 (D ) に示し たように、 時刻 cと f に制限され、 正しい単語境界の時刻 dを、 終端ノードとし て得ることができない。
従って、 誤った境界位置である時刻 cまたは f を、 正しい境界位置として、 そ の後の処理が行われる場合には、 認識性能が低下することになる。
しかしながら、 図 7の音声認識装置では、 図 3の音声認識装置について説明し たように、 再評価部 1 5が、 単語接続情報の単語境界を修正するため、 ある程度 の境界位置の誤りは、 正しい境界位置に修正される。 その結果、 上述したように、 終端ノードの位置を、 ある程度制限しても、 認識性能の低下を防止することがで さる。
即ち、 図 9は、 終端ノードの位置を制限して行った音声認識処理のシミュレ一 ション結果を示している。
図 9において、 「時間間隔」 の欄は、 終端ノードの位置の制限条件を表してお り ·、 そこに記載してある数字は、 特徴抽出部 3から特徴量が供給される時間間隔 Tsに対する、 終端ノードの位置として許可するタイミングの時間間隔を表す。 即ち、 「時間間隔」 の欄の数字 # iは、 終端ノードの位置を、 時間 i X Tsごと の時刻に制限したことを表す。 従って、 例えば、 「時間間隔」 の欄における 「1」 は、 終端ノードの位置を制限しない場合を表し、 また、 例えば、 「時間間 隔」 の欄における 「2」 は、 終端ノードの位置を、 時間 2 Tsごとの時刻に制限 した場合を表す。
また、 「単語正解率」 の欄は、 音声の認識率を表す。
なお、 シミュレーションでは、 特徴抽出部 3から特徴量が供給される時間間隔 Tsを、 1 0 m sとした。
また、 シミュレーションでは、 音声認識の対象とする単語数を 2万語とし、 1 0人の話者それぞれによる 2 0の発話、 即ち、 延べ 2 0 0発話を対象に、 音声認 識を行った。 さらに、 文法としては、 トライグラムを用いた。 図 9のシミュレーション結果から、 終端ノードの位置を、 時間 Ts乃至 4 TSそ れぞれごとの時刻に制限しても、 ほとんど同様の認識性能が得られていることが 分かる。
なお、 上述のように、 シミュレーションは、 2 0 0発話しか対象にしていない ため、 「単語正解率」 の欄の認識率における 0 . 5 %乃至 1 %程度の上下差は、 誤差の範囲内である。
ところで、 例えば、 図 8 (A) と同様の図 1 0 (A) に示すように、 「今日は いい天気ですね」 と発話された場合において、 単語 「今日」 と 「は」 との間の境 界位置の候補、 即ち、 単語 「今日」 の終了時刻の候補として、 例えば、 図 1 0 ( B ) に示すように、 時間 Tsだけ離れた 2つの連続する時刻 (タイミング) d と eが得られたとする。
即ち、 マッチング部 1 4において、 例えば、 図 1 0 (A) に示した、 時間 Ts ごとの時刻 a乃至 gそれぞれを終了時刻とした単語 「今日」 の単語スコアが計算 され、 その単語スコアによる、 上述した絞り込みによって、 時刻 dと eをそれぞ れ終了時刻とする単語 「今日」 が残ったとする。
この場合、 単語接続関係管理部 2 1において、 終端ノードの位置を、 例えば、 図 1 0 ( C ) に示すように、 時間 3 TSごとのタイミングに制限すると、 時刻 d と eは、 いずれも、 その制限されたタイミング、 即ち、 新ノード記憶タイミング の位置にないため、 時刻 dと eをそれぞれ終了時刻とするアークは、 いずれも、 単語接続情報記憶部 1 6に記憶されないことになる。
即ち、 図 1 0 ( B ) の実施の形態では、 単語 「今日」 の終了時刻として正しい 時刻 dと、 その時刻に近い時刻 eが得られているのにもかかわらず、 いずれの時 刻も、 ノードとして記憶されない。
そして、 このように、 正しい終了時刻付近にノードが記憶されない場合には、 再評価部 1 5の処理によっても、 単語どうしの間の境界位置を、 正しい位置に修 正することが困難となり、 この場合、 音声認識性能が劣化することになる。 そこで、 制御部 1 1は、 マッチング部 1 4を制御することにより、 マッチング 部 14が計算した単語スコアを補正させ、 その補正後の単語スコア (以下、 適宜、 補正スコアという) に基づいて、 音声認識結果の候補となる単語列の単語の境界 位置の候補の仮決定 (絞り込み) を行わせる。
即ち、 例えば、 いま、 時刻 Xを終了時刻とする単語の音響スコアと言語スコア を、 それぞれ A (x) とし (x) と表すとともに、 時刻 Xの前と後に隣接する時 刻を、 それぞれ x と x+lと表すこととすると、 マッチング部 14は、 時刻 Xを 終了時刻とする単語の補正スコアを求めるのに用いる音響スコア A' (X) と言 語スコア L' (X) (以下、 適宜、 それぞれを、 補正音響スコア A' (X) と補 正言語スコア L' (X) という) を、 次式にしたがって求める。
A' (X) =ma x {A (x.,) , A (x) , A (x+1) }
L ' (x) =m a x { L ( x_,) , L ( x ) , L ( +1) }
• · · (2) ここで、 式 (2) において、 ma x {} は、 カツコ {} 内の最大値を意味する また、 式 (2) における音響スコア A (x_,) , A (x) , A (x+1) それぞれ には、 各音響スコアを計算する時間長に依存しないように、 何らかの正規化が施 されるものとする。
式 (2) によれば、 ある時刻 Xを終了時刻とする単語の音響スコアが、 その時 刻の音響スコア、 その時刻の前と後にそれぞれ隣接する時刻 x_,と x+1を終了時 刻とする単語の音響スコアのうちの最も大きいものに補正される。 さらに、 言語 スコアについても、 同様の補正が行われる。 その結果、 直感的には、 ある時刻 X を終了時刻とする単語の単語スコアは、 その時刻 Xを含む、 その時刻 Xに近い時 刻を終了時刻とする単語の単語スコアのうちの最も大きいものに補正されること になる。
従って、 図 10 (B) に示したように、 補正前の単語スコアによる絞り込みに よって、 時刻 dと eをそれぞれ終了時刻とする単語 「今日」 が残る場合というの は、 時刻 dと eをそれぞれ終了時刻とする単語 「今日」 の単語スコアが所定の閾 値以上であり、 かつ他の時刻を終了時刻とする単語 「今日」 の単語スコアが所定 の閾値未満である場合であるから、 時刻 dの直前の時刻 cを終了時刻とする単語 「今日」 の単語スコアは、 時刻 dを終了時刻とする単語 「今日」 の単語スコアよ り小さく、 また、 時刻 eの直後の時刻 f を終了時刻とする単語 「今日」 の単語ス コアは、 時刻 eを終了時刻とする単語 「今日」 の単語スコアより小さい。
その結果、 時刻 cを終了時刻とする単語 「今日」 の単語スコアは、 その時刻 c の直後の時刻 dを終了時刻とする単語 「今日」 の単語スコアに補正され、 また、 時刻 f を終了時刻とする単語 「今日」 の単語スコアも、 その時刻 f の直前の時刻 eを終了時刻とする単語 「今日」 の単語スコアに補正される。
これにより、 時刻 cと f をそれぞれ終了時刻とする単語 「今日」 の補正後の単 語スコア (補正スコア) は、 いずれも、 所定の閾値以上となる。 従って、 そのよ うな補正スコアに基づいて、 絞り込みを行うことにより、 図 1 0 ( D ) に示すよ うに、 時刻 dと eをそれぞれ終了時刻とする単語 「今日」 だけでなく、 時刻じ と f をそれぞれ終了時刻とする単語 「今日」 も残ることになる。
この場合、 単語接続関係管理部 2 1において、 終端ノードの位置を、 図 1 0 ( C ) と同様の図 1 0 ( E ) に示すように、 時間 3 TSごとのタイミングに制限 しても、 単語 「今日」 の終了時刻として正しい時刻 dに近い時刻 cと f が得られ、 この時刻 cと fそれぞれが、 ノードとして記憶されることになる。
従って、 正しい終了時刻 dに近い時刻 cと f が、 ノードとして記憶されるので、 上述した再評価部 1 5の処理によって、 単語どうしの間の境界位置が、 正しい位 置に修正されることになる。
次に、 図 1 1のフローチャートを参照して、 図 7の音声認識装置による音声認 識処理について説明する。
図 7の音声認識装置では、 ステップ S 1 1乃至 S 1 6において、 図 5のステツ プ S 1乃至 S 6における場合とそれぞれ同様の処理が行われる。
そして、 ステップ S 1 6において、 図 5のステップ S 6で説明したように、 マ ツチング部 1 4が、 単語予備選択部 1 3からの選択単語すべてについて、 それぞ れの音響スコアおよび言語スコアを求めた後は、 ステップ S 1 7に進み、 マッチ ング部 1 4は、 式 (2 ) にしたがい、 各単語の音響スコアと言語スコアを、 他の 時刻を終了時刻とする同一単語の音響スコアと言語スコアによって、 それぞれ補 正する。 さらに、 マッチング部 1 4は、 補正後の音響スコアと言語スコアから、 補正後の単語スコア (補正スコア) を計算する。 そして、 マッチング部 1 4は、 ステップ S 1 8に進み、 その補正スコアによって、 単語の絞り込みを行い、 これ により、 単語の境界位置の候補を、 特に位置を制限することなく決定 (仮決定) する。
その後、 マッチング部 1 4は、 ステップ S 1 8における絞り込みの結果残った 単語を、 その音響スコア、 言語スコア、 およびその単語の終了時刻とともに、 制 御部 1 1に供給する。
制御部 1 1は、 上述のようにしてマッチング部 1 4から供給される単語の音響 スコア、 言語スコア、 および終了時刻を受信すると、 そのうちの各単語について の終了時刻を、 単語接続関係管理部 2 1に供給する。
単語接続関係管理部 2 1は、 ステップ S 1 9において、 単語の境界候補となつ ている終了時刻を、 新ノード記憶タイミングで間引き、 即ち、 新ノード記憶タイ ミングの位置にない終了時刻を削除し、 残った終了時刻を、 単語の境界候補とな る時刻として、 最終的に決定する。 単語接続関係管理部 2 1は、 このようにして 最終的に残った終了時刻を、 制御部 1 1に返し、 制御部 1 1は、 ステップ S 2 0 において、 単語接続関係管理部 2 1から終了時刻が返された単語に関して、 単語 接続情報記憶部 1 6に記憶された単語接続情報を、 単語接続関係管理部 2 1を介 して更新する。
即ち、 ステップ S 2 0では、 図 5のステップ S 7で説明した場合と同様に、 単 語接続関係管理部 2 1から終了時刻が返された各単語について、 単語接続情報記 憶部 1 6に記憶された単語接続情報 (図 4 ) における注目ノードを始端ノードと して、 アークを延ばし、 そのアークを、 終了時刻の位置に対応する終端ノードに 接続する。 さらに、 制御部 1 1は、 各アークに対して、 対応する単語、 並びにそ の音響スコアおよび言語スコアを付与するとともに、 各アークの終端ノードに対 して、 対応する終了時刻を時刻情報として与える。
その後は、 ステップ S 1 2に戻り、 以下、 同様の処理が繰り返される。
そして、 ステップ S 1 2において、 途中ノードが存在しないと判定されると、 ステップ S 2 1に進み、 図 5のステップ S 8における場合と同様に、 制御部 1 1 は、 単語接続情報を参照することで、 その単語接続情報として構成された各パス について、 単語スコアを累積することで、 最終スコアを求め、 例えば、 その最終 スコアが最も大きいパスを構成するアークに対応する単語列を、 ユーザの発話に 対する音声認識結果として出力して、 処理を終了する。
以上のように、 単語接続関係管理部 2 1において、 終端ノードの位置を、 特徴 抽出部 3から特徴量が供給されるタイミングを間引いた夕イミング (新ノード記 憶タイミング) に制限するようにしたので、 単語接続情報記憶部 1 6の記憶容量 や処理時間等を低減することができ、 処理の効率化を図ることができる。
さらに、 終端ノードの位置を制限しても、 再評価部 1 5によって、 その位置が、 正しい単語の境界の位置に修正されるため、 認識性能の劣化を防止することがで きる。 なお、 図 7の実施の形態では、 単語予備選択部 1 3を設けて、 音声認識装 置を構成するようにしたが、 音声認識装置は、 単語予備選択部 1 3を設けずに構 成することも可能である。
次に、 図 1 2は、 本発明を適用した音声認識装置の第 2実施の形態の構成例を 示している。 なお、 図中、 図 3における場合と対応する部分については、 同一の 符号を付してあり、 以下では、 その説明は、 適宜省略する。 即ち、 図 1 2の音声 認識装置は、 単語予備選択部 1 3とマッチング部 1 4との間に、 単語接続関係管 理部 2 2が新たに設けられている他は、 基本的に、 図 3における場合と同様に構 成されている。
従って、 図 1 2の実施の形態においては、 マッチング部 1 4が単語予備選択処 理の要求とともに出力する注目ノード、 およびそれが有する時刻情報は、 単語接 続関係管理部 2 2を介して、 単語予備選択部 1 3に供給されることとなるが、 そ の際、 単語接続関係管理部 2 2は、 マッチング部 1 4からの注目ノードの時刻情 報、 つまり、 選択単語の開始位置 (開始時刻) を制限する。
即ち、 例えば、 いま、 図 1 3 (A) に示すように、 特徴抽出部 3において、 時 間 Tsごとに特徴量が抽出され、 制御部 1 1に供給されるとすると、 制御部 1 1 は、 この時間 Tsを最小単位とした終了時刻を終端ノードとする単語すべてに対 応するアークを、 単語接続情報として、 単語接続情報記憶部 1 6に書き込む。 従って、 例えば、 図 1 3 (A) に示すように、 「今日はいい天気ですね」 と発 話された場合において、 単語 「今日」 と 「は」 との間の境界位置の候補、 即ち、 単語 「今日」 の終了時刻の候補として、 時間 Tsごとの連続する 7つの時刻 a , b , c, d , e , f , gが得られたときには、 この 7つの時刻 a乃至 gそれぞれ が、 終端ノードとして、 単語接続情報記憶部 1 6に記憶されることになる。 その結果、 この 7つの終端ノード a乃至 gは、 その後、 順次、 注目ノードとさ れるから、 単語予備選択部 1 3は、 7つの終端ノード a乃至 gそれぞれを、 単語 の開始位置として、 単語予備選択処理を行うこととなる。
しかしながら、 このように、 多数の時刻を開始位置として単語予備選択を行う のは、 処理時間等の観点から効率的ではない。
そこで、 単語接続関係管理部 2 2は、 マッチング部 1 4から単語予備選択部 1 3に供給される注目ノードの位置 (単語の開始時刻) を、 特徴抽出部 3から特徴 量が供給されるタイミングを間引いたタイミングに制限する。
即ち、 単語接続関係管理部 2 2は、 注目ノードの位置を、 例えば、 図 1 3 ( B ) に示すように、 時間 2 Tsごとのタイミングに制限する。 これにより、 単 語予備選択部 1 3において、 単語予備選択処理が開始されるタイミング (単語の 開始時刻) は、 時間 2 Tsごとのタイミングに制限される。
具体的には、 単語接続関係管理部 2 2は、 マッチング部 1 4から供給される注 目ノードの位置が、 単語の開始時刻として許可された位置 (以下、 適宜、 許可位 置という) である場合には、 その注目ノードを、 そのまま単語予備選択部 1 3に 供給し、 マッチング部 1 4から供給される注目ノードの位置が、 単語の開始時刻 として許可されていない位置 (以下、 適宜、 不許可位置という) である場合 (制 限されている場合) には、 その注目ノードの時刻情報を、 単語予備選択部 1 3に 供給せずに一時保持する。
その結果、 単語予備選択部 1 3では、 許可位置のみを開始位置として単語予備 選択が行われるので、 単語予備選択処理に要する処理時間の短縮化等を図ること ができる。
ところで、 上述のように、 単語予備選択部 1 3において、 許可位置のみを開始 位置として単語予備選択が行われる場合には、 不許可位置を開始位置とする単語 予備選択結果が得られないから、 このままでは、 不許可位置を開始位置とする単 語が、 マッチング処理部 1 4において処理の対象とされることがなくなってしま うことになる。
しかしながら、 マッチング部 1 4が単語予備選択処理の要求とともに出力する 注目ノードの時刻情報は、 いまの場合、 時間 Tsを最小単位とするものであり、 マッチング部 1 4から単語予備選択部 1 3に対しては、 許可位置のみならず、 不 許可位置を開始位置とする単語予備選択処理が要求される場合がある。
従って、 不許可位置を開始位置とする単語が、 単語予備選択結果として、 マツ チング部 1 4に供給されず、 その結果、 まったく処理の対象とされないことは、 認識性能の劣化を招くことになる。
そこで、 単語接続関係管理部 2 2は、 マッチング部 1 4から、 不許可位置を開 始位置とする単語の単語予備選択処理の要求があった場合には、 不許可位置を開 始位置とする単語を補完し、 マッチング部 1 4に供給するようになっている。 即ち、 単語接続関係管理部 2 2は、 例えば、 図 1 3 (A) に示した時間 Tsご との時刻 a乃至 gのうちの、 図 1 3 ( B ) に示した時間 2 Ts ごとの時刻 b, d , f に、 単語予備選択処理が開始されるタイミング (単語の開始時刻) を制限する 場合において、 その時刻以外の時刻 (不許可位置) cや eを開始位置とする単語 予備選択処理の要求があったときには、 その時刻 cや eに近い許可位置を開始位 置とする単語予備選択処理の結果得られた単語 (選択単語) によって、 不許可位 置である時刻 cや eを開始位置とする単語予備選択結果としての単語を補完する c 具体的には、 単語接続関係管理部 2 2は、 例えば、 不許可位置である時刻 cに ついては、 図 1 3 ( C ) に示すように、 その前後の許可位置の時刻 bと dをそれ ぞれ開始位置とする単語予備選択処理の結果得られた単語の集合を、 時刻 cを開 始位置とする単語予備選択結果として補完し、 マッチング部 1 4に供給する。 ま た、 単語接続関係管理部 2 2は、 例えば、 不許可位置である時刻 eについては、 図 1 3 ( C ) に示すように、 その前後の許可位置の時刻 dと f をそれぞれ開始位 置とする単語予備選択処理の結果得られた単語の集合を、 時刻 eを開始位置とす る単語予備選択結果として補完し、 マッチング部 1 4に供給する。
以上のように、 単語予備選択部 1 3において、 実際に、 単語予備選択処理が行 われるのは、 許可位置を開始時刻とする単語についてだけであるが、 マッチング 部 1 4には、 許可位置を開始時刻とする単語予備選択結果としての単語だけでな く、 不許可位置を開始時刻とする単語予備選択結果としての単語も補完されて供 給される。 従って、 単語予備選択処理に要するコストを低減しながら、 認識性能 の劣化を防止することができる。
なお、 上述のように、 単語接続関係管理部 2 2は、 マッチング部 1 4から、 不 許可位置を開始時刻とする単語予備選択処理の要求があった場合には、 上述のよ うに、 その不許可位置を開始時刻とする単語を補完して、 マッチング部 1 4に単 語予備選択結果として供給することから、 その補完のために、 例えば、 単語予備 選択部 1 3からの許可位置を開始時刻とする単語予備選択結果としての単語を、 一時記憶しておくようにする必要がある。
また、 単語接続関係管理部 2 2において、 不許可位置を開始時刻とする単語の 補完に用いられる単語予備選択結果が記憶されていない場合には、 単語接続関係 管理部 2 2は、 例えば、 不許可位置に近い許可位置を開始時刻とする単語予備選 択処理を、 単語予備選択部 1 3に要求し、 その要求に対応して単語予備選択部 1 3から供給される、 許可位置を開始時刻とする単語予備選択結果によって、 不許 可位置を開始時刻とする単語を補完するようになっている。
次に、 図 1 4のフローチャートを参照して、 図 1 2の音声認識装置による音声 認識処理について説明する。
図 1 2の音声認識装置では、 ステップ S 3 1乃至 S 3 4において、 図 5のステ ップ S 1乃至 S 4における場合とそれぞれ同様の処理が行われる。
そして、 ステップ S 3 4において、 図 5のステップ S 4で説明したように、 再 評価部 1 5が、 単語接続情報記憶部 1 6の単語接続情報を修正し、 マッチング部 1 4が、 その修正が終了した旨を、 制御部 1 1を介して受信すると、 マッチング 部 1 4は、 上述したように、 注目ノード、 およびそれが有する時刻情報を、 単語 予備選択処理の要求とともに出力する。
マッチング部 1 4が注目ノードおよび時刻情報とともに出力する単語予備選択 処理の要求は、 単語接続関係管理部 2 2で受信される。
単語接続関係管理部 2 2は、 単語予備選択処理の要求を受信すると、 ステップ S 3 5において、 マッチング部 1 4からの単語予備選択処理の要求が、 許可位置 を開始時刻とするものであるかどうかを判定する。 ステップ S 3 5において、 単 語予備選択処理の要求が、 許可位置を開始時刻とするものであると判定された場 合、 単語接続関係管理部 2 2は、 その単語予備選択処理の要求を、 単語予備選択 部 1 3に供給して、 ステップ S 3 6に進む。 ステップ S 3 6では、 図 5のステツ プ S 5における場合と同様にして、 単語予備選択部 1 3が単語予備選択処理を行 い、 その結果得られる単語 (選択単語) を、 単語接続関係管理部 2 2に供給する。 単語接続関係管理部 2 2は、 単語予備選択部 1 3からの選択単語 (これは、 許可 位置を開始時刻とするもの) を一時記憶するとともに、 単語予備選択結果として、 マッチング部 1 4に供給し、 ステップ S 3 8に進む。
一方、 ステップ S 3 5において、 単語予備選択処理の要求が、 許可位置を開始 時刻とするものでないと判定された場合、 即ち、 不許可位置を開始時刻とするも のである場合、 ステップ S 3 7に進み、 単語接続関係管理部 2 2は、 不許可位置 の前後の許可位置を開始時刻とする単語予備選択結果を、 単語予備選択部 1 3か ら既に得ている単語予備選択結果の中から得て、 それを、 不許可位置を開始時刻 とする単語予備選択結果として補完する。 そして、 単語接続関係管理部 2 2は、 その補完によって得られた不許可位置を開始時刻とする単語予備選択結果を、 マ ツチング部 14に供給し、 ステップ S 38に進む。
その後は、 ステップ S 38乃至 S 40において、 図 5のステップ S 6乃至 S 8 における場合とそれぞれ同様の処理が行われる。
なお、 上述の場合においては、 不許可位置を開始位置とする単語予備選択結果 としての単語を、 その不許可位置の前後の許可位置を開始位置とする単語予備選 択結果によって補完するようにしたが、 この補完は、 例えば、 図 1 5 (A) に示 すように、 不許可位置 X。からある程度の範囲内にある複数の許可位置 χ,, x2, 3, χ4. χ5, χ6を開始位置とする単語予備選択結果によって行うことが可能 である。
さらに、 このように、 不許可位置 X。を開始位置とする単語予備選択結果とし ての単語を、 その不許可位置 X。から広い範囲にある複数の許可位置 X ,乃至 x6 を開始位置とする単語予備選択結果によって補完する場合には、 その複数の許可 位置 X ,乃至 x6それぞれに対して、 不許可位置からの距離に応じた重みを付し、 その重みに基づいて、 不許可位置 xQを開始位置とする単語を補完することが可 能である。
この場合、 例えば、 図 1 5 (B) に示すような、 不許可位置 X。からの距離が 遠くなるほど小さくなる重みを採用することが可能である。 即ち、 この場合、 不 許可位置 xQについての補完には、 不許可位置 xQからの距離が近い、 例えば、 許 可位置 x3や x4を開始位置とする単語予備選択結果としての単語が多く用いられ る。 また、 不許可位置 xQからの距離が遠い、 例えば、 許可位置 X,や x6を開始 位置とする単語予備選択結果としての単語については、 少ない数を用いて、 補完 が行われる。 なお、 このような重みを採用する場合、 補完には、 ある許可位置を 開始位置とする単語予備選択結果としての単語すべてではなく、 そのうちの一部 の単語が用いられることとなるが、 この一部の単語は、 例えば、 単語予備選択処 理において得られる単語スコアに基づいて選択することが可能である。 即ち、 補 完に用いる一部の単語は、 例えば、 単語スコアの高い順に選択するようにするこ とが可能である。
以上のように、 単語予備選択処理を開始するタイミングを、 許可位置のみに制 限し、 また、 マッチング部 1 4において、 不許可位置からの単語予備選択処理が 要求された場合には、 単語予備選択結果となる単語を補完するようにしたので、 認識性能を劣化させることなく、 処理量を大幅に低減することができる。
なお、 図 1 2の実施の形態においては (後述する図 1 6の実施の形態において も同様) 、 再評価部 1 5を設けて音声認識装置を構成するようにしたが、 音声認 識装置は、 再評価部 1 5を設けずに構成することが可能である。
次に、 図 1 6は、 本発明を適用した音声認識装置の第 3実施の形態の構成例を 示している。 なお、 図中、 図 1 2における場合と対応する部分については、 同一 の符号を付してあり、 以下では、 その説明は、 適宜省略する。 即ち、 図 1 6の音 声認識装置は、 1つの単語予備選択部 1 3に替えて、 2つの単語予備選択部 1 3 Aおよび 1 3 Bが設けられている他は、 基本的に、 図 1 2における場合と同様に 構成されている。
但し、 図 1 6の実施の形態においては、 辞書データベース 1 8 Aに登録されて いる単語が、 音韻数の長い単語と、 短い単語の 2つのカテゴリに分類されており、 単語予備選択部 1 3 Aは、 音韻数の長い単語を対象とした単語予備選択処理を行 レ 単語予備選択部 1 3 Bは、 音韻数の短い単語を対象とした単語予備選択処理 を行うようになっている。
また、 単語接続関係管理部 2 2は、 単語予備選択部 1 3 Aが単語予備選択処理 を開始するタイミングと、 単語予備選択部 1 3 Bが単語予備選択処理を開始する タイミングとを、 異なる条件で制限するようになっている。
即ち、 単語接続関係管理部 2 2は、 単語予備選択部 1 3 Aが単語予備選択処理 を開始するタイミングの間隔を、 比較的長くなるように制限するとともに、 単語 予備選択部 1 3 Aが単語予備選択処理を開始するタイミングの間隔を、 比較的短 くなるように制限する。
この場合、 単語予備選択処理において、 音韻数の短い単語の検出漏れが生じる ことを防止して、 処理効率を向上させることができる。
即ち、 単語予備選択処理を開始するタイミングを、 その間隔が長くなるように 制限した場合、 単語予備選択処理のコストは低減する。 しかしながら、 例えば、 助詞等の音韻数が短い単語は、 一般に、 その発話時間も短いことから、 このよう な単語については、 単語予備選択処理を開始するタイミングを、 その間隔が長く なるように制限すると、 そのタイミングと、 単語の発話開始時刻とのずれが、 そ の単語の発話時間に対して大きくなりやすくなり、 その結果、 単語予備選択処理 において、 検出されにくくなる。 一方、 音韻数が多く、 発話時間が長い単語は、 一般に、 その発話時間も長いことから、 このような単語については、 単語予備選 択処理を開始するタイミングを、 その間隔が長くなるように制限しても、 その夕 イミングと、 単語の発話開始時刻とのずれが、 その単語の発話時間に対して、 そ れほど大きくはならず、 その結果、 単語予備選択処理においても、 それほど検出 されにくくなることはない。
従って、 上述のように、 音韻数の短い単語については、 単語予備選択処理を開 始するタイミングを、 その間隔が短くなるようにするとともに、 音韻数の長い単 語については、 単語予備選択処理を開始するタイミングを、 その間隔が長くなる ようにすることで、 音韻数の短い単語の検出漏れによる認識性能の劣化を防止し ながら、 処理効率を向上させることができる。
なお、 図 1 6の実施の形態においては、 辞書データベース 1 8 Aに登録されて いる単語を 2つのカテゴリに分け、 2つの単語予備選択部 1 3 Aおよび 1 3 Bを 設けるようにしたが、 単語を分類するカテゴリ数、 および単語予備選択部の数は、 3以上とすることが可能である。
また、 図 1 6の実施の形態では、 単語を、 その音韻数によって分類するように したが、 その他、 例えば、 単語が発話されるときの平均時間を求め、 その平均時 間によつて、 単語を分類することも可能である。 さらに、 単語を、 その重要度に 基づいて分類し、 重要度の高いものほど、 単語予備選択処理を開始するタイミン グの間隔が短くなるにすることも可能である。 ここで、 単語の重要度は、 例えば、 各単語の使用頻度や発話履歴等の情報を収集し、 その情報に基づいて設定するこ とが可能である。
次に、 図 1 7は、 本発明を適用した音声認識装置の第 4実施の形態の構成例を 示している。 なお、 図中、 図 3、 図 7、 または図 1 2における場合と対応する部 分については、 同一の符号を付してあり、 以下では、 その説明は、 適宜省略する 即ち、 図 1 7の音声認識装置は、 図 7の単語接続関係管理部 2 1と図 1 2の単語 接続関係管理部 2 2が新たに設けられている他は、 基本的に、 図 3における場合 と同様に構成されている。
従って、 図 1 7の実施の形態では、 単語接続関係管理部 2 1において、 単語接 続情報として記憶される終端ノードの位置が制限されるとともに、 単語接続関係 管理部 2 2において、 単語予備選択処理の開始タイミングが制限される。
即ち、 図 8 (A) と同様の図 1 8 (A) に示すように、 特徴抽出部 3において 特徴量が得られるタイミングの間隔が、 時間 Tsである場合において、 単語接続 関係管理部 2 1は、 終端ノードの位置を、 例えば、 図 1 8 ( B ) に示すように、 時間 2 TSごとのタイミングに制限する。 さらに、 単語接続関係管理部 2 2は、 単語予備選択処理の開始タイミングを、 例えば、 図 1 8 ( C ) に示すように、 時 間 4 Tsごとのタイミングに制限する。
この場合、 単語接続関係管理部 2 1において、 終端ノードの位置が、 時間 2 T sごとのタイミングに制限されることから、 マッチング部 1 4においては、 時間 2 Tsごとのタイミングで、 単語予備選択処理が要求されうる。 しかしながら、 単語予備選択処理の開始タイミングは、 単語接続関係管理部 2 2において、 時間 4 Tsごとのタイミングに制限される。
従って、 この場合も、 終端ノードの位置がとり得る位置の中に、 予備選択処理 の開始タイミングとしてとり得ない位置 (不許可位置) が存在する。 そこで、 単 語接続関係管理部 2 2は、 不許可位置を開始時刻とする単語予備選択処理の要求 については、 図 1 8 (D ) に示すように、 許可位置 (ここでは、 時間 4 TSごと のタイミング) を開始時刻とする単語予備選択処理の処理結果によって補完を行 うようになっている。
次に、 図 1 9のフローチャートを参照して、 図 1 7の音声認識装置による音声 認識処理について説明する。
図 1 7の音声認識装置では、 ステップ S 5 1乃至 S 5 4において、 図 5のステ ップ S 1乃至 S 4における場合とそれぞれ同様の処理が行われる。
そして、 ステップ S 5 4において、 図 5のステップ S 4で説明したように、 再 評価部 1 5が、 単語接続情報記憶部 1 6の単語接続情報を修正し、 マッチング部 1 4が、 その修正が終了した旨を、 制御部 1 1を介して受信すると、 マッチング 部 1 4は、 上述したように、 注目ノード、 およびそれが有する時刻情報を、 単語 予備選択処理の要求とともに出力する。
マツチング部 1 4が注目ノードおよび時刻情報とともに出力する単語予備選択 処理の要求は、 単語接続関係管理部 2 2で受信される。
単語接続関係管理部 2 2は、 単語予備選択処理の要求を受信すると、 ステップ S 5 5において、 マッチング部 1 4からの単語予備選択処理の要求が、 許可位置 を開始時刻とするものであるかどうかを判定する。 ステップ S 5 5において、 単 語予備選択処理の要求が、 許可位置を開始時刻とするものであると判定された場 合、 単語接続関係管理部 2 2は、 その単語予備選択処理の要求を、 単語予備選択 部 1 3に供給して、 ステップ S 5 6に進む。 ステップ S 5 6では、 図 5のステツ プ S 5における場合と同様にして、 単語予備選択部 1 3が単語予備選択処理を行 い、 その結果得られる単語 (選択単語) を、 単語接続関係管理部 2 2に供給する。 単語接続関係管理部 2 2は、 単語予備選択部 1 3からの選択単語 (これは、 許可 位置を開始時刻とするもの) を一時記憶するとともに、 単語予備選択結果として、 マッチング部 1 4に供給し、 ステップ S 5 8に進む。
一方、 ステップ S 5 5において、 単語予備選択処理の要求が、 許可位置を開始 時刻とするものでないと判定された場合、 即ち、 不許可位置を開始時刻とするも のである場合、 ステップ S 5 7に進み、 単語接続関係管理部 2 2は、 不許可位置 の前後の許可位置を開始時刻とする単語予備選択結果を、 単語予備選択部 1 3か ら既に得ている単語予備選択結果の中から得て、 それを、 不許可位置を開始時刻 とする単語予備選択結果として補完する。 そして、 単語接続関係管理部 2 2は、 その補完によって得られた不許可位置を開始時刻とする単語予備選択結果を、 マ ツチング部 1 4に供給し、 ステップ S 5 8に進む。
ステップ S 5 8では、 図 5のステップ S 6で説明したように、 マッチング部 1 4が、 単語予備選択部 1 3からの単語予備選択結果としての選択単語すべてにつ いて、 それぞれの音響スコアおよび言語スコアを求め、 ステップ S 5 9に進み、 マッチング部 1 4は、 式 (2 ) にしたがい、 各単語の音響スコアと言語スコアを、 他の時刻を終了時刻とする同一単語の音響スコアと言語スコアによって、 それぞ れ補正する。 さらに、 マッチング部 1 4は、 補正後の音響スコアと言語スコアか ら、 補正後の単語スコア (補正スコア) を計算する。 そして、 マッチング部 1 4 は、 ステップ S 6 0に進み、 その補正スコアによって、 単語の絞り込みを行い、 これにより、 単語の境界位置の候補を、 特に位置を制限することなく決定 (仮決 定) する。
その後、 マッチング部 1 4は、 ステップ S 6 0における絞り込みの結果残った 単語を、 その音響スコア、 言語スコア、 およびその単語の終了時刻とともに、 制 御部 1 1に供給する。
制御部 1 1は、 上述のようにしてマッチング部 1 4から供給される単語の音響 スコア、 言語スコア、 および終了時刻を受信すると、 そのうちの各単語について の終了時刻を、 単語接続関係管理部 2 1に供給する。
単語接続関係管理部 2 1は、 ステップ S 6 1において、 単語の境界候補となつ ている終了時刻を、 新ノード記憶タイミングで間引き、 即ち、 新ノード記憶タイ ミングの位置にない終了時刻を削除し、 残った終了時刻を、 単語の境界候補とな る時刻として、 最終的に決定する。 単語接続関係管理部 2 1は、 このようにして 最終的に残った終了時刻を、 制御部 1 1に返し、 制御部 1 1は、 ステップ S 6 2 において、 図 5のステップ S 7で説明した場合と同様に、 単語接続関係管理部 2 1から終了時刻が返された単語に関して、 単語接続情報記憶部 1 6に記憶された 単語接続情報を、 単語接続関係管理部 2 1を介して更新する。
その後は、 ステップ S 5 2に戻り、 以下、 同様の処理が繰り返される。
そして、 ステップ S 5 2において、 途中ノードが存在しないと判定されると、 ステップ S 6 3に進み、 図 5のステップ S 8における場合と同様に、 制御部 1 1 は、 単語接続情報を参照することで、 ユーザの発話に対する音声認識結果を確定 して出力し、 処理を終了する。
以上のように、 単語接続関係管理部 2 1と 2 2の両方によってタイミングを制 限する場合には、 認識性能を維持しながら、 処理効率を、 より向上させることが できる。
即ち、 本件発明者が行ったシミュレーションによれば、 単語接続関係管理部 2 1において、 単語接続情報として記憶される終端ノードの位置を、 時間 4 TSご との時刻に制限するとともに、 単語接続関係管理部 2 2において、 単語予備選択 処理の開始タイミングを、 時間 8 Tsごとの時刻に制限した場合において、 その ような制限を行わない場合の認識率をほぼ維持しながら、 演算量を約 1 5 %低減 することができた。
ここで、 図 1 8の実施の形態においては、 単語接続関係管理部 2 2による制限 のタイミングを、 単語接続関係管理部 2 1による制限のタイミングの 2倍の時間 間隔に同期させるようにしたが、 単語接続関係管理部 2 1と 2 2によるタイミン グの制限は、 独立に行うことが可能である。 また、 単語接続関係管理部 2 1によ つて制限するタイミングの間隔は、 固定である必要はなく、 可変にすることが可 能である。 単語接続関係管理部 2 2によって制限するタイミングの間隔について も同様である。
なお、 上述した各実施の形態における音声認識装置は、 例えば、 音声によって データベースの検索を行う場合や、 各種の機器の操作を行う場合、 各機器へのデ —夕入力を行う場合、 音声対話システム等に適用可能である。 より具体的には、 例えば、 音声による地名の問合せに対して、 対応する地図情報を表示するデータ ベース検索装置や、 音声による命令に対して、 荷物の仕分けを行う産業用ロポッ ト、 キ一ポ一ドの代わりに音声入力によりテキスト作成を行うディクテーシヨン システム、 ユーザとの会話を行うロボッ卜における対話システム等に適用可能で ある。
次に、 上述した一連の処理は、 ハードウェアにより行うこともできるし、 ソフ トウエアにより行うこともできる。 一連の処理をソフトウェアによって行う場合 には、 そのソフトウェアを構成するプログラムが、 汎用のコンピュータ等にイン ストールされる。
そこで、 図 20は、 上述した一連の処理を実行するプログラムがインストール されるコンピュータの一実施の形態の構成例を示している。
プログラムは、 コンピュータに内蔵されている記録媒体としてのハードデイス ク 1 05や ROM103に予め記録しておくことができる。
あるいはまた、 プログラムは、 フロッピーディスク、 CD-ROM (Compact Disc Re ad Only Memory) , MO (Magneto Opt ical)ディスク, DVD (Digi tal Versatile Dis c)、 磁気ディスク、 半導体メモリなどのリムーバブル記録媒体 1 1 1に、 一時的 あるいは永続的に格納 (記録) しておくことができる。 このようなリムーバブル 記録媒体 1 1 1は、 いわゆるパッケージソフトウェアとして提供することができ る。
なお、 プログラムは、 上述したようなリムーバブル記録媒体 1 1 1からコンビ ユー夕にインスト一ルする他、 ダウンロードサイトから、 ディジタル衛星放送用 の人工衛星を介して、 コンピュータに無線で転送したり、 LAN(Local Area Netwo rk)、 イン夕一ネットといったネットワークを介して、 コンピュータに有線で転 送し、 コンピュータでは、 そのようにして転送されてくるプログラムを、 通信部 108で受信し、 内蔵するハードディスク 105にインストールすることができ る。
コンピュータは、 CPlKCentral Processing Uni t) 102を内蔵している。 CPU 102には、 バス 10 1を介して、 入出力ィン夕フェース 1 10が接続されてお り、 CPU1 02は、 入出力インタフェース 1 1 0を介して、 ュ一ザによって、 キ 一ボードや、 マウス、 マイク等で構成される入力部 1 0 7が操作等されることに より指令が入力されると、 それにしたがって、 R0M (Read On l y Memory) 1 0 3に 格納されているプログラムを実行する。 あるいは、 また、 CPU 1 0 2は、 ハード ディスク 1 0 5に格納されているプログラム、 衛星若しくはネットワークから転 送され、 通信部 1 0 8で受信されてハードディスク 1 0 5にインストールされた プログラム、 またはドライブ 1 0 9に装着されたリム一バブル記録媒体 1 1 1か ら読み出されてハードディスク 1 0 5にィンストールされたプログラムを、 RAM (Random Acces s Memory) 1 0 4にロードして実行する。 これにより、 CPU 1 0 2 は、 上述したフローチャートにしたがった処理、 あるいは上述したブロック図の 構成により行われる処理を行う。 そして、 CPU 1 0 2は、 その処理結果を、 必要 に応じて、 例えば、 入出力インタフェース 1 1 0を介して、 LCD (L i qu i d Crys t a l D i sp l ay)やスピーカ等で構成される出力部 1 0 6から出力、 あるいは、 通信部 1 0 8から送信、 さらには、 ハードディスク 1 0 5に記録等させる。
ここで、 本明細書において、 コンピュータに各種の処理を行わせるためのプロ グラムを記述する処理ステップは、 必ずしもフローチャートとして記載された順 序に沿って時系列に処理する必要はなく、 並列的あるいは個別に実行される処理 (例えば、 並列処理あるいはオブジェクトによる処理) も含むものである。
また、 プログラムは、 1のコンピュータにより処理されるものであっても良い し、 複数のコンピュータによって分散処理されるものであっても良い。 さらに、 プログラムは、 遠方のコンピュータに転送されて実行されるものであっても良い 産業上の利用可能性
本発明の第 1の音声認識装置および音声認識方法、 並びに記録媒体によれば、 音声認識の対象となっている単語について、 スコアが計算され、 そのスコアに基 づいて、 音声認識結果の候補となる単語列が構成される。 さらに、 音声認識結果 の候補となる単語列の単語どうしの接続関係が修正され、 その修正後の接続関係 に基づいて、 音声認識結果となる単語列が確定される。 この場合において、 音声 認識結果の候補となる単語列の単語どうしの接続関係によって表される単語の境 界位置が制限される。 従って、 処理効率を向上させることが可能となる。
本発明の第 2の音声認識装置および音声認識方法、 並びに記録媒体によれば、 音声認識の対象となっている単語群から、 音声認識結果の候補となる単語列の、 既に求まっている単語に続く 1以上の単語が選択され、 その選択された単語につ いて、 スコアが計算される。 さらに、 そのスコアに基づいて、 音声認識結果の候 補となる単語列が構成され、 その中から、 音声認識結果となる単語列が確定され る。 この場合において、 音声認識の対象となっている単語群から選択される単語 の開始位置が制限される。 従って、 処理効率を向上させることが可能となる。

Claims

請求の範囲
1 . 入力された音声に対して、 その音声認識結果の尤度を表すスコアを計算し、 そのスコアに基づいて、 前記音声を認識する音声認識装置であって、
音声認識の対象となっている単語について、 前記スコアを計算し、 そのスコア に基づいて、 前記音声認識結果の候補となる単語列を構成する構成手段と、 前記音声認識結果の候補となる単語列の単語どうしの接続関係を記憶する記憶 手段と、
前記記憶手段に記憶された前記接続関係を修正する修正手段と、
修正後の前記接続関係に基づいて、 前記音声認識結果となる単語列を確定する 確定手段と、
前記記憶手段に記憶される前記接続関係によって表される単語の境界位置を制 限する単語境界制限手段と
を備えることを特徴とする音声認識装置。
2 . 前記構成手段は、 入力された音声の特徴量を抽出する抽出手段から供給さ れる前記特徴量に基づいて、 前記スコアを計算し、
前記単語境界制限手段は、 前記特徴量が供給されるタイミングを間引いたタイ ミングに、 前記単語の境界位置を制限する
ことを特徴とする請求の範囲第 1項に記載の音声認識装置。
3 . 前記構成手段が計算した前記単語のスコアを補正するスコア補正手段と、 その補正後のスコアに基づいて、 前記音声認識結果の候補となる単語列の単語 の境界位置の候補を仮決定する仮決定手段と
をさらに備え、
前記単語境界制限手段は、 前記仮決定手段において得られた前記単語の境界位 置の候補を対象として、 前記単語の境界位置を制限する
ことを特徴とする請求の範囲第 1項に記載の音声認識装置。
4 . 前記スコア補正手段は、 所定の境界位置を境界とする単語のスコアを、 そ の境界位置に近い他の境界位置を境界とする単語のスコアに補正する ことを特徴とする請求の範囲第 3項に記載の音声認識装置。
5 . 音声認識の対象となっている単語群から、 前記音声認識結果の候補となる 単語列の、 既に求まっている単語に続く 1以上の単語を選択する選択手段をさら に備え、
前記構成手段は、 前記選択手段において選択された単語を対象に、 前記スコア を計算する
ことを特徴とする請求の範囲第 1項に記載の音声認識装置。
6 . 前記選択手段において選択される単語の開始位置を制限する開始位置制限 手段をさらに備える
ことを特徴とする請求の範囲第 5項に記載の音声認識装置。
7 . 前記構成手段は、 入力された音声の特徴量を抽出する抽出手段から供給さ れる前記特徴量に基づいて、 前記スコアを計算し、
前記開始位置制限手段は、 前記特徴量が供給されるタイミングを間引いたタイ ミングに、 前記単語の開始位置を制限する
ことを特徴とする請求の範囲第 6項に記載の音声認識装置。
8 . 前記開始位置制限手段は、 前記単語境界制御手段によって制限された単語 の境界位置としてとり得る位置を間引いた位置に、 単語の開始位置を制限する ことを特徴とする請求の範囲第 6項に記載の音声認識装置。
9 . 前記開始位置制限手段によって前記単語の開始位置とすることが許可され ていない不許可位置を開始位置とする単語であって、 前記構成手段において前記 スコアの計算の対象とするものを補完する補完手段をさらに備える
ことを特徴とする請求の範囲第 6項に記載の音声認識装置。
1 0 . 前記補完手段は、 前記開始位置制限手段によって前記単語の開始位置と することが許可されている許可位置であって、 前記不許可位置に近い位置を開始 位置とする単語によって、 その不許可位置を開始位置とする単語を補完する ことを特徴とする請求の範囲第 9項に記載の音声認識装置。
1 1 . 前記補完手段は、 前記許可位置に対して、 前記不許可位置からの距離に 応じた重みを付し、 その重みに基づいて、 前記不許可位置を開始位置とする単語 を補完する
ことを特徴とする請求の範囲第 1 0項に記載の音声認識装置。
1 2 . 音声認識の対象となっている単語群は、 2以上のカテゴリに分類されて おり、
前記選択手段は、 各カテゴリごとの単語群から、 単語を選択し、
前記開始位置制限手段は、 前記選択手段において選択される単語の開始位置を, 前記カテゴリごとに異なる条件にしたがって制限する
ことを特徴とする請求の範囲第 6項に記載の音声認識装置。
1 3 . 入力された音声に対して、 その音声認識結果の尤度を表すスコアを計算 し、 そのスコアに基づいて、 前記音声を認識する音声認識方法であって、
音声認識の対象となっている単語について、 前記スコアを計算し、 そのスコア に基づいて、 前記音声認識結果の候補となる単語列を構成する構成ステップと、 前記音声認識結果の候補となる単語列の単語どうしの接続関係を記憶する記憶 ステップと、
前記記憶ステップにおいて記憶された前記接続関係を修正する修正ステップと、 修正後の前記接続関係に基づいて、 前記音声認識結果となる単語列を確定する 確定ステップと、
前記記憶ステップにおいて記憶される前記接続関係によって表される単語の境 界位置を制限する単語境界制限ステップと
を備えることを特徴とする音声認識方法。
1 4 . 入力された音声に対して、 その音声認識結果の尤度を表すスコアを計算 し、 そのスコアに基づいて、 前記音声を認識する音声認識処理を、 コンピュータ に行わせるプログラムが記録されている記録媒体であって、
音声認識の対象となっている単語について、 前記スコアを計算し、 そのスコア に基づいて、 前記音声認識結果の候補となる単語列を構成する構成ステップと、 前記音声認識結果の候補となる単語列の単語どうしの接続関係を記憶する記憶 ステップと、
前記記憶ステップにおいて記憶された前記接続関係を修正する修正ステップと, 修正後の前記接続関係に基づいて、 前記音声認識結果となる単語列を確定する 確定ステップと、
前記記憶ステップにおいて記憶される前記接続関係によって表される単語の境 界位置を制限する単語境界制限ステップと
を備えるプログラムが記録されている
ことを特徴とする記録媒体。
1 5 . 入力された音声に対して、 その音声認識結果の尤度を表すスコアを計算 し、 そのスコアに基づいて、 前記音声を認識する音声認識装置であって、
音声認識の対象となっている単語群から、 前記音声認識結果の候補となる単語 列の、 既に求まっている単語に続く 1以上の単語を選択する選択手段と、
前記選択手段において選択された単語について、 前記スコアを計算し、 そのス コアに基づいて、 前記音声認識結果の候補となる単語列を構成する構成手段と、 前記音声認識結果の候補となる単語列の中から、 前記音声認識結果となる単語 列を確定する確定手段と、
前記選択手段において選択される単語の開始位置を制限する開始位置制限手段 と
を備えることを特徴とする音声認識装置。
1 6 . 前記構成手段は、 入力された音声の特徴量を抽出する抽出手段から供給 される前記特徴量に基づいて、 前記スコアを計算し、
前記開始位置制限手段は、 前記特徴量が供給されるタイミングを間引いたタイ ミングに、 前記単語の開始位置を制限する
ことを特徴とする請求の範囲第 1 5項に記載の音声認識装置。
1 7 . 前記開始位置制限手段によって前記単語の開始位置とすることが許可さ れていない不許可位置を開始位置とする単語であって、 前記構成手段において前 記スコアの計算の対象とするものを補完する補完手段をさらに備える ことを特徴とする請求の範囲第 1 5項に記載の音声認識装置。
1 8 . 前記補完手段は、 前記開始位置制限手段によって前記単語の開始位置と することが許可されている許可位置であって、 前記不許可位置に近い位置を開始 位置とする単語によって、 その不許可位置を開始位置とする単語を補完する
ことを特徴とする請求の範囲第 1 7項に記載の音声認識装置。
1 9 . 前記補完手段は、 前記許可位置に対して、 前記不許可位置からの距離に 応じた重みを付し、 その重みに基づいて、 前記不許可位置を開始位置とする単語 を補完する
ことを特徴とする請求の範囲第 1 8項に記載の音声認識装置。
2 0 . 音声認識の対象となっている単語群は、 2以上のカテゴリに分類されて おり、
前記選択手段は、 各カテゴリごとの単語群から、 単語を選択し、
前記開始位置制限手段は、 前記選択手段において選択される単語の開始位置を、 前記カテゴリごとに異なる条件にしたがって制限する
ことを特徴とする請求の範囲第 1 5項に記載の音声認識装置。
2 1 . 前記音声認識結果の候補となる単語列の単語どうしの接続関係を記憶す る記憶手段と、
前記接続関係を修正する修正手段と
をさらに備え、
前記確定手段は、 修正後の前記接続関係に基づいて、 前記音声認識結果となる 単語列を確定する
ことを特徴とする請求の範囲第 1 5項に記載の音声認識装置。
2 2 . 入力された音声に対して、 その音声認識結果の尤度を表すスコアを計算 し、 そのスコアに基づいて、 前記音声を認識する音声認識方法であって、
音声認識の対象となっている単語群から、 前記音声認識結果の候補となる単語 列の、 既に求まっている単語に続く 1以上の単語を選択する選択ステップと、 前記選択ステップにおいて選択された単語について、 前記スコアを計算し、 そ のスコアに基づいて、 前記音声認識結果の候補となる単語列を構成する構成ステ ップと、
前記音声認識結果の候補となる単語列の中から、 前記音声認識結果となる単語 列を確定する確定ステップと、
前記選択ステップにおいて選択される単語の開始位置を制限する開始位置制限 ステップと
を備えることを特徴とする音声認識方法。
2 3 . 入力された音声に対して、 その音声認識結果の尤度を表すスコアを計算 し、 そのスコアに基づいて、 前記音声を認識する音声認識処理を、 コンピュータ に行わせるプログラムが記録されている記録媒体であつて、
音声認識の対象となっている単語群から、 前記音声認識結果の候補となる単語 列の、 既に求まっている単語に続く 1以上の単語を選択する選択ステップと、 前記選択ステップにおいて選択された単語について、 前記スコアを計算し、 そ のスコアに基づいて、 前記音声認識結果の候補となる単語列を構成する構成ステ ップと、
前記音声認識結果の候補となる単語列の中から、 前記音声認識結果となる単語 列を確定する確定ステップと、
前記選択ステップにおいて選択される単語の開始位置を制限する開始位置制限 ステップと
を備えるプログラムが記録されている
ことを特徴とする記録媒体。
PCT/JP2001/009711 2000-11-07 2001-11-07 Dispositif de reconnaissance vocale WO2002039426A1 (fr)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US10/416,092 US7240002B2 (en) 2000-11-07 2001-11-07 Speech recognition apparatus

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2000338458A JP2002149187A (ja) 2000-11-07 2000-11-07 音声認識装置および音声認識方法、並びに記録媒体
JP2000-338458 2000-11-07

Publications (1)

Publication Number Publication Date
WO2002039426A1 true WO2002039426A1 (fr) 2002-05-16

Family

ID=18813665

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2001/009711 WO2002039426A1 (fr) 2000-11-07 2001-11-07 Dispositif de reconnaissance vocale

Country Status (3)

Country Link
US (1) US7240002B2 (ja)
JP (1) JP2002149187A (ja)
WO (1) WO2002039426A1 (ja)

Families Citing this family (147)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8645137B2 (en) 2000-03-16 2014-02-04 Apple Inc. Fast, language-independent method for user authentication by voice
JP2002149187A (ja) * 2000-11-07 2002-05-24 Sony Corp 音声認識装置および音声認識方法、並びに記録媒体
US7389228B2 (en) * 2002-12-16 2008-06-17 International Business Machines Corporation Speaker adaptation of vocabulary for speech recognition
US7324940B1 (en) * 2003-02-28 2008-01-29 Lumen Vox, Llc Speech recognition concept confidence measurement
US7873149B2 (en) 2004-06-01 2011-01-18 Verizon Business Global Llc Systems and methods for gathering information
US8392193B2 (en) * 2004-06-01 2013-03-05 Verizon Business Global Llc Systems and methods for performing speech recognition using constraint based processing
JP4541781B2 (ja) * 2004-06-29 2010-09-08 キヤノン株式会社 音声認識装置および方法
JP4595415B2 (ja) * 2004-07-14 2010-12-08 日本電気株式会社 音声検索システムおよび方法ならびにプログラム
US8924212B1 (en) 2005-08-26 2014-12-30 At&T Intellectual Property Ii, L.P. System and method for robust access and entry to large structured data using voice form-filling
US8677377B2 (en) 2005-09-08 2014-03-18 Apple Inc. Method and apparatus for building an intelligent automated assistant
KR100654183B1 (ko) * 2005-11-07 2006-12-08 한국전자통신연구원 음성 인식을 이용한 문자 입력 시스템 및 그 방법
US9318108B2 (en) 2010-01-18 2016-04-19 Apple Inc. Intelligent automated assistant
US7856503B2 (en) * 2006-10-19 2010-12-21 International Business Machines Corporation Method and apparatus for dynamic content generation
US8977255B2 (en) 2007-04-03 2015-03-10 Apple Inc. Method and system for operating a multi-function portable electronic device using voice-activation
US8407051B2 (en) * 2007-07-02 2013-03-26 Mitsubishi Electric Corporation Speech recognizing apparatus
KR100925479B1 (ko) * 2007-09-19 2009-11-06 한국전자통신연구원 음성 인식 방법 및 장치
US8103503B2 (en) * 2007-11-01 2012-01-24 Microsoft Corporation Speech recognition for determining if a user has correctly read a target sentence string
US9330720B2 (en) 2008-01-03 2016-05-03 Apple Inc. Methods and apparatus for altering audio output signals
US8996376B2 (en) 2008-04-05 2015-03-31 Apple Inc. Intelligent text-to-speech conversion
US10496753B2 (en) 2010-01-18 2019-12-03 Apple Inc. Automatically adapting user interfaces for hands-free interaction
US20100030549A1 (en) 2008-07-31 2010-02-04 Lee Michael M Mobile device having human language translation capability with positional feedback
US9959870B2 (en) 2008-12-11 2018-05-01 Apple Inc. Speech recognition involving a mobile device
KR101587866B1 (ko) * 2009-06-03 2016-01-25 삼성전자주식회사 음성 인식용 발음사전 확장 장치 및 방법
US10241752B2 (en) 2011-09-30 2019-03-26 Apple Inc. Interface for a virtual digital assistant
US9858925B2 (en) 2009-06-05 2018-01-02 Apple Inc. Using context information to facilitate processing of commands in a virtual assistant
US10706373B2 (en) 2011-06-03 2020-07-07 Apple Inc. Performing actions associated with task items that represent tasks to perform
US10241644B2 (en) 2011-06-03 2019-03-26 Apple Inc. Actionable reminder entries
US9431006B2 (en) 2009-07-02 2016-08-30 Apple Inc. Methods and apparatuses for automatic speech recognition
US10705794B2 (en) 2010-01-18 2020-07-07 Apple Inc. Automatically adapting user interfaces for hands-free interaction
US10276170B2 (en) 2010-01-18 2019-04-30 Apple Inc. Intelligent automated assistant
US10679605B2 (en) 2010-01-18 2020-06-09 Apple Inc. Hands-free list-reading by intelligent automated assistant
US10553209B2 (en) 2010-01-18 2020-02-04 Apple Inc. Systems and methods for hands-free notification summaries
WO2011089450A2 (en) 2010-01-25 2011-07-28 Andrew Peter Nelson Jerram Apparatuses, methods and systems for a digital conversation management platform
US8682667B2 (en) 2010-02-25 2014-03-25 Apple Inc. User profiling for selecting user specific voice input processing information
US20110224982A1 (en) * 2010-03-12 2011-09-15 c/o Microsoft Corporation Automatic speech recognition based upon information retrieval methods
DE102010012622B4 (de) * 2010-03-24 2015-04-30 Siemens Medical Instruments Pte. Ltd. Binaurales Verfahren und binaurale Anordnung zur Sprachsteuerung von Hörgeräten
WO2011149465A1 (en) * 2010-05-27 2011-12-01 Nuance Communications, Inc. Efficient exploitation of model complementariness by low confidence re-scoring in automatic speech recognition
US9262397B2 (en) 2010-10-08 2016-02-16 Microsoft Technology Licensing, Llc General purpose correction of grammatical and word usage errors
US9262612B2 (en) 2011-03-21 2016-02-16 Apple Inc. Device access using voice authentication
US10057736B2 (en) 2011-06-03 2018-08-21 Apple Inc. Active transport based notifications
US8855997B2 (en) * 2011-07-28 2014-10-07 Microsoft Corporation Linguistic error detection
KR20130014893A (ko) * 2011-08-01 2013-02-12 한국전자통신연구원 음성 인식 장치 및 방법
US8994660B2 (en) 2011-08-29 2015-03-31 Apple Inc. Text correction processing
US20130073286A1 (en) * 2011-09-20 2013-03-21 Apple Inc. Consolidating Speech Recognition Results
US9691381B2 (en) * 2012-02-21 2017-06-27 Mediatek Inc. Voice command recognition method and related electronic device and computer-readable medium
US10134385B2 (en) 2012-03-02 2018-11-20 Apple Inc. Systems and methods for name pronunciation
US9483461B2 (en) 2012-03-06 2016-11-01 Apple Inc. Handling speech synthesis of content for multiple languages
US9280610B2 (en) 2012-05-14 2016-03-08 Apple Inc. Crowd sourcing information to fulfill user requests
US9721563B2 (en) 2012-06-08 2017-08-01 Apple Inc. Name recognition system
US9495129B2 (en) 2012-06-29 2016-11-15 Apple Inc. Device, method, and user interface for voice-activated navigation and browsing of a document
US9576574B2 (en) 2012-09-10 2017-02-21 Apple Inc. Context-sensitive handling of interruptions by intelligent digital assistant
US9547647B2 (en) 2012-09-19 2017-01-17 Apple Inc. Voice-based media searching
JPWO2014049998A1 (ja) * 2012-09-27 2016-08-22 日本電気株式会社 情報検索システム、情報検索方法およびプログラム
WO2014050981A1 (ja) * 2012-09-27 2014-04-03 日本電気株式会社 テキスト情報監視用辞書作成装置、テキスト情報監視用辞書作成方法、及び、テキスト情報監視用辞書作成プログラム
EP2954514B1 (en) 2013-02-07 2021-03-31 Apple Inc. Voice trigger for a digital assistant
US9368114B2 (en) 2013-03-14 2016-06-14 Apple Inc. Context-sensitive handling of interruptions
AU2014233517B2 (en) 2013-03-15 2017-05-25 Apple Inc. Training an at least partial voice command system
WO2014144579A1 (en) 2013-03-15 2014-09-18 Apple Inc. System and method for updating an adaptive speech recognition model
US9582608B2 (en) 2013-06-07 2017-02-28 Apple Inc. Unified ranking with entropy-weighted information for phrase-based semantic auto-completion
WO2014197334A2 (en) 2013-06-07 2014-12-11 Apple Inc. System and method for user-specified pronunciation of words for speech synthesis and recognition
WO2014197336A1 (en) 2013-06-07 2014-12-11 Apple Inc. System and method for detecting errors in interactions with a voice-based digital assistant
WO2014197335A1 (en) 2013-06-08 2014-12-11 Apple Inc. Interpreting and acting upon commands that involve sharing information with remote devices
US10176167B2 (en) 2013-06-09 2019-01-08 Apple Inc. System and method for inferring user intent from speech inputs
DE112014002747T5 (de) 2013-06-09 2016-03-03 Apple Inc. Vorrichtung, Verfahren und grafische Benutzerschnittstelle zum Ermöglichen einer Konversationspersistenz über zwei oder mehr Instanzen eines digitalen Assistenten
KR101809808B1 (ko) 2013-06-13 2017-12-15 애플 인크. 음성 명령에 의해 개시되는 긴급 전화를 걸기 위한 시스템 및 방법
CN103399906B (zh) * 2013-07-29 2015-07-29 百度在线网络技术(北京)有限公司 在进行输入时基于社会关系提供候选词的方法和装置
JP6235280B2 (ja) * 2013-09-19 2017-11-22 株式会社東芝 音声同時処理装置、方法およびプログラム
US9620105B2 (en) 2014-05-15 2017-04-11 Apple Inc. Analyzing audio input for efficient speech and music recognition
US10592095B2 (en) 2014-05-23 2020-03-17 Apple Inc. Instantaneous speaking of content on touch devices
US9502031B2 (en) 2014-05-27 2016-11-22 Apple Inc. Method for supporting dynamic grammars in WFST-based ASR
US9715875B2 (en) 2014-05-30 2017-07-25 Apple Inc. Reducing the need for manual start/end-pointing and trigger phrases
AU2015266863B2 (en) 2014-05-30 2018-03-15 Apple Inc. Multi-command single utterance input method
US10170123B2 (en) 2014-05-30 2019-01-01 Apple Inc. Intelligent assistant for home automation
US9633004B2 (en) 2014-05-30 2017-04-25 Apple Inc. Better resolution when referencing to concepts
US10289433B2 (en) 2014-05-30 2019-05-14 Apple Inc. Domain specific language for encoding assistant dialog
US9430463B2 (en) 2014-05-30 2016-08-30 Apple Inc. Exemplar-based natural language processing
US9842101B2 (en) 2014-05-30 2017-12-12 Apple Inc. Predictive conversion of language input
US9785630B2 (en) 2014-05-30 2017-10-10 Apple Inc. Text prediction using combined word N-gram and unigram language models
US9734193B2 (en) 2014-05-30 2017-08-15 Apple Inc. Determining domain salience ranking from ambiguous words in natural speech
US9760559B2 (en) 2014-05-30 2017-09-12 Apple Inc. Predictive text input
US10078631B2 (en) 2014-05-30 2018-09-18 Apple Inc. Entropy-guided text prediction using combined word and character n-gram language models
US9338493B2 (en) 2014-06-30 2016-05-10 Apple Inc. Intelligent automated assistant for TV user interactions
US10659851B2 (en) 2014-06-30 2020-05-19 Apple Inc. Real-time digital assistant knowledge updates
US10446141B2 (en) 2014-08-28 2019-10-15 Apple Inc. Automatic speech recognition based on user feedback
US9818400B2 (en) 2014-09-11 2017-11-14 Apple Inc. Method and apparatus for discovering trending terms in speech requests
US10789041B2 (en) 2014-09-12 2020-09-29 Apple Inc. Dynamic thresholds for always listening speech trigger
US9668121B2 (en) 2014-09-30 2017-05-30 Apple Inc. Social reminders
US10074360B2 (en) 2014-09-30 2018-09-11 Apple Inc. Providing an indication of the suitability of speech recognition
US9646609B2 (en) 2014-09-30 2017-05-09 Apple Inc. Caching apparatus for serving phonetic pronunciations
US9886432B2 (en) 2014-09-30 2018-02-06 Apple Inc. Parsimonious handling of word inflection via categorical stem + suffix N-gram language models
US10127911B2 (en) 2014-09-30 2018-11-13 Apple Inc. Speaker identification and unsupervised speaker adaptation techniques
US10552013B2 (en) 2014-12-02 2020-02-04 Apple Inc. Data detection
US9711141B2 (en) 2014-12-09 2017-07-18 Apple Inc. Disambiguating heteronyms in speech synthesis
US9865280B2 (en) 2015-03-06 2018-01-09 Apple Inc. Structured dictation using intelligent automated assistants
US9721566B2 (en) 2015-03-08 2017-08-01 Apple Inc. Competing devices responding to voice triggers
US9886953B2 (en) 2015-03-08 2018-02-06 Apple Inc. Virtual assistant activation
US10567477B2 (en) 2015-03-08 2020-02-18 Apple Inc. Virtual assistant continuity
US9899019B2 (en) 2015-03-18 2018-02-20 Apple Inc. Systems and methods for structured stem and suffix language models
US9842105B2 (en) 2015-04-16 2017-12-12 Apple Inc. Parsimonious continuous-space phrase representations for natural language processing
US10083688B2 (en) 2015-05-27 2018-09-25 Apple Inc. Device voice control for selecting a displayed affordance
US10127220B2 (en) 2015-06-04 2018-11-13 Apple Inc. Language identification from short strings
US9578173B2 (en) 2015-06-05 2017-02-21 Apple Inc. Virtual assistant aided communication with 3rd party service in a communication session
US10101822B2 (en) 2015-06-05 2018-10-16 Apple Inc. Language input correction
US10186254B2 (en) 2015-06-07 2019-01-22 Apple Inc. Context-based endpoint detection
US10255907B2 (en) 2015-06-07 2019-04-09 Apple Inc. Automatic accent detection using acoustic models
US11025565B2 (en) 2015-06-07 2021-06-01 Apple Inc. Personalized prediction of responses for instant messaging
US10671428B2 (en) 2015-09-08 2020-06-02 Apple Inc. Distributed personal assistant
US10747498B2 (en) 2015-09-08 2020-08-18 Apple Inc. Zero latency digital assistant
US9697820B2 (en) 2015-09-24 2017-07-04 Apple Inc. Unit-selection text-to-speech synthesis using concatenation-sensitive neural networks
US10366158B2 (en) 2015-09-29 2019-07-30 Apple Inc. Efficient word encoding for recurrent neural network language models
US11010550B2 (en) 2015-09-29 2021-05-18 Apple Inc. Unified language modeling framework for word prediction, auto-completion and auto-correction
US11587559B2 (en) 2015-09-30 2023-02-21 Apple Inc. Intelligent device identification
US10691473B2 (en) 2015-11-06 2020-06-23 Apple Inc. Intelligent automated assistant in a messaging environment
US10049668B2 (en) 2015-12-02 2018-08-14 Apple Inc. Applying neural network language models to weighted finite state transducers for automatic speech recognition
US10223066B2 (en) 2015-12-23 2019-03-05 Apple Inc. Proactive assistance based on dialog communication between devices
US10446143B2 (en) 2016-03-14 2019-10-15 Apple Inc. Identification of voice inputs providing credentials
US9934775B2 (en) 2016-05-26 2018-04-03 Apple Inc. Unit-selection text-to-speech synthesis based on predicted concatenation parameters
US9972304B2 (en) 2016-06-03 2018-05-15 Apple Inc. Privacy preserving distributed evaluation framework for embedded personalized systems
US10249300B2 (en) 2016-06-06 2019-04-02 Apple Inc. Intelligent list reading
US10049663B2 (en) 2016-06-08 2018-08-14 Apple, Inc. Intelligent automated assistant for media exploration
DK179309B1 (en) 2016-06-09 2018-04-23 Apple Inc Intelligent automated assistant in a home environment
US10490187B2 (en) 2016-06-10 2019-11-26 Apple Inc. Digital assistant providing automated status report
US10067938B2 (en) 2016-06-10 2018-09-04 Apple Inc. Multilingual word prediction
US10586535B2 (en) 2016-06-10 2020-03-10 Apple Inc. Intelligent digital assistant in a multi-tasking environment
US10192552B2 (en) 2016-06-10 2019-01-29 Apple Inc. Digital assistant providing whispered speech
US10509862B2 (en) 2016-06-10 2019-12-17 Apple Inc. Dynamic phrase expansion of language input
DK179343B1 (en) 2016-06-11 2018-05-14 Apple Inc Intelligent task discovery
DK201670540A1 (en) 2016-06-11 2018-01-08 Apple Inc Application integration with a digital assistant
DK179049B1 (en) 2016-06-11 2017-09-18 Apple Inc Data driven natural language event detection and classification
DK179415B1 (en) 2016-06-11 2018-06-14 Apple Inc Intelligent device arbitration and control
JP6526608B2 (ja) * 2016-09-06 2019-06-05 株式会社東芝 辞書更新装置およびプログラム
US10043516B2 (en) 2016-09-23 2018-08-07 Apple Inc. Intelligent automated assistant
US11281993B2 (en) 2016-12-05 2022-03-22 Apple Inc. Model and ensemble compression for metric learning
US10593346B2 (en) 2016-12-22 2020-03-17 Apple Inc. Rank-reduced token representation for automatic speech recognition
US20180240466A1 (en) * 2017-02-17 2018-08-23 Intel Corporation Speech Decoder and Language Interpreter With Asynchronous Pre-Processing
JP6646001B2 (ja) 2017-03-22 2020-02-14 株式会社東芝 音声処理装置、音声処理方法およびプログラム
JP2018159759A (ja) * 2017-03-22 2018-10-11 株式会社東芝 音声処理装置、音声処理方法およびプログラム
DK201770383A1 (en) 2017-05-09 2018-12-14 Apple Inc. USER INTERFACE FOR CORRECTING RECOGNITION ERRORS
DK201770439A1 (en) 2017-05-11 2018-12-13 Apple Inc. Offline personal assistant
DK201770427A1 (en) 2017-05-12 2018-12-20 Apple Inc. LOW-LATENCY INTELLIGENT AUTOMATED ASSISTANT
DK179745B1 (en) 2017-05-12 2019-05-01 Apple Inc. SYNCHRONIZATION AND TASK DELEGATION OF A DIGITAL ASSISTANT
DK179496B1 (en) 2017-05-12 2019-01-15 Apple Inc. USER-SPECIFIC Acoustic Models
DK201770432A1 (en) 2017-05-15 2018-12-21 Apple Inc. Hierarchical belief states for digital assistants
DK201770431A1 (en) 2017-05-15 2018-12-20 Apple Inc. Optimizing dialogue policy decisions for digital assistants using implicit feedback
DK179549B1 (en) 2017-05-16 2019-02-12 Apple Inc. FAR-FIELD EXTENSION FOR DIGITAL ASSISTANT SERVICES
CN112242144A (zh) * 2019-07-17 2021-01-19 百度在线网络技术(北京)有限公司 基于流式注意力模型的语音识别解码方法、装置、设备以及计算机可读存储介质
CN112131866A (zh) * 2020-09-25 2020-12-25 马上消费金融股份有限公司 一种分词方法、装置、设备及可读存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0430615A2 (en) * 1989-11-28 1991-06-05 Kabushiki Kaisha Toshiba Speech recognition system
JP2880436B2 (ja) * 1995-10-24 1999-04-12 株式会社エイ・ティ・アール音声翻訳通信研究所 音声認識装置

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4481593A (en) * 1981-10-05 1984-11-06 Exxon Corporation Continuous speech recognition
US4489435A (en) * 1981-10-05 1984-12-18 Exxon Corporation Method and apparatus for continuous word string recognition
US4713778A (en) * 1984-03-27 1987-12-15 Exxon Research And Engineering Company Speech recognition method
US4718092A (en) * 1984-03-27 1988-01-05 Exxon Research And Engineering Company Speech recognition activation and deactivation method
US4713777A (en) * 1984-05-27 1987-12-15 Exxon Research And Engineering Company Speech recognition method having noise immunity
US4980918A (en) * 1985-05-09 1990-12-25 International Business Machines Corporation Speech recognition system with efficient storage and rapid assembly of phonological graphs
JPH0760318B2 (ja) * 1986-09-29 1995-06-28 株式会社東芝 連続音声認識方式
US5794194A (en) 1989-11-28 1998-08-11 Kabushiki Kaisha Toshiba Word spotting in a variable noise level environment
JP3058125B2 (ja) 1997-06-27 2000-07-04 日本電気株式会社 音声認識装置
US7490092B2 (en) * 2000-07-06 2009-02-10 Streamsage, Inc. Method and system for indexing and searching timed media information based upon relevance intervals
JP2002149187A (ja) * 2000-11-07 2002-05-24 Sony Corp 音声認識装置および音声認識方法、並びに記録媒体
US7706616B2 (en) * 2004-02-27 2010-04-27 International Business Machines Corporation System and method for recognizing word patterns in a very large vocabulary based on a virtual keyboard layout

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0430615A2 (en) * 1989-11-28 1991-06-05 Kabushiki Kaisha Toshiba Speech recognition system
JP2880436B2 (ja) * 1995-10-24 1999-04-12 株式会社エイ・ティ・アール音声翻訳通信研究所 音声認識装置

Also Published As

Publication number Publication date
US7240002B2 (en) 2007-07-03
JP2002149187A (ja) 2002-05-24
US20050075877A1 (en) 2005-04-07

Similar Documents

Publication Publication Date Title
WO2002039426A1 (fr) Dispositif de reconnaissance vocale
JP4465564B2 (ja) 音声認識装置および音声認識方法、並びに記録媒体
JP4802434B2 (ja) 音声認識装置及び音声認識方法、並びにプログラムを記録した記録媒体
JP4543294B2 (ja) 音声認識装置および音声認識方法、並びに記録媒体
US6961701B2 (en) Voice recognition apparatus and method, and recording medium
US10176802B1 (en) Lattice encoding using recurrent neural networks
Hwang et al. Predicting unseen triphones with senones
JP4301102B2 (ja) 音声処理装置および音声処理方法、プログラム、並びに記録媒体
US5963903A (en) Method and system for dynamically adjusted training for speech recognition
WO2002101719A1 (en) Voice recognition apparatus and voice recognition method
US8805686B2 (en) Melodis crystal decoder method and device for searching an utterance by accessing a dictionary divided among multiple parallel processors
JP4757936B2 (ja) パターン認識方法および装置ならびにパターン認識プログラムおよびその記録媒体
WO1998000834A9 (en) Method and system for dynamically adjusted training for speech recognition
JP3819896B2 (ja) 音声認識方法、この方法を実施する装置、プログラムおよび記録媒体
JP4600706B2 (ja) 音声認識装置および音声認識方法、並びに記録媒体
JP4600705B2 (ja) 音声認識装置および音声認識方法、並びに記録媒体
JP3914709B2 (ja) 音声認識方法およびシステム
JP4696400B2 (ja) 音声認識装置および音声認識方法、並びにプログラムおよび記録媒体
JP3550350B2 (ja) 音声認識方法及びプログラム記録媒体
JP3559479B2 (ja) 連続音声認識方法
JP2005134442A (ja) 音声認識装置および方法、記録媒体、並びにプログラム
JPH0962290A (ja) 音声認識装置
JP3369121B2 (ja) 音声認識方法および音声認識装置
EP1594120B1 (en) Method for building hidden Markov speech models
Dymarski et al. Large Margin Hidden Markov Models in command recognition and speaker verification problems

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): CA US

WWE Wipo information: entry into national phase

Ref document number: 10416092

Country of ref document: US