AI-Study

Deep Learning : Speech Enhancement -APPENDIX

황소의일격 2021. 6. 19. 00:42

"PHASE-AWARE SPEECH ENHANCEMENT WITH DEEP COMPLEX U-NET (ICLR 2019)" 

저자: Hyeong-Seok Choi, Jang-Hyun Kim, Jaesung Huh, Adrian Kim, Jung-Woo Ha, Kyogu Lee

 

APPENDIX


A. REAL-VALUED CONVOLUTION & COMPLEX-VALUED CONVOLUTION

이 섹션에서, 우리는 Real-valued Convolution과 Complex-valued Convolution 간의 차이를 다룬다. Real-valued Matrices인 A와 B를 가지는 Complex-valued Convolution 필터 W = A + iB 가 주어지면, <그림 6> (b)와 같이 Complex-valued Convolution은 나누어진 매개변수를 사용하는 두 개의 다른 Real-valued Convolution 연산으로 해석 될 수 있다. 고정된 수의 #Channel product = #Input channel(M) × #Output channel(N) 의 경우 Complex-valued Convolution의 매개 변수 수가 Real-valued Convolution의 매개 변수 수의 두 배가 된다. 이 사실을 고려하여, 공정한 비교를 위해 Complex-valued Convolution을 반으로 줄임으로써, 동일한 수의 Parameter(#params)들을 사용하여 Real-valued Network와 복소수 Complex-valued Network 쌍을 구축했다. 이러한 Configuration을 반영하는 모델의 세부 사항은 "부록 B"에 설명되어 있다.

 

<그림 6> Real-valued Convolution (a)과 Complex-valued Convolution (b)

 

B. MODEL ARCHITECTURE

이 섹션에서 우리는 <그림 7><그림 8><그림 9>의 Complex-valued Network 설정 및 Real-valued Network 설정에서 각각 DCUnet-20(#params: 3.5M), DCUnet-16(#params: 2.3M) 및 DCUnet-10(#params: 1.4M)의 세 가지 모델 아키텍처에 대해 설명한다. Complex-valued Network (C)와 Real-valued Network (R) 모두 매개 변수를 동일하게 설정하기 위해 채널 수가 다른 동일한 크기의 컨볼 루션 필터를 갖는다. <표 1>에서 가장 큰 모델 인 Large-DCUnet-20도 <그림 10>에 설명되어 있다. 모든 Convolution 작업 후에는 <그림 11>에 설명된대로 배치 정규화와 활성화 함수가 수행된다.  Complex-valued Network의 경우 Deep Complex Networks (Trabelsi et al., 2018)에 따라 배치 정규화 및 활성화 함수의 Complex-valued Version이 사용되었다. 모든 모델의 맨 마지막 계층에서 배치 정규화 및 leaky ReLU 활성화가 사용되지 않았고 마스크에 대한 비선형성 함수가 대신 적용되었음을 주의하자. 가장 큰 모델의 경우 Real-valued Network 구성은 고려되지 않았다.

 

<그림 7> DCUnet-20 (20계층) : 20개의 Convolution 계층이있는 모델

 

 

<그림 8> DCUnet-16 (16계층) : 16개의 Convolution 계층이있는 모델

 

<그림 9> DCUnet-10 (10계층) : 10개의 Convolution 계층이있는 모델

 

<그림 10> Large-DCUnet-20 : 레이어 당 채널 수가 더 많은 20개의 Convolution 레이어가있는 모델

 

<그림 11> 인코더 및 디코더 블록에 대한 설명. Ff 및 Ft는 각각 주파수 및 시간 축을 따라 Convolution 필터 크기를 나타낸다. Sf 및 St는 각각 주파수 및 시간 축을 따라 Convolution 필터의 보폭 크기를 나타낸다. O(C)와 O(R)는 각각 Complex-valued Network 설정과 Real-valued Network 설정에서 서로 다른 채널 수를 나타낸다. O(R)의 채널 수는 O(C) 채널 수의 약 √2 배로 설정되어 Real-valued Network 와 Complex-valued Network의 학습 가능한 매개 변수 수가 거의 동일해 진다.

 

C. PROPERTIES OF WEIGHTED-SDR LOSS

이 섹션에서, 우리는 제안된 weighted-SDR 손실의 속성을 요약한다.먼저, weighted-SDR 손실의 범위가 제한되어 있음을 보여주고 최소값을 얻는 조건을 설명한다. 다음으로, 노이즈 전용 입력의 경우 gradients를 설명한다.

 

x는 T time step의 잡음 음성(Noisy Speech) , y는 대상 소스, 는 추정된 소스를 나타낸다. 이러한 상황에서 losswSDR (x, y, yˆ)은 다음과 같이 정의된다 :

"여기서 α는 대상 소스와 노이즈 간의 에너지 비율이다."

 

"Proposition(명제) 1. losswSDR (x, y, yˆ)는 [-1,1]에 제한된다. 더욱이, 고정 y != 0 및 x−y != 0의 경우, 최소값 -1은 yˆ=y 일 때만 얻을 수 있다(∀c ∈ R에 대해 x != cy 인 경우)."

 

Proof(증명). Cauchy-Schwarz 부등식은 a ∈ R(T) 및 b ∈ R(T), −|a||||b|| ≤ <a, b> ≤ ||a||||b||를 나타낸다. 이 부등식에 의해 [-1,1]은 losswSDR의 범위가 된다. 최소값을 얻으려면 Cauchy-Schwarz 부등식의 등식 조건이 충족되어야 한다. 이 등식 조건은 ∃t ∈ R에 대해서 b = 0 또는 a = tb와 동일하다. 등식 조건(y != 0, x−y != 0)식(9)에 적용하면 ∃t1 ∈ R∃t2 ∈ R에 대해서 yˆ= t1y x−yˆ = t2(x−y)가 된다. 이 두 식을 더하면 (1 − t1)x = (t1 − t2)y를 얻을 수 있다. 일반적으로 큰 T에 대해 만족되는 x != cy 가정에 의해 최소값에 도달하면 t1 = 1, t1 = t2가 충족되어야한다고 결론을 내릴 수 있다.

 

weighted-SDR 손실의 다음 속성은 네트워크가 잡음 전용 훈련 데이터에서도 학습 할 수 있음을 보여준다. 실험에서 "식 (9)"의 분모에 작은 숫자 €를 더한다. 그러고나서 y = 0의 경우 "식(9)"는 "식(10)"과 같이 된다.

Proposition(명제) 2. yˆ= gθ(x)를 매개 변수화하면 losswSDR(x, y, gθ(x))는 목표소스 y가 비어 있더라도 θ에 대해 0이 아닌 gradient를 갖는다.

Proof(증명). 우리는 편도 함수를 다음과 같이 계산할 수 있다.

따라서, θ에 대한 0이 아닌 gradient가 역전파 될 수 있다.

 

 

D. IRREDUCIBLE ERRORS

이 섹션에서, 우리는 두 가지 가능한 축소 불가능한 오류를 설명한다. <그림 12> (a)는 Phase Estimation의 부족으로 인한 축소 불가능한 Phase Error를 보여준다. <그림 12> (b)는 마스크 범위를 제한 할 때 발생하는 감소 할 수없는 Error를 보여준다. 마스크의 범위를 제한하지 않으면 문제가 잘 제기되지만, cIRM 분포에 대한 사전 지식이 부족하여 광범위한 최적화 검색 공간에 어려움을 겪을 수 있다.

 

<그림 12> Spectrogram의 TF bin에서 가능한 축소 불가능한 오류 유형의 두 가지 경우. (a) Phase Estimation하지 않고 혼합물의 Phase을 재사용하는 경우. Magnitude Estimation이 완벽하다고 가정하더라도 실제 소스와 Estimation 사이에는 여전히 감소 할 수없는 Phase Error가 있다. (b) Estimated 마스크의 Magnitude가 1로 제한되는 경우. 이것은 혼합물의 Magnitude 보다 더 큰 소스가있을 수 있기 때문에 다시 줄일 수없는 오류를 유발한다.

 

E. SCATTER PLOTS OF CIRM

훈련 세트에서 cIRM의 산점도(Scatter Plots)는 <그림 13>에서 보여진다. <그림 13>은 혼합물의 SNR 값 (0, 5, 10, 15 (dB))에 따라 4가지 다른 산점도를 보여준다. cIRM의 각각의 산점 인 Mt, f 는 다음과 같이 정의됩니다 :

원점 근처에 흩어져있는 점은 |Yt, f | 값이 |Xt, f |에 비해 상당히 작은 TF 빈을 나타낸다. 따라서 이러한 TF 빈은 소스가 아닌 노이즈가 지배적 인 빈으로 해석 될 수 있다. 반면, (1,0) 근처의 산점은 |Yt, f |의 값이 |Xt, f |와 거의 동일한 TF 빈을 나타낸다. 이 경우 이러한 TF 빈은 노이즈가 아닌 소스가 지배적 인 빈으로 해석 될 수 있다. 따라서 SNR이 높을수록 깨끗한 소스가 우세한 TF 빈의 양이 SNR이 낮은 경우에 비해 더 커지고 결과적으로 <그림 13>과 같이 1에 가까운 Real part의 Portion(부분)이 커진다.

<그림 13> 훈련 세트에서 입력 혼합물의 4 가지 다른 SNR 값에 따른 cIRM의 4 가지 다른 산점도, (a) SNR : 0 (dB) (b) SNR : 5 (dB) (c) SNR : 10 (dB) (d) SNR : 15 (dB).

 

F. VISUALIZATION OF ESTIMATED PHASE

이 섹션에서, 우리는 추정된 음성의 Phase에 대한 보충의 시각화를 보여준다. 원시 Phase 정보 자체는 고유 한 패턴을 나타내지 않지만, 숨겨진 구조는 주파수 축을 따라 Phase의 음의 도함수인 그룹 지연으로 드러날 수 있다(Yegnanarayana & Murthy, 1992). 이 기술을 사용하면 <그림 14>와 같이 Phase 정보를 명시적으로 표시 할 수 있다. <그림 14> (d)는 깨끗한 음성의 그룹 지연을 보여주며 해당 Magnitude는 <그림 14> (a)에 나와 있습니다. 두 가지 표현은 Phase의 그룹 지연이 Magnitude Spectrogram의 구조와 유사한 구조를 가지고 있음을 보여준다. 우리 모델에 의한 Estimated Phase는 <그림 14> (c)에 나와 있다. 잡음이있는 음성의 그룹 지연(<그림 14> (b))은 독특한 조화 패턴을 나타내지 않지만, 우리의 추정은 <그림 14> (c)의 노란색 상자와 같고, 이것은 깨끗한 음성의 그룹 지연(<그림 14> (d))과 유사한 조화 패턴을 보여준다.

 

<그림 14> Phase 그룹 지연의 그림. 우리 모델 (c)에서 Estimated Phase의 그룹 지연은 깨끗한 음성(d)과 유사한 패턴을 보여준다. 더 나은 시각화를 위해 깨끗한 음성 Spectrogram의 Magnitude가 특정 임계 값 0.01을 초과하는 TF 빈만 표시한다.

 

 

G. IMPORTANCE OF PHASE ESTIMATION

이 섹션에서는 Phase Estimation이 없는 기존 접근 방식의 한계를 보여주기 위해, 특히 낮은 SNR 조건(가혹한 조건)에서 Phase Estimation이 중요하다는 점을 강조한다. 먼저 주어진 혼합물의 SNR이 낮을 때, Phase 정보의 Estimation이 더 중요해 진다고 가정한다. 이 가정에 대한 우리의 추론은 주어진 혼합물의 SNR이 낮으면 감소 할 수없는 Phase Error가 더 클 가능성이 높기 때문에 <그림 15>와 같이 Phase Estimation을 통해 개선 할 여지가 더 많다는 것이다. 이는 <표 5>의 컬럼들에서 PhaseDist (C, N) 및 SNR이 높아질수록, 두 컬럼들의 값이 증가하는 Phase Improvement에서도 확인할 수 있다.

<그림 15> (a) 주어진 혼합물의 SNR이 높은 경우. 이 경우 소스가 혼합물에서 우세 할 가능성이 높다. 따라서 Phase가 추정되지 않은 경우에도 더 정확한 정확도로 Ground Truth 소스를 추정하는 것이 비교적 쉽다. (b) 주어진 혼합물의 SNR이 낮은 경우. 이 경우 소스는 혼합물에서 우세하지 않다. 따라서 감소 할 수없는 Phase Error는 높은 SNR 조건보다 낮은 SNR 조건에서 더 높을 가능성이 있다. 이러한 상황에서 Phase Estimation이 부족하면 시스템 성능이 특히 나빠질 것이라고 예상한다.

 

Phase Estimation의 중요성을 실증적으로 보여주기 위해 <표 6>에 기존 방법(Phase Estimation 없음)과 제안된 방법 (Phase Estimation 포함) 간의 Phase Improvement과 Performance Difference 간의 상관 관계를 보여준다. Performance Difference는 Phase Estimation을 통해 우리 방법의 평가 결과에서 기존 방법의 평가 결과를 간단히 빼서 계산했다. 공정한 비교를 위해 기존 방법(RMRn)과 제안된 방법 (cRMCn) 모두 동일한 수의 매개 변수를 갖도록 설정했다. 또한 두 모델 모두 weighted-SDR 손실로 훈련되었다. 결과는 SNR이 낮을 때 Phase Improvement과 Performance Difference가 더 높은 SNR 조건의 결과보다 상대적으로 높다는 것을 보여준다. 또한 거의 모든 결과는 SNR이 감소함에 따라 Phase Improvement 및 Performance Difference의 점진적 증가를 보여 주며 이는 우리의 가정에 동의한다. 따라서 특히 가혹한 노이즈 조건 (낮은 SNR 조건)에서 Phase Estimation이 중요하다고 사료된다.

 

<표 6> 기존 방법(Phase Estimation 없음)과 당사의 방법(Phase Estimation 포함) 간의 Performance Difference. Performance Difference는 테스트 세트에서 혼합물의 4가지 다른 SNR 값으로 표시된다.

 

H. COMPLETE QUALITATIVE RESULTS

<표 7> DCUnet을 포함한 4개 모델의 Pairwise 선호도 점수. 점수는 피험자가 한 방법을 다른 방법보다 선호하는 상대 빈도를 계산하여 얻는다. Hard / Medium / Easy는 각각 2.5 / 7.5 / 17.5 SNR 조건을 dB 단위로 나타낸다. 각 통계에 대한 중요성도 설명된다 (n.s .: 중요하지 않음, ∗ : p <0.05, ∗∗ : p <0.01, ∗∗∗ : p <0.001).

 

 

 

[딥러닝 공부할 때 알아야 기본]

  • 근래의 AI 서비스를 구축할때, 딥러닝 모델(AI 모델)을 새롭게 만드는 경우는 거의 드물다. 최신 연구되고 있는 모델중 자신의 서비스에 맞는 모델을 찾고 최적화 하며, 경량화 하는것이 많다. 이런 과정을 위해 실험의 학습(훈련) 단계에서 수정되는 실험 파라미터(최적화 해야할)들은 어떤것들이 있는가?

 

반응형