KR102315732B1 - 음성 인식 방법, 디바이스, 장치, 및 저장 매체 - Google Patents
음성 인식 방법, 디바이스, 장치, 및 저장 매체 Download PDFInfo
- Publication number
- KR102315732B1 KR102315732B1 KR1020197028881A KR20197028881A KR102315732B1 KR 102315732 B1 KR102315732 B1 KR 102315732B1 KR 1020197028881 A KR1020197028881 A KR 1020197028881A KR 20197028881 A KR20197028881 A KR 20197028881A KR 102315732 B1 KR102315732 B1 KR 102315732B1
- Authority
- KR
- South Korea
- Prior art keywords
- candidate recognition
- result
- selection rule
- keyword
- voice
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 68
- 230000006870 function Effects 0.000 claims description 67
- 230000015654 memory Effects 0.000 claims description 16
- 230000004044 response Effects 0.000 claims description 6
- 238000004364 calculation method Methods 0.000 claims description 2
- 238000001514 detection method Methods 0.000 claims 1
- 230000000875 corresponding effect Effects 0.000 description 31
- 238000005516 engineering process Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 7
- 230000002596 correlated effect Effects 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 230000014509 gene expression Effects 0.000 description 3
- 230000006872 improvement Effects 0.000 description 3
- 230000001788 irregular Effects 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000013178 mathematical model Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L15/18—Speech classification or search using natural language modelling
- G10L15/183—Speech classification or search using natural language modelling using context dependencies, e.g. language models
- G10L15/19—Grammatical context, e.g. disambiguation of the recognition hypotheses based on word sequence rules
- G10L15/197—Probabilistic grammars, e.g. word n-grams
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L15/10—Speech classification or search using distance or distortion measures between unknown speech and reference templates
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/28—Constructional details of speech recognition systems
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/28—Constructional details of speech recognition systems
- G10L15/30—Distributed recognition, e.g. in client-server systems, for mobile phones or network applications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L15/16—Speech classification or search using artificial neural networks
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L2015/081—Search algorithms, e.g. Baum-Welch or Viterbi
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L2015/085—Methods for reducing search complexity, pruning
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L2015/088—Word spotting
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/22—Procedures used during a speech recognition process, e.g. man-machine dialogue
- G10L2015/223—Execution procedure of a spoken command
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Probability & Statistics with Applications (AREA)
- Artificial Intelligence (AREA)
- Machine Translation (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
본 출원은 음성 인식 방법, 장치, 및 디바이스, 및 저장 매체를 개시하고, 컴퓨터들의 분야에 속한다. 이러한 방법은, 음성 신호를 획득하는 단계; 이러한 음성 신호를 음성 인식 알고리즘에 따라 인식하여, n개의 후보 인식 결과들을 획득하는 단계; 실행 순서가 m개의 선택 규칙들에서의 j인 선택 규칙에 따라 n개의 후보 인식 결과들에서의 타겟 결과를 결정하는 단계; 실행 순서가 j인 선택 규칙에 따라 타겟 결과가 결정되지 않을 때 실행 순서가 j+1인 선택 규칙에 따라 n개의 후보 인식 결과들에서의 타겟 결과를 결정하는 단계를 포함한다. RNN 언어 모델에 따라 당혹도를 계산하는데 걸리는 긴 시간으로부터의 결과인 복수의 후보 인식 결과들로부터 타겟 결과를 선택하는 열악한 실시간의 문제가 해결되고, n개의 후보 인식 결과들로부터 타겟 결과를 선택하는 실시간이 개선된다.
Description
<관련 출원>
본 출원은 2017년 6월 29일자로 중국 특허청에 출원된 "SPEECH RECOGNITION METHOD AND APPARATUS"라는 명칭의 중국 특허 출원 제201710517737.4호에 대한 우선권을 주장하며, 이는 그 전체가 참조로 원용된다.
<기술의 분야>
본 출원의 실시예들은 컴퓨터들의 분야에, 특히, 음성 인식 방법 및 장치, 및 저장 매체에 관련된다.
음성 인식 기술은 음성 인식 디바이스를 통해 텍스트 정보로서 음성 정보를 인식하는 기술이다. 이러한 음성 인식 기술은, 음성 다이얼링, 음성 내비게이션, 스마트 홈 제어, 음성 검색, 및 청취/기입 데이터 입력과 같은, 시나리오들에 널리 적용된다
본 출원의 하나 이상의 실시예는 음성 인식 방법, 장치, 및 디바이스, 및 저장 매체를 제공하고, 하나 이상의 실시예는 RNN 언어 모델에 따라 당혹도를 계산하기 위해 음성 인식 디바이스에 의해 걸리는 긴 시간으로부터의 결과인 복수의 후보 인식 결과들로부터의 타겟 결과의 열악한 실시간 선택의 문제를 해결할 수 있다. 기술적 해결책들은 다음과 같다:
본 출원의 일 양태에 따르면, 음성 인식 방법이 제공된다. 이러한 방법은,
음성 신호를 획득하는 단계;
음성 인식 알고리즘에 따라 음성 신호를 인식하여, n개의 후보 인식 결과들을 획득하는 단계- 후보 인식 결과들은 음성 신호에 대응하는 텍스트 정보를 포함하고, n은 1보다 큰 정수임 -;
m개의 선택 규칙들 중에서 선택되는 선택 규칙에 따라 n개의 후보 인식 결과들 중에서 타겟 결과를 결정하는 단계- 선택 규칙은 j의 실행 순서를 갖고, 타겟 결과는 n개의 후보 인식 결과들에서의 음성 신호와의 최고 매칭 정도를 갖는 후보 인식 결과이고, m은 1보다 큰 정수이고, j의 초기 값은 1임 -; 및
j의 실행 순서를 갖는 선택 규칙에 따라 타겟 결과가 결정되지 않을 때 j+1의 실행 순서를 갖는 선택 규칙에 따라 n개의 후보 인식 결과들 중에서 타겟 결과를 결정하는 단계를 포함한다.
본 출원의 다른 양태에 따르면, 후보 인식 결과 선택 장치가 제공된다. 이러한 장치는,
음성 신호를 획득하도록 구성되는 신호 획득 모듈;
음성 인식 알고리즘에 따라, 신호 획득 모듈에 의해 획득되는 음성 신호를 인식하여, n개의 후보 인식 결과들을 획득하도록 구성되는 음성 인식 모듈- 후보 인식 결과들은 음성 신호에 대응하는 텍스트 정보를 포함하고, n은 1보다 큰 정수임 -; 및
m개의 선택 규칙들- 선택 규칙은 j의 실행 순서를 가짐 - 중에서 선택되는 선택 규칙에 따라, 음성 인식 모듈에 의한 인식에 의해 획득되는 n개의 후보 인식 결과들 중에서 타겟 결과를 결정하도록 구성되는 결정 모듈- 타겟 결과는 n개의 후보 인식 결과들에서의 음성 신호와의 최고 매칭 정도를 갖는 후보 인식 결과이고, m은 1보다 큰 정수이고, j의 초기 값은 1임 -을 포함하고,
결정 모듈은, j의 실행 순서를 갖는 선택 규칙에 따라 타겟 결과가 결정되지 않을 때 j+1의 실행 순서를 갖는 선택 규칙에 따라 n개의 후보 인식 결과들 중에서 타겟 결과를 결정하도록 구성된다.
본 출원의 다른 양태에 따르면, 음성 인식 디바이스가 제공된다. 이러한 음성 인식 디바이스는 프로세서 및 메모리를 포함하고, 메모리는 적어도 하나의 명령어, 적어도 하나의 프로그램, 및 코드 세트 또는 명령어 세트를 저장하고, 이러한 적어도 하나의 명령어, 적어도 하나의 프로그램, 및 코드 세트 또는 명령어 세트는 제1 양태에 따른 음성 인식 방법을 구현하도록 프로세서에 의해 로딩되고 실행된다.
본 출원의 다른 양태에 따르면, 컴퓨터 판독 가능 저장 매체가 제공되고, 이러한 저장 매체는 적어도 하나의 명령어, 적어도 하나의 프로그램, 및 코드 세트 또는 명령어 세트를 저장하고, 이러한 적어도 하나의 명령어, 적어도 하나의 프로그램, 및 코드 세트 또는 명령어 세트는 제1 양태에 따른 음성 인식 방법을 구현하도록 프로세서에 의해 로딩되고 실행된다.
본 출원의 실시예들에서 제공되는 기술적 해결책들은 적어도 다음의 유익한 효과들을 갖는다:
m개의 선택 규칙들 중 적어도 하나는 음성 인식의 n개의 후보 인식 결과들로부터 타겟 결과를 선택하도록 순서적으로 실행된다. 각각의 선택 규칙의 알고리즘 복잡도 정도는 RNN 언어 모델에 따라 당혹도를 계산하는 알고리즘 복잡도 정도보다 낮아서, RNN 언어 모델에 따라 당혹도를 계산하는데 걸리는 긴 시간으로부터의 결과인 복수의 후보 인식 결과들로부터 타겟 결과를 선택하는 열악한 실시간의 문제를 해결한다. 하나의 선택 규칙만을 실행하는 것에 의해 타겟 결과가 결정될 수 있을 때, 선택 규칙의 알고리즘 복잡도 정도는 RNN 언어 모델에 따라 당혹도를 계산하는 알고리즘 복잡도 정도보다 낮기 때문에, n개의 후보 인식 결과들로부터 타겟 결과를 선택하는 실시간이 개선된다.
본 출원의 실시예들에서의 기술적 해결책들을 보다 명확하게 설명하기 위해, 다음은 실시예들을 설명하기 위해 요구되는 첨부 도면들을 간단히 설명한다. 명백히, 다음 설명에서의 첨부 도면들은 단지 본 출원의 일부 실시예들을 도시하고, 해당 분야에서의 통상의 기술자는 창의적인 노력들 없이도 이러한 첨부 도면들로부터 다른 도면들을 여전히 도출할 수 있다.
도 1은 실시예에 따른 음성 인식 시스템의 개략 구조도이다.
도 2는 실시예에 따른 음성 인식 방법의 흐름도이다.
도 3은 다른 실시예에 따른 음성 인식 방법의 흐름도이다.
도 4는 실시예에 따른 제1 대응관계 및 제2 대응관계의 개략도이다.
도 5는 다른 실시예에 따른 음성 인식 방법의 흐름도이다.
도 6은 다른 실시예에 따른 음성 인식 방법의 흐름도이다.
도 7은 실시예에 따른 음성 인식 장치의 블록도이다.
도 8은 실시예에 따른 음성 인식 디바이스의 개략 구조도이다.
도 1은 실시예에 따른 음성 인식 시스템의 개략 구조도이다.
도 2는 실시예에 따른 음성 인식 방법의 흐름도이다.
도 3은 다른 실시예에 따른 음성 인식 방법의 흐름도이다.
도 4는 실시예에 따른 제1 대응관계 및 제2 대응관계의 개략도이다.
도 5는 다른 실시예에 따른 음성 인식 방법의 흐름도이다.
도 6은 다른 실시예에 따른 음성 인식 방법의 흐름도이다.
도 7은 실시예에 따른 음성 인식 장치의 블록도이다.
도 8은 실시예에 따른 음성 인식 디바이스의 개략 구조도이다.
본 출원의 목적들, 기술적 해결책들, 및 이점들을 더 명확하게 하기 위해, 다음은 첨부 도면들을 참조하여 본 출원의 구현들을 상세히 추가로 설명한다.
먼저, 본 출원의 실시예들에서 설명되는 몇몇 용어들이 소개된다.
음성 인식 디바이스: 음성 신호를 텍스트 정보로서 인식하는 기능을 갖는 전자 디바이스.
음성 인식 디바이스는 음성 인식 엔진이 장착되는 서버일 수 있다. 음성 인식 디바이스는 음성 인식 엔진을 통해 음성 신호를 텍스트 정보로서 인식한다.
음성 인식 디바이스에 의해 수신되는 음성 신호는 오디오 수집 컴포넌트를 통해 음성 인식 디바이스에 의해 수집될 수 있거나 또는 오디오 수집 컴포넌트를 통해 음성 수신 디바이스에 의해 수집되어 음성 인식 디바이스에 전송될 수 있다. 음성 수신 디바이스는 음성 인식 디바이스와 무관한 전자 디바이스일 수 있다. 예를 들어, 음성 수신 디바이스는 모바일 폰, 태블릿 컴퓨터, 스마트 스피커, 스마트 텔레비전, 지능형 공기 청정기, 지능형 에어컨, e-북 리더, MP3(Moving Picture Experts Group Audio Layer III) 플레이어, MP4(Moving Picture Experts Group Audio Layer IV) 레이어, 랩톱 휴대용 컴퓨터, 데스크톱 컴퓨터 등일 수 있다.
음성 인식 디바이스는 또한 모바일 폰, 태블릿 컴퓨터, 스마트 스피커, 스마트 텔레비전, 지능형 공기 청정기, 지능형 에어컨 등일 수 있다. 이러한 것이 이러한 실시예에서 제한되는 것은 아니다.
음성 인식 디바이스가 서버일 수 있고, 음성 인식 디바이스가 음성 수신 디바이스로부터 음성 신호를 수신할 수 있는 예를 사용하여 설명들이 아래에 이루어질 수 있다.
후보 인식 결과: 음성 신호에 대해, 음성 인식 디바이스에 의해 인식되는 적어도 하나의 텍스트 정보.
음성 인식 디바이스가 적어도 2개의 후보 인식 결과들을 획득할 때, 타겟 결과는 적어도 2개의 후보 인식 결과들로부터 선택될 필요가 있다. 타겟 결과는 음성 신호와의 최고 매칭 정도를 갖는 후보 인식 결과이다.
관련 기술에서, 동일한 발음을 갖는 음성 신호들은 상이한 단어들의 조합들의 복수의 그룹들에 대응할 수 있기 때문이다. 예를 들어, 니하오(nihao)는 3개의 조합들 "중국어 문자들 (중국어 철자: ni hao)", "중국어 문자들 (중국어 철자: ni hao), 및 "중국어 문자들 (중국어 철자: ni hao)"에 대응한다. 따라서, 음성 인식 디바이스는 음성 신호에 따라 복수의 후보 인식 결과들을 인식할 수 있다. 음성 인식 디바이스가 복수의 후보 인식 결과들을 인식할 때, 음성 신호와의 최고 매칭 정도를 갖는 후보 인식 결과를 선택하는 방법이 특히 중요해진다.
관련 기술은, n개의 후보 인식 결과들을 획득한 후에, 음성 인식 디바이스가 RNN(recurrent neural network)에 따라 각각의 후보 인식 결과의 당혹도를 계산하고, 이러한 당혹도들 중 최소 값에 대응하는 후보 인식 결과가 타겟 결과라고 결정하는 통상적인 음성 인식 방법을 제공한다. RNN 언어 모델은 일반 코퍼스에 따라 훈련하는 것에 의해 획득된다. 당혹도들은 후보 인식 결과들과 음성 신호 사이의 유사도 정도들을 표시하기 위해 사용되고, 당혹도들 및 유사도 정도들은 음의 상관에 있다. 타겟 결과는 n개의 후보 인식 결과들에서 실제로 수신되는 음성 신호와의 최고 매칭 정도를 갖는 후보 인식 결과이고, n은 1보다 큰 정수이다.
RNN 언어 모델에 따라 당혹도들을 계산하는데 긴 시간이 걸리기 때문에, n개의 후보 인식 결과들로부터 타겟 결과를 선택하는 실시간은 열악하다.
도 1을 참조하면, 도 7은 본 출원의 실시예에 따른 음성 인식 시스템의 개략 구조도이다. 이러한 시스템은 적어도 하나의 음성 수신 디바이스(110) 및 음성 인식 디바이스(120)를 포함한다.
음성 수신 디바이스(110)는 모바일 폰, 태블릿 컴퓨터, 스마트 스피커, 스마트 텔레비전, 지능형 공기 청정기, 지능형 에어컨, e-북 리더, MP3 플레이어, MP4 레이어, 랩톱 휴대용 컴퓨터, 데스크톱 컴퓨터 등일 수 있다. 실시예들이 이러한 구체적인 디바이스들에 제한되는 것은 아니다.
오디오 수집 컴포넌트(111)가 음성 수신 디바이스(110)에 장착된다. 오디오 수집 컴포넌트(111)는 음성 신호를 수집하도록 구성된다.
음성 수신 디바이스(110) 및 음성 인식 디바이스(120)는 무선 네트워크 또는 유선 네트워크를 통해 수립되고 접속된다. 오디오 수집 컴포넌트(111)를 통해 음성 신호를 수집한 후, 음성 수신 디바이스(110)는 음성 신호를 접속을 통해 음성 인식 디바이스(120)에 전송한다.
음성 인식 디바이스(120)는 음성 신호를 텍스트 정보(후보 인식 결과)로서 인식하도록 구성된다. 적어도 2개의 텍스트 정보가 존재할 수 있다.
음성 인식 디바이스(120)는 복수의 후보 인식 결과들을 인식할 때 복수의 후보 인식 결과들로부터 타겟 결과를 선택하도록 구성된다.
음성 인식 디바이스(120)는 타겟 결과를 선택한 후에 타겟 결과를 음성 수신 디바이스(110)에 피드백할 수 있다.
음성 인식 디바이스(120)는 서버 또는 서버 클러스터로서 구현될 수 있다. 이러한 것이 이러한 실시예에서 제한되는 것은 아니다.
모바일 폰, 태블릿 컴퓨터, 스마트 스피커, 스마트 텔레비전, 지능형 공기 청정기, 지능형 에어컨, e-북 리더, MP3 플레이어, MP4 레이어 또는 랩톱 휴대용 컴퓨터와 같은, 모바일 단말의 물리 하드웨어가, 복잡한 알고리즘을 실행함에 있어서 지원할 때, 음성 인식 디바이스(120)는 전술한 모바일 단말들 중 적어도 하나로서 구현될 수 있다. 그러나, 실시예들이 이러한 것에 제한되는 것은 아니다.
전술한 무선 네트워크 또는 유선 네트워크는 표준 통신 기술 및/또는 프로토콜을 사용할 수 있다. 네트워크는 일반적으로 인터넷일 수 있지만, 대안적으로, 이에 제한되는 것은 아니지만, LAN(local area network), MAN(metropolitan area network), WAN(wide area network), 모바일 네트워크, 유선 네트워크, 무선 네트워크, 전용 네트워크, 또는 가상 전용 네트워크의 임의의 조합을 포함하는, 임의의 네트워크일 수 있다. 일부 실시예들에서, 네트워크를 사용하여 교환되는 데이터는 HTML(hyper text mark-up language) 및 XML(extensible markup language)과 같은 기술 및/또는 포맷을 사용하여 표현될 수 있다. 또한, 링크들의 전부 또는 일부는 SSL(Secure Socket Layer), TLS(Transport Layer Security), VPN(Virtual Private Network), 및 IPsec(Internet Protocol Security)와 같은 종래의 암호화 기술을 사용하여 암호화될 수 있다. 일부 다른 실시예들에서, 전술한 데이터 통신 기술은 커스터마이징된 및/또는 전용 데이터 통신 기술로 대체되거나 또는 보충될 수 있다.
본 출원의 실시예들은 실시예들이 음성 인식 디바이스에 의해 실행되는 예를 사용하여 설명될 수 있다.
도 2를 참조하면, 도 2는 본 출원의 실시예에 따른 음성 인식 방법의 흐름도이다. 이러한 실시예는 이러한 방법이 음성 인식 디바이스에 적용되는 예를 사용하여 설명된다. 이러한 방법은 다음의 몇몇 단계들을 포함할 수 있다:
단계 101: 음성 신호를 획득함.
이러한 음성 신호는 음성 수신 디바이스에 의해 음성 인식 디바이스에 전송될 수 있거나, 음성 인식 디바이스에 의해 수집될 수 있거나, 또는 모바일 저장 장치를 통해 음성 인식 디바이스에 입력될 수 있다.
단계 102: 이러한 음성 신호를 음성 인식 알고리즘에 따라 인식하여, n개의 후보 인식 결과들을 획득함.
이러한 후보 인식 결과는 음성 신호에 대응하는 텍스트 정보이고, n은 1보다 큰 정수이다.
이러한 음성 인식 알고리즘은 음성 신호를 적어도 하나의 텍스트 정보로서 인식하기 위해 사용된다. 이러한 음성 인식 알고리즘은 Viterbi 알고리즘에 대한 개선에 기초하여 획득되는 병렬 알고리즘일 수 있거나, Viterbi 알고리즘에 대한 개선에 기초하여 획득되는 직렬 알고리즘일 수 있거나, 또는 Tree-Trellis 알고리즘일 수 있다. 그러나, 실시예들이 이러한 것에 제한되는 것은 아니다.
이러한 음성 인식 알고리즘은 n개의 후보 인식 결과들을 미리 정렬하는 기능을 가질 수 있다. 이러한 경우, 음성 인식 디바이스에 의해 획득되는 n개의 후보 인식 결과들은 순서 식별자들을 갖는다. 이러한 방식으로, 타겟 결과를 선택할 때, 음성 인식 디바이스는, 순서 식별자 표시 순서에 따라, n개의 후보 인식 결과들이 타겟 결과인지 순서적으로 검출한다.
음성 인식 디바이스는 하나의 후보 인식 결과만을 인식할 수 있다는 점이 주목되어야 한다. 그러나, 실시예들이 이러한 것에 제한되는 것은 아니다.
단계 103: 실행 순서가 m개의 선택 규칙들에서의 j인 선택 규칙에 따라 n개의 후보 인식 결과들에서의 타겟 결과를 결정함.
이러한 타겟 결과는 n개의 후보 인식 결과들에서의 음성 신호와의 최고 매칭 정도를 갖는 후보 인식 결과이고, m은 1보다 큰 정수이고, j의 초기 값은 1이다. 1≤j≤m-1이다.
m개의 선택 규칙들의 실행 순서들은 각각의 선택 규칙의 알고리즘 복잡도 정도에 따라 결정되고, 이러한 알고리즘 복잡도 정도들 및 실행 순서들은 양의 상관에 있다. 즉, 더 작은 알고리즘 복잡도 정도는 실행 순서의 더 작은 순서 번호를 표시하고, 실행 순서는 최상위에 더 가깝게 랭킹된다. 더 큰 알고리즘 복잡도 정도는 실행 순서의 더 큰 순서 번호를 표시하고, 실행 순서는 최하위에 더 가깝게 랭킹된다.
선택 규칙들의 알고리즘 복잡도 정도들 및 타겟 결과를 선택하는 속도들은 음의 상관에 있다. 즉, 더 큰 알고리즘 복잡도 정도는 타겟 결과를 선택하는 더 느린 속도를 표시하고, 더 작은 알고리즘 복잡도 정도는 타겟 결과를 선택하는 더 빠른 속도를 표시한다.
각각의 선택 규칙의 알고리즘 복잡도 정도는 복잡도 정도 식별자에 의해 표현될 수 있다. 예를 들어, 알고리즘 복잡도 정도 식별자들은 1, 2, 및 3이고, 더 작은 값은 더 작은 알고리즘 복잡도 정도를 표시한다.
m개의 선택 규칙들의 실행 순서들은 개발자에 의해 지정될 수 있다. m개의 선택 규칙들의 알고리즘 복잡도 정도들은 전부 RNN 언어 모델에 따라 당혹도를 계산하는 알고리즘 복잡도 정도보다 낮기 때문에, 어느 선택 규칙이 우선적으로 실행되는지에 관계없이, 음성 인식 디바이스가 타겟 결과를 선택하는 속도들은 전부 RNN 언어 모델에 따라 당혹도를 계산하는 것에 의해 타겟 결과를 선택하는 속도보다 빠르다.
이러한 경우, 실행 순서는 실행 순서 식별자에 의해 표현될 수 있다. 예를 들어, 실행 순서 식별자는 #1, #2, 또는 #3일 수 있다. #1은 실행 순서가 1이라는 점을 표시하고, #2는 실행 순서가 2라는 점을 표시하고, #3은 실행 순서가 3이라는 점을 표시한다.
m개의 선택 규칙들의 실행 순서들은 랜덤하게 선택될 수 있다.
단계 104: 실행 순서가 j인 선택 규칙에 따라 타겟 결과가 결정되지 않을 때 실행 순서가 j+1인 선택 규칙에 따라 n개의 후보 인식 결과들에서의 타겟 결과를 결정함.
음성 인식 디바이스는 실행 순서가 j인 선택 규칙에 따라 타겟 결과를 결정하지 않을 수 있다. 이러한 경우, 음성 인식 디바이스는 실행 순서가 j+1인 선택 규칙에 따라 타겟 결과를 계속 결정한다. 이러한 프로세스는 n개의 후보 인식 결과들에서의 타겟 결과가 결정될 때까지 계속된다.
음성 인식 디바이스는 n개의 후보 인식 결과들을 재-정렬할 수 있다. n개의 후보 인식 결과들에서의 타겟 결과의 정렬 순서는 첫 번째이다. 첫 번째 것의 결과를 제외한 나머지 n-1개의 후보 인식 결과들에서의 타겟 결과의 정렬 순서는 두 번째이다. 첫 번째 및 두 번째 것의 결과들을 제외한 나머지 n-2개의 후보 인식 결과들에서의 타겟 결과의 정렬 순서는 세 번째이다. 이러한 프로세스는 이러한 방식으로 순환한다.
결론적으로, 본 출원에서 제공되는 음성 인식 방법에서, 음성 인식의 n개의 후보 인식 결과들로부터 타겟 결과를 선택하기 위해 m개의 선택 규칙들 중 적어도 하나가 순서적으로 실행된다. RNN 언어 모델에 따라 당혹도를 계산하는데 걸리는 긴 시간으로부터의 결과인 복수의 후보 인식 결과들로부터의 타겟 결과의 열악한 실시간 선택의 문제를 해결하기 위해, 각각의 선택 규칙의 알고리즘 복잡도 정도는 RNN 언어 모델에 따라 당혹도를 계산하는 알고리즘 복잡도 정도보다 낮다. 하나의 선택 규칙만을 실행하는 것에 의해 타겟 결과가 결정될 수 있을 때, 선택 규칙의 알고리즘 복잡도 정도는 RNN 언어 모델에 따라 당혹도를 계산하는 알고리즘 복잡도 정도보다 낮기 때문에, n개의 후보 인식 결과들로부터의 타겟 결과의 실시간 선택이 개선된다.
m개의 선택 규칙들은 상이한 사용 시나리오들에 따라 결정될 수 있다. m개의 선택 규칙들은 명령 선택 규칙, 기능 선택 규칙, 및 대화 선택 규칙 중 적어도 2개를 포함한다. 명령 시나리오에서(즉, 음성 신호가 명령 형태의 메시지임), 타겟 결과는 m개의 선택 규칙들에서의 명령 선택 규칙을 통해 인식될 수 있다. 전력 시나리오에서(즉, 음성 신호가 기능 메시지임), 타겟 결과는 m개의 선택 규칙들에서의 기능 선택 규칙을 통해 인식될 수 있다. 대화 시나리오에서(즉, 음성 신호가 대화 형태의 메시지임), 타겟 결과는 m개의 선택 규칙들에서의 대화 선택 규칙을 통해 인식될 수 있다.
명령 형태의 메시지는 명령을 실행하라고 음성 수신 디바이스에게 명령하기 위해 사용된다. 예를 들어, 음성 수신 디바이스가 스마트 스피커일 때, 명령 형태의 메시지는 마지막, 다음, 일시정지, 또는 재생과 같은 메시지일 수 있다.
일반적으로, 명령 형태의 메시지들은 비정규이고, 제한된 수량을 갖는다. 예를 들어, 마지막의 명령 형태의 메시지는 이전으로 변경, 마지막 재생, 이전 재생, 이전으로의 스위칭, 마지막으로의 스위칭되는 등일 수 있다. 전술한 다양한 변경들은 비정규이고, 이러한 변경들의 타입들은 제한된다.
명령 형태의 메시지들은 비정규이고, 제한된 수량을 갖기 때문에, 이러한 실시예에서, 음성 인식 디바이스는 명령 어휘를 미리 설정한다. 이러한 명령 어휘는 복수의 명령 키워드들을 포함한다. 명령 선택 규칙은, 명령 어휘가 i번째 후보 인식 결과에 매칭하는 명령 키워드를 포함하는지에 의존하여, i번째 후보 인식 결과가 타겟 결과인지 검출하라고 음성 인식 디바이스에게 명령하기 위해 사용되고, 1≤i≤n이다.
기능 메시지는 적어도 하나의 음성 키워드에 따라 명령을 실행하라고 음성 수신 디바이스에게 명령하기 위해 사용된다. 예를 들어, 기능 메시지는 "Jay Chou의 노래들을 재생함"이다.
일반적으로, 기능 메시지는 고정된 형태의 기능 템플릿 및 가변 음성 키워드를 갖는다. 예를 들어, "Jay Chou의 노래들을 재생함"에서, 기능 템플릿은 ()의 노래들을 재생함"이고, 음성 키워드는 Jay Chou이다.
일반적으로, 기능 메시지는 고정된 형태의 기능 템플릿 및 가변 음성 키워드를 갖기 때문에, 이러한 실시예에서, 음성 인식 디바이스는 기능 템플릿 라이브러리 및 음성 어휘를 미리 설정한다. 기능 선택 규칙은, 음성 어휘가 음성 키워드에 매칭하는 어휘 키워드를 포함하는지에 의존하여, i번째 후보 인식 결과가 타겟 결과인지 검출하라고 음성 인식 디바이스에게 명령하기 위해 사용되고, 음성 키워드는 i번째 후보 인식 결과에서의 적어도 하나의 키워드이다.
대화 형태의 메시지는 비정규이고, 변경들의 수량이 알려지지 않은 메시지이다. 예를 들어, 대화 메시지는 "무엇을 하고 있는가", "오늘 한가한가", "어떤 영화" 등이다.
대화 형태의 메시지가 비정규이고 알려지지 않은 수량의 변경들을 갖기 때문에, 이러한 실시예에서, 음성 인식 디바이스는 미리 훈련된 언어 모델을 설정한다. 대화 선택 규칙은, 각각의 후보 인식 결과와 음성 신호 사이의 유사도 정도를 훈련된 언어 모델에 따라 결정하여, 타겟 결과를 선택하라고 음성 인식 디바이스에게 명령하기 위해 사용된다.
명령 선택 규칙의 알고리즘 복잡도 정도는 기능 선택 규칙의 알고리즘 복잡도 정도보다 낮을 수 있고, 기능 선택 규칙의 알고리즘 복잡도 정도는 대화 선택 규칙의 알고리즘 복잡도 정도보다 낮을 수 있다. 대응하여, 음성 인식 디바이스는 명령 선택 규칙을 우선적으로 실행하여 타겟 결과를 선택하고, 다음으로 명령 선택 규칙에 따라 타겟 결과가 선택되지 않을 때 기능 선택 규칙을 실행하여 타겟 결과를 선택하고, 다음으로 타겟 결과가 기능 선택 규칙에 따라 선택되지 않을 때 대화 선택 규칙을 실행하여 타겟 결과를 선택한다.
명령 선택 규칙의 알고리즘 복잡도 정도, 기능 선택 규칙의 알고리즘 복잡도 정도, 및 대화 선택 규칙의 알고리즘 복잡도 정도는 전부 RNN 언어 모델에 따라 타겟 결과를 선택하는 알고리즘 복잡도 정도보다 훨씬 더 작을 수 있다. 따라서, 음성 인식 디바이스가 명령 선택 규칙, 기능 선택 규칙, 및 대화 선택 규칙을 순서적으로 실행하여 타겟 결과를 결정하면, 음성 인식 디바이스에 의해 걸리는 총 시간은 또한 RNN 언어 모델에 따라 타겟 결과를 선택하는데 걸리는 총 시간보다 더 작다.
명령 선택 규칙에 따라 타겟 결과를 선택하는 단계(도 3에 도시되는 실시예를 참조함), 기능 선택 규칙에 따라 타겟 결과를 선택하는 단계(도 5에 도시되는 실시예를 참조함), 및 대화 선택 규칙에 따라 타겟 결과를 선택하는 단계(도 6에 도시되는 실시예를 참조함)가 아래에 개별적으로 설명된다.
도 3을 참조하면, 도 3은 본 출원의 다른 실시예에 따른 음성 인식 방법의 흐름도이다. 이러한 실시예는 음성 인식 방법이 음성 인식 디바이스에 적용되는 예를 사용하여 설명된다. 이러한 방법은 다음의 단계들을 포함할 수 있다:
단계 201: 명령 어휘의 제1 대응관계가 i번째 후보 인식 결과에 매칭하는 명령 키워드를 포함하는지 검출함.
제1 대응관계는 인덱스 값들과 명령 키워드들 사이의 대응관계를 포함한다.
제1 대응관계는 전달 테이블을 통해 구현될 수 있다. 이러한 전달 테이블은 적어도 하나의 키 값 쌍을 포함하고, 각각의 키 값 쌍에서의 키는 해시 값(인덱스 값)이고, 각각의 키 값 쌍에서의 값은 명령 키워드이다.
이러한 실시예에서, 제1 대응관계에서의 키 값 쌍들의 수량이 제한되는 것은 아니다. 예를 들어, 제1 대응관계에서의 키 값 쌍들의 수량은 1000이다.
명령 어휘의 제1 대응관계가 i번째 후보 인식 결과에 매칭하는 명령 키워드를 포함하는지 음성 인식 디바이스가 검출하는 것은, i번째 후보 인식 결과의 해시 값을 계산하는 것, 해시 값과 동일한 키가 제1 대응관계에 존재하는지 검출하는 것, 제1 대응관계가 i번째 후보 인식 결과에 매칭하는 명령 키워드를 포함한다고 결정하는 것, 및 예이면 단계 202를 수행하는 것, 및 아니면 i=i+1을 행하고 이러한 단계를 계속 수행하는 것을 포함한다.
제1 대응관계는 적어도 하나의 명령 키워드를 포함하는 것, 음성 인식 디바이스에 의해, i번째 후보 인식 결과를 각각의 명령 키워드와 매칭시키는 것, 제1 대응관계가 i번째 후보 인식 결과에 매칭하는 명령 키워드를 포함하면 단계 202를 수행하는 것, 및 제1 대응관계가 i번째 후보 인식 결과에 매칭하는 명령 키워드를 포함하지 않으면 i=i+1을 행하고 이러한 단계를 계속 수행하는 것을 지칭할 수 있다.
단계 202: i번째 후보 인식 결과가 타겟 결과라고 결정하고; 프로세스가 종료됨.
제1 대응관계가 적어도 2개의 후보 인식 결과들에 대응하는 명령 키워드들을 포함할 때, 음성 인식 디바이스는 제1 후보 인식 결과를 타겟 결과로서 사용할 수 있거나, 또는 음성 인식 디바이스는 단계 203을 수행하고, 적어도 2개의 후보 인식 결과들로부터 타겟 결과를 다시 선택한다.
단계 203: 제1 대응관계가 n개의 후보 인식 결과들 중 임의의 후보 인식 결과에 매칭하는 명령 키워드를 포함하지 않을 때, 명령 어휘의 제2 대응관계가 i번째 후보 인식 결과에서의 임의의 단어에 매칭하는 키워드를 포함하는지 검출함.
제2 대응관계는 인덱스 값들과 키워드들 사이의 대응관계를 포함하고, 명령 키워드들은 키워드들을 포함한다.
제2 대응관계는 반전된 테이블을 통해 구현될 수 있다. 이러한 반전된 테이블은 적어도 하나의 키 값 쌍을 포함하고, 각각의 키 값 쌍에서의 키는 키워드의 해시 값이고, 각각의 키 값 쌍에서의 값은 제1 대응관계에서의 키워드에 대응하는 적어도 하나의 인덱스 값이다.
명령 어휘에서의 제2 대응관계가 i번째 후보 인식 결과에서의 임의의 단어에 매칭하는 키워드를 포함하는지 음성 인식 디바이스가 검출하는 것은, i번째 후보 인식 결과에서의 각각의 단어의 해시 값을 계산하는 것; 제2 대응관계가 임의의 단어의 해시 값과 동일한 키를 포함하는지 검출하는 것; 제2 대응관계가 i번째 후보 인식 결과에서의 단어에 매칭하는 키워드를 포함한다고 결정하는 것 및 제2 대응관계가 임의의 단어의 해시 값과 동일한 키를 포함하면 단계 204를 수행하는 것; 및 제2 대응관계가 임의의 단어의 해시 값과 동일한 키를 포함하지 않으면, i=i+1을 행하고 이러한 단계를 계속 수행하는 것을 포함한다.
제2 대응관계에서의 각각의 키 값 쌍의 키는 대안적으로 키워드일 수 있다.
단계 204: 제2 대응관계에서의 키워드에 대응하는 인덱스 값에 따라, 이러한 인덱스 값에 대응하는 명령 키워드에 대한 제1 대응관계를 검색함.
명령 키워드는 키워드를 포함하고, 상이한 명령 키워드들은 동일한 키워드를 포함할 수 있기 때문에, 키워드에 대응하는 인덱스 값에 따라 음성 인식 디바이스에 의해 발견되는 명령 키워드들의 수량, 즉, 제2 대응관계에서의 키워드에 대응하는 키 값 쌍에서의 값은 적어도 하나이다.
이러한 실시예에서, i번째 후보 인식 결과에 매칭하는 명령 키워드는 제1 대응관계 및 제2 대응관계를 조합하는 것에 의해 검출되어, 음성 인식 디바이스는 명령 키워드의 모든 변경 형태들을 저장할 필요는 없고 모든 변경 형태들에 포함되는 키워드들만을 저장하여 대응하는 명령 키워드를 결정할 필요가 있고, 그렇게 함으로써 음성 인식 디바이스의 저장 공간을 절약한다.
단계 205: i번째 후보 인식 결과와 명령 키워드 사이의 편집 거리를 결정함.
이러한 편집 거리(또는 Levenshtein 거리라고 지칭됨)는 i번째 후보 인식 결과를 명령 키워드로 변환하기 위해 요구되는 동작들의 수량을 표시하기 위해 사용된다. 이러한 변환 동작들은, 이에 제한되는 것은 아니지만, 대체, 삽입, 및 삭제를 포함한다.
음성 인식 디바이스는 복수의 명령 키워드들을 결정할 수 있다. 이러한 경우, i번째 후보 인식 결과와 각각의 명령 키워드 사이의 편집 거리가 결정된다.
예를 들어, i번째 후보 인식 결과는, 다음에서 유사한, "중국어 문자들 (중국어 철자: zai ting)"이고, 음성 인식 디바이스에 의해 결정되는 명령 키워드는 "(zan ting)"이다. 음성 인식 디바이스는 "(zai)"를 "(zan)"으로 대체하여 "(zai ting)"을 "(zan ting)"으로 변환할 필요만 있다. i번째 후보 인식 결과와 명령 키워드 사이의 편집 거리는 1이다.
단계 206: 편집 거리가 미리 설정된 값보다 작을 때, i번째 후보 인식 결과가 타겟 결과라고 결정함.
편집 거리가 미리 설정된 값보다 작을 때, 이것은 i번째 후보 인식 결과와 명령 키워드 사이의 유사도 정도가 높다는 점을 표시한다. 이러한 경우, i번째 후보 인식 결과가 타겟 결과라고 결정된다.
미리 설정된 값의 값은 일반적으로 작고, 미리 설정된 값의 값이 이러한 실시예에서 제한되는 것은 아니다. 예를 들어, 미리 설정된 값은 2이다.
도 4에 도시되는 제1 대응관계 및 제2 대응관계의 도면을 참조하면, 제1 대응관계는 3개의 키 값 쌍들을 포함하고, 각각의 키 값 쌍은 인덱스 값 및 명령 키워드를 포함하고; 제2 대응관계는 3개의 키 값 쌍들을 포함하고, 각각의 키 값 쌍은 해시 값 및 인덱스 값을 포함한다.
음성 인식 디바이스가 4개의 후보 인식 결과들을 인식하면, 4개의 후보 인식 결과들은 각각: 다음에서 유사한, 중국어 문자들 (중국어 철자: zai tian), (zai tian), (zai tian), 및 (zan ting)이다. 음성 인식 디바이스는 이러한 4개의 후보 인식 결과들의 해시 값들을 계산한다. (zan tian)의 해시 값은 1이고, (zai tian)의 해시 값은 2이고, (zai tian)의 해시 값은 3이고, (zan ting)의 해시 값은 4이다. 제1 대응관계에서의 키는 4를 포함한다. 따라서, (zan ting)가 타겟 결과라고 결정된다.
음성 인식 디바이스가 4개의 후보 인식 결과들을 인식하면, 이러한 4개의 후보 인식 결과들은 각각: 다음에서 유사한, 중국어 문자들 (중국어 철자: zai tian), (zai tian), (zai tian), 및 (zai ting)이다. 음성 인식 디바이스는 이러한 4개의 후보 인식 결과들의 해시 값들을 계산한다. (zai tian)의 해시 값은 1이고, (zai tian)의 해시 값은 2이고, (zai tian)의 해시 값은 3이고, (zai ting)의 해시 값은 4이다. 이러한 경우, 제1 대응관계에서의 키는 1, 2, 3, 및 5를 포함하지 않는다. 따라서, 음성 인식 디바이스는 각각의 후보 인식 결과에서의 각각의 단어의 해시 값을 계산한다. 후보 인식 결과 "(zai ting)"에 대해, "(zai)"의 해시 값은 11이고, "(ting)"의 해시 값은 12이고, 제2 대응관계의 키는 12를 포함한다. 음성 인식 디바이스는 제2 대응관계에서의 12에 대응하는 인덱스 값 4에 따라 인덱스 값 4에 대응하는 명령 키워드 "(zan ting)"에 대한 제1 대응관계를 검색한다. "(zai ting)"와 "(zan ting)" 사이의 편집 거리는 1이고 미리 설정된 값 2보다 작다. 따라서, "(zai ting)"이 타겟 결과라고 결정된다.
모든 후보 인식 결과들과 명령 키워드 사이의 편집 거리들이 전부 미리 설정된 값 이상일 때, 명령 선택 규칙에 따라 타겟 결과가 선택되지 않을 수 있다. 이러한 경우, 음성 인식 디바이스는 다른 선택 규칙에 따라 타겟 결과를 계속 선택하고, 제1 후보 인식 결과가 타겟 결과라고 결정하거나, 또는 타겟 결과를 선택하지 않고; 프로세스는 종료된다. 다른 선택 규칙은 기능 선택 규칙 또는 대화 선택 규칙이다.
음성 인식 디바이스는 최소 편집 거리를 갖는 후보 인식 결과가 타겟 결과라고 결정할 수 있다.
결론적으로, 본 출원에서 제공되는 음성 인식 방법에서, n개의 후보 인식 결과들에서의 타겟 결과는 명령 선택 규칙을 통해 선택된다. 명령 선택 규칙만을 실행하는 것에 의해 타겟 결과가 결정될 수 있을 때, 명령 선택 규칙의 알고리즘 복잡도 정도는 RNN 언어 모델에 따라 당혹도를 계산하는 알고리즘 복잡도 정도보다 낮기 때문에, n개의 후보 인식 결과들로부터의 타겟 결과의 실시간 선택이 개선된다.
또한, i번째 후보 인식 결과에 매칭하는 명령 키워드는 제1 대응관계 및 제2 대응관계를 조합하는 것에 의해 검출되어, 음성 인식 디바이스는 명령 키워드의 모든 변경 형태들을 저장할 필요는 없고 모든 변경 형태들에 포함되는 키워드들만을 저장하여 대응하는 명령 키워드를 결정할 필요가 있고, 그렇게 함으로써 음성 인식 디바이스의 저장 공간을 절약한다.
음성 인식 디바이스는 타겟 결과를 음성 수신 디바이스에 전송할 수 있다. 음성 수신 디바이스는 타겟 결과에 대응하는 명령에 따라 대응하는 동작을 수행한다. 예를 들어, 음성 수신 디바이스는 스마트 스피커이고, 타겟 결과는 일시정지된다. 따라서, 타겟 결과를 수신한 후에, 스마트 스피커는 현재 재생되는 오디오 정보를 재생하는 것을 일시정지한다.
도 5를 참조하면, 도 5는 다른 실시예에 따른 음성 인식 방법의 흐름도이다. 이러한 실시예는 음성 인식 방법이 음성 인식 디바이스에 적용되는 예를 사용하여 설명된다. 이러한 방법은 다음의 단계들을 포함할 수 있다:
단계 401: i번째 후보 인식 결과의 기능 템플릿을 분석함(1≤i≤n임).
음성 인식 디바이스는 기능 템플릿 라이브러리를 미리 설정할 수 있다. 이러한 기능 템플릿 라이브러리는 적어도 하나의 기능 템플릿을 포함한다.
이러한 기능 템플릿은 정규 표현을 통해 표현되거나, 또는 정규 표현이라고 지칭될 수 있다. 예를 들어, 기능 템플릿은 "a (.+)의 노래"이다. 기능 템플릿 라이브러리에서의 기능 템플릿들의 수량이 이러한 실시예에서 제한되는 것은 아니다. 예를 들어, 기능 템플릿 라이브러리에서의 기능 템플릿들의 수량은 540이다.
이러한 정규 표현은 기능 템플릿을 충족시키는 텍스트 정보를 검색 및/또는 대체하기 위해 사용된다.
음성 인식 디바이스는 i번째 후보 인식 결과를 기능 템플릿 라이브러리에서의 각각의 기능 템플릿과 매칭시키는 것에 의해 i번째 후보 인식 결과의 기능 템플릿을 분석한다.
단계 402: i번째 후보 인식 결과에서의 음성 키워드에 매칭하는 어휘 키워드를 음성 어휘가 포함하는지 검출함.
i번째 후보 인식 결과는 기능 템플릿 및 적어도 하나의 음성 키워드를 포함한다. i번째 후보 인식 결과의 기능 템플릿을 분석한 후, 음성 인식 디바이스는 i번째 후보 인식 결과에서의 나머지 키워드들을 음성 키워드로서 사용한다.
음성 인식 디바이스는 음성 어휘를 미리 설정하고, 이러한 음성 어휘는 적어도 하나의 어휘 키워드를 포함한다. 음성 어휘에서의 어휘 키워드의 수량이 이러한 실시예에서 제한되는 것은 아니다. 예를 들어, 음성 어휘에서의 어휘 키워드의 수량은 1백만이다.
음성 인식 디바이스는 i번째 후보 인식 결과에서의 음성 키워드를 음성 어휘에서의 적어도 하나의 어휘 키워드와 하나씩 매칭시킨다. 음성 어휘가 i번째 후보 인식 결과에서의 음성 키워드에 매칭하는 어휘 키워드를 포함할 때, 단계 403을 수행한다. 음성 어휘가 i번째 후보 인식 결과에서의 음성 키워드에 매칭하는 어휘 키워드를 포함하지 않을 때, i=i+1을 행하고 이러한 단계를 계속 수행한다.
단계 403: i번째 후보 인식 결과가 타겟 결과라고 결정하고; 프로세스가 종료됨.
기능 선택 규칙에 따라 타겟 결과가 선택되지 않을 때, 음성 인식 디바이스는 다른 선택 규칙에 따라 타겟 결과를 계속 선택하고, 제1 후보 인식 결과가 타겟 결과라고 결정할 수 있거나, 또는 타겟 결과를 선택하지 않고; 프로세스가 종료된다. 다른 선택 규칙은 명령 선택 규칙 또는 대화 선택 규칙이다.
기능 선택 규칙에 따라 타겟 결과가 선택되지 않는다는 것은, 이에 제한되는 것은 아니지만, 다음의 몇몇 상황들을 포함한다: 음성 인식 디바이스가 후보 인식 결과들의 기능 템플릿들을 분석하지 않음, 또는 음성 인식 디바이스가 음성 어휘에서의 후보 인식 결과들에서의 음성 키워드들에 매칭하는 어휘 키워드들을 찾지 못함.
음성 인식 디바이스가 3개의 후보 인식 결과들을, 각각, 획득한다고 가정된다: 1. 중국어 문자들 (중국어 철자: wo xiang ting tu an ge de ge), 2. 중국어 문자들 (중국어 철자: wo xiang ting tong an ge de lo), 및 3. 중국어 문자들 (중국어 철자: wo xiang ting tong an ge de ge). 음성 인식 디바이스는 3개의 후보 인식 결과들을 기능 템플릿 라이브러리에서의 기능 템플릿과 각각 매칭시켜, 제1 후보 인식 결과의 기능 템플릿이 "(wo xiang ting (.+) de ge)"라는 점, 제2 후보 인식 결과의 기능 템플릿이 "(wo xiang ting (.+) de (.+))"라는 점, 및 제3 후보 인식 결과의 기능 템플릿이 (wo xiang ting (.+) de ge)"라는 점을 획득한다..
제1 후보 인식 결과에 대해, 음성 키워드는 중국어 문자들 (중국어 철자: tu an ge)이다. 제2 후보 인식 결과에 대해, 음성 인식 디바이스는 제1 키워드를 음성 키워드로서 사용한다, 즉, 음성 키워드는 중국어 문자들 (중국어 철자: tong an ge)이다. 제3 후보 인식 결과에 대해, 음성 키워드는 중국어 문자들 (중국어 철자: tong an ge)이다.
음성 인식 디바이스는 후보 인식 결과들에서의 음성 키워드들을 음성 어휘에서의 어휘 키워드와 순서적으로 매칭시킨다. 제2 후보 인식 결과에서의 음성 키워드를 어휘 키워드와 매칭시킬 때, 음성 인식 디바이스는 음성 키워드에 매칭하는 어휘 키워드를 결정할 수 있고, 제2 후보 인식 결과가 타겟 결과라고 결정한다.
제2 후보 인식 결과에 대해, 음성 인식 디바이스는 모든 키워드들을 음성 키워드로서 사용할 수 있다, 즉, 음성 키워드는 중국어 문자들 (중국어 철자: tong an ge) 및 중국어 문자 (중국어 철자: lo)이며, 이는 다음에서 유사하다. 이러한 경우에, 음성 어휘가 (tong an ge)에 매칭하는 어휘 키워드를 포함하더라도, 음성 어휘는 (lo)에 매칭하는 어휘 키워드를 포함하지 않는다. 이러한 경우, 음성 인식 디바이스는 후보 인식 결과들에서의 음성 키워드들을 음성 어휘에서의 어휘 키워드와 순서적으로 매칭시킨다. 제3 후보 인식 결과에서의 음성 키워드를 어휘 키워드와 매칭시킬 때, 음성 인식 디바이스는 음성 키워드에 매칭하는 어휘 키워드를 결정할 수 있고, 제3 후보 인식 결과가 타겟 결과라고 결정한다.
결론적으로, 본 출원에서 제공되는 음성 인식 방법에서, n개의 후보 인식 결과들에서의 타겟 결과는 기능 선택 규칙을 통해 선택된다. 기능 선택 규칙만을 실행하는 것에 의해 타겟 결과가 결정될 수 있을 때, 기능 선택 규칙의 알고리즘 복잡도 정도는 RNN 언어 모델에 따라 당혹도를 계산하는 알고리즘 복잡도 정도보다 낮기 때문에, n개의 후보 인식 결과들로부터의 타겟 결과의 실시간 선택이 개선된다.
음성 인식 디바이스는 타겟 결과를 음성 수신 디바이스에 전송한다. 음성 수신 디바이스는 타겟 결과에서의 음성 키워드에 따라 대응하는 동작을 수행한다. 예를 들어, 음성 수신 디바이스는 스마트 스피커이고, 타겟 결과는 Jay Chou의 노래들을 재생하는 것이다. 따라서, 스마트 스피커는 타겟 결과를 수신한 후 Jay Chou의 노래들을 검색하고 검색 결과에 대응하는 오디오 정보를 재생한다.
음성 인식 디바이스는 타겟 결과에서의 음성 키워드에 따라 검색을 수행하고 검색 결과를 음성 수신 디바이스에 전송할 수 있다. 음성 수신 디바이스는 검색 결과에 대응하는 오디오 정보를 재생한다. 예를 들어, 음성 수신 디바이스는 스마트 스피커이고, 타겟 결과는 Jay Chou의 노래들을 재생하는 것이다. 따라서, 음성 인식 디바이스는 타겟 결과에서의 음성 키워드, Jay Chou에 따라 Jay Chou의 노래들을 검색하고 검색 결과를 스마트 스피커에 전송한다. 스마트 스피커는 검색 결과에 대응하는 오디오 정보를 재생한다.
도 6을 참조하면, 도 6은 다른 실시예에 따른 음성 인식 방법의 흐름도이다. 이러한 실시예는 음성 인식 시스템에 음성 인식 방법이 적용되는 예를 사용하여 설명된다. 이러한 방법은 다음의 단계들을 포함할 수 있다:
단계 501: 언어 모델에 따라 각각의 후보 인식 결과의 당혹도를 계산함.
이러한 당혹도는 후보 인식 결과와 음성 신호 사이의 유사도 정도를 표시하기 위해 사용된다. 당혹도 및 유사도 정도는 음의 상관에 있다.
이러한 언어 모델은 자연 언어들의 고유 법칙을 설명하기 위한 수학적 모델이다.
이러한 언어 모델은 적어도 하나의 필드에 대응하는 전용 코퍼스에 따라 생성되는 N-그램 언어 모델일 수 있다. 이러한 N-그램 언어 모델은 현재 단어 전의 N-1개의 단어들의 발생 확률들에 따라 현재 단어의 발생 확률을 결정하기 위해 사용되고, N은 양의 정수이다. N의 값이 이러한 실시예에서 제한되는 것은 아니다. 예를 들어, N은 3이고, 3-그램 언어 모델은 트라이-그램(Tri-gram) 언어 모델이라고 또한 지칭된다. 예를 들어, N은 2이고, 2-그램 언어 모델은 바이-그램(Bi-gram) 언어 모델이라고 또한 지칭된다.
이러한 N-그램 언어 모델은, 확률들 및 분산 기능들을 사용하여, 단어들, 단어 그룹들, 및 문장들과 같은, 자연 언어 기본 유닛들의 속성들 및 관계를 설명하고, 자연 언어들에서의 통계적 원리들에 기초하여 생성 및 처리 규칙들을 반영한다.
이러한 실시예에서, 음성 인식 디바이스가 3-그램 언어 모델 또는 2-그램 언어 모델에 따라 각각의 후보 인식 결과의 당혹도를 계산하는 예를 사용하여 설명들이 이루어진다.
3-그램 언어 모델은 다음의 공식을 통해 표현될 수 있다:
p(S)=p(w1)p(w2|w1)p(w3|w1,w2)...p(wn|w1,w2,...,wn-1)
=p(w1)p(w2|w1)p(w3|w1,w2)...p(wn|wn-1,wn-2)
p(S)는 후보 인식 결과의 발생의 확률을 표현하고, p(w1)는 후보 인식 결과에서의 제1 단어의 발생의 확률을 표현하고, p(w2|w1)는 제1 단어의 발생으로 인한 후보 인식 결과에서의 제2 단어의 발생의 확률을 표현하고, p(w3|w1,w2)는 제1 단어 및 제2 단어의 발생으로 인한 후보 인식 결과에서의 제3 단어 발생의 확률을 표현하고, p(wn|wn-1,wn-2)는 이전 단어((n-1)번째 단어) 및 하나 더 이전 단어((n-2)번째 단어)의 발생으로 인한 후보 인식 결과에서의 n번째 단어의 발생의 확률을 표현한다.
2-그램 언어 모델은 다음의 공식을 통해 표현될 수 있다:
p(S)=p(w1)p(w2|w1)p(w3|w1,w2)...p(wn|w1,w2,...,wn-1)
=p(w1)p(w2|w1)p(w3|w2)...p(wn|wn-1)
p(S)는 후보 인식 결과의 발생의 확률을 표현하고, p(w1)는 후보 인식 결과에서의 제1 단어의 발생의 확률을 표현하고, p(w2|w1)는 제1 단어의 발생으로 인한 후보 인식 결과에서의 제2 단어의 발생의 확률을 표현하고, p(w3|w2)는 제2 단어의 발생으로 인한 후보 인식 결과에서의 제3 단어의 발생의 확률을 표현하고, p(wn|wn-1)는 이전 단어((n-1)번째 단어)의 발생으로 인한 후보 인식 결과에서의 n번째 단어의 발생의 확률을 표현한다.
적어도 하나의 필드는, 이에 제한되는 것은 아니지만, 다음의 것들: 날씨 필드, 음악 필드, 수학 필드, 스포츠 필드, 컴퓨터 필드, 홈 필드, 지리적 필드, 및 자연 필드를 포함한다.
설명되지는 않더라도, 이러한 적어도 하나의 필드는 다른 필드들을 또한 포함할 수 있다.
음성 인식 디바이스는 언어 모델에 따라 미리 설정된 공식을 통해 각각의 후보 인식 결과의 당혹도를 계산한다.
이러한 당혹도는 언어 모델에 의해 예측되는 각각의 단어 이후의 후보 단어의 발생 확률의 기하학적 평균으로서 고려될 수 있다. 일반적으로, 후보 인식 결과의 발생의 확률 및 당혹도는 음의 상관에 있다. 즉, 후보 인식 결과의 더 큰 발생의 확률은 더 낮은 당혹도를 표시하고; 후보 인식 결과의 더 작은 발생의 확률은 더 높은 당혹도를 표시한다.
음성 인식 디바이스가 언어 모델에 따라 미리 설정된 공식을 통해 각각의 후보 인식 결과의 당혹도를 계산할 때, 음성 인식 디바이스는 먼저 각각의 후보 인식 결과의 크로스 엔트로피를 계산하고, 크로스 엔트로피 및 미리 설정된 공식에 따라 언어 인식 결과의 당혹도를 결정할 수 있다.
이러한 크로스 엔트로피는 언어 모델에 의해 결정되는 모델 언어와 후보 인식 결과 사이의 차이를 표시하기 위해 사용된다. 더 작은 크로스 엔트로피는 모델 언어와 후보 인식 결과 사이의 더 작은 차이 및 후보 인식 결과와 음성 신호 사이의 더 높은 매칭 정도를 표시한다. 더 큰 크로스 엔트로피는 모델 언어와 후보 인식 결과 사이의 더 큰 차이 및 음성 신호와 매칭 정도 사이의 더 낮은 매칭 정도를 표시한다.
이러한 언어 모델은 신경 네트워크 언어 모델과 같은 다른 타입일 수 있다. 그러나, 실시예들이 이러한 것에 제한되는 것은 아니다.
단계 502: n개의 후보 인식 결과들에서의 당혹도들 중 최소 값을 결정하고 이러한 최소 값에 대응하는 i번째 후보 인식 결과가 타겟 결과라고 결정함.
더 작은 당혹도는 후보 인식 결과와 음성 신호 사이의 더 높은 유사도 정도를 표시하기 때문에, 당혹도들 중 최소 값에 대응하는 i번째 후보 인식 결과가 타겟 결과라고 결정된다.
결론적으로, 본 출원에 제공되는 음성 인식 방법에서, n개의 후보 인식 결과들에서의 타겟 결과는 대화 선택 규칙을 통해 선택된다. 대화 선택 규칙만을 실행하는 것에 의해 타겟 결과가 결정될 수 있을 때, 대화 선택 규칙의 알고리즘 복잡도 정도는 RNN 언어 모델에 따라 당혹도를 계산하는 알고리즘 복잡도 정도보다 낮기 때문에, n개의 후보 인식 결과들로부터의 타겟 결과의 실시간 선택이 개선된다.
음성 인식 디바이스는 타겟 결과를 음성 수신 디바이스에 전송할 수 있다. 음성 수신 디바이스는 타겟 결과에 따라 대화 정보를 획득한다. 예를 들어, 음성 수신 디바이스는 스마트 스피커이고, 타겟 결과는 "무엇을 하고 있는가"이다. 따라서, 타겟 결과를 수신한 후에, 스마트 스피커는 대화 모델에 따라 대화 정보를 생성한다.
음성 인식 디바이스는 타겟 결과에 따라 대화 정보를 생성하고 이러한 대화 정보를 음성 수신 디바이스에 전송할 수 있다. 음성 수신 디바이스는 이러한 대화 정보에 대응하는 오디오 정보를 재생한다. 예를 들어, 음성 수신 디바이스는 스마트 스피커이고, 타겟 결과는 "무엇을 하고 있는가"이다. 따라서, 음성 인식 디바이스는 타겟 결과에 따라 대화 정보를 생성하고, 대화 정보를 스마트 스피커에 전송하고, 스마트 스피커는 대화 정보에 대응하는 오디오 정보를 재생한다.
도 3에 도시되는 실시예, 도 5에 도시되는 실시예, 및 도 6에 도시되는 실시예 중 임의의 2개는 새로운 실시예를 형성하도록 조합될 수 있거나, 또는 이러한 3개의 실시예들은 새로운 실시예를 형성하도록 조합된다는 점이 주목되어야 한다. m=3을 예로서 사용하면, 명령 선택 규칙은 제1 선택 규칙이고, 기능 선택 규칙은 제2 선택 규칙이고, 대화 선택 규칙은 제3 선택 규칙이다.
다음은, 방법 실시예들을 실행하는데 사용될 수 있는, 장치 실시예이다. 이러한 장치 실시예에서 개시되지 않은 상세 사항들에 대해서는, 방법 실시예들을 참조한다.
도 7을 참조하면, 도 7은 실시예에 따른 음성 인식 장치의 블록도이다. 이러한 장치는 전술한 방법 예들을 수행하는 기능들을 갖는다. 이러한 기능들은 하드웨어를 사용하여 구현될 수 있거나, 또는 대응하는 소프트웨어를 실행하는 하드웨어에 의해 구현될 수 있다. 이러한 장치는 신호 획득 모듈(610), 음성 인식 모듈(620), 및 결정 모듈(630)을 포함할 수 있다.
신호 획득 모듈(610)은 음성 신호를 획득하도록 구성된다.
음성 인식 모듈(620)은, 음성 인식 알고리즘에 따라, 신호 획득 모듈(610)에 의해 획득되는 음성 신호를 인식하여, n개의 후보 인식 결과들을 획득하도록 구성되고, 이러한 후보 인식 결과들은 음성 신호에 대응하는 텍스트 정보이고, n은 1보다 큰 정수이다.
결정 모듈(630)은, 실행 순서가 m개의 선택 규칙들에서의 j인 선택 규칙에 따라, 음성 인식 모듈(620)에 의한 인식에 의해 획득되는 n개의 후보 인식 결과들에서의 타겟 결과를 결정하도록 구성되고, 이러한 타겟 결과는 n개의 후보 인식 결과들에서의 음성 신호와의 최고 매칭 정도를 갖는 후보 인식 결과이고, m은 1보다 큰 정수이고, j의 초기 값은 1이다.
결정 모듈(630)은 실행 순서가 j인 선택 규칙에 따라 타겟 결과가 결정되지 않을 때 실행 순서가 j+1인 선택 규칙에 따라 n개의 후보 인식 결과들에서의 타겟 결과를 결정하도록 구성된다.
m개의 선택 규칙들의 실행 순서들은 각각의 알고리즘 복잡도 정도들에 따라 결정될 수 있고, 이러한 실행 순서들 및 알고리즘 복잡도 정도들은 양의 상관에 있다.
m개의 선택 규칙들은 명령 선택 규칙, 기능 선택 규칙, 및 대화 선택 규칙 중 적어도 2개를 포함할 수 있고, 명령 선택 규칙의 알고리즘 복잡도 정도는 기능 선택 규칙의 알고리즘 복잡도 정도보다 낮을 수 있고, 기능 선택 규칙의 알고리즘 복잡도 정도는 대화 선택 규칙의 알고리즘 복잡도 정도보다 낮을 수 있고,
명령 선택 규칙은, 명령 어휘가 i번째 후보 인식 결과에 매칭하는 명령 키워드를 포함하는지에 의존하여, i번째 후보 인식 결과가 타겟 결과인지 검출하라고 음성 인식 디바이스에게 명령하기 위해 사용되고(1≤i≤n임);
기능 선택 규칙은, 음성 어휘가 음성 키워드에 매칭하는 어휘 키워드를 포함하는지에 의존하여, i번째 후보 인식 결과가 타겟 결과인지 검출하라고 음성 인식 디바이스에게 명령하기 위해 사용되고- 음성 키워드는 i번째 후보 인식 결과에서의 적어도 하나의 키워드임 -;
대화 선택 규칙은, 훈련된 언어 모델에 따라 각각의 후보 인식 결과와 음성 신호 사이의 유사도 정도를 결정하여, 타겟 결과를 선택하라고 음성 인식 디바이스에게 명령하기 위해 사용된다.
결정 모듈(630)은 제1 검출 유닛 및 제1 결정 유닛을 포함할 수 있다.
제1 검출 유닛은 명령 어휘의 제1 대응관계가 i번째 후보 인식 결과에 매칭하는 명령 키워드를 포함하는지 검출하도록 구성되고(1≤i≤n임);
제1 결정 유닛은, 제1 대응관계가 i번째 후보 인식 결과에 매칭하는 명령 키워드를 포함할 때, i번째 후보 인식 결과가 타겟 결과라고 결정하도록 구성되고,
제1 대응관계는 적어도 명령 키워드를 포함한다.
결정 모듈(630)은 제2 검출 유닛, 키워드 검색 유닛, 제2 결정 유닛, 및 제3 결정 유닛을 추가로 포함할 수 있다.
제2 검출 유닛은, 제1 대응관계가 n개의 후보 인식 결과들 중 임의의 후보 인식 결과에 매칭하는 명령 키워드를 포함하지 않을 때, 명령 어휘의 제2 대응관계가 i번째 후보 인식 결과에서의 임의의 단어에 매칭하는 키워드를 포함하는지 검출하도록 구성되고;
키워드 검색 유닛은, 제2 대응관계가 i번째 후보 인식 결과에서의 단어에 매칭하는 키워드를 포함할 때, 제2 대응관계에서의 키워드에 대응하는 인덱스 값에 따라, 인덱스 값에 대응하는 명령 키워드에 대한 제1 대응관계를 검색하도록 구성되고;
제2 결정 유닛은 i번째 후보 인식 결과와 명령 키워드 사이의 편집 거리를 결정하도록 구성되고- 편집 거리는 i번째 후보 인식 결과를 명령 키워드로 변환하기 위해 요구되는 동작들의 수량을 표시하기 위해 사용됨 -;
제3 결정 유닛은, 편집 거리가 미리 설정된 값보다 작을 때, i번째 후보 인식 결과가 타겟 결과라고 결정하도록 구성되고,
제1 대응관계는 인덱스 값과 명령 키워드 사이의 대응관계를 포함하고, 제2 대응관계는 인덱스 값과 키워드 사이의 대응관계를 포함한다.
결정 모듈(630)은 템플릿 분석 유닛, 제3 검출 유닛, 및 제4 결정 유닛을 포함할 수 있고,
템플릿 분석 유닛은 i번째 후보 인식 결과의 기능 템플릿을 분석하도록 구성되고(1≤i≤n임);
제3 검출 유닛은 음성 어휘가 i번째 후보 인식 결과에서의 음성 키워드에 매칭하는 어휘 키워드를 포함하는지 검출하도록 구성되고;
제4 결정 유닛은, 음성 어휘가 i번째 후보 인식 결과에서의 음성 키워드에 매칭하는 어휘 키워드를 포함할 때, i번째 후보 인식 결과가 타겟 결과라고 결정하도록 구성되고- 음성 키워드는 i번째 후보 인식 결과에서의 적어도 하나의 키워드임 -,
i번째 후보 인식 결과는 기능 템플릿 및 음성 키워드를 포함한다.
결정 모듈(630)은 당혹도 계산 유닛 및 제5 결정 유닛을 포함할 수 있고,
당혹도 계산 유닛은 언어 모델에 따라 각각의 후보 인식 결과의 당혹도를 계산하도록 구성되고;
제5 결정 유닛은 n개의 후보 인식 결과들에서의 당혹도들 중 최소 값을 결정하도록 그리고 최소 값에 대응하는 i번째 후보 인식 결과가 타겟 결과라고 결정하도록 구성되고,
당혹도들은 후보 인식 결과들과 음성 신호 사이의 유사도 정도들을 표시하기 위해 사용되고, 당혹도들 및 유사도 정도들은 음의 상관에 있고, 언어 모델은 적어도 하나의 필드에 대응하는 전용 코퍼스에 따라 생성되는 N-그램 언어 모델이고, N-그램 언어 모델은 현재 단어의 발생 확률을 현재 단어 이전의 N-1개의 단어들의 발생 확률들에 따라 결정하기 위해 사용되고, N은 양의 정수이다.
실시예는 컴퓨터 판독 가능 저장 매체를 추가로 제공한다. 이러한 컴퓨터 판독 가능 저장 매체는 메모리에 포함되는 컴퓨터 판독 가능 저장 매체일 수 있거나, 또는 단독으로 존재하고 음성 인식 디바이스 내로 조립되지 않는 컴퓨터 판독 가능 저장 매체일 수 있다. 이러한 컴퓨터 판독 가능 저장 매체는 적어도 하나의 명령어, 적어도 하나의 프로그램, 및 코드 세트 또는 명령어 세트를 저장하고, 이러한 적어도 하나의 명령어, 적어도 하나의 프로그램, 및 코드 세트 또는 명령어 세트는 전술한 방법 실시예들에 따른 음성 인식 방법을 구현하도록 프로세서에 의해 로딩되고 실행된다.
도 8은 실시예에 따른 음성 인식 디바이스의 개략 구조도이다. 이러한 음성 인식 디바이스(700)는 CPU(Central Processing Unit)(701), RAM(random access memory)(702) 및 ROM(read-only memory)(703)을 포함하는 시스템 메모리(704), 및 시스템 메모리(704)와 CPU(701)를 접속하는 시스템 버스(705)를 포함한다. 이러한 음성 인식 디바이스(700)는 컴퓨터에서의 컴포넌트들 사이에 정보를 송신하기 위한 기본 I/O 시스템(input/output system)(706), 및 운영 체제(713), 애플리케이션 프로그램(714), 및 다른 프로그램 모듈(715)을 저장하기 위해 사용되는 대용량 저장 디바이스(707)를 추가로 포함한다.
기본 I/O 시스템(706)은 정보를 디스플레이하도록 구성되는 디스플레이(708), 및, 마우스 또는 키보드와 같은, 정보를 입력하기 위해 사용자에 의해 사용되는 입력 디바이스(709)를 포함한다. 디스플레이(708) 및 입력 디바이스(709)는 양자 모두 시스템 버스(705)에 접속되는 입력/출력 제어기(710)를 사용하여 CPU(701)에 접속된다. 기본 I/O 시스템(706)은, 키보드, 마우스, 또는 전자 스타일러스와 같은, 다수의 다른 디바이스들로부터의 입력들을 수신하고 처리하는, 입력/출력 제어기(710)를 추가로 포함할 수 있다. 유사하게, 입력/출력 제어기(710)는 디스플레이 스크린, 프린터 또는 다른 타입의 출력 디바이스에 출력을 추가로 제공한다.
대용량 저장 디바이스(707)는 시스템 버스(705)에 접속되는 대용량 저장 제어기(도시되지 않음)를 사용하여 CPU(701)에 접속된다. 대용량 저장 디바이스(707) 및 관련 컴퓨터 판독 가능 매체는 음성 인식 디바이스(700)에 대한 비-휘발성 저장을 제공한다. 즉, 대용량 저장 디바이스(707)는 하드 디스크 또는 CD-ROM(compact disc ROM) 드라이브와 같은 컴퓨터 판독 가능 매체(도시되지 않음)를 포함할 수 있다.
이러한 컴퓨터 판독 가능 매체는 컴퓨터 저장 매체 및 통신 매체를 포함할 수 있다. 이러한 컴퓨터 저장 매체는 임의의 방법 또는 기술을 사용하여 구현되고 컴퓨터 판독 가능 명령어, 데이터 구조, 프로그램 모듈, 또는 다른 데이터와 같은 정보를 저장하도록 구성되는 휘발성 및 비-휘발성 매체, 및 이동식 및 비이동식 매체를 포함한다. 이러한 컴퓨터 저장 매체는 RAM, ROM, EPROM(erasable programmable ROM), EEPROM(electrically erasable programmable ROM), 플래시 메모리 또는 다른 솔리드-스테이트 메모리 기술, CD-ROM, DVD(digital versatile disc) 또는 다른 광 메모리, 테이프 카트리지, 자기 카세트, 자기 디스크 메모리, 또는 다른 자기 저장 디바이스를 포함한다. 분명히, 해당 분야에서의 기술자는 컴퓨터 저장 매체가 전술한 타입들로 제한되는 것은 아니라는 점을 이해할 것이다. 시스템 메모리(704) 및 대용량 저장 디바이스(707)는 메모리라고 집합적으로 지칭될 수 있다.
실시예들에 따르면, 음성 인식 디바이스(700)는, 인터넷과 같은 네트워크를 통해, 네트워크 상의 원격 컴퓨터에 추가로 접속될 수 있다. 즉, 음성 인식 디바이스(700)는 시스템 버스(705)에 접속되는 네트워크 인터페이스 유닛(711)을 사용하여 네트워크(712)에 접속될 수 있거나, 또는 네트워크 인터페이스 유닛(711)을 사용하여 다른 타입의 네트워크 또는 원격 컴퓨터 시스템(도시되지 않음)에 접속될 수 있다.
구체적으로, 이러한 실시예에서, 음성 인식 디바이스(700)는 메모리 및 하나 이상의 프로그램을 추가로 포함하고, 이러한 하나 이상의 프로그램은 메모리에 저장되고, 하나 이상의 프로세서에 의해 실행되도록 구성된다. 이러한 하나 이상의 프로그램은 전술한 음성 인식 방법을 수행하기 위해 사용되는 명령어를 포함한다.
실시예에 따르면, 음성 인식 시스템이 제공된다. 이러한 음성 인식 시스템은 스마트 스피커 및 서버를 포함한다. 이러한 스마트 스피커는 도 1에 도시되는 바와 같은 음성 수집 디바이스일 수 있고, 이러한 서버는 도 1에 도시되는 음성 인식 디바이스일 수 있다.
이러한 스마트 스피커는 음성 신호를 수집하도록 그리고 이러한 음성 신호를 서버에 전송하도록 구성된다.
이러한 서버는, 음성 신호를 획득하도록; 이러한 음성 신호를 음성 인식 알고리즘에 따라 인식하여, n개의 후보 인식 결과들을 획득하도록- 이러한 후보 인식 결과들은 음성 신호에 대응하는 텍스트 정보이고, n은 1보다 큰 정수임 -; 실행 순서가 m개의 선택 규칙들에서의 j인 선택 규칙에 따라 n개의 후보 인식 결과들에서의 타겟 결과를 결정하도록- 이러한 타겟 결과는 n개의 후보 인식 결과들에서의 음성 신호와의 최고 매칭 정도를 갖는 후보 인식 결과임이고, m은 1보다 큰 정수이고, j의 초기 값은 1임 -; 그리고 실행 순서가 j인 선택 규칙에 따라 타겟 결과가 결정되지 않을 때 실행 순서가 j+1인 선택 규칙에 따라 n개의 후보 인식 결과들에서의 타겟 결과를 결정하여, 이러한 타겟 결과를 스마트 스피커에 전송하도록 구성된다. 이러한 서버는 도 3 내지 도 6 중 어느 하나에 도시되는 음성 인식 방법에 따라 타겟 결과를 인식할 수 있다.
이러한 스마트 스피커는 타겟 결과에 따라 응답을 행하도록 추가로 구성된다. 이러한 응답은 이에 제한되는 것은 아니지만, 타겟 결과에 따라 명령 실행을 수행하는 것, 타겟 결과에 따라 기능 응답을 행하는 것, 및 타겟 결과에 따라 음성 대화를 행하는 것 중 적어도 하나를 포함한다.
예를 들어, 타겟 결과에 따라 명령 실행을 수행하는 것은 다음의 명령 실행들: 재생, 일시정지, 마지막, 및 다음 중 적어도 하나를 포함한다.
예를 들어, 타겟 결과에 따라 기능 응답을 행하는 것은 다음의 기능 응답들: 가수의 노래, 노래 명칭, 또는 스타일을 재생하는 것, 호스트의 음악 프로그램, 프로그램 명칭, 또는 타입을 재생하는 것, 음성 내비게이션, 스케줄 리마인더, 및 번역 중 적어도 하나를 포함한다.
예를 들어, 타겟 결과에 따라 음성 대화를 행하는 것은 다음의 대화 시나리오들: 날씨 질문들 및 답변들, 지식 질문들 및 답변들, 엔터테인먼트 채팅, 및 조크 설명 중 적어도 하나를 포함한다.
해당 분야에서의 통상의 기술자는 전술한 실시예들의 단계들의 전부 또는 일부가 하드웨어를 사용하여 구현될 수 있거나, 또는 관련 하드웨어에게 명령하는 프로그램에 의해 구현될 수 있다는 점을 이해할 수 있다. 이러한 프로그램은 컴퓨터 판독 가능한 저장 매체에 저장될 수 있다. 이러한 저장 매체는 ROM, 자기 디스크, 광 디스크 등일 수 있다.
전술한 설명들은 단지 본 출원의 바람직한 실시예들이지, 본 출원을 제한하려고 의도되는 것은 아니다. 본 출원의 사상 및 원리 내에서 이루어지는 임의의 수정, 동등한 대체, 또는 개선은 본 출원의 보호 범위 내에 있을 것이다.
Claims (20)
- 음성 인식 방법으로서,
음성 신호를 획득하는 단계;
음성 인식 알고리즘에 따라 상기 음성 신호를 인식하여, n개의 후보 인식 결과들을 획득하는 단계- 상기 후보 인식 결과들은 상기 음성 신호에 대응하는 텍스트 정보를 포함하고, n은 1보다 큰 정수임 -;
m개의 선택 규칙들 중에서 선택되는 선택 규칙에 따라 상기 n개의 후보 인식 결과들 중에서 타겟 결과를 결정하는 단계- 상기 선택 규칙은 j의 실행 순서를 갖고, 상기 타겟 결과는 상기 n개의 후보 인식 결과들 중에서 상기 음성 신호와의 최고 매칭 정도를 갖는 후보 인식 결과이고, m은 1보다 큰 정수이고, j의 초기 값은 1임 -; 및
상기 타겟 결과가 j의 실행 순서를 갖는 선택 규칙에 따라 식별되지 않는 것에 기초하여 j+1의 실행 순서를 갖는 선택 규칙에 따라 상기 n개의 후보 인식 결과들 중에서 상기 타겟 결과를 결정하는 단계를 포함하는 음성 인식 방법. - 제1항에 있어서, 상기 m개의 선택 규칙들의 실행 순서들은 각각의 알고리즘 복잡도 정도들에 따라 결정되고, 실행 순서들 및 상기 알고리즘 복잡도 정도들은 양의 상관을 갖는 음성 인식 방법.
- 제1항에 있어서, 상기 m개의 선택 규칙들은 명령 선택 규칙, 기능 선택 규칙, 및 대화 선택 규칙 중 적어도 2개를 포함하고, 상기 명령 선택 규칙의 알고리즘 복잡도 정도는 상기 기능 선택 규칙의 알고리즘 복잡도 정도보다 낮고, 상기 기능 선택 규칙의 알고리즘 복잡도 정도는 상기 대화 선택 규칙의 알고리즘 복잡도 정도보다 낮고,
상기 명령 선택 규칙은, 명령 어휘가 i번째 후보 인식 결과에 매칭하는 명령 키워드를 포함하는지에 의존하여, 상기 i번째 후보 인식 결과가 상기 타겟 결과인지 검출하라고 음성 인식 디바이스에게 명령하기 위해 사용되고(1≤i≤n임);
상기 기능 선택 규칙은, 음성 어휘가 음성 키워드에 매칭하는 어휘 키워드를 포함하는지에 의존하여, 상기 i번째 후보 인식 결과가 상기 타겟 결과인지 검출하라고 상기 음성 인식 디바이스에게 명령하기 위해 사용되고- 상기 음성 키워드는 상기 i번째 후보 인식 결과에서의 적어도 하나의 키워드임 -;
상기 대화 선택 규칙은, 상기 타겟 결과를 선택하기 위해, 훈련된 언어 모델에 따라 각각의 후보 인식 결과와 상기 음성 신호 사이의 유사도 정도를 결정하라고 상기 음성 인식 디바이스에게 명령하기 위해 사용되는 음성 인식 방법. - 제3항에 있어서, j의 실행 순서를 갖는 선택 규칙은 상기 명령 선택 규칙을 포함하고, m개의 선택 규칙들에서 실행 순서가 j인 선택 규칙에 따라 상기 n개의 후보 인식 결과들에서의 타겟 결과를 결정하는 단계는,
상기 명령 어휘의 제1 대응관계가 상기 i번째 후보 인식 결과에 매칭하는 명령 키워드를 포함하는지 검출하는 단계(1≤i≤n임); 및
상기 제1 대응관계가 상기 i번째 후보 인식 결과에 매칭하는 명령 키워드를 포함할 때, 상기 i번째 후보 인식 결과가 상기 타겟 결과라고 결정하는 단계를 포함하고,
상기 제1 대응관계는 적어도 상기 명령 키워드를 포함하는 음성 인식 방법. - 제4항에 있어서, 상기 명령 어휘의 제1 대응관계가 상기 i번째 후보 인식 결과에 매칭하는 명령 키워드를 포함하는지 검출하는 단계 후에, 상기 방법은,
상기 제1 대응관계가 상기 n개의 후보 인식 결과들 중 임의의 후보 인식 결과에 매칭하는 명령 키워드를 포함하지 않을 때, 상기 명령 어휘의 제2 대응관계가 상기 i번째 후보 인식 결과에서의 임의의 단어에 매칭하는 키워드를 포함하는지 검출하는 단계;
상기 제2 대응관계가 상기 i번째 후보 인식 결과에서의 단어에 매칭하는 키워드를 포함할 때, 상기 제2 대응관계에서의 키워드에 대응하는 인덱스 값에 따라, 상기 인덱스 값에 대응하는 명령 키워드에 대한 제1 대응관계를 검색하는 단계;
상기 i번째 후보 인식 결과와 상기 명령 키워드 사이의 편집 거리를 결정하는 단계- 상기 편집 거리는 상기 i번째 후보 인식 결과를 상기 명령 키워드로 변환하기 위해 요구되는 동작들의 수량을 표시하기 위해 사용됨 -; 및
상기 편집 거리가 미리 설정된 값보다 작을 때, 상기 i번째 후보 인식 결과가 상기 타겟 결과라고 결정하는 단계를 추가로 포함하고,
상기 제1 대응관계는 상기 인덱스 값과 상기 명령 키워드 사이의 대응관계를 포함하고, 상기 제2 대응관계는 상기 인덱스 값과 상기 키워드 사이의 대응관계를 포함하는 음성 인식 방법. - 제3항에 있어서, j의 실행 순서를 갖는 선택 규칙은 상기 기능 선택 규칙을 포함하고, m개의 선택 규칙들에서 j의 실행 순서를 갖는 선택 규칙에 따라 상기 n개의 후보 인식 결과들에서의 타겟 결과를 결정하는 단계는,
상기 i번째 후보 인식 결과의 기능 템플릿을 분석하는 단계(1≤i≤n임);
상기 음성 어휘가 상기 i번째 후보 인식 결과에서의 음성 키워드에 매칭하는 어휘 키워드를 포함하는지 검출하는 단계; 및
상기 음성 어휘가 상기 i번째 후보 인식 결과에서의 음성 키워드에 매칭하는 어휘 키워드를 포함할 때, 상기 i번째 후보 인식 결과가 상기 타겟 결과라고 결정하는 단계- 상기 음성 키워드는 상기 i번째 후보 인식 결과에서의 적어도 하나의 키워드임 -를 포함하고,
상기 i번째 후보 인식 결과는 상기 기능 템플릿 및 상기 음성 키워드를 포함하는 음성 인식 방법. - 제3항에 있어서, j의 실행 순서를 갖는 선택 규칙은 상기 대화 선택 규칙을 포함하고, m개의 선택 규칙들에서 j의 실행 순서를 갖는 선택 규칙에 따라 상기 n개의 후보 인식 결과들에서의 타겟 결과를 결정하는 단계는,
상기 언어 모델에 따라 각각의 후보 인식 결과의 당혹도를 계산하는 단계;
상기 n개의 후보 인식 결과들에서의 당혹도들 중 최소 값을 결정하는 단계 및 상기 최소 값에 대응하는 i번째 후보 인식 결과가 상기 타겟 결과라고 결정하는 단계를 포함하고,
상기 당혹도들은 상기 후보 인식 결과들과 상기 음성 신호 사이의 유사도 정도들을 표시하기 위해 사용되고, 상기 당혹도들 및 상기 유사도 정도들은 음의 상관을 갖고, 상기 언어 모델은 적어도 하나의 필드에 대응하는 전용 코퍼스에 따라 생성되는 N-그램 언어 모델이고, 상기 N-그램 언어 모델은 현재 단어의 발생 확률을 상기 현재 단어 이전의 N-1개의 단어들의 발생 확률들에 따라 결정하기 위해 사용되고, N은 양의 정수인 음성 인식 방법. - 음성 인식 장치로서,
음성 신호를 획득하도록 구성되는 신호 획득 모듈;
음성 인식 알고리즘에 따라, 상기 신호 획득 모듈에 의해 획득되는 음성 신호를 인식하여, n개의 후보 인식 결과들을 획득하도록 구성되는 음성 인식 모듈- 상기 후보 인식 결과들은 상기 음성 신호에 대응하는 텍스트 정보를 포함하고, n은 1보다 큰 정수임 -; 및
m개의 선택 규칙들- 상기 선택 규칙은 j의 실행 순서를 가짐 - 중에서 선택되는 선택 규칙에 따라, 상기 음성 인식 모듈에 의한 인식에 의해 획득되는 n개의 후보 인식 결과들 중에서 타겟 결과를 결정하도록 구성되는 결정 모듈- 상기 타겟 결과는 상기 n개의 후보 인식 결과들에서의 음성 신호와의 최고 매칭 정도를 갖는 후보 인식 결과이고, m은 1보다 큰 정수이고, j의 초기 값은 1임 -을 포함하고,
상기 결정 모듈은, 상기 타겟 결과가 j의 실행 순서를 갖는 선택 규칙에 따라 결정되지 않을 때 j+1의 실행 순서를 갖는 선택 규칙에 따라 상기 n개의 후보 인식 결과들 중에서 상기 타겟 결과를 결정하도록 추가로 구성되는 음성 인식 장치. - 제8항에 있어서, 상기 m개의 선택 규칙들의 실행 순서들은 각각의 알고리즘 복잡도 정도들에 따라 결정되고, 상기 실행 순서들 및 상기 알고리즘 복잡도 정도들은 양의 상관을 갖는 음성 인식 장치.
- 제8항에 있어서, 상기 m개의 선택 규칙들은 명령 선택 규칙, 기능 선택 규칙, 및 대화 선택 규칙 중에서 선택되는 적어도 2개를 포함하고,
상기 명령 선택 규칙의 알고리즘 복잡도 정도는 상기 기능 선택 규칙의 알고리즘 복잡도 정도보다 낮고, 상기 기능 선택 규칙의 알고리즘 복잡도 정도는 상기 대화 선택 규칙의 알고리즘 복잡도 정도보다 낮고,
상기 명령 선택 규칙은, 명령 어휘가 i번째 후보 인식 결과에 매칭하는 명령 키워드를 포함하는지에 의존하여, 상기 i번째 후보 인식 결과가 상기 타겟 결과인지 검출하라고 음성 인식 디바이스에게 명령하기 위해 사용되고(1≤i≤n임);
상기 기능 선택 규칙은, 음성 어휘가 음성 키워드에 매칭하는 어휘 키워드를 포함하는지에 의존하여, 상기 i번째 후보 인식 결과가 상기 타겟 결과인지 검출하라고 상기 음성 인식 디바이스에게 명령하기 위해 사용되고- 상기 음성 키워드는 상기 i번째 후보 인식 결과에서의 적어도 하나의 키워드임 -;
상기 대화 선택 규칙은, 상기 타겟 결과를 선택하기 위해, 훈련된 언어 모델에 따라 각각의 후보 인식 결과와 상기 음성 신호 사이의 유사도 정도를 결정하라고 상기 음성 인식 디바이스에게 명령하기 위해 사용되는 음성 인식 장치. - 제10항에 있어서, 상기 결정 모듈은 제1 검출 유닛 및 제1 결정 유닛을 포함하고,
상기 제1 검출 유닛은 상기 명령 어휘의 제1 대응관계가 상기 i번째 후보 인식 결과에 매칭하는 명령 키워드를 포함하는지 검출하도록 구성되고(1≤i≤n임);
상기 제1 결정 유닛은, 상기 제1 대응관계가 상기 i번째 후보 인식 결과에 매칭하는 명령 키워드를 포함할 때, 상기 i번째 후보 인식 결과가 상기 타겟 결과라고 결정하도록 구성되고,
상기 제1 대응관계는 적어도 상기 명령 키워드를 포함하는 음성 인식 장치. - 제11항에 있어서, 상기 결정 모듈은 제2 검출 유닛, 키워드 검색 유닛, 제2 결정 유닛, 및 제3 결정 유닛을 추가로 포함하고,
상기 제2 검출 유닛은, 상기 제1 대응관계가 상기 n개의 후보 인식 결과들 중 임의의 후보 인식 결과에 매칭하는 명령 키워드를 포함하지 않을 때, 상기 명령 어휘의 제2 대응관계가 상기 i번째 후보 인식 결과에서의 임의의 단어에 매칭하는 키워드를 포함하는지 검출하도록 구성되고;
상기 키워드 검색 유닛은, 상기 제2 대응관계가 상기 i번째 후보 인식 결과에서의 단어에 매칭하는 키워드를 포함할 때, 상기 제2 대응관계에서의 키워드에 대응하는 인덱스 값에 따라, 상기 인덱스 값에 대응하는 명령 키워드에 대한 제1 대응관계를 검색하도록 구성되고;
상기 제2 결정 유닛은 상기 i번째 후보 인식 결과와 상기 명령 키워드 사이의 편집 거리를 결정하도록 구성되고- 상기 편집 거리는 상기 i번째 후보 인식 결과를 상기 명령 키워드로 변환하기 위해 요구되는 동작들의 수량을 표시하기 위해 사용됨 -;
상기 제3 결정 유닛은 상기 편집 거리가 미리 설정된 값보다 작을 때, 상기 i번째 후보 인식 결과가 상기 타겟 결과라고 결정하도록 구성되고,
상기 제1 대응관계는 상기 인덱스 값과 상기 명령 키워드 사이의 대응관계를 포함하고, 상기 제2 대응관계는 상기 인덱스 값과 상기 키워드 사이의 대응관계를 포함하는 음성 인식 장치. - 제10항에 있어서, 상기 결정 모듈은 템플릿 분석 유닛, 제3 검출 유닛, 및 제4 결정 유닛을 포함하고,
상기 템플릿 분석 유닛은 상기 i번째 후보 인식 결과의 기능 템플릿을 분석하도록 구성되고(1≤i≤n임);
상기 제3 검출 유닛은 상기 음성 어휘가 상기 i번째 후보 인식 결과에서의 음성 키워드에 매칭하는 어휘 키워드를 포함하는지 검출하도록 구성되고;
상기 제4 결정 유닛은, 상기 음성 어휘가 상기 i번째 후보 인식 결과에서의 음성 키워드에 매칭하는 어휘 키워드를 포함할 때, 상기 i번째 후보 인식 결과가 상기 타겟 결과라고 결정하도록 구성되고- 상기 음성 키워드는 상기 i번째 후보 인식 결과에서의 적어도 하나의 키워드임 -,
상기 i번째 후보 인식 결과는 상기 기능 템플릿 및 상기 음성 키워드를 포함하는 음성 인식 장치. - 제10항에 있어서, 상기 결정 모듈은 당혹도 계산 유닛 및 제5 결정 유닛을 포함하고,
상기 당혹도 계산 유닛은 상기 언어 모델에 따라 각각의 후보 인식 결과의 당혹도를 계산하도록 구성되고;
상기 제5 결정 유닛은 상기 n개의 후보 인식 결과들에서의 당혹도들 중 최소 값을 결정하도록 그리고 상기 최소 값에 대응하는 i번째 후보 인식 결과가 상기 타겟 결과라고 결정하도록 구성되고,
상기 당혹도들은 상기 후보 인식 결과들과 상기 음성 신호 사이의 유사도 정도들을 표시하기 위해 사용되고, 상기 당혹도들 및 상기 유사도 정도들은 음의 상관을 갖고, 상기 언어 모델은 적어도 하나의 필드에 대응하는 전용 코퍼스에 따라 생성되는 N-그램 언어 모델이고, 상기 N-그램 언어 모델은 현재 단어의 발생 확률을 상기 현재 단어 이전의 N-1개의 단어들의 발생 확률들에 따라 결정하기 위해 사용되고, N은 양의 정수인 음성 인식 장치. - 음성 인식 방법으로서,
음성 인식 디바이스에 의해, 음성 신호를 획득하는 단계;
상기 음성 인식 디바이스에 의해, 음성 인식 알고리즘에 따라 상기 음성 신호를 인식하여, n개의 후보 인식 결과들을 획득하는 단계- 상기 후보 인식 결과들은 상기 음성 신호에 대응하는 텍스트 정보를 포함하고, n은 1보다 큰 정수임 -;
상기 음성 인식 디바이스에 의해, m개의 선택 규칙들 중에서 선택되는 선택 규칙에 따라 상기 n개의 후보 인식 결과들 중에서 타겟 결과를 결정하는 단계- 상기 선택 규칙은 j의 실행 순서를 갖고, 상기 타겟 결과는 상기 n개의 후보 인식 결과들에서의 음성 신호와의 최고 매칭 정도를 갖는 후보 인식 결과이고, m은 1보다 큰 정수이고, j의 초기 값은 1임 -;
상기 음성 인식 디바이스에 의해, j의 실행 순서를 갖는 선택 규칙에 따라 상기 타겟 결과가 결정되지 않을 때, j+1의 실행 순서를 갖는 선택 규칙에 따라 상기 n개의 후보 인식 결과들 중에서 상기 타겟 결과를 결정하는 단계를 포함하는 방법. - 제15항에 있어서, 상기 m개의 선택 규칙들의 실행 순서들은 각각의 알고리즘 복잡도 정도들에 따라 결정되고, 상기 실행 순서들 및 상기 알고리즘 복잡도 정도들은 양의 상관을 갖는 방법.
- 제15항에 있어서, 상기 m개의 선택 규칙들은 명령 선택 규칙, 기능 선택 규칙, 및 대화 선택 규칙 중 적어도 2개를 포함하고, 상기 명령 선택 규칙의 알고리즘 복잡도 정도는 상기 기능 선택 규칙의 알고리즘 복잡도 정도보다 낮고, 상기 기능 선택 규칙의 알고리즘 복잡도 정도는 상기 대화 선택 규칙의 알고리즘 복잡도 정도보다 낮고,
상기 명령 선택 규칙은, 명령 어휘가 i번째 후보 인식 결과에 매칭하는 명령 키워드를 포함하는지에 의존하여, 상기 i번째 후보 인식 결과가 상기 타겟 결과인지 검출하라고 음성 인식 디바이스에게 명령하기 위해 사용되고(1≤i≤n임);
상기 기능 선택 규칙은, 음성 어휘가 음성 키워드에 매칭하는 어휘 키워드를 포함하는지에 의존하여, 상기 i번째 후보 인식 결과가 상기 타겟 결과인지 검출하라고 상기 음성 인식 디바이스에게 명령하기 위해 사용되고- 상기 음성 키워드는 상기 i번째 후보 인식 결과에서의 적어도 하나의 키워드임 -;
상기 대화 선택 규칙은, 훈련된 언어 모델에 따라 각각의 후보 인식 결과와 상기 음성 신호 사이의 유사도 정도를 결정하여 상기 타겟 결과를 선택하라고 상기 음성 인식 디바이스에게 명령하기 위해 사용되는 방법. - 음성 인식 디바이스로서,
프로세서 및 메모리를 포함하고, 상기 메모리는 적어도 하나의 명령어, 적어도 하나의 프로그램, 및 코드 세트 또는 명령어 세트를 저장하고, 상기 적어도 하나의 명령어, 상기 적어도 하나의 프로그램, 및 상기 코드 세트 또는 상기 명령어 세트는 제1항 내지 제7항 중 어느 한 항에 따른 음성 인식 방법을 구현하도록 상기 프로세서에 의해 로딩되고 실행되는 음성 인식 디바이스. - 컴퓨터 판독 가능 저장 매체로서,
상기 저장 매체는 적어도 하나의 명령어, 적어도 하나의 프로그램, 및 코드 세트 또는 명령어 세트를 저장하고, 상기 적어도 하나의 명령어, 상기 적어도 하나의 프로그램, 및 상기 코드 세트 또는 상기 명령어 세트는 제1항 내지 제7항 중 어느 한 항에 따른 음성 인식 방법을 구현하도록 프로세서에 의해 로딩되고 실행되는 컴퓨터 판독 가능 저장 매체. - 음성 인식 시스템으로서,
스마트 스피커 및 서버를 포함하고,
상기 스마트 스피커는 음성 신호를 수집하도록 그리고 상기 음성 신호를 상기 서버에 전송하도록 구성되고;
상기 서버는, 음성 신호를 획득하도록; 음성 인식 알고리즘에 따라 상기 음성 신호를 인식하여, n개의 후보 인식 결과들을 획득하도록- 상기 후보 인식 결과들은 상기 음성 신호에 대응하는 텍스트 정보이고, n은 1보다 큰 정수임 -; 실행 순서가 m개의 선택 규칙들에서의 j인 선택 규칙에 따라 상기 n개의 후보 인식 결과들에서의 타겟 결과를 결정하도록- 상기 타겟 결과는 상기 n개의 후보 인식 결과들에서의 음성 신호와의 최고 매칭 정도를 갖는 후보 인식 결과이고, m은 1보다 큰 정수이고, j의 초기 값은 1임 -; 그리고 실행 순서가 j인 상기 선택 규칙에 따라 상기 타겟 결과가 결정되지 않을 때 실행 순서가 j+1인 선택 규칙에 따라 상기 n개의 후보 인식 결과들에서의 타겟 결과를 결정하여, 상기 타겟 결과를 상기 스마트 스피커에 전송하도록 구성되고;
상기 스마트 스피커는 상기 타겟 결과에 따라 응답을 행하도록 구성되는 음성 인식 시스템.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710517737.4A CN108288468B (zh) | 2017-06-29 | 2017-06-29 | 语音识别方法及装置 |
CN201710517737.4 | 2017-06-29 | ||
PCT/CN2018/088646 WO2019001194A1 (zh) | 2017-06-29 | 2018-05-28 | 语音识别方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20190120353A KR20190120353A (ko) | 2019-10-23 |
KR102315732B1 true KR102315732B1 (ko) | 2021-10-21 |
Family
ID=62831578
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020197028881A KR102315732B1 (ko) | 2017-06-29 | 2018-05-28 | 음성 인식 방법, 디바이스, 장치, 및 저장 매체 |
Country Status (6)
Country | Link |
---|---|
US (1) | US11164568B2 (ko) |
EP (1) | EP3648099B1 (ko) |
JP (1) | JP6820058B2 (ko) |
KR (1) | KR102315732B1 (ko) |
CN (1) | CN108288468B (ko) |
WO (1) | WO2019001194A1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023163254A1 (ko) * | 2022-02-28 | 2023-08-31 | 엘지전자 주식회사 | Tv와 리모컨을 포함하는 시스템 및 그 제어 방법 |
Families Citing this family (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108600911B (zh) * | 2018-03-30 | 2021-05-18 | 联想(北京)有限公司 | 一种输出方法及电子设备 |
CN109034418B (zh) * | 2018-07-26 | 2021-05-28 | 国家电网公司 | 作业现场信息传输方法及系统 |
CN108922531B (zh) * | 2018-07-26 | 2020-10-27 | 腾讯科技(北京)有限公司 | 槽位识别方法、装置、电子设备及存储介质 |
CN109256125B (zh) * | 2018-09-29 | 2022-10-14 | 阿波罗智联(北京)科技有限公司 | 语音的离线识别方法、装置与存储介质 |
CN109634692A (zh) * | 2018-10-23 | 2019-04-16 | 蔚来汽车有限公司 | 车载对话系统及用于其的处理方法和系统 |
CN111198936B (zh) * | 2018-11-20 | 2023-09-15 | 北京嘀嘀无限科技发展有限公司 | 一种语音搜索方法、装置、电子设备及存储介质 |
CN109256133A (zh) * | 2018-11-21 | 2019-01-22 | 上海玮舟微电子科技有限公司 | 一种语音交互方法、装置、设备及存储介质 |
CN109814831A (zh) * | 2019-01-16 | 2019-05-28 | 平安普惠企业管理有限公司 | 智能对话方法、电子装置及存储介质 |
CN109920415A (zh) * | 2019-01-17 | 2019-06-21 | 平安城市建设科技(深圳)有限公司 | 基于语音识别的人机问答方法、装置、设备和存储介质 |
CN109871441A (zh) * | 2019-03-13 | 2019-06-11 | 北京航空航天大学 | 一种基于神经网络的导学问答系统及方法 |
US11158307B1 (en) * | 2019-03-25 | 2021-10-26 | Amazon Technologies, Inc. | Alternate utterance generation |
CN110570839A (zh) * | 2019-09-10 | 2019-12-13 | 中国人民解放军陆军军医大学第一附属医院 | 基于人机交互的智能监护系统 |
KR102577589B1 (ko) * | 2019-10-22 | 2023-09-12 | 삼성전자주식회사 | 음성 인식 방법 및 음성 인식 장치 |
CN110827802A (zh) * | 2019-10-31 | 2020-02-21 | 苏州思必驰信息科技有限公司 | 语音识别训练和解码方法及装置 |
CN111028828A (zh) * | 2019-12-20 | 2020-04-17 | 京东方科技集团股份有限公司 | 一种基于画屏的语音交互方法、画屏及存储介质 |
CN111554275B (zh) * | 2020-05-15 | 2023-11-03 | 深圳前海微众银行股份有限公司 | 语音识别方法、装置、设备及计算机可读存储介质 |
CN112151022A (zh) * | 2020-09-25 | 2020-12-29 | 北京百度网讯科技有限公司 | 语音识别的优化方法、装置、设备以及存储介质 |
CN112331207A (zh) * | 2020-09-30 | 2021-02-05 | 音数汇元(上海)智能科技有限公司 | 服务内容监控方法、装置、电子设备和存储介质 |
CN112614490B (zh) * | 2020-12-09 | 2024-04-16 | 北京罗克维尔斯科技有限公司 | 生成语音指令的方法、装置、介质、设备、系统及车辆 |
CN112669848B (zh) * | 2020-12-14 | 2023-12-01 | 深圳市优必选科技股份有限公司 | 一种离线语音识别方法、装置、电子设备及存储介质 |
CN113744736B (zh) * | 2021-09-08 | 2023-12-08 | 北京声智科技有限公司 | 命令词识别方法、装置、电子设备及存储介质 |
CN114386401A (zh) * | 2022-01-13 | 2022-04-22 | 中国工商银行股份有限公司 | 数字人播报方法、装置、设备、存储介质和程序产品 |
Family Cites Families (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS57109997A (en) * | 1980-12-26 | 1982-07-08 | Tokyo Shibaura Electric Co | Word information input device |
JP2764277B2 (ja) * | 1988-09-07 | 1998-06-11 | 株式会社日立製作所 | 音声認識装置 |
JP3822990B2 (ja) * | 1999-01-07 | 2006-09-20 | 株式会社日立製作所 | 翻訳装置、記録媒体 |
DE10306022B3 (de) * | 2003-02-13 | 2004-02-19 | Siemens Ag | Dreistufige Einzelworterkennung |
CN101345051B (zh) * | 2008-08-19 | 2010-11-10 | 南京师范大学 | 带定量参数的地理信息系统语音控制方法 |
US8489398B1 (en) * | 2011-01-14 | 2013-07-16 | Google Inc. | Disambiguation of spoken proper names |
JP2012208218A (ja) * | 2011-03-29 | 2012-10-25 | Yamaha Corp | 電子機器 |
US20170109676A1 (en) * | 2011-05-08 | 2017-04-20 | Panaya Ltd. | Generation of Candidate Sequences Using Links Between Nonconsecutively Performed Steps of a Business Process |
KR101914548B1 (ko) * | 2012-01-05 | 2018-11-02 | 엘지전자 주식회사 | 음성 인식 기능을 구비한 이동 단말기 및 그 검색 결과 제공 방법 |
US8908879B2 (en) * | 2012-05-23 | 2014-12-09 | Sonos, Inc. | Audio content auditioning |
KR101971513B1 (ko) * | 2012-07-05 | 2019-04-23 | 삼성전자주식회사 | 전자 장치 및 이의 음성 인식 오류 수정 방법 |
CN103915095B (zh) * | 2013-01-06 | 2017-05-31 | 华为技术有限公司 | 语音识别的方法、交互设备、服务器和系统 |
KR102072826B1 (ko) * | 2013-01-31 | 2020-02-03 | 삼성전자주식회사 | 음성 인식 장치 및 응답 정보 제공 방법 |
JP6236805B2 (ja) * | 2013-03-05 | 2017-11-29 | 日本電気株式会社 | 発話コマンド認識システム |
JP5728527B2 (ja) * | 2013-05-13 | 2015-06-03 | 日本電信電話株式会社 | 発話候補生成装置、発話候補生成方法、及び発話候補生成プログラム |
US9208779B2 (en) * | 2013-09-06 | 2015-12-08 | Google Inc. | Mixture of n-gram language models |
CN103500579B (zh) * | 2013-10-10 | 2015-12-23 | 中国联合网络通信集团有限公司 | 语音识别方法、装置及系统 |
JP6004452B2 (ja) * | 2014-07-24 | 2016-10-05 | インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation | 言語モデル用の学習テキストを選択する方法及び当該学習テキストを使用して言語モデルを学習する方法、並びに、それらを実行するためのコンピュータ及びコンピュータ・プログラム |
SG11201702029PA (en) * | 2014-09-14 | 2017-04-27 | Speaktoit Inc | Platform for creating customizable dialog system engines |
KR102380833B1 (ko) * | 2014-12-02 | 2022-03-31 | 삼성전자주식회사 | 음성 인식 방법 및 음성 인식 장치 |
JP6461308B2 (ja) * | 2015-04-16 | 2019-01-30 | 三菱電機株式会社 | 音声認識装置およびリスコアリング装置 |
US10606846B2 (en) | 2015-10-16 | 2020-03-31 | Baidu Usa Llc | Systems and methods for human inspired simple question answering (HISQA) |
CN106126714A (zh) * | 2016-06-30 | 2016-11-16 | 联想(北京)有限公司 | 信息处理方法及信息处理装置 |
CN106531160A (zh) * | 2016-10-26 | 2017-03-22 | 安徽省云逸智能科技有限公司 | 一种基于词网语言模型的连续语音识别系统 |
-
2017
- 2017-06-29 CN CN201710517737.4A patent/CN108288468B/zh active Active
-
2018
- 2018-05-28 EP EP18825077.3A patent/EP3648099B1/en active Active
- 2018-05-28 JP JP2019560155A patent/JP6820058B2/ja active Active
- 2018-05-28 KR KR1020197028881A patent/KR102315732B1/ko active IP Right Grant
- 2018-05-28 WO PCT/CN2018/088646 patent/WO2019001194A1/zh unknown
-
2019
- 2019-08-21 US US16/547,097 patent/US11164568B2/en active Active
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023163254A1 (ko) * | 2022-02-28 | 2023-08-31 | 엘지전자 주식회사 | Tv와 리모컨을 포함하는 시스템 및 그 제어 방법 |
Also Published As
Publication number | Publication date |
---|---|
JP6820058B2 (ja) | 2021-01-27 |
US20190385599A1 (en) | 2019-12-19 |
US11164568B2 (en) | 2021-11-02 |
EP3648099A4 (en) | 2020-07-08 |
CN108288468A (zh) | 2018-07-17 |
EP3648099A1 (en) | 2020-05-06 |
CN108288468B (zh) | 2019-07-19 |
JP2020518861A (ja) | 2020-06-25 |
KR20190120353A (ko) | 2019-10-23 |
EP3648099B1 (en) | 2021-06-30 |
WO2019001194A1 (zh) | 2019-01-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102315732B1 (ko) | 음성 인식 방법, 디바이스, 장치, 및 저장 매체 | |
US11816441B2 (en) | Device and method for machine reading comprehension question and answer | |
US9899020B2 (en) | Machine learning dialect identification | |
CN103956169B (zh) | 一种语音输入方法、装置和系统 | |
US11830482B2 (en) | Method and apparatus for speech interaction, and computer storage medium | |
CN108920649B (zh) | 一种信息推荐方法、装置、设备和介质 | |
KR102529262B1 (ko) | 전자 장치 및 제어 방법 | |
US11881209B2 (en) | Electronic device and control method | |
CN111382260A (zh) | 一种检索文本纠错方法、装置和存储介质 | |
US11398226B1 (en) | Complex natural language processing | |
US11532301B1 (en) | Natural language processing | |
WO2024045475A1 (zh) | 语音识别方法、装置、设备和介质 | |
CN112669842A (zh) | 人机对话控制方法、装置、计算机设备及存储介质 | |
JP2021076818A (ja) | 音声対話するための方法、装置、デバイス及びコンピュータ読み取り可能な記憶媒体 | |
CN114003682A (zh) | 一种文本分类方法、装置、设备及存储介质 | |
CN111126084B (zh) | 数据处理方法、装置、电子设备和存储介质 | |
WO2024093578A1 (zh) | 语音识别方法、装置、电子设备、存储介质及计算机程序产品 | |
US11626107B1 (en) | Natural language processing | |
EP3822816A1 (en) | Device and method for machine reading comprehension question and answer | |
CN115858776B (zh) | 一种变体文本分类识别方法、系统、存储介质和电子设备 | |
CN112395414A (zh) | 文本分类方法和分类模型的训练方法、装置、介质和设备 | |
US11810572B2 (en) | Multi-threaded speaker identification | |
CN113506584B (zh) | 数据处理方法以及设备 | |
US11955120B1 (en) | Systems and methods for integrating voice controls into applications | |
US11893994B1 (en) | Processing optimization using machine learning |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right |