Audio Style Transfer

castlechoi·2023년 7월 24일
0

Projects

목록 보기
1/2

연구기간


09 / 2022 ~ 11 / 2022

연구 목적


Audio style transfer의 성능개선

악기의 음색을 변환해주는 Instrument Style Transfer의 구현

Audio Style Transfer의 학습 메커니즘


Image Style Transfer와 유사한 방법으로 모델을 훈련

  1. Style과 Content 데이터를 STFT를 활용하여 Spectrogram을 생성
  2. Content 데이터를 Style 데이터의 gram matrix와의 loss를 Style model의 각 layer의 loss 총합을 최소화하는 방향으로 학습
  3. 학습된 Spectrogram을 다시 waveform으로 변환하여 출력

데이터


  1. Audio Style Transfer에서 사용된 Style.wav / Content.wav
  2. 직접 녹음한 일렉기타 Clean tone 오디오 / 직접 녹음한 일렉기타 Overdrive tone 오디오
  3. Youtube에서 가져온 La campanella 바이올린 오디오 / Youtube에서 가져온 La campanella 피아노 오디오

실험


  1. Conv1d → Conv2d로 변경시도
    • 대체적으로 Conv1d가 성능 우세
  2. Model의 Layer 깊이와 Weight의 조정
    • 변경 이전과 출력물에 큰 차이 없었음
  3. Image Style Transfer와 유사하게 Loss를 Content Loss + Style Loss로 변경
    • 변경 이전과 출력물에 큰 차이 없었음
  4. 데이터 전처리 변경
    1. Style / Content 데이터의 진폭 변경
      • 오히려 Noise가 증가하였음
    2. Mu-Law Encoding
      • 오히려 Noise가 증가하였음
    3. Resampling
      • 변경 이전과 출력물에 큰 차이 없었음
  5. 입력 데이터의 변경

시도해보려 했던 것


  1. 코랩 환경에서 실험을 진행하였기 때문에 사용가능한 파라미터의 크기가 제한적이어서 다른 환경에서 더 Deep한 모델을 구성하여 실험해보기
  2. Content와 Style 두 데이터의 Tempo를 같게 만들어 학습 시켜보기

연구 결론


  • 사람의 귀는 눈에 비해서 작은 차이에도 쉽게 불편함을 느껴 그 차이점을 빠르게 인지하여 오디오 데이터에 대해서 Style transfer를 적용하기 위해선 이미지보다 더 정교하게 이를 변형할 필요가 있음
  • 사람이 보통 2개의 오디오를 같이 들으면 이 오디오가 섞인 것으로 인지하는 것이 아니라 2개의 다른 오디오가 동시에 재생되는 형태로 인지하여 Audio Style Transfer를 퀄리티가 높게 구현하기 위해서는 더 정교한 작업이 필요해보임

연구하면서 참고 했던 References


회고


  1. 직접 녹음한 연주를 데이터로 사용하기에는 전문가가 녹음한 것이 아니라 데이터 자체에 노이즈가 있을 수 있고 같은 멜로디를 연주했다고 하더라도 전공자만큼 일정한 음과 박자로 데이터를 만들기 어려워 입력 데이터로 사용하기에 한계점이 많다고 생각한다
  2. Youtube에 있는 같은 곡에 대해 다른 악기가 연주한 곡을 데이터로 사용하려면 두 오디오 데이터에 대해서 각 음이 나오는 시점에 대한 Alignment가 필수적으로 적용되어야 된다고 생각한다
  3. Spectrogram을 Image처럼 2D convolution을 적용하려면 Spectrogram에 더 알맞는 kernel size와 stride를 적용해야 의미가 있을 것 같다
  4. Style/Content의 데이터를 직접적으로 변경하기 보단 Style/Content 데이터의 진폭을 모델을 통해서 하나의 feature로 추출하여 사용하는 것이 Style transfer의 성능을 해치지 않으면서 퀄리티를 높일 수 있을 것 같다
  5. Resampling을 통한 Sampling rate를 작게 하면 anti-aliasing 같은 문제가 발생할 수 있을 것 같다
  6. 사람의 귀는 눈에 비해서 더 민감하여 작은 차이점도 쉽게 알아챌 수 있어 더 정교한 모델이 필요하고 일반적으로 파라미터의 개수가 많은 모델이 더 좋은 성능을 낼 가능성이 높아 큰 모델에서의 훈련이 필요하다고 생각한다
profile
내가 보려고 만든 논문 정리 블로그

1개의 댓글

comment-user-thumbnail
2023년 7월 25일

정리가 잘 된 글이네요. 도움이 됐습니다.

답글 달기