VAE Tutorial 4
in VAE on Deep-Learning
- VAE Tutorial 목차
VAE Tutorial 4: MusicVAE
- 논문 저자: Adam Roberts (Google Brain)
- 논문 링크: https://arxiv.org/pdf/1803.05428.pdf
- 참고한 자료:
이 논문을 Tutorial에 넣은 이유는 다음과 같은 이유에서입니다.
- VAE의 발전과 흐름에 대해서 잘 설명한다.
- 딥러닝에 대한 좋은 방향을 제시한다고 생각한다.
- 이미 웹에 application이 프로토타입으로 구현되어 올라와있다.
- 논문이 예쁘고 읽기 좋게 되어있다.
다음 유투브 링크는 MusicVAE에 대해서 설명해주는 동영상입니다. 안봤다면 한 번 보는 것을 추천합니다. 한 문장으로 요약하자면 “음악데이터에 대해 VAE를 학습한 다음에 학습한 latent code를 가지고 이러저러한 음악 창작 도구로 사용할 수 있다”라고 볼 수 있습니다. 밑의 화면을 클릭 해주세요.
1. Introduction
MusicVAE가 하고 싶은 것은 Music generation입니다. 문장을 만들어내는 일과는 다르게 음악을 만들어내는 일은 훨씬 긴 sequence를 generation 하는 것입니다. 1초의 음원당 보통 16000개의 sample을 가지고 있으니까요. 논문에서는 “very long sequence”라고 표현합니다. 이 문제를 해결하기 위해 MusicVAE는 hierarchical recurrent decoder를 제안합니다. 이 모델 구조만 보자면 다음 그림과 같습니다. Likelihood 쪽이 conductor와 decoder로 hierarchical 하게 구성되어있는 것을 볼 수 있습니다.
이 모델 구조를 가지고 음악 데이터에 대해서 학습하고 나면 이미지와 문장에서 했듯이 latent vector interpolation을 할 수 있습니다. 제일 왼쪽에 있는 음원에 대한 latent vector를 구하고 가장 오른쪽의 있는 음원에 대한 latent vector를 구한 다음에 linear interpolation한 것입니다. 이제 MusicVAE에 대해 자세히 살펴보겠습니다.