AI VIDEO BRIEFING
생성 오디오 입문: 샘플링·나이퀴스트 정리부터 U-Net 음질 복원과 트랜스포머 작곡까지
버클리 CS 198-126 생성 오디오 강의 정리. 연속된 소리를 숫자로 바꾸는 표본화와 나이퀴스트 정리, U-Net으로 저음질 음원을 복원하는 구조, 트랜스포머가 다음 음을 예측하도록 음악을 토큰화하는 방식을 차례로 다룬다.

핵심 메시지
쉽게 이해하기
버클리대 CS 198-126 '현대 컴퓨터 비전과 딥러닝' 강의의 생성 오디오 편은 신호 이론에서 출발한다. 바이올린이나 피아노 소리는 끊김 없는 연속 신호라 컴퓨터가 그대로 처리할 수 없다. 그래서 일정한 주기로 값을 찍어내는 표본화와, 세로축 값을 정해진 단계로 끊는 양자화를 거쳐 디지털 신호로 바꾼다. 이 두 과정을 합쳐야 비로소 기계가 이해할 수 있는 숫자 표현이 되고, 처리해야 할 정보량도 크게 줄어든다.
양자화 비트 수는 정확도와 계산량의 맞바꿈이다. 2비트로는 원래 파형을 거칠게만 따라가지만 3비트, 5비트로 올라가면 오차가 급격히 줄고 16비트에서는 사실상 원본에 가까운 근사가 된다. 강의는 음악가가 목소리 음정을 빠르게 올릴 때 한 시간 걸리는 무손실 처리와 5~10분 만에 끝나지만 사람 귀로는 구분되지 않는 손실 처리 중 무엇을 택할지를 실제 선택의 예로 든다.
표본화에는 넘지 말아야 할 선이 있다. 섀넌-나이퀴스트 표본화 정리는 원 신호에 표본화 주파수의 절반을 넘는 주파수 성분이 없을 때만 손실 없이 복원할 수 있다고 말한다. 즉 다루려는 최고 주파수의 두 배 이상으로 표본을 떠야 하고, 한 주기당 최소 두 점이 필요하다. 이보다 적게 뜨면 에일리어싱이 일어나 높은 주파수가 낮은 주파수로 둔갑하면서 정보가 사라진다. 강의는 같은 현상이 이미지의 점 표본화나 슈퍼 샘플링에서도 나타난다며 시각적 예시를 함께 보여준다.
이어지는 기하적 신호 이론 부분은 내적과 투영으로 신호를 재구성하는 고전적 방법을 다룬다. 서로 직교하는 기저 벡터에 원 벡터를 투영해 각 축 성분을 얻으면, 그 선형결합으로 원래 벡터를 그대로 되살릴 수 있다. 직교성이 중요한 이유는 두 벡터가 공유하는 정보가 없어야 투영할 때마다 새로운 정보를 얻기 때문이다. 강의는 이 고전 이론을 딥러닝 기반 복원으로 넘어가는 다리로 삼는다.
저음질 음원을 고해상도로 되살리는 모델은 U-Net을 닮았다. 다운샘플링 블록 여덟 개가 스트라이드 2 합성곱과 배치 정규화, ReLU를 거치며 파형 길이를 절반씩 줄이는 대신 필터 뱅크 수를 두 배로 늘린다. 병목층을 지나 여덟 개의 업샘플링 블록이 이어지는데, 여기서는 서브픽셀 합성곱으로 값을 재배열해 해상도를 키우고 다운샘플링 블록과 잔차 연결로 저해상도 표현에서 배운 특징을 그대로 전달한다. 손실 함수는 복원 파형과 원본 고해상도 파형의 평균제곱오차를 썼다. 결과적으로 잘려 있던 고주파 대역이 채워지고, 이런 기법은 온전한 음질로 남지 않은 옛 녹음을 리마스터링하는 데도 쓰인다.
마지막은 트랜스포머로 다음 음을 예측하는 문제다. 텍스트는 사전으로, 이미지는 픽셀값으로 쉽게 토큰이 되지만 음악은 음높이와 길이, 박자, 조성, 동시에 울리는 화음까지 담아야 해 2차원 정보를 한 줄로 펴는 일 자체가 과제다. 음마다 길이를 붙여 하나의 토큰으로 만들면 어휘가 폭발하므로, 강의가 소개한 방식은 구분자 토큰을 써서 함께 칠 음들과 순서대로 칠 음들을 나누고 어휘는 음 자체로 줄인다. 데이터 증강으로는 한 곡을 12개 조로 옮겨 학습 표본을 12배로 늘리는 방법이 쓰였고, 토큰 순서가 실제 시간 위치와 다른 문제는 박자 정보를 메타데이터로 함께 넣는 위치 박자 인코딩으로 풀었다. 모델은 상대 위치 인코딩과 은닉 상태 메모리를 갖춘 Transformer XL을 써서, 매번 전체 시퀀스를 다시 계산하지 않고 마지막 예측 토큰만 평가하면 되도록 했다. 강의는 이 모델이 파헬벨 캐논의 뒷부분을 이어 작곡한 데모로 마무리된다.
주요 인사이트
- 오디오 생성이 어려운 근본 이유는 모델이 아니라 표현 방식에 있다. 연속 신호를 어떻게 끊어 숫자로 만들 것인가라는 선택이 이후 모든 처리 결과를 좌우한다.
- 비트 심도 논의는 AI 시대에도 유효한 공학적 판단을 보여준다. 사람 귀가 구분하지 못하는 수준의 손실이라면 계산 시간을 12배 아끼는 쪽이 실무적으로 옳은 답일 수 있다.
- 이미지 분할용으로 만들어진 U-Net이 1차원 파형 복원에 그대로 쓰인다는 점은 아키텍처가 데이터 종류가 아니라 문제 구조를 따라간다는 사실을 보여준다. 저해상도에서 고해상도로 정보를 전달하는 문제라는 골격이 같기 때문이다.
- 음악 토큰화에서 어휘 크기와 표현력의 맞바꿈은 자연어 토크나이저 설계와 같은 고민이다. '도 4분음표'를 통째로 한 토큰에 담으면 직관적이지만 음과 길이 조합만큼 어휘가 늘어난다.
- 위치 박자 인코딩은 모델에게 스스로 알아내라고 맡기는 대신 이미 아는 구조를 알려주는 접근이다. 토큰 인덱스가 시간 위치를 담지 못하는 음악에서는 이 정보를 넣어주는 편이 학습 부담을 크게 덜어준다.
자주 묻는 질문
나이퀴스트 정리를 지키지 않으면 어떤 일이 벌어지나요?
표본화 주파수가 다루려는 최고 주파수의 두 배 미만이면 에일리어싱이 발생합니다. 표본화 속도의 절반을 넘는 주파수 성분이 자동으로 더 낮은 주파수로 바뀌어 나타나고, 그 과정에서 원래 정보가 사라집니다. 강의는 표본화 속도를 낮췄을 때 원래 곡선과 전혀 닮지 않은 파형이 나오는 예를 보여줍니다.
저음질 음원을 복원하는 모델은 어떤 구조인가요?
U-Net과 매우 유사한 구조입니다. 스트라이드 2 합성곱으로 이뤄진 다운샘플링 블록 여덟 개가 파형 길이를 줄이면서 필터 수를 두 배씩 늘리고, 병목층을 지나 여덟 개의 업샘플링 블록이 서브픽셀 합성곱으로 해상도를 키웁니다. 두 구간은 잔차 연결로 이어져 있고, 손실 함수는 평균제곱오차를 사용합니다.
음악을 토큰으로 바꿀 때 가장 큰 어려움은 무엇인가요?
음높이 하나만으로는 부족하고 길이, 박자, 조성, 동시에 울리는 여러 음까지 담아야 하는데 이 2차원 정보를 한 줄 시퀀스로 펴야 한다는 점입니다. 음과 길이를 하나로 묶으면 어휘가 지나치게 커지므로, 강의가 소개한 방식은 구분자 토큰으로 동시에 칠 음과 순서대로 칠 음을 나눠 어휘를 음 자체로 줄입니다.
Transformer XL을 쓴 이유는 무엇인가요?
상대 위치 인코딩과 은닉 상태 메모리를 제공하기 때문입니다. 이전 토큰들이 메모리에 남아 있어 예측할 때마다 전체 시퀀스를 다시 계산할 필요 없이 마지막 예측 토큰만 평가하면 되므로 추론이 빠릅니다. 절대 위치만 쓰는 기본 트랜스포머와 달리 음들 사이의 상대적 순서를 다룰 수 있다는 점도 음악에서 중요합니다.
원문과 출처
이 글은 원본 영상의 자막을 바탕으로 한국어 독자를 위해 요약했습니다. 전체 맥락과 최신 정보는 원문에서 확인하세요.
YouTube 원본 영상 보기 ↗