KR20200044388A - 음성을 인식하는 장치 및 방법, 음성 인식 모델을 트레이닝하는 장치 및 방법 - Google Patents

음성을 인식하는 장치 및 방법, 음성 인식 모델을 트레이닝하는 장치 및 방법 Download PDF

Info

Publication number
KR20200044388A
KR20200044388A KR1020180125070A KR20180125070A KR20200044388A KR 20200044388 A KR20200044388 A KR 20200044388A KR 1020180125070 A KR1020180125070 A KR 1020180125070A KR 20180125070 A KR20180125070 A KR 20180125070A KR 20200044388 A KR20200044388 A KR 20200044388A
Authority
KR
South Korea
Prior art keywords
dialect
parameter
speech recognition
model
voice
Prior art date
Application number
KR1020180125070A
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 삼성전자주식회사
Priority to KR1020180125070A priority Critical patent/KR20200044388A/ko
Priority to EP19193254.0A priority patent/EP3640934B1/en
Priority to JP2019182034A priority patent/JP7171532B2/ja
Priority to CN201910953821.XA priority patent/CN111081230A/zh
Priority to US16/656,700 priority patent/US11282501B2/en
Publication of KR20200044388A publication Critical patent/KR20200044388A/ko

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/005Language recognition
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; 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 OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; 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 OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/14Speech classification or search using statistical models, e.g. Hidden Markov Models [HMMs]
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; 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 OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; 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 OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; 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 OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/221Announcement of recognition results

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Computational Linguistics (AREA)
  • Multimedia (AREA)
  • Acoustics & Sound (AREA)
  • Human Computer Interaction (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Theoretical Computer Science (AREA)
  • Biophysics (AREA)
  • General Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Biomedical Technology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Signal Processing (AREA)
  • Probability & Statistics with Applications (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Machine Translation (AREA)
  • Telephonic Communication Services (AREA)

Abstract

음성 인식 장치 및 방법, 음성 인식 모델을 트레이닝하는 장치 및 방법이 제공된다. 음성 인식 장치는 방언 입력 데이터로부터 파라미터 생성 모델에 기초하여 방언 파라미터를 생성할 수 있고, 생성된 방언 파라미터를 음성 인식 모델에 적용할 수 있으며, 방언 파라미터가 적용된 음성 인식 모델에 기초하여 음성 신호로부터 인식 결과를 생성할 수 있다. 트레이닝 장치는 상술한 음성 인식 모델 및 파라미터 생성 모델을 트레이닝시킬 수 있다.

Description

음성을 인식하는 장치 및 방법, 음성 인식 모델을 트레이닝하는 장치 및 방법{DEVICE AND METHOD TO RECOGNIZE VOICE AND DEVICE AND METHOD TO TRAIN VOICE RECOGNITION MODEL}
이하, 음성 인식 기술이 제공된다.
음성 인식 모델은 음성 인식을 수행하기 위한 모델로서, 개인화 장치에 입력된 음성 입력을 인식하여 음성 인식 결과를 출력한다. 음성 인식은 음성 입력에 포함된 언어 정보를 음성 입력에 대응되는 텍스트 정보로 변환하는 과정이다. 음성 인식 모델은 음성 입력을 분석하여 음성 입력에 포함된 언어 정보가 어떠한 텍스트 정보를 나타내는지를 추정할 수 있다. 음성 입력은 음성 시퀀스의 형태를 가질 수 있다.
일 실시예에 따른 음성을 인식하는 방법은, 파라미터 생성 모델에 기초하여, 방언 입력 데이터(dialect input data)으로부터 방언 파라미터(dialect parameter)를 생성하는 단계; 및 음성 인식 모델 및 상기 방언 파라미터에 기초하여, 음성 신호로부터 음성 인식 결과 를 생성하는 단계를 포함할 수 있다.
상기 음성 인식 결과를 생성하는 단계는 상기 음성 인식 모델의 적어도 일부 레이어에 상기 방언 파라미터를 적용하는 단계를 포함할 수 있다.
상기 방언 파라미터를 생성하는 단계는, 사용자로부터 수신되는 사용자 조작에 응답하여, 상기 사용자 조작이 지시하는 방언 정보 를 상기 방언 입력 데이터로 결정하는 단계; 및 상기 파라미터 생성 모델에 기초하여, 상기 결정된 방언 입력 데이터로부터 상기 방언 파라미터를 생성하는 단계를 포함할 수 있다.
상기 방언 파라미터를 생성하는 단계는, 방언 분류 모델에 기초하여 상기 음성 신호로부터 상기 방언 입력 데이터를 산출하는 단계; 및 상기 파라미터 생성 모델에 기초하여, 상기 방언 입력 데이터로부터 상기 방언 파라미터를 생성하는 단계를 포함할 수 있다.
상기 방언 입력 데이터를 산출하는 단계는, 상기 방언 분류 모델에 기초하여, 상기 음성 신호로부터 상기 음성 신호가 속하는 방언과 연관된 확률 데이터를 상기 방언 입력 데이터로서 산출하는 단계를 포함할 수 있다.
상기 방언 입력 데이터를 산출하는 단계는, 상기 방언 분류 모델에 기초하여 상기 음성 신호로부터 방언 정보를 산출하면서, 상기 방언 분류 모델의 적어도 한 레이어의 출력을 상기 방언 입력 데이터로 결정하는 단계를 포함할 수 있다.
상기 방언 파라미터를 생성하는 단계는, 방언 분류 모델에 기초하여 상기 음성 인식 모델의 적어도 한 레이어의 출력으로부터 상기 방언 입력 데이터를 산출하는 단계; 및 상기 파라미터 생성 모델에 기초하여, 상기 방언 입력 데이터로부터 상기 방언 파라미터를 생성하는 단계를 포함할 수 있다.
상기 방언 파라미터를 생성하는 단계는, 상기 파라미터 생성 모델에 기초하여, 상기 방언 입력 데이터로서 상기 음성 신호로부터 상기 방언 파라미터를 생성하는 단계를 포함할 수 있다.
상기 방언 파라미터를 생성하는 단계는, 상기 음성 인식 모델의 적어도 일부 레이어에서 출력된 특징 데이터로부터, 상기 파라미터 생성 모델에 기초하여, 상기 방언 파라미터를 생성하는 단계를 포함할 수 있다.
상기 방언 파라미터를 생성하는 단계는, 상기 음성 인식 모델에서 복수의 레이어들의 각각에 대한 방언 파라미터를, 해당 레이어로 입력되는 데이터로부터, 상기 파라미터 생성 모델에 기초하여, 생성하는 단계를 포함할 수 있다.
상기 방언 파라미터를 생성하는 단계는, 상기 방언 입력 데이터로서, 복수의 방언 그룹들 중 한 방언 그룹을 지시하는 데이터를 획득하는 단계를 포함할 수 있다.
상기 방언 파라미터를 생성하는 단계는, 현재 사용자에 대해 새로운 방언 입력 데이터가 수신될 때까지, 이전 사용자에 대해 식별된 기존 방언 파라미터를 유지하는 단계를 포함할 수 있다.
상기 방언 파라미터를 생성하는 단계는, 현재 사용자의 방언 그룹과 이전 사용자의 방언 그룹이 다른 경우에 응답하여, 상기 현재 사용자에 대해 새로운 방언 입력 데이터를 획득하는 단계를 포함할 수 있다.
상기 음성 인식 결과를 생성하는 단계는, 상기 방언 파라미터가 적용된 상기 음성 인식 모델에 기초하여, 상기 음성 신호를 음소 단위로 인식한 결과를 산출하는 단계를 포함할 수 있다.
음성을 인식하는 방법은 상기 음성 신호 및 상기 음성 신호에 대응하는 방언 입력 데이터에 기초하여, 상기 파라미터 생성 모델을 재트레이닝시키는 단계를 더 포함할 수 있다.
음성을 인식하는 방법은 사용자의 언어를 식별하여, 상기 식별된 언어에 대응하는 음성 인식 모델을 선택하는 단계를 포함하고, 상기 음성 인식 결과를 생성하는 단계는, 상기 선택된 음성 인식 모델에 상기 방언 파라미터를 적용하는 단계; 및 상기 방언 파라미터가 적용된 음성 인식 모델에 기초하여, 상기 음성 신호에 대한 상기 음성 인식 결과를 생성하는 단계를 포함할 수 있다.
상기 방언 파라미터를 생성하는 단계는, 상기 음성 신호를 획득할 때마다, 상기 방언 파라미터를 동적으로 생성하는 단계를 포함할 수 있다.
상기 음성 인식 결과를 생성하는 단계는, 상기 음성 신호를 정규화함으로써 정규화된 데이터(normalized data)를 획득하는 단계; 및 상기 방언 파라미터가 적용된 상기 음성 인식 모델에 기초하여, 상기 정규화된 데이터로부터 음성 인식 결과를 생성하는 단계를 포함할 수 있다.
일 실시예에 따른 음성을 인식하는 장치는, 파라미터 생성 모델 및 음성 인식 모델을 저장한 메모리; 및 상기 파라미터 생성 모델에 기초하여 방언 입력 데이터로부터 방언 파라미터를 생성하고, 상기 음성 인식 모델 및 상기 방언 파라미터에 기초하여 음성 신호로부터 음성 인식 결과를 생성하는 프로세서를 포함할 수 있다.
상기 프로세서는, 상기 음성 인식 모델의 적어도 일부 레이어에 상기 방언 파라미터를 적용할 수 있다.
상기 프로세서는, 사용자로부터 수신되는 사용자 조작이 지시하는 방언 정보를 상기 방언 입력 데이터로 결정하고, 상기 파라미터 생성 모델에 기초하여 상기 결정된 방언 입력 데이터로부터 상기 방언 파라미터를 생성할 수 있다.
상기 프로세서는, 방언 분류 모델에 기초하여 상기 음성 신호로부터 상기 방언 입력 데이터를 산출하고, 상기 파라미터 생성 모델에 기초하여 상기 방언 입력 데이터로부터 상기 방언 파라미터를 생성할 수 있다.
상기 프로세서는, 상기 파라미터 생성 모델에 기초하여, 상기 방언 입력 데이터로서 상기 음성 신호로부터 상기 방언 파라미터를 생성할 수 있다.
상기 프로세서는, 상기 음성 인식 모델의 적어도 일부 레이어에서 출력된 특징 데이터로부터, 상기 파라미터 생성 모델에 기초하여, 상기 방언 파라미터를 생성할 수 있다.
상기 프로세서는, 상기 음성 인식 모델에서 복수의 레이어들의 각각에 대한 방언 파라미터를, 해당 레이어로 입력되는 데이터로부터, 상기 파라미터 생성 모델에 기초하여 생성할 수 있다.
도 1은 일 실시예에 따른 음성 인식 시스템의 예시를 설명하는 도면이다.
도 2는 일 실시예에 따른 음성 인식 모델을 설명하는 도면이다.
도 3은 일 실시예에 따른 음성 인식 방법을 설명하는 흐름도이다.
도 4는 도 3에 도시된 음성 인식 방법을 수행하기 위해 사용되는 음성 인식 모델 및 파라미터 생성 모델을 설명하는 도면이다.
도 5는 다른 일 실시예에 따른 음성 인식 방법을 설명하는 흐름도이다.
도 6은 도 5에 도시된 음성 인식 방법을 수행하기 위해 사용되는 음성 인식 모델, 파라미터 생성 모델, 및 방언 분류 모델을 설명하는 도면이다.
도 7, 도 8a 및 도 8b는 일 실시예에 따른 파라미터 생성 모델로 제공되는 방언 입력 데이터를 설명하는 도면이다.
도 9는 일 실시예에 따른 음성 인식 장치의 구성에 관한 블록도이다.
도 10은 일 실시예에 따른 메모리에 저장된 음성 인식 모델, 파라미터 생성 모델, 및 방언 분류 모델을 설명하는 도면이다.
도 11은 일 실시예에 따른 음성 인식 모델을 트레이닝시키는 방법을 설명하는 흐름도이다.
도 12는 일 실시예에 따른 음성 인식 모델을 트레이닝시키는 장치의 구성을 도시한 블록도이다.
이하, 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다. 그러나, 특허출원의 범위가 이러한 실시예들에 의해 제한되거나 한정되는 것은 아니다.
아래 설명하는 실시예들에는 다양한 변경이 가해질 수 있다. 아래 설명하는 실시예들은 실시 형태에 대해 한정하려는 것이 아니며, 이들에 대한 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
실시예에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 실시예를 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수 개의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성 요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
또한, 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조 부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 실시예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
도 1은 일 실시예에 따라 개인화된 음성 인식 시스템의 예시를 설명하는 도면이다.
음성 인식 시스템은 음성 인식 장치 및 음성 인식 서버(130)를 포함할 수 있다.
음성 인식 장치는 주변의 소리를 수집하고, 수집된 주변의 소리로부터 디지털 전기 신호인 음성 신호를 획득하는 장치를 나타낼 수 있다. 예를 들어, 음성 인식 장치는 사람이 말하는 소리(sound)를 주변의 소리로서 수집할 수 있다. 음성 인식 장치는 주변의 소리로부터 해당 장치를 소유하는 사용자의 음성(voice)을 구별할 수 있다.
음성 인식 장치는 개별 사용자에 의해 소유되는 전자 장치일 수 있고, 예를 들어, 스마트폰, 스마트패드, 스마트밴드 등의 웨어러블 디바이스(wearable device), PDA(Personal Digital Assistance), 랩톱 등을 포함할 수 있다. 다른 예를 들어, 음성 인식 장치는 복수의 사용자들에 의해 공유되는 전자 장치일 수 있고, 예를 들어, 음성 인식 스피커(103), 음성 인식 TV(104) 등을 포함할 수 있다.
음성 인식 시스템은 사용자의 음성을 인식할 수 있다. 본 명세서에서 음성 인식(voice recognition)은 소리 신호에 포함된 사용자의 음성을 구별하고, 사용자의 음성을 말(language)로 변환하는 동작을 나타낼 수 있다. 예를 들어, 음성 인식은 사용자의 음성을 문자로 변환하는 동작을 나타낼 수 있다.
음성 인식 서버(130)는 음성 신호를 인식하여, 음성 신호에 대응하는 텍스트 데이터를 생성할 수 있다. 음성 인식 서버(130)는 음성 인식 장치로부터 사용자의 음성 신호를 수신할 수 있고, 수신된 음성 신호에 기초하여 음성 신호에 대응하는 텍스트 데이터를 생성할 수 있다. 음성 인식 서버(130)는 음성 신호로부터 변환된 텍스트 데이터를 음성 인식 장치로 전달할 수 있다. 음성 인식 서버(130)에 의해 생성된 텍스트 데이터는 음성 인식 장치의 사용자에게 제공되는 다양한 서비스에 활용될 수 있다.
예를 들어, 도 1에서 제1 단말(101)은 제1 사용자(111)에 의해 개인화된 전자 장치를 나타낼 수 있고, 제2 단말(102)은 제2 사용자(112)에 의해 개인화된 전자 장치를 나타낼 수 있다. 제1 단말(101)은 제1 사용자(111)로부터 제2 사용자(112)에 대응하는 제2 단말(102)로 전화를 걸라는 명령을 지시하는 음성 신호를 수집할 수 있다. 음성 인식 서버(130)는 제1 사용자(111)의 명령을 지시하는 음성 신호를 제1 단말(101)로부터 수신할 수 있다. 음성 인식 서버(130)는 음성 신호로부터 제1 사용자(111)의 명령에 대응하는 텍스트 데이터를 획득할 수 있다. 음성 인식 서버(130)는 획득된 텍스트 데이터를 제1 단말(101)로 전달할 수 있다. 제1 단말(101)은 제1 사용자(111)의 음성으로부터 인식된 텍스트 데이터의 수신에 응답하여, 통화 어플리케이션을 실행하고 제2 사용자(112)에게 전화를 걸도록 통화 어플리케이션을 제어할 수 있다.
다른 예를 들어, 음성 인식 장치는 음성 인식 서버(130)에 의해 인식된 텍스트 데이터를 이용하여 해당 장치의 사용자의 스케쥴을 생성하거나, 텍스트 데이터를 이용하여 웹 서비스의 데이터를 검색하거나, 텍스트 데이터를 이용하여 문자 메시지를 전송하거나, 텍스트 데이터를 이용하여 해당 장치에 저장된 데이터를 검색하는 서비스를 제공할 수 있다.
다만, 음성 인식 장치 및 음성 인식 서버(130)의 동작을 상술한 바로 한정하는 것은 아니다. 음성 인식 장치가 음성 신호를 수집하고, 자체적으로 해당 음성 신호를 인식할 수도 있다. 이하에서는 음성 인식 시스템에서 방언에 최적화된 방언 파라미터에 따라 음성 인식 모델을 변형시키고, 변형된 음성 인식 모델을 사용하여 음성 신호를 인식하는 동작을 설명한다.
도 2는 일 실시예에 따른 음성 인식 모델을 설명하는 도면이다.
도 1에서 설명된 음성 인식 시스템은 음성 인식 모델(220)을 이용할 수 있다. 음성 인식 모델(220)은 음성 신호로부터 텍스트 데이터를 출력하도록 설계된 모델을 나타낼 수 있다. 음성 인식 모델(220)은 음향 모델(acoustic model) 및 언어 모델을 포함할 수 있다. 음성 인식 서버가 음성 인식 모델(220)을 저장하고, 음성 인식 서버가 음성 신호로부터 음성 인식 모델(220)에 기초하여 텍스트 데이터를 생성하는 실시예를 설명한다. 예를 들어, 음성 인식 장치가 음성 신호 또는 음성 신호로부터 변환된 특징 데이터를 음성 인식 서버로 전달할 수 있고, 음성 인식 서버는 전달된 정보를 이용하여 음성 인식을 수행할 수 있다. 다만, 이로 한정하는 것은 아니고, 음성 인식 장치가 자체적으로 음성 인식 모델(220)을 저장하고, 저장된 음성 인식 모델(220)을 이용하여 사용자의 음성을 인식할 수도 있다.
음향 모델은 음성 신호로부터 추출된 특징으로부터 음성 신호를 음소(phoneme) 단위로 인식하는 모델을 나타낼 수 있다. 예를 들어, 음성 인식 시스템은, 음향 모델에 의해 획득된 음성 신호를 음소 단위로 인식한 결과에 기초하여, 음성 신호가 나타내는 단어들을 추정할 수 있다.
언어 모델은 단어들 사이의 연결 관계에 기초한 확률 정보를 획득하도록 설계된 모델을 나타낼 수 있다. 언어 모델은 언어 모델에 입력된 단어에 연결될 다음 단어에 대한 확률 정보를 제공할 수 있다. 예를 들어, 언어 모델에 "this"의 단어가 입력되는 경우, 언어 모델은 "this" 다음에 "is" 또는 "was"가 연결될 확률 정보를 제공할 수 있다. 일실시예에 따르면, 음성 인식 시스템은 언어 모델에 의해 제공된 확률 정보에 기초하여 가장 확률이 높은 단어들 간의 연결 관계를 선택하고, 선택 결과를 음성 인식 결과로서 출력할 수 있다.
아래에서는, 음성 인식 모델(220) 중 음향 모델과 연관된 동작을 주로 설명한다. 일 실시예에 따른 음향 모델은 뉴럴 네트워크, 예를 들어, GMM (Gaussian Mixture Model), DNN (Deep Neural Network) 또는 BLSTM (Bidirectional Long Short Term Memory) 등과 같이 다양한 구조로 구현될 수 있다. 음향 모델이 구현될 수 있는 기계학습 구조를 상술한 바로 한정하는 것은 아니고, 하나 이상의 구조가 결합되는 형태로 구현될 수도 있다. 뉴럴 네트워크는 많은 수의 인공 노드들을 이용하여 복잡한 계산을 수행하는 하드웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현된 인식 모델을 나타낼 수 있다. 뉴럴 네트워크는 인공 노드들을 통해 인식 동작이나 학습 과정(learning process)을 수행할 수 있다.
일 실시예에 따른 뉴럴 네트워크는 복수의 레이어를 포함할 수 있다. 예를 들어, 뉴럴 네트워크는 입력 레이어, 하나 이상의 히든 레이어(221) 및 출력 레이어를 포함할 수 있다. 입력 레이어는 입력 데이터를 수신하여 히든 레이어(221)로 전달할 수 있고, 출력 레이어는 히든 레이어(221)의 노드들로부터 수신된 신호에 기초하여 출력 데이터를 생성할 수 있다.
하나 이상의 히든 레이어(221)가 입력 레이어 및 출력 레이어 사이에 연결될 수 있고, 음성 인식 시스템은 히든 레이어(221)를 통해 입력 데이터를 예측하기 쉬운 값으로 변환할 수 있다. 입력 레이어 및 하나 이상의 히든 레이어(221)에 포함된 노드들은 연결 가중치를 가지는 연결선을 통해 서로 연결될 수 있고, 히든 레이어(221) 및 출력 레이어에 포함된 노드들도 연결 가중치를 가지는 연결선을 통해 서로 연결될 수 있다. 뉴럴 네트워크 중에서 복수의 히든 레이어(221)를 포함하는 뉴럴 네트워크를 딥 뉴럴 네트워크(deep neural network)라 한다. 딥 뉴럴 네트워크를 학습 시키는 것을 딥 러닝(deep learning)이라 한다. 뉴럴 네트워크의 노드 중에서, 히든 레이어(221)에 포함된 노드를 가리켜 히든 노드(229)라 한다.
입력 레이어, 하나 이상의 히든 레이어(221) 및 출력 레이어는 복수의 노드들을 포함할 수 있다. 히든 레이어(221)는 CNN(convolutional neural network)에서의 컨볼루션 필터(convolution filter) 또는 완전 연결 레이어(fully connected layer)이거나, 특별한 기능이나 특징을 기준으로 묶인 다양한 종류의 필터 또는 레이어일 수 있다.
음향 모델은, 예를 들어, RNN (recurrent neural network)으로 구현될 수 있다. RNN은 이전 프레임의 히든 레이어(221)의 출력 값이 현재 프레임의 히든 레이어(221)에 다시 입력되는 네트워크를 나타낼 수 있다. RNN은 이전의 출력들이 새로운 출력의 계산 결과에 영향을 줄 수 있다.
일실시예에 따른 음성 인식 시스템은 음성 시퀀스(201)를 복수의 프레임들로 분할하고, 분할된 프레임에 대응하는 발음(utterence)을 예측할 수 있다. 음성 인식 시스템은, 음향 모델을 이용하여 음성 인식을 수행하고, 음향 모델은 입력 레이어, 히든 레이어(221) 및 출력 레이어를 포함할 수 있다. 출력 레이어는 입력 레이어에 입력된 프레임(210)에 대해 예측된 발음 결과(230)를 출력할 수 있다. 예를 들어, 음성 인식 장치 또는 음성 인식 서버는 각 히든 레이어(221)에 이전 히든 레이어에 포함된 이전 히든 노드(229)의 출력들을 연결 가중치를 가지는 연결선들을 통해 입력할 수 있고, 이전 히든 노드(229)의 출력들에 연결 가중치가 적용된 값들 및 활성화 함수에 기초하여 히든 레이어(221)에 포함된 히든 노드(229)의 출력을 생성할 수 있다. 일 예시에 따르면, 다음 히든 노드로 출력을 발화(fire)하기 위하여, 활성화 함수의 결과는 현재 히든 노드의 임계 값을 초과해야 한다. 이 경우, 노드는 입력 벡터들을 통하여 특정 임계 활성화 강도에 도달하기 전에는 다음 노드로 신호를 발화하지 않고, 비활성화 상태를 유지할 수 있다.
출력 레이어는 소프트맥스 레이어(softmax layer)일 수 있다. 일실시예에 따르면, 출력 레이어는 전체 발음들의 수와 동일한 개수의 노드들을 포함할 수 있다. 출력 레이어의 각 노드는 입력된 프레임(210)이 특정 발음일 확률을 나타낼 수 있다.
아래에서는, 음성 인식 동작을 설명한다. 음성 인식은 음성 인식 서버 또는 음성 인식 장치에서 수행될 수 있다.
도 3은 일 실시예에 따른 음성 인식 방법을 설명하는 흐름도이다.
우선, 단계(310)에서 음성 인식 장치는 파라미터 생성 모델에 기초하여, 방언 입력 데이터로부터 방언 파라미터를 생성할 수 있다. 방언 입력 데이터는 파라미터 생성 모델에 입력되는 데이터이다. 방언 입력 데이터는 방언과 연관된 데이터로서, 사용자가 속하는 방언 그룹을 지시하는 데이터일 수 있다. 방언 입력 데이터는, 예를 들어, 복수의 방언 그룹들 중 사용자의 언어가 속하는 하나의 방언 그룹을 지시하는 데이터일 수 있다. 다른 예를 들어, 방언 입력 데이터는 사용자가 사용하는 언어가 임의의 방언 그룹에 속하는 확률을 나타내는 확률 데이터일 수 있다. 다만, 방언 입력 데이터를 이로 한정하는 것은 아니다.
방언 그룹은 동일한 언어 내에서 지역, 인종, 및 문화 등에 따라 나타나는 방언을 분류하기 위한 그룹을 나타낼 수 있다. 예를 들어, 언어가 영어인 경우, 방언 그룹은 예를 들어, 원어민 영어(native English) 그룹, 미국 영어 그룹, 영국 영어 그룹, 필리핀 영어 그룹, 인도 영어 그룹, 한국식 영어 그룹, 미국 서부 영어 그룹, 미국 중부 영어 그룹, 및 미국 동부 영어 그룹 등을 포함할 수 있다. 다만, 방언 그룹을 이로 한정하는 것은 아니다. 언어 별로 나타나는 방언 특성(dialect characteristic)에 따라 방언 그룹이 분류될 수 있다.
방언 파라미터는 파라미터 생성 모델에 의해 생성된 파라미터이다. 방언 파라미터는 예를 들어, 임의의 방언이 가지는 언어적 특성을 나타내는 파라미터로서, 음성 인식 모델에 적용될 수 있다. 방언 파라미터는 음성 인식 모델에 적용되는 파라미터로서, 예를 들어, 음성 인식 모델의 적어도 한 레이어의 입력, 및 출력 등을 변형(modulate)하거나 스케일링(scaling)하는데 사용될 수 있다. 방언 파라미터는, 예를 들어, 배치 정규화(BN, batch normalization)의 파라미터(예를 들어, γ, β와 같은 파라미터)이거나, LHUC(Learning Hidden Unit Contributions)와 같이 활성화(activation) 이후 노드의 값을 스케일링(scaling)하는 파라미터일 수도 있다.
본 명세서에서 파라미터 생성 모델은 방언 입력 데이터로부터 방언 파라미터를 출력하는 모델로서, 예를 들어, 뉴럴 네트워크일 수 있다. 파라미터 생성 모델은 복수의 레이어들을 포함할 수 있다. 파라미터 생성 모델의 출력이 음성 인식 모델의 적어도 한 레이어에 반영되도록, 파라미터 생성 모델과 음성 인식 모델이 서로 연결될 수 있다.
그리고 단계(320)에서 음성 인식 장치는 음성 인식 모델 및 방언 파라미터에 기초하여, 음성 신호로부터 음성 인식 결과를 생성할 수 있다. 일 실시예에 따르면 음성 인식 장치는 파라미터 생성 모델로부터 산출된 방언 파라미터를 음성 인식 모델의 적어도 일부 레이어에 적용할 수 있다. 음성 인식 장치는 방언 파라미터를 음성 인식 모델에 적용함으로써, 음성 인식 모델을 동적으로 변형시킬 수 있다.
예를 들어, 방언 파라미터가 배치 정규화의 파라미터(이하, 배치 파라미터(batch parameter))인 경우, 음성 인식 장치는 음성 인식 모델의 적어도 한 레이어에 대해, 해당 레이어의 각 노드로 입력되는 데이터에 배치 파라미터를 적용할 수 있다. 음성 인식 장치는 배치 파라미터를 이용하여 음성 인식 모델에서 히든 레이어의 노드 입력(예를 들어, 정규화된 입력)을 변경(modify)함으로써, 해당 히든 레이어에 대한 새로운 노드 입력을 생성할 수 있다. 예를 들어, 음성 인식 장치는 제1 배치 파라미터 γ를 정규화된 입력에 곱(multiply)하고, 제2 배치 파라미터 β를 더함(add)으로써 새로운 노드 입력을 생성할 수 있다. 음성 인식 장치는 새로운 노드 입력을 해당 히든 레이어의 활성화 함수에 입력함으로써 해당 히든 레이어의 출력을 산출할 수 있다. 참고로, 상술한 구조는, 배치 정규화 레이어(batch normalization layer)가 히든 레이어의 이전에 연결된 구조로 구현될 수도 있다. 임의의 히든 레이어 이전에 연결되는 배치 정규화 레이어는, 해당 히든 레이어의 각 노드로 제공되는 입력을 변경하기 위한 배치 파라미터를 포함할 수 있다. 이 경우, 파라미터 생성 모델의 출력 레이어는 상술한 배치 정규화 레이어일 수 있고, 해당 배치 정규화 레이어는 음성 인식 모델에 통합(concatenate)될 수 있다.
배치 정규화 레이어는, 예를 들어, 음성 인식 모델의 히든 레이어들의 개수만큼 생성될 수 있고, 배치 정규화 레이어들의 각각은 그에 대응하는 히든 레이어에 연결될 수 있다. 각 배치 정규화 레이어는 그에 연결된 히든 레이어에 대한 배치 파라미터를 출력할 수 있다. 다만, 이로 한정하는 것은 아니고, 배치 정규화 레이어는 일부 히든 레이어에만 연결될 수도 있다. 배치 정규화 레이어의 배치 파라미터는 파라미터 생성 모델의 출력에 따라 동적으로 달라질 수 있다.
또한, 방언 파라미터의 적용을 상술한 바로 한정하는 것은 아니고, 설계에 따라 달라질 수 있다. 예를 들어, 방언 파라미터가 스케일 행렬인 경우, 음성 인식 장치는 음성 인식 모델의 적어도 한 히든 레이어의 출력에 스케일 행렬을 요소 연산(elementwise operation)(예를 들어, 행렬 곱)을 통해 적용할 수 있다. 음성 인식 장치는 파라미터 생성 모델로부터 각 히든 레이어에 대한 스케일 행렬을 산출하여 적용할 수도 있으나, 이로 한정하는 것은 아니다. 음성 인식 장치는 음성 인식 모델의 일부 레이어에 대해서만 스케일 행렬을 산출할 수도 있다.
음성 인식 장치는 변형된 음성 인식 모델에 기초하여, 음성 신호로부터 음성 인식 결과를 생성할 수 있다. 음성 인식 장치는 음성 신호를 정규화함으로써 정규화된 데이터(normalized data)를 획득하고, 방언 파라미터가 적용된 음성 인식 모델에 기초하여, 정규화된 데이터로부터 음성 인식 결과를 생성할 수 있다. 예를 들어, 음성 인식 장치는 방언 파라미터가 적용된 음성 인식 모델에 기초하여, 음성 신호를 음소 단위로 인식한 결과를 산출할 수 있다.
파라미터 생성 모델 및 음성 인식 모델은 함께 트레이닝될 수 있다. 파라미터 생성 모델 및 음성 인식 모델의 트레이닝은 하기 도 11 및 도 12에서 설명한다.
도 4는 도 3에 도시된 음성 인식 방법을 수행하기 위해 사용되는 음성 인식 모델 및 파라미터 생성 모델을 설명하는 도면이다.
음성 인식 모델(410)은 복수의 레이어들(411, 412, 413)을 포함할 수 있다. 복수의 레이어들(411, 412, 413)은, 예를 들어, LSTM(Long Short-Term Memory) 구조일 수 있으나, 이로 한정하는 것은 아니다. 음성 인식 모델(410)은 음성 신호(401)로부터 인식 결과(409)를 출력하도록 구성된 모델일 수 있다. 파라미터 생성 모델(420)은 복수의 레이어들(421, 422)을 포함할 수 있다. 파라미터 생성 모델(420)은 방언 입력 데이터(402)로부터 방언 파라미터를 출력하도록 구성된 모델일 수 있다. 도 4는 파라미터 생성 모델(420)의 출력 레이어가 음성 인식 모델(410)의 복수의 레이어들(411, 412, 413)의 각각에 통합된 구조를 도시한다.
일 실시예에 따른 음성 인식 장치는 사용자 조작에 기초하여 방언 입력 데이터(402)를 결정할 수 있다. 예를 들어, 음성 인식 장치는 사용자로부터 수신되는 사용자 조작에 응답하여, 사용자 조작이 지시하는 방언 정보를 방언 입력 데이터로 결정할 수 있다. 방언 정보는 사용자 조작에 의해 지정된 방언 그룹을 지시하는 정보일 수 있다.
음성 인식 장치는 파라미터 생성 모델(420)로부터 산출된 방언 파라미터를 음성 인식 모델(410)에 적용함으로써, 음성 인식 모델(410)을 변형(modify)할 수 있다. 음성 인식 장치는 변형된 음성 인식 모델(410)에 기초하여, 음성 신호(401)로부터 인식 결과(409)를 산출할 수 있다.
변형된 음성 인식 모델(410)의 각 레이어에서, 일부는 방언에 대한 특징을 추출하기 위한 파라미터(예를 들어, 방언 파라미터)를 포함할 수 있고, 나머지 부분은 언어에 대한 공통 특징을 추출하기 위한 공통 파라미터를 포함할 수 있다. 방언 파라미터는 각 사용자의 언어가 속하는 방언에 따라 동적으로 생성될 수 있다. 공통 파라미터는, 복수의 방언 그룹들의 각각이 공통적으로 가지는 특징이 트레이닝된 파라미터일 수 있다. 도 4에서 방언 파라미터가 각 레이어의 중간에 적용되고, 각 레이어의 나머지 부분이 공통 파라미터를 포함하는 것으로 도시되었으나, 이로 한정하는 것은 아니다. 방언 파라미터는 각 레이어의 입력 측에 적용될 수도 있다.
본 명세서에서 음성 인식 모델(410)이 레이어로 구성된 구조를 주로 설명하였으나, 이로 한정하는 것은 아니다. 음성 인식 모델(410)은 벡터를 포함할 수도 있다.
도 5는 다른 일 실시예에 따른 음성 인식 방법을 설명하는 흐름도이다.
우선, 단계(501)에서 음성 인식 장치는 음성 신호를 획득할 수 있다. 예를 들어, 음성 안식 장치는 마이크로폰(microphone)을 통해 음성 신호를 획득할 수 있다.
일 실시예에 따른 음성 인식 장치는 방언 분류 모델에 기초하여 음성 신호로부터 방언 입력 데이터를 산출할 수 있다. 방언 분류 모델은 음성 신호로부터 방언 입력 데이터를 출력하도록 구성된 모델을 나타낼 수 있다.
예를 들어, 단계(511)에서 음성 인식 장치는 음성 특징을 추출할 수 있다. 예를 들어, 음성 인식 장치는 방언 분류 모델의 일부 레이어에 기초하여, 음성 신호로부터 음성 특징을 추출할 수 있다.
이어서 단계(512)에서 음성 인식 장치는 방언 그룹을 예측할 수 있다. 예를 들어, 음성 인식 장치는 방언 분류 모델의 나머지 레이어에 기초하여, 음성 특징으로부터 방언 입력 데이터를 예측할 수 있다. 도 5에서 설명된 예시에서, 방언 입력 데이터는 복수의 방언 그룹들 중 해당 음성 신호가 속하는 방언 그룹을 지시하는 데이터일 수 있다. 다만, 이로 한정하는 것은 아니다.
일 실시예에 따르면, 음성 인식 장치는 방언 분류 모델에 기초하여, 음성 신호로부터 음성 신호가 속하는 방언과 연관된 확률 데이터를 방언 입력 데이터로서 산출할 수도 있다. 임의의 사용자로부터 음성 신호가 획득되는 경우에 응답하여, 음성 인식 장치는 획득된 음성 신호가 가지는 방언 특징을 지시하는 방언 입력 데이터를 생성할 수 있다. 여기서 생성된 방언 입력 데이터는, 개별 사용자가 고유하게 가지는 방언 특성을 지시하는 데이터일 수 있다. 상술한 바와 같이, 방언 입력 데이터가 상술한 확률 데이터인 경우, 해당 방언 입력 데이터는 사용자의 언어가 복수의 방언 그룹들의 각각에 속하는 확률을 나타낼 수 있다. 사용자의 언어는 복수의 방언 그룹들의 특성이 혼합되어 나타날 수 있고, 이러한 확률적인 방언 입력 데이터는 사용자의 언어에서 각 방언 그룹이 차지하는 비중(weight)을 나타낼 수 있다.
예를 들어, 임의의 사용자가 미국인으로서 프랑스 및 필리핀에서 거주한 경우, 해당 사용자의 언어는 미국식 영어 방언의 특성, 프랑스식 영어 방언의 특성, 및 필리핀식 영어 방언의 특성을 나타낼 수 있다. 일 실시예에 따른 방언 분류 모델에 기초하여 산출된 방언 입력 데이터는, 이러한 사용자의 언어가 가지는 복수 방언들이 결합된 복합적인 특성을 나타낼 수 있다.
그리고 단계(513)에서 음성 인식 장치는 방언 파라미터를 산출할 수 있다. 예를 들어, 음성 인식 장치는 상술한 단계(512)에서 산출된 방언 입력 데이터로부터 파라미터 생성 모델에 기초하여 방언 파라미터를 동적으로 생성할 수 있다. 일 실시예에 따른 음성 인식 장치는 확률 값으로 산출된 방언 입력 데이터를 이용하여, 개별 사용자에게 최적화된 방언 파라미터를 동적으로 생성할 수 있다. 따라서, 음성 인식 장치는, 파라미터 생성 모델에 기초하여, 사용자의 언어가 가지는 방언 그룹들의 결합된 특성을 나타내는 방언 입력 데이터로부터 방언 파라미터를 산출할 수 있다. 방언 파라미터는, 개별 사용자의 언어에서 각 방언 그룹이 차지하는 비중에 따라, 사용자의 언어에 내포된 복합적인 방언 특징이 추상화된 파라미터일 수 있다.
이어서 단계(521)에서 음성 인식 장치는 음성 인식 모델을 변형할 수 있다. 예를 들어, 음성 인식 장치는 방언 파라미터를 음성 인식 모델에 반영할 수 있다. 음성 인식 모델의 적어도 일부 레이어는, 동적으로 생성되는 방언 파라미터로 구성되는 부분을 포함할 수 있다.
그리고 단계(522)에서 음성 인식 장치는 음성 인식 결과를 계산할 수 있다. 예를 들어, 음성 인식 장치는 방언 파라미터가 적용된 음성 인식 모델에 기초하여 단계(501)에서 획득된 음성 신호로부터 음성 인식 결과를 계산할 수 있다. 방언 파라미터가 적용된 음성 인식 모델에서, 적어도 일부 레이어는 공통 파라미터 및 방언 파라미터를 포함할 수 있다.
상술한 바와 같이, 개별 사용자가 사용하는 언어의 방언 특성에 최적화된 방언 파라미터에 따라, 음성 인식 장치는 복합적인 방언 특성을 가지는 음성 신호에 대해서도 정확하게 음성을 인식할 수 있다. 또한, 음성 인식 장치는 음성 신호를 획득할 때마다, 방언 파라미터를 동적으로 생성할 수 있다. 음성 인식 장치는 동일한 사용자가 톤을 달리 한 음성을 획득한 경우에도, 해당 음성에 최적화된 방언 파라미터를 동적으로 생성할 수 있다.
도 6은 도 5에 도시된 음성 인식 방법을 수행하기 위해 사용되는 음성 인식 모델, 파라미터 생성 모델, 및 방언 분류 모델을 설명하는 도면이다.
음성 인식 모델(410)은 도 4에서 설명한 바와 유사하게, 복수의 레이어들을 포함할 수 있다. 음성 인식 모델(410)의 각 레이어는 공통 파라미터뿐 아니라 파라미터 생성 모델(420)로부터 생성된 방언 파라미터도 포함할 수 있다. 음성 인식 장치는 파라미터 생성 모델(420)에 입력되는 방언 입력 데이터(402)를, 방언 분류 모델(630)에 기초하여 생성할 수 있다.
방언 분류 모델(630)은 사용자의 언어가 가지는 방언 특성을 출력하도록 구성된 모델을 나타낼 수 있다. 예를 들어, 방언 분류 모델(630)은 음성 신호(401)로부터 방언 입력 데이터(402)를 출력하도록 설계될 수 있다. 여기서, 방언 입력 데이터(402)는 원 핫 인코딩(one-hot encoding) 기법에 따라 복수의 방언 그룹들 중 한 방언 그룹만을 지시하는 데이터일 수 있다. 다른 예를 들어, 방언 입력 데이터(402)는 사용자의 언어에서 각 방언 그룹의 특성이 차지하는 비중을 지시하는 확률 데이터일 수 있다.
다만, 이로 한정하는 것은 아니고, 방언 입력 데이터(402)는 임의의 음성 특징일 수도 있다. 예를 들어, 음성 인식 장치는 방언 분류 모델(630)에 기초하여 음성 신호(401)로부터 방언 정보를 산출하면서, 방언 분류 모델(630)의 적어도 한 레이어의 출력을 방언 입력 데이터(402)로 결정할 수 있다. 방언 분류 모델(630)의 임의의 레이어의 출력은, 음성 신호(401)가 추상화된 음성 특징을 지시하는 특징 데이터일 수 있다.
음성 인식 장치는 상술한 바와 같이 산출된 방언 입력 데이터(402)로부터, 파라미터 생성 모델(420)에 기초하여, 방언 파라미터를 산출할 수 있다. 음성 인식 장치는 산출된 방언 파라미터를 음성 인식 모델(410)에 적용할 수 있다. 음성 인식 장치는 방언 파라미터가 적용된 음성 인식 모델(410)에 기초하여, 음성 신호(401)로부터 인식 결과(409)를 생성할 수 있다.
도 6에서는 방언 분류 모델(630)이 음성 신호(401)로부터 방언 입력 데이터(402)를 출력하는 구조를 도시하였으나, 이로 한정하는 것은 아니다. 예를 들어, 음성 인식 장치는 음성 인식 모델(410)의 레이어로부터 산출된 특징 데이터를, 음성 신호(401) 대신, 방언 분류 모델(630)에 입력할 수 있다. 음성 인식 장치는 방언 분류 모델(630)에 기초하여 음성 인식 모델(410)의 적어도 한 레이어의 출력(예를 들어, 특징 데이터)으로부터 방언 입력 데이터(402)를 산출할 수 있다. 이후, 음성 인식 장치는 파라미터 생성 모델(420)에 기초하여, 방언 입력 데이터(402)로부터 방언 파라미터를 생성할 수 있다.
도 7, 도 8a 및 도 8b는 일 실시예에 따른 파라미터 생성 모델로 제공되는 방언 입력 데이터를 설명하는 도면이다.
도 7에 도시된 파라미터 생성 모델(420)은, 방언 입력 데이터(702)로서 음성 신호(401)를 이용할 수 있다. 음성 인식 장치는 파라미터 생성 모델(420)에 기초하여, 방언 입력 데이터(702)로서 음성 신호(401)로부터 방언 파라미터를 생성할 수 있다.
도 8a에 도시된 파라미터 생성 모델(420)은, 방언 입력 데이터(802)로서 음성 인식 모델(410)의 적어도 일부 레이어에서 출력된 특징 데이터(예를 들어, 음성 특징)을 이용할 수 있다. 음성 인식 장치는 음성 인식 모델(410)의 적어도 일부 레이어에서 출력된 특징 데이터로부터, 파라미터 생성 모델(420)에 기초하여, 방언 파라미터를 생성할 수 있다.
도 8b에 도시된 파라미터 생성 모델(420)은, 음성 신호 및 음성 인식 모델(410)의 각 레이어에서 출력된 특징 데이터를, 방업 입력 데이터(830)로서 이용할 수 있다. 일 실시예에 따르면 음성 인식 장치는, 음성 인식 모델(410)에서 복수의 레이어들의 각각에 대한 방언 파라미터를, 해당 레이어로 입력되는 데이터(예를 들어, 방언 입력 데이터)로부터, 파라미터 생성 모델(420)에 기초하여, 생성할 수 있다. 해당 레이어로 입력되는 데이터는, 예를 들어, 이전 레이어에서 출력된 특징 데이터 또는 음성 신호일 수 있다.
예를 들어, 파라미터 생성 모델(420)은 음성 인식 모델(410)의 각 레이어에 대응하는 복수의 파라미터 생성 레이어들(821, 822, 823)을 포함할 수 있다. 복수의 파라미터 생성 레이어들(821, 822, 823)의 각각은 음성 인식 모델(410)의 각 레이어와 연결될 수 있다. 복수의 파라미터 생성 레이어들(821, 822, 823)의 각각은 음성 인식 모델(410)에서 그에 대응하는 레이어를 위한 방언 파라미터를 생성하도록 구성될 수 있다. 도 8b에서 복수의 파라미터 생성 레이어들(821, 822, 823)의 각각으로 입력되는 방언 입력 데이터(830)는 제1 방언 입력(831), 제2 방언 입력(832), 제3 방언 입력(833), 및 방언 정보(839)를 포함할 수 있다.
음성 인식 장치는, 제1 파라미터 생성 레이어(821)에 기초하여, 제1 방언 입력(831)(예를 들어, 음성 신호(401))으로부터 제1 방언 파라미터를 생성할 수 있다. 제1 파라미터 생성 레이어(821)에서 출력된 제1 방언 파라미터는 음성 인식 모델의 제1 레이어(811)에 적용될 수 있다. 음성 인식 장치는 제2 파라미터 생성 레이어(822)에 기초하여, 제2 방언 입력(832)(예를 들어, 제1 레이어(811)에서 출력된 특징 데이터)으로부터 제2 방언 파라미터를 생성할 수 있다. 제2 파라미터 생성 레이어(822)에서 출력된 제2 방언 파라미터는 음성 인식 모델의 제2 레이어(812)에 적용될 수 있다. 음성 인식 장치는 제3 파라미터 생성 레이어(823)에 기초하여, 제3 방언 입력(833)(예를 들어, 제2 레이어(812)에서 출력된 특징 데이터)으로부터 제3 방언 파라미터를 생성할 수 있다. 제3 파라미터 생성 레이어(823)에서 출력된 제3 방언 파라미터는 음성 인식 모델의 제3 레이어(813)에 적용될 수 있다.
여기서, 음성 인식 장치는 파라미터 생성 모델(420)의 각 레이어에 방언 입력들의 각각과 함께 방언 정보(839)를 입력함으로써, 각 방언 파라미터를 생성할 수도 있다. 방언 정보(839)는 예를 들어, 사용자의 언어 그룹이 가지는 방언의 특징을 나타내는 특징 벡터일 수 있다. 음성 인식 장치는 예를 들어, 제1 파라미터 생성 레이어(821)에 제1 방언 입력(831)과 함께 방언 정보(839)를 입력할 수 있다. 음성 인식 장치는 제2 파라미터 생성 레이어(822)에 제2 방언 입력(832)과 함께 방언 정보(839)를 입력할 수 있다. 음성 인식 장치는 제3 파라미터 생성 레이어(823)에 제3 방언 입력과 함께 방언 정보(839)를 입력할 수도 있다.
음성 인식 장치는 음성 인식 모델(410)의 각 레이어에 대해 이전 레이어에서 출력된 특징 데이터로부터 파라미터 생성 모델(420)에 기초하여 생성된, 방언 파라미터를 적용함으로써, 보다 정확하게 방언을 인식할 수 있도록 음성 인식 모델을 변형할 수 있다.
음성 인식 장치는 도 7, 도 8a 또는 도 8b에서 생성된 방언 파라미터를 음성 인식 모델(410)에 포함시킬 수 있다.
도 9는 일 실시예에 따른 음성 인식 장치의 구성에 관한 블록도이다. 도 10은 일 실시예에 따른 메모리에 저장된 음성 인식 모델, 파라미터 생성 모델, 및 방언 분류 모델을 설명하는 도면이다.
음성 인식 장치(900)는 입출력 인터페이스(910), 프로세서(920), 및 메모리(930)를 포함할 수 있다.
입출력 인터페이스(910)는 사용자의 음성 또는 정답 텍스트 등을 입력 받거나 사용자에게 인식 결과 또는 가이드 텍스트를 제시하는 구성을 의미할 수 있다. 예를 들어, 입출력 인터페이스(910)는 사용자의 음성을 입력 받는 마이크로폰을 포함할 수 있다. 입출력 인터페이스(910)는 사용자로부터 정답 텍스트를 입력 받는 키보드, 터치 스크린 또는 터치 패드 등을 포함할 수 있다. 입출력 인터페이스(910)는 인식 결과 또는 가이드 텍스트를 제시하는 디스플레이를 포함할 수 있다.
프로세서(920)는 파라미터 생성 모델에 기초하여 방언 입력 데이터로부터 방언 파라미터를 생성할 수 있다. 프로세서(920)는 음성 인식 모델(1031) 및 방언 파라미터에 기초하여 음성 신호로부터 음성 인식 결과를 생성할 수 있다. 다만, 프로세서(920)의 동작을 이로 한정하는 것은 아니고, 프로세서(920)는 도 1 내지 도 8b에서 상술한 동작들을 수행할 수 있다.
메모리(930)는 프로세서(920)에 의해 실행될 명령들(instructions), 파라미터 생성 모델(1032), 방언 분류 모델(1033) 및 음성 인식 모델(1031)을 저장할 수 있다. 각 모델은 뉴럴 네트워크 기반의 음성 인식 모델(1031)일 수 있다. 각 모델이 뉴럴 네트워크인 경우, 메모리(930)는 뉴럴 네트워크의 각 레이어의 가중치 등과 같은 파라미터를 저장할 수 있다.
일 실시예에 따른 음성 인식 장치(900)는 현재 사용자에 대해 새로운 방언 입력 데이터가 수신될 때까지, 이전 사용자에 대해 식별된 기존 방언 파라미터를 유지할 수 있다. 또한, 음성 인식 장치(900)는 현재 사용자의 방언 그룹과 이전 사용자의 방언 그룹이 다른 경우에 응답하여, 현재 사용자에 대해 새로운 방언 입력 데이터를 획득할 수 있다. 따라서, 음성 인식 장치(900)는 사용자의 방언 특성이 변경되는 경우에만 방언 파라미터를 새로 산출할 수도 있다.
아울러, 도 1 내지 도 10에서는 음성 인식 모델(1031), 파라미터 생성 모델(1032), 및 방언 분류 모델(1033)은 트레이닝이 완료된 모델인 것으로 설명하였다. 음성 인식 장치(900)는 상술한 모델들을 추가적으로 트레이닝시킬 수도 있다. 예를 들어, 음성 인식 장치(900)는 음성 신호 및 음성 신호에 대응하는 방언 입력 데이터에 기초하여, 파라미터 생성 모델을 재트레이닝시킬 수 있다. 음성 인식 장치(900)는, 파라미터 생성 모델이 음성 신호로부터 주어진 방언 입력 데이터를 출력하도록, 파라미터 생성 모델을 트레이닝시킬 수 있다.
일 실시예에 따른 음성 인식 장치(900)는 사용자의 언어를 식별하여, 식별된 언어에 대응하는 음성 인식 모델(1031)을 선택할 수도 있다. 음성 인식 장치(900)는 복수의 언어들의 각각에 대응하는 음성 인식 모델(1031)을 저장할 수 있고, 각 음성 인식 모델(1031)에 대응하는 파라미터 생성 모델(1032), 및 방언 분류 모델(1033)을 추가적으로 저장할 수도 있다. 음성 인식 장치(900)는 선택된 음성 인식 모델(1031)에 방언 파라미터를 적용할 수 있다. 음성 인식 장치(900)는 방언 파라미터가 적용된 음성 인식 모델(1031)에 기초하여, 음성 신호에 대한 음성 인식 결과를 생성할 수 있다.
음성 인식 장치(900)는 스마트폰 등 개인 기기에 탑재될 수 있고, 사용자의 발음에 최적화된 음성 인식 기능을 제공할 수 있다. 음성 인식 장치(900)는 개인 기기가 아니더라도 홈 스피커 등 음성 인식 기능이 필요한 기기에 탑재될 수 있고, 전반적인 음성인식의 성능을 향상시킬 수 있다.
음성 인식 장치(900)는 각 방언 별 모델을 개별적으로 생성 및 관리할 필요 없이, 통합적인 음성 인식 모델(1031) 및 파라미터 생성 모델(1032)을 이용하여 정확한 음성 인식을 수행할 수 있다. 따라서, 서버 개발 및 유지 비용이 감소될 수 있다. 더 나아가, 음성 인식 장치(900)는 음성 인식에 기초한 엔드-투-엔드 서비스(end-to-end service)에도 적용될 수 있다.
도 11은 일 실시예에 따른 음성 인식 모델을 트레이닝시키는 방법을 설명하는 흐름도이다. 도 12는 일 실시예에 따른 음성 인식 모델을 트레이닝시키는 장치의 구성을 도시한 블록도이다.
일 실시예에 따르면 음성 인식 모델을 트레이닝시키는 장치(이하, 트레이닝 장치(1200))는 프로세서(1210) 및 메모리(1220)를 포함할 수 있다. 프로세서(1210)는 도 11에서 설명되는 동작을 아래와 같이 수행할 수 있다. 메모리(1220)는 음성 인식 모델(1221), 파라미터 생성 모델(1222), 및 방언 분류 모델(1223)을 저장할 수 있다. 또한, 메모리(1220)는 트레이닝 데이터(1200)를 저장할 수 있다.
트레이닝 데이터(1200)는 트레이닝 입력(1291) 및 그에 대응하는 트레이닝 출력(1292)의 쌍을 포함할 수 있다. 도 11 및 도 12에서 트레이닝 입력(1291)은 트레이닝 음성일 수 있고, 트레이닝 출력(1292)은 기준 인식 결과(예를 들어, 기준 발음(reference utterance))일 수 있다. 더 나아가 트레이닝 입력(1291)은 트레이닝 음성에 대응하는 방언 입력 데이터(예를 들어, 트레이닝 방언 정보)를 더 포함할 수도 있다.
우선, 단계(1110)에서 트레이닝 장치(1200)는 파라미터 생성 모델(1222)에 기초하여, 트레이닝 방언 정보로부터 임시 방언 파라미터(temporary dialect parameter)를 산출할 수 있다. 트레이닝 장치(1200)는, 트레이닝이 완료되기 전의 파라미터 생성 모델(1222)의 입력 레이어로부터 출력 레이어까지 트레이닝 방언 정보를 전파(propagate)시킴으로써 임시 방언 파라미터를 산출할 수 있다. 임시 방언 파라미터는 트레이닝이 완료되기 전 파라미터 생성 모델(1222)의 출력을 나타낼 수 있다.
그리고 단계(1120)에서 트레이닝 장치(1200)는 임시 방언 파라미터가 적용된 음성 인식 모델(1221)이 트레이닝 음성으로부터 기준 인식 결과(reference recognition result)를 출력하도록, 파라미터 생성 모델(1222) 및 음성 인식 모델(1221) 중 적어도 하나를 트레이닝시킬 수 있다. 트레이닝 장치(1200)는 트레이닝이 완료되기 전의 음성 인식 모델(1221)에 임시 방언 파라미터를 적용할 수 있다.
트레이닝 장치(1200)는 임시 방언 파라미터가 적용된 음성 인식 모델(1221)의 입력 레이어로부터 출력 레이어까지 트레이닝 음성을 전파시킴으로써 임시 출력을 산출할 수 있다. 트레이닝 장치(1200)는 임시 출력 및 기준 인식 결과에 기초하여 손실을 산출할 수 있다. 손실은 다양한 목적 함수에 의해 정의될 수 있고, 한정되지 않는다. 트레이닝 장치(1200)는 임시 출력 및 기준 인식 결과에 기초한 손실이 최소화되도록 파라미터 생성 모델(1222) 및 음성 인식 모델(1221)의 파라미터를 업데이트할 수 있다. 트레이닝 장치(1200)는 역전파 기법(back propagation)을 통해 파라미터 생성 모델(1222) 및 음성 인식 모델(1221) 둘 다의 파라미터를 함께 업데이트할 수 있다. 다만, 이로 한정하는 것은 아니고, 트레이닝 장치(1200)는 파라미터 생성 모델(1222) 및 음성 인식 모델(1221) 중 어느 한 모델의 파라미터만 업데이트하거나, 어느 한 모델을 먼저 업데이트한 후에 나머지 모델을 업데이트할 수도 있다. 트레이닝 장치(1200)는 손실이 수렴할 때까지 임시 출력 산출, 손실 산출, 및 파라미터 생성 모델(1222) 및 음성 인식 모델(1221)의 파라미터를 업데이트하는 동작을 반복할 수 있다.
도 6에서 도시된 방언 분류 모델(1223)은 별도로 트레이닝된 모델일 수 있다. 예를 들어, 트레이닝 장치(1200)는 음성 신호로부터 방언 정보를 출력하도록 방언 분류 모델(1223)을 트레이닝시킬 수 있다. 예를 들어, 트레이닝 장치(1200)는 방언 분류 모델(1223)의 입력 레이어로부터 출력 레이어로 트레이닝 음성을 전파시킴으로써 임시 방언 출력을 산출할 수 있다. 트레이닝 장치(1200)는 임시 방언 출력 및 기준 방언 정보 간의 손실이 최소화되도록 방언 분류 모델(1223)의 파라미터를 업데이트할 수 있다.
또한, 트레이닝 장치(1200)는 방언 분류 모델(1223)을 음성 인식 모델(1221) 및 파라미터 생성 모델(1222)과 함께 트레이닝시킬 수도 있다. 예를 들어, 트레이닝 장치(1200)는 상술한 임시 방언 출력을 트레이닝이 완료되지 않은 파라미터 생성 모델(1222)로 전파함으로써 임시 방언 파라미터를 산출할 수 있다. 상술한 바와 유사하게, 트레이닝 장치(1200)는 임시 방언 파라미터가 적용된 음성 인식 모델(1221)을 통해 임시 출력을 산출할 수 있다. 트레이닝 장치(1200)는 임시 출력 및 기준 인식 결과에 기초한 손실이 최소화되도록, 음성 인식 모델(1221), 파라미터 생성 모델(1222), 및 방언 분류 모델(1223) 중 하나 이상을 동시에 또는 순차적으로 트레이닝시킬 수 있다.
이상에서 설명된 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 장치 및 구성요소는, 예를 들어, 프로세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPA(field programmable array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기를 기초로 다양한 기술적 수정 및 변형을 적용할 수 있다.  예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.  
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.
900: 음성 인식 장치
910: 입출력 인터페이스
920: 프로세서
930: 메모리

Claims (26)

  1. 음성을 인식하는 방법에 있어서,
    파라미터 생성 모델에 기초하여, 방언 입력 데이터(dialect input data)으로부터 방언 파라미터(dialect parameter)를 생성하는 단계; 및
    음성 인식 모델 및 상기 방언 파라미터에 기초하여, 음성 신호로부터 음성 인식 결과를 생성하는 단계
    를 포함하는 음성을 인식하는 방법.
  2. 제1항에 있어서,
    상기 음성 인식 결과를 생성하는 단계는
    상기 음성 인식 모델의 적어도 일부 레이어에 상기 방언 파라미터를 적용하는 단계
    를 포함하는 음성을 인식하는 방법.
  3. 제1항에 있어서,
    상기 방언 파라미터를 생성하는 단계는,
    사용자로부터 수신되는 사용자 조작에 응답하여, 상기 사용자 조작이 지시하는 방언 정보를 상기 방언 입력 데이터로 결정하는 단계; 및
    상기 파라미터 생성 모델에 기초하여, 상기 결정된 방언 입력 데이터로부터 상기 방언 파라미터를 생성하는 단계
    를 포함하는 음성을 인식하는 방법.
  4. 제1항에 있어서,
    상기 방언 파라미터를 생성하는 단계는,
    방언 분류 모델에 기초하여 상기 음성 신호로부터 상기 방언 입력 데이터를 산출하는 단계; 및
    상기 파라미터 생성 모델에 기초하여, 상기 방언 입력 데이터로부터 상기 방언 파라미터를 생성하는 단계
    를 포함하는 음성을 인식하는 방법.
  5. 제4항에 있어서,
    상기 방언 입력 데이터를 산출하는 단계는,
    상기 방언 분류 모델에 기초하여, 상기 음성 신호로부터 상기 음성 신호가 속하는 방언과 연관된 확률 데이터를 상기 방언 입력 데이터로서 산출하는 단계
    를 포함하는 음성을 인식하는 방법.
  6. 제4항에 있어서,
    상기 방언 입력 데이터를 산출하는 단계는,
    상기 방언 분류 모델에 기초하여 상기 음성 신호로부터 방언 정보를 산출하면서, 상기 방언 분류 모델의 적어도 한 레이어의 출력을 상기 방언 입력 데이터로 결정하는 단계
    를 포함하는 음성을 인식하는 방법.
  7. 제1항에 있어서,
    상기 방언 파라미터를 생성하는 단계는,
    방언 분류 모델에 기초하여 상기 음성 인식 모델의 적어도 한 레이어의 출력으로부터 상기 방언 입력 데이터를 산출하는 단계; 및
    상기 파라미터 생성 모델에 기초하여, 상기 방언 입력 데이터로부터 상기 방언 파라미터를 생성하는 단계
    를 포함하는 음성을 인식하는 방법.
  8. 제1항에 있어서,
    상기 방언 파라미터를 생성하는 단계는,
    상기 파라미터 생성 모델에 기초하여, 상기 방언 입력 데이터로서 상기 음성 신호로부터 상기 방언 파라미터를 생성하는 단계
    를 포함하는 음성을 인식하는 방법.
  9. 제1항에 있어서,
    상기 방언 파라미터를 생성하는 단계는,
    상기 음성 인식 모델의 적어도 일부 레이어에서 출력된 특징 데이터로부터, 상기 파라미터 생성 모델에 기초하여, 상기 방언 파라미터를 생성하는 단계
    를 포함하는 음성을 인식하는 방법.
  10. 제1항에 있어서,
    상기 방언 파라미터를 생성하는 단계는,
    상기 음성 인식 모델에서 복수의 레이어들의 각각에 대한 방언 파라미터를, 해당 레이어로 입력되는 데이터로부터, 상기 파라미터 생성 모델에 기초하여, 생성하는 단계
    를 포함하는 음성을 인식하는 방법.
  11. 제1항에 있어서,
    상기 방언 파라미터를 생성하는 단계는,
    상기 방언 입력 데이터로서, 복수의 방언 그룹들 중 한 방언 그룹을 지시하는 데이터를 획득하는 단계
    를 포함하는 음성을 인식하는 방법.
  12. 제1항에 있어서,
    상기 방언 파라미터를 생성하는 단계는,
    현재 사용자에 대해 새로운 방언 입력 데이터가 수신될 때까지, 이전 사용자에 대해 식별된 기존 방언 파라미터를 유지하는 단계
    를 포함하는 음성을 인식하는 방법.
  13. 제1항에 있어서,
    상기 방언 파라미터를 생성하는 단계는,
    현재 사용자의 방언 그룹과 이전 사용자의 방언 그룹이 다른 경우에 응답하여, 상기 현재 사용자에 대해 새로운 방언 입력 데이터를 획득하는 단계
    를 포함하는 음성을 인식하는 방법.
  14. 제1항에 있어서,
    상기 음성 인식 결과를 생성하는 단계는,
    상기 방언 파라미터가 적용된 상기 음성 인식 모델에 기초하여, 상기 음성 신호를 음소 단위로 인식한 결과를 산출하는 단계
    를 포함하는 음성을 인식하는 방법.
  15. 제1항에 있어서,
    상기 음성 신호 및 상기 음성 신호에 대응하는 방언 입력 데이터에 기초하여, 상기 파라미터 생성 모델을 재트레이닝시키는 단계
    를 더 포함하는 음성을 인식하는 방법.
  16. 제1항에 있어서,
    사용자의 언어를 식별하여, 상기 식별된 언어에 대응하는 음성 인식 모델을 선택하는 단계
    를 더 포함하고,
    상기 음성 인식 결과를 생성하는 단계는,
    상기 선택된 음성 인식 모델에 상기 방언 파라미터를 적용하는 단계; 및
    상기 방언 파라미터가 적용된 음성 인식 모델에 기초하여, 상기 음성 신호에 대한 상기 음성 인식 결과를 생성하는 단계
    를 포함하는 음성을 인식하는 방법.
  17. 제1항에 있어서,
    상기 방언 파라미터를 생성하는 단계는,
    상기 음성 신호를 획득할 때마다, 상기 방언 파라미터를 동적으로 생성하는 단계
    를 포함하는 음성을 인식하는 방법.
  18. 제1항에 있어서,
    상기 음성 인식 결과를 생성하는 단계는,
    상기 음성 신호를 정규화함으로써 정규화된 데이터(normalized data)를 획득하는 단계; 및
    상기 방언 파라미터가 적용된 상기 음성 인식 모델에 기초하여, 상기 정규화된 데이터로부터 음성 인식 결과를 생성하는 단계
    를 포함하는 음성을 인식하는 방법.
  19. 제1항 내지 제18항 중 어느 한 항의 방법을 수행하기 위한 명령어를 포함하는 하나 이상의 컴퓨터 프로그램을 저장한 컴퓨터 판독 가능 기록 매체.
  20. 음성을 인식하는 장치에 있어서,
    파라미터 생성 모델 및 음성 인식 모델을 저장한 메모리; 및
    상기 파라미터 생성 모델에 기초하여 방언 입력 데이터로부터 방언 파라미터를 생성하고, 상기 음성 인식 모델 및 상기 방언 파라미터에 기초하여 음성 신호로부터 음성 인식 결과를 생성하는 프로세서
    를 포함하는 음성을 인식하는 장치.
  21. 제20항에 있어서,
    상기 프로세서는,
    상기 음성 인식 모델의 적어도 일부 레이어에 상기 방언 파라미터를 적용하는,
    음성을 인식하는 장치.
  22. 제20항에 있어서,
    상기 프로세서는,
    사용자로부터 수신되는 사용자 조작이 지시하는 방언 정보를 상기 방언 입력 데이터로 결정하고, 상기 파라미터 생성 모델에 기초하여 상기 결정된 방언 입력 데이터로부터 상기 방언 파라미터를 생성하는,
    음성을 인식하는 장치.
  23. 제20항에 있어서,
    상기 프로세서는,
    방언 분류 모델에 기초하여 상기 음성 신호로부터 상기 방언 입력 데이터를 산출하고, 상기 파라미터 생성 모델에 기초하여 상기 방언 입력 데이터로부터 상기 방언 파라미터를 생성하는,
    음성을 인식하는 장치.
  24. 제20항에 있어서,
    상기 프로세서는,
    상기 파라미터 생성 모델에 기초하여, 상기 방언 입력 데이터로서 상기 음성 신호로부터 상기 방언 파라미터를 생성하는,
    음성을 인식하는 방법.
  25. 제20항에 있어서,
    상기 프로세서는,
    상기 음성 인식 모델의 적어도 일부 레이어에서 출력된 특징 데이터로부터, 상기 파라미터 생성 모델에 기초하여, 상기 방언 파라미터를 생성하는,
    음성을 인식하는 장치.
  26. 제20항에 있어서,
    상기 프로세서는,
    상기 음성 인식 모델에서 복수의 레이어들의 각각에 대한 방언 파라미터를, 해당 레이어로 입력되는 데이터로부터, 상기 파라미터 생성 모델에 기초하여 생성하는,
    음성을 인식하는 장치.
KR1020180125070A 2018-10-19 2018-10-19 음성을 인식하는 장치 및 방법, 음성 인식 모델을 트레이닝하는 장치 및 방법 KR20200044388A (ko)

Priority Applications (5)

Application Number Priority Date Filing Date Title
KR1020180125070A KR20200044388A (ko) 2018-10-19 2018-10-19 음성을 인식하는 장치 및 방법, 음성 인식 모델을 트레이닝하는 장치 및 방법
EP19193254.0A EP3640934B1 (en) 2018-10-19 2019-08-23 Speech recognition method and apparatus
JP2019182034A JP7171532B2 (ja) 2018-10-19 2019-10-02 音声を認識する装置及び方法、音声認識モデルをトレーニングする装置及び方法
CN201910953821.XA CN111081230A (zh) 2018-10-19 2019-10-09 语音识别方法和设备
US16/656,700 US11282501B2 (en) 2018-10-19 2019-10-18 Speech recognition method and apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180125070A KR20200044388A (ko) 2018-10-19 2018-10-19 음성을 인식하는 장치 및 방법, 음성 인식 모델을 트레이닝하는 장치 및 방법

Publications (1)

Publication Number Publication Date
KR20200044388A true KR20200044388A (ko) 2020-04-29

Family

ID=67742193

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180125070A KR20200044388A (ko) 2018-10-19 2018-10-19 음성을 인식하는 장치 및 방법, 음성 인식 모델을 트레이닝하는 장치 및 방법

Country Status (5)

Country Link
US (1) US11282501B2 (ko)
EP (1) EP3640934B1 (ko)
JP (1) JP7171532B2 (ko)
KR (1) KR20200044388A (ko)
CN (1) CN111081230A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102350890B1 (ko) * 2021-08-23 2022-01-12 전남대학교산학협력단 휴대용 청력검사장치

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190136578A (ko) * 2018-05-31 2019-12-10 삼성전자주식회사 음성 인식 방법 및 장치
EP3970141B1 (en) * 2019-05-14 2024-02-28 Dolby Laboratories Licensing Corporation Method and apparatus for speech source separation based on a convolutional neural network
US11605379B2 (en) * 2019-07-11 2023-03-14 Lg Electronics Inc. Artificial intelligence server
KR20210010133A (ko) * 2019-07-19 2021-01-27 삼성전자주식회사 음성 인식 방법, 음성 인식을 위한 학습 방법 및 그 장치들
US11341961B2 (en) * 2019-12-02 2022-05-24 National Cheng Kung University Multi-lingual speech recognition and theme-semanteme analysis method and device
KR20210074636A (ko) * 2019-12-12 2021-06-22 엘지전자 주식회사 음향모델 생성방법
US20210224649A1 (en) * 2020-01-17 2021-07-22 Syntiant Systems and Methods for Neural Network Training via Local Target Signal Augmentation
CN112908296A (zh) * 2021-02-18 2021-06-04 上海工程技术大学 一种方言识别方法

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE4322372A1 (de) 1993-07-06 1995-01-12 Sel Alcatel Ag Verfahren und Vorrichtung zur Spracherkennung
US6424935B1 (en) * 2000-07-31 2002-07-23 Micron Technology, Inc. Two-way speech recognition and dialect system
US7340398B2 (en) 2003-08-21 2008-03-04 Hewlett-Packard Development Company, L.P. Selective sampling for sound signal classification
JP4466665B2 (ja) 2007-03-13 2010-05-26 日本電気株式会社 議事録作成方法、その装置及びそのプログラム
JP5056732B2 (ja) 2008-11-28 2012-10-24 パナソニック株式会社 スクリーン印刷装置およびスクリーン印刷方法
US8073693B2 (en) 2008-12-04 2011-12-06 At&T Intellectual Property I, L.P. System and method for pronunciation modeling
US20120109649A1 (en) 2010-11-01 2012-05-03 General Motors Llc Speech dialect classification for automatic speech recognition
US9966064B2 (en) * 2012-07-18 2018-05-08 International Business Machines Corporation Dialect-specific acoustic language modeling and speech recognition
KR20140066640A (ko) 2012-11-23 2014-06-02 삼성전자주식회사 다국어 음향 모델 구축 장치 및 이의 다국어 음향 모델 구축 방법, 그리고 그 방법을 수행하는 프로그램이 기록된 컴퓨터 판독 가능 매체
US9589564B2 (en) * 2014-02-05 2017-03-07 Google Inc. Multiple speech locale-specific hotword classifiers for selection of a speech locale
US9653093B1 (en) 2014-08-19 2017-05-16 Amazon Technologies, Inc. Generative modeling of speech using neural networks
KR101624926B1 (ko) 2014-12-17 2016-05-27 서울대학교산학협력단 딥 뉴럴 네트워크 기반 특징 보상 기법을 이용한 음성 인식 방법
US9477652B2 (en) * 2015-02-13 2016-10-25 Facebook, Inc. Machine learning dialect identification
KR102386854B1 (ko) * 2015-08-20 2022-04-13 삼성전자주식회사 통합 모델 기반의 음성 인식 장치 및 방법
CN108292507A (zh) * 2015-08-24 2018-07-17 福特全球技术公司 车辆动态声学模型
KR20170034227A (ko) 2015-09-18 2017-03-28 삼성전자주식회사 음성 인식 장치 및 방법과, 음성 인식을 위한 변환 파라미터 학습 장치 및 방법
KR102069699B1 (ko) 2016-01-18 2020-01-23 한국전자통신연구원 음성인식 장치 및 방법
CN107564513B (zh) 2016-06-30 2020-09-08 阿里巴巴集团控股有限公司 语音识别方法及装置
CN106251859B (zh) 2016-07-22 2019-05-31 百度在线网络技术(北京)有限公司 语音识别处理方法和装置
CN106952648A (zh) 2017-02-17 2017-07-14 北京光年无限科技有限公司 一种用于机器人的输出方法以及机器人
US11132998B2 (en) 2017-03-24 2021-09-28 Mitsubishi Electric Corporation Voice recognition device and voice recognition method
KR20190136578A (ko) 2018-05-31 2019-12-10 삼성전자주식회사 음성 인식 방법 및 장치

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102350890B1 (ko) * 2021-08-23 2022-01-12 전남대학교산학협력단 휴대용 청력검사장치

Also Published As

Publication number Publication date
CN111081230A (zh) 2020-04-28
US20200126534A1 (en) 2020-04-23
US11282501B2 (en) 2022-03-22
JP2020067658A (ja) 2020-04-30
EP3640934B1 (en) 2021-12-29
EP3640934A1 (en) 2020-04-22
JP7171532B2 (ja) 2022-11-15

Similar Documents

Publication Publication Date Title
KR20200044388A (ko) 음성을 인식하는 장치 및 방법, 음성 인식 모델을 트레이닝하는 장치 및 방법
CN111933129B (zh) 音频处理方法、语言模型的训练方法、装置及计算机设备
KR102369416B1 (ko) 복수의 사용자 각각에 대응하는 개인화 레이어를 이용하여 복수의 사용자 각각의 음성 신호를 인식하는 음성 신호 인식 시스템
CN107195296B (zh) 一种语音识别方法、装置、终端及系统
KR20200059703A (ko) 음성 인식 방법 및 음성 인식 장치
KR20190081248A (ko) 음성 인식 모델의 개인화 방법 및 장치
US10482182B1 (en) Natural language understanding system and dialogue systems
JP2016110082A (ja) 言語モデル学習方法及び装置、音声認識方法及び装置
JP2021515905A (ja) 音声認識方法、並びにその装置、デバイス、記憶媒体及びプログラム
KR20190129580A (ko) 음성 인식 모델을 개인화하는 방법 및 장치
CN105976812A (zh) 一种语音识别方法及其设备
KR102637339B1 (ko) 음성 인식 모델을 개인화하는 방법 및 장치
WO2014183373A1 (en) Systems and methods for voice identification
JP2020086436A (ja) 人工神経網における復号化方法、音声認識装置及び音声認識システム
KR20200083685A (ko) 실시간 화자 판단 방법
KR20210047709A (ko) 음성 인식 방법 및 음성 인식 장치
JP2020042257A (ja) 音声認識方法及び装置
CN112259089A (zh) 语音识别方法及装置
JP7164098B2 (ja) 音声を認識する方法及び装置
KR20190136578A (ko) 음성 인식 방법 및 장치
CN113314119A (zh) 语音识别智能家居控制方法及装置
EP4024393A2 (en) Training a speech recognition model
CN114121010A (zh) 模型训练、语音生成、语音交互方法、设备以及存储介质
CN114067793A (zh) 音频处理方法和装置、电子设备及可读存储介质
JP2020173441A (ja) 音声認識方法及び装置

Legal Events

Date Code Title Description
A201 Request for examination