프레임 수준 악기 인식을 위한 멀티태스크 학습
본 논문은 합성 멀티트랙 음악 데이터셋(MuseScore)을 구축하고, 피치와 악기 정보를 동시에 예측하도록 설계된 U‑Net 기반 멀티태스크 네트워크를 제안한다. 피치 롤, 악기 롤, 멀티트랙 피아노롤을 각각 BCE 손실로 학습시켜 상호 보완적인 정보를 활용함으로써 기존 단일태스크 모델보다 프레임 수준 악기 인식 성능이 크게 향상됨을 실험을 통해 입증한다. 또한 합성 데이터만으로도 실제 음악에 대한 멀티피치 스트리밍이 가능한 점을 시연한다.
저자: Yun-Ning Hung, Yi-An Chen, Yi-Hsuan Yang
음악 정보 검색(MIR) 분야에서 프레임 수준의 피치와 악기 라벨을 동시에 얻는 일은 악보 자동 생성, 음악 검색, 리믹스 등 다양한 응용에 필수적이다. 그러나 기존 데이터셋은 라벨이 클립 수준에 머물거나, 장르와 곡 수가 제한적이어서 딥러닝 기반 모델의 일반화에 한계가 있었다. 이를 극복하고자 저자들은 두 가지 주요 기여를 제시한다.
첫 번째 기여는 대규모 합성 데이터셋 ‘MuseScore’이다. MuseScore 커뮤니티에서 공개된 MIDI와 해당 합성 오디오를 자동 크롤링해 344,166개의 곡을 수집하였다. 각 곡은 평균 2분 길이이며, 128개의 MIDI 악기 클래스를 그대로 유지한다. 오디오와 MIDI는 Raffel의 DTW 정렬 알고리즘을 적용해 정확히 동기화했으며, Pypianoroll 라이브러리를 이용해 (주파수 × 시간 × 악기) 형태의 멀티트랙 피아노롤, 피치 롤, 악기 롤을 생성한다. 데이터는 합성 음원이지만 다양한 장르와 연주 스타일을 포함해 실제 음악에 대한 일반화 가능성을 확보한다. 저작권 문제로 원본 데이터를 배포하지는 않지만, 수집·전처리 코드를 공개해 재현성을 보장한다.
두 번째 기여는 피치와 악기 정보를 동시에 학습하는 멀티태스크 네트워크이다. 입력은 16 kHz 샘플링, 512‑샘플 홉, 88개의 주파수 빈을 갖는 CQT 스펙트로그램이다. 네트워크는 U‑Net 구조를 기반으로 하며, 인코더와 디코더 각각에 4개의 Residual 블록을 배치한다. 각 블록은 3개의 Conv‑BN‑LeakyReLU 레이어로 구성돼 깊은 특성 표현을 학습한다. 스킵 연결을 통해 저수준 시간‑주파수 정보를 보존함으로써 희소한 바이너리 피아노롤을 효과적으로 복원한다. 모델은 세 개의 출력(피아노롤, 피치 롤, 악기 롤)을 동시에 예측하고, 각각에 대해 BCE 손실 Lᵣ, Lₚ, Lᵢ를 계산한다. 세 손실은 동일 스케일이 되도록 가중치를 조정한 뒤 가중합해 전체 손실을 만든다. 이렇게 하면 피치와 악기 사이의 상호 의존성을 공유된 파라미터가 학습하도록 강제한다.
학습은 SGD(learning rate = 0.005)로 진행했으며, 10 초 길이의 CQT 세그먼트를 미니배치로 사용한다. 실험은 두 단계로 나뉜다. 첫 번째 실험에서는 MuseScore 데이터셋 내에서 9개의 대표 악기(피아노, 어쿠스틱·일렉기타, 트럼펫, 색소폰, 바이올린, 첼로, 플루트 등)를 대상으로 멀티태스크 모델과 각각 Lᵣ, Lₚ, Lᵢ만 사용한 단일태스크 모델를 비교했다. 결과는 악기 인식 F1‑score에서 멀티태스크가 0.947로 가장 높았으며, 피치 정확도(0.803)와 피아노롤 정확도(0.647)에서도 단일태스크를 크게 앞섰다. 이는 피치와 악기 정보가 서로 보완적으로 작용함을 증명한다.
두 번째 실험에서는 기존 최첨단 프레임 수준 악기 인식 모델 3종(
원본 논문
고화질 논문을 불러오는 중입니다...
댓글 및 학술 토론
Loading comments...
의견 남기기