본문 바로가기
딥러닝공부

A Wavenet for Speech Denoising

by 부자독개 2021. 1. 4.
반응형

오늘은 요즘 연구과제를 진행하면서 네트워크 모델로 사용하고 있는 디노이징을 위한 웨이브넷에 대한 간단한 리뷰를 하고자 한다. 기존의 웨이브넷에 대해서 배경지식을 가지고 있다는 가정하에 기존의 웨이브넷과의 차이점을 위주로 리뷰를 진행한다.

 

Wavenet

기존의 웨이브넷은 Causal, Dilated Conv. 를 활용한것이 특징이다.

 

- Causal Conv.

실시간으로 raw audio를 처리하고자 현재 값과 과거 값만을 사용하기 때문에 사용한 것으로 이해했다.

 

- Dilated Conv.

16KHz의 샘플링 레이트를 가지는  raw audio data가 있다고 생각하자.

1초의 data를 입력으로 한다. = 16만개의 샘플을 네트워크의 입력으로 한다.

우리에게는 짧다고 생각되는 1초 조차 네트웍 입장에서는 엄청난 데이터의 양을 다루는 것이다. (mnist를 생각해보자.)

Dilated Conv. 은 한번에 다루는 데이터의 양은 줄이면서 다루는 시간영역에서의 길이(receptive field)는 어느 정도 가져가기 위한 하나의 방법이다. 

 

- 나머지 특징은 기존의 wavenet에 대한 리뷰를 진행하면서 정리하도록 한다.

 

Denoising Wavenet

- 백그라운드 노이즈를 제거하는 것을 목표로 하는 디노이징 웨이브 넷은 기존과는 다르게 Non-causal 한 특징을 갖는다. 이는 기존처럼 실시간으로 데이터를 처리하는 것이 목표가 아니기 때문이다. 

 

- 기존 웨이브 넷은 양자화를 통한 256개의 class를 분류한 반면, 디노이징 웨이브넷은 Real-valued predictions을 한다.

 

- Loss에는 두가지 텀이 들어간다.

하나는 노이즈가 제거된 정답과 예측 값과의 오차이다.

두 번째 텀은 실제 노이즈와 예측 노이즈 (예측값 - 입력)가 사용된다.

 

 

노이즈를 제거하는 연구를 진행하면서 Denoising AE를 초기에 설계하여 사용해 보았고 현재는 Denoising Wavenet를 설계하여 사용하고 있다. 실험 결과 등을 봤을 때 신호를 압축하고 다시 해체하는 AE구조보다는 신호의 형태를 그대로 유지해 나가면서 노이즈를 제거하는 wavenet의 구조가 더 적합하다고 생각된다. 

반응형

댓글