KR20170088165A - Method and apparatus for speech recognition using deep neural network - Google Patents
Method and apparatus for speech recognition using deep neural network Download PDFInfo
- 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
Links
- 238000013528 artificial neural network Methods 0.000 title claims abstract description 13
- 238000000034 method Methods 0.000 title abstract description 28
- 238000011176 pooling Methods 0.000 claims abstract description 8
- 230000006870 function Effects 0.000 description 23
- 238000004458 analytical method Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 238000010606 normalization Methods 0.000 description 4
- 230000004913 activation Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 230000006835 compression Effects 0.000 description 3
- 238000007906 compression Methods 0.000 description 3
- 239000011159 matrix material Substances 0.000 description 3
- 210000002569 neuron Anatomy 0.000 description 3
- 230000008569 process Effects 0.000 description 2
- BQCADISMDOOEFD-UHFFFAOYSA-N Silver Chemical compound [Ag] BQCADISMDOOEFD-UHFFFAOYSA-N 0.000 description 1
- 238000007792 addition Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003062 neural network model Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 229910052709 silver Inorganic materials 0.000 description 1
- 239000004332 silver Substances 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 230000001131 transforming effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L15/16—Speech classification or search using artificial neural networks
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/02—Feature extraction for speech recognition; Selection of recognition unit
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/20—Speech recognition techniques specially adapted for robustness in adverse environments, e.g. in noise, of stress induced speech
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L25/00—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
- G10L25/27—Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique
- G10L25/30—Speech 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
Description
본 발명은 음성인식 방법 및 그 장치에 관한 것으로서, 보다 구체적으로는 타임 래핑을 수행한 가중치를 사용하여 발화속도에 강인한 심층 신경망 기반의 음성인식 방법 및 그 장치에 관한 것이다.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
도 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에서 첫 번째 은닉층(, Hidden Layer, 121)과 입력층(110)은 가중치(weight, W1, 141)로 연결된다. 첫 번째 은닉층(121)은 N개의 노드(Node, 1211)로 구성되며 관계식은 다음 수학식 1과 같다.In FIG. 1, the first hidden layer ( The
도 2의 (a)는 첫번째 은닉층(121)인 의 계산과정을 2차원적으로 나타낸 도면이다.2 (a) shows the first
첫 번째 은닉층(102)인 의 n번째 노드값(121n)인 은 M개의 입력 노드값인 v h 와 의 n번째 노드에 연결된 M개의 가중치(141) 와의 가중치합(Weighted sum)으로 정의될 수 있고, 이를 행렬 형태로 나타내면 다음 수학식 2와 같다.The first hidden layer 102 The n-
첫번째 은닉층 의 출력 은 을 비선형 함수 을 통과시켜 얻을 수 있고, 이는 수학식 3과 같다.The first hidden layer Output of silver Nonlinear function , Which is shown in Equation (3).
비선형 함수 은 활성화 함수(Activation function)라고도 하고 hyperbolic tangent function (tanh), sigmoid function (sigmoid), rectified linear unit function (ReLU) 등의 함수가 사용될 수 있다.Nonlinear function 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) 는 첫번째 은닉층(121)의 출력 과 두번째 신경망층의 가중치(142)인 와의 가중치합으로 정의되고, 이는 수학식 4와 같다.The second
이를 행렬형태로 나타내면 수학식 5와 같다.This can be expressed by the following equation (5).
두번째 은닉층(122) 의 출력인 도 수학식 6과 같이 비선형 함수를 통과한다.The second
이후 나머지 은닉층도 동일한 방식으로 가중치합과 비선형함수를 통과하여 정의된다.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)에 의해 모두 연결된 구조를 가진다.
따라서 맥스-풀링 입력노드(12111) 중에서 은닉층의 n번째 노드(1211)를 선택하기 위해서는 은닉층의 n번째 노드(1211)에 대응하는 k개의 맥스-풀링 입력노드(12111)를 구하고 그 중에서 최대값을 선택하여 은닉층의 n번째 노드(1211)로 결정하게 된다.Therefore, in order to select the n-
이를 수학식으로 나타내면 수학식 7 및 수학식 8과 같다.This can be expressed by Equations (7) and (8).
수학식 7은 N*K 개의 전체 맥스-풀링 입력 노드(12111)를 입력층(111)과 가중치(141)간의 가중치 합을 이용하여 구하는 식이고, 수학식 8은 이렇게 구해진 k개의 맥스-풀링 입력노드(12111) 중에 최대값을 구하여 은닉층 노드(1211)로 결정하는 것을 나타낸다.Equation (7) is a formula for obtaining N * K total max-
도 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
도 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
도 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를 이용하여 타임 래핑된 가중치 벡터 를 구하는 식은 다음 수학식 9와 같다.Using the reference weight vector W nk , a time-wrapped weight vector Is expressed by Equation (9). &Quot; (9) "
t는 행렬 형태의 가중치 벡터에서의 프레임 인덱스를 나타내고, l은 주파수 밴드의 인덱스를 나타낸다. 따라서 는 t번째 프레임의 l번째 필터뱅크 값을 나타낸다.t denotes a frame index in a weight vector of a matrix form, and 1 denotes an index of a frequency band. therefore Lt; th > frame represents the lth filter bank value.
시간축 래핑 정도에 따라 임계값(Threshold)인 th1, th2를 결정하고, T프레임 길이만큼의 시간축 길이를 가졌던 기준 가중치 벡터 가 T' 프레임 길이를 가지는 벡터로 수학식 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- Lt; RTI ID = 0.0 > T ' 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.
변환된 가중치 벡터의 정규화를 위해 정규화 보든 가중치 벡터에 정규화 지수인 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
음성인식장치(60)는 입력부(610), 주파수 변환부(620) 및 연산부(630)를 포함한다.The
입력부(610)는 음성신호를 입력받고, 주파수 변환부(620)에 의해 음성신호는 시간축 신호에서 시간축과 주파수축의 성분을 가지는 성분으로 변환된다.The
연산부(630)에서는 변환된 신호를 입력신호로 하여 본 발명에 따른 래핑된 가중치 벡터를 이용하여 맥스-풀링 입력 노드값을 계산하고, 그 중 최대값을 선택하여 은닉층 노드값으로 결정한 후, 마지막으로 비선형 함수를 통과하여 은닉층의 노드 출력값을 계산한다.The
이상에서 설명한 가중치의 래핑방법에 의해 은닉층의 노드들을 계산함으로써 사용자의 발화속도가 변화하더라도 가중치 벡터의 압축정도를 조절하여 대응함으로써 좀 더 정확한 음성인식이 가능해진다.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
컴퓨터 시스템은 네트워크에 커플링된 네트워크 인터페이스(129)를 더 포함할 수 있다. 상기 프로세서(721)는 중앙처리 장치(central processing unit (CPU))이거나, 혹은 메모리(723) 및/또는 저장소(728)에 저장된 명령어를 처리하는 반도체 장치일 수 있다. The computer system may further include a network interface 129 coupled to the network. The
상기 메모리(723) 및 상기 저장소(728)는 다양한 형태의 휘발성 혹은 비휘발성 저장매체를 포함할 수 있다. 예컨대, 상기 메모리(723)는 ROM(124) 및 RAM(725)을 포함할 수 있다.The
따라서, 본 발명의 실시예에 따른 심층 신경망 기반 음성인식방법은 컴퓨터에서 실행 가능한 방법으로 구현될 수 있다. 본 발명의 실시예에 따른 심층 신경망 기반 음성인식방법이 컴퓨터 장치에서 수행될 때, 컴퓨터로 판독 가능한 명령어들이 본 발명에 따른 인식 방법을 수행할 수 있다.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.
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)
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)
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 |
-
2016
- 2016-01-22 KR KR1020160008167A patent/KR102204975B1/en active IP Right Grant
Patent Citations (1)
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)
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)
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 |