Skip to main content
QUICK REVIEW

[논문 리뷰] Onssen: an open-source speech separation and enhancement library

Zhaoheng Ni, Michael Mandel|arXiv (Cornell University)|2019. 11. 03.
Speech and Audio Processing참고 문헌 18인용 수 5
한 줄 요약

Onssen은 딥러닝 기반 음성 분리 및 향상에 사용할 수 있는 오픈소스 파이토치 기반 라이브러리로, 연구자들이 최소한의 코드로 커스텀 데이터셋에서 T-F 마스크 기반 모델(예: 딥 클러스터링, 카이머라, 카이머라++)을 훈련하고 벤치마킹할 수 있도록 한다. 이는 기존 논문 결과와 동일한 최고 성능(SDR 점수: 예, wsj0-2mix에서 11.0)을 달성하며, 통합된 훈련 워크플로우와 새로운 모델 및 데이터셋에 대한 확장성을 제공한다.

ABSTRACT

Speech separation is an essential task for multi-talker speech recognition. Recently many deep learning approaches are proposed and have been constantly refreshing the state-of-the-art performances. The lack of algorithm implementations limits researchers to use the same dataset for comparison. Building a generic platform can benefit researchers by easily implementing novel separation algorithms and comparing them with the existing ones on customized datasets. We introduce "onssen": an open-source speech separation and enhancement library. onssen is a library mainly for deep learning separation and enhancement algorithms. It uses LibRosa and NumPy libraries for the feature extraction and PyTorch as the back-end for model training. onssen supports most of the Time-Frequency mask-based separation algorithms (e.g. deep clustering, chimera net, chimera++, and so on) and also supports customized datasets. In this paper, we describe the functionality of modules in onssen and show the algorithms implemented by onssen achieve the same performances as reported in the original papers.

연구 동기 및 목표

  • 딥러닝 기반 음성 분리 알고리즘의 접근성 있고 재사용 가능한 구현이 부족하여 복제 가능성과 다양한 방법 간 비교가 어렵다는 문제를 해결하기 위해.
  • 연구자들이 핵심 훈련 파이프라인을 다시 작성하지 않고도 다양한 데이터셋에서 새로운 분리 모델을 쉽게 구현, 훈련, 평가할 수 있도록 통합적이고 모듈러한 프레임워크를 제공하기 위해.
  • 마스크 기반 및 엔드 투 엔드 음성 분리 접근 방식을 모두 지원하여, 딥 클러스터링, 카이머라, 카이머라++와 같은 모델에 퍼미터레이션 인variant 트레이닝(PIT)을 포함한다.
  • 모델과 데이터셋 간 동일한 훈련 및 평가 프로토콜을 유지하여 일관된 벤치마킹을 가능하게 하기 위해.
  • 표준화된 인터페이스를 통해 커뮤니티 기여를 장려함으로써 새로운 모델 아키텍처, 특징 추출기, 데이터셋 로더를 쉽게 확장할 수 있도록 하기 위해.

제안 방법

  • Onssen은 데이터, 모델, 손실, 트레이너 모듈을 전용으로 분리한 모듈러 아키텍처를 사용하며, 모든 설정은 JSON 구성 파일을 통해 이루어져 모델 정의와 훈련 로직을 분리한다.
  • 음성 특징 추출에는 리브로사와 넘파이를 활용하고, 모델 훈련 및 최적화에는 파이토치를 딥러닝 백엔드로 사용한다.
  • 기본적으로 퍼미터레이션 인variant 트레이닝(PIT)을 구현하여, 모든 가능한 화자 순서 조합에 대해 손실를 계산하고 최소 손실을 가진 조합을 선택함으로써 레이블 순서 뒤바꿈 문제를 해결한다.
  • 다양한 손실 함수를 지원하며, 특히 위상 인식된 음성 복원에 핵심적인 역할을 하는 L1 노름을 사용한 크기 스펙트럼 근사화(MSA)와 잘라낸 위상 민감한 근사화(tPSA)가 포함된다.
  • 카이머라 및 카이머라++ 손실은 임베딩 학습을 위한 딥 클러스터링 손실과 T-F 마스크 예측을 위한 마스크 추론 손실을 조합하며, 클러스터링 손실에 대해 기본 가중치 α=0.975를 사용한다.
  • 훈련 파이프라인은 JSON을 통해 완전히 구성 가능하여, 핵심 코드를 수정하지 않고도 사용자 정의 모델, 데이터셋, 손실 함수를 쉽게 통합할 수 있다.

실험 결과

연구 질문

  • RQ1다양한 데이터셋에서 다양한 딥러닝 기반 음성 분리 모델의 훈련과 벤치마킹을 단순화할 수 있는 통합적이고 오픈소스 기반의 라이브러리가 구축될 수 있는가?
  • RQ2Onssen이 딥 클러스터링, 카이머라, 카이머라++와 같은 주요 논문 모델의 성능을 wsj0-2mix와 같은 표준 벤치마크에서 최고 성능으로 재현할 수 있는가?
  • RQ3모듈러하고 재사용 가능한 프레임워크 내에서 퍼미터레이션 인variant 트레이닝(PIT)과 위상 인식 손실 함수(tPSA 등)의 통합은 얼마나 효과적인가?
  • RQ4라이브러리의 모듈러 설계는 새로운 모델(예: TasNet, conv-TasNet, DPRNN)과 데이터셋을 최소한의 구현 오버헤드로 효율적으로 확장할 수 있는가?
  • RQ5향후 다중 GPU 및 분산 훈련을 지원할 때, 라이브러리의 훈련 효율성과 확장성은 어떻게 평가될 수 있는가?

주요 결과

  • Onssen은 주요 베이스라인 모델의 보고된 SDR 점수를 성공적으로 재현하였다: wsj0-2mix 데이터셋에서 딥 클러스터링은 7.6 dB, uPIT-LSTM는 10.0 dB, 카이머라 10.5 dB, 카이머라++는 11.0 dB이다.
  • 원본 구현과 유사한 성능을 달성하였으며, 카이머라++는 11.0 dB SDR를 기록하여 원 논문에서 보고된 10.9 dB와 정확히 일치한다.
  • MSA 손실을 사용한 uPIT-LSTM 모델의 구현은 정확히 문헌에서 보고된 성능인 10.0 dB SDR를 달성하였다.
  • tPSA 손실 함수는 정확히 구현되었으며, 위상 인식 분리에서 향상된 성능 기여를 입증하였고, 카이머라++의 높은 SDR로 이를 확인할 수 있었다.
  • 모듈러 설계 덕분에 새로운 모델과 데이터셋을 훈련 루프나 특징 추출 파이프라인을 다시 구현하지 않고도 원활하게 통합할 수 있었다.
  • 향후 확장성은 지원되며, 예정된 엔드 투 엔드 모델(예: conv-TasNet, DPRNN) 및 다중 GPU 시스템에서의 분산 훈련 지원이 포함된다.

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

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

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

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