기술 블로그

[음성인식] 3. RT-STT (Real Time Speech-to-Text)

daglo 팀 · 2022년 7월 19일

[음성인식] 3. RT-STT (Real Time Speech-to-Text)

1. 음성 인식 방식

음성을 인식하는 방식은 크게 ‘배치 음성 인식’과 ‘스트리밍 음성 인식’ 2가지로 나눌 수 있습니다.

(1) 배치 음성 인식

  • 통상적으로 STT 음성 인식을 말할 때는 배치 음성 인식을 뜻합니다.
  • 긴 길이의 음성 (몇 분 ~ 몇 시간)의 음성을 한 번에 입력으로 받아 전체 음성에 대해서 한 번에 받아쓰기를 하는 방식입니다.
  • 입력으로 받는 음성의 길이에 따라 받아쓰는 속도가 다를 수 있어요. 짧은 10분의 음성이라면 몇 초 안에 받아쓸 수 있지만, 10시간 또는 100시간 이상의 음성이라면 조금 더 걸리겠죠?

(2) 스트리밍 음성 인식

  • 스트리밍 음성 인식은 이름에서 알 수 있듯이 스트리밍 형태로 입력되는 음성을 실시간으로 빠르게 받아쓰는 방식이에요. 배치 음성 인식과 스트리밍 음성 인식은 각각 offline과 real-time이라고 불리기도 해요.
  • 전체 음성의 길이와 상관없이 일정한 속도로 입력 받는 음성을 받아쓸 수 있어요.
  • 액션파워에서는 배치 음성 인식과 스트리밍 음성 인식을 둘 다 할 수 있어요.

2. 스트리밍 음성 인식의 활용 예

실시간 스트리밍 음성 이식은 다음과 같은 경우에 사용할 수 있어요.

(1) AI 비서

  • 사용자가 거실에서 음성 비서에게 “거실에 불을 켜고 에어컨을 틀어줘”라고 말하면 빠르게 받아 적어 IoT 모듈 서버에 전송할 수 있어요.
  • 1분 1초가 급한 교차로에서 운전자가 “신사동 방향으로 안내해줘”라고 말하면, 딜레이 없이 바로 다음 목적지로 안내할 수 있어요.

(2) 실시간 라이브 방송 자막 서비스

  • 유튜브(Youtube)나 라이브 커머스처럼 온라인 서비스에 적용해서 화면 안에 있는 화자가 하는 말을 실시간으로 받아써서 자막 형태로 바로 보여줄 수 있어요.

(3) 화상회의

  • 많은 사람들이 참석하는 화상회의에서 화자 별로(멀티채널) 실시간 음성 인식을 수행해서, 잠시 회의의 흐름을 놓치거나 늦게 참석하더라도 받아쓴 결과를 보고 빠르게 회의를 따라갈 수 있어요.
  • 혹은 스피커나 이어폰을 사용하지 않더라도 다른 회의 참석자가 말하는 음성을 받아 적은 텍스트를 보고 마이크만 사용해서 회의를 이어갈 수 있어요.

RT-STT를 활용한 화상 회의 활용 예

멀티 채널을 통한 RT-STT 활용 예

3. 음성 인식 아키텍처

배치 단위 음성 인식과 스트리밍 음성 인식이 받아쓰는 방식과 용도가 다른 만큼 네트워크 아키텍처 면에서도 차이가 있어요.

(1) 배치 단위 음성 인식

  • Attention-based Encoder-Decoder 구조는 배치 단위 음성 인식의 한 예로 Encoder와 Decoder로 구성됩니다.
  • 배치 단위 음성 인식의 Encoder는 아래 그림처럼 전체 음성을 입력으로 받아서 특징을 추출하고 Decoder는 추출된 특징을 기반으로 음성 인식을 수행합니다.

(2) 스트리밍 음성 인식

  • 스트리밍 음성 인식에서 널리 쓰이는 Transducer 구조는 Encoder, Decoder와 Joint Network 로 구성되어있어요.
  • Encoder는 일정한 길이의 (0.n초 ~ n초) 단위의 짧은 음성을 받아 짧은 특징을 추출하고 Decoder는 앞서 출력한 글자에서 문맥의 정보를 추출해요. Joint Network는 앞서 추출된 음성 정보와 문맥 정보를 활용해서 최종적으로 다음에 올 글자를 예측합니다.

4. 성능 평가 및 비교

성능 평가 방법

실시간 음성 인식의 성능을 평가하는 요소로는 받아쓰기 결과의 정확도를 측정하는 WER, CER과 받아쓰기 속도를 측정하는 RTF와 지연 시간이 있어요.

  • WER(Word Error Rate)와 CER(Character Error Rate)는 단어 또는 음절 단위로 받아쓰기 정확도를 평가하는 측정 방식으로 낮을수록 좋습니다
  • RTF(Real Time Factor)는 음성 길이 대비 받아쓰는 데에 걸린 시간을 의미합니다. 예를 들어, 어떤 모델이 1시간 음성 파일을 받아쓰는데 3분이 걸렸다고 한다면, 이 모델의 RTF는 0.05(=3/60)라고 할 수 있어요. RTF는 스트리밍 음성 인식 뿐만 아니라 배치 음성 인식 모델에서도 사용하는 측정 방법입니다.
  • 지연시간(Latency)는 실시간으로 입력 받은 음성을 받아쓰고 사용자에게 되돌려줄 때까지 걸린 시간을 의미해요. RTF랑 유사해 보이지만, 실시간 음성 인식은 모델의 속도 뿐만 아니라, 네트워크나 각종 전후 처리 모듈들이 복합적으로 작용하기 때문에 조금 더 사용자에게 직접적으로 와 닿는 측정 방식입니다.

액션파워는

액션파워는 자체 개발한 기술을 토대로 1초 이내의 빠른 지연 시간과 10% 이내의 높은 정확도를 갖추고 있습니다!

액션파워에 대한 더 많은 이야기가 궁금하다면?
More about Action Power

← 블로그로 돌아가기

대화가 일이 되는 곳, daglo.

지금 바로 무료로 시작해보세요