Skip to main content
QUICK REVIEW

[논문 리뷰] TorchAudio: Building Blocks for Audio and Speech Processing

Yao-Yuan Yang, Moto Hira|arXiv (Cornell University)|2021. 10. 28.
Music and Audio Processing인용 수 14
한 줄 요약

TorchAudio는 GPU 가속, 미분 가능, 프로덕션 준비 완료된 오디오 및 음성 처리를 위한 PyTorch 기반 오픈소스 툴킷입니다. 텍스트 음성 변환 및 음성 분리와 같은 핵심 작업에서 검증된 성능을 제공하며, 속도와 품질 면에서 최신 기술 구현과 동등하거나 이를 초월하는 엔드투엔드 머신러닝 워크플로우를 가능하게 합니다.

ABSTRACT

This document describes version 0.10 of TorchAudio: building blocks for machine learning applications in the audio and speech processing domain. The objective of TorchAudio is to accelerate the development and deployment of machine learning applications for researchers and engineers by providing off-the-shelf building blocks. The building blocks are designed to be GPU-compatible, automatically differentiable, and production-ready. TorchAudio can be easily installed from Python Package Index repository and the source code is publicly available under a BSD-2-Clause License (as of September 2021) at https://github.com/pytorch/audio. In this document, we provide an overview of the design principles, functionalities, and benchmarks of TorchAudio. We also benchmark our implementation of several audio and speech operations and models. We verify through the benchmarks that our implementations of various operations and models are valid and perform similarly to other publicly available implementations.

연구 동기 및 목표

  • PyTorch 생태계 내에서 오디오 및 음성 머신러닝 애플리케이션의 개발 및 구현을 가속화하기 위해.
  • 엔드투엔드 훈련을 위한 GPU 호환성과 자동 미분을 갖춘 통합된 프로덕션 준비 완료 툴킷을 제공하기 위해.
  • 핵심 연산의 표준화된 고품질 구현을 제공하여 고수준 오디오/음성 툴킷의 기초 의존성으로 기능하기 위해.
  • PyTorch 외부 종속성 최소화를 통해 광범위한 호환성과 유지보수성을 확보하기 위해.
  • 강력한 성능 기준 테스트를 갖춘 안정적이고 커뮤니티 주도의 오픈소스 기반을 마련하기 위해.

제안 방법

  • PyTorch 호환, GPU 가속 기능을 갖춘 오디오 I/O, 스펙트로그램 계산 및 데이터셋 로딩을 구현하기 위해.
  • 모든 핵심 연산이 PyTorch의 autograd 시스템을 활용해 자동으로 미분 가능하도록 설계하기 위해.
  • 핵심 구성 요소를 TorchScript로 컴iles하여 프로덕션 준비 및 모바일 및 임베디드 플랫폼 배포 보장하기 위해.
  • 런타임 성능 및 출력 품질 면에서 기준 구현 대비 핵심 연산 및 모델(예: WaveRNN, Tacotron2, Conv-TasNet)의 벤치마킹 수행하기 위해.
  • 표준화된 데이터셋(LJSpeech, Libri2Mix)과 메트릭(MCD, Si-SDRi, MOS)을 사용해 객관적 평가 수행하기 위해.
  • 다중 GPU에서 확장 가능한 모델 훈련을 위해 DistributedDataParallel를 활용하기 위해.
Fig. 1 : The mean and standard error of the running time over five repeated experiments. We compare over five different audio processing functions using the implementations from TorchAudio (including just-in-time compiled (jitted) and GPU accelerated versions) and librosa .
Fig. 1 : The mean and standard error of the running time over five repeated experiments. We compare over five different audio processing functions using the implementations from TorchAudio (including just-in-time compiled (jitted) and GPU accelerated versions) and librosa .

실험 결과

연구 질문

  • RQ1PyTorch 기반 툴킷이 기존 구현과 동등하거나 이를 초월하는 GPU 호환, 미분 가능, 프로덕션 준비 완료 오디오 처리 빌딩 블록을 제공할 수 있는가?
  • RQ2TorchAudio의 오디오 연산 실행 및 모델 추론 성능은 런타임 속도와 출력 품질 면에서 기준 구현과 비교해 어떻게 되는가?
  • RQ3TorchAudio가 PyTorch 생태계 내 고수준 오디오/음성 툴킷의 기초 의존성으로 얼마나 효과적으로 기능할 수 있는가?
  • RQ4TorchAudio가 Tacotron2 및 WaveRNN과 같은 엔드투엔드 모델을 어떻게 실현하여 공개된 모델과 동등하거나 우수한 성능을 달성하는가?
  • RQ5커뮤니티 수용 및 기여 지표로 나타난 실세계 개발에서 TorchAudio의 확장성과 유지보수성은 어느 정도인가?

주요 결과

  • TorchAudio의 오디오 연산 구현은 공개 기준 구현의 런타임 성능을 도달하거나 초월합니다.
  • Tacotron2의 구현은 멜 체프스트랄 왜곡(MCD) 2.305를 기록했으며, Nvidia의 2.294와 근접한 출력 품질을 보여줍니다.
  • WaveRNN의 구현은 fatchord 및 Nvidia 모델과 유사한 주관적 품질을 달성했으며, 평균 의견 점수(MOS)로 인간의 말과 높은 청각 유사성을 보여줍니다.
  • Libri2Mix에서의 Conv-TasNet 구현은 Asteroid 기준보다 뛰어나 15.3 dB Si-SDRi 및 15.6 dB SDRi를 기록했으며, 각각 14.7 dB 및 15.1 dB를 기록한 기준보다 뛰어납니다.
  • TorchAudio의 DistributedDataParallel 사용은 fatchord의 구현보다 더 빠른 훈련을 가능하게 하여 현대 PyTorch 훈련 패턴의 성능 이점을 입증합니다.
  • 2021년 9월 기준, TorchAudio를 사용하는 공개 레포지터리가 5,420개가 넘고, 350개 이상의 포크, 1,250개 이상의 머지된 풀 리퀘스트를 기록하여 강력한 커뮤니티 수용과 활발한 개발을 보여줍니다.

더 나은 연구,지금 바로 시작하세요

논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.