WO2020196021A1 - 情報処理装置、情報処理方法、及び、プログラム - Google Patents

情報処理装置、情報処理方法、及び、プログラム Download PDF

Info

Publication number
WO2020196021A1
WO2020196021A1 PCT/JP2020/011438 JP2020011438W WO2020196021A1 WO 2020196021 A1 WO2020196021 A1 WO 2020196021A1 JP 2020011438 W JP2020011438 W JP 2020011438W WO 2020196021 A1 WO2020196021 A1 WO 2020196021A1
Authority
WO
WIPO (PCT)
Prior art keywords
model
learning
information processing
acoustic
state
Prior art date
Application number
PCT/JP2020/011438
Other languages
English (en)
French (fr)
Inventor
衣未留 角尾
Original Assignee
ソニー株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ソニー株式会社 filed Critical ソニー株式会社
Priority to CN202080022389.3A priority Critical patent/CN113632165A/zh
Publication of WO2020196021A1 publication Critical patent/WO2020196021A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/06Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/14Speech classification or search using statistical models, e.g. Hidden Markov Models [HMMs]
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/16Speech classification or search using artificial neural networks

Definitions

  • the present technology relates to an information processing device, an information processing method, and a program, and more particularly to an information processing device, an information processing method, and a program capable of improving the performance of a speech recognition model.
  • the first speech recognition model is a model in which an acoustic model and a language model are individually learned and combined.
  • a gap is likely to occur at the contact point where the acoustic model and the language model are combined, and it is difficult to optimize the performance of the entire speech recognition model.
  • the second speech recognition model is a model called the End-to-End method, which is obtained by learning a model that directly outputs sentences corresponding to the input acoustic features using a neural network.
  • this voice recognition model a large amount of teacher data that combines voice data and text data indicating the contents of the voice data is required. However, it is very difficult to obtain or create a large amount of voice data corresponding to text data. On the other hand, if the teacher data is insufficient, the accuracy of the speech recognition model will decrease.
  • This technology was made in view of this situation, and makes it possible to improve the performance of speech recognition models including language models.
  • the information processing device of the first aspect of the present technology includes a learning unit that learns a language model using a learning model configured by a first neural network.
  • the information processing method of the first aspect of this technology is to learn a language model using a learning model composed of a neural network.
  • the program of the first aspect of the present technology causes a computer to execute a process of learning a language model using a learning model composed of a neural network.
  • the information processing device of the second aspect of the present technology includes a voice recognition unit that performs voice recognition using a voice recognition model including a language model learned using a learning model configured by a first neural network. ..
  • the information processing method of the second aspect of the present technology performs speech recognition using a speech recognition model including a language model learned using a learning model configured by a neural network.
  • the program of the second aspect of the present technology causes a computer to execute a process of performing speech recognition using a speech recognition model including a language model learned using a learning model composed of a neural network.
  • the language model is learned using a learning model composed of a neural network.
  • speech recognition is performed using a speech recognition model including a language model learned using a learning model configured by a neural network.
  • Embodiment >> Embodiments of the present technology will be described with reference to FIGS. 1 to 10.
  • FIG. 1 is a block diagram showing a configuration example of a voice recognition device 101 to which the present technology is applied.
  • the voice recognition device 101 includes a signal processing unit 111, a feature amount extraction unit 112, and a voice recognition unit 113.
  • the signal processing unit 111 performs predetermined signal processing on the input voice data and corrects the voice data. For example, the signal processing unit 111 removes noise from audio data, shapes the waveform, and improves the SNR (Signal Noise Ratio) or SDR (Signal-to-Distortion Ratio) of the audio data.
  • the signal processing unit 111 supplies the voice data after signal processing to the feature amount extraction unit 112.
  • the feature amount extraction unit 112 extracts an acoustic feature amount such as fbank (filter bank logarithmic power) used for voice recognition from the voice data.
  • the feature amount extraction unit 112 supplies the feature amount data indicating the extracted acoustic feature amount to the voice recognition unit 113.
  • the voice recognition unit 113 uses the voice recognition model 121 to perform voice recognition based on the feature amount data.
  • the voice recognition model 121 is composed of, for example, a DNN (Deep Neural Network) -HMM (Hidden Markov Model) type voice recognition model.
  • the speech recognition model 121 includes an acoustic model 131 and a language model 132.
  • the acoustic model 131 performs identification processing of phonemes in the audio data based on the feature amount data, and outputs acoustic data indicating the identification result.
  • the acoustic model 131 can be obtained, for example, by learning a model that estimates the state of the HMM corresponding to each phoneme based on the acoustic features indicated by the feature data using DNN.
  • the language model 132 performs word identification processing in the voice data based on the sound data supplied from the sound model 131, and generates and outputs output data indicating the content (word sequence) of the voice data.
  • the language model 132 is configured by a WFST (Weighted Finite-State Transducer) that combines a model that estimates the appearance probability of the next word from one or more words that appeared immediately before and a transition probability of HMM.
  • WFST Weighted Finite-State Transducer
  • FIG. 2 shows a configuration example of the voice recognition device 201 using the end-to-end type voice recognition model 221 for comparison with the voice recognition device 101 of FIG.
  • the parts corresponding to the voice recognition device 101 in FIG. 1 are designated by the same reference numerals, and the description thereof will be omitted as appropriate.
  • the voice recognition device 201 is consistent in that it includes a signal processing unit 111 and a feature amount extraction unit 112, and includes a voice recognition unit 211 instead of the voice recognition unit 113. Is different.
  • the voice recognition unit 211 performs voice recognition based on the feature amount data by using the voice recognition model 221 including the encoder 231 and the decoder 232.
  • the voice recognition model 221 is learned using teacher data that is a combination of voice data and text data indicating the contents of the voice data.
  • teacher data that is a combination of voice data and text data indicating the contents of the voice data.
  • FIG. 3 shows a configuration example of the learning device 301 used for learning the acoustic model 131 and the language model 132 of the speech recognition model 121 of FIG.
  • the parts corresponding to the voice recognition device 101 in FIG. 1 are designated by the same reference numerals, and the description thereof will be omitted as appropriate.
  • the learning device 301 is different from the voice recognition device 101 of FIG. 1 in that it includes a signal processing unit 111 and a feature amount extraction unit 112, and is provided with a learning unit 311 instead of the voice recognition unit 113. ..
  • the learning device 301 is input with input data composed of voice data and teacher data including correct answer data representing the contents of the voice data as text or a vector. Among them, the input data is supplied to the signal processing unit 111, and the correct answer data is supplied to the learning unit 311.
  • the learning unit 311 learns the acoustic model 131 and the language model 132 by using the integrated model 321 that integrates the acoustic model 131 and the learning model 331.
  • the learning model 331 is composed of a neural network. Therefore, the integrated model 321 constitutes a network in which the neural network (DNN) constituting the acoustic model 131 and the neural network constituting the learning model 331 are integrated.
  • the learning model 331 is a model that performs the calculation of the language model 132, for example, the decoding process using the WFST that constitutes the language model 132, and is used for learning the acoustic model 131 and the language model 132.
  • FIG. 4 is a block diagram showing a configuration example of the learning model 331 included in the integrated model 321.
  • the learning model 331 includes an input layer 351, an intermediate layer 352, an output layer 353, and a max pooling layer 354.
  • the input layer 351 is a layer that connects the acoustic model 131 and the learning model 331, and acoustic data is input from the acoustic model 131.
  • the input layer 351 generates acoustic state data by mapping the acoustic data to the state space of the language model 132, and supplies the acoustic data to the intermediate layer 352.
  • the intermediate layer 352 calculates the state transition of the language model 132 based on the acoustic state data, and supplies data indicating the calculation result of the state transition to the output layer 353.
  • the output layer 353 performs a word identification operation in the input data based on the operation result of the state transition by the intermediate layer 352, and supplies the data indicating the operation result to the max pooling layer 354.
  • the max pooling layer 354 estimates the content of the input data based on the word identification result by the output layer 353, and outputs data indicating the estimation result.
  • This process is started, for example, when teacher data is input to the learning device 301.
  • the input data (voice data) included in the teacher data is supplied to the signal processing unit 111, and the correct answer data is supplied to the learning model 331.
  • WFST401 can distinguish two words, "start” and "stop”.
  • Each node of WFST401 shows the state, and the number in the node shows the state number.
  • the state 0 is the initial state
  • the state 9 surrounded by the double circle is the end state.
  • the input label indicates the phoneme that is the condition for the state transition. For example, when the phoneme s is input in the state 0, the state of the WFST401 transitions to the state 2. In addition, "sil" indicates silence.
  • the output label indicates the word that is output at the time of state transition. For example, at the time of transition from state 4 to state 7, "stop” is output as an output label. In addition, “nil” indicates that the output label (word) is not output.
  • the input label for transitioning to the state i is referred to as the input label of the state i, and is represented by ilabel (i).
  • the input label ilabel (2) in the state 2 is "s”.
  • the output label at the time of transition to the state i is referred to as the output label of the state i, and is represented by the label (i).
  • the output label label (5) in state 5 is "start”.
  • step S1 the signal processing unit 111 performs signal processing. Specifically, the signal processing unit 111 performs signal processing such as removing noise from the input data and shaping the waveform, and supplies the input data after the signal processing to the feature amount extraction unit 112.
  • the feature amount extraction unit 112 extracts the feature amount.
  • the feature amount extraction unit 112 extracts an acoustic feature amount such as fbank from the input data for each frame of a predetermined length, and supplies the feature amount data indicating the extracted acoustic feature amount to the learning unit 311.
  • step S3 the learning unit 311 performs a phoneme identification operation. Specifically, the feature amount data is input to the acoustic model 131, the phoneme identification calculation is performed, and the acoustic data is output.
  • the acoustic data includes an acoustic vector indicating the phoneme identification result for each frame of the input data.
  • the acoustic vector is a vector including an acoustic score for each of a plurality of predetermined phonemes as an element.
  • the acoustic score indicates the probability that the sound of the target frame contains the target phoneme.
  • the acoustic vector included in the acoustic data output from the acoustic model 131 is schematically illustrated.
  • the acoustic vectors of frames t1 to t14 are shown.
  • the acoustic vector includes acoustic scores for each phoneme of sil (silence), s, t, aa, r, and p as elements.
  • each acoustic score included in the acoustic vector is represented by a square. The higher the acoustic score, the higher the density of the mass, and the smaller the acoustic score, the lower the density of the mass.
  • the acoustic vector of the frame t is represented by Xa (t)
  • the acoustic score for the i-th phoneme of the acoustic vector Xa (t) is represented by xa i (t). It is assumed that numbers from 0 to 5 are assigned to each phoneme in the order of sil, s, t, aa, r, p.
  • xa 1 (t) indicates the acoustic score for the phoneme s of the acoustic vector Xa (t).
  • step S4 the learning unit 311 maps the acoustic data to the state space of the language model. Specifically, the acoustic vector Xa (t) included in the acoustic data is input to the input layer 351 of the learning model 331, and is converted into the acoustic state vector Xb (t) by the following equation (1).
  • W is a matrix for mapping the acoustic vector Xa (t) to the state space of the language model 132 (WFST401), and is represented by the following equation (2).
  • the weights w i and j which are elements of the matrix W, indicate the weight of the state i of the WFST 401 with respect to the acoustic score xa j (t) of the acoustic vector Xa (t).
  • the first row of the matrix W is the 0th row, and the first column is the 0th column.
  • the weights w i and j are 1 when the input label ilabel (i) for transitioning to the state i and the phoneme targeted for the acoustic score xa i (t) of the acoustic vector Xa (t) match. If they do not match, it becomes 0.
  • the input label ilabel (3) for transitioning to the state 3 and the phoneme targeted for the acoustic score xa 2 (t) of the acoustic vector Xa (t) coincide with each other at t. Therefore, of the weights w1 and j in the first column of the matrix W, only the weights w1 and 2 are set to 1, and the others are set to 0.
  • the element of the acoustic state vector Xb (t) is the acoustic state score xb i (t) with respect to the state i of WFST401.
  • Acoustics score xb i (t) when the sound indicated by the acoustic vector Xa (t) is input, shows the probability of state i.
  • the acoustics score xb i (t) is represented in the mass contained in the acoustic state vector Xb (t). The greater the acoustics score xb i (t), the concentration of the mass is darker, as acoustics score xb i (t) is decreased, the concentration of the mass is thin.
  • step S5 the learning unit 311 performs a forward calculation of the state transition. That is, the acoustic state vector Xb (t) is input to the intermediate layer 352 of the language model 132 along the time series, the operation of the following equation (3) is performed, and the state vector ⁇ (t) is calculated in the order of the time series. Will be done.
  • the transition matrix S in the equation (3) is a sparse matrix representing the state transition of the WFST401, and is represented by the following equation (4).
  • the weights i and j which are elements of the transition matrix S, indicate the weights for the state transition from the state j to the state i of WFST401.
  • the first row of the transition matrix S is the 0th row, and the first column is the 0th column.
  • the weight s 2,0 is set to 0.6, which is the weight for the state transition from state 0 to state 2 of WFST401.
  • the state score ⁇ i (t), which is an element of the state vector A (t), is calculated by the following equation (5).
  • the state score ⁇ i (t) indicates the probability that the state of the WFST 401 constituting the language model 132 is the state i in the frame t.
  • the state score ⁇ 0 (t0) is set to 1, and the other state scores ⁇ i (t0) are set to 0. That is, the state vector A (t0) indicates that the initial state of the WFST401 is the state 0.
  • each state score ⁇ i (t) included in the state vector ⁇ (t) is represented by a square.
  • step S6 the learning unit 311 performs a backward calculation of the state transition. That is, the acoustic state vector Xb (t) is input to the intermediate layer 352 of the learning model 331 in the reverse order of the time series, the calculation of the following equation (6) is performed, and the state vector ⁇ (t) is in the reverse order of the time series. Is calculated to.
  • the state score ⁇ i (t), which is an element of the state vector ⁇ (t), is calculated by the following equation (7).
  • the state score ⁇ i (t) indicates the probability that the state i of the WFST 401 constituting the language model 132 in the frame t will reach the end state by the final frame.
  • the state score ⁇ 9 (t14) is set to 1, and the other state scores ⁇ i (t14) are set to 0. That is, the state vector ⁇ (t14) indicates that the end state of WFST401 is the state 9.
  • each state score ⁇ i (t) included in the state vector ⁇ (t) is represented by a square.
  • step S7 the learning unit 311 performs an output calculation.
  • the state vector ⁇ (t) and the state vector ⁇ (t) are input to the output layer 353 of the learning model 331, the calculation of the following equation (8) is performed, and the output score y v (t) is obtained. It is calculated.
  • the output score y v (t) indicates the word identification result, and indicates the probability that the word v appears in the frame t.
  • s i, j ⁇ O indicates a set of weights s i, j of the transition matrix S corresponding to the path of transition to the state j in which the word v is output as the output label olive (j).
  • the output score y v (t) is calculated based on the results of the forward calculation and the backward calculation of the state transition of the WFST401.
  • the square corresponding to the state score ⁇ 6 (t) is surrounded by a thick line.
  • the square corresponding to the state score ⁇ 7 (t) of the transition destination state 7 when "stop” is output as the output label olive (j) is surrounded by a thick dotted line.
  • the state score ⁇ 4 (t) of the state 4 of the transition source when “start” or “stop” is output as the output label array (j).
  • the square corresponding to is surrounded by a thick line.
  • the output scores y v (t) for "stop” and “start” are schematically illustrated.
  • the output scores y v (t) for "stop” and “start” of frames t1 to t14 are represented by squares. The larger the output score y v (t), the higher the density of the mass, and the smaller the output score y v (t), the thinner the density of the mass.
  • the output score y v (t) for each word v is input to the max pooling layer 354 of the learning model 331, and for example, the calculation of the following equation (9) is performed, and the final output score for each word v is performed.
  • the final score y v is calculated.
  • the final score y v is set to the maximum value of the output score y v (t) of each word v.
  • the output score y v (t) for “stop” becomes maximum at frame t7. Therefore, the final score y v for "stop” is set to the output score y v (t) of the frame t7.
  • the output score y v (t) for "start” becomes maximum at the frame t6. Therefore, the final score y v for "start” is set to the output score y v (t) of frame t6.
  • the final score y v for each word in the teacher data may be calculated so that the score J in the following equation (10) is maximized.
  • R indicates the number of words in the correct answer data of the teacher data, and r indicates the order of appearance of the words in the correct answer data.
  • ref (r) indicates the r-th appearing word in the correct answer data
  • y ref (r) (t) indicates the output score of the word ref (r) in the frame t.
  • t (r-1) indicates a frame in which the r-1st word is estimated to appear in the correct answer data
  • t (r + 1) indicates a frame in which the r + 1th word is estimated to appear in the correct answer data. Shown.
  • the frame t in which the r-th word ref (r) appears in the correct answer data is estimated, and the final score y v for the word ref (r) is the output score of the word ref (r) in the estimated frame t. It is set to y v (t).
  • the final score y v of each word v other than the word ref (r) for the r-th word in the correct answer data is, for example, the output score of each word v in the frame t in which the word ref (r) is estimated to appear. It is set to y v (t).
  • step S8 the learning unit 311 performs an error calculation.
  • the learning target can be regarded as a general identification problem, so that neural network learning can be performed using the loss function. Therefore, for example, the learning unit 311 calculates the error of the output data of the learning model 331 by using the softmax cross entropy function of the following equation (11) as the loss function.
  • the output vector Y is a vector having the final score y v for each word as an element.
  • 1 indicates the L 1 norm of the output vector Y.
  • the correct answer vector P is a vector indicating the correct answer data, and the score for the words included in the correct answer data is set to 1, and the score for the other words is set to 0.
  • T indicates the frame length of the input data
  • indicates the weight that is arbitrarily set.
  • KL () indicates KL divergence
  • Xa org (t) indicates an acoustic vector output from the acoustic model 131 before or at the beginning of learning.
  • the learning unit 311 updates the parameters of the language model 132 and the acoustic model 131.
  • the learning unit 311 uses the error backpropagation method (Backpropagation) in general machine learning in the integrated model 321 to provide the neural network constituting the learning model 331 and the lower acoustic model 131.
  • the parameters are updated so as to minimize the value of the loss function of the equation (11) or the equation (12) by propagating the error to the constituent DNN.
  • the weights for the state transitions of the WFST401 constituting the language model 132 weights i, j of the transition matrix S
  • the parameters of the DNN constituting the acoustic model 131 are updated.
  • the weights w i and j of the matrix W in the above equation (1) may also be updated.
  • FIG. 10 schematically shows the flow of updating parameters.
  • the upper part of FIG. 10 is a diagram similar to the output data on the left side of the arrow in FIG.
  • the middle part of FIG. 10 is a diagram similar to the state transition by the backward calculation in the upper part of FIG.
  • the lower part of FIG. 10 is a diagram similar to the state transition by the forward calculation in the lower part of FIG.
  • the error is propagated in the opposite direction to the state transition of the forward operation and the state transition of the backward operation used for calculating the final score y v for "stop", and each error is propagated.
  • the weights for state transitions are updated.
  • the error is propagated in the opposite directions to the state transition of the forward operation and the state transition of the backward operation used for calculating the final score y v for "start”.
  • the weight for each state transition is updated.
  • an error is propagated from the state vector ⁇ (t) and the state vector ⁇ (t) in each frame t to the acoustic state vector Xb (t), and further, from the acoustic state vector Xb (t) to the acoustic vector Xa (t).
  • the error is propagated and the DNN parameters constituting the acoustic model 131 are updated.
  • step S10 the learning device 301 determines whether or not to end the learning process. For example, the learning device 301 determines that the learning process is continued when new teacher data is input, and the process returns to step S1.
  • step S10 the processes of steps S1 to S10 are repeatedly executed until it is determined that the learning process is completed, and the parameters of the acoustic model 131 and the language model 132 are updated.
  • step S10 the learning device 301 determines that the learning process is finished when, for example, new teacher data is not input, and the learning process is finished.
  • the acoustic model 131 whose parameters have been updated by this learning process is used for the voice recognition device 101. Further, the parameters updated by this learning process are reflected in the language model 132 of the voice recognition device 101. For example, the WFST constituting the language model 132 is updated.
  • the parameters can be optimized for the entire voice recognition model 121, and the performance of voice recognition is improved.
  • the acoustic model 131 and the language model 132 are individually learned in advance. Then, by performing the learning process of FIG. 6 with the learned acoustic model 131 and the language model 132 as initial values, a high-performance speech recognition model 121 can be constructed with a small amount of teacher data.
  • the applicability to general-purpose machine learning is improved.
  • the learning process can be easily performed.
  • more routes will be searched, and the learning process can be performed smoothly.
  • only the forward calculation may be performed without performing the backward calculation of the state transition.
  • a process of storing the output label, the score associated therewith, and the path of the state transition is added.
  • this technology can be applied to learning a speech recognition model other than the above-mentioned DNN-HMM speech recognition model.
  • this technique can be applied to learning the language model.
  • the method of classifying phonemes used for speech recognition is arbitrary.
  • general phonemes may be classified into more detailed states.
  • the processes of the voice recognition device 101 and the learning device 301 can be executed by hardware or software.
  • the programs that make up the software are installed on the computer.
  • the computer includes a computer embedded in dedicated hardware and, for example, a general-purpose personal computer capable of executing various functions by installing various programs.
  • FIG. 11 is a block diagram showing a configuration example of computer hardware that executes the above-mentioned series of processes programmatically.
  • the CPU Central Processing Unit
  • ROM Read Only Memory
  • RAM Random Access Memory
  • An input / output interface 1005 is further connected to the bus 1004.
  • An input unit 1006, an output unit 1007, a recording unit 1008, a communication unit 1009, and a drive 1010 are connected to the input / output interface 1005.
  • the input unit 1006 includes an input switch, a button, a microphone, an image sensor, and the like.
  • the output unit 1007 includes a display, a speaker, and the like.
  • the recording unit 1008 includes a hard disk, a non-volatile memory, and the like.
  • the communication unit 1009 includes a network interface and the like.
  • the drive 1010 drives a removable medium 1011 such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory.
  • the CPU 1001 loads and executes the program recorded in the recording unit 1008 into the RAM 1003 via the input / output interface 1005 and the bus 1004, for example. A series of processing is performed.
  • the program executed by the computer 1000 can be recorded and provided on the removable media 1011 as a package media or the like, for example. Programs can also be provided via wired or wireless transmission media such as local area networks, the Internet, and digital satellite broadcasting.
  • the program can be installed in the recording unit 1008 via the input / output interface 1005 by mounting the removable media 1011 in the drive 1010. Further, the program can be received by the communication unit 1009 via a wired or wireless transmission medium and installed in the recording unit 1008. In addition, the program can be installed in advance in the ROM 1002 or the recording unit 1008.
  • the program executed by the computer may be a program that is processed in chronological order according to the order described in this specification, or may be a program that is processed in parallel or at a necessary timing such as when a call is made. It may be a program in which processing is performed.
  • the system means a set of a plurality of components (devices, modules (parts), etc.), and it does not matter whether all the components are in the same housing. Therefore, a plurality of devices housed in separate housings and connected via a network, and a device in which a plurality of modules are housed in one housing are both systems. ..
  • the embodiment of the present technology is not limited to the above-described embodiment, and various changes can be made without departing from the gist of the present technology.
  • this technology can have a cloud computing configuration in which one function is shared by a plurality of devices via a network and processed jointly.
  • each step described in the above flowchart can be executed by one device or can be shared and executed by a plurality of devices.
  • one step includes a plurality of processes
  • the plurality of processes included in the one step can be executed by one device or shared by a plurality of devices.
  • the present technology can also have the following configurations.
  • An information processing device including a learning unit that learns a language model using a learning model configured by a first neural network.
  • the learning unit learns the language model and the acoustic model by using an integrated model in which an acoustic model pre-learned using a second neural network and the learning model are integrated separately from the language model.
  • the information processing apparatus according to (1) above.
  • the learning model is An input layer into which acoustic data output from the acoustic model is input, and The intermediate layer that performs the operation of the state transition of the language model and The information processing apparatus according to (2) or (3) above, further comprising an output layer that performs a word identification operation based on the operation result of the state transition.
  • the information processing apparatus according to (4) wherein the input layer maps the acoustic data to the state space of the language model.
  • the acoustic data includes an acoustic vector indicating a phoneme identification result for each frame of the audio data.
  • the information processing device according to (5) above, wherein the input layer maps the acoustic vector to the state space of the language model.
  • the information processing apparatus performs an operation of the state transition based on a transition matrix representing the state transition of the language model.
  • the language model is composed of WFST (Weighted Finite State Transducer).
  • WFST Weighted Finite State Transducer
  • the information processing apparatus according to (7) above, wherein the transition matrix has a weight for a transition between states of the WFST as an element.
  • the intermediate layer performs forward and backward operations of the state transition,
  • the output layer performs a word identification operation based on the calculation result of the state transition by the forward calculation and the calculation result of the state transition by the backward calculation, according to any one of (4) to (8).
  • the information processing device according to any one of (2) to (9) above, wherein the acoustic model constitutes a DNN (Deep Neural Network) -HMM (Hidden Markov Model) type speech recognition model.
  • the learning model is constructed by using a transition matrix representing a state transition of the language model.
  • the learning unit updates the transition matrix by using an error back propagation method in the learning model.
  • the language model is combined with an end-to-end speech recognition model.
  • An information processing method that learns a language model using a learning model composed of a neural network.
  • An information processing device including a voice recognition unit that performs voice recognition using a voice recognition model including a language model learned using a learning model configured by a first neural network.
  • the speech recognition model includes the acoustic model and the language model trained using an integrated model that integrates an acoustic model pre-trained using a second neural network and the learning model (16). ).
  • Information processing device (18) The information processing apparatus according to (17), wherein the voice recognition model includes the acoustic model and the language model whose parameters have been updated by using the error back propagation method in the integrated model.
  • An information processing method that performs speech recognition using a speech recognition model that includes a language model learned using a learning model configured by a neural network.
  • 101 voice recognition device 111 signal processing unit, 112 feature amount extraction unit, 113 voice recognition unit, 121 voice recognition model, 131 acoustic model, 132 language model, 301 learning device, 311 learning unit, integrated model 321 and 331 learning model , 351 input layer, 352 intermediate layer, 353 output layer, 354 max pooling layer, 401 WFST

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Probability & Statistics with Applications (AREA)
  • Machine Translation (AREA)

Abstract

本技術は、言語モデルを含む音声認識モデルの性能を向上することができるようにする情報処理装置、情報処理方法、及び、プログラムに関する。 学習装置は、第1のニューラルネットワークにより構成される学習用モデルを用いて言語モデルの学習を行う学習部を備える。音声認識装置は、第1のニューラルネットワークにより構成される学習用モデルを用いて学習された言語モデルを含む音声認識モデルを用いて音声認識を行う音声認識部を備える。本技術は、例えば、音声認識装置、又は、音声認識モデルの学習を行う学習装置に適用することができる。

Description

情報処理装置、情報処理方法、及び、プログラム
 本技術は、情報処理装置、情報処理方法、及び、プログラムに関し、特に、音声認識モデルの性能を向上できるようにした情報処理装置、情報処理方法、及び、プログラムに関する。
 機械学習により得られる音声認識モデルには、大きく以下の2種類がある。
 第1の音声認識モデルは、音響モデルと言語モデルを個別に学習し、組み合わせたモデルである。この音声認識モデルでは、音響モデルと言語モデルを組み合わせる接点でギャップが発生しやすく、音声認識モデル全体の性能の最適化が困難である。
 第2の音声認識モデルは、ニューラルネットワークを用いて、入力した音響特徴量に対応する文章を直接出力するモデルを学習することにより得られる、End-to-End方式と呼ばれるモデルである。この音声認識モデルでは、音声データと音声データの内容を示すテキストデータとを組み合わせた教師データが大量に必要になる。しかし、テキストデータに対応する音声データを大量に入手又は作成するのは非常に困難である。一方、教師データが不足すると、音声認識モデルの精度が低下する。
 これに対して、従来、音響モデルと言語モデルを組み合わせて識別学習を行い、誤差を改善するように音響モデルを更新することにより、音響モデルと言語モデルのギャップを埋める方法が提案されている(例えば、特許文献1参照)。
特開2011-197410号公報
 しかしながら、特許文献1の識別学習では、言語モデルに合わせて音響モデルのみが学習されるため、言語モデルの性能は向上しない。
 本技術は、このような状況に鑑みてなされたものであり、言語モデルを含む音声認識モデルの性能を向上できるようにするものである。
 本技術の第1の側面の情報処理装置は、第1のニューラルネットワークにより構成される学習用モデルを用いて言語モデルの学習を行う学習部を備える。
 本技術の第1の側面の情報処理方法は、ニューラルネットワークにより構成される学習用モデルを用いて言語モデルの学習を行う。
 本技術の第1の側面のプログラムは、ニューラルネットワークにより構成される学習用モデルを用いて言語モデルの学習を行う処理をコンピュータに実行させる。
 本技術の第2の側面の情報処理装置は、第1のニューラルネットワークにより構成される学習用モデルを用いて学習された言語モデルを含む音声認識モデルを用いて音声認識を行う音声認識部を備える。
 本技術の第2の側面の情報処理方法は、ニューラルネットワークにより構成される学習用モデルを用いて学習された言語モデルを含む音声認識モデルを用いて音声認識を行う。
 本技術の第2の側面のプログラムは、ニューラルネットワークにより構成される学習用モデルを用いて学習された言語モデルを含む音声認識モデルを用いて音声認識を行う処理をコンピュータに実行させる。
 本技術の第1の側面においては、ニューラルネットワークにより構成される学習用モデルを用いて言語モデルの学習が行われる。
 本技術の第2の側面においては、ニューラルネットワークにより構成される学習用モデルを用いて学習された言語モデルを含む音声認識モデルを用いて音声認識が行われる。
本技術を適用した音声認識装置の構成例を示すブロック図である。 End-to-End方式の音声認識装置の構成例を示すブロック図である。 本技術を適用した学習装置の構成例を示すブロック図である。 学習用モデルの構成例を示すブロック図である。 学習処理を説明するためのフローチャートである。 WFSTの構成例を示す図である。 学習用モデルの入力層及び中間層の演算例を説明するための図である。 状態遷移の前向き演算及び後ろ向き演算の例を示す図である。 出力層の演算例を説明するための図である。 誤差逆伝搬法の演算例を説明するための図である。 コンピュータの構成例を示す図である。
 以下、本技術を実施するための形態について説明する。説明は以下の順序で行う。
 1.実施の形態
 2.変形例
 3.その他
 <<1.実施の形態>>
 図1乃至図10を参照して、本技術の実施の形態について説明する。
  <音声認識装置101の構成例>
 図1は、本技術を適用した音声認識装置101の構成例を示すブロック図である。
 音声認識装置101は、信号処理部111、特徴量抽出部112、及び、音声認識部113を備える。
 信号処理部111は、入力された音声データに対して所定の信号処理を行い、音声データの補正を行う。例えば、信号処理部111は、音声データのノイズの除去や波形の整形等を行い、音声データのSNR(Signal Noise Ratio)又はSDR(Signal-to-Distortion Ratio)を改善する。信号処理部111は、信号処理後の音声データを特徴量抽出部112に供給する。
 特徴量抽出部112は、音声認識に用いるfbank(フィルタバンク対数パワー)等の音響特徴量を音声データから抽出する。特徴量抽出部112は、抽出した音響特徴量を示す特徴量データを音声認識部113に供給する。
 音声認識部113は、音声認識モデル121を用いて、特徴量データに基づいて音声認識を行う。
 音声認識モデル121は、例えば、DNN(Deep Neural Network)-HMM(Hidden Markov Model)方式の音声認識モデルにより構成される。音声認識モデル121は、音響モデル131及び言語モデル132を含む。
 音響モデル131は、特徴量データに基づいて、音声データ内の音素の識別処理を行い、識別結果を示す音響データを出力する。音響モデル131は、例えば、特徴量データにより示される音響特徴量に基づいて、各音素に対応するHMMの状態を推定するモデルを、DNNを用いて学習することにより得られる。
 言語モデル132は、音響モデル131から供給される音響データに基づいて、音声データ内の単語の識別処理を行い、音声データの内容(単語の並び)を示す出力データを生成し、出力する。例えば、言語モデル132は、直前に出現した1以上の単語から次の単語の出現確率を推定するモデルにHMMの遷移確率を組み合わせたWFST(Weighted Finite-State Transducer)により構成される。
 本技術では、後述するように、個別に学習された音響モデル131と言語モデル132を統合した状態で追加学習が行われ、音響モデル131及び言語モデル132のパラメータが更新される。これにより、音声認識モデル121全体の性能の最適化が行われる。
  <End-to-End方式の音声認識装置201の構成例>
 図2は、図1の音声認識装置101と比較するために、End-to-End方式の音声認識モデル221を用いた音声認識装置201の構成例を示している。なお、図中、図1の音声認識装置101と対応する部分には同じ符号を付してあり、その説明は適宜省略する。
 音声認識装置201は、図1の音声認識装置101と比較して、信号処理部111及び特徴量抽出部112を備える点で一致し、音声認識部113の代わりに、音声認識部211を備える点が異なる。
 音声認識部211は、エンコーダ231及びデコーダ232を含む音声認識モデル221を用いて、特徴量データに基づいて、音声認識を行う。
 音声認識モデル221は、上述したように、音声データと音声データの内容を示すテキストデータとを組み合わせた教師データを用いて学習される。しかし、上述したように、テキストデータに対応する音声データを大量に入手又は作成するのは非常に困難であり、教師データが不足すると、音声認識モデル221の性能が低下する。
  <学習装置301の構成例>
 図3は、図1の音声認識モデル121の音響モデル131及び言語モデル132の学習に用いられる学習装置301の構成例を示している。なお、図中、図1の音声認識装置101と対応する部分には同じ符号を付してあり、その説明は適宜省略する。
 学習装置301は、図1の音声認識装置101と比較して、信号処理部111及び特徴量抽出部112を備える点で一致し、音声認識部113の代わりに、学習部311を備える点が異なる。
 学習装置301には、音声データからなる入力データ、及び、音声データの内容をテキスト又はベクトル等で表す正解データを含む教師データが入力される。そのうち、入力データは、信号処理部111に供給され、正解データは、学習部311に供給される。
 学習部311は、音響モデル131及び学習用モデル331を統合した統合モデル321を用いて、音響モデル131及び言語モデル132の学習を行う。
 学習用モデル331は、ニューラルネットワークにより構成される。従って、統合モデル321は、音響モデル131を構成するニューラルネットワーク(DNN)と学習用モデル331を構成するニューラルネットワークを統合したネットワークを構成する。学習用モデル331は、言語モデル132の演算、例えば、言語モデル132を構成するWFSTを用いたデコード処理を行うモデルであり、音響モデル131及び言語モデル132の学習に用いられる。
  <学習用モデル331の構成例>
 図4は、統合モデル321に含まれる学習用モデル331の構成例を示すブロック図である。
 学習用モデル331は、入力層351、中間層352、出力層353、及び、マックスプーリング層354を備える。
 入力層351は、音響モデル131と学習用モデル331を結合する層であり、音響モデル131から音響データが入力される。入力層351は、音響データを言語モデル132の状態空間にマッピングすることにより、音響状態データを生成し、中間層352に供給する。
 中間層352は、音響状態データに基づいて、言語モデル132の状態遷移の演算を行い、状態遷移の演算結果を示すデータを出力層353に供給する。
 出力層353は、中間層352による状態遷移の演算結果に基づいて、入力データ内の単語の識別演算を行い、演算結果を示すデータをマックスプーリング層354に供給する。
 マックスプーリング層354は、出力層353による単語の識別結果に基づいて、入力データの内容を推定し、推定結果を示すデータを出力する。
  <学習処理>
 次に、図5のフローチャートを参照して、学習装置301により実行される学習処理について説明する。
 この処理は、例えば、学習装置301に教師データが入力されたとき開始される。教師データに含まれる入力データ(音声データ)は信号処理部111に供給され、正解データは学習用モデル331に供給される。
 なお、以下、説明を簡単にするために、学習処理の対象となる言語モデル132が図6に示されるWFST401により構成される場合を具体例に挙げて説明する。
 WFST401は、”start”と”stop”の2つの単語を識別することが可能である。
 WFST401の各ノードは状態を示し、ノード内の数字は状態番号を示している。なお、状態0が初期状態とされ、二重丸で囲まれている状態9が終了状態とされる。
 各状態を結ぶ矢印は、状態間の遷移を示している。また、各矢印の上には、1段目に「入力ラベル:出力ラベル」が示され、2段目に状態遷移に対する重みが示されている。
 入力ラベルは、状態が遷移する条件となる音素を示す。例えば、状態0において音素sが入力されると、WFST401の状態が状態2に遷移する。なお、”sil”は、無音を示す。
 出力ラベルは、状態の遷移時に出力される単語を示す。例えば、状態4から状態7への遷移時に、出力ラベルとして”stop”が出力される。なお、”nil”は、出力ラベル(単語)が出力されないことを示す。
 以下、状態iに遷移するための入力ラベルを状態iの入力ラベルと称し、ilabel(i)で表す。例えば、状態2の入力ラベルilabel(2)は、”s”となる。また、以下、状態iへの遷移時の出力ラベルを状態iの出力ラベルと称し、olabel(i)で表す。例えば、状態5の出力ラベルolabel(5)は、”start”となる。
 ステップS1において、信号処理部111は、信号処理を行う。具体的には、信号処理部111は、入力データのノイズの除去や波形の整形等の信号処理を行い、信号処理後の入力データを特徴量抽出部112に供給する。
 ステップS2において、特徴量抽出部112は、特徴量を抽出する。例えば、特徴量抽出部112は、所定の長さのフレーム毎に入力データからfbank等の音響特徴量を抽出し、抽出した音響特徴量を示す特徴量データを学習部311に供給する。
 ステップS3において、学習部311は、音素の識別演算を行う。具体的には、特徴量データが音響モデル131に入力され、音素の識別演算が行われ、音響データが出力される。
 音響データは、入力データのフレーム毎の音素の識別結果を示す音響ベクトルを含む。音響ベクトルは、所定の複数の音素それぞれに対する音響スコアを要素に含むベクトルである。音響スコアは、対象となるフレームの音が対象となる音素を含む確率を示す。
 図7の下段には、音響モデル131から出力される音響データに含まれる音響ベクトルが模式的に図示されている。
 この例では、フレームt1乃至フレームt14の音響ベクトルが示されている。音響ベクトルには、sil(無音)、s、t、aa、r、及び、pの各音素に対する音響スコアが要素として含まれる。ここでは、音響ベクトルに含まれる各音響スコアがマスで表されている。そして、音響スコアが大きくなるほど、マスの濃度が濃くされ、音響スコアが小さくなるほど、マスの濃度が薄くされている。
 以下、フレームtの音響ベクトルをXa(t)で表し、音響ベクトルXa(t)のi番目の音素に対する音響スコアをxai(t)で表す。なお、各音素に対して、sil、s、t、aa、r、pの順に、0から5までの番号が割り振られるものとする。例えば、xa1(t)は、音響ベクトルXa(t)の音素sに対する音響スコアを示す。
 ステップS4において、学習部311は、音響データを言語モデルの状態空間にマッピングする。具体的には、音響データに含まれる音響ベクトルXa(t)が、学習用モデル331の入力層351に入力され、次式(1)により音響状態ベクトルXb(t)に変換される。
 Xb(t)=W×Xa(t)・・・(1)
 Wは、音響ベクトルXa(t)を言語モデル132(WFST401)の状態空間にマッピングするための行列であり、次式(2)により表される。
Figure JPOXMLDOC01-appb-M000001
 行列Wの要素である重みwi,jは、音響ベクトルXa(t)の音響スコアxaj(t)に対するWFST401の状態iの重みを示している。なお、行列Wの最初の行は0行目とされ、最初の列は0列目とされる。
 重みwi,jは、状態iに遷移するための入力ラベルilabel(i)と、音響ベクトルXa(t)の音響スコアxai(t)の対象となる音素とが一致する場合、1となり、一致しない場合、0となる。例えば、状態3に遷移するための入力ラベルilabel(3)と、音響ベクトルXa(t)の音響スコアxa2(t)の対象となる音素とは、tで一致する。従って、行列Wの1列目の重みw1,jのうち、重みw1,2のみが1に設定され、その他は0に設定される。
 図7の中段には、音響ベクトルXa(t)から変換された音響状態ベクトルXb(t)が模式的に図示されている。
 音響状態ベクトルXb(t)の要素は、WFST401の状態iに対する音響状態スコアxbi(t)とされる。音響状態スコアxbi(t)は、音響ベクトルXa(t)により示される音が入力された場合に、状態iとなる確率を示している。ここでは、音響状態ベクトルXb(t)に含まれる各音響状態スコアxbi(t)がマスで表されている。そして、音響状態スコアxbi(t)が大きくなるほど、マスの濃度が濃くされ、音響状態スコアxbi(t)が小さくなるほど、マスの濃度が薄くされている。
 ステップS5において、学習部311は、状態遷移の前向き演算を行う。すなわち、音響状態ベクトルXb(t)が、時系列に沿って言語モデル132の中間層352に入力され、次式(3)の演算が行われ、状態ベクトルΑ(t)が時系列の順に計算される。
Figure JPOXMLDOC01-appb-M000002
 式(3)の遷移行列Sは、WFST401の状態遷移をスパースな行列で表現したものであり、次式(4)で表される。
Figure JPOXMLDOC01-appb-M000003
 遷移行列Sの要素である重みsi,jは、WFST401の状態jから状態iへの状態遷移に対する重みを示している。なお、遷移行列Sの最初の行は0行目とされ、最初の列は0列目とされる。例えば、重みs2,0には、WFST401の状態0から状態2への状態遷移に対する重みである0.6が設定される。
 なお、式(3)の演算において、状態ベクトルA(t)の要素である状態スコアαi(t)は、次式(5)により計算される。
Figure JPOXMLDOC01-appb-M000004
 状態スコアαi(t)は、フレームtにおいて、言語モデル132を構成するWFST401の状態が状態iである確率を示す。
 なお、状態ベクトルΑ(t)の初期値である状態ベクトルΑ(t0)では、状態スコアα0(t0)が1に設定され、その他の状態スコアαi(t0)が0に設定される。すなわち、状態ベクトルΑ(t0)は、WFST401の初期状態が状態0であることを示す。
 このように、遷移行列Sを再帰的に適用して状態ベクトルΑ(t)の演算を行うことにより、WFST401の状態遷移と等価な演算が行われる。
 図7の上段には、状態ベクトルΑ(t)が模式的に図示されている。ここでは、状態ベクトルΑ(t)に含まれる各状態スコアαi(t)がマスで表されている。そして、状態スコアαi(t)が大きくなるほど、マスの濃度が濃くされ、状態スコアαi(t)が小さくなるほど、マスの濃度が薄くされている。
 ステップS6において、学習部311は、状態遷移の後ろ向き演算を行う。すなわち、音響状態ベクトルXb(t)が、時系列の逆順に学習用モデル331の中間層352に入力され、次式(6)の演算が行われ、状態ベクトルΒ(t)が時系列の逆順に計算される。
Figure JPOXMLDOC01-appb-M000005
 なお、式(6)の演算において、状態ベクトルΒ(t)の要素である状態スコアβi(t)は、次式(7)により計算される。
Figure JPOXMLDOC01-appb-M000006
 状態スコアβi(t)は、フレームtにおいて、言語モデル132を構成するWFST401の状態が状態iであるものが、最終フレームまでに終了状態にたどり着く確率を示す。
 なお、状態ベクトルΒ(t)の初期値である状態ベクトルΒ(t14)では、状態スコアβ9(t14)が1に設定され、その他の状態スコアβi(t14)が0に設定される。すなわち、状態ベクトルΒ(t14)は、WFST401の終了状態が状態9であることを示す。
 このように、遷移行列Sの転置行列STを再帰的に適用して状態ベクトルΒ(t)の演算を行うことにより、WFST401の状態の逆遷移と等価な演算が行われる。
 図8の上段には、状態ベクトルΒ(t)が模式的に図示されている。ここでは、状態ベクトルΒ(t)に含まれる各状態スコアβi(t)がマスで表されている。そして、状態スコアβi(t)が大きくなるほど、マスの濃度が濃くされ、状態スコアβi(t)が小さくなるほど、マスの濃度が薄くされている。
 なお、図8の下段には、図7の上段と同様に、状態ベクトルΑ(t)が模式的に図示されている。
 ステップS7において、学習部311は、出力演算を行う。
 具体的には、状態ベクトルΑ(t)及び状態ベクトルΒ(t)が学習用モデル331の出力層353に入力され、次式(8)の演算が行われ、出力スコアyv(t)が計算される。
Figure JPOXMLDOC01-appb-M000007
 出力スコアyv(t)は、単語の識別結果を示し、フレームtにおいて単語vが出現する確率を示す。si,j∈Oは、単語vが出力ラベルolabel(j)として出力される状態jに遷移する経路に対応する遷移行列Sの重みsi,jの集合を示す。
 このように、出力スコアyv(t)は、WFST401の状態遷移の前向き演算及び後ろ向き演算の結果に基づいて計算される。
 なお、WFST401において、出力ラベルolabel(j)として”start”が出力されるのは、状態4から状態5又は状態6に遷移する経路である。従って、フレームtにおける”start”に対する出力スコアyv(t)は、フレームtにおいて、状態4から状態5に遷移する確率、及び、状態4から状態6に遷移する確率のうち大きい方となる。
 また、WFST401において、出力ラベルolabel(j)として”stop”が出力されるのは、状態4から状態7に遷移する経路のみである。従って、フレームtにおける”stop”に対する出力スコアyv(t)は、フレームtにおいて、状態4から状態7に遷移する確率となる。
 なお、図8の上段の状態ベクトルΒ(t)の図において、出力ラベルolabel(j)として”start”が出力される場合の遷移先の状態5及び状態6の状態スコアβ5(t)及び状態スコアβ6(t)に対応するマスが太線で囲まれている。また、出力ラベルolabel(j)として”stop”が出力される場合の遷移先の状態7の状態スコアβ7(t)に対応するマスが、太い点線で囲まれている。さらに、図8の下段の状態ベクトルΑ(t)の図において、出力ラベルolabel(j)として”start”又は”stop”が出力される場合の遷移元の状態4の状態スコアα4(t)に対応するマスが太線で囲まれている。
 図9の矢印より左側には、”stop”及び”start”に対する出力スコアyv(t)が模式的に図示されている。ここでは、フレームt1乃至フレームt14の”stop”及び”start”に対する出力スコアyv(t)がマスで表されている。そして、出力スコアyv(t)が大きくなるほど、マスの濃度が濃くされ、出力スコアyv(t)が小さくなるほど、マスの濃度が薄くされている。
 次に、各単語vに対する出力スコアyv(t)が学習用モデル331のマックスプーリング層354に入力され、例えば、次式(9)の演算が行われ、各単語vに対する最終的な出力スコアである最終スコアyvが計算される。
Figure JPOXMLDOC01-appb-M000008
 すなわち、最終スコアyvは、各単語vの出力スコアyv(t)の最大値に設定される。例えば、図9の例では、”stop”に対する出力スコアyv(t)は、フレームt7で最大になる。従って、”stop”に対する最終スコアyvは、フレームt7の出力スコアyv(t)に設定される。また、”start”に対する出力スコアyv(t)は、フレームt6で最大になる。従って、”start”に対する最終スコアyvは、フレームt6の出力スコアyv(t)に設定される。
 なお、現実の教師データにおいては複数の単語が一文中に現れることが多い。そこで、次式(10)のスコアJが最大になるように、教師データ内の各単語に対する最終スコアyvを計算するようにしてもよい。
Figure JPOXMLDOC01-appb-M000009
 Rは教師データの正解データ内の単語数を示し、rは正解データ内の単語の出現順を示している。ref(r)は正解データ内においてr番目に出現する単語を示し、yref(r)(t)は、フレームtにおける単語ref(r)の出力スコアを示している。t(r-1)は、正解データ内においてr-1番目の単語が出現すると推定されるフレームを示し、t(r+1)は、正解データ内においてr+1番目の単語が出現すると推定されるフレームを示している。
 これにより、正解データ内のr番目の単語ref(r)が出現するフレームtが推定され、単語ref(r)に対する最終スコアyvが、推定されたフレームtにおける単語ref(r)の出力スコアyv(t)に設定される。
 なお、正解データ内のr番目の単語に対する単語ref(r)以外の各単語vの最終スコアyvは、例えば、単語ref(r)が出現すると推定されたフレームtにおける各単語vの出力スコアyv(t)に設定される。
 ステップS8において、学習部311は、誤差演算を行う。
 以上の式(1)乃至式(10)の演算により、学習対象を一般的な識別問題として捉えることができるため、ロス関数を用いてニューラルネットワーク学習を行うことが可能になる。そこで、例えば、学習部311は、ロス関数として次式(11)のソフトマックスクロスエントロピー関数を用いて、学習用モデル331の出力データの誤差を計算する。
Figure JPOXMLDOC01-appb-M000010
 出力ベクトルYは、各単語に対する最終スコアyvを要素とするベクトルである。||Y||1は、出力ベクトルYのL1ノルムを示している。正解ベクトルPは、正解データを示すベクトルであり、正解データに含まれる単語に対するスコアが1に設定され、それ以外の単語に対するスコアが0に設定される。
 なお、例えば、過学習を避けるために、正則化項を追加した次式(12)を用いてもよい。
Figure JPOXMLDOC01-appb-M000011
 なお、Tは入力データのフレーム長を示し、λは任意に設定される重みを示している。また、KL()は、KLダイバージェンスを示し、Xaorg(t)は、学習前又は学習初期に音響モデル131から出力される音響ベクトルを示す。
 ステップS9において、学習部311は、言語モデル132及び音響モデル131のパラメータを更新する。具体的には、学習部311は、統合モデル321において、一般的な機械学習における誤差逆伝搬法(Backpropagation)を用いて、学習用モデル331を構成するニューラルネットワーク、及び、下層の音響モデル131を構成するDNNに誤差伝搬することにより、式(11)又は式(12)のロス関数の値を最小化するようにパラメータの更新を行う。これにより、言語モデル132を構成するWFST401の状態遷移に対する重み(遷移行列Sの重みsi,j)、及び、音響モデル131を構成するDNNのパラメータが更新される。なお、上述した式(1)の行列Wの重みwi,jも更新するようにしてもよい。
 図10は、パラメータの更新の流れを模式的に示している。図10の上段は、図9の矢印の左側の出力データと同様の図である。図10の中段は、図8の上段の後ろ向き演算による状態遷移と同様の図である。図10の下段は、図8の下段の前向き演算による状態遷移と同様の図である。
 例えば、図10の点線の矢印で示されるように、”stop”に対する最終スコアyvの算出に用いられた前向き演算の状態遷移及び後ろ向き演算の状態遷移とそれぞれ逆向きに誤差が伝搬され、各状態遷移に対する重みが更新される。同様に、図10の実線の矢印で示されるように、”start”に対する最終スコアyvの算出に用いられた前向き演算の状態遷移及び後ろ向き演算の状態遷移とそれぞれ逆向きに誤差が伝搬され、各状態遷移に対する重みが更新される。
 また、各フレームtにおける状態ベクトルΑ(t)及び状態ベクトルΒ(t)から音響状態ベクトルXb(t)に誤差が伝搬され、さらに、音響状態ベクトルXb(t)から音響ベクトルXa(t)に誤差が伝搬され、音響モデル131を構成するDNNのパラメータが更新される。
 ステップS10において、学習装置301は、学習処理を終了するか否かを判定する。例えば、学習装置301は、新たな教師データが入力された場合、学習処理を継続すると判定し、処理はステップS1に戻る。
 その後、ステップS10において、学習処理を終了すると判定されるまで、ステップS1乃至ステップS10の処理が繰り返し実行され、音響モデル131及び言語モデル132のパラメータが更新される。
 一方、ステップS10において、学習装置301は、例えば、新たな教師データが入力されなかった場合、学習処理を終了すると判定し、学習処理は終了する。
 なお、この学習処理によりパラメータが更新された音響モデル131が、音声認識装置101に用いられる。また、この学習処理より更新されたパラメータが、音声認識装置101の言語モデル132に反映される。例えば、言語モデル132を構成するWFSTが更新される。
 このように、音響モデル131と学習用モデル331を統合した状態で、音響モデル131及び言語モデル132の両方の学習が行われる。従って、音声認識モデル121全体でパラメータを最適化することができ、音声認識の性能が向上する。
 また、音響モデル131及び言語モデル132は、それぞれ事前に個別に学習されている。そして、学習済みの音響モデル131及び言語モデル132を初期値として図6の学習処理を行うことにより、少量の教師データで、高性能な音声認識モデル121を構築することができる。
 さらに、状態遷移の前向き演算及び後ろ向き演算を組み合わせることにより、汎用的な機械学習への適用性が向上する。これにより、学習処理を容易に行うことができる。また、より多くの経路が探索されるようになり、学習処理をスムーズに行うことが可能になる。
 <<2.変形例>>
 以下、上述した本技術の実施の形態の変形例について説明する。
 例えば、図6の学習処理において、状態遷移の後ろ向き演算を行わずに、前向き演算のみを行うようにしてもよい。この場合、例えば、誤差逆伝搬法によりパラメータの更新を行うために、出力ラベル、及び、それに付随するスコア、並びに、状態遷移の経路を記憶する処理が追加される。
 また、例えば、学習用モデル331を用いて、言語モデル132のみの学習を行うことも可能である。
 さらに、本技術は、上述したDNN-HMM方式の音声認識モデル以外の音声認識モデルの学習に適用することが可能である。例えば、End-to-End方式の音声認識モデルに追加の言語モデルを組み合わせる場合、本技術は、その言語モデルの学習に適用することが可能である。
 また、本技術を用いれば、少量のデータのみで、音声認識モデルの微調整を行う適応処理を超える処理を行うことができる。例えば、音声認識モデルの適応処理を行うAPI(Application Programming Interface)を提供する場合、適応データと合わせて、言語モデルを構成するWFSTを更新するか否かを指定し、それに従って、言語モデルを更新させることが可能である。
 さらに、音声認識に用いる音素の分類方法は、任意である。例えば、一般的な音素をさらに細かな状態に分類するようにしてもよい。
 <<3.その他>>
  <コンピュータの構成例>
 上述した一連の処理は、例えば、音声認識装置101及び学習装置301の処理は、ハードウェアにより実行することもできるし、ソフトウェアにより実行することもできる。一連の処理をソフトウェアにより実行する場合には、そのソフトウェアを構成するプログラムが、コンピュータにインストールされる。ここで、コンピュータには、専用のハードウェアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどが含まれる。
 図11は、上述した一連の処理をプログラムにより実行するコンピュータのハードウェアの構成例を示すブロック図である。
 コンピュータ1000において、CPU(Central Processing Unit)1001,ROM(Read Only Memory)1002,RAM(Random Access Memory)1003は、バス1004により相互に接続されている。
 バス1004には、さらに、入出力インターフェース1005が接続されている。入出力インターフェース1005には、入力部1006、出力部1007、記録部1008、通信部1009、及びドライブ1010が接続されている。
 入力部1006は、入力スイッチ、ボタン、マイクロフォン、撮像素子などよりなる。出力部1007は、ディスプレイ、スピーカなどよりなる。記録部1008は、ハードディスクや不揮発性のメモリなどよりなる。通信部1009は、ネットワークインターフェースなどよりなる。ドライブ1010は、磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリなどのリムーバブルメディア1011を駆動する。
 以上のように構成されるコンピュータ1000では、CPU1001が、例えば、記録部1008に記録されているプログラムを、入出力インターフェース1005及びバス1004を介して、RAM1003にロードして実行することにより、上述した一連の処理が行われる。
 コンピュータ1000(CPU1001)が実行するプログラムは、例えば、パッケージメディア等としてのリムーバブルメディア1011に記録して提供することができる。また、プログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供することができる。
 コンピュータ1000では、プログラムは、リムーバブルメディア1011をドライブ1010に装着することにより、入出力インターフェース1005を介して、記録部1008にインストールすることができる。また、プログラムは、有線または無線の伝送媒体を介して、通信部1009で受信し、記録部1008にインストールすることができる。その他、プログラムは、ROM1002や記録部1008に、あらかじめインストールしておくことができる。
 なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
 また、本明細書において、システムとは、複数の構成要素(装置、モジュール(部品)等)の集合を意味し、すべての構成要素が同一筐体中にあるか否かは問わない。したがって、別個の筐体に収納され、ネットワークを介して接続されている複数の装置、及び、1つの筐体の中に複数のモジュールが収納されている1つの装置は、いずれも、システムである。
 さらに、本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
 例えば、本技術は、1つの機能をネットワークを介して複数の装置で分担、共同して処理するクラウドコンピューティングの構成をとることができる。
 また、上述のフローチャートで説明した各ステップは、1つの装置で実行する他、複数の装置で分担して実行することができる。
 さらに、1つのステップに複数の処理が含まれる場合には、その1つのステップに含まれる複数の処理は、1つの装置で実行する他、複数の装置で分担して実行することができる。
  <構成の組み合わせ例>
 本技術は、以下のような構成をとることもできる。
(1)
 第1のニューラルネットワークにより構成される学習用モデルを用いて言語モデルの学習を行う学習部を
 備える情報処理装置。
(2)
 前記学習部は、前記言語モデルとは別に第2のニューラルネットワークを用いて事前に学習された音響モデルと前記学習用モデルとを統合した統合モデルを用いて、前記言語モデル及び前記音響モデルの学習を行う
 前記(1)に記載の情報処理装置。
(3)
 前記学習部は、前記統合モデルにおいて誤差逆伝搬法により前記言語モデル及び前記音響モデルのパラメータを更新する
 前記(2)に記載の情報処理装置。
(4)
 前記学習用モデルは、
  前記音響モデルから出力される音響データが入力される入力層と、
  前記言語モデルの状態遷移の演算を行う中間層と、
  前記状態遷移の演算結果に基づいて、単語の識別演算を行う出力層と
 を備える前記(2)又は(3)に記載の情報処理装置。
(5)
 前記入力層は、前記音響データを前記言語モデルの状態空間にマッピングする
 前記(4)に記載の情報処理装置。
(6)
 前記音響データは、音声データのフレーム毎の音素の識別結果を示す音響ベクトルを含み、
 前記入力層は、前記音響ベクトルを前記言語モデルの状態空間にマッピングする
 前記(5)に記載の情報処理装置。
(7)
 前記中間層は、前記言語モデルの前記状態遷移を表す遷移行列に基づいて、前記状態遷移の演算を行う
 前記(4)乃至(6)のいずれかに記載の情報処理装置。
(8)
 前記言語モデルは、WFST(Weighted Finite State Transducer)により構成され、
 前記遷移行列は、前記WFSTの状態間の遷移に対する重みを要素とする
 前記(7)に記載の情報処理装置。
(9)
 前記中間層は、前記状態遷移の前向き演算及び後ろ向き演算を行い、
 前記出力層は、前記前向き演算による前記状態遷移の演算結果、及び、前記後ろ向き演算による前記状態遷移の演算結果に基づいて、単語の識別演算を行う
 前記(4)乃至(8)のいずれかに記載の情報処理装置。
(10)
 前記音響モデルは、DNN(Deep Neural Network)-HMM(Hidden Markov Model)方式の音声認識モデルを構成する
 前記(2)乃至(9)のいずれかに記載の情報処理装置。
(11)
 前記学習用モデルは、前記言語モデルの状態遷移を表す遷移行列を用いて構築される
 前記(1)に記載の情報処理装置。
(12)
 前記学習部は、前記学習用モデルにおいて誤差逆伝搬法を用いて前記遷移行列を更新する
 前記(11)に記載の情報処理装置。
(13)
 前記言語モデルは、End-to-End方式の音声認識モデルと組み合わせられる
 前記(1)に記載の情報処理装置。
(14)
 ニューラルネットワークにより構成される学習用モデルを用いて言語モデルの学習を行う
 情報処理方法。
(15)
 ニューラルネットワークにより構成される学習用モデルを用いて言語モデルの学習を行う
 処理をコンピュータに実行させるためのプログラム。
(16)
 第1のニューラルネットワークにより構成される学習用モデルを用いて学習された言語モデルを含む音声認識モデルを用いて音声認識を行う音声認識部を
 備える情報処理装置。
(17)
 前記音声認識モデルは、第2のニューラルネットワークを用いて事前に学習された音響モデルと前記学習用モデルとを統合した統合モデルを用いて学習された前記音響モデル及び前記言語モデルを含む
 前記(16)に記載の情報処理装置。
(18)
 前記音声認識モデルは、前記統合モデルにおいて誤差逆伝搬法を用いてパラメータが更新された前記音響モデル及び前記言語モデルを含む
 前記(17)に記載の情報処理装置。
(19)
 ニューラルネットワークにより構成される学習用モデルを用いて学習された言語モデルを含む音声認識モデルを用いて音声認識を行う
 情報処理方法。
(20)
 ニューラルネットワークにより構成される学習用モデルを用いて学習された言語モデルを含む音声認識モデルを用いて音声認識を行う
 処理をコンピュータに実行させるためのプログラム。
 なお、本明細書に記載された効果はあくまで例示であって限定されるものではなく、他の効果があってもよい。
 101 音声認識装置, 111 信号処理部, 112 特徴量抽出部, 113 音声認識部, 121 音声認識モデル, 131 音響モデル, 132 言語モデル, 301 学習装置, 311 学習部, 統合モデル321, 331 学習用モデル, 351 入力層, 352 中間層, 353 出力層, 354 マックスプーリング層, 401 WFST

Claims (20)

  1.  第1のニューラルネットワークにより構成される学習用モデルを用いて言語モデルの学習を行う学習部を
     備える情報処理装置。
  2.  前記学習部は、前記言語モデルとは別に第2のニューラルネットワークを用いて事前に学習された音響モデルと前記学習用モデルとを統合した統合モデルを用いて、前記言語モデル及び前記音響モデルの学習を行う
     請求項1に記載の情報処理装置。
  3.  前記学習部は、前記統合モデルにおいて誤差逆伝搬法により前記言語モデル及び前記音響モデルのパラメータを更新する
     請求項2に記載の情報処理装置。
  4.  前記学習用モデルは、
      前記音響モデルから出力される音響データが入力される入力層と、
      前記言語モデルの状態遷移の演算を行う中間層と、
      前記状態遷移の演算結果に基づいて、単語の識別演算を行う出力層と
     を備える請求項2に記載の情報処理装置。
  5.  前記入力層は、前記音響データを前記言語モデルの状態空間にマッピングする
     請求項4に記載の情報処理装置。
  6.  前記音響データは、音声データのフレーム毎の音素の識別結果を示す音響ベクトルを含み、
     前記入力層は、前記音響ベクトルを前記言語モデルの状態空間にマッピングする
     請求項5に記載の情報処理装置。
  7.  前記中間層は、前記言語モデルの前記状態遷移を表す遷移行列に基づいて、前記状態遷移の演算を行う
     請求項4に記載の情報処理装置。
  8.  前記言語モデルは、WFST(Weighted Finite State Transducer)により構成され、
     前記遷移行列は、前記WFSTの状態間の遷移に対する重みを要素とする
     請求項7に記載の情報処理装置。
  9.  前記中間層は、前記状態遷移の前向き演算及び後ろ向き演算を行い、
     前記出力層は、前記前向き演算による前記状態遷移の演算結果、及び、前記後ろ向き演算による前記状態遷移の演算結果に基づいて、単語の識別演算を行う
     請求項4に記載の情報処理装置。
  10.  前記音響モデルは、DNN(Deep Neural Network)-HMM(Hidden Markov Model)方式の音声認識モデルを構成する
     請求項2に記載の情報処理装置。
  11.  前記学習用モデルは、前記言語モデルの状態遷移を表す遷移行列を用いて構築される
     請求項1に記載の情報処理装置。
  12.  前記学習部は、前記学習用モデルにおいて誤差逆伝搬法を用いて前記遷移行列を更新する
     請求項11に記載の情報処理装置。
  13.  前記言語モデルは、End-to-End方式の音声認識モデルと組み合わせられる
     請求項1に記載の情報処理装置。
  14.  ニューラルネットワークにより構成される学習用モデルを用いて言語モデルの学習を行う
     情報処理方法。
  15.  ニューラルネットワークにより構成される学習用モデルを用いて言語モデルの学習を行う
     処理をコンピュータに実行させるためのプログラム。
  16.  第1のニューラルネットワークにより構成される学習用モデルを用いて学習された言語モデルを含む音声認識モデルを用いて音声認識を行う音声認識部を
     備える情報処理装置。
  17.  前記音声認識モデルは、第2のニューラルネットワークを用いて事前に学習された音響モデルと前記学習用モデルとを統合した統合モデルを用いて学習された前記音響モデル及び前記言語モデルを含む
     請求項16に記載の情報処理装置。
  18.  前記音声認識モデルは、前記統合モデルにおいて誤差逆伝搬法を用いてパラメータが更新された前記音響モデル及び前記言語モデルを含む
     請求項17に記載の情報処理装置。
  19.  ニューラルネットワークにより構成される学習用モデルを用いて学習された言語モデルを含む音声認識モデルを用いて音声認識を行う
     情報処理方法。
  20.  ニューラルネットワークにより構成される学習用モデルを用いて学習された言語モデルを含む音声認識モデルを用いて音声認識を行う
     処理をコンピュータに実行させるためのプログラム。
PCT/JP2020/011438 2019-03-28 2020-03-16 情報処理装置、情報処理方法、及び、プログラム WO2020196021A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202080022389.3A CN113632165A (zh) 2019-03-28 2020-03-16 信息处理装置、信息处理方法及程序

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2019-062505 2019-03-28
JP2019062505 2019-03-28

Publications (1)

Publication Number Publication Date
WO2020196021A1 true WO2020196021A1 (ja) 2020-10-01

Family

ID=72611472

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2020/011438 WO2020196021A1 (ja) 2019-03-28 2020-03-16 情報処理装置、情報処理方法、及び、プログラム

Country Status (2)

Country Link
CN (1) CN113632165A (ja)
WO (1) WO2020196021A1 (ja)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015075706A (ja) * 2013-10-10 2015-04-20 日本放送協会 誤り修正モデル学習装置、及びプログラム
US20170011738A1 (en) * 2015-07-09 2017-01-12 Google Inc. Generating acoustic models
JP2018060047A (ja) * 2016-10-05 2018-04-12 国立研究開発法人情報通信研究機構 音響モデルの学習装置及びそのためのコンピュータプログラム
JP2018180045A (ja) * 2017-04-04 2018-11-15 日本電信電話株式会社 音響モデル学習装置、モデル学習装置、モデル学習方法、およびプログラム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015075706A (ja) * 2013-10-10 2015-04-20 日本放送協会 誤り修正モデル学習装置、及びプログラム
US20170011738A1 (en) * 2015-07-09 2017-01-12 Google Inc. Generating acoustic models
JP2018060047A (ja) * 2016-10-05 2018-04-12 国立研究開発法人情報通信研究機構 音響モデルの学習装置及びそのためのコンピュータプログラム
JP2018180045A (ja) * 2017-04-04 2018-11-15 日本電信電話株式会社 音響モデル学習装置、モデル学習装置、モデル学習方法、およびプログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
KAWAHARA, TATSUYA,: "State of speechrecognition technology: Deep learning and end-toend modeling", THE JOURNAL OF THE ACOUSTICAL SOCIETY OF JAPAN, vol. 74, no. 7, July 2018 (2018-07-01), pages 381 - 386 *

Also Published As

Publication number Publication date
CN113632165A (zh) 2021-11-09

Similar Documents

Publication Publication Date Title
US11756534B2 (en) Adaptive audio enhancement for multichannel speech recognition
US10347241B1 (en) Speaker-invariant training via adversarial learning
US10629185B2 (en) Statistical acoustic model adaptation method, acoustic model learning method suitable for statistical acoustic model adaptation, storage medium storing parameters for building deep neural network, and computer program for adapting statistical acoustic model
JP6671020B2 (ja) 対話行為推定方法、対話行為推定装置及びプログラム
US9824683B2 (en) Data augmentation method based on stochastic feature mapping for automatic speech recognition
CN106688034B (zh) 具有情感内容的文字至语音转换
US9400955B2 (en) Reducing dynamic range of low-rank decomposition matrices
US9460711B1 (en) Multilingual, acoustic deep neural networks
US10580432B2 (en) Speech recognition using connectionist temporal classification
US20150161993A1 (en) Systems and methods for applying speaker adaption techniques to correlated features
EP3910625A2 (en) Method and apparatus for utterance time estimation
US5956676A (en) Pattern adapting apparatus using minimum description length criterion in pattern recognition processing and speech recognition system
Guo et al. Deep neural network based i-vector mapping for speaker verification using short utterances
Ren et al. Combination of bottleneck feature extraction and dereverberation for distant-talking speech recognition
JP7423056B2 (ja) 推論器および推論器の学習方法
JP2004004906A (ja) 固有声に基づいた最尤法を含む話者と環境の適合化方法
WO2020196021A1 (ja) 情報処理装置、情報処理方法、及び、プログラム
JP4779239B2 (ja) 音響モデル学習装置、音響モデル学習方法、およびそのプログラム
US20240096332A1 (en) Audio signal processing method, audio signal processing apparatus, computer device and storage medium
JP2004279454A (ja) 音声生成モデル話者適応化方法、その装置、そのプログラム及びその記録媒体
US20220277767A1 (en) Voice/non-voice determination device, voice/non-voice determination model parameter learning device, voice/non-voice determination method, voice/non-voice determination model parameter learning method, and program

Legal Events

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

Ref document number: 20777017

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 20777017

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP