KR102358151B1 - Noise reduction method using convolutional recurrent network - Google Patents
Noise reduction method using convolutional recurrent network Download PDFInfo
- Publication number
- KR102358151B1 KR102358151B1 KR1020210075887A KR20210075887A KR102358151B1 KR 102358151 B1 KR102358151 B1 KR 102358151B1 KR 1020210075887 A KR1020210075887 A KR 1020210075887A KR 20210075887 A KR20210075887 A KR 20210075887A KR 102358151 B1 KR102358151 B1 KR 102358151B1
- Authority
- KR
- South Korea
- Prior art keywords
- signal
- frequency component
- value
- cost function
- function
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 30
- 230000000306 recurrent effect Effects 0.000 title description 6
- 238000010606 normalization Methods 0.000 claims abstract description 15
- 238000013527 convolutional neural network Methods 0.000 claims abstract description 8
- 230000008569 process Effects 0.000 claims abstract description 5
- 230000004913 activation Effects 0.000 claims description 17
- 238000009499 grossing Methods 0.000 claims description 9
- 239000013598 vector Substances 0.000 claims description 7
- 239000006185 dispersion Substances 0.000 claims description 3
- 230000007774 longterm Effects 0.000 claims description 3
- 230000004044 response Effects 0.000 claims description 3
- 230000003595 spectral effect Effects 0.000 claims description 2
- 230000006870 function Effects 0.000 description 42
- 238000004422 calculation algorithm Methods 0.000 description 17
- 238000013528 artificial neural network Methods 0.000 description 11
- 238000010586 diagram Methods 0.000 description 6
- 230000008859 change Effects 0.000 description 4
- 238000013473 artificial intelligence Methods 0.000 description 3
- 238000004590 computer program Methods 0.000 description 3
- 238000011176 pooling Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000007781 pre-processing Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000005236 sound signal Effects 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 238000012546 transfer Methods 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
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/082—Learning methods modifying the architecture, e.g. adding, deleting or silencing nodes or connections
-
- 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
- G10L21/00—Speech or voice signal processing techniques to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
- G10L21/02—Speech enhancement, e.g. noise reduction or echo cancellation
- G10L21/0208—Noise filtering
- G10L21/0216—Noise filtering characterised by the method used for estimating noise
- G10L21/0232—Processing in the frequency domain
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Theoretical Computer Science (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)
- Multimedia (AREA)
- Signal Processing (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Acoustics & Sound (AREA)
- Quality & Reliability (AREA)
- Circuit For Audible Band Transducer (AREA)
Abstract
Description
본 발명은 컨볼루션 순환신경망을 이용한 잡음 제거 방법에 관한 것으로서, 더욱 상세하게는 잡음 제거 효율이 향상된 컨볼루션 순환신경망을 이용한 잡음 제거 방법에 관한 것이다. The present invention relates to a noise removal method using a convolutional neural network, and more particularly, to a noise removal method using a convolutional neural network with improved noise removal efficiency.
인공신경망(Artificial Neural Network, ANN)은 심층신경망(Deep Neural Network, DNN) 개발 이후 컨벌루션 신경망(Convolutional Neural Network, CNN), 순환신경망(Recurrent Neural Network, RNN) 등으로 많은 발전이 있었다.Artificial Neural Network (ANN) has developed a lot after the development of Deep Neural Network (DNN), Convolutional Neural Network (CNN), Recurrent Neural Network (RNN), etc.
인공지능 기술의 발전에 따라 음성 처리 분야에도 인공지능 기술이 많이 적용되고 있다. 예를 들면, 머신러닝 기법인 심화신경망(Deep Neural Network, DNN)이 다양한 음성 향상 및 음성 인식 연구에서 우수한 성능을 보이고 있다. 심화신경망은 다수의 은닉 층과 은닉 노드들을 통하여 입력 특징 벡터와 출력 특징 벡터 사이의 비선형적인 관계를 효과적으로 모델링하여 우수한 성능을 보인다.With the development of artificial intelligence technology, artificial intelligence technology has been widely applied in the field of speech processing. For example, Deep Neural Network (DNN), a machine learning technique, is showing excellent performance in various speech enhancement and speech recognition studies. The deep neural network shows excellent performance by effectively modeling the nonlinear relationship between the input feature vector and the output feature vector through multiple hidden layers and hidden nodes.
한국등록특허 10-0762596호는 음성 신호 전처리 시스템 및 음성 신호 특징 정보 추출 방법에 관한 것으로, 신경망 인식 방법을 이용하여 음성 신호를 전처리하는 기술을 기재하고 있다.Korean Patent Registration No. 10-0762596 relates to a voice signal preprocessing system and a method for extracting voice signal characteristic information, and describes a technique for preprocessing a voice signal using a neural network recognition method.
한국등록특허 10-1934636호는 음성 신호의 통계적 정보인 잡음 정보 및 에코 정보를 심화신경망(DNN)의 추가적 입력으로 사용하여, 음성 신호에서 잡음 및 에코를 통합 제거하는 기술을 기재하고 있다.Korean Patent Registration No. 10-1934636 describes a technology for integrally removing noise and echo from a voice signal by using noise information and echo information, which are statistical information of a voice signal, as additional inputs to a deep neural network (DNN).
잡음을 포함하는 입력 신호에서 잡음을 제거하여 목적음을 추출하는 분야에도 CNN과 RNN이 결합된 컨벌루션 순환신경망(Convolutional Recurrent Network, CRN)이 적용되고 있다. 또한, 복소수 입력 시 CRN 알고리즘을 구현할 수 있는 심층 복소수 컨벌루션 순환신경망(Deep Complex Convolution Recurrent Network, DCCRN)이 좋은 성능을 보이고 있다.Convolutional Recurrent Network (CRN), which combines CNN and RNN, is also applied to the field of extracting the target sound by removing noise from the input signal including noise. In addition, the Deep Complex Convolution Recurrent Network (DCCRN), which can implement the CRN algorithm when entering a complex number, is showing good performance.
인공지능 기술에서는 잡음신호가 포함된 입력신호를 훈련시켜서 잡음을 제거하고 있다. 그런데 실제 상황에서 입력신호의 크기 특히 잡음의 크기는 일정하지 않다. 따라서 입력신호의 신호대잡음비(이하, 'SNRi'라 함)를 20, 15, 10, 5, 0, -5, -10 dB 등 여러가지 경우를 가정하여 잡음을 학습하여야 한다. 그러나, 훈련하지 않은 SNRi을 가지고 있는 신호가 입력되면 기존 데이터로 학습된 가중치와 바이어스 값으로는 잡음이 효과적으로 잘 제거되지 않아 최종 출력음에 잔여 잡음이 남아 청감상 듣기 거북해지는 현상이 발생한다.In artificial intelligence technology, noise is removed by training an input signal containing a noise signal. However, in an actual situation, the magnitude of the input signal, especially the magnitude of the noise, is not constant. Therefore, it is necessary to learn noise by assuming various cases such as 20, 15, 10, 5, 0, -5, -10 dB for the signal-to-noise ratio (hereinafter referred to as 'SNRi') of the input signal. However, when a signal with untrained SNRi is input, the noise is not effectively removed with the weights and bias values learned from the existing data, and residual noise remains in the final output sound, making it difficult to hear.
본 발명은 이러한 점을 감안하여 이루어진 것으로서, 종래의 CRN, DCCRN 알고리즘을 개선하여 잡음 제거 효율을 높이고, 최종 출력음이 청감상 자연스럽게 들리는 방법을 제공하는 것을 목적으로 한다.The present invention has been made in view of this point, and an object of the present invention is to improve noise removal efficiency by improving the conventional CRN and DCCRN algorithms, and to provide a method in which the final output sound is naturally audible.
본 발명의 바람직한 실시예에 따른 잡음제거방법은, 디지털 입력 신호를 주파수 성분으로 변환하는 단계와, 주파순 성분으로 변환된 신호의 각 주파수 성분의 파워값에 대한 분산을 시간축으로 크기 정규화시키는 분산 정규화 단계와, 가중치와 바이어스 값을 이용하여 입력을 가공하여 출력하는 복수의 은닉층을 구비한 컨벌루션 순환신경망에 정규화된 신호를 통과시키는 순전파 단계와, 순전파 단계를 거친 신호에 대해서 분산 정규화 단계에서 차감된 신호의 파워값을 보상하는 파워보상 단계와, 주파수 성분 신호를 디지털 출력 신호로 변환하는 단계와, 상기 디지털 출력 신호로부터 비용함수를 계산하여 이 비용함수를 최소화하는 가중치와 바이어스 를 갱신하는 비용함수 단계를 구비한다.A noise removal method according to a preferred embodiment of the present invention comprises the steps of: converting a digital input signal into a frequency component; Step, a forward propagation step of passing a normalized signal through a convolutional neural network having a plurality of hidden layers that process an input using a weight and a bias value and output it, and subtract the distributed normalization step for the signal that has passed the forward propagation step A power compensation step of compensating for the power value of the converted signal, a step of converting a frequency component signal into a digital output signal, and a cost function of calculating a cost function from the digital output signal and updating the weight and bias to minimize the cost function steps are provided.
상기 분산 정규화 단계에서는 다음 수학식In the variance normalization step, the following equation
에 의해 각 주파수 성분의 파워값에 대한 분산을 시간축으로 크기 정규화시킨 신호를 구할 수 있다. 여기에서, epsi는 입력값이 작을 때 너무 작은 값으로 나누는 것을 방지하기 위한 실험적 상수값이다. It is possible to obtain a signal obtained by normalizing the magnitude of the variance of the power value of each frequency component along the time axis. Here, epsi is an experimental constant value to prevent division by too small values when the input value is small.
입력신호 x(n)의 각 주파수 성분의 파워값을 X(k)라 하고, E[X(k)]는 과거 M 프레임 동안의 X(k)의 앙상블 평균이라 할 때,Assuming that the power value of each frequency component of the input signal x(n) is X(k), and E [ X(k) ] is the ensemble average of X(k) for the past M frames,
이며,is,
로서, 는 0< <1 인 스무딩 상수이고, X av (k)는 각 주파수 성분의 파워값에 대한 Long-Term IIR(Infinite Impulse Response) 평균이다. as, is 0< <1 is a smoothing constant, and X av ( k ) is the Long-Term Infinite Impulse Response (IIR) average of the power values of each frequency component.
상기 파워보상 단계는, 입력신호 X(k)와 NVar_X(k) 사이의 파워값의 차이를 보상한다.The power compensating step compensates for a difference in power value between the input signal X ( k ) and NVar_X ( k ).
순전파 단계에서, 각 은닉층은 할성함수를 사용하여 다음 은닉층으로 전달할 값을 결정한다. 일 실시예에서, 활성함수로는 GELU(Gaussian Error Linear Unit) 함수를 스무딩한 함수를 사용될 수 있다. 구체적으로는, ρ를 0<ρ<1인 스무딩 상수라 할 때, 활성함수로In the forward propagation phase, each hidden layer uses a chance function to determine the value to pass to the next hidden layer. In an embodiment, a smoothing function of a Gaussian Error Linear Unit (GELU) function may be used as the activation function. Specifically, when ρ is a smoothing constant of 0 < ρ < 1, the activation function
를 사용할 수 있다. can be used
이 경우에, t번째 은닉층을 통과한 출력 y t 는 In this case, the output y t passed through the t-th hidden layer is
에 의해 표현된다.is expressed by
일 실시예에서, 상기 비용함수로는, 출력신호의 주파수 성분과, 정답신호를 분산 정규화 단계를 통과시킨 신호의 주파수 성분 사이의 유클리디언 거리를 사용할 수 있다. In an embodiment, as the cost function, a Euclidean distance between a frequency component of an output signal and a frequency component of a signal obtained by passing the correct answer signal through a variance normalization step may be used.
Mi는 i번째 Mel 필터 뱅크를 의미하고, 아래 첨자 t, f는 각각 파형 도메인 및 스펙트럼 도메인에서의 신호를 의미하며, 는 유클리디언 거리(Euclidean distance)를 나타내고, 와 를 각각 와 를 Mel 필터 뱅크에 통과시킨 벡터라 할 때,M i denotes the i-th Mel filter bank, and the subscripts t and f denote signals in the waveform domain and spectral domain, respectively, represents the Euclidean distance, Wow each Wow Assuming that is a vector passed through the Mel filter bank,
에 의해 비용함수를 계산할 수 있다.The cost function can be calculated by
본 발명에 따르면 종래의 기술에 비하여 잡음 제거 효율을 높은 잡음 제거 방법이 제공된다. 또한 본 발명에 따르면 최종 출력음이 청감상 자연스럽게 들리는 방법이 제공된다. According to the present invention, there is provided a noise removal method having high noise removal efficiency compared to the prior art. Also, according to the present invention, there is provided a method in which the final output sound is heard naturally.
도 1은 일반적인 CRN 알고리즘의 블록도이다.
도 2는 본 발명의 바람직한 실시예에 따른 컨볼루션 순환신경망을 이용한 잡음 제거 방법을 보여주는 블록도이다.
도 3은 순전파 단계를 구성하는 은닉층의 블록도이다.
도 4는 대표적인 활성함수들을 보여주는 그래프이다.
도 5는 잡음신호가 입력됐을 때의 종래의 CRN 알고리즘과 본 발명의 NV-CRN 알고리즘을 적용했을 때의 출력신호를 보여주는 그래프이다.
도 6은 잡음신호가 입력됐을 때의 종래의 CRN 알고리즘과 본 발명의 NV-CRN 알고리즘을 적용했을 때의 성능 지표를 보여주는 표이다.1 is a block diagram of a general CRN algorithm.
2 is a block diagram showing a noise removal method using a convolutional recurrent neural network according to a preferred embodiment of the present invention.
3 is a block diagram of a hidden layer constituting a forward propagation step.
4 is a graph showing representative activation functions.
5 is a graph showing an output signal when the conventional CRN algorithm and the NV-CRN algorithm of the present invention are applied when a noise signal is input.
6 is a table showing performance indicators when the conventional CRN algorithm and the NV-CRN algorithm of the present invention are applied when a noise signal is input.
이하, 도면을 참조하여 본 발명의 바람직한 실시예를 상세히 설명한다.Hereinafter, preferred embodiments of the present invention will be described in detail with reference to the drawings.
도 1은 일반적인 CRN 알고리즘(10)의 블록도이다. 디지털 입력 신호 x(n)은 잡음이 포함된 신호이며, ST-FFT 단계(11)에서 단시간 고속 푸리에 변환(Short-Term Fast Fourier Transform)이 수행되어 디지털 입력 신호가 주파수 성분으로 변환된다. 컨볼루션 단계(12)에서는 사전에 설계된 필터와의 컨볼루션(convolution)이 수행되고, 활성함수(Activation Function) 단계(13)에서 활성함수를 통과한 후에 풀링(Pooing) 단계(14)에서 데이터의 차원이 감소된다. 마지막으로 ST-iFFT 단계(15)에서 단시간 고속 푸리에 역변환(Short-Term Inverse Fast Fourier Transform)을 수행하여 출력신호 을 얻는다. 비용 함수(Loss Function) 단계(16)에서는 비용함수를 계산하여 이 비용함수를 최소화하는 가중치 w와 바이어스 bias를 갱신해나감으로써 출력신호 가 s(n)에 근접되도록 만들게 한다.1 is a block diagram of a
잡음이 포함된 입력 신호 x(n)은 수학식 1과 같이 나타낼 수 있다. 수학식 1에서 s(n)은 목적(정답) 신호, v(n)은 잡음 신호이다.The input signal x(n) including noise can be expressed as in
도 1에서 점선으로 표시된 박스 내의 활성함수(activation function) 단계(13), 풀링(pooing) 단계(14)은 여러 차례 수행되며, 각 단계에서 사용되는 가중치 w와 바이어스 bias는 비용함수를 최소화하는 방향으로 갱신된다.The
그런데, 실제 상황에서 입력신호의 크기 특히 잡음의 크기는 일정하지 않다. 따라서 입력신호의 신호대잡음비(이하, 'SNRi'라 함)를 20, 15, 10, 5, 0, -5, -10 dB 등 여러가지 경우를 가정하여 잡음을 학습하여야 한다. 그러나, 만일 30 dB, -15 dB 등의 SNRi을 가지고 있는 신호가 입력되면 기존 데이터로 학습된 가중치와 바이어스 값으로는 잡음이 효과적으로 잘 제거되지 않아 최종 출력음에 잔여 잡음이 남아 청감상 듣기 거북해지는 현상이 나타날 수 있다.However, in an actual situation, the magnitude of the input signal, particularly the magnitude of the noise, is not constant. Therefore, it is necessary to learn noise by assuming various cases such as 20, 15, 10, 5, 0, -5, -10 dB for the signal-to-noise ratio (hereinafter referred to as 'SNRi') of the input signal. However, if a signal with an SNRi of 30 dB, -15 dB, etc. is input, the noise is not effectively removed with the weight and bias values learned from the existing data, and residual noise remains in the final output sound, making it difficult to hear. phenomenon may occur.
본 발명에서는 이러한 문제를 해결하기 위하여, 입력 신호를 ST-FFT 한 후 각 주파수 성분의 파워를 계산한 뒤 이 값의 변화량을 구하고, 이 변화량을 정규화한 후 CRN 알고리즘에 입력시키도록 구성하였다. CRN 알고리즘에 입력되는 신호는 원 신호에서 직류 값이 삭제된 정규화된 변화량 값이 된다. 이 값은 원 신호에서 직류값이 삭제되고 정규화 시켰기 때문에 원 신호보다 다이내믹 레인지가 훨씬 줄어들게 된다. 따라서, 학습해야 할 데이터의 경우의 수가 현저히 감소되고 실시간 구현시에도 계산량이 대폭 감소하게 되는 효과가 있다. 이하의 설명에서는 본 발명에 따른 알고리즘을 NV(Normailed Variance)-CRN 알고리즘이라 칭한다.In order to solve this problem, in the present invention, after ST-FFT the input signal, the power of each frequency component is calculated, the change amount of this value is calculated, and the change amount is normalized and then input to the CRN algorithm. The signal input to the CRN algorithm becomes a normalized variation value in which the DC value is deleted from the original signal. Since this value is normalized by removing the DC value from the original signal, the dynamic range is much reduced than that of the original signal. Accordingly, there is an effect that the number of cases of data to be learned is significantly reduced, and the amount of calculation is greatly reduced even in real-time implementation. In the following description, the algorithm according to the present invention is referred to as a Normailed Variance (NV)-CRN algorithm.
도 2에 본 발명의 바람직한 실시예에 따른 컨볼루션 순환신경망을 이용한 잡음 제거 방법을 보여주는 블록도가 도시되어 있다. 2 is a block diagram showing a noise removal method using a convolutional recurrent neural network according to a preferred embodiment of the present invention.
도 2에 도시한 방법에서는 ST-FFT 단계(110)에서 입력신호를 단시간 고속 푸리에 변환한 신호를 분산 정규화 단계(115)를 거친 후에 순전파(Forward Propagation) 단계를 수행한다. 분산 정규화 단계(115)에서는 주파순 성분으로 변환된 입력 신호의 각 주파수 성분의 파워값에 대한 분산을 시간축으로 크기 정규화시킨다. 순전파 단계에서는 복수의 은닉층(hidden layer)을 거치게 된다. 각 은닉층에서 가중치 W와 바이어스 b 값을 이용하여 입력 x를 가공하여 출력 y를 계산하고 이를 다음 은닉층으로 전달한다. In the method shown in FIG. 2 , a signal obtained by performing a short-time fast Fourier transform of an input signal in the ST-
입력신호 x(n)을 ST-FFT하여 제곱하면 수학식 2와 같이 각 주파수 성분의 파워값을 구할 수 있다. If the input signal x(n) is squared by ST-FFT, the power value of each frequency component can be obtained as shown in Equation (2).
현재 프레임에서 X(k)의 시간축 분산(variance)은 수학식 3과 같이 계산할 수 있다. The time-axis variance of X(k) in the current frame can be calculated as in Equation (3).
여기에서 E[X(k)]는 과거 M 프레임 동안의 X(k)의 앙상블 평균을 나타낸다.Here, E [ X(k) ] represents the ensemble average of X(k) for the past M frames.
각 주파수 성분의 파워값에 대한 Long-Term IIR(Infinite Impulse Response) 평균을 수학식 4를 사용하여 구할 수 있다. The average of the Long-Term Infinite Impulse Response (IIR) for the power value of each frequency component can be obtained using Equation (4).
여기에서 는 0< <1 인 스무딩 상수이다.From here is 0< <1 is the smoothing constant.
각 주파수 성분의 파워값에 대한 분산을 시간축으로 크기 정규화시키기 위해 수학식 5를 계산한다.Equation 5 is calculated in order to size-normalize the variance of the power value of each frequency component on the time axis.
여기서 epsi는 입력값이 작을 때 너무 작은 값으로 나누는 것을 방지하기 위한 실험적 상수값이다. Here, epsi is an experimental constant value to prevent division by too small values when the input value is small.
수학식 5에 의해 구해진 신호가 분산 정규화 단계(115)의 출력이 되며, 이 신호가 순전파 단계에 입력된다. The signal obtained by Equation 5 becomes the output of the
순전파 단계를 구성하는 은닉층의 블록도가 도 3에 도시되어 있다. 순전파 단계에서는 복수의 은닉층(hidden layer)을 거치게 된다. 각 은닉층에서 가중치 W와 바이어스 b 값을 이용하여 입력 x를 가공하여 출력 y를 계산하고 이를 다음 은닉층으로 전달한다.A block diagram of the hidden layers constituting the forward propagation stage is shown in FIG. 3 . In the forward propagation step, it goes through a plurality of hidden layers. In each hidden layer, the input x is processed using the weight W and the bias b value, the output y is calculated, and it is transferred to the next hidden layer.
도 3에서 현재 t의 은닉층의 계산식은 수학식 6으로 나타낼 수 있다.In FIG. 3 , the calculation formula of the hidden layer of the current t may be expressed as Equation (6).
여기에서 tanh는 하이퍼볼릭 탄젠트(hyperbolic tangent) 함수이며, 현재 값을 가공하여 다음 은닉층으로 어떤 값을 전달할 것인지를 결정하는 활성함수(Activation Function)이다. 활성함수는 인공신경망 알고리즘에서 매우 중요한 역할을 하게 된다. 활성함수로는 tanh와 같은 형태의 시그모이드(Sigmoid), ELU(Exponential Linear Unit) 이외에도 ReLU(Rectified Linear Unit), GELU(Gaussian Error Linear Unit) 등이 알려져있다. 도 4에 대표적인 활성함수들의 예가 도시되어 있다.Here, tanh is a hyperbolic tangent function, and it is an activation function that processes the current value and decides which value to transfer to the next hidden layer. The activation function plays a very important role in the artificial neural network algorithm. As the activation function, in addition to the tanh-like sigmoid and ELU (Exponential Linear Unit), ReLU (Rectified Linear Unit) and GELU (Gaussian Error Linear Unit) are known. 4 shows examples of representative activation functions.
활성함수 중에서 좋은 결과를 보여주는 것으로 알려진 GELU 함수는 수학식 7과 같이 나타낼 수 있다.The GELU function, which is known to show good results among the activation functions, can be expressed as in Equation 7.
도 3의 은닉층에 수학식 7의 GELU 함수를 적용하면 현재의 은닉층을 통과한 출력 y t 는 수학식 8과 같이 표현할 수 있다.When the GELU function of Equation 7 is applied to the hidden layer of FIG. 3 , the output y t passing through the current hidden layer can be expressed as Equation 8.
그러나 모든 은닉층에 똑같은 활성함수를 적용한다고 가정하면 학습속도가 저하되지 않으면서 과적합(overfitting)이나 기울기 소멸(gradient vanishing)과 같은 문제가 발생하지 않는다고 보장할 수 없다. 기울기 소멸 문제는 전파가 진행될 수록 현재의 은닉층에서 계산되는 h가 과거의 입력벡터 x를 거의 반영하지 못하는 것을 말한다. However, assuming that the same activation function is applied to all hidden layers, there is no guarantee that the learning rate will not decrease and problems such as overfitting or gradient vanishing will not occur. The gradient annihilation problem means that as the propagation progresses, the h calculated in the current hidden layer hardly reflects the past input vector x.
음향 또는 음성 신호와 같이 시간 및 주파수 축에서의 변화량이 큰 경우, 현재의 값 x에 대해 출력 y가 결정되는 것을 완화하기 위해 GELU 함수를 스무딩한 수학식 9를 활성함수로 사용할 수 있다.Equation 9 obtained by smoothing the GELU function may be used as an activation function in order to alleviate the determination of the output y with respect to the current value x when the amount of change on the time and frequency axes is large, such as an acoustic or voice signal.
여기에서 ρ는 0<ρ<1인 스무딩 상수이다. where ρ is a smoothing constant with 0 < ρ < 1.
수학식 9의 활성함수가 적용된 은닉층을 통과한 출력 y t 는 수학식 10과 같이 표현할 수 있다.The output y t passing through the hidden layer to which the activation function of Equation 9 is applied can be expressed as
수학식 10과 같이 출력을 계산하게 되면 시간축으로 급격한 변화량을 갖는 입력 벡터에 대하여 청감상 편안하게 들리는 출력을 얻을 수 있다. When the output is calculated as in
순전파(Forward Propagation) 단계를 수행한 이후에는 파워보상 단계(155)를 수행한다. 파워보상 단계(155)에서는 분산 정규화 단계(115)에서 입력신호의 직류 성분을 빼고 정규화하는 과정에서 차감된 신호의 파워값을 보상한다. 즉, 입력신호 X(k)와 수학식 5의 NVar_X(k) 사이의 파워값의 차이를 보상한다. After performing the forward propagation step, the
파워보상 단계(155)를 거친 신호에 ST-iFFT(150)를 실행하면 출력 신호 을 얻을 수 있다. 비용함수(Loss Function) 단계(160)에서는 출력신호로부터 비용함수를 계산하여 이 비용함수를 최소화하는 가중치 w와 바이어스 bias를 갱신해나감으로써 출력신호 가 s(n)에 근접되도록 만들게 한다.When ST-iFFT (150) is executed on the signal that has passed the power compensation step (155), the output signal can be obtained In the
출력 신호 의 주파수 성분 와 수학식 1의 정답 신호인 s(k)의 주파수 성분 사이의 유클리디언 거리를 수학식 11과 같이 계산할 수 있다. 이 값을 지각 비용함수(perceptual loss function)라 정의한다.output signal frequency component of and Euclidean distance between the frequency component of s(k) , which is the correct signal of
여기에서 Mi는 i번째 Mel 필터 뱅크를 의미하며, 아래 첨자 t, f는 각각 time, frequency의 약어로서 각각 파형 도메인 및 스펙트럼 도메인에서의 신호를 의미한다. 는 유클리디언 거리(Euclidean distance)를 나타낸다.Here, M i means the i-th Mel filter bank, and the subscripts t and f are abbreviations of time and frequency, respectively, and mean signals in the waveform domain and the spectrum domain, respectively. represents the Euclidean distance.
일 실시예에서 수학식 12와 같은 지각 비용함수를 사용할 수 있다. 수학식 12는 와 를 각각 Mel 필터 뱅크에 통과시킨 벡터 와 에 대한 지각 비용함수이다.In an embodiment, a perceptual cost function as in
다른 실시예에서, 비용함수로 수학식 13과 같이 수학식 11의 비용함수와 수학식 12의 비용함수의 합을 사용할 수도 있다.In another embodiment, as shown in
도 5는 잡음신호가 입력됐을 때의 종래의 CRN 알고리즘과 본 발명의 NV-CRN 알고리즘을 적용했을 때의 출력신호를 보여주며, 도 6은 그때의 성능 지표를 나타낸다. 5 shows the output signal when the conventional CRN algorithm and the NV-CRN algorithm of the present invention are applied when the noise signal is input, and FIG. 6 shows the performance index at that time.
도 6에서 성능비교지표로는 PESQ(Perceptual Evaluation Of Speech Quality)와 STOI를 사용하였다. PESQ와 STOI 두 지표 모두 값이 클수록 성능이 좋음을 나타낸다. PESQ는 ITU-T P.862 등의 표준에서 사용되는 성능 지표이고, STOI는 다음 식에 의해 구하는 성능 지표로서, X(n)은 원음 신호, Y(n)은 마이크 신호를 나타낸다. In FIG. 6 , Perceptual Evaluation Of Speech Quality (PESQ) and STOI were used as performance comparison indicators. For both PESQ and STOI, a larger value indicates better performance. PESQ is a performance index used in standards such as ITU-T P.862, and STOI is a performance index obtained by the following equation, where X(n) represents the original sound signal and Y(n) represents the microphone signal.
도 6에서 신호대 잡음비(SNRi)가 0dB인 경우와 10dB 경우에 모두 종래의 CRN 알고리즘에 비하여 본 발명의 알고리즘이 더 좋은 성능을 보여주는 것을 알 수 있다. It can be seen from FIG. 6 that the algorithm of the present invention shows better performance than the conventional CRN algorithm in both the case where the signal-to-noise ratio (SNRi) is 0 dB and the case of 10 dB.
이상, 본 발명을 몇가지 예를 들어 설명하였으나, 본 발명의 실시예를 구성하는 모든 구성 요소들이 하나로 결합하거나 결합하여 동작하는 것으로 설명되었다고 해서, 본 발명이 반드시 이러한 실시예에 한정되는 것은 아니다. 즉, 본 발명의 목적 범위 안에서라면, 그 모든 구성 요소들이 하나 이상으로 선택적으로 결합하여 동작할 수도 있다. 또한, 그 모든 구성 요소들이 각각 하나의 독립적인 하드웨어로 구현될 수 있지만, 각 구성 요소들의 그 일부 또는 전부가 선택적으로 조합되어 하나 또는 복수 개의 하드웨어에서 조합된 일부 또는 전부의 기능을 수행하는 프로그램 모듈을 갖는 컴퓨터 프로그램으로서 구현될 수도 있다. 그 컴퓨터 프로그램을 구성하는 코드들 및 코드 세그먼트들은 본 발명의 기술 분야의 당업자에 의해 용이하게 추론될 수 있을 것이다. 이러한 컴퓨터 프로그램은 컴퓨터가 읽을 수 있는 저장매체(Computer Readable Media)에 저장되어 컴퓨터에 의하여 읽혀지고 실행됨으로써, 본 발명의 실시예를 구현할 수 있다. 또한, 주파수 도메인에서 수행되는 것으로 설명된 동작을 시간 도메인에서 수행되도록 수정하거나, 시간 도메인에서 수행되는 것으로 설명된 동작을 주파수 도메인에서 수행되도록 수정하여 구현하는 것도 가능하다.As mentioned above, although the present invention has been described with a few examples, the present invention is not necessarily limited to these embodiments, even though it has been described that all components constituting the embodiment of the present invention are combined or operated as one. That is, within the scope of the object of the present invention, all the components may operate by selectively combining one or more. In addition, although all the components may be implemented as one independent hardware, some or all of the components are selectively combined to perform some or all of the functions of the combined hardware in one or a plurality of hardware program modules It may be implemented as a computer program having Codes and code segments constituting the computer program can be easily deduced by those skilled in the art of the present invention. Such a computer program is stored in a computer-readable storage medium (Computer Readable Media), read and executed by the computer, thereby implementing the embodiment of the present invention. In addition, it is also possible to implement an operation described as being performed in the frequency domain by modifying it to be performed in the time domain, or by modifying the operation described as being performed in the time domain to be performed in the frequency domain.
이상에서 기재된 "포함하다", "구성하다" 또는 "가지다" 등의 용어는, 특별히 반대되는 기재가 없는 한, 해당 구성 요소가 내재할 수 있음을 의미하는 것이므로, 다른 구성 요소를 제외하는 것이 아니라 다른 구성 요소를 더 포함할 수 있는 것으로 해석되어야 한다. Terms such as "include", "compose" or "have" described above mean that the corresponding component may be inherent unless otherwise stated, so it does not exclude other components. It should be construed as being able to further include other components.
이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다.The above description is merely illustrative of the technical spirit of the present invention, and various modifications and variations will be possible without departing from the essential characteristics of the present invention by those skilled in the art to which the present invention pertains. Accordingly, the embodiments disclosed in the present invention are not intended to limit the technical spirit of the present invention, but to explain, and the scope of the technical spirit of the present invention is not limited by these embodiments. The protection scope of the present invention should be construed by the following claims, and all technical ideas within the scope equivalent thereto should be construed as being included in the scope of the present invention.
110 단시간 고속 푸리에 변환 단계,
115 분산 정규화 단계,
120 컨볼루션 단계,
130 활성함수 단계,
140 풀링 단계,
150 단시간 고속 푸리에 역변환 단계,
155 파워보상 단계,
160 비용함수 단계.110 short-time fast Fourier transform steps,
115 variance normalization steps;
120 convolution steps,
130 activation function step,
140 pooling steps;
150 short-time fast Fourier inverse transform steps,
155 power compensation stage,
160 Cost Function Steps.
Claims (8)
주파순 성분으로 변환된 신호의 각 주파수 성분의 파워값에 대한 분산을 시간축으로 크기 정규화시키는 분산 정규화 단계와,
가중치와 바이어스 값을 이용하여 입력을 가공하여 출력하는 복수의 은닉층을 구비한 컨벌루션 순환신경망에 정규화된 신호를 통과시키는 순전파 단계와,
순전파 단계를 거친 신호에 대해서 분산 정규화 단계에서 차감된 신호의 파워값을 보상하는 파워보상 단계와,
주파수 성분 신호를 디지털 출력 신호로 변환하는 단계와,
상기 디지털 출력 신호로부터 비용함수를 계산하여 이 비용함수를 최소화하는 가중치와 바이어스 를 갱신하는 비용함수 단계
를 구비하며,
상기 분산 정규화 단계에서는 다음 수학식
에 의해 각 주파수 성분의 파워값에 대한 분산을 시간축으로 크기 정규화시킨 신호를 구하되,
epsi는 입력값이 작을 때 너무 작은 값으로 나누는 것을 방지하기 위한 실험적 상수값이며,
입력신호 x(n)의 각 주파수 성분의 파워값을 X(k)라 하고, E[X(k)]는 과거 M 프레임 동안의 X(k)의 앙상블 평균이라 할 때,
이며,
로서, 는 0< <1 인 스무딩 상수이고, Xav (k)는 각 주파수 성분의 파워값에 대한 Long-Term IIR(Infinite Impulse Response) 평균인,
잡음 제거 방법.
converting the digital input signal into frequency components;
A variance normalization step of size-normalizing the variance of the power value of each frequency component of the signal converted to the frequency-order component on the time axis;
A forward propagation step of passing a normalized signal through a convolutional neural network having a plurality of hidden layers that processes and outputs an input using a weight and a bias value;
A power compensation step of compensating for the power value of the signal subtracted in the dispersion normalization step for the signal that has passed through the forward propagation step;
converting the frequency component signal into a digital output signal;
A cost function step of calculating a cost function from the digital output signal and updating the weight and bias to minimize the cost function
is provided,
In the variance normalization step, the following equation
A signal obtained by normalizing the magnitude of the variance of the power value of each frequency component on the time axis by
epsi is an experimental constant value to prevent division by too small values when the input value is small,
Assuming that the power value of each frequency component of the input signal x(n) is X(k), and E [ X(k) ] is the ensemble average of X(k) for the past M frames,
is,
as, is 0< <1 is a smoothing constant, X av ( k ) is the Long-Term Infinite Impulse Response (IIR) average for the power value of each frequency component,
How to remove noise.
입력신호 X(k)와 NVar_X(k) 사이의 파워값의 차이를 보상하는 것인, 잡음 제거 방법.
According to claim 2, wherein the power compensation step,
Compensating for the difference in power value between the input signal X ( k ) and NVar_X ( k ), the noise removal method.
각 은닉층은 할성함수를 사용하여 다음 은닉층으로 전달할 값을 결정하며,
활성함수로는 GELU(Gaussian Error Linear Unit) 함수를 스무딩한 함수를 사용하는,
잡음 제거 방법.
3. The method of claim 2,
Each hidden layer determines the value to be passed to the next hidden layer using a causation function,
As the activation function, a smoothing function of the Gaussian Error Linear Unit (GELU) function is used.
How to remove noise.
ρ를 0<ρ<1인 스무딩 상수라 할 때, 활성함수로
를 사용하는, 잡음 제거 방법.
5. The method of claim 4,
When ρ is a smoothing constant of 0 < ρ < 1, the activation function
How to remove noise using .
t번째 은닉층을 통과한 출력 y t 는
에 의해 표현되는, 잡음 제거 방법.
6. The method of claim 5,
The output y t passed through the t-th hidden layer is
Represented by , the noise removal method.
상기 비용함수로는, 출력신호의 주파수 성분과, 정답신호를 분산 정규화 단계를 통과시킨 신호의 주파수 성분 사이의 유클리디언 거리를 사용하는, 잡음 제거 방법.
4. The method of claim 2 or 3,
As the cost function, the Euclidean distance between the frequency component of the output signal and the frequency component of the signal in which the correct signal has passed the variance normalization step is used, the noise removal method.
Mi는 i번째 Mel 필터 뱅크를 의미하고, 아래 첨자 t, f는 각각 파형 도메인 및 스펙트럼 도메인에서의 신호를 의미하며, 는 유클리디언 거리(Euclidean distance)를 나타내고, 와 를 각각 와 를 Mel 필터 뱅크에 통과시킨 벡터라 할 때,
에 의해 비용함수를 계산하는, 잡음 제거 방법.
8. The method of claim 7,
M i denotes the i-th Mel filter bank, and the subscripts t and f denote signals in the waveform domain and spectral domain, respectively, represents the Euclidean distance, Wow each Wow Assuming that is a vector passed through the Mel filter bank,
A denoising method that calculates the cost function by
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210075887A KR102358151B1 (en) | 2021-06-11 | 2021-06-11 | Noise reduction method using convolutional recurrent network |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210075887A KR102358151B1 (en) | 2021-06-11 | 2021-06-11 | Noise reduction method using convolutional recurrent network |
Publications (1)
Publication Number | Publication Date |
---|---|
KR102358151B1 true KR102358151B1 (en) | 2022-02-08 |
Family
ID=80252061
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020210075887A KR102358151B1 (en) | 2021-06-11 | 2021-06-11 | Noise reduction method using convolutional recurrent network |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102358151B1 (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2000014724A1 (en) * | 1998-09-09 | 2000-03-16 | Sony Electronics Inc. | Method for reducing noise distortions in a speech recognition system |
KR101640188B1 (en) * | 2014-12-17 | 2016-07-15 | 서울대학교산학협력단 | Voice activity detection method based on statistical model employing deep neural network and voice activity detection device performing the same |
KR102095132B1 (en) * | 2018-11-29 | 2020-03-30 | 한국과학기술원 | Method and Apparatus for Joint Learning based on Denoising Variational Autoencoders for Voice Activity Detection |
-
2021
- 2021-06-11 KR KR1020210075887A patent/KR102358151B1/en active IP Right Grant
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2000014724A1 (en) * | 1998-09-09 | 2000-03-16 | Sony Electronics Inc. | Method for reducing noise distortions in a speech recognition system |
KR101640188B1 (en) * | 2014-12-17 | 2016-07-15 | 서울대학교산학협력단 | Voice activity detection method based on statistical model employing deep neural network and voice activity detection device performing the same |
KR102095132B1 (en) * | 2018-11-29 | 2020-03-30 | 한국과학기술원 | Method and Apparatus for Joint Learning based on Denoising Variational Autoencoders for Voice Activity Detection |
Non-Patent Citations (1)
Title |
---|
조정호, ‘잡음에 강인한 음성인식을 위한 스펙트럼 보상 방법’, 전자공학회 논문지, 2012.06.* * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108172231B (en) | Dereverberation method and system based on Kalman filtering | |
CN108682418B (en) | Speech recognition method based on pre-training and bidirectional LSTM | |
CN110379412B (en) | Voice processing method and device, electronic equipment and computer readable storage medium | |
Acero et al. | Robust speech recognition by normalization of the acoustic space. | |
US7895038B2 (en) | Signal enhancement via noise reduction for speech recognition | |
CN110611871B (en) | Howling suppression method and system for digital hearing aid and special DSP | |
CN112735456B (en) | Speech enhancement method based on DNN-CLSTM network | |
KR101807961B1 (en) | Method and apparatus for processing speech signal based on lstm and dnn | |
CN110148420A (en) | A kind of audio recognition method suitable under noise circumstance | |
JPWO2018047643A1 (en) | Sound source separation apparatus and method, and program | |
CN112735460B (en) | Beam forming method and system based on time-frequency masking value estimation | |
JPWO2020121590A1 (en) | Signal processing equipment, signal processing methods, and programs | |
CN112309417B (en) | Method, device, system and readable medium for processing audio signal with wind noise suppression | |
CN112037809A (en) | Residual echo suppression method based on multi-feature flow structure deep neural network | |
CN101460996A (en) | Gain control system, gain control method, and gain control program | |
KR102401959B1 (en) | Joint training method and apparatus for deep neural network-based dereverberation and beamforming for sound event detection in multi-channel environment | |
KR102358151B1 (en) | Noise reduction method using convolutional recurrent network | |
Haruta et al. | A low-computational DNN-based speech enhancement for hearing aids based on element selection | |
CN111883155B (en) | Echo cancellation method, device and storage medium | |
CN114141266A (en) | Speech enhancement method for estimating prior signal-to-noise ratio based on PESQ driven reinforcement learning | |
Kamo et al. | Importance of Switch Optimization Criterion in Switching WPE Dereverberation | |
KR101022457B1 (en) | Method to combine CASA and soft mask for single-channel speech separation | |
Popović et al. | Speech Enhancement Using Augmented SSL CycleGAN | |
CN112652321A (en) | Voice noise reduction system and method based on deep learning phase friendlier | |
Mokatren et al. | Deep layered lms predictor |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
GRNT | Written decision to grant |