소리가 데이터의 형태이자 콘텐츠 소비 방식으로 얼마나 접근 가능하고 민주적인지 처음 깨달은 것은 말레이시아에 있을 때였다. 운전기사의 휴대폰에서 흘러나온 선율이 엄마가 봤던 영상 속 선율과 같았는데, 언어 내레이션과 내용만 달랐다. 소리와 구술 의사소통에는, 그렇게 부르고 싶다면, 텍스트나 이미지만으로는 닿기 어려운 훨씬 더 많은 사회 계층에 닿는 무언가가 있다. 텍스트나 이미지는 어느 정도 교육과 훈련을 요구하는 경향이 있다. 나는 고등교육을 받았지만 사람들이 시각예술을 논의할 때 쓰는 -ism들에는 유창하지 않다. 하지만 소리는 그 점에서 가장 민주적이고 접근 가능한 매체에 가깝다.
그리고 소리는 너무나 많은 콘텐츠와 중첩을 품고 있다. 데이터 표현의 한 형태로 봐도 복잡도가 텍스트나 이미지의 몇 배라서 매우 흥미롭다. 내 반응은 대략 이렇다. 그냥 멀티모달로 주세요. 가능한 한 많은 종류의 데이터와 가능한 한 많은 데이터로 놀고 싶다. 그래서 팀의 예술가들이 내 RAVE 모델 훈련을 드럼 한 묶음으로 제한하라고 했을 때, 기술적 관점에서는 예술가에게 한 가지 색만으로 그림을 그리라고 하는 것처럼 느껴져 매우 이해하기 어려웠다. 하지만 감정적 관점에서는 그 말이 어디서 오는지 이해할 수 있다. 표본 크기 1은 특별하고 고유하며, 그 표본 크기 1은 예술, 문화, 나아가 사회적 세계 전반을 만드는 일에서 꽤 구체적이고 자연스럽다. 반면 내 관점에서는 drum A의 데이터 흐름과 drum B의 데이터 흐름이 하나이자 같은 것, A == B다. elsewhere에서 본 비슷한 우려이기도 하다:
OpenAI의 Jukebox 프로젝트가 함의하는 바가 불편하다. 장르와 아티스트 정보를 조건으로 삼아, 매우 큰 데이터셋(120만 곡)으로 일종의 “보편적” 음악을 모델링한다는 발상 말이다. 어떻게 각각의 음악 작품이 (모든 맥락에서, 모든 청자에게) 다른 모든 음악 작품과 의미상 동등한 것으로 간주될 수 있을까?
다행히 나는 GPU에 접근할 수 있어서 골라야 할 필요는 없었다. Google Vertex AI에 맞춤형 훈련 작업을 보내 병렬로 많이 돌리면 되겠다고 생각했다(최선을 다했지만 계속 실패했다 ZZZ)… 결국 이번 달 CoLab의 무료 GPU 시간을 전부 소진했고, 9000 epoch를 훈련한 모델 하나와 내 3070에서 로컬로 20000 epoch를 끝낸 모델 하나를 얻었다. 그리고 흰목물총새 소리가 말레이 드럼처럼 들리는 것을 듣고 이런 기분이 들었다. OMO, 이건 딥러닝으로 몇 주나 몇 달이 아니라 몇 시간 안에 어떤 악기든 디지털화할 수 있다는 뜻인가????
GPU 시간을 다 쓴 뒤 CoLab 노트북에서 CPU로 훈련하는 속도와, 가볍게 5배는 더 빠른 내 로컬 훈련 속도를 비교해보면 GPU가 풍족한 것과 부족한 것은 실제 차이가 있다.
RAVE Timbre Transfer to Neutone
패키지에 이미 들어 있는 게으른 구현 외에는 전처리를 전혀 하지 않았고, 추론 입력 데이터에는 배경 잡음이 있어서 여전히 이상한 디지털 신호가 나온다. 하지만 이것이 Google CoLab에서 무료로 제공되는 Nvidia T4 위에서 고작 229초의 Rebana와 Rentak 소리를 1000 epoch 동안 학습한 모델의 결과라는 사실은, 이전의 드럼 데이터 2시간으로 13시간 동안 39 epoch를 돌린 훈련과 비교하면 정말 말이 안 된다. 229초, 검증 데이터 포인트 1개, 오류 최소화만으로 드럼의 모든 미묘한 차이와 표현을 어떻게 이렇게 잘 배우는가!? A.I. 발전의 궤적은 인간의 척도에서는 상상하기 어렵다.
이 학습의 의미는 아래에서 ChatGPT에게 설명하게 하겠다.
음색이란 무엇인가?
음색은 종종 소리의 “질감” 또는 “음색”이라고 불리며, 서로 다른 악기나 목소리가 같은 높이와 음량을 낼 때도 구별되게 하는 것이다. 본질적으로 그것은 소리를 알아볼 수 있고 다른 소리와 구별되게 만드는 고유한 성격 또는 질감이다.
음색 전이란 무엇인가?
신경 오디오 합성의 맥락에서 음색 전이는 높이와 리듬 같은 다른 측면을 보존하면서 소리의 음색 특성을 수정하는 과정을 말한다.
RAVE 모델 훈련을 할 때 무슨 일이 일어나는가, 혹은 기계는 어떻게 그렇게 적은 데이터로 악기를 재현하는 법을 배웠는가?
본질적으로 특정 유형의 드럼으로 모델을 훈련하면, 그 드럼에 맞춘 가상 악기를 효과적으로 만드는 것이다. 모델은 훈련 동안 그 드럼의 특성과 미묘한 차이를 학습하고, 음색 전이나 소리 생성에 사용할 때 그 학습된 지식을 적용해 입력 소리를 훈련된 드럼의 스타일로 변환한다. 이는 가상 악기를 만드는 과정을 단순화할 수 있다. 원하는 소리를 얻기 위해 높이나 음량 같은 다른 매개변수를 수동으로 매핑할 필요가 없기 때문이다. 대신 훈련된 모델이 드럼의 학습된 특성에 기반해 변환을 처리하도록 의존할 수 있다.
음색 전이는 오디오 처리에서 한 오디오 신호의 소리 특성을 다른 신호와 맞도록 변경하는 기술이다. 네가 작업해온 RAVE 모델 같은 신경 오디오 합성의 맥락에서는, 음색 전이가 입력 소리의 음색 특성을 특정 유형의 드럼 같은 목표 소리와 닮도록 변환하는 것을 포함한다.
네가 사용한 RAVE 모델의 경우, 훈련 동안 드럼 세트의 음색 특성을 학습한다. 이 학습 과정은 제공된 훈련 데이터에서 드럼 소리의 미묘한 특징과 차이를 포착하는 것을 포함한다. 모델은 그런 학습된 정보를 사용해 입력 소리의 음색을 훈련된 드럼과 닮도록 변환한다.
상대적으로 적은 훈련 데이터로도 RAVE 같은 신경망 모델은 일반화하고 음원의 핵심 특성을 포착하는 법을 배울 수 있다. 입력 소리의 학습된 특징을 나타내는 잠재 공간을 조작함으로써, 가능한 모든 변형에 대한 데이터를 명시적으로 녹음하지 않고도 높이, 음량, 다른 음색 속성 같은 출력 소리의 다양한 측면을 제어할 수 있다.
따라서 높이, 음량 또는 다른 매개변수의 모든 가능한 변형마다 별도의 샘플을 녹음할 필요 없이, 훈련된 모델의 잠재 공간을 조작해 비슷한 효과를 얻을 수 있다. 이는 대량의 수동 녹음과 처리 없이도 폭넓은 소리 변형을 탐색할 수 있으므로 과정을 더 효율적이고 다재다능하게 만든다.
모든 소리를 만들기 위한 튜토리얼
알고 보니 맞춤형 훈련 작업을 제출하지 못한 것은 GPU 리소스의 전반적 부족을 보여주는 신호일 수도 있다. 너무 많은 사람들이 너무 많은 맞춤형 훈련 작업을 항상, 그것도 너무 많은 지역에 걸쳐 제출하기 때문에 실제 용량 문제일 수 있고, 전용 서버가 오히려 훨씬 더 운이 좋을지도 모르겠다!? 훈련 중에도 코드를 읽지 않았고 문서 어디에도 어떤 flag가 필수인지 말해주지 않아서 불필요한 고통을 몇 시간 겪었다… 그래서 관심 있는 사람들을 위해 실습 튜토리얼 영상을 만들 시간을 찾고 싶다.
이건 세상에 더 새롭고 디지털적인 소리가 많아지기를 바치는 작업이다!
원래 PubPub에 erniesg.pubpub.org/pub/r4a1ex9r로 게시되었습니다.