본문 바로가기

audio/audio transcription

[논문리뷰] Adversarial Learning for Improved Onsets and Frames Music Transcription (ISMIR19)

논문제목: Adversarial Learning for Improved Onsets and Frames Music Transcription
저자: Jong Wook Kim, Juan Pablo Bello
소속: Music and Audio Research Lab, New York University
발표: ISMIR 2019
논문: https://archives.ismir.net/ismir2019/paper/000081.pdf

 

- 많은 NN모델에서 로스를 구할 때 보통은 각 데이터별로 element-wise하게 차이를 구함. 하지만 사실 이렇게 하면 각 레이블들은 인풋에 대해서 서로 conditionally independent하다고 가정을 하는 것임. 즉 레이블간의 관계는 고려하지 않는 것. 이를 해결하려고 $Y$값들을 마르코프로 연결하는 모델이 나온것(HMM, RNN). 그런데 이런 모델은 1D시그널에서는 잘 작동하지만 frequency-time 같은 2D 데이터에서는 어떻게 사용할 수 있을까?
- 왠지 2D 데이터라면 이미지 분야에서 연구가 많이 되었겠지? 그래서 나온게 NADE나 PixelRNN/PixelCNN같은 것. 이런 모델들을 음악에 적용시켜볼 수는 없을까? polyphonic music transcription문제를 image translation문제로 생각해보고 adversarial loss를 넣어서 한번 풀어보자.
- 지금까지 가장 좋은 성능을 보이는 Onsets and Frames[Hawthorn18]을 베이스모델로 잡고 얼마나 향상되는지 실험해보자.

 

Story

music transcription, 즉 오디오로 되어 있는 음악을 악보나 미디같은 형태로 옮기는 작업은 중요함. 전통적으로는 NMF 같은 방법들이 사용되곤 헀는데 요즘엔 역시 Neural Network이 대세. 이런저런 방법이 나왔지만, 현재까지 소타는 Onsets and Frames [Hawthorne18]임. 하지만 이 모델을 포함해서 그 전까지 방법 모두 inter-label dependency는 고려하지 않았음. 그래서 여기서는 adversarial 방법으로 이를 해결해보려고 함. 그러면 더 정확도가 올라가지 않을까?

 

Method

제안하는 방법은 일반적인 NN모델의 loss $L_{task}$에 conditional GAN loss $L_{cGAN}$을 추가하고 민맥스를 풀어서 최적화를 시키는 것. 사실 pix2pix [Isola17]에서 제안한 세팅방식을 따름. 여기에서 $L_{cGAN}$ 부분이 레이블 간의 dependency를 고려하는 부분.


모델을 통해서 나온 이미지(여기서는 transcription 결과)를 Generator가 생성한 결과로 보고, 이것을 Discriminator가  Ground Truth 레이블이랑 헷갈리게 만드는 방식.



Musically Inspired Adversarial Discriminator

Discriminator를 이미지 분야에서 사용한 것 처럼 fully CNN로 구현하면 2D로 translation invariance하게 됨. 음악에서는 time과 frequency에서 모두 translation invariance라는 건데, 음악에서도 제법 잘 맞는 것 같음. 음악에도 상대적인 것이 중요하니. 그리고 인풋(멜)과 아웃풋(피아노롤같은)의 모양이 다르기 때문에 보다 간단하게 하기 위해서 Discriminator는 $Y$에 대한 함수로 만듬.

TTUR and mixup to Stabilize GAN Training

훈련이 힘들기로 유명한 GAN. 따라서 무언가 더 해야함. TTUR(Two-timescale update rule)[Heusel17]은 G의 학습률을 D보다 좀더 크게 만드는 것. GAN훈련을 성공하는데 중요한 기법 중 하나. mixup[Zhang18]도 사용함. 단순하게 말해서 두 샘플을 interpolation시켜서 새로운 샘플을 만드는 것. 


여기서 감마는 베타분포(알파 파라미터가 사용됨)에서 나오는 데, 이 알파 파라미터에 대한 실험도 진행하였음. 여기서는 실제 레이블과 G가 생성한 레이블을 믹스업해서 사용함. 이렇게 하면 D를 더 힘들게 하기 때문에 결과가 더 잘 나오게 됨. 

Experiment

베이스 모델로 Onsets and Frames 모델[Hawthorne18]을 약간 더 크게 만들어서 사용함. GAN Loss는 non-saturating GAN(BCE)와 least-squares GAN(MSE) 두 가지를 사용. 데이터셋은 MAESTRO[Hawthorne19]를 사용. 

Results

전체적으로 베이스라인보다 성능이 향상되었음. 믹스업을 사용하면서 얻어지는 성능향상도 확인되었는데, 믹스업 파라미터 알파는 0.3일때가 가장 좋았음. 결과 이미지를 확인해도 좀 더 Ground-Truth와 비슷한 결과를 만들어낸다는 것을 알 수 있음. training F1과 validation F1의 차이도 더 적었음. Generalization도 더 잘 된다는 의미.

 

 

 

piano transcription을 할 때 adversarial training를 써보면 어떨까? 그러니 결과가 더 좋아지는걸?

 

 

  • [Isola17] Phillip Isola, Jun-Yan Zhu, Tinghui Zhou, and Alexei A Efros. Image-to-image translation with con- ditional adversarial networks. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR), pages 1125–1134, 2017.
  • [Heusel17] Martin Heusel, Hubert Ramsauer, Thomas Unterthiner, Bernhard Nessler, and Sepp Hochreiter. Gans trained by a two time-scale update rule converge to a local nash equilibrium. In Advances in Neural Information Processing Systems, pages 6626–6637, 2017
  • [Hawthorne18] Curtis Hawthorne, Erich Elsen, Jialin Song, Adam Roberts, Ian Simon, Colin Raffel, Jesse Engel, Sageev Oore, Douglas Eck. Onsets and Frames: Dual-Objective Piano Transcription. ISMIR 2018. [논문리뷰]
  • [Zhang18] Hongyi Zhang, Moustapha Cisse, Yann N. Dauphin, and David Lopez-Paz. mixup: Beyond empirical risk minimization. In Proceedings of the International Con- ference on Learning Representations (ICLR), 2018.
  • [Hawthorne19] C.Hawthorne, A.Stasyuk, A.Roberts, I.Simon, C.-Z.A.Huang, S.Dieleman, E.Elsen, J.Engel, D.Eck. Enabling factorized piano music modeling and generation with the maestro dataset. ICLR 2019. [논문리뷰]