KR20210132615A - 사운드 특성에 대한 음향 모델 컨디셔닝 - Google Patents

사운드 특성에 대한 음향 모델 컨디셔닝 Download PDF

Info

Publication number
KR20210132615A
KR20210132615A KR1020210053411A KR20210053411A KR20210132615A KR 20210132615 A KR20210132615 A KR 20210132615A KR 1020210053411 A KR1020210053411 A KR 1020210053411A KR 20210053411 A KR20210053411 A KR 20210053411A KR 20210132615 A KR20210132615 A KR 20210132615A
Authority
KR
South Korea
Prior art keywords
audio
sound
speech
acoustic model
key phrase
Prior art date
Application number
KR1020210053411A
Other languages
English (en)
Inventor
지주 고웨이예드
케이반 모하제르
Original Assignee
사운드하운드, 인코포레이티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 사운드하운드, 인코포레이티드 filed Critical 사운드하운드, 인코포레이티드
Publication of KR20210132615A publication Critical patent/KR20210132615A/ko

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/06Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
    • G10L15/065Adaptation
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/02Feature extraction for speech recognition; Selection of recognition unit
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/06Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
    • G10L15/063Training
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/04Segmentation; Word boundary detection
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/16Speech classification or search using artificial neural networks
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/18Speech classification or search using natural language modelling
    • G10L15/183Speech classification or search using natural language modelling using context dependencies, e.g. language models
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/16Vocoder architecture
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/27Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique
    • G10L25/30Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00 characterised by the analysis technique using neural networks
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/02Feature extraction for speech recognition; Selection of recognition unit
    • G10L2015/025Phonemes, fenemes or fenones being the recognition units
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L2015/088Word spotting

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Computational Linguistics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Signal Processing (AREA)
  • Machine Translation (AREA)

Abstract

음성 인식 시스템 및 방법은, 핵심 구문 직후에 발언이 이어지는 음성 오디오 세그먼트를 캡처한다. 인코더는 핵심 구문 세그먼트를 사용해서 사운드 임베딩을 계산하고, 이는 저장된다. 음성 인식을 위한 음향 모델은, 입력으로서의 사운드 임베딩에 대해 컨디셔닝된 모델을 사용해서 발언 오디오 신호로부터 음소를 추론한다. 이 사운드 임베딩은 다른 핵심 구문이 캡처되거나 세션이 종료될 때까지 유지될 수 있다. 음향 모델 및 인코더는, 노이즈와 혼합될 수 있는 음성 데이터 레코딩으로부터 공동으로 트레이닝될 수 있는데, 혼합되는 노이즈의 프로파일은 핵심 구문 세그먼트 및 발언 세그먼트에 대해 동일하다.

Description

사운드 특성에 대한 음향 모델 컨디셔닝{ACOUSTIC MODEL CONDITIONING ON SOUND FEATURES}
본 출원은 2020년 4월 27일에 출원된 "사운드 특성에 대한 음향 모델 컨디셔닝"이라는 명칭의 미국 가출원 제62/704,202호의 우선권을 주장한다.
기술 분야
본 발명은 신경망 분야에 관한 것이고, 상세하게는 사운드 임베딩에 기초한 컨디셔닝에 관한 것이다.
우리는, 자연어 음성 인터페이스가 새로운 타입의 인간-기계 인터페이스로서 도약하는 역사의 전환점에 있다. 음성을 필사(transcribe)하는 이러한 성능은 곧, 텍스트를 입력하는 가장 빠르고 정확한 방법으로서 키보드를 대체할 것이다. 자연어 커맨드를 지원하는 이러한 성능은 곧, 비-텍스트 제어를 조작하는 방법으로서 마우스 및 터치 스크린을 대체할 것이다. 이는 여러 면에서, 인간이 작업, 오락, 교육, 휴식 또는 단순 작업 보조를 위한 머신을 제어할 수 있게 하는, 깨끗한 무균의 방법을 제공할 것이다.
그러나, 이러한 이점을 모두 제공하는 자연어 음성 인터페이스의 성능은 현재, 음성 인식의 부정확성으로 인해서 답보 상태에 있다. 아일랜드 억양의 "thirty-three"을 "dirty tree"라고 캡처하는 것과 같이, 단어를 잘못 취득해 버리게 되면 우스워져 버린다. 어떤 경우에는, 시끄러운 자동차에서의 "text mom"을 "text tom", "text none", "text some" 등으로 캡처해 버린다면 실망스러울 수 있다. 경우에 따라, 목소리가 높은 의사가 실어증(aphasia)이라고 말한 의학적인 진단을 무섭증(aphagia)이라고 캡쳐해 버리는 것과 같은 음성 인식 오류는 위험할 수도 있다.
도 1은 가상 어시스턴트의 정황에서의 음성 인식 실패의 시나리오를 보여준다. 사용자(10)는 독특한 성도(vocal tract)를 가진 사람으로, 뉴질랜드 억양으로 말하며, 창문(11)에 비가 내리는 시끄러운 방에 있다. 사용자(10)는 가상 어시스턴트를 호출해서(12) 뉴질랜드의 수도 오클랜드(Auckland)에 내일 비가 내릴지를 예측한다. 샌프란시스코 베이(Bay) 지역에 있는 회사에서 제조된 가상 어시스턴트(13)는, 오클랜드(Auckland)라는 단어를 베이 지역에 있는 도시 오클랜드(Oakland)로서 인식해서, 그곳의 날씨에 관한 쓸모없는 응답(14)을 제공한다. 미국 노스웨스트에 있는 회사에서 제조된 또 다른 가상 어시스턴트(15)는 오클랜드(Auckland)라는 단어를 캐나다 서부의 도시인 포클랜드(Falkland)로서 인식해서, 그곳의 날씨에 관한 쓸모없는 응답(16)을 제공한다.
소음, 주변 목소리 또는 음악 등이 있는 비정상적인 환경 조건에서, 비정상적인 억양, 비정상적인 목소리 유형의 음성이 비정상적인 장치를 사용하는 경우, 및 다른 비정상적인 시나리오에서, 종래의 음성 인식은 정확도에 문제가 있으며, 이 때문에 조용한 집에서 음악을 연주하는 것과 같은 한정된 용도에만 적합하게 된다. 이러한 문제를 해결해야만, 목소리 인터페이스가 마련된 제품이 일상 생활에서 잠재적으로 유용하게 될 수 있다.
사운드 특성에 대한 음향 모델 컨디셔닝(조건부 음향 모델)은 자동 음성 인식(ASR)의 정확도를 크게 향상시키는 간단하고 강력한 기술을 제공한다.
용례
조건부 음향 모델은 목소리 유형, 억양, 환경 조건 등이 비정상적인 사용 사례에서 가장 큰 개선을 제공한다. 배경 소음, 음악 또는 음성이 존재해도 ASR을 정확하게 하는 등의 특별한 이점이 있다.
많은 ASR 시스템은 데이터에 대해 트레이닝된 신경망을 사용한다. 신경망 아키텍처는 그 레이어의 수, 노드의 수, 컨볼루션, 순환(recurrence) 및 트레이닝 방법이 매우 다양하다. 본 발명은 어떤 신경망 아키텍처가 사용되는지에 관계없이 ASR 정확도에 이점을 제공한다. 또한, 향상된 정확도를 제공함으로써, ASR에 대해 종래 방식에서 요구되던 것보다 더 적은 시간 및 더 적은 트레이닝 데이터로도 필요한 정확도 사양을 달성하도록 ASR 시스템을 트레이닝할 수 있다. 이로써, 음성 인식 제품 및 서비스의 제공 업체는, 새로운 특성을 개발해서 더 빨리 시장에 출시할 수 있게 되어서, 이들의 경쟁력 있는 시장 지위 및 전반적인 수익을 개선한다.
ASR에 대한 이러한 이점은, 도 1의 예에서와 같이 핵심 구문에 응답해서 깨어나는 가상 어시스턴트에서 뿐만 아니라, 구술을 위한 시스템, 차량 제어 인터페이스, 소매점 판매 시스템, 및 평상시 발성되는 알고 있는(known) 핵심 구문을 인식하는 기타 목소리 인터페이스 애플리케이션에서 구현될 수 있다.
구현예
음향 모델(AM)은 ASR용 방법이며, 또한 ASR을 위한 컴퓨터화된 시스템의 핵심 구성 요소이다. 특히 AM은 음성 오디오에서의 음소의 확률을 추론한다. 조건부 음향 모델은, 알고 있는(known) 일련의 음소로 이루어진 핵심 구문의 제 1 음성 오디오 세그먼트로부터 사운드 임베딩을 인코딩하는 것에 의존한다. 머신 학습에서, 임베딩이란, 단순히 입력 표현을 더 편리한 다른 표현 공간으로 투영(project)하는 것을 의미하는 특수한 용어이다. 사운드 임베딩은 벡터에 의해 표현될 수 있다. 제 1 음성 오디오 세그먼트는 몇 개의 오디오 샘플이나 또는 단일 스펙트럼 프레임 정도로 작을수도 있고, 혹은 여러 단어의 문자열 정도로 클 수도 있다. 인코딩된 사운드 임베딩은 제 1 음성 오디오 세그먼트가 끝난 직후에, 즉 바로 계산되어서 저장된다.
이후, 조건부 음향 모델은, 핵심 구문 오디오에 바로 이어지는 발언을 포함하는, 제 2 음성 오디오 세그먼트에 대해 음소 확률의 추론을 수행한다. AM로의 입력은 음성 오디오의 발언 세그먼트와 저장된 사운드 임베딩 모두이다. 이 출력은 적어도 하나의 확률이지만, 많은 구현예에서 음소 세트 각각에 대한 SoftMax 확률 세트이다.
일부 구현예는 음향 모델에 대해 신경망을 사용하고, 이 신경망을 음성 오디오의 라벨링된 샘플에 대해서 트레이닝시키되, 각 샘플은 대응하는 핵심 구문 사운드 임베딩을 갖고 있다. 이러한 대응을 통해서, AM의 학습된 예측에 대한 사운드 임베딩의 효과가 각각의 트레이닝 데이터 샘플의 정확한 방향 및 비율에 확실하게 있게 한다.
다양한 범위의 사용자를 지원하는 ASR 시스템의 경우, 트레이닝 샘플이 다수의 목소리 및 다수의 억양을 포함한다면, 추론의 결과 정확도는 최상이다. 또한 트레이닝 오디오 샘플 중 적어도 일부가 노이즈 오디오 샘플과 혼합되는 경우에, 추론 정확도가 최상이다. 그러나, 사운드 임베딩의 학습된 효과는, 핵심 구문 오디오와 혼합되는 노이즈와 트레이닝 발언 오디오와 혼합되는 노이즈는 동일한 노이즈 프로필을 갖는 경우에, 최상이다.
다양한 형태의 인코더가 가능하다. 일부는 정밀하게(carefully) 프로그래밍될 수 있다. 일부는 신경망과 같은 데이터로부터 학습된 모델일 수 있다. 인코더에 대해서 사전 트레이닝된 모델을 사용할 수도 있다. 그러나 인코더 모델을 음향 모델과 공동 트레이닝하는 것도 가능하다. 이는, 인코더 모델 내의 신경망 노드에 음향 모델의 기울기(gradient)를 역 전파하는 것을 포함할 수 있다. 일반적으로 공동 트레이닝을 하게 되면, 인코더가 사운드 임베딩을 학습해서, 트레이닝되는 AM 모델에 차별된 성능을 제공하는 사운드 임베딩의 복잡성을 최적화시키기 때문에, 더 우수한 정확도를 제공한다.
핵심 구문 오디오로부터 사운드 임베딩을 인코딩해서 저장하고, 이 인코딩을 음향 모델로의 입력으로서 제공할 수 있도록, 하나 이상의 공동 트레이닝된 인코딩 모델 및 하나 이상의 독립적으로 트레이닝된 인코딩 모델을 갖는 것도 가능하다.
인코더와 음향 모델을 서로 다른 장치에 가질 수도 있다. 예를 들어, 컴퓨터화된 코드 및 마이크를 이용해서 웨이크 구문 스포터(wake phrase spotter)를 구현하는 클라이언트 장치가 핵심 구문의 인코딩을 계산할 수도 있다. 발언을 포함하는 후속의 제 2 오디오 세그먼트를, 인코딩된 사운드 임베딩과 함께, 조건부 음향 모델을 실행하는 ASR 서버로 전송할 수도 있다. 서버 기반 ASR은 사용자 장치에서 낮은 비용 및 전력 소비 요건으로 높은 정확도를 제공한다.
그러나, 사운드 임베딩을 인코딩하고 이를 모두 동일한 시스템 내의 조건부 음향 모델에서 사용하는 것도 가능하다. 이는, 핵심 구문 오디오 및 후속의 발언을 포함하는 발언 오디오 세그먼트를 수신하는 서버일 수도 있다. 그러나 이 시스템은, 네트워크 접속없는 "비행기 모드"에서 ASR을 실행할 수 있는 모바일 핸드셋이나 자동차와 같은 사용자 장치 내에 포함될 수도 있다.
도 1은 종래 시스템에서의 음성 인식 실패를 도시한다.
도 2는 핵심 구문 및 발언을 포함하는 음성 오디오의 파형을 도시한다.
도 3은 일반 음성 오디오 및 처리된 음성 오디오 내의 정보 테이블을 도시한다.
도 4(a)는 일 실시예에 따른, 인코더 및 컨디셔닝된 음향 모델을 나타내는 도면이다.
도 4(b)는 일 실시예에 따른, 복수 인코더 및 컨디셔닝된 음향 모델을 나타내는 도면이다.
도 5는 일 실시예에 따른, 사운드 임베딩에 대해 컨디셔닝된 음향 모델을 트레이닝하는 것을 나타내는 도면이다.
도 6은 일 실시예에 따른, 사운드 임베딩에 대해 컨디셔닝된 음향 모델 및 인코더를 공동 트레이닝하는 것을 나타내는 도면이다.
도 7은 일 실시예에 따른, 노이즈와 혼합된 트레이닝 데이터를 사용해서 사운드 임베딩에 대해 컨디셔닝된 음향 모델 및 인코더를 공동 트레이닝하는 것을 나타내는 도면이다.
도 8은 일 실시예에 따른, 클라우드 서버에서 음향 모델을 컨디셔닝하기 위해 인코더를 가진 장치가 사운드 임베딩을 제공하는 것을 나타내는 도면이다.
도 9(a)는 일 실시예에 따른, 클라우드 서버를 도시한다.
도 9(b)는 일 실시예에 따른, 클라우드 서버를 나타내는 도면이다.
도 10은 일 실시예에 따른, 로컬 음성 인식을 위한 조건부 음향 모델 및 인코더를 가진 모바일 핸드셋을 도시한다.
도 11(a)는 일 실시예에 따른 패키지화된 시스템 온 칩을 도시한다.
도 11(b)는 일 실시예에 따른 시스템 온 칩을 나타내는 도면이다.
도 12는 일 실시예에 따른 비일시적 컴퓨터 판독 가능 매체를 도시한다.
이하에서는, 조건부 음향 모델의 관련 측면들에 대한 다양한 디자인 선택을 설명한다. 명시된 경우를 제외하면, 다양한 측면에 대한 설계 선택은 서로 독립적인 것으로 임의의 조합해서 함께 작용한다.
음향 모델
ASR을 위한 음향 모델은, 음성 오디오의 세그먼트를 포함하는 입력을 취하고 하나 이상의 음소의 추론된 확률의 출력을 생성한다. 일부 모델은 음소 확률의 한 타입인 세논(senone) 확률을 추론할 수 있다. 일부 응용예에서, 음향 모델의 출력은 인식 가능한 음소 또는 세논 세트에 대한 SoftMax 확률 세트이다.
일부 ASR 응용예는 오디오 프레임으로부터 계산된 스펙트럼 성분에 대해 음향 모델을 실행한다. 스펙트럼 성분은 예를 들어, 25밀리 초의 오디오 샘플 윈도우에 대해 계산된 MFCC(mel-frequency cepstral coefficients)이다. 음향 모델 추론은 예를 들어 매 10밀리 초 간격으로 반복될 수 있다.
스펙트럼 성분은 음성-제어식 장치의 사용자 인터페이스의 일부로서 마이크에 의해 캡처되는 것과 같은, 오디오 파형의 샘플로부터 계산될 수 있다. 다른 방안으로, 음향 모델은 이러한 샘플을 입력으로 직접 취하도록 트레이닝될 수 있다.
단일 시스템 또는 장치가 하나 이상의 음향 모델을 포함할 수도 있다. 핵심 구문이 발성될 때 트리거 신호를 단지 어써트(assert)하기만 하는 구문 스포터라면 간단한 것이어도 충분할 수 있다. 고정밀 음성 인식을 위한 음향 모델은, 고성능 컴퓨터 프로세서에서 실시간으로 이용 가능한 또는 기록된 음성을 분석하기 위해서 비실시간으로 이용 가능한, 리소스의 합리적인 예산 내에서 구현하기에 실용적인 정도의 수의 레이어 및 노드를 가진 신경망을 사용할 수 있다. 일부 음향 모델은, 적절한 어휘 사이즈에 대한, 휴대용 배터리-전원 장치의 처리 성능 예산에 맞춰서, 중간 레벨의 정확도로 설계될 수도 있다.
일부 음향 모델은, 다양한 단위(granularity)의 레벨로 정보를 이용하도록, 입력 특성의 컨볼루션을 계산함으로써 추론 정확도를 향상시킬 수 있다. 일부 음향 모델은, LSTM(long short-term memory) 또는 GRU(gated recurrent unit) 신경망 노드와 같은 순환(recurrent)을 사용해서, 입력 신호의 시간적 변화에 포함되어 있는 정보를 활용할 수 있다.
도 2는 예시적인 음성 파형을 도시한다. 이것은 화자가 핵심 구문을 발언하는 제 1 음성 세그먼트(21)를 포함한다. 핵심 구문은 알고 있는 단어를 포함하는 구문이며, 따라서 알고 있는 일련의 음소이다. 예를 들어 핵심 구문은 질의 또는 커맨드인 짧은 발언을 인식하고, 이에 응답하는 음성 가상 어시스턴트를 깨우는 데(wake up) 사용된다. 몇 가지 예는 "Okay Google"과 "Alexa"이다. 핵심 구문은 자동 구술을 수행하는 시스템을 제어하는 데 사용되는 음성에서의 목소리 커맨드로서도 사용된다. 몇 가지 예는 "마침표", "줄바꾸기" 및 "되돌리기"이다.
음성 파형에서 핵심 구문(21)에 후속해서 발언인 제 2 음성 세그먼트(22)가 이어진다. 이 발언은 선험적으로 알고 있지 않은(unknown) 단어 및 음소로 이루어진 음성이다. 조건부 음향 모델의 목적은, 사용자 발언의 ASR에서의 높은 정확도를 제공하는 것이다.
도 3은 음성 오디오의 다양한 표현에 포함되는 정보의 표를 보여준다. 일반적으로 발언의 오디오는, 발성되고 있는 음소에 관한 정보를 포함한다. 또한, 이는 화자의 성도(vocal tract)의 생리학적 특성(physiology)과 같은 사항을 포함한, 화자의 목소리에 관한 정보를 포함하며, 화자의 성별 및 연령을 추정하는 등의 목적으로 사용될 수도 있다. 발언 오디오는 화자의 억양, 발성 속도 및 화자가 자신의 생각을 말로 바꾸는 방식의 다른 속성에 대한 정보도 포함한다. 발언 오디오는, 모터 및 바람과 같은 지속적인 배경 노이즈, 및 사운드인 기압파(air pressure waves) 사이의 전달 함수가 그 사운드의 디지털 캡처된 표현에 대해 영향을 미치는 기타 왜곡 파라미터와 같은, 환경에 관한 정보도 포함한다.
핵심 구문 오디오는 발성되는 음소를 제외한 모든 정보를 포함한다. 이는 핵심 구문이 알고 있는 음소 세트를 갖기 때문이다. 핵심 구문이 발성되는 것을 시스템이 정확하게 식별하는 한, 핵심 구문 내의 음소는 선험적으로 알고 있는 것이므로, 음성 오디오에 포함된 중복 정보이다.
대조적으로, 음향 모델에서 원하는 출력은 음소이다. 잘 만들어진 음향 모델은 음성 오디오에서 목소리, 억양 및 환경 정보를 거부하고, 발성된 음소만 출력한다.
도 2의 예에서와 같이, 핵심 구문(22) 직후에 발언(23)이 이어지는 경우, 목소리, 억양 및 환경 정보는 핵심 구문 오디오와 발언 오디오 사이에서 거의 동일할 가능성이 매우 높다. 따라서, 핵심 구문 오디오의 특성을 분석하고 적절한 인코딩으로 표현함에 의하여, 이러한 특성들을 차단할 수 있도록 조건부 음향 모델에 이를 공급하고, 그 결과 음소를 나타내는 음성 오디오의 특성을 보다 정확하게 식별할 수 있다.
핵심 구문 오디오로부터 특성을 인코딩하는 단계 및 음향 모델을 사용해서 음소를 추론하는 단계는 모두, 정밀하게 구성된 디지털 신호 처리 알고리즘에 의해서나 혹은 대량의 다양한 데이터 세트에 대해서 신경망과 같은 하나 이상의 모델을 트레이닝함으로써 행해질 수도 있고, 혹은 신호 처리와 트레이닝되는 모델 모두의 조합에 의해서 행해질 수도 있다. 트레이닝되는 조건부 음향 모델은, 인코딩된 핵심 구문 오디오 특성의 입력을 갖도록 트레이닝된다. 핵심 구문 오디오의 특성을 인식하고 인코딩하는 모델은, 독립적으로 트레이닝될 수도 있고, 음향 모델과 공동으로 트레이닝될 수도 있다.
스마트 스피커와 같은 원거리 장치 및 모바일 핸드셋과 같은 근거리 장치를 지원하는 클라우드 ASR 시스템과 같은, 다양한 타입의 장치 또는 환경을 지원하는 시스템에서는, 다수의 음향 모델을 가질 수 있다. 마찬가지로, 다른 언어 또는 지역에 대해서 ASR을 지원하는 시스템은 다수의 음향 모델을 가질 수 있다. 음향 모델 중에서 가장 적합한 것으로 추정되는 것을 사용하여 인코더가 출력을 생성할 수도 있다.
사운드 임베딩
핵심 구문으로부터의 인코딩된 목소리, 억양 및 환경 정보는, 사운드 임베딩으로서 표현된다. 사운드 임베딩은 화자의 목소리의 물리적인 속성, 그 억양 및 음성 스타일의 속성, 배경 노이즈, 잔향, 마이크 및 아날로그-디지털 컨버터의 전달 함수와 같은 그 환경 속성에 관한 정보를 캡처한다. 핵심 구문의 사운드 임베딩을 캡처함으로써, 사운드 임베딩은 구문들 사이의 변이(variation)의 영향을 받지 않으며, 특히 정황 및 감정으로 인한 변형의 영향을 받지 않는다. 발언 직전에 사운드 임베딩을 캡처함으로써, 다양한 장치 특성으로 인한 변이나, 온도, 감정, 건강 및 기타 신체적 요인으로 인한 다른 목소리의 변이의 문제가 없다.
사운드 임베딩은, 콜 센터의 보안 목적으로 사용되는 것과 같은 화자 인식에 사용되는 특성 벡터와는 상이하다. 이러한 화자 인식 특성 벡터는 환경적 변이와 시간 흐름에 따른 변이 및 캡처 장치의 영향을 받지 않게 환경 정보를 거부하도록 의도된다. 이러한 시스템은, 화자에게 한 구절을 여러 번 반복하도록 요청하거나, 다른 기술을 사용해서 화자의 목소리를 환경 정보와 구별하는 방식으로, 이를 수행한다.
사운드 임베딩은, 구문에 의존하지 않는(phrase independent) 구분(diarization)에 사용되는 화자 ID 정보와도 다르다. 이는, 음성의 음소 컨텐츠를 알 수 없다는 것을 보상하는, 구문에 의존하지 않는 알고리즘을 사용한다.
사운드 임베딩은, 환경 정보는 포함하지만 음성 정보는 포함하지 않는 공간에 있다. 이러한 공간은 인코더를 트레이닝하는 과정을 통해 학습될 수 있다. 이 경우, 트레이닝은 많은 목소리, 억양 및 환경적 변이를 포함하며, 모두 사전 정의된 핵심 구문 음소를 말하는 동안의 것이다.
사운드 임베딩 공간을 학습하는 것은 데이터로부터 구문에 의존한 i-벡터 또는 x-벡터 공간을 학습하는 것과 유사하다. 예를 들어 성별, 억양 또는 노이즈 등에 따라 카테고리로 라벨링된 데이터에 대해 트레이닝할 필요가 없다. 임베딩 공간은 이 정보를 학습한다. 조건부 음향 모델과의 공동 트레이닝을 사용하지 않는 시스템의 경우 x-벡터용이나 또는 i-벡터용과 같은 기성품 인코더 모델 또는 제3자 인코더 모델을 사용할 수 있다.
인코더
도 4(a)는 사운드 특성에 대한 음향 모델 컨디셔닝을 나타내는 도면이다. 인코더(41)는 핵심 구문 오디오를 수신하고 사운드 임베딩을 계산한다. 핵심 구문의 끝에 또는 그 부근에서 사운드 임베딩이 저장된다.
인코더는 수 밀리 초정도로 작은 오디오에 대해서 동작할 수 있다. 이는, 구문 스포터가 트리거되기 전 0.2 초 또는 1.0 초와 같이 일정한 기간 동안 버퍼링된 오디오 세그먼트에 대해 동작할 수 있다. 이 인코더는, VAD(Voice Activity Detector)가 음성을 검출해서 트리거되는 시점이나, 그 직전이나 또는 그 직후에 시작되어서 구문 스포터가 트리거되는 시점까지나, 그 직전까지나 또는 그 직후까지 이어지는 오디오 세그먼트에 대해서 작동할 수 있다. 인코더는, 핵심 구문이 아닌 인식된 단어가 완료된 직후에 시작되어서 핵심 구문이 인식되는 시점까지, 그 직전까지 또는 그 직후까지 이어지는 오디오 세그먼트에 대해 작동할 수 있다. 인코더는 VAD가 끝난 시점부터 VAD가 시작되는 시점까지의 비-음성 오디오 세그먼트에 대해 작동할 수 있다. 인코더가 사용할 핵심 구문 오디오를 분할하는 데 다양한 메커니즘이 가능하다. 인코더가 주로, 음성, 억양 및/또는 환경 정보는 포함하지만 선험적으로 알고 있지 않은 음소의 음성은 포함하지 않는 사운드를 분석한다는 점이 중요하다.
도 4(a)에서, 조건부 음향 모델(42)은 발언 오디오 및 저장된 사운드 임베딩을 취해서 음소 확률을 추론한다. 저장된 사운드 임베딩은 변경되지 않고 유지되는 것으로, 새로운 핵심 구문이 검출되어서 인코더(41)가 사운드 임베딩을 재생성하기 위해 다시 실행될 때나 또는 세션이 종료되거나 스피커 또는 환경이 변경되었을 수 있을 정도로 오랜 시간이 경과했을 때에만 교체된다.
복수 인코더
공동 트레이닝되는 인코더 및 조건부 음향 모델의 경우, 일반적으로 하나의 인코더가 양호하게 트레이닝되는 것이, 정확도 향상을 달성하도록 컴퓨팅 리소스를 가장 효율적으로 사용하는 것이 될 것이다. 그러나, 일부 구현예의 경우에, 기성 인코더나, 서로 다른 코드베이스로부터 인코더나 또는 특정 애플리케이션에 최적화된 인코더와 같은, 사전 트레이닝된 인코더를 사용하는 것이 유용할 수 있다. 이는 최소한의 리트레이닝 작업으로 다양한 애플리케이션에 맞게 시스템을 커스토마이즈할 수 있는 모듈성을 제공할 수 있다.
또한, 하나 이상의 인코더를 갖는 것이 바람직할 수도 있다. 예를 들어, 많은 애플리케이션 또는 많은 언어에 유용한 일반적인 사운드 임베딩 인코더를 구비하고, 이후 특정 애플리케이션 또는 언어에 대한 정확도를 향상시키는 모듈식 인코더를 구비하는 것이 유용하다. 그 간단한 예로는 성별 검출 인코더 및 언어 검출 인코더를 구비한 시스템을 들 수 있으며, 각각 조건부 음향 모델에 유용한 입력인 핵심 구문의 사운드 임베딩을 인코딩한다.
이론적으로는, 사용 가능한 인코더의 수 및 조건부 음향 모델로의 입력으로서 사용될 수 있는 사운드 임베딩의 수에는 제한이 없다. 각각은 핵심 구문 음성 오디오를 처리해서 1이상의 차원 값의 사운드 임베딩을 출력한다. 도 4(b)는 복수의 인코더(43)를 사용해서 복수의 사운드 임베딩을 생성하는, 사운드 임베딩에 대해 음향 모델 컨디셔닝을 행하는 도면이다. 핵심 구문 처리가 종료되면 다수의 사운드 임베딩이 저장되고, 음소 확률을 예측하기 위해 발언 오디오에 대해 작동하는 조건부 음향 모델(44)로의 입력으로서 사용된다.
또한, 상이한 인코더 및 음향 모델이 서로 다른 샘플링 레이트 또는 비트 깊이로 작동하는 것도 가능하다. 이는 예를 들어, 인코더가 원시 입력 오디오에 대해서는 높은 정확도로 작동하지만, 압축된 오디오를 대역폭이 제한된 접속을 통해서 음향 모델로 전송하는 경우나, 혹은 구문 스포터가 전력을 절약하기 위해 낮은 샘플링 속도로 오디오를 캡처하는 경우에 유용할 수 있으며, 오디오 세그먼트는 음향 임베딩을 계산하는 데 사용되는 반면 음향 모델이 발언 음성에 대해 실행하는 샘플링 속도가 증가된다.
구술 시스템
사운드 임베딩에 대한 음향 모델 컨디셔닝은 범용 가상 어시스턴트, 자동차 제어 시스템 및 기타 목소리 사용자 인터페이스에서의 질의 기초에(per-query basis) 유용하지만, 구술 시스템에서도 유용하다. 구술 시스템은 핵심 구문을 검출할 때마다 사운드 임베딩을 다시 계산하고 저장할 수 있다. 이는 핵심 구문 이후부터 세션이 끝날 때까지 또는 다른 핵심 구문이 캡처될 때까지 지속적으로 인식을 향상시킬 수 있다.
핵심 구문은 "마침표", "줄바꾸기" 및 "되돌리기"와 같은 일반적인 커맨드일 수 있다. 일반적으로 핵심 구문을 정확하게 검출하는 것이 중요하다. 음성 인식에서는 긴 단어가 확실성이 더 높기 때문에, 10개의 음소와 같이 특정 길이 이상의 단어 동안에 발성되는 오디오를 사용할 수도 있다. 임계값을 초과하는 인식 확률 스코어로 새로운 사운드 임베딩을 저장하도록 조절하는 것도 가능하다.
업데이트된 사운드 임베딩을 계산하고 저장하는 것은 구술 시스템의 사용자에게는 묵음으로 보이지 않게 일어날 수 있다. 이는 사용자가 선택할 수 있는 옵션 기능일 수도 있다.
트레이닝
데이터로부터 학습되지 않는 음향 모델을 설계하는 것이 가능하다. 그러나 이 섹션에서는 데이터로부터 음향 모델을 트레이닝하는 방법에 중점을 둔다. 이 섹션에서는 학습된 모델의 예시적인 타입으로서 신경망에 중점을 두지만, 은닉 마르코프 모델(HMM)과 같은 다른 타입의 통계 모델을 트레이닝할 수도 있다.
사운드 임베딩에 대해 컨디셔닝되는 음향 모델의 정확도가 개선됨으로 인해서, 목표 단어 오류율과 같은 주어진 목표 정확도와 관련된 목표를, 더 적은 트레이닝 시간, 더 적은 트레이닝 반복 및/또는 더 적은 트레이닝 데이터로, 달성하는 것이 가능하다.
종래의 음향 모델과의 주요 차이점은, 조건부 음향 모델이 목소리, 억양 및 환경 정보를 포함하는 오디오에 액세스하며, 사실상 알고 있는 구문의 음성이라는 사실에 의해서 암시적으로 "라벨링된다"는 것이다.
도 5는 음향 모델의 트레이닝을 나타낸다. 이는, 트레이닝 데이터로서, 핵심 구문 음성 세그먼트 및 핵심 구문에 바로 이어지는 발언 세그먼트를 모두 갖는 음성 녹음(53)을 사용한다. 인코더 모델(51)은 핵심 구문 음성 세그먼트를 처리해서 사운드 임베딩을 계산한다.
많은 트레이닝 시스템이 라벨링된 데이터에 대해 지도 학습(supervised learning)을 사용하지만 반드시 그래야 하는 것은 아니다. 이 경우, 발언 오디오는 라벨링된다(54). 라벨링은 전형적으로, 인간이 발언을 듣고, 머신 필사(machine transcription)가 올바른지 체크하며, 머신 필사가 잘못된 경우에 올바른 필사를 입력하는 것을 포함한다. 인간 라벨러는 인간이 읽을 수 있는 텍스트를 사용해서 라벨을 입력하는 경향이 있다. 이는 이후에 일련의 음소로 변환된다. 동음 이의어-동철 이음 이의어(homograph-heterophones)의 경우, 정황(context)으로부터 올바른 음소를 선택할 수도 있고, 이러한 샘플은 트레이닝에서 제외될 수도 있다. 방식에 관계없이, 음향 모델 트레이닝(55)으로의 입력은, 라벨링으로부터의 일련의 실측 자료 음소, 음소와 매칭되도록 시간 정렬된 오디오 샘플이나 스펙트럼 값 및 사운드 임베딩이다. 사운드 임베딩을 사용해서 트레이닝한 결과, 음향 모델(52)은, 사운드 임베딩없이 트레이닝된 음향 모델보다 더 정확하게 입력 음성 오디오에 대한 추론을 수행할 수 있다. 다른 트레이닝되는 모델과 마찬가지로, 트레이닝되는 음향 모델(52)은 트레이닝 데이터(53)의 코퍼스(corpus)가 다양하고 모델이 실제 사용에서 접하게 될 음성 범위에 걸쳐 있는 경우에 가장 정확할 것이다.
공동 트레이닝
사운드 임베딩을 계산하는 인코더는 디지털 신호 처리 알고리즘을 이용해서 구현될 수 있다. 또한 데이터로부터 학습된 통계 모델일 수도 있다. 이는 특히 신경망을 사용해서 구현될 수 있다. 인코더 신경망은 하나 이상의 컨볼루션 계층, 순환 노드, LSTM 또는 GRU와 같은 장기 순환 노드 및 적어도 하나 또는 2개의 "딥" 피드-포워드 계층을 포함할 수 있다.
핵심 구문 오디오의 다양한 범위의 사운드 임베딩을 제공하는 임베딩 공간을 학습하도록, 인코더 신경망을 트레이닝시킬 수 있다. 이는 조건부 음향 모델과는 독립적으로 수행될 수 있다. 트레이닝을 독립적으로 수행하는 것은, 서로 다른 팀이나 회사에 의해서 수행되거나, 혹은 서로 다른 프로젝트의 일부로서 또는 인코더는 저전력 임베디드 시스템에 최적화되는데 음향 모델은 고성능 클라우드 컴퓨팅 데이터 센터에 최적화되는 것과 같이 성능 요건이 서로 다른 경우에, 좋은 방식이 될 수 있다.
그러나, 인코더 모델과 조건부 음향 모델을 공동으로 트레이닝시키는 것도 가능하다. 도 6은 인코더 모델과 조건부 음향 모델의 공동 트레이닝을 나타낸다. 위에서 독립적인 음향 모델 트레이닝에 대해 설명한 바와 같이, 트레이닝은 트레이닝 데이터(63)의 코퍼스를 이용해서 시작된다. 트레이닝 데이터 샘플은 각각 핵심 구문에 바로 이어지는 발언을 포함한다. 발언 오디오 세그먼트가 라벨링된다(64). 핵심 구문 오디오는 인코더 모델(61)에 의해 인코딩되고, 최종적인 사운드 임베딩은 이들의 대응하는 발언 오디오 세그먼트 및 실측 자료 라벨과 함께 사용되어서 트레이닝(65)의 반복을 수행한다. 트레이닝 반복은 비용 함수에 따라서 음향 모델(62) 내의 파라미터들의 기울기를 계산하고, 이 기울기를 모델을 통해 역 전파한다. 이후, 이 기울기는 인코더 모델(66)의 트레이닝 프로세스로 역 전파되어서 인코더 모델(61)의 파라미터를 업데이트한다. 많은 반복을 실행함으로써 인코더 모델은 음향 모델의 컨디셔닝에 더 유용한 사운드 임베딩을 생성하는 것을 학습하게 되고, 음향 모델은 이 모델이 사운드 임베딩을 사용해서 독립적으로 트레이닝되는 경우보다 더 양호한 정확도를 획득하는 것을 학습하게 된다.
많은 ASR 시스템은, 음향 모델로부터 가정된(hypothesized) 음소 시퀀스에 대해언어 모델을 적용한다. 일부 실험적인 시스템에서는 음성 오디오 세그먼트로부터 직접 텍스트를 추론하는 데 공동 트레이닝된 음향 모델과 언어 모델 또는 단일 신경망을 사용한다. 핵심 구문 오디오로부터 계산된 사운드 임베딩에 대한, "종단 간(end-to-end)" 음성 인식 신경망과 같은 컨디셔닝을 통해서 전체적인 정확도를 향상시킬 수 있다. 이는, 음소 정보를 가진 신호를 포함한 신호로부터 사운드 임베딩의 목소리, 억양 및 환경 정보를 제외시키는 것을 학습한 신경망은, 오디오로부터 단어를 추론하는 것과 관련된 정보를 상위 레벨 특성의 추론으로부터 제외시키기 때문에, 바람직할 수 있다.
노이즈 혼합
깨끗한 음성 오디오에 대해 트레이닝된 음향 모델은, 노이즈가 있는 음성에 대해 트레이닝된 모델보다, 실세계의 노이즈 음성 오디오에서의 정확도가 떨어진다. 그러나, 아직 제작 또는 출시되지 않은 제품에 대한 ASR의 예상 노이즈 컨디션을 정확하게 나타내는 트레이닝 데이터를 수집하는 것은 어렵다. 일반적인 기술은 비교적 깨끗한 음성 오디오와 노이즈를 혼합해서 트레이닝 오디오 데이터를 컨디셔닝하는 것이다. 이는, 음성 오디오를 노이즈의 레코딩과 혼합하고, 신호 처리를 통해 의도적인 왜곡을 적용하여, 잔향과 같은 효과를 합성하고, 실세계의 컨디션을 모델링하는 유사한 기술에 의해 수행될 수 있다.
조건부 음향 모델은 실세계 발언 오디오에 나타날 수 있는 노이즈 및 왜곡을 나타내는 사운드 임베딩을 갖는다는 이점이 있다. 인식될 발언이 바로 후속하는 오디오로부터 사운드 임베딩이 계산되기 때문에, 그 가능성은 높다. 이는 노이즈 및 왜곡과 같은 환경 정보를 음향 모델에 제공하는 이점이 있다. 결과적으로 인코더 및 조건부 음향 모델의 최적의 공동 트레이닝을 수행하기 위해서는, 동일한 노이즈 또는 왜곡 프로파일을 핵심 구문과 발언 오디오 모두에 혼합시키는 것이 중요하다. 혼합되는 노이즈가 핵심 구문과 발언 사이에 동일할 필요는 없지만, 동일한 프로파일을 가져야 한다. 즉, 이는 동일한 레시피 또는 연속 노이즈의 단일 기록된 세션으로부터 생성되어야 한다.
도 7은 노이즈가 트레이닝에 혼합된 경우의 인코더 모델 및 조건부 음향 모델의 공동 트레이닝을 나타낸다. 여기서는, 음성 오디오 세그먼트의 샘플들을 포함하는 트레이닝 데이터(73)의 코퍼스를 사용하는데, 샘플들은 모두 핵심 구문 직후에 발성된 발언이 이어진다. 발언 오디오 세그먼트는 라벨링된다(74). 노이즈 모델(77)은 발언 음성 세그먼트(78) 및 핵심 구문 음성 세그먼트(79)와 혼합될 노이즈를 생성한다. 노이즈가 혼합된 핵심 구문은 인코더 트레이닝(76)에 사용되고, 인코더 모델(71)에 의해 사운드 임베딩을 계산하는데 사용된다. 사운드 임베딩 및 라벨은 음향 모델 트레이닝(75) 처리에서 노이즈가 혼합된 발언 음성 세그먼트와 함께 적용되어서 트레이닝된 조건부 음향 모델(72)을 생성한다.
음향 모델 트레이닝(75)은 기울기를 계산하고 이를 인코더 트레이닝(76)으로 역 전파해서, 각 트레이닝을 반복해서 인코더 모델(71)과 조건부 음향 모델(72)을 공동 트레이닝하게 한다.
컴퓨터화된 시스템
많은 컴퓨터화된 시스템이 높은 정확도의 ASR을 위해 조건부 음향 모델을 사용할 수 있다. 그 예로는, ASR를 수행하는 클라우드 서버와 같은 서버, 임베디드 시스템, 사물 인터넷(IoT) 장치, 휴대폰이나 기타 휴대용 핸드셋 장치, 개인용 컴퓨터 구술 시스템, 자동차 및 기타 차량용 음성 제어 시스템, 소매점 판매 시스템 및 장치를 들 수 있다. 다음 섹션에서는 다양한 다른 응용예에 적용될 수 있는 관련 기능을 설명하는 몇 가지 예를 설명한다.
클라이언트-서버 시스템
홈 스마트 스피커와 같은 일부 시스템은 클라이언트-서버 방식을 사용한다. 스마트 스피커 장치는 인코더 기능을 포함할 수 있다. 사용자가 웨이크(wake) 구문을 말하는 오디오를 캡처하면, 이 오디오는 핵심 구문 오디오로서 취해져서, 인코딩되어서 서버로 송신된다. 서버는 ASR, 자연어 이해(NLU), 제3자 API(Application Programming Interface)로부터의 데이터 요청 및 장치로의 커맨드의 반환과 같은 서비스를 제공할 수 있다.
도 8은, 일 실시예에 따른, 사용자(80)가 클라이언트로서의 장치(82)와 커뮤니케이션하는 것을 도시하며, 장치(82)는 네트워크(83)를 통해 서버(81)에 연결되어 있다. 장치(82)는 핵심 구문 직후에 발언이 후속하는 오디오를 수신한다. 장치(82)는 소프트웨어로 구현된 인코더(86)에 의해 핵심 구문 오디오를 처리해서 핵심 구문 오디오로부터 사운드 임베딩을 계산한다. 장치(82)는 사운드 임베딩을 메모리에 저장한 후, 계속해서 저장된 사운드 임베딩을 서버(81)로 전송하고, 음성에서 발언 오디오를 캡처하며, 발언 오디오를 서버(81)로 전송한다. 서버(81)는 조건부 음향 모델(85)을 사용해서 ASR(84)을 수행하며, 이들은 모두 고성능 프로세서의 소프트웨어로 구현된다. 조건부 음향 모델(85)은 장치(82)가 송신한 사운드 임베딩을 사용한다.
상이한 장치들이 그들의 컴퓨팅 능력에 기초해서 서로 다른 인코더를 사용하는 경우에, 장치에 사운드 임베딩을 인코딩하는 것이 바람직할 수 있다. 예를 들어 스마트 스피커와 같은 벽에 플러그된 장치는 일반적으로 스마트 폰과 같은 배터리 전원을 사용하는 휴대용 장치보다 더 큰 처리 성능을 유지할 수 있다. 장치에서 인코더를 실행하면, 웨이크 구문 오디오를 네트워크를 통해 서버로 전송할 필요가 없기 때문에 유용할 수 있다.
통합 시스템
인코더(86), ASR(84) 및 조건부 음향 모델(85)과 동등한 기능을 사용자에게 로컬한 장치 내에서 구현하는 것도 가능하다. 이렇게 하면, 장치는 인터넷 접속없이도 음성 인식을 수행할 수 있기 때문에 유용할 수 있다. 이는, 모바일 무선 네트워크 접속이 없는 장소로 이동할 수 있는 자동차나 혹은 사용자가 여행 중에 "비행기 모드"로 전환하거나 개인 정보를 유지할 수 있는 모바일 장치의 경우에 중요하다.
또한, 네트워크 접속이 가능할 때에는 사운드 임베딩 및 발언 오디오를 서버로 전송하지만, 네트워크 접속이 불가능할 때에는 로컬 ASR 모드로 전환되는 듀얼 모드 시스템을 구비할 수도 있다.
서버 시스템
인코더(86), ASR(84) 및 조건부 음향 모델(85)의 기능이 모두 서버에서 수행될 수도 있다. 이를 위해서는, 핵심 구문의 오디오는 인코더 기능부가 처리할 수 있도록 클라이언트로부터 서버로 송신되어야 한다. 이는, 서버 운영자가 인코더 또는 조건부 음향 모델을 쉽게 업그레이드할 수 게 하는 이점이 될 수 있다. 또한, 서버는 일반적으로 클라이언트 장치보다 훨씬 더 많은 처리 능력을 갖고 있으므로, 로컬 인코더를 복잡하게 하는 일 없이, 오디오를 서버에 전달하기만 하면 되는 단순한 클라이언트를 이용해서 시스템을 설계하는 것이 더 용이하기 때문에 이점이 될 수 있다.
도 9(a)는 다수의 블레이드를 가진 데이터 센터의 서버 시스템(91)을 나타낸다.
도 9(b)는 사운드 특성에 대해 음향 모델을 컨디셔닝하는 데 유용할 수 있는 서버 시스템의 기능 블록도이다. 서버 시스템(91)은 중앙 처리 장치(CPU)(92)의 하나 이상의 클러스터 및 그래픽 처리 장치(GPU)(93)의 하나 이상의 클러스터를 포함한다. 다양한 구현예는 추론과 트레이닝 중 하나 또는 둘 모두에 CPU 및 GPU 중 적어도 하나를 사용할 수 있다. 또한, FPGA(field programmable gate array), ASIC(application specific integrated circuits), TPU(tensor processing unit) 또는 기타 보조 프로세서, 가속기 또는 특수 장치를 사용할 수도 있다.
CPU(92) 및 GPU(93)는 상호 접속부(94)를 통해서 랜덤 액세스 메모리(RAM) 장치(95)에 접속된다. RAM 장치는, 사운드 임베딩, CPU 및 GPU용 소프트웨어 명령어, 신경망 또는 기타 모델의 파라미터 값, 오디오 데이터, 운영 체제 소프트웨어 및 시스템 동작에 필요한 기타 데이터를 저장할 수 있다.
서버 시스템(91)은 상호 접속부(94)에 접속된 네트워크 인터페이스(96)를 더 포함한다. 네트워크 인터페이스(96)는 사운드 임베딩, 발언의 음성 오디오, 및 경우에 따라서는 핵심 구문과 같은 데이터, 및 시스템 운영에 필요한 기타 데이터를 원격 클라이언트 장치와 송수신한다.
사용자 장치
전술한 바와 같이, 많은 타입의 장치가 음성 제어 인터페이스를 사용자에게 제공할 수 있다. 도 10은 일례로 휴대 전화를 나타낸다. 사용자(100)는 휴대 전화(101)에 음성 오디오를 제공한다. 휴대 전화(101)는 비행기 형상의 아이콘(102)으로 표시된 바와 같이 비행기 모드에 있다.
휴대 전화(101)는 음성 오디오를 수신하고 핵심 구문의 음성 오디오로부터 사운드 임베딩을 인코딩하는 인코더(106)를 포함한다. 휴대 전화(101)는 음성 오디오 및 사운드 임베딩을 수신하는 ASR 기능부(104)를 더 포함한다. ASR 기능부(104)는 사운드 임베딩을 사용해서 음성 오디오로부터 음소 확률을 추론하는 음향 모델(105)을 포함한다.
그 결과, 휴대폰은 사용자의 음성을 인식하고, 장치의 RAM에 저장된 앱을 열거나 음악이나 영화를 재생하는 등의 로컬 기능을 수행할 수 있다.
SoC
많은 내장 장치, IoT 장치, 모바일 장치 및 다이렉트 사용자 인터페이스를 구비한 기타 장치가 SoC에 의해 제어되고, SoC에 의해 수행되는 ASR를 갖는다. SoC는 통합 프로세서 및 장치 기능을 제어하기 위한 수십 또는 수백 개의 인터페이스를 갖는다. 도 11(a)는 인쇄 회로 기판에 표면 실장 납땜을 하기 위한 볼 그리드 어레이를 가진 패키지화된 시스템-온-칩(111) 장치의 바닥면을 도시한다. 다양한 SoC 구현예에서 다양한 패키지 형상 및 크기가 가능하다.
도 11(b)는 시스템-온-칩(111)의 블록도를 도시한다. 이것은 CPU 코어(112)의 멀티코어 클러스터 및 GPU 코어(113)의 멀티코어 클러스터를 포함한다. 프로세서는 네트워크-온-칩(114)을 통해서, 휘발성 프로그램 및 사운드 임베딩과 같은 데이터의 데이터 저장을 위해 오프-칩 DRAM(Dynamic Random Access Memory) 인터페이스(115)에 접속되고, 플래시 RAM 비일시적 컴퓨터 판독 가능 매체의 컴퓨터 프로그램 코드의 비휘발성 저장을 위해 플래시 인터페이스(116)에 접속된다. SoC(111)는 또한, ASR 필사를 사용자에게 표시하거나 가상 어시스턴트 커맨드의 결과를 표시하는 것과 같은 기능을 위한 그래픽 사용자 인터페이스를 표시하는 디스플레이 인터페이스(116), 및 다른 주변 장치에 필요한, 다양한 I/O 인터페이스에 접속하기 위한 I/O 인터페이스 모듈(117)을 갖고 있다. I/O 인터페이스를 통해 터치 스크린 센서, 위치 정보 수신기, 마이크, 스피커, 블루투스 주변 기기, 및 키보드와 마우스와 같은 USB 장치와 같은 센서를 사용할 수 있다. SoC(111)은 또한, 프로세서가 WiFi, 3G, 4G LTE(Long-term Evolution), 5G 및 기타 무선 인터페이스 표준 라디오와 이더넷 접속 하드웨어와 같은 유선 또는 무선 접속을 통해서 인터넷에 액세스할 수 있게 하는 네트워크 인터페이스(118)를 포함한다. 인터페이스(115)를 통해서 RAM 장치에 저장된 명령어를 실행하거나 인터페이스(116)를 통해 플래시 장치에 저장된 명령어를 실행함으로써, CPU(112) 및 GPU(113)는 본 명세서에 설명된 방법의 단계를 수행한다.
CRM
프로그램 코드, 사운드 임베딩과 같은 데이터, 핵심 구문 및 발언의 오디오 데이터, 운영 체제 코드 및 기타 필요한 데이터가 비일시적 컴퓨터 판독 가능 매체에 의해 저장된다.
도 12는 플래시 랜덤 액세스 메모리(RAM) 칩인 예시적인 컴퓨터 판독 가능 매체(121)를 도시한다. 데이터 센터는 일반적으로 플래시 메모리를 사용해서 서버 프로세서용 데이터 및 코드를 저장한다. 모바일 장치는 일반적으로 플래시 메모리를 사용해서 SoC 내의 프로세서용 데이터 및 코드를 저장한다. 비일시적 컴퓨터 판독 가능 매체(121)는 명령어를 포함하는 코드를 저장하고, 이 명령어는 하나 이상의 컴퓨터에 의해 실행될 때, 컴퓨터로 하여금 본 명세서에 설명된 방법의 단계를 수행하게 한다. 다양한 응용예에서 다른 디지털 데이터 저장 매체가 적합할 수도 있다.
특별 고지
도시되고 설명되는 예는 특정한 구어(certain spoken language)를 사용한다. 다른 언어 또는 언어들의 조합에 대해서는 유사하게 다양한 구현예가 동작한다. 디스플레이 화면이 없는 이어폰와 같은 일부 구현예는 스크린이 없다. 자동 판매기와 같은 일부 구현예는 고정되어 있다. 자동차와 같은 일부 구현예는 이동 가능하다. 휴대 전화와 같은 일부 구현예는 휴대형이다. 일부 구현예는 인체에 이식될 수도 있다. 일부 구현예는 키보드 또는 터치 스크린과 같은 수동 인터페이스를 포함한다. 일부 구현예는 자연어 표현의 한 형태로 인간의 생각을 사용하는 신경 인터페이스로 구성된다.
일부 구현예는 ARM 또는 x86 아키텍처를 가진 CPU와 같은 범용 CPU에서 소프트웨어를 실행함으로써 기능한다. 전력에 민감한 일부 구현예 및 특히 고성능이 필요한 일부 구현예는 하드웨어 최적화를 사용한다. 일부 구현예는 Synopsys의 ARC 프로세서 및 Cadence의 Xtensa 프로세서와 같이 특수한 시스템-온-칩에서 구성 가능한 명령어 세트를 가진 애플리케이션-커스토마이징 가능 프로세서를 사용한다. 일부 구현예는 FPGA에 버닝된(burned) 전용 하드웨어 블록을 사용한다. 일부 구현예는 GPU의 어레이를 사용한다. 일부 구현예는 최상의 성능을 제공하도록 커스토마이징된 로직을 가진 ASIC를 사용한다. 일부 구현예는 베릴로그 언어로 작성된 코드와 같은 하드웨어 기술 언어 코드에 있다.
원리, 특징 및 실시예를 인용하는 본 명세서의 설명은 구조적 등가물 및 기능적 등가물을 포함한다. 당업자라면 많은 수정 및 변경을 이해할 것이다.

Claims (8)

  1. 음성 오디오에서 음소 확률(phoneme probabilities)을 추론하는 컴퓨터-구현 방법으로서,
    핵심 구문의 제 1 음성 세그먼트로부터 사운드 임베딩을 인코딩하는 단계와,
    상기 사운드 임베딩을 저장하는 단계와,
    상기 제 1 음성 세그먼트 직후에 이어지는 제 2 음성 세그먼트 및 상기 저장된 사운드 임베딩을 입력으로서 갖는 음향 모델을 사용해서 상기 음소 확률을 추론하는 단계
    를 포함하는 방법.
  2. 제 1 항에 있어서,
    상기 음향 모델은 상기 음성 오디오의 라벨링된 샘플에 대해 트레이닝되고,
    각각의 샘플은 대응하는 핵심 구문 사운드 임베딩을 갖는
    방법.
  3. 제 2 항에 있어서,
    상기 샘플은, 다수의 노이즈 프로파일과 혼합된 다수의 목소리를 포함하고,
    상기 핵심 구문 사운드 임베딩은, 음성 오디오의 대응하는 샘플과 동일한 노이즈 프로파일과 혼합되는
    방법.
  4. 제 1 항에 있어서,
    상기 인코딩은 상기 음향 모델과 공동으로 트레이닝된 인코더 모델을 사용하는
    방법.
  5. 제 1 항에 있어서,
    상기 제 1 음성 세그먼트로부터 제 2 사운드 임베딩을 인코딩하는 단계와,
    상기 제 2 사운드 임베딩을 저장하는 단계
    를 더 포함하고,
    상기 음향 모델은 상기 저장된 제 2 사운드 임베딩을 추가 입력으로서 갖는
    방법.
  6. 컴퓨터화된 음성 처리 시스템으로서,
    상기 음성 처리 시스템은,
    핵심 구문의 음성 오디오를 수신하고,
    인코더 모델을 이용해서 상기 핵심 구문의 음성 오디오로부터 사운드 임베딩을 인코딩하며,
    상기 핵심 구문을 수신한 직후에 상기 사운드 임베딩을 메모리 장치에 저장하도록
    구성되고,
    상기 인코더 모델은, 상기 사운드 임베딩에 대해 그 출력을 컨디셔닝하는 음향 모델과 공동으로 트레이닝된 것인
    음성 처리 시스템.
  7. 제 6 항에 있어서,
    상기 음성 처리 시스템은,
    상기 핵심 구문의 음성 세그먼트 직후에 후속하는 알고 있지 않은(unknown) 구문의 발언의 음성 오디오를 수신하고,
    상기 저장된 사운드 임베딩 및 상기 발언의 상기 음성 오디오를 네트워크를 통해서 음성 인식 서버로 전송하도록
    더 구성되는
    음성 처리 시스템.
  8. 제 6 항에 있어서,
    상기 음성 처리 시스템은,
    상기 핵심 구문의 음성 세그먼트 직후에 후속하는 알고 있지 않은 구문의 발언의 음성 오디오를 수신하고,
    상기 발언 및 상기 사운드 임베딩의 상기 음성 오디오에 대해서 상기 음향 모델을 사용해서 상기 음소 확률을 추론하도록
    더 구성되는
    음성 처리 시스템.
KR1020210053411A 2020-04-27 2021-04-26 사운드 특성에 대한 음향 모델 컨디셔닝 KR20210132615A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US202062704202P 2020-04-27 2020-04-27
US62/704,202 2020-04-27

Publications (1)

Publication Number Publication Date
KR20210132615A true KR20210132615A (ko) 2021-11-04

Family

ID=75728619

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210053411A KR20210132615A (ko) 2020-04-27 2021-04-26 사운드 특성에 대한 음향 모델 컨디셔닝

Country Status (5)

Country Link
US (2) US11741943B2 (ko)
EP (1) EP3905237A1 (ko)
JP (1) JP2021184087A (ko)
KR (1) KR20210132615A (ko)
CN (1) CN113643693B (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102559488B1 (ko) * 2022-11-02 2023-07-25 주식회사 포지큐브 범죄 예방 서비스 방법 및 시스템

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11011162B2 (en) 2018-06-01 2021-05-18 Soundhound, Inc. Custom acoustic models
WO2022107393A1 (en) * 2020-11-20 2022-05-27 The Trustees Of Columbia University In The City Of New York A neural-network-based approach for speech denoising statement regarding federally sponsored research
US20230031702A1 (en) * 2021-07-14 2023-02-02 Google Llc Neural Networks based Multimodal Transformer for Multi-Task User Interface Modeling

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2482874B (en) 2010-08-16 2013-06-12 Toshiba Res Europ Ltd A speech processing system and method
GB2514943A (en) 2012-01-24 2014-12-10 Auraya Pty Ltd Voice authentication and speech recognition system and method
JP2015049254A (ja) 2013-08-29 2015-03-16 株式会社日立製作所 音声データ認識システム及び音声データ認識方法
CN103632667B (zh) 2013-11-25 2017-08-04 华为技术有限公司 声学模型优化方法、装置及语音唤醒方法、装置和终端
US9613624B1 (en) * 2014-06-25 2017-04-04 Amazon Technologies, Inc. Dynamic pruning in speech recognition
US10373612B2 (en) 2016-03-21 2019-08-06 Amazon Technologies, Inc. Anchored speech detection and speech recognition
CN107481728B (zh) 2017-09-29 2020-12-11 百度在线网络技术(北京)有限公司 背景声消除方法、装置及终端设备
CN108932944B (zh) 2017-10-23 2021-07-30 北京猎户星空科技有限公司 解码方法及装置
US10672380B2 (en) 2017-12-27 2020-06-02 Intel IP Corporation Dynamic enrollment of user-defined wake-up key-phrase for speech enabled computer system
US11011162B2 (en) * 2018-06-01 2021-05-18 Soundhound, Inc. Custom acoustic models
CN110619871B (zh) 2018-06-20 2023-06-30 阿里巴巴集团控股有限公司 语音唤醒检测方法、装置、设备以及存储介质
US11295739B2 (en) * 2018-08-23 2022-04-05 Google Llc Key phrase spotting
US10573312B1 (en) * 2018-12-04 2020-02-25 Sorenson Ip Holdings, Llc Transcription generation from multiple speech recognition systems
CN110085217A (zh) 2019-03-15 2019-08-02 中科恒运股份有限公司 语音导航方法、装置及终端设备
US20200090657A1 (en) 2019-11-22 2020-03-19 Intel Corporation Adaptively recognizing speech using key phrases

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102559488B1 (ko) * 2022-11-02 2023-07-25 주식회사 포지큐브 범죄 예방 서비스 방법 및 시스템

Also Published As

Publication number Publication date
US11741943B2 (en) 2023-08-29
CN113643693A (zh) 2021-11-12
US20210335340A1 (en) 2021-10-28
US20230352000A1 (en) 2023-11-02
JP2021184087A (ja) 2021-12-02
EP3905237A1 (en) 2021-11-03
CN113643693B (zh) 2024-02-09

Similar Documents

Publication Publication Date Title
US11545147B2 (en) Utterance classifier
CN108573693B (zh) 文本到语音系统和方法以及其存储介质
CN110310623B (zh) 样本生成方法、模型训练方法、装置、介质及电子设备
CN113643693B (zh) 以声音特征为条件的声学模型
JP6574169B2 (ja) 多方向の復号をする音声認識
US11043214B1 (en) Speech recognition using dialog history
US10685664B1 (en) Analyzing noise levels to determine usability of microphones
US11676572B2 (en) Instantaneous learning in text-to-speech during dialog
CN113393828A (zh) 一种语音合成模型的训练方法、语音合成的方法及装置
Keshet Automatic speech recognition: A primer for speech-language pathology researchers
WO2023029615A1 (zh) 语音唤醒的方法、装置、设备、存储介质及程序产品
US20230317092A1 (en) Systems and methods for audio signal generation
Pieraccini et al. From audrey to siri
Mital Speech enhancement for automatic analysis of child-centered audio recordings
Hickersberger et al. A voice command system for AUTONOMY using a novel speech alignment algorithm
Isaacs A comparison of the network speech recognition and distributed speech recognition systems and their effect on speech enabling mobile devices
Swamy Speech Enhancement, Databases, Features and Classifiers in Automatic Speech Recognition: A Review
Shih et al. Harmonic-Based Robust Voice Activity Detection for Enhanced Low SNR Noisy Speech Recognition System
SAINI SPEECH RECOGNITION IN THE PRESENCE OF WIDEBAND NOISE