NVIDIA Nemotron 3.5 ASR 릴리스 노트
NVIDIA Nemotron 3.5 ASR 릴리스 노트
개요
NVIDIA Nemotron 3.5 ASR은 6억 개의 파라미터를 가진 스트리밍 자동 음성 인식(ASR) 모델로, 전체 speech-to-text 스택을 자체 호스팅 솔루션으로 대체하도록 설계되었습니다. NVIDIA NeMo 음성 팀에서 개발한 이 모델은 단일 체크포인트로 40개 언어의 전사(transcription)를 지원하며, 저지연성이 중요한 라이브 스트리밍 사용 사례에 최적화되어 있습니다.
저지연성을 위한 캐시 인식 스트리밍(Cache-Aware Streaming)
Nemotron 3.5 ASR은 전통적인 버퍼링 스트리밍에서 발견되는 계산 중복을 제거하기 위해 "캐시 인식 스트리밍"을 활용합니다.
중첩된 청크(Overlapping Chunks)의 문제점
전통적인 비스트리밍 인코더는 라이브 오디오를 중첩된 청크 단위로 입력하여 처리합니다. 이는 시스템이 오디오 윈도우를 전사하고, 윈도우를 앞으로 밀고, 중첩된 섹션을 여러 번 다시 전사해야 함을 의미합니다. 이러한 반복적인 처리는 계산 비용을 증가시키고 전사 과정에 상당한 지연을 초래합니다.
캐시 인식 솔루션
캐시 인식 스트리밍은 LLM 디코딩의 KV cache와 유사하게 작동합니다. 중첩된 부분을 다시 처리하는 대신, 모델은 인코더의 self-attention과 활성화 값(activations)을 캐싱하여 새로운 오디오가 도착할 때 이 상태들을 재사용합니다. 모델은 원시 오디오로부터 이를 다시 계산하는 대신 캐싱된 표현(representations)에 주의를 기울입니다. NVIDIA는 이를 통해 H100 GPU에서 성능을 최대 17배까지 향상시킬 수 있다고 보고했습니다.
런타임 구성 및 언어 지원
지연 시간 대 정확도 트레이드오프
사용자는 모델을 재학습할 필요 없이 런타임에서 어텐션 컨텍스트 크기(청크 크기)를 조정하여 지연 시간과 정확도의 균형을 맞출 수 있습니다. 사용 가능한 청크 크기는 다음과 같습니다:
- 80 milliseconds
- 160 milliseconds
- 320 milliseconds
- 560 milliseconds
- 1초를 약간 상회하는 크기
작은 청크(예: 80ms)는 더 빠르고 단어 단위의 응답을 제공하는 반면, 큰 청크(예: 1s)는 잠재적으로 더 높은 정확도로 전체 문장을 전사합니다.
다국어 기능
모델의 언어 지원은 상용 준비도에 따라 단계별로 구분됩니다:
- Out-of-the-box: 19개 언어가 선택적 자동 감지 기능과 함께 완벽하게 작동합니다.
- Production-level: 13개의 추가 언어가 지원됩니다.
- Adaptation: 8개 언어(예: Thai)는 사전 학습되었으나 본격적인 상용 서비스를 위해 미세 조정(fine-tuning)이 필요합니다.
도메인 특화 정확도를 위한 워드 부스팅(Word Boosting)
워드 부스팅은 제품명, 약품명, 성씨 또는 기술 전문 용어와 같이 학습 데이터에서 흔가히 나타나지 않았을 수 있는 희귀 단어를 전사할 때 정확도를 높이기 위해 디코딩 시점에 사용하는 기술입니다.
워드 부스팅 작동 방식
미세 조정과 달리 워드 부스팅은 가중치 변경이나 재학습을 필요로 하지 않습니다. 이는 후보군을 생성하고 점수를 매기는 데 부스팅 트리(boosting tree)를 사용하여 부스팅 트리를 사용합니다. 모델에 특정 단어 또는 문구의 목록과 그에 해당하는 "강도(strength)" 값을 제공함으로써, 시스템은 오디오가 대상 문구와 유사할 경우 해당 토큰의 점수에 양의 편향(positive bias)을를 더합니다. 이를 통해 모델이 유사한 소리가 나는 더 일반적인 단어 대신 올바른된 특수 용어를 예측할할 확률을 높입니다.
화자 분리(Speaker Diarization) 및 속성 부여
Nemotron 3.5 ASR은 화자 수준의 속성을 부여하기 위해 화자 분리(diarization) 파이프라인에 통합될 수 있습니다. 이는 NeMo 프레임워크를 통해 또는 외부 모델을 통해 달성할 수 있습니다.
주요 기능은 다음과 같습니다:
- Speaker Segmentation: 녹음 파일에서 서로 다른 화자를 구분하여 반환합니다(팟캐스트에 이상적임).
- Embedding Capture: 알려진 화자의 임베딩(embeddings)을 캡처하여(예: 녹음 시작 시 사용자가 이름을 말하는 경우) 해당 신원을 전사 전체에서 해당 화자에게 할당합니다.