google.com, pub-9850333530125189, DIRECT, f08c47fec0942fa0 딥 러닝 음성 인식을 위한 최고의 접근 방식
본문 바로가기
카테고리 없음

딥 러닝 음성 인식을 위한 최고의 접근 방식

by ╰(*°▽°*)╯(¬_¬ ) 2022. 2. 5.
반응형

딥 러닝 음성 인식을 위한 최고의 접근 방식

자동 음성 인식 은 새로운 것이 아닙니다. 그것은 1960년대, 70년대, 80년대에 Marvin Minsky와 같은 지도자들의 개발과 DARPA의 자금 지원을 받은 연구로 이어진 협소한 군사적 구현을 ​​가진 냉전 시대 연구에 기원을 두고 있습니다. 그러나 1990년대가 되어서야 연구원들은 Wall Street Journal Speech Dataset과 같은 정부 자금 지원 프로젝트 덕분에 진정한 진전을 볼 수 있었습니다. 딥 러닝 음성 인식은 그럼에도 불구하고 약 30시간 분량의 이 작은 오디오 데이터 세트는 연구 환경에서 약 30-50%의 정확도만을 산출했습니다.

딥러닝 음성인식을 위한 최고의 접근방식
딥러닝 음성인식
자동 음성인식은 새로운 것이 아닙니다

음성 기술의 지속적인 발전으로 Alexa, Siri, 자동화된 은행 시스템에 PIN이 필요하다고 알려주는 등 오늘날 우리 모두에게 친숙한 다양한 개선 사항과 소비자 사용 사례가 생겼습니다. 이러한 음성 인식 도구 중 완벽과는 거리가 멀다는 것을 알고 있습니다.

,

1960년대의 원래 실험에 뿌리를 둔 구식 음성 인식 방식에 의존하기 때문입니다. 이 블로그 게시물에서 우리는 음성 인식을 수행하는 구식 방식(오늘날 대부분의 회사에서 여전히 사용되는 방식이기 때문에)을 살펴보고 왜 새로운 방식이 엔드 투 엔드 딥 러닝에 의존하는지 보여줍니다. 말을 처리하는 것이 훨씬 우수합니다.

음성 기술의 지석적인 발전
자동화된 은행 시스템
딥러닝 음성인식에 대한

옛날 방식: 음향 모델, 발음 모델, 언어 모델 오 마이!

음성 언어에서 소리의 가장 작은 단위를 음소라고 합니다. 예를 들어, "cat"에는 3개의 음소가 있습니다. 첫 번째 "k" 소리, "apple"과 같은 중간 "a" 모음 및 마지막 "t" 소리.

,

ASR을 수행하는 기존 방식에서는 녹음에서 음소를 식별한 다음 음소 덩어리를 가능한 단어로 조합하는 것으로 시작합니다. 다음으로, 가능한 단어들이 어떻게 함께 어울려 문법적으로 이해될 수 있는지 찾습니다. 마지막으로, 이러한 모든 가능성을 하나의 '대본'으로 압축합니다. 이 시스템의 구성 요소는 음향 모델, 발음 모델 및 빔 검색이 있는 언어 모델이라고 합니다.

음성언어에서 소리의
딥러닝의 음성인식
딥러닝 음성인식

음향 모델 은 오디오 신호를 일반적으로 파형 또는 스펙트로그램으로 표현하고 전체 녹음에 걸쳐 10-80ms의 타임박스 창에 걸쳐 음소 확률 분포 함수를 추측하려고 시도합니다. 본질적으로, 출력은 단순히 음소 전사가 아니라 시간의 함수로서 가능한 음소의 거대한 격자입니다.

음향모델은 오디오 신호를 일반적으로
음향모델 발음모델
딥러닝 음성인식의

그런 다음 발음 모델 은 음소 격자를 입력으로 사용하고 시간 창 에서 단어 확률 분포 함수를 추측하려고 시도합니다. 이 단계의 출력은 시간의 함수로서 가능한 단어의 거대한 격자입니다.

그런 다음 언어 모델 이 빔 검색과 함께 사용됩니다. 이 모델은 격자라는 단어를 입력으로 사용하고 최종 전사에 도달할 때까지 가능성이 낮다고 생각하는 모든 가능성을 줄입니다. 또한 빔 검색을 사용합니다. 모든 시간 단계에서 검색은 컷오프(빔 너비라고 함) 아래의 모든 가능성을 버리고 다시는 보거나 생각할 수 없습니다.

딥 러닝 음성 인식 모델을 구축하는 이 오래된 방법은 인간에게 직관적이고 언어학자가 언어에 대해 생각하는 방식에 의해 어느 정도 동기가 부여되지만 컴퓨터에는 손실이 매우 큽니다. 이 프로세스의 각 단계에서 모델은 계산을 메모리에 맞추거나 우주의 수명 내에 완료하도록 가정을 단순화해야 합니다. 농담이 아닙니다. 모델이 모든 가능성을 고려한다면 결과를 반환하기에는 너무 많은 조합과 순열이 있습니다.

딥 러닝 음성 인식 모델을 구축하는
언어 모델이 빔 검색과 함께 사용됩니다
출력은 시간의 함수로서 가능한 단어의 거대한 격자입니다.

이것이 예를 들어 언어 모델 부분이 일반적으로 매우 제한된 트라이그램 언어 모델인 이유입니다. tri - in trigram은 "3"을 의미하며 모델이 현재 단어가 문맥에서 의미가 있는지 확인하기 위해 두 단어만 되돌아본다는 것을 나타냅니다. 그것은 문장의 절반에 불과하거나 그 이하일 수도 있습니다!

.

이러한 단순화는 만연하며 전체 문제 영역에서 동시에 최적화할 수 있는 종단 간 접근 방식이 아니라 프로세스의 각 단계에서 하위 문제를 최적화하기 위한 성능이 제한된 파이프라인 방식의 접근 방식을 초래합니다. 이것은 전통적인 방법에 세 가지 주요 문제를 만듭니다.

음성인식 딥러닝

딥러닝 음성인식에 대한
음석인식 파이프라인 방식

전통적인 접근 방식의 문제점

구식 음성 인식 방법에는 세 가지 큰 문제가 있습니다. 느리고, 정확하지 않으며, 부서지기 쉽습니다. 느림으로 인해 비용과 시간이 많이 소요됩니다. 부정확성은 전통적인 방법을 비효율적이고 사용하기 어렵게 만듭니다. 특히 의료 및 법률 분야와 같이 높은 수준의 정확도가 필요한 기업 및 도메인의 경우 그렇습니다. 그리고 부서지기 때문에 엔지니어는 카드의 집이 무너질까 두려워 코드를 변경하는 것을 두려워합니다.

전통적인 접근 방식의 문제점은
구식 음성 인식 방법에는 세 가지 큰 문제가 있습니다
느리고, 정확하지 않으며, 부서지기 쉽습니다

느리다

기존 방법은 컴퓨팅 및 메모리 리소스를 비효율적으로 사용하는 최적화되지 않은 휴리스틱 접근 방식에 의존하기 때문에 느립니다. 이러한 접근 방식은 CPU 코어당 약 0.5-2개의 스트림만 처리할 수 있습니다. 이로 인해 결과를 제공할 때 처리 시간이 길어질 수 있습니다. 종종 너무 길어서 실시간 챗봇과 같은 일부 애플리케이션에서는 이러한 방법을 사용할 수 없습니다.

부정확하다

기존 방법은 모델이 표현력과 용량이 부족하기 때문에 정확하지 않습니다. 표현성은 시스템이 정확성을 유지하면서 모델링할 수 있는 세계의 복잡성을 측정하는 것입니다. 용량은 모델이 보유할 수 있는 지식의 양과 유사한 척도입니다. 이러한 의미에서 전통적인 시스템은 얕습니다. 그들은 모든 것을 매우 잘 다룰 희망이 없으므로 거의 성공하지 못한 대부분의 영역을 다루거나 약간의 성공으로 좁은 영역을 커버합니다.

확고하다

기존 방법은 시스템이 매우 복잡하고 유연하지 않기 때문에 취약합니다. 1년에 20명의 엔지니어로 구성된 팀이 적절한 성능을 발휘하기 시작하는 시스템을 설정하는 데 걸립니다. 그래서 그들은 그것을 내버려 두고 최선을 희망합니다. 시스템을 수정하거나 개선하려는 시도는 문제의 표면적이 팀을 극복할 때 패배로 끝날뿐입니다. 이것이 바로 기존의 음성 인식 공급자가 하나의 모델(2~3개, 수백 또는 수천 개는 아닐 수도 있음)만 제공하고 고객 맞춤화를 거부하는 이유입니다. 이전 히드라 방법(문제 헤드 1개를 자르고 3개는 다시 자라남)을 사용하면 비용이 너무 높습니다.

최선의 방법: 음성 인식을 위한 종단 간 딥 러닝

좋은 소식은 딥 러닝 음성 인식 솔루션을 찾고 있다면 이 방법이 필요하지 않다는 것입니다! 대부분의 제공업체에서 여전히 예전 방식을 사용하고 있지만 빠르고 정확하며 유연한 대안이 있습니다. 바로 E2EDL(End-to-End Deep Learning) 모델입니다.

빠르다

종단 간 모델은 런타임 실행에 더 잘 최적화될 수 있습니다. 특히 딥 러닝 은 그래픽 카드(GPU)에 구현된 것과 동일한 수학 연산( 텐서 수학 ) 세트를 활용합니다. 이것은 E2EDL 모델이 사용 가능한 가장 빠른 구현이라는 것을 의미합니다. 반면에 기존의 음성 스택은 여러 하위 문제(최적화를 위한 표면적 감소)로 구성되며 가속 컴퓨팅 리소스를 사용할 수 없습니다(따라서 범용 CPU에 강제 적용).

GPU 기반 E2EDL은 GPU당 300개 이상의 스트림을 달성하므로 결과가 훨씬 빠르게 고객에게 반환되므로 고객은 종종 놀라고 기뻐합니다. Deepgram의 고객은 종종 자신이 뭔가 잘못한 것이 틀림없다고 생각하지만, 그렇지 않습니다. 너무 빠릅니다.

정확하다

E2EDL 모델은 훨씬 더 큰 용량을 가지고 있으며 네트워크의 모든 부분이 하나의 유기체처럼 응집력 있게 학습할 수 있도록 하는 압축 효율성을 누립니다. 결과적으로 이러한 모델은 입력 오디오 기능부터 스크립트 제작에 이르기까지 전체 문제 공간에서 한 번에 최적화할 수 있습니다. 결과는 훨씬 더 높은 정확도를 달성하고 "토핑 아웃" 없이 훈련하는 동안 계속해서 개선되는 전문가 모델입니다.

유연하다

Deepgram에서 E2EDL 접근 방식을 사용하면 저렴한 비용으로 전례 없는 수준의 음성 인식 정확도에 도달할 수 있습니다. E2EDL 기반 자동 전사 시스템은 새 모델을 교육하고 배포하는 데 걸리는 시간을 크게 단축합니다. E2EDL 모델은 또한 수천 시간이 지난 데이터에 대한 교육으로 인한 수익이 감소하는 구형 하이브리드 시스템과 달리 새로운 데이터에 대한 교육에서 무기한 개선을 계속합니다. 이러한 감소하는 수익은 하이브리드 시스템의 정확도 향상에 한계를 부과합니다. E2EDL 시스템에서는 그렇지 않습니다.

딥 러닝 음성 인식을 위한 E2EDL 접근 방식의 단점은 GPU에서 호스팅 되는 진정한 데이터 기반 E2EDL 시스템 구축의 복잡성입니다. 그러나 일단 시스템이 구축되면 안정적이고 효율적이며 빠르고 정확합니다. 그럼에도 불구하고 그것을 구축하는 것은 엄청난 노력입니다. 생각해 보십시오. 위성을 궤도에 올려놓을 로켓을 만드는 것입니다. 노하우, 똑똑한 사람, 시간, 기회비용 및 자본 위험이 필요한 매우 복잡한 작업이지만 시스템이 개선되면 매우 가치 있는 작업을 안정적으로 수행할 수 있습니다.

과거 Nuance, Google 및 Amazon 과 같은 회사는 시작할 때 노하우가 없었기 때문에 E2EDL 접근 방식을 선택할 수 있는 옵션이 없었고 지금은 역사적 바인딩에 갇혀 있습니다. 

결론

보시다시피, E2EDL은 음성 인식을 위한 최상의 옵션인 반면, 이전 접근 방식은 이러한 새로운 리소스를 효율적으로 활용하기에는 너무 취약하고 매몰 비용이 너무 높습니다. 그리고 성능과 유연성의 차이는 놀랍습니다. 예를 들어 Deepgram의 기술은 단일 GPU에서 300개의 동시 오디오 스트림을 지원할 수 있으며, 이는 구식 솔루션이 제공하는 CPU 코어당 1-2개의 스트림과 비교됩니다.

또한 Deepgram은 E2EDL을 사용하기 때문에 모델을 쉽고 저렴하게 수정하거나 용도를 변경할 수 있습니다. 동일한 훈련 및 추론 프로세스가 여전히 적용되기 때문에 새로운 분류기, 새로운 아키텍처 및 추가 문제 영역을 최소한의 노동으로 도입할 수 있습니다. 사실, 훈련된 모델은 종종 새로운 작업(전이 학습이라고 하는 프로세스)에 다시 적용될 수 있으므로 새로운 모델이나 분류기는 다양한 문제 영역에서도 이전 훈련의 이점을 얻을 수 있습니다!

Deepgram은 E2EDL 모델을 활용하여 사용자 지정 모델, 새로운 아키텍처 및 고급 분석 전반에 걸쳐 대규모로 확장할 수 있습니다. 이를 관련 없는 여러 구성 요소에 대한 광범위하고 침습적인 정밀 검사가 필요한 기존 접근 방식과 비교하여 엔지니어 작업의 홍수를 초래합니다. 10명의 엔지니어와 1,600시간의 리팩토링 작업이 아니라 Deepgram은 E2EDL 솔루션을 사용하기 때문에 1명의 엔지니어가 단 4시간 만에 동일한 유연성을 발휘할 수 있습니다.

E2EDL 시스템이 딥 러닝 음성 인식에 가장 적합한 옵션인 이유는 이것으로 충분할 것입니다. 여전히 나를 믿지 못한다면 무료 API를 받고 Deepgram을 사용해 보십시오. 음성 인식 파이프라인을 설정하고 비즈니스에 효과적인 결과를 얻는 것이 얼마나 빠르고 쉬운지 알게 될 것입니다.

댓글