Speech AI/음성 인식

[음성인식] 화자분리(Speaker Diarization)

1code 2021. 11. 22. 20:00
728x90

화자분리(Speaker Diarization)

  • 대화, 상담, 회의 등과 같은 2명 이상의 화자가 발언하는 음성 샘플로부터 화자가 누구인지, 언제 어떤 말을 했는지 확인하는 기술 "Who spoke when?"
  • 아래 예시 처럼 하나의 음성 샘플에서 A화자와 B화자로 분리해 주는 기술이다.

화자 분리 예시

  • 접근 방법
    • Bottom-Up Approach : 클러스터 수를 연속적으로 병합하여 줄여 각 화자에 대응하는 하나의 클러스터 혹은 모델이 남을 때 까지 반복 학습하는 것을 목표
    • Top-Down Approach : 단일 화자 모델로 전체 음성 샘플을 모델링 한 후 전체 화자 수가 계산될 때까지 새로운 모델을 연속적으로 추가하는 방식. Bottom-Up 방식에 비하여 성능은 떨어지지만, 계싼 효율이 좋고 클러스터 정제를 통해 성능 향상이 가능
    • Speaker Diarization 구조
  • Data Pre-processing(데이터 전처리) : 잡음 제거, MFCC추출, VAD(SAD) 검출 ...
  • Cluster Initialization : Bottom-Up or Top-Down
  • Merge/Split & Cluster Distance : 데이터 정제 작업 수행
  • Stopping Criterion : 정지 기준(최적의 클러스터 수 도달)

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

[참고 논문] A. Xavier, et al. "Speaker diarization: A review of recent research." IEEE Transactions on Audio, Speech, and Language Processing 20.2 (2012): 356-370.
728x90