KR20170088165A - Method and apparatus for speech recognition using deep neural network - Google Patents

Method and apparatus for speech recognition using deep neural network Download PDF

Info

Publication number
KR20170088165A
KR20170088165A KR1020160008167A KR20160008167A KR20170088165A KR 20170088165 A KR20170088165 A KR 20170088165A KR 1020160008167 A KR1020160008167 A KR 1020160008167A KR 20160008167 A KR20160008167 A KR 20160008167A KR 20170088165 A KR20170088165 A KR 20170088165A
Authority
KR
South Korea
Prior art keywords
value
node
weight vector
hidden layer
speech recognition
Prior art date
Application number
KR1020160008167A
Other languages
Korean (ko)
Other versions
KR102204975B1 (en
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 KR1020160008167A priority Critical patent/KR102204975B1/en
Publication of KR20170088165A publication Critical patent/KR20170088165A/en
Application granted granted Critical
Publication of KR102204975B1 publication Critical patent/KR102204975B1/en

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/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/02Feature extraction for speech recognition; Selection of recognition unit
    • 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/20Speech recognition techniques specially adapted for robustness in adverse environments, e.g. in noise, of stress induced speech
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/27Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique
    • G10L25/30Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique using neural networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Signal Processing (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Character Discrimination (AREA)

Abstract

A deep neural network-based speech recognition method according to an aspect of the present invention comprises the steps of: receiving a voice signal; converting the voice signal into a frequency signal; calculating a plurality of max-pooling input node values corresponding to each node of a hidden layer, which is a next node, by using the weighted sum of a vector signal composed of the frequency signal and a weight vector; and determining a largest value among the plurality of max-pooling input node values as a next node value of the hidden layer, wherein the weight vector is calculated by compressing a reference weight vector preset by learning on a time axis.

Description

심층 신경망 기반 음성인식 방법 및 그 장치{METHOD AND APPARATUS FOR SPEECH RECOGNITION USING DEEP NEURAL NETWORK}[0001] METHOD AND APPARATUS FOR SPEECH RECOGNITION USING DEEP NEURAL NETWORK [0002]

본 발명은 음성인식 방법 및 그 장치에 관한 것으로서, 보다 구체적으로는 타임 래핑을 수행한 가중치를 사용하여 발화속도에 강인한 심층 신경망 기반의 음성인식 방법 및 그 장치에 관한 것이다.The present invention relates to a speech recognition method and apparatus thereof, and more particularly, to a depth-of-speech neural network-based speech recognition method and apparatus using robustness against a speech rate using time-lapped weight values.

최근 음성인식이 다양한 분야에서 적용되고 있으며, 심층 신경망(Deep Neural Network)이 적용되면서 인식성능도 많은 개선이 이루어졌다.Recently, speech recognition has been applied to various fields. Deep Neural Network has been used to improve recognition performance.

그러나 사람간의 대화와 같은 자연어 음성 데이터에 대해서는 아직도 음성인식 성능이 높지 못한데, 이는 사람간의 대화에서 나타나는 다양한 자연어 특성이 음향모델 학습에 적절히 반영되지 못하기 때문이고, 이렇게 다양한 특성에 모두 대응하기 위해서는 방대한 양의 자연어 음성데이터가 필요하다.However, speech recognition performance is not high for natural speech data such as human-to-human conversation. This is because various natural language characteristics in human conversation are not adequately reflected in acoustic model learning. In order to cope with such various characteristics, Positive natural language voice data is needed.

음성인식 성능을 떨어뜨리는 자연어 대화 음성에서 나타나는 특성 중 하나는 하나의 발성 안에서도 발화속도가 다양하게 변화한다는 점이다.One of the characteristics of natural speech dialogue that degrades the speech recognition performance is that the speech rate varies in a single speech.

발화하고자 하는 말을 생각하는 동안 발화속도가 느려지기도 하고, 내용이 많아서 급하게 말하다 보면 발화속도는 매우 빨라지기도 하며 발화 중의 음가도 충실히 발현되지 못하는 등의 문제가 음성인식의 성능을 떨어뜨리는 요인이 된다.The speed of speech is slow while thinking about the words to be uttered, and the utterance speed is very fast when speaking rapidly due to the large amount of content, and the problem that voice in utterance is not faithfully expressed is a factor that deteriorates speech recognition performance .

본 발명은 전술한 바와 같은 기술적 배경에서 안출된 것으로서, 발화속도에 적합한 가중치에 연결된 히든노드(hidden node)를 선택하여 학습을 수행함으로써 음성의 발화속도에 적합하게 타임 래핑된 가중치의 맥스-풀링(Max-Pooling) 노드를 선택하여 인식성능이 개선된 음성인식 방법 및 그 장치를 제공하는 것을 그 목적으로 한다.SUMMARY OF THE INVENTION The present invention has been made in view of the technical background as described above, and it is an object of the present invention to provide a method and apparatus for selecting a hidden node connected to a weight suitable for a speech rate, The present invention provides a speech recognition method and a speech recognition method in which recognition performance is improved by selecting a Max-Pooling node.

본 발명의 목적은 이상에서 언급한 목적으로 제한되지 않으며, 언급되지 않은 또 다른 목적들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.The objects of the present invention are not limited to the above-mentioned objects, and other objects not mentioned can be clearly understood by those skilled in the art from the following description.

전술한 목적을 달성하기 위한 본 발명의 일면에 따른 심층 신경망 기반 음성인식방법은, 음성신호를 입력받는 단계; 상기 음성신호를 주파수신호로 변환하는 단계; 상기 주파수신호로 이루어진 벡터신호와 가중치 벡터(Weight Vector)와의 가중치 합(Weighted Sum)으로 다음 단계 은닉층(Hidden Layer)의 각 노드에 대응하는 복수의 맥스-풀링(Max-Pooling) 입력 노드값을 구하는 단계; 및 상기 복수의 맥스-풀링 입력 노드값 가운데 가장 큰 값을 상기 다음 단계 은닉층의 노드값으로 결정하는 단계;를 포함하되, 상기 가중치 벡터는 학습에 의해 미리 설정된 기준 가중치 벡터를 시간축으로 압축하여 구하는 것을 특징으로 한다.According to another aspect of the present invention, there is provided a depth-of-speech neural network-based speech recognition method comprising the steps of: receiving a speech signal; Converting the speech signal into a frequency signal; A plurality of Max-Pooling input node values corresponding to each node of the next hidden layer are obtained by a weighted sum of a vector signal composed of the frequency signal and a weight vector step; And determining a largest value among the plurality of Max-Pulling input node values as a node value of the next-step hidden layer, wherein the weight vector is obtained by compressing a reference weight vector preset by learning on a time axis .

본 발명의 다른 일면에 따른 심층 신경망 기반 음성인식장치는, 하나이상의 프로세서를 포함하고, 상기 프로세서는 음성신호를 입력받는 입력부; 상기 음성신호를 주파수신호로 변환하는 주파수 변환부; 상기 주파수신호로 이루어진 벡터신호와 가중치 벡터(Weight Vector)와의 가중치 합(Weighted Sum)으로 다음 단계 은닉층(Hidden Layer)의 각 노드에 대응하는 복수의 맥스-풀링(Max-Pooling) 입력 노드값을 구하고, 상기 복수의 맥스-풀링 입력 노드값 가운데 가장 큰 값을 상기 다음 단계 은닉층의 노드값으로 결정하는 연산부;를 포함하여 구현하되, 상기 가중치 벡터는 학습에 의해 미리 설정된 기준 가중치 벡터를 시간축으로 압축하여 구하는 것을 특징으로 한다.According to another aspect of the present invention, a depth-of-speech network-based speech recognition apparatus includes at least one processor, the processor including: an input unit for receiving a speech signal; A frequency converter for converting the speech signal into a frequency signal; A plurality of Max-Pooling input node values corresponding to each node of the next hidden layer are obtained by a weighted sum of a vector signal composed of the frequency signals and a weight vector And a computing unit for determining a largest value among the plurality of maximum-pooling input node values as a node value of the next-step hidden layer, wherein the weight vector is generated by compressing a reference weight vector preset by learning on a time axis .

본 발명에 따르면, 사용자 발화 속도에 따라 은닉층 노드값들을 구하기 위한 가중치 벡터의 길이를 조절할 수 있으므로, 사용자 발화 속도 변화에 적절히 학습하여 최적으로 사용자의 음성을 인식할 수 있는 효과가 있다According to the present invention, since the length of the weight vector for obtaining the hidden layer node values can be adjusted according to the user speaking speed, it is possible to learn the user's voice optimally by properly learning the change in the user speaking speed

도 1은 종래기술에 따른 음성인식을 위한 은닉층의 구조를 도시한 도면.
도 2는 본 발명의 일실시예에 따른 입력층과 은닉층의 구조를 나타낸 도면.
도 3은 본 발명의 일실시예에 따른 맥스-풀링 입력 노드를 구하는 과정을 나타낸 도면.
도 4는 본 발명의 일실시예에 따른 가중치 벡터의 시간축 압축 전후를 도시한 도면.
도 5는 본 발명의 일실시예에 따른 음성인식방법의 흐름도.
도 6은 본 발명의 다른 실시예에 따른 음성인식장치의 구조도.
도 7은 본 발명의 또 다른 실시예에 따른 컴퓨터장치의 구조도.
BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 is a diagram showing the structure of a hidden layer for speech recognition according to the prior art; FIG.
2 illustrates a structure of an input layer and a hidden layer according to an embodiment of the present invention.
3 illustrates a process of obtaining a max-pulling input node according to an embodiment of the present invention.
FIG. 4 is a diagram illustrating a time vector before and after compression of a weight vector according to an embodiment of the present invention; FIG.
5 is a flowchart of a speech recognition method according to an embodiment of the present invention.
6 is a structural diagram of a speech recognition apparatus according to another embodiment of the present invention.
7 is a structural view of a computer apparatus according to another embodiment of the present invention;

본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 것이며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 한편, 본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성소자, 단계, 동작 및/또는 소자는 하나 이상의 다른 구성소자, 단계, 동작 및/또는 소자의 존재 또는 추가를 배제하지 않는다.BRIEF DESCRIPTION OF THE DRAWINGS The advantages and features of the present invention and the manner of achieving them will become apparent with reference to the embodiments described in detail below with reference to the accompanying drawings. The present invention may, however, be embodied in many different forms and should not be construed as being limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of the invention to those skilled in the art. Is provided to fully convey the scope of the invention to those skilled in the art, and the invention is only defined by the scope of the claims. It is to be understood that the terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. In the present specification, the singular form includes plural forms unless otherwise specified in the specification. As used herein, the terms " comprises, " and / or "comprising" refer to the presence or absence of one or more other components, steps, operations, and / Or additions.

이하, 본 발명의 바람직한 실시예에 대하여 첨부한 도면을 참조하여 상세히 설명하기로 한다.Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 1은 일반적인 심층 신경망(Deep Neural Network)의 구조를 나타낸다.Figure 1 shows the structure of a general Deep Neural Network.

총 P개의 층(Layer, 121, 122, 123, 124)으로 구성되고, 입력 데이터는 M차의 벡터 형태의 데이터이다. 입력 데이터는 입력 층(v, 110)에 해당되며 M차의 각 값은 입력 층의 각 노드(111)에 해당한다.And a total of P layers 121, 122, 123 and 124, and the input data is data of vector form of the M-th order. The input data corresponds to the input layer (v, 110), and each value of the M-th order corresponds to each node 111 of the input layer.

도 2는 입력신호를 자세히 나타낸 도면이다. 도 2의 (c)는 입력신호를 시간 축과 주파수 축에 대해 나타낸 그래프인데 주파수 축 분석은 필터뱅크(Filter-bank) 방식의 주파수 분석 방식을 사용한다. 주파수 축 분석은 필터뱅크뿐 아니라 DFT(Discrete Fourier Transform), FFT(Fast Fourier Transform), DCT(Discrete Cosine Transform) 등의 다양한 주파수 변환 방식이 사용될 수 있다.2 is a detailed view of an input signal. FIG. 2 (c) is a graph showing the input signal on the time axis and the frequency axis. The frequency axis analysis uses a filter bank-based frequency analysis method. Various frequency transforming methods such as Discrete Fourier Transform (DFT), Fast Fourier Transform (FFT), and Discrete Cosine Transform (DCT) can be used for the frequency axis analysis as well as the filter bank.

음성신호에 대해 필터뱅크 주파수 분석을 수행하면 L개의 주파수 밴드 영역별 특징이 추출되고, 특징은 미리 설정된 길이를 가지는 프레임(Frame)단위로 생성되는데, 프레임의 길이는 10msec 등의 일정한 길이로 설정된다. 즉, 1개의 프레임에 대해 L개의 주파수 밴드 별 필터뱅크 값의 벡터 형식의 특징이 정의된다.When the filter bank frequency analysis is performed on the speech signal, features for each of the L frequency band regions are extracted and the feature is generated in units of frames having a predetermined length. The length of the frame is set to a constant length such as 10 msec . That is, the vector form of the filter bank values of L frequency bands for one frame is defined.

도 2의 (b)에서는 T개의 프레임이 연결된 슈퍼벡터(Supervector)로 입력데이터가 구성되는 것을 나타내는데, 각 프레임별로 L개의 필터뱅크 특징값을 가지고 있으므로 전체 입력 데이터는 M = T*L 에 의해 M차의 입력데이터가 되는 것이다. 특징 데이터는 한프레임씩 쉬프트하여 다시 T개의 프레임을 모아 슈퍼벡터가 정의되고, 이는 다음 프레임의 심층신경망 입력으로 사용된다. 즉, T*L차원의 행렬(Matrix)형태의 특징 데이터를 M차원의 벡터 형태의 특징으로 변환하여 입력하는 것이다.In FIG. 2 (b), input data is constituted by a supervector to which T frames are connected. Since L has filter bank feature values for each frame, the total input data is M It becomes input data of the difference. The feature data is shifted by one frame, and then a supervector is defined by collecting T frames again, which is used as a depth neural network input of the next frame. That is, the feature data of the T * L dimension matrix type is converted into the feature of the M-dimensional vector shape and input.

도 1에서 첫 번째 은닉층(

Figure pat00001
, Hidden Layer, 121)과 입력층(110)은 가중치(weight, W1, 141)로 연결된다. 첫 번째 은닉층(121)은 N개의 노드(Node, 1211)로 구성되며 관계식은 다음 수학식 1과 같다.In FIG. 1, the first hidden layer (
Figure pat00001
The hidden layer 121 and the input layer 110 are connected with weights W1 and 141, respectively. The first hidden layer 121 is composed of N nodes (Node) 1211, and the relational expression is as shown in the following equation (1).

Figure pat00002
Figure pat00002

도 2의 (a)는 첫번째 은닉층(121)인

Figure pat00003
의 계산과정을 2차원적으로 나타낸 도면이다.2 (a) shows the first hidden layer 121
Figure pat00003
In a two-dimensional manner.

첫 번째 은닉층(102)인

Figure pat00004
의 n번째 노드값(121n)인
Figure pat00005
은 M개의 입력 노드값인 v h
Figure pat00006
의 n번째 노드에 연결된 M개의 가중치(141)
Figure pat00007
와의 가중치합(Weighted sum)으로 정의될 수 있고, 이를 행렬 형태로 나타내면 다음 수학식 2와 같다.The first hidden layer 102
Figure pat00004
The n-th node value 121n
Figure pat00005
Is the sum of M input node values v h and
Figure pat00006
M weight values 141 connected to the n < th >
Figure pat00007
And a weighted sum of the weighted sum and the weighted sum.

Figure pat00008
Figure pat00008

첫번째 은닉층

Figure pat00009
의 출력
Figure pat00010
Figure pat00011
을 비선형 함수
Figure pat00012
을 통과시켜 얻을 수 있고, 이는 수학식 3과 같다.The first hidden layer
Figure pat00009
Output of
Figure pat00010
silver
Figure pat00011
Nonlinear function
Figure pat00012
, Which is shown in Equation (3).

Figure pat00013
Figure pat00013

비선형 함수

Figure pat00014
은 활성화 함수(Activation function)라고도 하고 hyperbolic tangent function (tanh), sigmoid function (sigmoid), rectified linear unit function (ReLU) 등의 함수가 사용될 수 있다.Nonlinear function
Figure pat00014
Can be called an activation function, and functions such as hyperbolic tangent function (tanh), sigmoid function (sigmoid), and rectified linear unit function (ReLU) can be used.

활성화 함수는 각 뉴런에 해당하는 은닉층의 출력신호를 결정하기 위해 적용되는데, 신경망 모델에서 뉴런의 주요 기능은 입력층과 가중치(또는 연결강도)의 가중치합을 구한 후 활성화 함수에 의해 출력을 결정하는 것인데, 따라서 활성화 함수에 따라 뉴런의 출력이 달라지는 기능을 한다.The activation function is applied to determine the output signal of the hidden layer corresponding to each neuron. In the neural network model, the main function of the neuron is to obtain the weight sum of the input layer and weight (or connection strength) Thus, the function of the neuron varies depending on the activation function.

도 1의 두번째 은닉층(122)

Figure pat00015
는 첫번째 은닉층(121)의 출력
Figure pat00016
과 두번째 신경망층의 가중치(142)인
Figure pat00017
와의 가중치합으로 정의되고, 이는 수학식 4와 같다.The second hidden layer 122 of FIG.
Figure pat00015
The output of the first hidden layer 121
Figure pat00016
And the weight (142) of the second neural network layer
Figure pat00017
And is expressed by Equation 4. " (4) "

Figure pat00018
Figure pat00018

이를 행렬형태로 나타내면 수학식 5와 같다.This can be expressed by the following equation (5).

Figure pat00019
Figure pat00019

두번째 은닉층(122)

Figure pat00020
의 출력인
Figure pat00021
도 수학식 6과 같이 비선형 함수를 통과한다.The second hidden layer 122,
Figure pat00020
Output of
Figure pat00021
Also passes a nonlinear function as shown in Equation (6).

Figure pat00022
Figure pat00022

이후 나머지 은닉층도 동일한 방식으로 가중치합과 비선형함수를 통과하여 정의된다.The remaining hidden layers are then defined in the same way through the weighted sum and nonlinear functions.

최종 관측 확률을 정의하는 출력층(output layer, o, 130)은 소프트맥스(Softmax)함수에 의하여 정의된다. 소프트맥스는 비선형함수를 거친 결과값들을 분류하기 위한 함수로 노드의 모든 값을 0과 1사이의 값으로 나타내면서, 모든 값을 더하면 1이 되는 정규화 방식의 한 종류이다.The output layer (o, 130) defining the final observation probability is defined by the Softmax function. Softmax is a function for classifying the results through nonlinear functions. It is a kind of normalization method in which all values of a node are expressed as a value between 0 and 1, and all values are added.

도 3은 맥스-풀링(Max-Pooling)방식에 의해 각 은닉층의 노드를 선택하기 위한 방법을 나타낸 도면이다.3 is a diagram illustrating a method for selecting nodes of each hidden layer by a Max-Pooling method.

은닉층의 노드(1211)가 N개일 때 맥스-풀링을 위해 각 은닉층의 노드별로 K개의 입력 노드(12111)가 각각 정의되고, 따라서 총 N*K개의 맥스-풀링 입력 노드는 입력층(111)과 가중치(141)에 의해 모두 연결된 구조를 가진다.K input nodes 12111 are defined for each hidden layer node for max-pulling when the hidden node 1211 is N, and thus, a total of N * K max-pulling input nodes are connected to the input layer 111 And the weights 141 are all connected.

따라서 맥스-풀링 입력노드(12111) 중에서 은닉층의 n번째 노드(1211)를 선택하기 위해서는 은닉층의 n번째 노드(1211)에 대응하는 k개의 맥스-풀링 입력노드(12111)를 구하고 그 중에서 최대값을 선택하여 은닉층의 n번째 노드(1211)로 결정하게 된다.Therefore, in order to select the n-th node 1211 of the hidden layer among the max-pulling input nodes 12111, k max-pulling input nodes 12111 corresponding to the n-th node 1211 of the hidden layer are obtained, And is selected as the n-th node 1211 of the hidden layer.

이를 수학식으로 나타내면 수학식 7 및 수학식 8과 같다.This can be expressed by Equations (7) and (8).

Figure pat00023
Figure pat00023

Figure pat00024
Figure pat00024

수학식 7은 N*K 개의 전체 맥스-풀링 입력 노드(12111)를 입력층(111)과 가중치(141)간의 가중치 합을 이용하여 구하는 식이고, 수학식 8은 이렇게 구해진 k개의 맥스-풀링 입력노드(12111) 중에 최대값을 구하여 은닉층 노드(1211)로 결정하는 것을 나타낸다.Equation (7) is a formula for obtaining N * K total max-pulling input nodes 12111 by using a weight sum between input layer 111 and weight 141, and Equation (8) It is determined that the hidden node 1211 determines the maximum value among the nodes 12111.

도 4는 본 발명에 따른 가중치 래핑(Weight Wrapping)방법에 의해 가중치 벡터가 시간축으로 래핑된 모습을 나타낸다.FIG. 4 shows a weight vector wrapped in a time axis by a weight wrapping method according to the present invention.

가중치 래핑은 사용자의 발화속도에 따라 가중치 벡터의 길이를 조절함으로써 발화속도에 따른 최적의 길이를 가지는 가중치 벡터를 만들어 내어 음성인식률을 높이기 위함이다. 사용자의 발화속도는 분석한 사용자 발화의 음절이나 음소의 길이를 분석함으로써 얻어낼 수 있다.The weighting lapping is to increase the speech recognition rate by generating a weighting vector having an optimal length according to the speaking rate by adjusting the length of the weighting vector according to the speaking rate of the user. The user's speech rate can be obtained by analyzing the length of the syllable or phonemes of the analyzed user utterance.

도 3에서 첫번째 은닉층(121)의 첫번째 노드(1211)값 h(1) 1은 맥스-풀링 입력 노드인 m11(12111)부터 m1k(1211k)까지의 k개의 값 중에 가장 큰 값이 선택된다.In FIG. 3, the value h (1) 1 of the first node 1211 of the first hidden layer 121 is selected to be the largest value among the k values from m 11 (12111) to m 1k (1211k) .

도 4의 (a)는 도 3의 맥스-풀링 입력 노드(12111)중 첫번째 값인 m11에 연결된 가중치 벡터 W11(141)을 시간축과 주파수축의 2차원 축으로 재해석 한 그래프이다. 도 4의 (a)와 같이 행렬 형태로 표현된 가중치 벡터를 기준 가중치 벡터(Reference Weight Vector)로 정의한다.FIG. 4A is a graph re-analyzing the weight vector W 11 (141) connected to m 11 , which is the first value among the max-pulling input nodes 12111 of FIG. 3, on a two-dimensional axis of a time axis and a frequency axis. A weight vector expressed in a matrix form as shown in FIG. 4A is defined as a reference weight vector.

도 4의 (b)는 본 발명에 따라 기준 가중치 벡터를 시간축으로 래핑하여 새로운 가중치 벡터를 만들었을 때의 시간축과 주파수축의 그래프로 나타낸 것이다.FIG. 4B is a graph of a time axis and a frequency axis when a new weight vector is created by wrapping a reference weight vector on a time axis according to the present invention.

기준 가중치 벡터 Wnk를 이용하여 타임 래핑된 가중치 벡터

Figure pat00025
를 구하는 식은 다음 수학식 9와 같다.Using the reference weight vector W nk , a time-wrapped weight vector
Figure pat00025
Is expressed by Equation (9). &Quot; (9) "

Figure pat00026
Figure pat00026

t는 행렬 형태의 가중치 벡터에서의 프레임 인덱스를 나타내고, l은 주파수 밴드의 인덱스를 나타낸다. 따라서

Figure pat00027
는 t번째 프레임의
Figure pat00028
l번째 필터뱅크 값을 나타낸다.t denotes a frame index in a weight vector of a matrix form, and 1 denotes an index of a frequency band. therefore
Figure pat00027
Lt; th > frame
Figure pat00028
represents the lth filter bank value.

시간축 래핑 정도에 따라 임계값(Threshold)인 th1, th2를 결정하고, T프레임 길이만큼의 시간축 길이를 가졌던 기준 가중치 벡터

Figure pat00029
가 T' 프레임 길이를 가지는
Figure pat00030
벡터로 수학식 9에 의해 시간축으로 압축이 이루어진다.Th 1 , th 2 , which is a threshold value, is determined according to the degree of temporal lapping, and a reference weight vector having a time-
Figure pat00029
Lt; RTI ID = 0.0 > T '
Figure pat00030
The vector is compressed on the time axis by the equation (9).

기준 가중치 벡터에서 시간축으로 중심 프레임에 해당하는 값은 변환된 가중치 벡터에서도 중심값으로 사용된다. In the reference weight vector, the value corresponding to the center frame with respect to the time axis is also used as the center value in the converted weight vector.

만일 중심 프레임이 정수가 아닌 경우 중심 프레임에 인접한 두 개의 값을 모두 중심값으로 사용한다. 예컨대, 기준 가중치 벡터가 시간축으로 T=10 프레임의 길이를 가진다면 중심 프레임은 5.5프레임이 해당되므로 인접한 5프레임과 6프레임의 값들을 모두 중심 프레임으로 사용한다.If the center frame is not an integer, all two values adjacent to the center frame are used as the center value. For example, if the reference weight vector has a length of T = 10 frames on the time axis, the center frame is equivalent to 5.5 frames, so the values of the adjacent 5 frames and 6 frames are used as the center frame.

경계점에 해당하는 th1과 th2에 해당하는 프레임의 값들은 기준 가중치 벡터의 시작 값과 끝 값, 즉, t=1에서의 값과 t=T에서의 값을 이용한다.Value of the frame corresponding to the th and th 1 2 corresponding to the feature points are used in the value and the value of t = T at the start and end values of the reference weight vector, that is, t = 1.

th1보다 작거나 th2보다 큰 구간의 값은 0으로 정의하여 시간축으로 압축된 결과를 얻을 수 있다.The value of the interval that is smaller than th 1 or larger than th 2 is defined as 0, so that the result of compression can be obtained on the time axis.

나머지 구간에서는 다음 수학식 10과 수학식 11에 의해 t'값을 구하고 t'에서의 기준 가중치값을 t에서 변환된 가중치 값으로 사용한다.In the remaining section, t 'value is obtained by the following equations (10) and (11), and the reference weight value at t' is used as a weight value converted from t.

Figure pat00031
Figure pat00031

Figure pat00032
Figure pat00032

변환된 가중치 벡터의 정규화를 위해 정규화 보든 가중치 벡터에 정규화 지수인 Z를 나누어 준다. For the normalization of the transformed weight vector, the normalization index Z is divided into the normalization vector and the weight vector.

t'를 구할 때 t'값이 정수 값이 아닌 값일 때는 t'에 해당하는 가중치값은 추정에 의해 구해야 한다.When t 'is a value other than an integer value, the weight value corresponding to t' must be obtained by estimation.

정수가 아닌 실수값 t'가 정수 t와 t+1 사이의 값인 경우에 다양한 방법에 의해 해당 가중치 값을 추정할 수 있다. If the non-integer real value t 'is a value between integer t and t + 1, the corresponding weight value can be estimated by various methods.

예컨대, t에 해당하는 가중치와 t+1에 해당하는 가중치에 해당하는 값을 t'만큼 선형 보간(Linear Interpolation) 방법으로 추정하거나, t'값을 반올림, 올림, 내림 등의 연산으로 t또는 t+1로 만든 후 해당 가중치값을 사용하는 것이다.For example, a value corresponding to t and a weight corresponding to t + 1 may be estimated by a linear interpolation method by t ', or t or t may be calculated by rounding, +1 and then use that weight value.

또는 비선형 보간(Non-linear Interpolation)으로 추정할 수 있는데, 로그함수나 지수함수를 이용하여 비선형으로 보간하여 t'에 해당하는 가중치 값을 수행할 수도 있다.Or non-linear interpolation. Non-linear interpolation may be performed using a logarithmic function or an exponential function to perform a weight value corresponding to t '.

도 5는 전술한 본 발명에 따른 가중치의 래핑방법에 의한 음성인식방법의 흐름도를 나타낸다.5 is a flowchart of a speech recognition method according to the weighting lapping method according to the present invention described above.

우선 음성인식을 위한 대상 음성신호를 입력받아(S510), 주파수신호로 변환하는데(S520), 이때 필터뱅크, DFT, FFT등의 다양한 방법이 사용될 수 있다.Various methods such as a filter bank, a DFT, and an FFT can be used at this time, in which a target speech signal for speech recognition is received (S510) and converted into a frequency signal (S520).

주파수 변환된 신호를 입력신호로 하여 맥스-풀링 입력노드를 구하고(S530), 입력노드 값들 중 가장 큰 값들을 골라 다음 단계 은닉층의 노드값을 구하게 된다(S540).The max-pulling input node is obtained by using the frequency-converted signal as an input signal (S530), and the largest value among the input node values is selected to obtain the node value of the next step hidden layer (S540).

은닉층의 노드값을 구한 후 출력값을 구하는 것은 hyperbolic tangent function (tanh), sigmoid function (sigmoid), rectified linear unit function (ReLU) 등의 비선형 함수를 이용하고 이들은 활성화 함수라고도 한다.Nonlinear functions such as hyperbolic tangent function (tanh), sigmoid function (sigmoid), and rectified linear unit function (ReLU) are used to obtain the output value after obtaining the hidden node value.

맥스-풀링 입력노드를 구하는 단계(S530)에서 본 발명에 따른 가중치 래핑을 수행하게 되는데 자세한 방법은 전술한 바와 같다.The weight wraps according to the present invention are performed in step S530 of obtaining a max-pulling input node. The detailed method is as described above.

도 6은 본 발명의 다른 실시예에 따른 음성인식장치(60)의 구조를 나타낸다.6 shows a structure of a speech recognition apparatus 60 according to another embodiment of the present invention.

음성인식장치(60)는 입력부(610), 주파수 변환부(620) 및 연산부(630)를 포함한다.The speech recognition apparatus 60 includes an input unit 610, a frequency conversion unit 620, and an operation unit 630.

입력부(610)는 음성신호를 입력받고, 주파수 변환부(620)에 의해 음성신호는 시간축 신호에서 시간축과 주파수축의 성분을 가지는 성분으로 변환된다.The input unit 610 receives a voice signal, and the voice signal is converted into a component having a time axis and a frequency axis component in the time axis signal by the frequency converting unit 620.

연산부(630)에서는 변환된 신호를 입력신호로 하여 본 발명에 따른 래핑된 가중치 벡터를 이용하여 맥스-풀링 입력 노드값을 계산하고, 그 중 최대값을 선택하여 은닉층 노드값으로 결정한 후, 마지막으로 비선형 함수를 통과하여 은닉층의 노드 출력값을 계산한다.The operation unit 630 calculates the max-pulling input node value using the wrapped weight vector according to the present invention using the converted signal as an input signal, and selects the maximum value among the calculated max-pulling input node values to determine the hidden node value. And calculates the node output value of the hidden layer through the nonlinear function.

이상에서 설명한 가중치의 래핑방법에 의해 은닉층의 노드들을 계산함으로써 사용자의 발화속도가 변화하더라도 가중치 벡터의 압축정도를 조절하여 대응함으로써 좀 더 정확한 음성인식이 가능해진다.By calculating the nodes of the hidden layer by the weighting lapping method described above, even if the user's speech speed changes, more accurate speech recognition becomes possible by adjusting the compression degree of the weight vector.

한편, 본 발명의 실시예에 따른 심층 신경망 기반 음성인식방법은 컴퓨터 시스템에서 구현되거나, 또는 기록매체에 기록될 수 있다. 도 7에 도시된 바와 같이, 컴퓨터 시스템은 적어도 하나 이상의 프로세서(721)와, 메모리(723)와, 사용자 입력 장치(726)와, 데이터 통신 버스(722)와, 사용자 출력 장치(727)와, 저장소(728)를 포함할 수 있다. 전술한 각각의 구성 요소는 데이터 통신 버스(722)를 통해 데이터 통신을 한다.Meanwhile, the neural network based speech recognition method according to an embodiment of the present invention can be implemented in a computer system or recorded on a recording medium. 7, the computer system includes at least one processor 721, a memory 723, a user input device 726, a data communication bus 722, a user output device 727, And a storage 728. Each of the above-described components performs data communication via a data communication bus 722. [

컴퓨터 시스템은 네트워크에 커플링된 네트워크 인터페이스(129)를 더 포함할 수 있다. 상기 프로세서(721)는 중앙처리 장치(central processing unit (CPU))이거나, 혹은 메모리(723) 및/또는 저장소(728)에 저장된 명령어를 처리하는 반도체 장치일 수 있다. The computer system may further include a network interface 129 coupled to the network. The processor 721 may be a central processing unit (CPU) or a semiconductor device that processes instructions stored in the memory 723 and / or the storage 728.

상기 메모리(723) 및 상기 저장소(728)는 다양한 형태의 휘발성 혹은 비휘발성 저장매체를 포함할 수 있다. 예컨대, 상기 메모리(723)는 ROM(124) 및 RAM(725)을 포함할 수 있다.The memory 723 and the storage 728 may include various forms of volatile or non-volatile storage media. For example, the memory 723 may include a ROM 124 and a RAM 725.

따라서, 본 발명의 실시예에 따른 심층 신경망 기반 음성인식방법은 컴퓨터에서 실행 가능한 방법으로 구현될 수 있다. 본 발명의 실시예에 따른 심층 신경망 기반 음성인식방법이 컴퓨터 장치에서 수행될 때, 컴퓨터로 판독 가능한 명령어들이 본 발명에 따른 인식 방법을 수행할 수 있다.Therefore, the depth-of-neural network-based speech recognition method according to the embodiment of the present invention can be implemented in a computer-executable method. When a neural network-based speech recognition method according to an embodiment of the present invention is performed in a computer device, computer-readable instructions can perform the recognition method according to the present invention.

한편, 상술한 본 발명에 따른 심층 신경망 기반 음성인식방법은 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현되는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록 매체로는 컴퓨터 시스템에 의하여 해독될 수 있는 데이터가 저장된 모든 종류의 기록 매체를 포함한다. 예를 들어, ROM(Read Only Memory), RAM(Random Access Memory), 자기 테이프, 자기 디스크, 플래시 메모리, 광 데이터 저장장치 등이 있을 수 있다. 또한, 컴퓨터로 판독 가능한 기록매체는 컴퓨터 통신망으로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 읽을 수 있는 코드로서 저장되고 실행될 수 있다.Meanwhile, the neural network-based speech recognition method according to the present invention can be implemented as a computer-readable code on a computer-readable recording medium. The computer-readable recording medium includes all kinds of recording media storing data that can be decoded by a computer system. For example, there may be a ROM (Read Only Memory), a RAM (Random Access Memory), a magnetic tape, a magnetic disk, a flash memory, an optical data storage device and the like. The computer-readable recording medium may also be distributed and executed in a computer system connected to a computer network and stored and executed as a code that can be read in a distributed manner.

이상, 본 발명의 구성에 대하여 첨부 도면을 참조하여 상세히 설명하였으나, 이는 예시에 불과한 것으로서, 본 발명이 속하는 기술분야에 통상의 지식을 가진자라면 본 발명의 기술적 사상의 범위 내에서 다양한 변형과 변경이가능함은 물론이다. 따라서 본 발명의 보호 범위는 전술한 실시예에 국한되어서는 아니되며 이하의 특허청구범위의 기재에 의하여 정해져야 할 것이다.While the present invention has been described in detail with reference to the accompanying drawings, it is to be understood that the invention is not limited to the above-described embodiments. Those skilled in the art will appreciate that various modifications, Of course, this is possible. Accordingly, the scope of protection of the present invention should not be limited to the above-described embodiments, but should be determined by the description of the following claims.

Claims (1)

음성신호를 입력받는 단계;
상기 음성신호를 주파수신호로 변환하는 단계;
상기 주파수신호로 이루어진 벡터신호와 가중치 벡터(Weight Vector)와의 가중치 합(Weighted Sum)으로 다음 단계 은닉층(Hidden Layer)의 각 노드에 대응하는 복수의 맥스-풀링(Max-Pooling) 입력 노드값을 구하는 단계; 및
상기 복수의 맥스-풀링 입력 노드값 가운데 가장 큰 값을 상기 다음 단계 은닉층의 노드값으로 결정하는 단계;를 포함하되,
상기 가중치 벡터는 학습에 의해 미리 설정된 기준 가중치 벡터를 시간축으로 압축하여 구하는 것
인 심층 신경망 기반 음성인식방법.
Receiving a voice signal;
Converting the speech signal into a frequency signal;
A plurality of Max-Pooling input node values corresponding to each node of the next hidden layer are obtained by a weighted sum of a vector signal composed of the frequency signal and a weight vector step; And
Determining a largest value among the plurality of max-pulling input node values as a node value of the next-step hidden layer,
The weight vector is obtained by compressing a reference weight vector preset by learning on a time axis
Based neural network based speech recognition.
KR1020160008167A 2016-01-22 2016-01-22 Method and apparatus for speech recognition using deep neural network KR102204975B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020160008167A KR102204975B1 (en) 2016-01-22 2016-01-22 Method and apparatus for speech recognition using deep neural network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020160008167A KR102204975B1 (en) 2016-01-22 2016-01-22 Method and apparatus for speech recognition using deep neural network

Publications (2)

Publication Number Publication Date
KR20170088165A true KR20170088165A (en) 2017-08-01
KR102204975B1 KR102204975B1 (en) 2021-01-19

Family

ID=59650151

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020160008167A KR102204975B1 (en) 2016-01-22 2016-01-22 Method and apparatus for speech recognition using deep neural network

Country Status (1)

Country Link
KR (1) KR102204975B1 (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10540988B2 (en) 2018-03-15 2020-01-21 Electronics And Telecommunications Research Institute Method and apparatus for sound event detection robust to frequency change
KR20210015542A (en) * 2019-08-02 2021-02-10 서울시립대학교 산학협력단 Apparatus for identifying speaker based on in-depth neural network capable of enrolling unregistered speakers, method thereof and computer recordable medium storing program to perform the method
KR20210093648A (en) * 2020-01-20 2021-07-28 경희대학교 산학협력단 Method and apparatus for processing weight of artificial neural network
US11205442B2 (en) 2019-03-18 2021-12-21 Electronics And Telecommunications Research Institute Method and apparatus for recognition of sound events based on convolutional neural network

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100217145A1 (en) * 2006-06-09 2010-08-26 Bracco Spa Method of processing multichannel and multivariate signals and method of classifying sources of multichannel and multivariate signals operating according to such processing method

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100217145A1 (en) * 2006-06-09 2010-08-26 Bracco Spa Method of processing multichannel and multivariate signals and method of classifying sources of multichannel and multivariate signals operating according to such processing method

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Huang 등, ‘ AN ANALYSIS OF CONVOLUTIONAL NEURAL NETWORKS FOR SPEECH RECOGNITION’, 2015 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP), 2015.04.19. *
Nakkiran 등, ‘Compressing Deep Neural Networks using a Rank-Constrained Topology’, Proceedings of Annual Conference of the International Speech Communication Association (Interspeech), 2015. *
Ossama 등. ‘Convolutional Neural Networks for Speech Recognition’, IEEE/ACM TRANSACTIONS ON AUDIO, SPEECH, AND LANGUAGE PROCESSING, VOL. 22, NO. 10, 2014. *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10540988B2 (en) 2018-03-15 2020-01-21 Electronics And Telecommunications Research Institute Method and apparatus for sound event detection robust to frequency change
US11205442B2 (en) 2019-03-18 2021-12-21 Electronics And Telecommunications Research Institute Method and apparatus for recognition of sound events based on convolutional neural network
KR20210015542A (en) * 2019-08-02 2021-02-10 서울시립대학교 산학협력단 Apparatus for identifying speaker based on in-depth neural network capable of enrolling unregistered speakers, method thereof and computer recordable medium storing program to perform the method
KR20210093648A (en) * 2020-01-20 2021-07-28 경희대학교 산학협력단 Method and apparatus for processing weight of artificial neural network

Also Published As

Publication number Publication date
KR102204975B1 (en) 2021-01-19

Similar Documents

Publication Publication Date Title
KR102235568B1 (en) Environment sound recognition method based on convolutional neural networks, and system thereof
Hossan et al. A novel approach for MFCC feature extraction
CN108281146B (en) Short voice speaker identification method and device
CN109326299B (en) Speech enhancement method, device and storage medium based on full convolution neural network
CN108447495B (en) Deep learning voice enhancement method based on comprehensive feature set
CN112712812B (en) Audio signal generation method, device, equipment and storage medium
WO2018223727A1 (en) Voiceprint recognition method, apparatus and device, and medium
US9530403B2 (en) Terminal and server of speaker-adaptation speech-recognition system and method for operating the system
KR101892733B1 (en) Voice recognition apparatus based on cepstrum feature vector and method thereof
JP6195548B2 (en) Signal analysis apparatus, method, and program
KR102204975B1 (en) Method and apparatus for speech recognition using deep neural network
Chaudhary et al. Gender identification based on voice signal characteristics
CN110942766A (en) Audio event detection method, system, mobile terminal and storage medium
US9583120B2 (en) Noise cancellation apparatus and method
Abdalla et al. DWT and MFCCs based feature extraction methods for isolated word recognition
Zulkifly et al. Relative spectral-perceptual linear prediction (RASTA-PLP) speech signals analysis using singular value decomposition (SVD)
KR100827097B1 (en) Method for determining variable length of frame for preprocessing of a speech signal and method and apparatus for preprocessing a speech signal using the same
CN110176243B (en) Speech enhancement method, model training method, device and computer equipment
CN113823301A (en) Training method and device of voice enhancement model and voice enhancement method and device
WO2007041789A1 (en) Front-end processing of speech signals
Raj et al. Multilayered convolutional neural network-based auto-CODEC for audio signal denoising using mel-frequency cepstral coefficients
JP4871191B2 (en) Target signal section estimation device, target signal section estimation method, target signal section estimation program, and recording medium
US20090037172A1 (en) Method for generating a vector codebook, method and device for compressing data, and distributed speech recognition system
Abka et al. Speech recognition features: Comparison studies on robustness against environmental distortions
Raj et al. Audio signal quality enhancement using multi-layered convolutional neural network based auto encoder–decoder

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant