WO2016181951A1 - リカレント型ニューラルネットワークの学習方法及びそのためのコンピュータプログラム、並びに音声認識装置 - Google Patents

リカレント型ニューラルネットワークの学習方法及びそのためのコンピュータプログラム、並びに音声認識装置 Download PDF

Info

Publication number
WO2016181951A1
WO2016181951A1 PCT/JP2016/063817 JP2016063817W WO2016181951A1 WO 2016181951 A1 WO2016181951 A1 WO 2016181951A1 JP 2016063817 W JP2016063817 W JP 2016063817W WO 2016181951 A1 WO2016181951 A1 WO 2016181951A1
Authority
WO
WIPO (PCT)
Prior art keywords
learning
vector
rnn
data
learning method
Prior art date
Application number
PCT/JP2016/063817
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 EP16792676.5A priority Critical patent/EP3296930A4/en
Priority to CN201680027062.9A priority patent/CN107615308B/zh
Priority to US15/570,801 priority patent/US10467525B2/en
Publication of WO2016181951A1 publication Critical patent/WO2016181951A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • 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/06Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
    • G10L15/063Training
    • 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
    • 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
    • G10L15/063Training
    • G10L2015/0635Training updating or merging of old and new templates; Mean values; Weighting

Definitions

  • the present invention relates to a learning method for a recurrent neural network (RNN), and more particularly to an RNN learning method capable of improving learning efficiency and improving the accuracy of an RNN after learning, and a computer program therefor.
  • RNN recurrent neural network
  • the RNN is a time series information incorporated in a neural network.
  • Fig. 1 schematically shows the principle of a normal neural network.
  • Neural network 30 is coupled to receive an input vector 40, an input layer 40, a hidden layer 42 coupled to input layer 40 to receive the output of input layer 40, and an output vector of hidden layer 42.
  • Output layer 44 for outputting 48.
  • FIG. 1 shows a case where the number of hidden layers is one for the sake of simplicity, the number of hidden layers is not limited to one.
  • FFNN feedforward neural network
  • the RNN does not include node coupling in one direction as in FFNN, but includes node coupling in the reverse direction, coupling between nodes in the same layer, self-loop at the same node, and the like.
  • FIG. 2 schematically shows a configuration relating to the coupling of each node in one example of the hidden layer of the RNN.
  • this hidden layer 70 includes three nodes as an example. Each of these three nodes, in addition to coupling to receive data from lower layers (layers close to the input layer) and passing data to higher layers (layers close to the output layer), sends data to lower nodes. It has a connection for passing, a connection between nodes in the same hidden layer 70, and a self-loop.
  • Each of these combinations is assigned a weight as a parameter.
  • the number of parameters can be from millions to tens of millions. When used as an acoustic model for speech recognition, these need to be automatically learned from a speech corpus (a pair of speech data and text).
  • the learning method of RNN includes Back-propagation through time method (hereinafter “BPTT”) and its modified Truncated back-propagation through time method (hereinafter “Truncated BPTT”).
  • BPTT Back-propagation through time method
  • Truncated BPTT Truncated back-propagation through time method
  • Non-Patent Document 1 describes a method for performing BPTT using all inputs and all correct data for the entire sequence, and for all partial sequences that are part of the entire sequence, Two Truncated BPTT methods are disclosed in which a partial sequence is shifted in the entire sequence while performing BPTT using all correct data.
  • Non-Patent Document 2 and Non-Patent Document 3 that cites Non-Patent Document 2 disclose variants in which the partial series is one sample in the Truncated BPTT method described in Non-Patent Document 1.
  • Non-Patent Document 4 discloses a method for improving the learning efficiency of RNN by simultaneously processing a plurality of time-series data.
  • Non-Patent Document 1 to Non-Patent Document 4 has a problem that learning with respect to continuous time-series data becomes inefficient like voice data. .
  • FFNN employs a method of rearranging all samples at random before learning. By such a method, the possibility that adjacent learning data becomes similar is reduced, and the efficiency of learning can be increased.
  • time-series data such as audio data
  • the temporal relationship between samples is important.
  • time information is lost when the data is randomly sorted. Therefore, for such data, the learning data cannot be rearranged randomly like FFNN. Therefore, when learning by continuous time-series data such as speech data is performed in the RNN, it is a big problem to improve the learning efficiency.
  • increasing the efficiency of learning means that learning with the same learning data can be used to increase the accuracy without increasing the calculation time, or that less learning data can be used to shorten the learning time. This means that the same accuracy as the existing method can be obtained.
  • an object of the present invention is to provide a learning method capable of improving the efficiency of learning using time-series data related to RNN.
  • the RNN learning method is performed by a computer using learning data prepared in advance.
  • the learning data includes a series of vectors each consisting of a feature value and a reference value of the learning target data.
  • This learning method includes a step of initializing an RNN, a first specifying step of specifying a certain vector in a vector sequence as a learning start position, and each parameter of the RNN for a predetermined value calculated for learning data. And a learning step of learning the RNN by optimizing the error function to be minimized.
  • the learning step uses a vector of N consecutive vectors, where N is an integer greater than or equal to three, starting from the specified vector, and refers to the last vector of the consecutive N vectors.
  • a first iteration step that repeats the process of executing the learning step by newly designating a vector at a satisfying position.
  • the vector at the position that satisfies the predetermined relationship is a vector that is at least two more than the designated vector in the selecting step.
  • the vector at the position satisfying the predetermined relationship is the last vector of the N vectors.
  • the RNN learning method further includes a vector designated in the first designation step in response to determining that the termination condition of the first iteration step is satisfied in the first iteration step.
  • a second designation step of newly designating a vector after a number smaller than N as the start position of the next learning, and a step of executing the learning step until the end condition is satisfied are included.
  • the number smaller than N is 1.
  • the RNN learning method further includes specifying a vector one by one after a certain vector as a new learning start position in response to determining that the end condition is satisfied in the first iteration step.
  • a second iterative step is included in which the learning step is repeatedly executed until the process of designating the vector N ⁇ 1 after the vector is completed.
  • Each of the vectors constituting the vector series may be composed of a feature value of speech data obtained by converting speech and a reference value including a phoneme label of the speech.
  • the computer program according to the second aspect of the present invention causes a computer to execute all the steps of any of the RNN learning methods described above.
  • a speech recognition apparatus includes a framing processing unit that frames an input speech signal with a predetermined shift amount and a predetermined frame length, and a speech signal of each frame output by the framing processing unit.
  • a feature amount extraction unit that extracts a predetermined speech feature amount and outputs a feature amount vector, and a feature amount vector sequence output by the feature amount extraction stage are input, and each time the feature amount vector is input, the feature amount A sound composed of an RNN that has been trained by any of the above-described RNN learning methods so that the speech of the frame corresponding to the vector outputs a vector whose elements are the probabilities of each element of the assumed phoneme set.
  • the word with the highest likelihood of generating the speech signal by probabilistic processing using a model, a sequence of vectors output by the acoustic model, and a statistical language model Outputs a and a speech recognition decoder.
  • FIG. 13 is a hardware block diagram of a computer whose appearance is shown in FIG. 12.
  • RNN is applied to an acoustic model.
  • the present invention is not limited to such an embodiment, and can be applied to any embodiment that performs RNN learning using time-series data.
  • speech recognition, automatic translation, image recognition, video recognition, and the like can be considered as application targets.
  • the audio feature values used in this embodiment are the log power for each mel filter bank, their delta (first derivative), and delta delta (second derivative). You may use the frequency cepstrum coefficient or the audio
  • the RNN is typically realized by a computer and a program executed on the computer.
  • the program that realizes the RNN realizes information indicating the structure of the RNN (number of layers, number of nodes in each layer, information on coupling between nodes, weights and bias values assigned to each coupling, unfolding described later) And a program routine for calculating the value of each node with respect to the input. Learning requires a program for that.
  • the acoustic model using the RNN described below takes a time series of speech feature vector x (t) as an input, and the probability P (s
  • this output is written as y (t).
  • s) is used for likelihood calculation. Therefore, in the acoustic model, the output of the RNN is used after being transformed by the following equation according to Bayes' theorem.
  • an FFNN learning method an error back-propagation method is known.
  • the data is given to the input layer, and the output of the FFNN is obtained from the output layer through the hidden layer. While the error between this output and the correct answer data is propagated backward from the output layer of the FFNN to the input layer, the weight value given to the coupling between the nodes is adjusted so that the error is minimized. Go.
  • an error back-propagation method cannot be applied to the RNN as it is. This is because, unlike the case of FFNN, there is a circulating path.
  • an error back-propagation method can be used for RNN learning by devising the following. It is a method of treating an RNN as a network in which the output of each node at a certain time is given to each node at the next time, assuming that the network is different for each time when the sequence of learning data is given. .
  • FIG. 3 shows an example of such an input / output coupling relationship only for the node 90 in the network at time t ⁇ 1 in order to easily show this relationship. The same applies to other nodes.
  • the input to node 90 at time t-1 is only from each node of the network at time t-2.
  • the output from the node 90 at the time t ⁇ 1 is given only to the node of the network at the time t.
  • the RNN can be considered in the same way as the FFNN, and the learning by the error back propagation method can be applied to the RNN. Note that handling an RNN like another RNN at each time in this way is called “unfolding”.
  • FIG. 4 is a diagram in which the RNN is unfolded. Referring to FIG. 4, it is assumed that the feature vector given to input layer 104 at time t is x (t), the state of hidden layer 102 is s (t), and the output vector of output layer 100 is y (t). If the hidden layer one step before is the hidden layer 106, the state of the hidden layer 106 is s (t-1).
  • Wxs is a matrix whose element is the weight of the coupling between each node of the input layer 104 and each node of the hidden layer 102, its bias vector is bs, and the weight of the coupling between each node of the hidden layer 102 and each node of the output layer 100
  • Wsy is a matrix whose element is Wy, its bias vector is by
  • Wss is a matrix whose element is the weight of the connection between each node of the hidden layer 106 and each node of the hidden layer 102 one step before. Then, the value s (t) of the hidden layer 102 and the output y (t) from the output layer 100 are updated according to the following expression.
  • H () represents Tanh between corresponding elements or a sigmoid function between corresponding elements.
  • the output of the hidden layer 102 up to 3 steps before is used as shown in FIG.
  • the input vector x (t ⁇ 1), the input vector x (t-2) to the input layer 112 two steps before, the value s (t-2) of the hidden layer 110 two steps before, and the value s (t) of the hidden layer 114 three steps before -3) is required. Therefore, it is necessary to secure an area for these in the storage area and store these values.
  • the weight of the connection between them is the same as that shown in the above equation (1).
  • the state data s (t), s (t ⁇ 1), s (t ⁇ 2), and s (t ⁇ 3) have an error e (t), respectively. , E (t-1), e (t-2), and e (t-3).
  • the output y (t) of the RNN at time t is calculated using the output of the hidden layer three steps before and the input two steps before.
  • the learning data includes a reference value ref (t) for the input vector x (t).
  • ref (t) for the input vector x (t).
  • the sign of the error is described in reverse.
  • the parameter Wss is updated by the error back propagation as follows.
  • propagation of the error e (t) in the output layer and propagation of the recursive error e (t ⁇ 1) in the hidden layer 102 are calculated according to the following equations (4) and (5), respectively. .
  • the parameter W ss is updated by the following equation (6).
  • represents the learning rate
  • N represents the number of learning data.
  • W ss not only W ss but also other parameters are updated in the same manner.
  • the first one uses the entire learning data series as input, and performs truncated BPTT using the output of the RNN at each time of the learning data series and the correct data at that time. This is performed sequentially for each learning data series.
  • the second one obtains the output of the RNN at a certain time using the necessary learning data series. Using the output and the correct answer data at that time, the parameter is updated by Truncated BPTT. This is executed for each time, and the learning is performed by processing the entire learning data.
  • this problem is solved by the following method.
  • a method of updating parameters by continuously using adjacent learning data is not used.
  • the learning data that is not adjacent to the learning data and skipped by a predetermined number two in the case of FIG. 7 (in the case of FIG. 7, the third from the data that has been learned)
  • the next parameter update is performed using the learning data.
  • the distance between learning data used in such continuous learning is referred to as a skip length.
  • the skip length is 3.
  • the learning is repeated in this way, reaching the end of the learning data series 130, and thereafter, when there is no learning data that can be similarly selected, the first learning is finished.
  • the data used for learning is about one third of the whole, and therefore the calculation amount is about one third of the calculation amount of the conventional method.
  • the accuracy of the RNN after learning is still higher than that by the conventional method.
  • the processing position is returned to the head of the learning data sequence 130 again and adjacent to the learning data selected as the processing target at the time of the first processing.
  • the learning data to be processed is selected again at the head of the processing target, and the same skip processing as the first processing is repeated.
  • the third process is also executed. By repeating this, learning using all the learning data can be performed.
  • adjacent learning data are not used continuously in each learning.
  • every other learning data is used. Since adjacent learning data is not used in this way, learning efficiency is improved.
  • the accuracy of the model increases as a result of adopting such a method for learning the acoustic model, as will be described later.
  • FIG. 8 is a block diagram showing the configuration of a learning system that performs the above RNN learning.
  • the system includes a learning corpus storage unit 190 that stores a speech corpus used for learning.
  • the speech corpus stored in the learning corpus storage unit 190 is composed of speech data of many utterances and texts that are paired with them.
  • a correspondence relationship is provided between the voice data and the text so that it can be understood which part of the voice data corresponds to which phoneme.
  • the system further framing the speech data of each utterance stored in the learning corpus storage unit 190 with a predetermined shift amount and a predetermined frame length so as to allow a partial overlap, and labeling each frame with a corresponding phoneme label.
  • a learning data creation unit 192 that is output as learning data
  • a learning data storage unit 194 that stores learning data that is output by the learning data creation unit 192
  • learning data that is stored in the learning data storage unit 194 and the above-described method.
  • a learning processing unit 196 that performs learning of the RNN 198. It is this learning processing unit 196 that performs processing different from the conventional one.
  • the learning processing unit 196 is realized by computer hardware and a program executed by a central processing unit (CPU) of the computer hardware. Referring to FIG. 9, such a program secures an area for storing each parameter of RNN on the memory and initializes each parameter by a predetermined initialization method, and a hard disk or the like.
  • the processing 228 repeatedly executed in step 226 includes a processing 250 that executes the function RNN.truncated_BPTT while setting the initial value of the variable t to 0 and increasing the value of the variable t by the variable skip_size.
  • the function RNN.truncated_BPTT is a function for executing the Truncated BPTT, and its argument is the value s (t ⁇ N) of the hidden layer at the time t ⁇ N and the time t ⁇ with the target time as t.
  • the learning system of the RNN according to the present embodiment shown in FIGS. 8 and 9 operates as follows. The operation of this apparatus until the learning data is generated from the speech corpus stored in the learning corpus storage unit 190 and stored in the learning data storage unit 194 is the same as the conventional one.
  • the learning processing unit 196 executes a program having the control structure shown in FIG. 9 and performs the following processing.
  • a storage area for storing the RNN parameters is secured in a storage device such as a memory, and each storage area is initialized with an appropriate value.
  • the value s of the hidden layer has no meaning in practice, and may be initialized to an arbitrary value, for example, 0. Of course, it may be initialized with a value obtained in advance by some method.
  • the skip length is read from the storage device and stored in the area allocated to the variable skip_size in the memory.
  • the skip length refers to the number of data between two pieces of learning data selected at the time of learning.
  • the number of hidden layers to be unfolded by the learning of the RNN is read from the storage device and stored in the memory area assigned to the variable N.
  • step 226 first, the value of the variable loop is determined to be 0. Subsequently, it is determined whether or not the value of the variable loop satisfies the termination condition (loop ⁇ skip_size).
  • the variable skip_size is a positive integer of 2 or more. Therefore, the end condition is not satisfied in the determination in the first iteration, and the process 228 is executed.
  • the value of the variable loop is incremented by 1, and it is determined whether or not the end condition is satisfied. If the end condition is not satisfied, the process 228 is repeated. Thus, the process 228 is repeatedly executed until the end condition is satisfied.
  • the hidden layer value s (t ⁇ N), input values x (t ⁇ N + 1), x (t ⁇ N + 2),..., X (t) from time t ⁇ N + 1 to time t, and time t The function RNN.truncated_BPTT is executed with the correct label ref (t) in FIG. In the first process, these values are indefinite. In this case, 0 may be used as the initial value.
  • step 240 the processing 250 is repeatedly executed while increasing the value of the variable t by the value of the variable skip_size. In this way, by increasing the value of the variable t by the value of the variable skip_size and executing the processing 250, the learning data is selected and the parameters are updated in the form shown at the top of FIG.
  • the process 228 is repeated for the value of the variable skip_size.
  • the value of the variable skip_size is 2 or more, the RNN can be learned with higher accuracy than before even if the process 228 is executed only once.
  • the time required for learning in this case is shorter than that of the conventional one.
  • the processing returns to the beginning of the learning data, and this time from the position shifted backward by one as shown in the next stage of FIG.
  • FIG. 10 shows a graph 260 of frame accuracy using the acoustic model 308 by the RNN learned using the learning method according to the present embodiment and the RNN learned by the second method out of the conventional methods.
  • a graph 262 of frame accuracy using an acoustic model is shown.
  • the graph of FIG. 10 shows the accuracy (frame accuracy) to which a phoneme is applied according to the output value of the RNN in units of frames for common English lecture speech on the vertical axis and the number of learning updates on the horizontal axis. .
  • the configuration of RNN is the same for both, and only the learning method is changed.
  • the speech recognition error rate (the error rate of the output of the speech recognition decoder 310 in FIG. 11 described later) when the learning of the RNN using the above-described learning method finally converged was 18.8%.
  • the speech recognition error rate when the learning of the RNN by the conventional method converges was 21.9%.
  • the end condition for repetition is determined before executing the processing 228 and the processing 250 shown in FIG.
  • the present invention is not limited to such an embodiment.
  • the end condition may be determined after the process 228 or the process 250 is executed.
  • the first embodiment described above relates to an RNN learning method and learning system.
  • the second embodiment of the present invention relates to a speech recognition apparatus that uses an RNN learned by the RNN learning method or learning system of the first embodiment as an acoustic model.
  • speech recognition apparatus 280 has a function of performing speech recognition on input speech 282 and outputting it as speech recognition text 284.
  • the voice recognition device 280 performs analog / digital (A / D) conversion on the input voice 282 and outputs it as a digital signal, and the digitized signal output from the A / D conversion circuit 300 By performing a predetermined acoustic process on each frame output from the framing processing unit 302 and a framing processing unit 302 that frames the audio signal so as to partially overlap with a predetermined length and a predetermined shift amount, And a feature quantity extraction unit 304 that extracts a speech feature quantity of the frame and outputs a feature quantity vector.
  • Information such as a relative time with respect to the head of the input voice 282 is attached to each frame and the feature vector.
  • the log power for each mel filter bank, its first derivative, second derivative, and the like are used.
  • the speech recognition apparatus 280 further receives a feature quantity storage unit 306 for temporarily storing the feature quantity vector output from the feature quantity extraction unit 304 and a feature quantity vector stored in the feature quantity storage unit 306 as input, at each time point.
  • a feature quantity storage unit 306 for temporarily storing the feature quantity vector output from the feature quantity extraction unit 304 and a feature quantity vector stored in the feature quantity storage unit 306 as input, at each time point.
  • acoustic model 308 composed of RNN that outputs a vector indicating the probability of each frame corresponding to a phoneme for each phoneme
  • a vector output by the acoustic model 308 and a statistical language model (not shown)
  • a speech recognition decoder 310 for outputting a word string having the highest likelihood as speech recognition text 284 corresponding to the input speech 282 by performing the process is included.
  • the number of nodes in the input layer of the acoustic model 308 matches the number of elements in the feature vector.
  • the number of nodes in the output layer of the acoustic model 308 matches the number of phonemes assumed in the language handled by the speech recognition apparatus 280.
  • the output of the acoustic model 308 is a vector whose element is the probability that the input speech at that time is a phoneme represented by each node.
  • the speech recognition decoder 310 is a decoder that uses a model called WFST (Weighted Finite State transducer), which has been learned in advance.
  • WFST Weighted Finite State transducer
  • the WFST used here is a graph constructed in advance based on knowledge about the language, and uses a knowledge source called HCLG.
  • H represents HMM
  • C represents context
  • L represents vocabulary
  • G represents grammar.
  • Each node of WFST represents a state (phoneme), and an arc connecting the nodes represents a state transition.
  • Each arc is weighted. This weight represents the probability of state transition.
  • the speech recognition decoder 310 finally calculates the probability of the phoneme sequence by this WFST for each element of the vector output from the acoustic model 308, and traces the WFST while pruning appropriately, so that the likelihood is finally maximized. Is output as speech recognition text 284.
  • the accuracy of speech recognition by the speech recognition device 280 becomes higher than that of the conventional one. Also, since the learning efficiency of the acoustic model is increased, the construction cost can be kept low, and a speech recognition device with high performance and low cost can be realized.
  • the RNN learning system and speech recognition apparatus 280 can be realized by computer hardware and a computer program executed on the computer hardware.
  • FIG. 12 shows the external appearance of the computer system 330
  • FIG. 13 shows the internal configuration of the computer system 330.
  • the computer system 330 includes a computer 340 having a memory port 352 and a DVD (Digital Versatile Disc) drive 350, a keyboard 346, a mouse 348, and a monitor 342.
  • DVD Digital Versatile Disc
  • the computer 340 includes a CPU (Central Processing Unit) 356, a bus 366 connected to the CPU 356, the memory port 352, and the DVD drive 350, and a boot program.
  • a read-only memory (ROM) 358 for storing etc., a random access memory (RAM) 360 connected to the bus 366 for storing program instructions, system programs, work data, etc., and a hard disk 354 are included.
  • the computer system 330 further includes a network interface (I / F) 344 that provides a connection to a network 368 that allows communication with other terminals.
  • I / F network interface
  • a computer program for causing the computer system 330 to function as each function unit of the RNN learning system and the speech recognition apparatus 280 according to the above-described embodiment is stored in the DVD 362 or the removable memory 364 mounted in the DVD drive 350 or the memory port 352. It is stored and further transferred to the hard disk 354. Alternatively, the program may be transmitted to the computer 340 through the network 368 and stored in the hard disk 354. The program is loaded into the RAM 360 when executed. The program may be loaded directly from the DVD 362 to the RAM 360 from the removable memory 364 or via the network 368.
  • This program includes an instruction sequence including a plurality of instructions for causing the computer 340 to function as each functional unit of the RNN learning system and the speech recognition apparatus 280 according to the above embodiment.
  • Some of the basic functions necessary to cause the computer 340 to perform this operation are an operating system or a third party program running on the computer 340 or various dynamically linkable programming toolkits or programs installed on the computer 340 Provided by the library. Therefore, this program itself does not necessarily include all functions necessary for realizing the system and method of this embodiment.
  • This program is a system described above by dynamically calling an appropriate program in an appropriate function or programming toolkit or program library in execution in a controlled manner to obtain a desired result. It is only necessary to include an instruction for realizing a function as a device. Of course, all necessary functions may be provided only by the program.
  • the present invention can be used for constructing and operating artificial intelligence using an RNN by efficiently performing an RNN learning method, and in particular, a manufacturing industry for a device that provides complicated functions such as speech recognition with high accuracy. And can be used in industries that provide such functions.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Biophysics (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Biomedical Technology (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Machine Translation (AREA)
  • Image Analysis (AREA)

Abstract

【課題】時系列のデータによるリカレント型ニューラルネットワーク(RNN)の学習を効率化する学習方法を提供する。【解決手段】学習方法は、RNNを初期化するステップ220と、あるベクトルを開始位置として指定し、各パラメータを誤差関数が最小化するよう最適化することでRNNの学習を行う学習ステップ226とを含む。学習ステップ226は、指定されたベクトルを先頭とする連続するN個(N≧3)のベクトルを用い、末尾のベクトルの参照値を正解ラベルとするTruncated BPTTによりRNNのパラメータを更新する更新ステップ250と、終了条件が成立するまで、更新ステップで使用されたN個のベクトルの末尾のベクトルに対して所定の関係を満たす位置にあるベクトルを新たに指定して、学習ステップを実行する処理を繰返す第1の繰返しステップ240とを含む。所定の関係を満たす位置にあるベクトルは指定されたベクトルより少なくとも2個以上後のベクトルである。

Description

リカレント型ニューラルネットワークの学習方法及びそのためのコンピュータプログラム、並びに音声認識装置
 この発明は、リカレント型ニューラルネットワーク(RNN)の学習方法に関し、特に、学習の効率を高め、かつ学習後のRNNの精度を高めることができるRNNの学習方法及びそのためのコンピュータプログラムに関する。
 近年、音声認識のための音響モデルとしてRNNを用いることが提案されている。RNNとは、ニューラルネットワークに時系列の情報を組込んだものである。
 図1に、通常のニューラルネットワークの原理を模式的に示す。ニューラルネットワーク30は、入力ベクトル46を受ける入力層40と、入力層40の出力を受けるように入力層40に結合された隠れ層42と、隠れ層42の出力を受けるように結合され、出力ベクトル48を出力する出力層44とを含む。図1では、図を簡明にするために隠れ層が1層の場合を示すが、隠れ層の数は1には限定されない。
 このようなニューラルネットワークでは、データは入力層40から隠れ層42へ、隠れ層42から出力層44へと一方向に流れる。したがってこの型のニューラルネットワークはフィードフォワードニューラルネットワーク(FFNN)と呼ばれる。あるノードから別のノードへの結合には重み、ときにはさらにバイアスが与えられ、これら重み及びバイアスの値が学習により定められる。学習時には、学習データを入力ベクトル46として隠れ層42に与え、出力層44から出力ベクトル48を得る。この出力ベクトル48と正解データとの誤差を出力層44側から隠れ層42、入力層40の各ノードに与え、ニューラルネットワーク30としての誤差が最小になるように各重み及びバイアスの値を最適化する。
 一方、RNNは、FFNNのように一方向へのノードの結合でなく、逆方向のノードの結合、同一層内のノード間の結合、同一ノードでの自己ループ等を含む。図2に、RNNの隠れ層の1例の、各ノードの結合に関する構成を模式的に示す。図2において、この隠れ層70は例として3つのノードを含む。これら3つのノードの各々は、より下層(入力層に近い層)からデータを受けるための結合及びより上層(出力層に近い層)にデータを渡すための結合に加え、下層のノードにデータを渡すための結合、同じ隠れ層70内のノードとの間の結合、及び自己ループを持つ。これら結合の各々には重みがパラメータとして割り当てられている。それらパラメータの数は、数百万から数千万になることもある。音声認識のための音響モデルとして使う場合には、これらは、音声コーパス(音声データとテキストの対)から自動的に学習する必要がある。
 RNNの学習方法としては、Back-propagation through time法(以下「BPTT」)及びその変形であるTruncated back-propagation through time法(以下「Truncated BPTT」)がある。
H. Jaeger (2002): Tutorial on training recurrent neural networks, covering BPPT, RTRL, EKF and the "echo state network" approach. GMD Report 159, German National Research Center for Information Technology, 2002 (48 pp.) Mikael Boden. A Guide to Recurrent Neural Networks and Backpropagation. In the Dallas project, 2002. Mikolov Tomas: Statistical Language Models based on Neural Networks. PhD thesis, Brno University of Technology, 2012. G. Heigold, E. McDermott, V. Vanhoucke, A. Senior, and M. Bacchiani, "Asynchronous stochastic optimization for sequence training of deep neural networks," in Acoustics, Speech and Signal Processing (ICASSP), 2014 IEEE International Conference on. IEEE, 2014, pp. 5587-5591.
 上記非特許文献1は、系列全体で、全ての入力と全ての正解データとを用いてBPTTを行う方法と、系列全体の一部である部分系列について、その部分系列全体で、全ての入力と全ての正解データとを用いてBPTTを行いながら部分系列を系列全体の中でずらしていくTruncated BPTT法の2つを開示している。
 非特許文献2と、非特許文献2を引用した非特許文献3とは、上記非特許文献1に記載されたTruncated BPTT法において、部分系列を1サンプルとした変種を開示している。
 非特許文献4は、複数の時系列データを同時に処理することによってRNNの学習を効率化する方法を開示している。
 しかし、非特許文献1~非特許文献4に開示されたいずれの方法においても、音声データのように、連続値の時系列データに対する学習が非効率になるという問題があることが知られている。
 この点に関し、FFNNの学習においても、隣接する学習データが似ている場合には学習が非効率になることが知られている。そのためにFFNNでは、学習前に全てのサンプルをランダムに並べ替える手法が採用されている。こうした手法により、隣接する学習データが類似したものになる可能性は低くなり、学習の効率を高めることができる。
 しかし、音声データのように時系列のデータにおいては、サンプルの間の時間的な関係が重要である。データをランダムに並べ替えると、そうした時間的情報が失われる。したがってこのようなデータに対しては、FFNNのように学習データをランダムに並べ替えることはできない。そのためRNNにおいて音声データのような連続的な時系列のデータによる学習を行う場合、その学習効率を高めることが大きな問題であった。ここで、学習の効率を高めるということは、同じ学習データを用いた学習で計算時間を長大化せずに精度を高める学習が行えること、又は、少ない学習データを用いて、短時間の学習で、既存の方法と同等の精度を得ることができることを意味する。
 それ故に本発明の目的は、RNNに関する時系列のデータによる学習を効率化できる学習方法を提供することである。
 本発明の第1の局面に係るRNNの学習方法は、予め準備された学習データを用いてコンピュータが行う。学習データは、各々が学習対象データの特徴量と参照値とからなるベクトルの系列を含む。この学習方法は、RNNを初期化するステップと、ベクトルの系列内のあるベクトルを学習開始位置として指定する第1の指定ステップと、RNNの各パラメータを、学習データに対して計算される所定の誤差関数が最小化するように最適化することでRNNの学習を行う学習ステップとを含む。学習ステップは、ベクトルの系列のうち、指定されたベクトルを先頭とする、連続するN個、ただしNは3以上の整数、のベクトルを用い、当該連続するN個のベクトルの末尾のベクトルの参照値を正解ラベルとするTruncated BPTTによりRNNのパラメータの更新を行う更新ステップと、予め定める終了条件が成立するまで、更新ステップで使用されたN個のベクトルの末尾のベクトルに対して所定の関係を満たす位置にあるベクトルを新たに指定して、学習ステップを実行する処理を繰返す第1の繰返しステップとを含む。所定の関係を満たす位置にあるベクトルは、選択するステップにおける指定されたベクトルより少なくとも2個以上後のベクトルである。
 好ましくは、所定の関係を満たす位置にあるベクトルは、N個のベクトルの末尾のベクトルである。
 より好ましくは、RNNの学習方法はさらに、第1の繰返しステップで第1の繰返しステップの終了条件が成立していると判定されたことに応答して、第1の指定ステップで指定されたベクトルより、Nより小さな数だけ後のベクトルを次の学習の開始位置として新たに指定する第2の指定ステップと、学習ステップを、終了条件が成立するまで実行するステップとを含む。
 さらに好ましくは、Nより小さな数は1である。
 RNNの学習方法はさらに、第1の繰返しステップで終了条件が成立していると判定されたことに応答して、あるベクトルから1ずつ後のベクトルを新たな学習開始位置として指定しながら、あるベクトルからN―1個後のベクトルを指定した処理が終了するまで、学習ステップを繰返し実行する第2の繰返しステップを含む。
 ベクトルの系列を構成する各ベクトルの各々は、音声を変換して得られた音声データの特徴量と、当該音声の音素ラベルからなる参照値とからなっていてもよい。
 本発明の第2の局面に係るコンピュータプログラムは、コンピュータに、上記したいずれかのRNNの学習方法の全てのステップを実行させる。
 本発明の第3の局面に係る音声認識装置は、入力された音声信号を所定シフト量及び所定フレーム長でフレーム化するフレーム化処理手段と、フレーム化処理手段が出力する各フレームの音声信号から所定の音声特徴量を抽出し特徴量ベクトルを出力する特徴量抽出手段と、特徴量抽出段により出力される特徴量ベクトルの系列を入力とし、特徴量ベクトルが入力されるごとに、その特徴量ベクトルに対応するフレームの音声が、想定される音素の集合の各要素である確率を要素とするベクトルを出力するよう、上記したいずれかのRNNの学習方法により学習を行った、RNNからなる音響モデルと、音響モデルの出力するベクトルの系列と、統計的言語モデルとを用いた確率的処理により、前記音声信号を生成した尤度が最も高い単語列を出力する音声認識デコーダとを含む。
FFNNの1例の概略構成を示す模式図である。 RNNの隠れ層の構成の1例を示す模式図である。 RNNのアンフォールドを説明するための模式図である。 RNNを1ステップだけアンフォールドして、各層の間の結合とその重み行列等の関係を示す図である。 RNNを3ステップだけアンフォールドして、各層の間の結合とその重み行列等の関係を示す図である。 RNNを3ステップだけアンフォールドしたときの誤差逆伝搬と、重み行列と、隠れ層の値と、各層の誤差との関係を示す図である。 本発明の1実施の形態における学習データの選択方法を模式的に示す図である。 本発明の1実施の形態に係るRNNの学習システムの構成を示すブロック図である。 図8に示す学習システムの学習処理部を実現するコンピュータプログラムの制御構造を示すフローチャートである。 本発明の1実施の形態に係る学習方法の効果を従来方法と対比して示すグラフである。 本発明の1実施の形態に係る学習方法により学習したRNNからなる音響モデルを用いた音声認識装置のブロック図である。 学習データを生成するためのプログラムを実行するコンピュータの外観を示す図である。 図12に外観を示すコンピュータのハードウェアブロック図である。
 以下の説明及び図面では、同一の部品には同一の参照番号を付してある。したがって、それらについての詳細な説明は繰返さない。以下の実施の形態では、RNNを音響モデルに適用する例を説明する。しかし本発明はそのような実施の形態には限定されず、時系列のデータを用いてRNNの学習を行う実施の形態であれば、どのようなものに対しても適用できる。例えば音声認識、自動翻訳、画像認識、動画認識等が適用対象として考えられる。
 なお、本実施の形態で使用する音声特徴量は、メルフィルタバンクごとのログパワー、それらのデルタ(一次微分)及びデルタデルタ(二次微分)であるが、これら以外の音声特徴量、例えばメル周波数ケプストラム係数又は線形予測法による音声特徴量を用いてもよい。
 また、RNNは典型的にはコンピュータとその上で実行されるプログラムとにより実現される。RNNを実現するプログラムは、RNNの構造を示す情報(層の数、各層内のノード数、ノード間の結合に関する情報、各結合に割り当てられた重み及びバイアスの値、後述するアンフォールドを実現するための記憶領域及びそれらと各ノードとの結合に関する情報等)と、入力に対する各ノードの値を算出するプログラムルーチンとの集合により実現される。学習にはさらにそのためのプログラムが必要である。
 [第1の実施の形態]
 <本実施の形態における学習方法>
 以下で説明するRNNを用いた音響モデルは、音声特徴量ベクトルx(t)の時系列を入力として、その音声特徴量が、隠れマルコフモデルの値sである確率P(s|x(t))を出力する。以下、この出力をy(t)と書く。音響モデルとしてRNNを使用する場合には、尤度計算にP(x(t)|s)を使用する。したがって、音響モデルには、RNNの出力を、ベイズの定理にしたがった次の式により変形して利用する。
Figure JPOXMLDOC01-appb-M000001
 FFNNの学習方法としては、誤差逆伝搬方式が知られている。誤差逆伝搬方式では、学習データごとに、そのデータを入力層に与え、隠れ層を経て出力層からFFNNの出力を得る。この出力と、正解データとの誤差をFFNNの出力層から入力層に向けて逆に伝搬させながら、誤差が最小となるように、各ノード間の結合に与えられた重みの値を調整していく。
 しかし、このような誤差逆伝搬方式はそのままではRNNには適用できない。これはFFNNの場合と異なり、循環する経路が存在するためである。しかし、以下に述べるような工夫をすることにより、RNNの学習に誤差逆伝搬方式を利用できることが知られている。それは、学習データの系列が与えられる時刻ごとにネットワークを別のものとして考え、ある時刻での各ノードの出力が、次の時刻での各ノードに与えられるようなネットワークとしてRNNを取扱う方法である。
 これは、図3を参照して、時刻t-2でのネットワーク内の各ノードの出力が、時刻t-1での各ノードに与えられるように、各時刻でのネットワークを別のものとして取扱う、という考え方である。図3においては、この関係を分かりやすく示すため、時刻t-1でのネットワーク内のノード90についてのみ、そうした入出力の結合関係の例を示している。他のノードについても同様である。
 図3を参照して、時刻t-1でのノード90への入力は、時刻t-2のネットワークの各ノードからのみである。時刻t-1でのノード90からの出力は、時刻tでのネットワークのノードのみに与えられる。このように考えると、データは時系列で考えて一方向のみに流れる。したがってRNNをFFNNと同様に考えることができ、誤差逆伝搬方式による学習をRNNにも適用できる。なお、このようにRNNを各時刻で別のRNNのように取扱うことを「アンフォールド」と呼ぶ。
 RNNにおいて学習すべきパラメータを説明するために、RNNにおける隠れ層への入力と隠れ層からの出力との関係について説明する。なお、ここでは説明を簡明にするために隠れ層が1つの場合について説明する。図4はRNNをアンフォールドした図である。図4を参照して、時刻tで入力層104に与えられる特徴ベクトルをx(t)、隠れ層102の状態をs(t)、出力層100の出力ベクトルをy(t)とする。1ステップ前の隠れ層を隠れ層106とすると、隠れ層106の状態はs(t-1)となる。入力層104の各ノードと隠れ層102の各ノードとの結合の重みを要素とする行列をWxs,そのバイアスベクトルをbs,隠れ層102の各ノードと出力層100の各ノードとの結合の重みを要素とする行列をWsy,そのバイアスベクトルをby、1ステップ前の隠れ層106の各ノードと隠れ層102の各ノードとの間の結合の重みを要素とする行列をWssとする。すると、隠れ層102の値s(t)及び出力層100からの出力y(t)は以下の式にしたがって更新される。
Figure JPOXMLDOC01-appb-M000002
なお、上式において、H()は対応要素間のTanh又は対応要素間のシグモイド関数を表す。G()はソフトマックス関数と呼ばれる関数である。ベクトルaの要素をa(i=1,…,n)とすると、G(a)のi番目の要素Gは次式で表される。
Figure JPOXMLDOC01-appb-M000003
 上記より明らかなように、RNNのパラメータとして、行列Wxs,Wss、バイアスベクトルbs、byの要素の値を求める必要がある。これらの値を求める処理がRNNの学習である。ここでは、現時刻より3ステップ前までの隠れ層の値を用いてRNNの学習をTruncated BPTTにより行う場合を説明する。
 図5を参照して、この場合、出力層100の出力y(t)、隠れ層102の値s(t)、入力層104への入力x(t)、及び1ステップ前の隠れ層106の間の関係は図4と同様であり、隠れ層102の値s(t)と出力層100の出力y(t)とは、上記式(1)及び(2)で表される。ただし、図5に示すように3ステップ前までの隠れ層102の出力を用いる場合、RNNの出力y(t)を得るためには、1ステップ前の入力層108への入力ベクトルx(t-1),2ステップ前の入力層112への入力ベクトルx(t-2),2ステップ前の隠れ層110の値s(t-2)、及び3ステップ前の隠れ層114の値s(t-3)が必要である。したがってこれらのための領域を記憶領域に確保し、これら値を記憶する必要がある。これらの間の結合の重みは、上記した式(1)に示すものと同様である。なお、隠れ層102,106,110及び114の各々において、状態データs(t),s(t-1),s(t-2)及びs(t-3)は、それぞれ誤差e(t)、e(t-1)、e(t-2)、及びe(t-3)を含んでいる。
 図6を参照して、RNNに関するTruncated BPTTによる学習(パラメータの更新)は以下のようにして行われる。図5に示すようにして、3ステップ前の隠れ層の出力及び2ステップ前の入力までを用いて、時刻tにおけるRNNの出力y(t)を算出する。このとき、学習データは、入力ベクトルx(t)に対する参照値ref(t)を含んでいる。ここで、両者の誤差esmをesm=y(t)-ref(t)とする。誤差の符号をこの逆に記述する場合もある。誤差逆伝搬によるパラメータWssの更新は以下のように行われる。
 まず、出力層での誤差e(t)の伝搬、及び隠れ層102での再帰的な誤差e(t-1)の伝搬は、それぞれ以下の式(4)及び(5)にしたがって算出される。
Figure JPOXMLDOC01-appb-M000004
 また、パラメータWssの更新は以下の式(6)により行われる。
Figure JPOXMLDOC01-appb-M000005
ここで、γは学習率、Nは学習データの数を表す。また、Wssだけでなく他のパラメータも同様に更新される。
 従来のRNNの学習手法のうち、第1番目のものは、学習データ系列全体を入力として、学習データ系列の各時刻でのRNNの出力とその時刻の正解データとを用いてTruncated BPTTを行う。これを各学習データ系列に対して順番に行っていく、というものである。
 2番目のものは、学習データ系列のうち必要なものを用いて、ある時刻でのRNNの出力を得る。その出力と、その時刻での正解データとを用いて、Truncated BPTTによりパラメータの更新を行う。これを各時刻について実行し、学習データ全体を処理することでパラメータの学習を行う。
 しかし、前述したとおり、いずれの方法でも学習効率があまりよくないことが分かっている。その原因の1つとして、音響データの様な連続的な時系列のデータの場合、隣接するデータが互いに似通っている点が挙げられる。前述したとおり、FFNNでは、隣接する学習データが互いに似通っていると学習効率が悪く、RNNについても事情は同様である。
 そこで、本実施の形態では次のような方法によりこの問題を解決する。図7を参照して、この実施の形態の手法では、学習データ系列130が与えられたときに、隣接する学習データを連続して利用してパラメータ更新をする、という方法を採らず、ある学習データによるパラメータ更新が終わったときに、その学習データと隣接しない、所定数(図7の場合には2個)だけ飛越した学習データ(図7の場合には、学習が終わったデータから3番目の学習データ)を用いて次のパラメータ更新を行う。以下、このように連続する学習で用いられる学習データ間の距離をスキップ長と呼ぶ。図7の例ではスキップ長は3である。
 このように学習を繰返して、学習データ系列130の末尾付近まで到達し、それ以後で同様に選択できる学習データが存在しなくなったときに、1回目の学習を終了する。この時点で学習を完了させると、図7の例では学習に用いたデータは全体の3分の1程度、したがって計算量も従来の方法の計算量の3分の1程度となる。しかし、それでも学習後のRNNの精度は従来の方法によるものより高くなる。しかし本実施の形態ではさらに、学習データ全体を有効に使用するために、再度、学習データ系列130の先頭に処理位置を戻し、1回目の処理のときの処理対象として選ばれた学習データに隣接する学習データを処理対象の先頭に選び直し、1回目の処理と同様の飛び越し処理を繰返す。同様に、3回目の処理も実行する。この繰返しにより、全ての学習データを用いた学習を行うことができる。
 この方法によれば、各学習においては、隣接した学習データは連続しては使用されない。図7に示す例では2個おきの学習データが利用される。このように隣接する学習データを用いるわけではないので、学習効率があがる。しかも、例えば音響モデルの学習にこうした手法を採用した結果、モデルの精度が上がることも後述するように確認できた。
 <構成>
 図8に、上記したRNNの学習を行う学習システムの構成をブロック図形式で示す。図8を参照して、このシステムは、学習に用いる音声コーパスを記憶した学習コーパス記憶部190を含む。学習コーパス記憶部190に記憶された音声コーパスは、多数の発話の音声データと、それらと対になるテキストとからなる。また、音声データとテキストとの間には対応関係が付けられており、音声データのどの部分がどの音素に対応するものかが分かるようになっている。
 このシステムはさらに、学習コーパス記憶部190に記憶された各発話の音声データを、所定シフト量及び所定フレーム長で一部重複を許すようにフレーム化し、各フレームに対応音素のラベルを付して学習データとして出力する学習データ作成部192と、学習データ作成部192が出力する学習データを記憶する学習データ記憶部194と、学習データ記憶部194に記憶された学習データを用い、上記した手法によりRNN198の学習を行う学習処理部196とを含む。従来と異なる処理をするのはこの学習処理部196である。
 学習処理部196は、コンピュータハードウェアと、当該コンピュータハードウェアの中央演算処理装置(CPU)が実行するプログラムにより実現される。図9を参照して、そのようなプログラムは、メモリ上にRNNの各パラメータを記憶する領域を確保し、かつ各パラメータを所定の初期化方式により初期化する初期化ステップ220と、ハードディスク等の記憶装置に記憶されている変数であるスキップ長skip_sizeを読出し、メモリに格納するステップ222と、RNNの学習時にアンフォールドする隠れ層の数Nをハードディスク等の記憶装置から読出し、メモリに記憶するステップ224と、 繰返し変数loopの値を、0から変数skip_sizeの値まで1ずつ変化させながら、処理228を繰返し実行するステップ226とを含む。
 ステップ226で繰返し実行される処理228は、変数tの初期値を0として、変数tの値を変数skip_sizeだけ増加しながら関数RNN.truncated_BPTTを実行する処理250とを含む。ここで、関数RNN.truncated_BPTTはTruncated BPTTを実行する関数であり、その引数は、対象となる時刻をtとして、時刻t-Nでの隠れ層の値s(t-N)と、時刻t-N+1から時刻tまでの入力の値x(t-N+1),x(t-N+2),…,x(t)と、時刻tでの正解ラベルref(t)とである。
 <動作>
 図8及び図9に構成を示す本実施の形態に係るRNNの学習システムは以下のように動作する。学習コーパス記憶部190に記憶された音声コーパスから学習データを生成し学習データ記憶部194に記憶するまでのこの装置の動作は、従来のものと変わりない。
 学習処理部196は、図9に示す制御構造を持つプログラムを実行して以下の様な処理を行う。
 このプログラムの実行過程において、初期化ステップ220では、メモリ等の記憶装置内にRNNのパラメータを記憶するための記憶領域が確保され、各記憶領域がそれぞれ適切な値で初期化される。このとき、隠れ層の値sについては実際上意味がなく、任意の値、例えば0に初期化してもよい。もちろん、何らかの手法で予め得た値で初期化してもよい。
 続くステップ222で、スキップ長が記憶装置から読込まれ、メモリの、変数skip_sizeに割り当てられた領域に記憶される。ここで、スキップ長とは、学習時に選択する2つの学習データの間のデータ数を指す。ステップ224では、RNNの学習でアンフォールドする隠れ層の数が記憶装置から読み出され、変数Nに割り当てられたメモリ領域に記憶される。
 ステップ226では、最初に変数loopの値を0に決定する。続いて、変数loopの値が、終了条件(loop<skip_size)を満たすか否かを判定する。変数skip_sizeは2以上の正の整数である。したがって最初の繰返しでの判定では終了条件は充足されず、処理228が実行される。処理228の実行が終わると、変数loopの値が1インクリメントされ、終了条件が充足されるか否かが判定される。終了条件が充足されなければ処理228が繰返される。こうして、終了条件が成立するまで処理228が繰返し実行される。
 処理228の繰返しの各々においては、処理250がステップ240により定められる条件で繰返し実行される。ステップ240では、最初の繰返しで変数tに0の値が設定される。すなわち、現在時刻tとしてt=0が指定される。続いて、繰返しの終了条件(t<データ長)が充足されているか否かが判定される。ここでのデータ長は、学習データの数に相当する。もしも終了条件が充足されていなければ、処理250が実行される。すなわち、隠れ層の値s(t-N)と、時刻t-N+1から時刻tまでの入力の値x(t-N+1),x(t-N+2),…,x(t)と、時刻tでの正解ラベルref(t)を引き数として関数RNN.truncated_BPTTを実行する。最初の処理では、これらの値が不定となるが、その場合には初期値として0を用いれば良い。
 ステップ240では、こうした処理250を変数tの値を変数skip_sizeの値だけ増加させながら繰返して実行する。このように変数tの値を変数skip_sizeの値だけ増加させて処理250を実行することにより、図7の最上段に示すような形で学習データの選択とパラメータの更新とが実行される。
 本実施の形態では、処理228を変数skip_sizeの値だけ繰返している。しかし、上記手法では、繰返しの数が少なくても十分な精度を得ることができる。変数skip_sizeの値が2以上であれば、処理228を1回だけ実行しても従来より高い精度でRNNの学習を行うことができる。この場合の学習に要する時間は従来のものと比較して短くなる。もっとも、本実施の形態のように、学習データをスキップしながら学習する処理が完了した後に、学習データの先頭に戻り、今度は図7の次段に示すように1つ後ろにずらした位置から同じように学習データをスキップしながら学習し、以下同じようにすることで、学習データの全体を効率よく利用でき、RNNの効率を高めることもできる。この場合でも、計算量、したがって処理速度は従来の技術のものと変わらない。
 本実施の形態では、アンフォールドする隠れ層の数Nが3の場合を例にとった。しかしもちろん本発明はそのような実施の形態には限定されない。Nの値は計算量及び利用可能なデータ量に応じ、任意の値でよい。従来のRNNの学習ではN=9及びN=15等がよく使われる。
 結局、上記実施の形態に係る手法では、所定数の間隔をおいた学習データを選択してTruncated BPTTによるパラメータの更新を行っている。この過程では、選択されなかった学習データに対応する隠れ層の値も計算されているため、そこから誤差を計算し学習に利用することができる。従来のTruncated BPTTでは、実際にこのように行っていたが、本手法はこの誤差計算を省略して実行することに相当する。一見、利用できる誤差情報を利用しないため、学習の効率が悪くなるように思われる。しかし、上記したようにRNNの学習効率はかえって高くなるという、予測に反した結果を得ることができた。従来は、学習データの利用の効率を重視するあまり、このように飛び飛びの学習データを用いて計算の結果の一部を破棄しながらパラメータの更新を行うという方法を見出すことができなかったものと思われる。
 <効果>
 図10に、本実施の形態に係る学習手法を用いて学習したRNNによる音響モデル308を用いたフレーム精度のグラフ260と、従来の方式のうち、第2の方式により学習したRNNにより得られた音響モデルを用いたフレーム精度のグラフ262とを示す。図10のグラフは、共通の英語講演音声に対するフレーム単位でのRNNの出力値によりどの音素かを当てる精度(フレーム精度)を縦軸に、学習の更新回数を横軸にして示したものである。RNNの構成は両者とも同じで学習手法を変えただけである。
 上記した学習手法を用いたRNNの学習が最終的に収束したときの音声認識誤り率(後掲の図11の音声認識デコーダ310の出力の誤り率)は18.8%であった。一方、従来手法によるRNNの学習が収束したときの音声認識誤り率は21.9%であった。
 図10から明らかに分かるように、本実施の形態に係る学習方法を用いてRNNの学習を行うと、少ない更新回数で高い精度が得られることが分かる。また、最終的に学習が収束したときに、上記方法を用いて得られたモデルの精度は、従来手法を用いたものよりもかなり高くなることが分かる。
 なお、この実施の形態では、図9に示す処理228及び処理250を実行する前に繰返しの終了条件の判定を行っている。しかし本発明はそのような実施の形態には限定されない。処理228又は処理250を実行した後に終了条件の判定を行うようにしてもよい。
 [第2の実施の形態]
 上記した第1の実施の形態は、RNNの学習方法及び学習システムに関するものであった。本発明の第2の実施の形態は、第1の実施の形態のRNNの学習方法又は学習システムにより学習したRNNを音響モデルとして利用する音声認識装置に関する。
 図11を参照して、この第2の実施の形態に係る音声認識装置280は、入力音声282に対する音声認識を行って、音声認識テキスト284として出力する機能を持つ。音声認識装置280は、入力音声282に対してアナログ/デジタル(A/D)変換を行ってデジタル信号として出力するA/D変換回路300と、A/D変換回路300の出力するデジタル化された音声信号を、所定長及び所定シフト量で一部重複するようにフレーム化するフレーム化処理部302と、フレーム化処理部302の出力する各フレームに対して所定の音響処理を行うことにより、そのフレームの音声特徴量を抽出し特徴量ベクトルを出力する特徴量抽出部304とを含む。各フレーム及び特徴量ベクトルには、入力音声282の例えば先頭に対する相対時刻等の情報が付されている。特徴量としては、前述したとおり、メルフィルタバンクごとのログパワー、その一次微分、二次微分等が用いられる。
 音声認識装置280はさらに、特徴量抽出部304が出力する特徴量ベクトルを一時記憶するための特徴量記憶部306と、特徴量記憶部306に記憶された特徴量ベクトルを入力として、各時刻における各フレームがある音素に対応する確率を音素ごとに示すベクトルを出力する、RNNからなる音響モデル308と、音響モデル308の出力するベクトルと、図示しない統計的言語モデルとを用いて、確率的な処理を行うことによって、入力音声282に対応する音声認識テキスト284として最も尤度の高い単語列を出力するための音声認識デコーダ310とを含む。
 音響モデル308の入力層のノードの数は特徴量ベクトルの要素の数と一致する。音響モデル308の出力層のノードの数は、音声認識装置280が扱う言語で想定される音素の数と一致する。出力層の各ノードには、ある時刻で入力された音声が、そのノードの表す音素である確率が出力される。したがって音響モデル308の出力は、その時刻での入力音声が、各ノードの表す音素である確率を要素とするベクトルである。
 音声認識デコーダ310は、予め学習を行っていた、WFST(Weighted Finite State transducer)と呼ばれるモデルを用いるデコーダである。ここで使用するWFSTは、言語に関する知識により予め構築されるグラフであり、HCLGと呼ばれる知識源を用いる。HはHMMを、Cは文脈を、Lは語彙を、Gは文法を、それぞれ表す。WFSTの各ノードは状態(音素)を表し、ノード間を結ぶアークは状態遷移を表す。各アークには重みが付されている。この重みは、状態遷移の確率を表す。
 音声認識デコーダ310は、音響モデル308が出力するベクトルの各要素について、このWFSTによって音素列の確率計算をし、適宜枝刈りを行いながらWFST上をたどっていくことにより、最終的に最も尤度の高い単語列を音声認識テキスト284として出力する。
 既に述べたように、音響モデル308を第1の実施の形態に係るRNNとすることによって、音声認識装置280による音声認識の精度は従来のものより高くなる。また音響モデルの学習効率も高くなるので、その構築コストも低く抑えることができ、性能がよくコストも低い音声認識装置を実現できる。
 [コンピュータによる実現]
 本発明の実施の形態に係るRNNの学習システム及び音声認識装置280は、コンピュータハードウェアと、そのコンピュータハードウェア上で実行されるコンピュータプログラムとにより実現できる。図12はこのコンピュータシステム330の外観を示し、図13はコンピュータシステム330の内部構成を示す。
 図12を参照して、このコンピュータシステム330は、メモリポート352及びDVD(Digital Versatile Disc)ドライブ350を有するコンピュータ340と、キーボード346と、マウス348と、モニタ342とを含む。
 図13を参照して、コンピュータ340は、メモリポート352及びDVDドライブ350に加えて、CPU(中央処理装置)356と、CPU356、メモリポート352及びDVDドライブ350に接続されたバス366と、ブートプログラム等を記憶する読出専用メモリ(ROM)358と、バス366に接続され、プログラム命令、システムプログラム及び作業データ等を記憶するランダムアクセスメモリ(RAM)360と、ハードディスク354を含む。コンピュータシステム330はさらに、他端末との通信を可能とするネットワーク368への接続を提供するネットワークインターフェイス(I/F)344を含む。
 コンピュータシステム330を上記した実施の形態に係るRNNの学習システム及び音声認識装置280の各機能部として機能させるためのコンピュータプログラムは、DVDドライブ350又はメモリポート352に装着されるDVD362又はリムーバブルメモリ364に記憶され、さらにハードディスク354に転送される。又は、プログラムはネットワーク368を通じてコンピュータ340に送信されハードディスク354に記憶されてもよい。プログラムは実行の際にRAM360にロードされる。DVD362から、リムーバブルメモリ364から又はネットワーク368を介して、直接にRAM360にプログラムをロードしてもよい。
 このプログラムは、コンピュータ340を、上記実施の形態に係るRNNの学習システム及び音声認識装置280の各機能部として機能させるための複数の命令からなる命令列を含む。コンピュータ340にこの動作を行わせるのに必要な基本的機能のいくつかはコンピュータ340上で動作するオペレーティングシステム若しくはサードパーティのプログラム又はコンピュータ340にインストールされる、ダイナミックリンク可能な各種プログラミングツールキット又はプログラムライブラリにより提供される。したがって、このプログラム自体はこの実施の形態のシステム及び方法を実現するのに必要な機能全てを必ずしも含まなくてよい。このプログラムは、命令のうち、所望の結果が得られるように制御されたやり方で適切な機能又はプログラミングツールキット又はプログラムライブラリ内の適切なプログラムを実行時に動的に呼出すことにより、上記したシステム又は装置としての機能を実現する命令のみを含んでいればよい。もちろん、プログラムのみで必要な機能を全て提供してもよい。
 今回開示された実施の形態は単に例示であって、本発明が上記した実施の形態のみに制限されるわけではない。本発明の範囲は、発明の詳細な説明の記載を参酌した上で、請求の範囲の各請求項によって示され、そこに記載された文言と均等の意味及び範囲内での全ての変更を含む。
 本発明は、RNNの学習方法を効率的に行うことにより、RNNを用いた人工知能の構築及び動作に利用でき、特に、音声認識等の、複雑な機能を高精度で提供する装置の製造産業及びそうした機能を提供する産業に利用できる。
 40,104,108,112 入力層
 42,70,102,106,108,110,114 隠れ層
 44,100 出力層
 130 学習データ系列
 190 学習コーパス記憶部
 192 学習データ作成部
 194 学習データ記憶部
 196 学習処理部
 198 RNN
 280 音声認識装置
 304 特徴量抽出部
 306 特徴量記憶部
 308 音響モデル
 310 音声認識デコーダ

Claims (6)

  1. 予め準備された学習データを用いてコンピュータが行う、リカレント型ニューラルネットワーク(RNN)の学習方法であって、
     前記学習データは、各々が学習対象データの特徴量と参照値とからなるベクトルの系列を含み、
     前記学習方法は、
     前記RNNを初期化するステップと、
     前記ベクトルの系列内のあるベクトルを学習開始位置として指定する第1の指定ステップと、
     前記RNNの各パラメータを、前記学習データに対して計算される所定の誤差関数が最小化するように最適化することで前記RNNの学習を行う学習ステップとを含み、
     前記学習ステップは、
     前記ベクトルの系列のうち、指定されたベクトルを先頭とする、連続するN個、ただしNは3以上の整数、のベクトルを用い、当該連続するN個のベクトルの末尾のベクトルの参照値を正解ラベルとするTruncated BPTTにより前記RNNのパラメータの更新を行う更新ステップと、
     予め定める終了条件が成立するまで、前記更新ステップで使用された前記N個のベクトルの末尾のベクトルに対して所定の関係を満たす位置にあるベクトルを新たに指定して、前記学習ステップを実行する処理を繰返す第1の繰返しステップとを含み、
     前記所定の関係を満たす位置にあるベクトルは、前記選択するステップにおける前記指定されたベクトルより少なくとも2個以上後のベクトルである、RNNの学習方法。
  2. 前記所定の関係を満たす位置にあるベクトルは、前記N個のベクトルの末尾のベクトルである、請求項1に記載のRNNの学習方法。
  3. 請求項1又は請求項2に記載のRNNの学習方法であって、さらに、
     前記第1の繰返しステップで前記終了条件が成立していると判定されたことに応答して、前記第1の指定ステップで指定された前記ベクトルより、前記Nより小さな数だけ後のベクトルを次の学習の開始位置として新たに指定する第2の指定ステップと、
     前記学習ステップを、前記終了条件が成立するまで実行するステップとを含む、RNNの学習方法。
  4. 請求項1又は請求項2に記載のRNNの学習方法であって、さらに、前記第1の繰返しステップで前記終了条件が成立していると判定されたことに応答して、前記あるベクトルから1ずつ後のベクトルを新たな学習開始位置として指定しながら、前記あるベクトルからN-1個後のベクトルを指定した処理が終了するまで、前記学習ステップを繰返し実行する第2の繰返しステップを含む、RNNの学習方法。
  5. コンピュータに、請求項1~請求項4のいずれかに記載のRNNの学習方法の全てのステップを実行させる、コンピュータプログラム。
  6. 入力された音声信号を所定シフト量及び所定フレーム長でフレーム化するフレーム化処理手段と、
     前記フレーム化処理手段が出力する各フレームの音声信号から所定の音声特徴量を抽出し特徴量ベクトルを出力する特徴量抽出手段と、
     前記特徴量抽出手段により出力される特徴量ベクトルの系列を入力とし、特徴量ベクトルが入力されるごとに、その特徴量ベクトルに対応するフレームの音声が、想定される音素の集合の各要素である確率を要素とするベクトルを出力するよう、請求項1~請求項4のいずれかに記載の学習方法により学習を行った、RNNからなる音響モデルと、
     前記音響モデルの出力するベクトルの系列と、統計的言語モデルとを用いた確率的処理により、前記音声信号を生成した尤度が最も高い単語列を出力する音声認識デコーダとを含む、音声認識装置。
PCT/JP2016/063817 2015-05-11 2016-05-10 リカレント型ニューラルネットワークの学習方法及びそのためのコンピュータプログラム、並びに音声認識装置 WO2016181951A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
EP16792676.5A EP3296930A4 (en) 2015-05-11 2016-05-10 LEARNING PROCEDURE FOR RECURRENT NEURONAL NETWORK, COMPUTER PROGRAM FOR IT AND VOICE RECOGNITION
CN201680027062.9A CN107615308B (zh) 2015-05-11 2016-05-10 循环神经网络的学习方法及用于该学习方法的计算机程序、和声音识别装置
US15/570,801 US10467525B2 (en) 2015-05-11 2016-05-10 Recurrent neural network training method, computer program therefor and speech recognition device

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2015-096150 2015-05-11
JP2015096150A JP6628350B2 (ja) 2015-05-11 2015-05-11 リカレント型ニューラルネットワークの学習方法及びそのためのコンピュータプログラム、並びに音声認識装置

Publications (1)

Publication Number Publication Date
WO2016181951A1 true WO2016181951A1 (ja) 2016-11-17

Family

ID=57248154

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2016/063817 WO2016181951A1 (ja) 2015-05-11 2016-05-10 リカレント型ニューラルネットワークの学習方法及びそのためのコンピュータプログラム、並びに音声認識装置

Country Status (5)

Country Link
US (1) US10467525B2 (ja)
EP (1) EP3296930A4 (ja)
JP (1) JP6628350B2 (ja)
CN (1) CN107615308B (ja)
WO (1) WO2016181951A1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112529104A (zh) * 2020-12-23 2021-03-19 东软睿驰汽车技术(沈阳)有限公司 一种车辆故障预测模型生成方法、故障预测方法及装置
US11335337B2 (en) * 2018-12-27 2022-05-17 Fujitsu Limited Information processing apparatus and learning method
EP3346462B1 (en) * 2017-01-04 2022-06-08 Samsung Electronics Co., Ltd. Speech recognizing method and apparatus

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6614639B2 (ja) * 2015-05-22 2019-12-04 国立研究開発法人情報通信研究機構 音声認識装置及びコンピュータプログラム
US10915808B2 (en) * 2016-07-05 2021-02-09 International Business Machines Corporation Neural network for chemical compounds
US11853884B2 (en) 2017-02-10 2023-12-26 Synaptics Incorporated Many or one detection classification systems and methods
US11100932B2 (en) * 2017-02-10 2021-08-24 Synaptics Incorporated Robust start-end point detection algorithm using neural network
JP6820764B2 (ja) * 2017-02-28 2021-01-27 日本放送協会 音響モデル学習装置および音響モデル学習プログラム
KR102488338B1 (ko) * 2017-03-09 2023-01-13 삼성전자주식회사 언어 모델을 압축하기 위한 전자 장치, 추천 워드를 제공하기 위한 전자 장치 및 그 동작 방법들
US10825445B2 (en) * 2017-03-23 2020-11-03 Samsung Electronics Co., Ltd. Method and apparatus for training acoustic model
CN107357775A (zh) * 2017-06-05 2017-11-17 百度在线网络技术(北京)有限公司 基于人工智能的循环神经网络的文本纠错方法及装置
KR102033929B1 (ko) * 2017-06-28 2019-10-18 포항공과대학교 산학협력단 아식칩과 스마트폰을 구비하는 실시간 음성인식 장치
JP2019078857A (ja) * 2017-10-24 2019-05-23 国立研究開発法人情報通信研究機構 音響モデルの学習方法及びコンピュータプログラム
CN109559735B (zh) * 2018-10-11 2023-10-27 平安科技(深圳)有限公司 一种基于神经网络的语音识别方法、终端设备及介质
US10891969B2 (en) * 2018-10-19 2021-01-12 Microsoft Technology Licensing, Llc Transforming audio content into images
SG11202107620QA (en) 2019-01-17 2021-08-30 Visa Int Service Ass A deep learning model for learning program embeddings
JP7225876B2 (ja) * 2019-02-08 2023-02-21 富士通株式会社 情報処理装置、演算処理装置および情報処理装置の制御方法
JPWO2020189235A1 (ja) * 2019-03-20 2020-09-24
US11227579B2 (en) * 2019-08-08 2022-01-18 International Business Machines Corporation Data augmentation by frame insertion for speech data
CN112364697B (zh) * 2020-10-14 2021-11-30 陕西师范大学 基于r-lstm模型的脑电信号情绪识别方法
JPWO2022153504A1 (ja) * 2021-01-15 2022-07-21
CN113052388A (zh) * 2021-04-01 2021-06-29 北京工商大学 一种时间序列预测方法及装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009288933A (ja) * 2008-05-28 2009-12-10 Sony Corp 学習装置、学習方法、及びプログラム

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU5468099A (en) 1998-08-07 2000-02-28 Fonix Corporation Methods and apparatus for phoneme estimation using neural networks
JP2007280054A (ja) * 2006-04-06 2007-10-25 Sony Corp 学習装置および学習方法、並びにプログラム
CN102968989B (zh) * 2012-12-10 2014-08-13 中国科学院自动化研究所 一种用于语音识别的Ngram模型改进方法
US10867597B2 (en) * 2013-09-02 2020-12-15 Microsoft Technology Licensing, Llc Assignment of semantic labels to a sequence of words using neural network architectures

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009288933A (ja) * 2008-05-28 2009-12-10 Sony Corp 学習装置、学習方法、及びプログラム

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3346462B1 (en) * 2017-01-04 2022-06-08 Samsung Electronics Co., Ltd. Speech recognizing method and apparatus
US11335337B2 (en) * 2018-12-27 2022-05-17 Fujitsu Limited Information processing apparatus and learning method
CN112529104A (zh) * 2020-12-23 2021-03-19 东软睿驰汽车技术(沈阳)有限公司 一种车辆故障预测模型生成方法、故障预测方法及装置

Also Published As

Publication number Publication date
EP3296930A1 (en) 2018-03-21
EP3296930A4 (en) 2019-01-16
CN107615308A (zh) 2018-01-19
JP2016212273A (ja) 2016-12-15
US10467525B2 (en) 2019-11-05
JP6628350B2 (ja) 2020-01-08
CN107615308B (zh) 2021-02-26
US20180121800A1 (en) 2018-05-03

Similar Documents

Publication Publication Date Title
WO2016181951A1 (ja) リカレント型ニューラルネットワークの学習方法及びそのためのコンピュータプログラム、並びに音声認識装置
JP6686154B2 (ja) 発話認識方法及び装置
KR102167719B1 (ko) 언어 모델 학습 방법 및 장치, 음성 인식 방법 및 장치
JP6727607B2 (ja) 音声認識装置及びコンピュータプログラム
US11132992B2 (en) On-device custom wake word detection
JP5777178B2 (ja) 統計的音響モデルの適応方法、統計的音響モデルの適応に適した音響モデルの学習方法、ディープ・ニューラル・ネットワークを構築するためのパラメータを記憶した記憶媒体、及び統計的音響モデルの適応を行なうためのコンピュータプログラム
JP4545456B2 (ja) 最適区画の分類神経網の構成方法、最適区画の分類神経網を用いた自動ラベリング方法、並びに装置
JP6614639B2 (ja) 音声認識装置及びコンピュータプログラム
KR102399535B1 (ko) 음성 인식을 위한 학습 방법 및 장치
JP6884946B2 (ja) 音響モデルの学習装置及びそのためのコンピュータプログラム
CN108630198B (zh) 用于训练声学模型的方法和设备
JP2004226982A (ja) 隠れ軌跡隠れマルコフモデルを使用した音声認識の方法
WO2019138897A1 (ja) 学習装置および方法、並びにプログラム
JP2004109590A (ja) 音響モデル作成方法および音声認識装置
JP2018013722A (ja) 音響モデル最適化装置及びそのためのコンピュータプログラム
JP4964194B2 (ja) 音声認識モデル作成装置とその方法、音声認識装置とその方法、プログラムとその記録媒体
JP4442211B2 (ja) 音響モデル作成方法
KR102292921B1 (ko) 언어 모델 학습 방법 및 장치, 음성 인식 방법 및 장치
JP2019078857A (ja) 音響モデルの学習方法及びコンピュータプログラム
JP4779239B2 (ja) 音響モデル学習装置、音響モデル学習方法、およびそのプログラム
JP6235922B2 (ja) 重み付き有限状態オートマトン作成装置、記号列変換装置、音声認識装置、それらの方法、及びプログラム
JP2009300716A (ja) 音声認識装置とその方法と、プログラムとその記録媒体
Tang et al. Future Context Attention for Unidirectional LSTM Based Acoustic Model.
WO2020196021A1 (ja) 情報処理装置、情報処理方法、及び、プログラム
JP2004279454A (ja) 音声生成モデル話者適応化方法、その装置、そのプログラム及びその記録媒体

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: 16792676

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 15570801

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE