Diffusion 기반 생성형 AI 활용기/RVC 보컬 커버

4. RVC Web UI 알아보기: 무엇이 좋은 데이터일까, 자연스러운 결과물을 얻기 위한 고찰

누군가의 이야기 2023. 7. 30. 18:43
728x90

https://kosonkh7.tistory.com/168

 

2. RVC Web UI 알아보기: 모델 훈련 방법, AI 보컬 커버 생성 가이드

https://kosonkh7.tistory.com/166 1. RVC Web UI 알아보기: 설치 및 실행 방법 가이드 (따라만 하면 됨) 보컬 AI로 특정 가수가 다른 가수 곡을 커버하는 영상들을 관심있게 봐왔는데, 왠지 내가 더 잘 학습시

kosonkh7.tistory.com

 

 

RVC를 통해 보컬 변환을 실습해본지 몇 주 정도 지났다.

 

마음에 드는 결과물도 많았고, 회심의 선곡이 뜻대로 결과물이 나오지 않기도 하였다.

 

보컬 변환은 정량적인 평가지표가 적용될 수 없는 분야이기 때문에, 

 

어떠한 정석이 없이 모델마다, 레퍼런스가 되는 타겟 곡마다, 파라미터나 피쳐 셀렉션 모델을 달리하여 실험해보고 좋은 결과물을 찾는 게 주요했다.

 

어떡하면 더 자연스럽게 원하는 결과를 얻을 수 있을까 하는 고민해보았을 때,

 

충분한 양의 좋은 데이터로 학습된 모델을, 좋은 품질의 레퍼런스에 적절히 적용하였을 때 좋은 결과물을 기대할 수 있었고,

 

결국 데이터가 중요하다는 결론에 닿았다.

 

분야를 불문하고 데이터를 활용하는 경우엔 데이터가 가장 중요하다.

 

그렇다면 1. 좋은 데이터란 무엇인지, 2. 충분한 양은 어느 정도인지, 3. 적절히 적용한다는 건 어떤 의미인지,

 

경험적인 부분에서 얻은 노하우를 적어보려 한다.

 


 

 

데이터의 분량이 중요한 이유는, 

 

모델 학습 시에 가능한 많은 음운과 음역대를 입력해주어야, 보컬 변환 시 자연스러운 결과물이 따라오길 기대할 수 있기 때문이다.

 

그렇지 않으면 발음이 어색하거나, 특정 음역대는 기계음으로 대체되는 경우가 부지기수이다.

 

RVC는 다른 보컬 변환에 비해 적은 데이터로도 좋은 결과물을 생성하길 기대하기 좋은데,

 

분량이 20분이면 충분하였다.

 

모델 학습 시간이 데이터셋 분량에 비례하므로, 30분 기준으로 데이터 수집해보면 좋지 않을까

(코랩 환경에서 학습하면, 시간이 길어졌을 때 방치해두면 학습이 중단되는 불편함이 있기에 학습 시간도 고려하면 좋다) 

 

 

입력 데이터로 쓰이는 보컬 데이터의 품질 또한 당연히 중요한데,

 

깨끗하지 못한 품질의 데이터를 활용하면, 결과물에 전자음 혹은 기계음이 많이 섞이는 듯한 느낌을 받았다.

(특히 코러스가 섞인 보컬 데이터)

 

일반적으로 깨끗한 데이터를 얻기 위한 과정 및, 음성데이터 처리는 아래 플로우를 따랐다.

 

보컬 변환 과정 플로우

 

728x90

 

모델 학습에 사용할 데이터셋을 구성할 때도,

 

레퍼런스가 될 보컬 데이터를 만들 때도 적용될 수 있는 플로우이다.

 

음악을 다루는 지식이 없는 입장에서 내 맘대로 구성했지만, 최소한 저 정도는 선행되어야 한다.

 

배경음악을 분리하고, 코러스를 추가로 분리하고, 에코가 지나칠 경우 제거해주는 것이 좋다.

 

에코를 제거하면 데이터 품질이 떨어진다는 의견도 보았지만,

 

경우에 따라선 에코를 제거해주어야 발음이 정확하게 잡히거나, 잡음이 주는 경향을 보였기에 잘 판단하면 좋을 것 같다.

 

본인은 모델 학습 시 사용되는 데이터는 에코를 제거하지 않고,

 

레퍼런스로 사용되는 데이터는 에코를 제거하는 방식으로 활용하였다.

 

보컬 / 배경음악 분리 방법

https://kosonkh7.tistory.com/167

 

[MR 제거, 보컬 추출] AI를 활용한 고품질 보컬과 음원 분리 초간단 가이드 : Ultimate Vocal Remover

AI 커버곡이 인기..가 있는 건지 모르겠지만, 본인은 확실히 관심이 생긴 것 같다. 왠지 모르게 어설픈 결과물들을 보면서, "내가 더 잘할 수 있을 것 같은데?" 라는 의문과 함께 도전 코랩 환경에

kosonkh7.tistory.com

 

보컬에서 코러스 제거 / 추출 방법

https://kosonkh7.tistory.com/173

 

[Vocal Data Preprocessing] 보컬 데이터에서 코러스 제거하는 방법 | Ultimate Vocal Remover 활용

https://kosonkh7.tistory.com/167 [MR 제거, 보컬 추출] AI를 활용한 고품질 보컬과 음원 분리 초간단 가이드 : Ultimate Vocal Remover AI 커버곡이 인기..가 있는 건지 모르겠지만, 본인은 확실히 관심이 생긴 것

kosonkh7.tistory.com

 

에코 제거 방법

https://kosonkh7.tistory.com/170

 

[Echo Remove AI] 에코 제거하여 보컬 데이터 품질 높이기 | De Reverb HQ 활용 방법 및 한계점

AI 커버곡을 만들면서 가장 중요하다고 느꼈던 점은 역시 데이터였다. 모델 학습에 양질의 데이터가 중요하다는 건 몰라도 아는 사실이지만, 좋은 데이터 = 우선 에코가 적고 목소리가 또렷해야

kosonkh7.tistory.com

 

 

데이터 이외에 고려해야할 사항으론

 

모델 학습에 사용된 데이터와 레퍼런스 데이터 사이에 음역대와 창법이 유사할수록 자연스럽게 결과가 나왔다.

 

특히 레퍼런스가 되는 데이터의 음성 특징 (발음 등)의 개성이 독특한 경우,

 

결과물에 강하게 반영되어 원하는 결과물을 얻기 어려운 경우가 많았기 때문에,

 

이를 고려하여 깔끔한 발성과 창법에서 비롯된 곡을 선정해서 변환하면 좋은 결과를 얻길 기대하기 좋다.

728x90