티스토리 뷰
Paper/Conversion
[Paper 리뷰] kNN-VC: Voice Conversion with Just Nearest Neighbors
feVeRin 2025. 3. 24. 21:24반응형
kNN-VC: Voice Conversion with Just Nearest Neighbors
- 최근의 any-to-any voice conversion system은 complexity가 증가하여 reproduce가 어려움
- kNN-VC
- Source, reference speech의 self-supervised representation을 추출한 다음, source representation의 각 frame을 reference의 nearest neighbor로 replace
- 최종적으로 pretrained vocoder를 통해 converted representation을 audio로 변환
- 논문 (INTERSPEECH 2023) : Paper Link
1. Introduction
- Voice Conversion (VC)는 content는 unchange 하면서 source speech를 target voice로 변환하는 것을 목표로 함
- 특히 any-to-any conversion은 training 중에 unseen인 source/target speaker를 사용하여 VC를 수행함
- BUT, 최근의 any-to-any VC model은 computational complexity로 인해 training/inference cost가 증가함
-> 그래서 단순한 $k$-Nearnest Neighbors regression을 활용한 VC model인 kNN-VC를 제안
- kNN-VC
- Self-supervised speech representation model을 사용하여 source/reference에 대한 feature sequence를 추출
- 이후 source representation의 각 frame을 reference에 대한 nearest neighbor로 replace 하여 target speaker conversion을 수행 capture
- 여기서 self-supervised representation은 phonetic similarity를 capture 하므로 matched frame은 source와 동일한 content를 가짐 - 최종적으로 neural vocoder를 사용하여 converted speech를 생성
< Overall of kNN-VC >
- Simple $k$-Nearest Neighbor를 활용한 VC model
- 결과적으로 기존보다 뛰어난 conversion 성능을 달성
2. Method
- kNN-VC는 encoder-converter-vocoder structure를 따름
- Encoder는 source, reference speech의 self-supervised representation을 추출함
- Converter는 각 source frame을 reference의 nearest neighbor에 mapping 함
- Vocoder는 converted feature에서 audio waveform을 생성함
- Encoder
- 먼저 kNN-VC는 source utterance의 feature sequence (query sequence)를 추출함
- 추가적으로 target speaker에서 하나 이상의 utterance에 대한 feature sequence를 추출하여 large self-supervised feature vector pool인 matching set을 구성함
- Encoder는 nearby feature가 similar phonetic content를 가지는 representation을 추출하는 것을 목표로 함
- Wav2Vec 2.0, WavLM과 같은 self-supervised model은 서로 다른 phone보다 서로 closer 한 동일 phone의 instance를 encode 하기 때문
- 특히 논문은 pretrained WavLM-Large encoder를 사용함 - 이때 해당 encoder model은 kNN-VC에서 fine-tuning/further training 되지 않고 feature extraction을 위해서만 사용됨
- Wav2Vec 2.0, WavLM과 같은 self-supervised model은 서로 다른 phone보다 서로 closer 한 동일 phone의 instance를 encode 하기 때문
- $k$-Nearest Neighbors Matching
- Target speaker conversion을 위해 query sequence의 모든 vector에 $k$-Nearnest Neighbors (kNN) regression을 적용함
- 이때 각 query frame을 matching set의 kNN average로 replace 함
- $k=4$로 설정 - 특히 유사한 self-supervised speech feature는 phonetic information을 share 하므로 kNN을 통해 source speech의 content를 preserve 할 수 있음
- 추가적으로 논문은 concatenative method와 비슷하게 target feature에서 converted query를 directly construct 하여 speaker similarity를 보장함
- 결과적으로 해당 kNN regression은 non-parameteric 하고 training이 필요하지 않으므로 쉬운 implementation이 가능함
- 이때 각 query frame을 matching set의 kNN average로 replace 함
- Vocoder
- Vocoder는 converted feature를 audio waveform을 translate 하는 역할을 수행함
- 이때 spectrogram에 대한 conditioning 대신 self-supervised feature를 input으로 사용함
- 추론 시에는 matching set에서 select 된 feature의 mean에 해당하는 kNN output을 vocoder에 conditioning 함
- 구조적으로는 HiFi-GAN을 채택
- Prematched Vocoder Training
- Individual vocoder로 인해 training-inference mismatch가 존재하므로 artifact가 발생할 수 있음
- 따라서 논문은 prematched training을 활용하여 kNN을 통해 vocoder training set을 reconstruct 함
- 먼저 각 training utterance를 query로, 동일한 speaker의 remaining utterance를 matching set으로 구성함
- 다음으로 matching set를 기반으로 kNN regression을 적용하여 query sequence를 reconstruct 함
- 최종적으로 해당 prematched feature에서 original waveform을 예측하도록 vocoder를 training 함
- 즉, vocoder를 training encounter와 resemble 한 data에서 vocoder를 training 하여 robustness를 개선함
- 따라서 논문은 prematched training을 활용하여 kNN을 통해 vocoder training set을 reconstruct 함
3. Experiments
- Settings
- Results
- 전체적으로 kNN-VC의 성능이 가장 우수함
- Ablation: Prematching and Amount of Reference Data
- Target speaker 양이 감소할수록 intelligibility, speaker similarity가 저하됨
- 한편 prematching은 target speaker data 양에 관계없이 non-negligible improvement를 제공함
반응형
'Paper > Conversion' 카테고리의 다른 글
댓글