
【Nishika 논문 요약 제20회】ReDimNet2: 공개 데이터로 임베딩 성능을 비교해 보았다
요약
화자 임베딩 모델인 ReDimNet의 최신 버전인 ReDimNet2 논문을 소개하고 공개 데이터셋을 통해 성능을 비교 분석합니다. 시간 방향 풀링(Time-direction Pooling)을 도입하여 계산 효율성을 높이면서도 임베딩 성능을 개선했습니다.
핵심 포인트
- ReDimNet2는 시간 방향 풀링을 통해 채널 스케일링 효율을 높임
- 계산량 대비 특징 맵 크기를 줄여 효율적인 구조 설계
- VoxCeleb2 등 공개 데이터셋 실험 결과 ReDimNet1 대비 전반적 성능 향상
- 모델 크기(B0~B6)에 따른 EER(Equal Error Rate) 성능 비교 데이터 제공
안녕하세요, AI 엔지니어 야마구치입니다.
더운 날이 계속되고 있습니다만, 화자 임베딩 모델 (Speaker Embedding Model)로 사용되는 ReDimNet의 신작이 2개월 전쯤 나와서 테스트해 보았습니다.
논문 소개 → 공개 데이터셋으로 임베딩해 본 결과, 의 흐름으로 말씀드리겠습니다.
논문📖
- 공개일: 2026/3/12
- Organization: Palabra AI, London, United Kingdom
- Authors: Ivan Yakovlev, Anton Okhotnikov
이것은 2024년에 나온 ReDimNet의 진화 버전 같습니다. 과연 어떻게 다를까요.
아키텍처
위가 ReDimNet1 (2024년 과거작), 아래가 최신작인 ReDimNet2 입니다.

포인트
-
공통: 1D↔2D를 오가며 처리하는 구조 (이름의 유래대로 Reshape Dimensions Network)
-
차이점
-
1D 측 처리 경로에 **시간 방향 풀링 (Time-direction Pooling)**을 넣었다 (논문 제목인 "Time-Pooled Dimension Reshaping") - 이를 통해 계산량을 비례해서 늘리지 않고도 채널 수 (Channel number)를 크게 스케일링할 수 있게 되었으며, 결과적으로 block2d에 들어가는 특징 맵 (Feature map)의 F(주파수 축: Frequency)·T(시간 축: Time)가 작아졌다.
-
1D 측 처리 경로에
학습 데이터는 VoxCeleb2를 사용하고 있으며, 훈련 파이프라인은 Wespeaker의 것을 사용하는 듯합니다. 또한 공개된 가중치(Weights) 중에는 VoxBlink2 + VoxCeleb2 + CN-Celeb2로 학습한 것도 있어, 후술할 실험에서는 그것을 사용하고 있습니다.
실험 결과
논문에서 빌려왔습니다.
기본적인 모델 형태는 동일하며, 세부 구조(파라미터 수, 채널 수 C)를 변화시킨 EER (Equal Error Rate)의 집계 결과는 다음과 같습니다.
| Model | Params | GMACs | Vox1-O | Vox1-E | Vox1-H |
|---|---|---|---|---|---|
| ReDimNet-B0 | 1.0M | 0.43 | 1.16 | 1.25 | 2.20 |
| ReDimNet2-B0 | 1.1M | 0.33 | 1.04 | 1.16 | 1.97 |
| ReDimNet-B1 | 2.2M | 0.54 | 0.85 | 0.97 | 1.73 |
| ReDimNet2-B1 | 2.1M | 0.56 | 0.78 | 0.96 | 1.72 |
| ReDimNet-B2 | 4.7M | 0.90 | 0.57 | 0.76 | 1.32 |
| ReDimNet2-B2 | 3.6M | 0.95 | 0.57 | 0.76 | 1.41 |
| ... | 0.66 | 1.22 | |||
| ReDimNet-B4 | 6.3M | 4.80 | 0.51 | 0.68 | 1.26 |
| ReDimNet2-B4 | 6.6M | 4.62 | 0.37 | 0.58 | 1.07 |
| ReDimNet-B5 | 9.2M | 9.87 | 0.43 | 0.61 | 1.08 |
| ReDimNet2-B5 | 8.9M | 9.62 | 0.33 | 0.56 | 1.07 |
| ReDimNet-B6 | 15.0M | 20.27 | 0.40 | 0.55 | 1.05 |
| ReDimNet2-B6 | 12.3M | 13.05 | 0.29 | 0.52 | 0.99 |
ReDimNet1과 비교했을 때, (ReDimNet 고유의 구분 내에서) 거의 모든 구분에서 성능이 향상된 것으로 보입니다 (B2만은 Vox1-H가 1.32 → 1.41로 악화, Vox1-O/E는 동일).

또한, 동일한 구분끼리 (B0끼리, B1끼리...) ReDimNet1과 비교하면, 성능 향상과 동시에 파라미터 수나 계산량 중 하나가 억제된 구분이 많으며, B5 / B6에서는 둘 다 감소했습니다 (B0/B3/B4는 파라미터 수가 미증, B1/B2는 GMACs가 미증). 참고로 RTF나 실측 속도에 대해서는 논문에서 언급되지 않은 것 같습니다.
- Params (파라미터 수): 모델의 메모리 크기에 직결
- GMACs (Giga Multiply-Accumulate operations): 이론상의 계산량. thop 라이브러리로 2초 입력에 대해 측정
테스트해 보았다🥊
그래서 ReDimNet1과 ReDimNet2의 차이점을 비교해 보았습니다. (매개변수 수가 비슷한 두 모델을 비교했습니다)
실험 조건
- 데이터: AMI Meeting Corpus의 sdm/test (회의실에 놓인 단일 원거리 마이크 = 실제 회의 녹음과 유사한 어려운 조건). 5초 이상의 발화에서 화자당 최대 80건을 추출하여, 1,199개의 발화 / 16개 회의 / 16명의 화자 / 150분 - 비교 모델 (둘 다 torch.hub로 공개된 가중치 및 출력은 192차원)
- ReDimNet1-M:
IDRnD/ReDimNet의M/ft_mix/vb2+vox2+cnc(실측 4.81M params) - ReDimNet2-B3:PalabraAI/redimnet2의b3/lm/vb2+vox2+cnc2_v0(실측 4.51M params)
※ 매개변수 수는 위의 논문 표 값(B3는 4.1M)과는 일치하지 않습니다. 표는 논문 중의 구성 값이고, 여기는 실제로 로드한 공개 가중치(학습 데이터 및 구성이 다름)에서의 실측값입니다. 이후 '매개변수 수가 비슷한 두 모델'이라고 언급하는 것은 실측값을 기준으로 합니다.
- ReDimNet1-M:
- 각 발화의 시작 1 / 2 / 3 / 5초를 잘라 임베딩하므로, 초수를 바꿔도 소재는 같습니다.
- 클러스터링은 회의별로 응집형 클러스터링(코사인 거리・average linkage)을 사용했으며, 클러스터 수는 실제 화자 수를 부여했습니다.
먼저 segment의 길이와 EER, 그리고 클러스터링했을 때의 purity에 대해

segment 길이에 따라 다르지만, 기본적으로 ReDimNet2가 더 나은 것 같습니다. EER는 어떤 초수・어떤 회의에서도 ReDimNet2가 낮았습니다. 반면 purity는 5초일 경우 ES2004a-d 등에서 역전되는 경우가 있으며, 이는 임베딩의 질보다는 응집형 클러스터링의 잘라내는 방식에 좌우되는 부분이 큰 것 같습니다.
다음으로 클러스터링을 통해 화자가 깨끗하게 분리되었는지 (t-SNE 사용)

극적인 변화는 아니지만, 이 3초 조건에서는 모든 회의에서 ReDimNet2가 동등하거나 더 높은 purity를 보였습니다. IS1009a-d(0.890 → 0.972)는 성능 차이를 본 목적에도 이해하기 쉬울 것 같습니다. 반대로 EN2002a-d는 두 모델 모두 중앙에 어떤 화자에게도 치우치지 않은 덩어리가 남아 있어, 원거리 마이크로 발화가 겹치는 구간은 임베딩 모델의 개선만으로는 해결되지 않는다는 것을 알 수 있습니다.
마지막으로 EER. 동일 회의 내 segment 쌍(cos 유사도 행렬의 상삼각 성분)을 가져와 '동일 화자인지' '다른 화자인지'의 이진 분류 태스크를 얼마나 수행할 수 있는지를 봅니다.

이 부분은 일관되게 ReDimNet2가 우세했습니다 (전체 16개 회의에서 7.9% → 7.3%, 회의별로도 4개 그룹 모두에서 개선).
속도 측정
참고로 속도 측정에 대해서도, ReDimNet2가 더 빨랐습니다. ⇩
측정 조건
- 환경: Apple Silicon MacBook Air (CPU만・GPU 미사용), 스레드 수는 1로 고정
- 입력: AMI sdm test의 실제 음성에서 잘라낸 3.0초(48,000 샘플)의 고정 길이. 길이를 맞추었기 때문에 연산량은 음성의 내용에 의존하지 않습니다.
- 절차: 60개를 하나씩 임베딩하고, 5개의 워밍업을 제외한 소요 시간의 중앙값
- 구현: ReDimNet1-M / ReDimNet2-B3는 둘 다 torch.hub의 PyTorch 모델 (구현 조건을 맞추기 위해). 참고로 첨부된 TitaNet-large(NVIDIA NeMo의 화자 임베딩 모델)만 ONNX Runtime
- 결과: TitaNet-large 130ms / ReDimNet1-M 271ms / ReDimNet2-B3 142ms (3초 음성당, 실시간 대비 23.0x / 11.1x / 21.2x) - 참고: ReDimNet2-B3는 ONNX로 내보내기도 가능했습니다(opset 17・19.4MB・PyTorch 출력과 코사인 일치 1.000000). ONNX 실행에서도 128ms 전후였으며, 속도 차이는 런타임이 아닌 아키텍처에서 기인한다고 볼 수 있습니다.
끝으로
Nishika 엔지니어 팀에서는 매주 'AI 잡담 연구 정례'를 비롯해 매일 궁금한 뉴스나 논문을 가볍게 골라 이야기 나눕니다.
단순히 이야기하는 것에 그치지 않고, Nishika의 유래인 우리 '자신들(니시카)에게만' 할 수 있는 일은 무엇인지, 사용자에게 제공할 수 있는 가치는 무엇인지 고민하며 AI의 미래, 엔지니어링의 미래를 생각하고 있습니다.
이러한 미래를 함께 고민하고 만들어 나갈 동료를 모집하고 있습니다. 관심이 있으신 분은 꼭 연락해 주시기 바랍니다.
Discussion

AI 자동 생성 콘텐츠
본 콘텐츠는 Zenn AI의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기