KR101212126B1 - 음성인식 서버, 음성인식 클라이언트 및 그 음성인식 방법 - Google Patents

음성인식 서버, 음성인식 클라이언트 및 그 음성인식 방법 Download PDF

Info

Publication number
KR101212126B1
KR101212126B1 KR1020120074363A KR20120074363A KR101212126B1 KR 101212126 B1 KR101212126 B1 KR 101212126B1 KR 1020120074363 A KR1020120074363 A KR 1020120074363A KR 20120074363 A KR20120074363 A KR 20120074363A KR 101212126 B1 KR101212126 B1 KR 101212126B1
Authority
KR
South Korea
Prior art keywords
recognition
voice recognition
voice
lexical
vocabulary
Prior art date
Application number
KR1020120074363A
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 KR1020120074363A priority Critical patent/KR101212126B1/ko
Application granted granted Critical
Publication of KR101212126B1 publication Critical patent/KR101212126B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/083Recognition networks
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/28Constructional details of speech recognition systems
    • G10L15/30Distributed recognition, e.g. in client-server systems, for mobile phones or network applications
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L2015/088Word spotting

Landscapes

  • Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Telephonic Communication Services (AREA)

Abstract

상세하게는 클라이언트에서 제공하는 단어집합 내에서 음성인식을 수행함으로써 음성인식률을 향상시킬 수 있는 음성인식 방법, 및 그 방법을 수행하는 음성인식 서버 및 음성인식 클라이언트가 개시된다. 본 발명의 일 측면에 따르면, (a) 음성인식 서버가 클라이언트로부터 음성인식 예비정보를 수신하는 단계, (b) 상기 음성인식 서버가 상기 클라이언트로부터 상기 클라이언트의 사용자에 의해 입력된 인식대상 음성을 수신하는 단계, (c) 상기 음성인식 서버가 소정의 인식대상어휘풀을 이용하여 상기 인식대상 음성에 대한 음성 인식을 수행하는 단계 및 (d) 상기 음성인식 서버가 상기 인식대상 음성에 대한 음성인식 결과를 상기 클라이언트로 전송하는 단계를 포함하되, 상기 인식대상어휘풀은 상기 클라이언트로부터 수신된 상기 음성인식 예비정보에 기초하여 결정되는 음성인식 방법이 제공된다.

Description

음성인식 서버, 음성인식 클라이언트 및 그 음성인식 방법{Speech recognition server, speech recognition client and speech recognition method thereof}
본 발명은 음성인식 서버, 음성인식 클라이언트 및 그 음성인식 방법에 관한 것으로서, 보다 상세하게는 클라이언트에서 제공하는 단어집합 내에서 음성인식을 수행함으로써 음성인식률을 향상시킬 수 있는 음성인식 방법, 및 그 방법을 수행하는 음성인식 서버 및 음성인식 클라이언트에 관한 것이다.
음성인식(speech recognition) 기술이란 인간이 발화한 음성과 같은 음향학적 신호(acoustic speech signal)을 컴퓨터가 분석해 이를 인식 또는 이해하는 기술을 말하는데, 발음에 따라 입 모양과 혀의 위치 변화에 따라 특정한 주파수를 갖는 다는 점을 이용하여, 발성된 음성을 전기신호로 변환한 후 음성신호의 주파수 특성을 추출해 발음을 인식하는 기술이다.
한편, 음성은 일상 생활에서 가장 효과적이고 자연스러운 의사소통방법으로서, 사용자의 음성명령의 처리는 음성인식 기술의 발전과 더불어 인간과 기계 간의 새로운 인터페이스로 제안 및 개발되고 있다. 음성입력은 키보드나 마우스 등 기존의 입력장치의 사용이 미숙한 사람도 쉽게 사용할 수 있으며 정보입력속도도 빠를 뿐만 아니라 정보입력과 동시에 손으로 다른 일을 할 수 있다는 장점이 있다. 특히, 최근 급속도로 보급되고 있는 터치 스크린을 구비한 스마트폰의 경우, 터치 스크린 상에 나타나는 가상 키보드를 통해 문자입력 등 조작을 하게 되는데, 이러한 가상 키보드에 의한 입력의 불편함을 해소할 수 있는 대안으로 음성입력이 강하게 대두되고 있다.
종래의 음성인식 방법은 일반적으로 사용자가 발화한 음성에서 특징 데이터를 추출하고, 추출된 특징 데이터를 이용하여 어휘 데이터베이스에 등록된 단어 중 유사도가 높은 단어를 선정하는 과정으로 이루어지는데, 어휘 데이터베이스가 너무 많은 어휘를 포함하고 있는 경우에는 서로 유사한 단어가 다수 존재하게 되고, 그로 인해 인식률이 저하되는 문제가 발생한다.
본 발명이 이루고자 하는 기술적 과제는 상술한 종래의 문제점을 해결하고자 하는 것으로서, 음성인식을 원하는 클라이언트가 음성인식에 사용될 어휘집합을 결정할 수 있도록 함으로써 음성인식의 인식률을 향상시킬 수 있는 음성인식 시스템 및 음성인식 방법을 제공하는 것이다.
또한, 다수의 클라이언트로부터 특정 분류에 속하는 다수의 어휘를 수집할 수 있도록 함으로써, 각 분류에 속하는 어휘 집합을 손쉽게 확장할 수 있는 음성인식 시스템 및 음성인식 방법을 제공하는 것이다.
본 발명의 일 측면에 따르면, (a) 음성인식 서버가 클라이언트로부터 음성인식 예비정보를 수신하는 단계, (b) 상기 음성인식 서버가 상기 클라이언트로부터 상기 클라이언트의 사용자에 의해 입력된 인식대상 음성을 수신하는 단계, (c) 상기 음성인식 서버가 소정의 인식대상어휘풀을 이용하여 상기 인식대상 음성에 대한 음성 인식을 수행하는 단계 및 (d) 상기 음성인식 서버가 상기 인식대상 음성에 대한 음성인식 결과를 상기 클라이언트로 전송하는 단계를 포함하되, 상기 인식대상어휘풀은 상기 클라이언트로부터 수신된 상기 음성인식 예비정보에 기초하여 결정되는 음성인식 방법이 제공된다.
일 실시예에서, 상기 음성인식 예비정보는, 복수의 후보어휘로 구성된 어휘집합 또는 상기 어휘집합의 식별정보 중 적어도 하나를 포함할 수 있다.
일 실시예에서, 상기 음성인식 방법은, 상기 음성인식 서버가 상기 어휘집합을 상기 인식대상어휘풀로 결정하는 단계를 더 포함할 수 있다.
일 실시예에서, 상기 음성인식 방법은, 상기 음성인식 예비정보가 상기 어휘집합 및 상기 식별정보를 모두 포함하는 경우, 상기 음성인식 서버가 상기 어휘집합이 상기 식별정보에 의해 식별되도록 상기 어휘집합 및 상기 식별정보를 데이터베이스에 저장하는 단계를 더 포함할 수 있다.
일 실시예에서, 상기 음성인식 방법은, 상기 음성인식 예비정보가 상기 식별정보를 포함하고 상기 어휘집합을 포함하지 않는 경우, 상기 음성인식 서버가 상기 데이터베이스에 저장된 어휘집합 중 상기 식별정보에 의해 식별되는 어휘집합을 상기 인식대상어휘풀로 결정하는 단계를 더 포함할 수 있다.
일 실시예에서, 상기 음성인식 예비정보는, 복수의 후보어휘로 구성된 어휘집합 또는 분류정보 중 적어도 하나를 포함할 수 있다.
일 실시예에서, 상기 음성인식 방법은, 상기 음성인식 예비정보가 상기 어휘집합 및 상기 분류정보를 모두 포함하는 경우, 상기 음성인식 서버가 상기 어휘집합에 포함된 상기 복수의 후보어휘를 상기 분류정보에 상응하는 어휘사전에 추가하는 단계를 더 포함할 수 있다.
일 실시예에서, 상기 음성인식 방법은, 상기 음성인식 예비정보가 상기 분류정보를 포함하고 상기 어휘집합을 포함하지 않는 경우, 상기 음성인식 서버가 상기 분류정보에 상응하는 어휘사전을 상기 인식대상어휘풀로 결정하는 단계를 더 포함할 수 있다.
일 실시예에서, 상기 음성인식 방법은, 상기 음성인식 서버가 상기 인식대상어휘풀에 포함된 상기 복수의 후보어휘에 대한 어휘 트리(lexical tree)를 생성하는 단계를 더 포함하되, 상기 (c) 단계는, 상기 어휘 트리를 이용하여 상기 인식대상 음성에 대한 음성인식을 수행하는 단계를 포함할 수 있다.
일 실시예에서, 상기 (c) 단계는, 상기 음성인식 서버가 상기 인식대상 음성에 대한 음성인식을 수행하는 과정에서 상기 인식대상어휘풀에 포함된 어휘와 유사한 어휘를 인식하는 경우, 상기 인식대상어휘풀에 포함된 어휘를 우선적으로 이용하는 단계를 포함할 수 있다.
본 발명의 다른 일 측면에 따르면, (a) 음성인식 클라이언트가 음성인식에 이용될 어휘풀에 관한 정보인 음성인식 예비정보를 음성인식 서버로 전송하는 단계, (b) 상기 음성인식 클라이언트가 사용자에 의해 입력된 인식대상 음성을 상기 음성인식 서버로 전송하는 단계 및 (c) 상기 클라이언트가 상기 음성인식 서버로부터 소정의 인식대상어휘풀을 이용하여 수행되는 상기 인식대상 음성에 대한 음성인식 결과를 수신하는 단계를 포함하되, 상기 인식대상어휘풀은 상기 클라이언트로에 의해 전송된 상기 음성인식 예비정보에 기초하여 결정되는 음성인식 방법이 제공된다.
본 발명의 다른 일 측면에 따르면, 상술한 음성인식 방법을 수행하는 컴퓨터 프로그램이 기록된 컴퓨터 판독 가능한 기록매체가 제공된다.
본 발명의 다른 일 측면에 따르면, 클라이언트로부터 음성인식에 이용될 어휘풀에 관한 정보인 음성인식 예비정보를 수신하는 정보수신모듈, 상기 클라이언트로부터 상기 클라이언트의 사용자에 의해 입력된 인식대상 음성을 수신하는 음성수신모듈, 소정의 인식대상어휘풀을 이용하여 상기 인식대상 음성에 대한 음성 인식을 수행하는 음성인식모듈 및 상기 인식대상 음성에 대한 음성인식 결과를 상기 클라이언트로 전송하는 결과전송모듈을 포함하되, 상기 인식대상어휘풀은 상기 클라이언트로부터 수신된 상기 음성인식 예비정보에 기초하여 결정되는 음성인식 서버가 제공된다.
일 실시예에서, 상기 음성인식 예비정보는, 복수의 후보어휘로 구성된 어휘집합 또는 상기 어휘집합의 식별정보 중 적어도 하나를 포함할 수 있다.
일 실시예에서, 상기 음성인식 서버는, 상기 어휘집합을 상기 인식대상어휘풀로 결정하는 어휘풀 결정모듈을 더 포함할 수 있다.
일 실시예에서, 상기 음성인식 서버는, 저장모듈을 더 포함하되, 상기 저장모듈은, 상기 음성인식 예비정보가 상기 어휘집합 및 상기 식별정보를 모두 포함하는 경우, 상기 어휘집합이 상기 식별정보에 의해 식별되도록 상기 어휘집합 및 상기 식별정보를 데이터베이스에 저장할 수 있다.
일 실시예에서, 상기 음성인식 서버는, 어휘풀 결정모듈을 더 포함하되, 상기 어휘풀 결정모듈은, 상기 음성인식 예비정보가 상기 식별정보를 포함하고 상기 어휘집합을 포함하지 않는 경우, 상기 식별정보에 의해 식별되는 상기 어휘집합을 상기 인식대상어휘풀로 결정할 수 있다.
일 실시예에서, 상기 음성인식 예비정보는, 복수의 후보어휘로 구성된 어휘집합 또는 분류정보 중 적어도 하나를 포함할 수 있다.
일 실시예에서, 상기 음성인식 서버는, 저장모듈을 더 포함하되, 상기 저장모듈은, 상기 음성인식 예비정보가 상기 어휘집합 및 상기 분류정보를 모두 포함하는 경우, 상기 어휘집합에 포함된 상기 복수의 후보어휘를 상기 분류정보에 의해 식별되는 어휘사전에 추가할 수 있다.
일 실시예에서, 상기 음성인식 서버는, 어휘풀 결정모듈을 더 포함하되, 상기 어휘풀 결정모듈은, 상기 음성인식 예비정보가 상기 분류정보를 포함하고 상기 어휘집합을 포함하지 않는 경우, 상기 분류정보에 상응하는 어휘사전을 상기 인식대상어휘풀로 결정할 수 있다.
일 실시예에서, 상기 음성인식 서버는, 상기 인식대상어휘풀에 포함된 어휘에 대한 어휘 트리를 생성하는 어휘트리 생성모듈을 더 포함하되, 상기 음성인식모듈은, 상기 어휘 트리를 이용하여 상기 인식대상 음성에 대한 음성인식을 수행할 수 있다.
일 실시예에서, 상기 음성인식모듈은, 상기 인식대상 음성에 대한 음성인식을 수행하는 과정에서 상기 인식대상어휘풀에 포함된 어휘와 유사한 어휘를 인식하는 경우, 상기 인식대상어휘풀에 포함된 어휘를 우선적으로 이용할 수 있다.
본 발명의 다른 일 측면에 따르면, 음성인식에 이용될 어휘풀에 관한 정보인 음성인식 예비정보를 음성인식 서버로 전송하는 정보전송모듈, 사용자에 의해 입력된 인식대상 음성을 상기 음성인식 서버로 전송하는 음성전송모듈 및 상기 음성인식 서버로부터 소정의 인식대상어휘풀을 이용하여 수행되는 상기 인식대상 음성에 대한 음성인식 결과를 수신하는 결과수신모듈을 포함하되, 상기 인식대상어휘풀은 상기 클라이언트에 의해 전송된 상기 음성인식 예비정보에 기초하여 결정되는 음성인식 클라이언트가 제공된다.
본 발명의 일 실시예에 따르면, 음성인식을 원하는 클라이언트가 음성인식에 사용될 어휘집합을 결정할 수 있도록 함으로써 음성인식의 인식률을 향상시킬 수 있다.
또한, 본 발명의 일 실시예서는 클라이언트가 사용자에게 제공하는 특정 음성인식 서비스에서 사용되는 어휘들을 대상으로 음성인식을 수행할 수 있으므로, 상기 특정 음성인식 서비스를 사용하는 사용자의 음성을 보다 명확하게 인식할 수 있는 효과가 있다. 따라서, 보편적인 어휘집합을 대상으로 음성인식을 수행하는 종래의 음성인식 기술에 비해 음성인식의 인식률을 향상시킬 수 있는 효과가 있다.
또한, 본 발명의 일 실시예에 따르면, 다수의 클라이언트로부터 특정 분류에 속하는 다수의 어휘를 수집할 수 있도록 함으로써, 각 분류에 속하는 어휘 집합을 손쉽게 확장할 수 있는 효과가 있다.
또한, 본 발명의 실시예에 따르면, 소정의 음성인식 서비스를 개발하고자 하는 자가 용이하게 이용할 수 있는 음성인식 API를 제공할 수 있는 효과가 있다.
본 발명의 상세한 설명에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 간단한 설명이 제공된다.
도 1은 본 발명의 일 실시예에 따른 음성인식 시스템의 개략적인 구성 및 동작 방법을 나타내는 도면이다.
도 2는 본 발명의 일 실시예에 따른 음성인식 클라이언트의 구성을 나타내는 블록도이다.
도3 내지 도 5는 각각 음성인식 예비 정보의 일 예를 나타낸다.
도 6은 본 음성인식 예비 정보가 어휘집합을 포함하는 경우 발명의 일 실시예에 따른 음성인식 클라이언트 및 서버가 동작하는 방법을 나타내는 도면이다.
도 7a 및 도 7b는 본 음성인식 예비 정보가 어휘집합 및 식별정보를 포함하는 경우 발명의 일 실시예에 따른 음성인식 클라이언트 및 서버가 동작하는 방법을 나타내는 도면이다.
도 8a 및 도 8b는 본 음성인식 예비 정보가 어휘집합 및 분류정보를 포함하는 경우 발명의 일 실시예에 따른 음성인식 클라이언트 및 서버가 동작하는 방법을 나타내는 도면이다.
도 9는 동일한 분류정보를 가지는 어휘집합이 복수의 클라이언트로부터 전송되는 경우 음성인식 서버의 DB의 변화를 설명하기 위한 도면이다.
본 발명은 다양한 변환을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변환, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다.
본 명세서에 있어서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
또한, 본 명세서에 있어서는 어느 하나의 구성요소가 다른 구성요소로 데이터를 '전송'하는 경우에는 상기 구성요소는 상기 다른 구성요소로 직접 상기 데이터를 전송할 수도 있고, 적어도 하나의 또 다른 구성요소를 통하여 상기 데이터를 상기 다른 구성요소로 전송할 수도 있는 것을 의미한다. 반대로 어느 하나의 구성요소가 다른 구성요소로 데이터를 '직접 전송'하는 경우에는 상기 구성요소에서 다른 구성요소를 통하지 않고 상기 다른 구성요소로 상기 데이터가 전송되는 것을 의미한다.
이하, 첨부된 도면들을 참조하여 본 발명의 실시예들을 중심으로 본 발명을 상세히 설명한다. 각 도면에 제시된 동일한 참조부호는 동일한 부재를 나타낸다.
도 1은 본 발명의 일 실시예에 따른 음성인식 시스템의 개략적인 구성 및 동작 방법을 나타내는 도면이다.
도 1을 참조하면, 본 발명의 일 실시예에 따른 음성인식 시스템은 음성인식 서버(10) 및 음성인식 클라이언트(20)를 포함할 수 있다.
상기 음성인식 서버(10)와 상기 음성인식 클라이언트(20)는 유/무선을 통해 연결되어, 소정의 정보를 송수신하며 본 발명의 기술적 사상을 달성할 수 있다.
상기 음성인식 서버(10)는 상기 음성인식 클라이언트(20)로부터 전송되는 인식대상 음성에 대한 음성인식을 수행하고(도 1의 S2 및 S3 참조), 음성인식 수행 결과를 상기 음성인식 클라이언트에 전송(도 1의 S4 참조)하는 컴퓨팅 장치일 수 있다.
한편, 상기 음성인식 서버(10)는 음성인식을 수행하기 전 상기 음성인식 클라이언트(20)로부터 소정의 음성인식 예비정보를 수신할 수 있는데(도 1의 S1 참조), 상기 음성인식 서버(10)는 상기 음성인식 예비정보를 이용하여 음성인식에 사용될 인식대상 어휘풀을 결정할 수 있다(도 1의 S2 참조).
즉, 본 실시예에 따르면 음성인식에 사용될 어휘풀은 상기 음성인식 클라이언트(20)에 의해 지정될 수 있다. 따라서, 본 실시예에 따르면, 상기 음성인식 클라이언트(10)는 자신이 사용자에게 제공하는 서비스에 특화된 어휘풀을 지정하여 상기 음성인식 서버(10) 음성인식을 수행하도록 함으로써, 상기 음성인식 클라이언트(20)의 서비스에 특화된 음성인식 결과를 얻을 수 있는 효과가 있다.
한편, 상기 인식대상 어휘풀은 복수의 어휘로 구성되며, 상기 음성인식 서버(10)는 인식대상 음성에 대한 음성인식을 수행하는 과정에서 상기 인식대상 어휘풀에 포함된 어휘를 인식하고 인식된 어휘로 음성인식 결과를 생성할 수 있다.
상기 음성인식 예비정보는, 실시예에 따라, 복수의 어휘로 구성된 어휘 집합, 특정 어휘집합을 식별하기 위한 식별정보 및/또는 특정 어휘집합에 상응하는 분류정보 등을 포함할 수 있지만 이에 한정되는 것은 아니다. 상기 음성인식 예비정보에 포함된 정보에 따라 상기 음성인식 서버(10)가 상기 인식대상 어휘풀을 결정하는 방식도 다양할 수 있다. 음성인식 예비 정보의 다양한 예시 및 그에 따른 인식대상 어휘풀 결정 방법에 대해서는 추후 상세히 설명하기로 한다.
한편, 일 실시예에서, 상기 음성인식 서버(10)는 인식대상 어휘풀을 이용하여 음성인식을 수행하기 위해 음성인식의 탐색 공간(search space)을 제공하는 어휘트리(lexical tree)를 생성하고, 이를 이용하여 음성인식을 수행할 수 있다. 또는 다른 일 실시예에서, 상기 음성인식 서버(10)는 모든 음성인식 요청에 대해 보편적으로 사용될 수 있는 어휘풀을 이용하여 상기 인식대상 음성에 대한 음성인식을 수행하고, 음성인식을 수행하는 과정에서 상기 인식대상 어휘풀에 포함된 어휘와 유사한 어휘를 인식하는 경우, 상기 인식대상어휘풀에 포함된 어휘를 우선적으로 이용하도록 구현될 수도 있다. 이외에도, 상기 음성인식 서버(10)는 음성인식을 수행함에 있어 널리 공지된 다양한 음성인식 기술을 이용할 수 있다. 본 발명의 기술적 특징 중 하나는 음성인식에 사용되는 인식대상어휘풀을 결정하는 방식에 관한 것이고 상기 음성인식 서버(10)가 이용하는 음성인식 기술에 의해 본 발명의 기술적 사상이 제한되는 것은 아니므로 본 발명의 요지를 명확히 설명하기 위하여 음성인식에 관한 공지 기술에 대한 구체적인 설명은 생략하기로 한다.
한편, 상기 음성인식 서버(10)는 소정의 데이터베이스(30)를 포함하거나 상기 데이터베이스(30)와 통신하여, 상기 음성인식 예비정보에 포함된 각종 데이터를 상기 데이터베이스(30)에 저장할 수 있다. 본 명세서에서 데이터베이스(DB)라 함은, 적어도 하나의 테이블로 구현될 수도 있으며, 상기 데이터베이스에 저장된 정보를 검색, 저장, 및 관리하기 위한 별도의 DBMS(Database Management System)을 더 포함하는 의미로 사용될 수도 있다. 또한, 링크드 리스트(linked-list), 트리(Tree), 관계형 DB의 형태 등 다양한 방식으로 구현될 수 있으며, 상기 데이터베이스(30)에 저장될 정보를 저장할 수 있는 모든 데이터 저장매체 및 데이터 구조를 포함하는 의미로 사용될 수 있다.
한편, 상기 음성인식 서버(10)는 본 발명의 기술적 사상을 달성하기 위하여, 정보수신모듈(110), 어휘풀결정모듈(120), 어휘트리 생성모듈(130), 음성수신모듈(140), 음성인식모듈(150), 결과전송모듈 및 저장모듈(170)을 포함할 수 있다(추후 설명할 도 6 내지 도8 참조). 상기 음성인식 서버의 각 구성요소에 대해서는 추후 상세히 설명하기로 한다.
상기 음성인식 클라이언트(20)는 사용자의 음성을 입력 받아 소정의 음성인식 서비스를 제공하는 컴퓨터 프로그램을 구동하는 컴퓨팅 장치일 수 있다. 상기 음성인식 클라이언트(20)는 컴퓨터, 랩탑, 데스크탑, 타블렛 PC, PDA(Personal Digital Assistant)를 포함하는 컴퓨팅 장치일 수 있으며, 휴대 전화, 위성 전화, 무선 전화, SIP(Session Initiation Protocol), WLL(Wireless Local Loop) 스테이션, 스마트폰, 기타 무선 접속 기능을 갖는 핸드헬드 장치를 포함하는 무선 컴퓨팅 장치 또는 다른 무선 모뎀에 연결된 프로세싱 장치일 수도 있다.
도 2는 본 발명의 일 실시예에 따른 음성인식 클라이언트(20)의 구성을 나타내는 블록도이다.
도 2를 참조하면, 상기 음성인식 클라이언트는 입력모듈(200), 정보전송모듈(210), 음성전송모듈(220) 및 결과 수신모듈(230)을 포함할 수 있다.
상기 정보전송모듈(210)은 상기 음성인식 예비정보를 상기 음성인식 서버(10)에 전송할 수 있다. 상기 입력모듈(200)은 사용자가 발화하는 음성을 입력 받기 위한 소정의 장치일 수 있다. 예를 들어 상기 입력모듈(200)은 적어도 하나의 마이크로폰으로 구성될 수 있다. 상기 음성전송모듈(220)은 상기 입력모듈에 의해 입력된 사용자 음성을 상기 음성인식 서버(10)로 전송하여 음성인식을 수행하도록 할 수 있다. 상기 결과수신모듈(230)은 상기 음성인식 서버(10)로부터 상기 인식대상어휘풀을 이용하여 수행된 상기 사용자의 음성에 대한 음성인식 결과를 수신할 수 있다. 한편, 상기 음성인식 클라이언트(20)는 상기 음성인식 결과를 사용자에게 출력하거나, 상기 음성인식 결과에 의해 제어되는 소정의 제어동작을 수행하는 제어모듈(미도시)를 더 포함할 수 있다.
본 발명의 실시예에 따라서는, 상술한 구성요소들 중 일부 구성요소는 반드시 본 발명의 구현에 필수적으로 필요한 구성요소에 해당하지 않을 수도 있으며, 또한 실시예에 따라 상기 음성인식 서버(10) 및/또는 상기 음성인식 클라이언트(20)는 이보다 더 많은 구성요소를 포함할 수도 있음은 물론이다.
상기 음성인식 서버(10) 및/또는 상기 음성인식 클라이언트(20)는 본 발명의 기술적 사상을 구현하기 위해 필요한 하드웨어 리소스(resource) 및/또는 소프트웨어를 구비할 수 있으며, 반드시 하나의 물리적인 구성요소를 의미하거나 하나의 장치를 의미하는 것은 아니다. 즉, 상기 음성인식 서버(10) 및/또는 상기 음성인식 클라이언트(20)는 본 발명의 기술적 사상을 구현하기 위해 구비되는 하드웨어 및/또는 소프트웨어의 논리적인 결합을 의미할 수 있으며, 필요한 경우에는 서로 이격된 장치에 설치되어 각각의 기능을 수행함으로써 본 발명의 기술적 사상을 구현하기 위한 논리적인 구성들의 집합으로 구현될 수도 있다. 또한, 상기 음성인식 서버(10) 및 상기 음성인식 클라이언트(20)은 본 발명의 기술적 사상을 구현하기 위한 각각의 기능 또는 역할별로 별도로 구현되는 구성들의 집합을 의미할 수도 있다. 예를들어, 상기 음성인식 서버(10)의 경우 정보수신모듈(110), 어휘풀결정모듈(120), 어휘트리 생성모듈(130), 음성수신모듈(140), 음성인식모듈(150), 결과전송모듈 및 저장모듈(170)은 서로 다른 물리적 장치에 위치할 수도 있고, 동일한 물리적 장치에 위치할 수도 있다. 또한, 구현 예에 따라서는 정보수신모듈(110), 어휘풀결정모듈(120), 어휘트리 생성모듈(130), 음성수신모듈(140), 음성인식모듈(150), 결과전송모듈 및 저장모듈(170) 등 각각의 모듈을 구성하는 소프트웨어 및/또는 하드웨어 역시 서로 다른 물리적 장치에 위치하고, 서로 다른 물리적 장치에 위치한 구성들이 서로 유기적으로 결합되어 각각의 모듈들이 수행하는 기능을 실현할 수도 있다.
또한, 본 명세서에서 모듈이라 함은, 본 발명의 기술적 사상을 수행하기 위한 하드웨어 및 상기 하드웨어를 구동하기 위한 소프트웨어의 기능적, 구조적 결합을 의미할 수 있다. 예컨대, 상기 모듈은 소정의 코드와 상기 소정의 코드가 수행되기 위한 하드웨어 리소스의 논리적인 단위를 의미할 수 있으며, 반드시 물리적으로 연결된 코드를 의미하거나, 한 종류의 하드웨어를 의미하는 것은 아님은 통상의 기술자에게는 용이하게 추론될 수 있다.
도3 내지 도 5는 각각 상술한 음성인식 예비정보의 일 예를 나타낸다.
도 3에 도시된 실시예에 따르면, 상기 음성인식 예비정보는 복수의 어휘(도 3의 예시에서는 "위", "아래", 오른쪽", "왼쪽")로 구성된 어휘집합만을 포함할 수 있다.
도 4에 도시된 실시예에 따르면, 상기 음성인식 예비정보(P4a)는 식별정보 (도 4(a)의 Recognition ID: Command) 및 상기 식별정보(즉, "Command")에 상응하는 어휘집합("위", "아래", 오른쪽", "왼쪽")을 포함할 수도 있고, 상기 음성인식 예비정보(P4b)는 식별정보만을 포함할 수도 있다.
도 5에 도시된 실시예에 따르면, 상기 음성인식 예비정보(P5a 및 P5b)는 분류정보 (도 5(a) 및 도 5(b)의 Recognition Type: 지역명) 및 상기 분류정보(즉, "지역명")에 속하는 어휘집합(도 5(a)의 경우, "서울", "부산", "대구", "대전", 도 5(b)의 경우, "인천", "울산", 광주", "포항")을 포함할 수 있다. 또한 상기 음성인식 예비정보(P5c)는 상기 분류정보만을 포함할 수도 있다.
도 3 내지 도 5에 도시된 음성인식 예비정보는 일 예일 뿐이며, 다양한 형식으로 상술한 정보를 포함할 수 있거나, 상술한 정보 이외의 정보를 더 가질 수 있음을 본 발명이 속하는 분야에서 통상의 지식을 가진 자는 용이하게 이해할 수 있을 것이다.
도 6은 본 음성인식 예비 정보가 어휘집합을 포함하는 경우 발명의 일 실시예에 따른 음성인식 클라이언트 및 서버가 동작하는 방법을 나타내는 도면이다.
상기 정보 수신모듈(110)이 상기 음성인식 클라이언트(20)가 전송한 어휘집합 S를 포함하는 음성인식 예비정보를 수신하는 경우(S61), 본 실시예에서, 상기 어휘풀 결정모듈(120)은 음성인식을 수행할 상기 어휘집합 S를 인식대상어휘풀로 결정할 수 있다(S62). 그러면, 상기 어휘트리 생성모듈(130)은 인식대상어휘풀인 상기 어휘집합 S를 분석하여 어휘트리 T를 생성할 수 있다(S63).
이후, 상기 음성수신모듈(140)이 상기 음성인식 클라이언트(20)로부터 인식대상 음성을 수신하면(S64), 상기 음성인식 모듈(150)은 상기 어휘트리 T를 이용하여 음성인식을 수행할 수 있고(S65), 상기 결과전송모듈(160)은 음성인식 결과를 상기 음성인식 클라이언트(20)에 전송할 수 있다(S66).
예를 들어, 상기 음성인식 클라이언트(20)가 도3에 도시된 음성인식 예비정보를 전송하였다고 가정하면, 상기 음성인식 모듈(150)은 상기 음성인식 예비정보에 포함되어 있는 어휘집합("위", "아래", "오른쪽", "왼쪽")에 의해 생성된 어휘트리 T를 이용하여 음성인식을 수행할 수 있다. 따라서, 상기 음성인식모듈(150)이 생성하는 음성인식 결과는 어휘집합에 포함된 "위", "아래", "오른쪽", "왼쪽"의 조합일 수 있다.
통상적인 음성인식의 경우에는 인식에 사용되는 어휘가 방대하여 음성인식에 높은 프로세싱 파워가 요구될 뿐만 아니라, 서로 유사한 단어가 많으므로 인식율이 그만큼 떨어지게 된다. 일반적으로 음성인식의 어려움은 음성인식을 위해 탐색해야 하는 어휘집합의 크기에 따라 대수적(logarithmic)으로 증가한다고 알려져 있다. 하지만 본 실시예에 따르면, 상기 음성인식 모듈(150)은 클라이언트가 제공하는 한정된 어휘집합을 이용하여 음성인식을 수행하므로 빠르고 정확한 인식이 가능하다는 효과가 있다.
도 7a 및 도 7b는 본 음성인식 예비 정보가 어휘집합 및 식별정보를 포함하는 경우 발명의 일 실시예에 따른 음성인식 클라이언트 및 서버가 동작하는 방법을 나타내는 도면이다.
먼저 도 7a를 참조하면, 상기 정보 수신모듈(110)이 상기 음성인식 클라이언트(20)가 전송한 어휘집합 S 및 식별정보 I를 포함하는 음성인식 예비정보를 수신하는 경우(S71a), 상기 어휘풀 결정모듈(120)은 상기 어휘집합 S를 음성인식을 수행할 인식대상어휘풀로 결정할 수 있다(S72a). 그러면, 상기 어휘트리 생성모듈(130)은 인식대상어휘풀인 상기 어휘집합 S를 분석하여 어휘트리 T를 생성할 수 있다(S73a).
한편, 상기 저장모듈(170)은 상기 어휘집합 S를 데이터베이스(30)에 저장할 수 있다. 이 경우 상기 저장모듈(170)은 상기 어휘집합 S가 상기 식별정보 I에 의해 식별되게끔 상기 어휘집합 S를 저장할 수 있다(S74a).
이후, 상기 음성수신모듈(140)이 상기 음성인식 클라이언트(20)로부터 인식대상 음성을 수신하면(S75a), 상기 음성인식 모듈(150)은 상기 어휘트리 T를 이용하여 음성인식을 수행할 수 있고(S76a), 상기 결과전송모듈(160)은 음성인식 결과를 상기 음성인식 클라이언트(20)에 전송할 수 있다(S77a).
한편, 도 7b를 참조하면, 상기 음성인식 클라이언트(20)가 전송한 음성인식 예비정보는 어휘집합 없이, 식별정보 I만을 포함할 수도 있다(S71b).
이 경우, 상기 어휘풀 결정모듈은, 예를 들면, 도 7a의 S74a 단계에서 상기 데이터베이스(30)에 저장된 상기 어휘집합 S를 상기 식별정보 I에 의해 식별하고, 상기 어휘집합 S를 인식대상어휘풀로 결정하고(S72b), 음성인식을 수행할 수 있다(S73b 내지 S75b).
예를 들어, 상기 음성인식 클라이언트(20)가 먼저 도4(a)에 도시된 음성인식 예비정보(P4a)를 전송하였다고 가정하면, 상기 저장모듈(170)은 상기 음성인식 예비정보(P4a)에 포함되어 있는 어휘집합("위", "아래", "오른쪽", "왼쪽")를 식별정보("Command")에 상응하도록 데이터베이스(30)에 저장할 수 있고, 상기 음성인식 모듈은 상기 어휘집합("위", "아래", "오른쪽", "왼쪽")을 이용하여 음성인식을 수행할 수 있다. 이후, 상기 음성인식 클라이언트(20)가 먼저 도4(b)에 도시된 음성인식 예비정보(P4b)를 전송한다면, 상기 어휘풀결정모듈(120)은 상기 음성인식 예비정보(P4b)에 포함된 식별정보("Command")를 이용하여 데이터베이스(30)에 저장되어 있는 상기 어휘집합("위", "아래", "오른쪽", "왼쪽")을 인식대상어휘풀로 결정할 수 있다.
도 7a 및 도 7b에 도시된 예시에서, 상기 식별정보 I의 형태에는 제한이 없다. 예를 들어, 상기 식별정보 I는 상기 음성인식 클라이언트(20)에 의해 임의로 부가되는 정보일 수도 있고, 상기 음성인식 클라이언트(20)가 제공하는 음성인식 서비스의 개발자 등에 의해 부가되는 정보일 수도 있고, 상기 음성인식 클라이언트(20) 또는 상기 음성인식 클라이언트(20)가 제공하는 음성인식 서비스의 개발자 등에 의해 부가되는 정보에 상기 음성인식 클라이언트(20)를 식별할 수 있는 기기 정보가 포함되는 형태일 수도 있다.
한편, 상기 식별정보 I는 어떠한 어휘집합에 대해 유일한(unique)한 정보일 수도 있지만, 그렇지 않을 수도 있다. 예를 들어 동일한 클라이언트가 동일한 식별정보를 포함하는 음성인식 예비정보를 복수 번 전송하는 경우, 이러한 음성인식 예비정보들은 동일한 식별정보를 가지지만, 그에 포함된 어휘집합들은 서로 상이할 수 있다. 이 경우 상기 저장모듈(170)은 가장 최근에 수신한 음성인식 예비정보에 포함된 어휘집합만을 데이터베이스에 저장할 수 있다. 예를 들어, 기존에 식별정보 I에 상응하는 어휘집합 S'이 데이터베이스에 저장되어 있었는데, 이후 동일한 식별정보 I 및 어휘집합 S를 포함하는 음성인식 예비정보가 수신된 경우, 상기 저장모듈(170)은 S' 대신 가장 최근에 전송된 상기 어휘집합 S를 상기 식별정보 I에 상응하도록 저장함으로써, 가장 최근에 전송된 상기 어휘집합 S가 음성인식에 이용될 수 있도록 할 수 있다. 한편, 서로 다른 복수의 클라이언트가 동일한 식별 정보를 포함하는 음성인식 예비정보를 전송하는 경우가 있을 수도 있다. 이 경우 상기 저장 모듈(170)은 상기 음성인식 예비정보에 포함된 어휘집합 및 식별정보 뿐만 아니라 상기 음성인식 클라이언트(20)를 식별하기 위한 기기 정보(예를 들면 MAC 주소, 기기 ID, 혹은 상기 음성인식 클라이언트에 상응하는 사용자의 ID 등)를 함께 저장함으로써, 식별정보와 상기 기기 정보에 의해 어휘집합이 식별되도록 할 수 있다.
이하에서는 도 8a 및 도 8b를 중심으로, 도 9 를 함께 참조하여, 음성인식 예비 정보가 어휘집합 및 분류정보를 포함하는 경우 발명의 일 실시예에 따른 음성인식 클라이언트 및 서버가 동작하는 방법을 설명한다. 도 9는 동일한 분류정보를 가지는 어휘집합이 복수의 클라이언트로부터 전송되는 경우 음성인식 서버의 DB의 변화를 설명하기 위한 도면이다.
먼저 도 8a를 참조하면, 상기 정보 수신모듈(110)이 상기 음성인식 클라이언트(20)가 전송한 어휘집합 S 및 분류정보 Y를 포함하는 음성인식 예비정보를 수신하는 경우(S81a), 상기 저장모듈(170)은 상기 어휘집합 S를 상기 분류정보 Y에 상응하는 어휘사전 D에 추가할 수 있다(S82a). 한편, 상기 어휘사전 D는 데이터베이스(30)에 저장되어 있을 수 있다.
예를 들어, 도 10을 참조하면, 상기 어휘사전 D가 비어 있는 상태에서 상기 음성인식 클라이언트(20)가 도 5(a)에 도시된 음성인식 예비정보(P5a)를 상기 음성인식 서버(10)로 전송하는 경우, 상기 저장모듈(170)은 음성인식 예비정보(P5a)에 포함된 어휘집합("서울", "부산", "대구", "대전")을 상기 분류 Y에 상응하는 상기 어휘사전 D에 저장할 수 있고, 그 결과 상기 어휘사전 D는 도 10(a)와 같이 갱신될 수 있다. 이후, 상기 음성인식 서버(10)가 상기 음성인식 클라이언트(20) 또는 다른 음성인식 클라이언트(미도시)로부터 도 5(b)에 도시된 음성인식 예비정보(P5b)를 수신하는 경우, 상기 저장모듈(170)은 음성인식 예비정보(P5b)에 포함된 어휘집합("인천", "울산", "광주", "포항")을 상기 분류 Y에 상응하는 상기 어휘사전 D에 추가할 수 있고, 그 결과 상기 어휘사전 D는 도 10(b)와 같이 갱신될 수 있다.
다시 도8a를 참조하면, 상기 어휘풀 결정모듈(120)은 음성인식 예비정보에 포함된 상기 어휘집합 S 또는 상기 분류정보 Y에 상응하는 어휘사전 D를 음성인식을 수행할 인식대상어휘풀로 결정할 수 있다(S83a). 한편, 상기 어휘트리 생성모듈(130)은 인식대상어휘풀인 상기 어휘집합 S 또는 상기 어휘사전 D를 분석하여 어휘트리 T를 생성할 수 있다(S84a).
이후, 상기 음성수신모듈(140)이 상기 음성인식 클라이언트(20)로부터 인식대상 음성을 수신하면(S85a), 상기 음성인식 모듈(150)은 상기 어휘트리 T를 이용하여 음성인식을 수행할 수 있고(S86a), 상기 결과전송모듈(160)은 음성인식 결과를 상기 음성인식 클라이언트(20)에 전송할 수 있다(S87a).
한편, 도 8b를 참조하면, 상기 음성인식 클라이언트(20)가 전송한 음성인식 예비정보는 어휘집합 없이, 분류정보 Y만을 포함할 수도 있다(S81b).
이 경우, 상기 어휘풀 결정모듈은, 예를 들면, 도 8a의 S82a 단계에서 상기 데이터베이스(30)에 저장된 상기 어휘사전 D를 상기 분류정보 Y에 의해 식별하고, 상기 어휘사전 D를 인식대상어휘풀로 결정하고(S82b), 음성인식을 수행할 수 있다(S83b 내지 S85b).
상술한 바와 같이, 본 발명의 일 실시예에 따르면, 상기 음성인식 서버(10)는 다수의 음성인식 클라이언트로부터 특정 분류에 속하는 다수의 어휘를 수집하여, 상기 특정 분류에 속하는 어휘집합을 손쉽게 확장할 수 있는 효과가 있다. 예를 들어, 상기 음성인식 서버(10)의 관리자가 "지역명" 분류에 속하는 어휘를 모두 수집하여 어휘사전을 구축하기 위해서는 많은 시간과 노력을 들여야만 하지만, 상술한 본 발명의 기술적 사상에 따르면, 다수의 음성인식 클라이언트가 각각 자신들이 필요로 하는 "지역명" 분류에 속하는 어휘집합을 상기 음성인식 서버(10)에 제공하므로, 상기 음성인식 서버(10)는 제공된 정보를 취합하여 "지역명" 분류에 속하는 어휘들을 확장시킬 수 있는 효과가 있다.
또한, 상술한 본 발명의 실시예에 따르면, 상기 음성인식 클라이언트에게 상기 음성인식 예비정보를 통하여 자신이 사용하고자 하는 서비스에 적합한 어휘집합의 식별정보 또는 어휘사전의 분류정보를 지정할 수 있는 기능을 제공할 수 있다. 즉, 본 발명의 실시예에 따르면, 상기 음성인식 클라이언트에서 동작하는 소정의 음성인식 서비스를 개발하고자 하는 자가 용이하게 이용할 수 있는 음성인식 API를 제공할 수 있다.
한편, 본 발명의 실시예에 따른 웹 클라이언트는 컴퓨터가 읽을 수 있는 프로그램 명령 형태로 구현되어 컴퓨터로 읽을 수 있는 기록 매체에 저장될 수 있다. 컴퓨터가 읽을 수 있는 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다.
기록 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 소프트웨어 분야 당업자에게 공지되어 사용 가능한 것일 수도 있다.
컴퓨터로 읽을 수 있는 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media) 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 또한 상술한 매체는 프로그램 명령, 데이터 구조 등을 지정하는 신호를 전송하는 반송파를 포함하는 광 또는 금속선, 도파관 등의 전송 매체일 수도 있다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.
프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 전자적으로 정보를 처리하는 장치, 예를 들어, 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
상술한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다.
그러므로 이상에서 기술한 실시 예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성요소들도 결합된 형태로 실시될 수 있다.
본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타나며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.

Claims (15)

  1. (a) 음성인식 서버가 클라이언트로부터 음성인식 예비정보를 수신하는 단계;
    (b) 상기 음성인식 서버가 상기 클라이언트로부터 상기 클라이언트의 사용자에 의해 입력된 인식대상 음성을 수신하는 단계;
    (c) 상기 음성인식 서버가 소정의 인식대상어휘풀을 이용하여 상기 인식대상 음성에 대한 음성 인식을 수행하는 단계; 및
    (d) 상기 음성인식 서버가 상기 인식대상 음성에 대한 음성인식 결과를 상기 클라이언트로 전송하는 단계를 포함하되,
    상기 인식대상어휘풀은 상기 클라이언트로부터 수신된 상기 음성인식 예비정보에 기초하여 결정되는 음성인식 방법으로서,
    상기 음성인식 예비정보는,
    복수의 후보어휘로 구성된 어휘집합 또는 식별정보 중 적어도 하나를 포함하며,
    상기 음성인식 방법은, 상기 음성인식 예비정보가 상기 어휘집합 및 상기 식별정보를 모두 포함하는 경우,
    상기 음성인식 서버가, 상기 어휘집합이 상기 식별정보에 의해 식별되도록 상기 어휘집합 및 상기 식별정보를 데이터베이스에 저장하는 단계를 더 포함하는 음성인식 방법.
  2. 제1항에 있어서,
    상기 음성인식 예비정보는,
    복수의 후보어휘로 구성된 어휘집합을 포함하며,
    상기 음성인식 방법은,
    상기 음성인식 서버가 상기 어휘집합을 상기 인식대상어휘풀로 결정하는 단계를 더 포함하는 음성인식 방법.
  3. 삭제
  4. 제1항에 있어서,
    상기 음성인식 방법은, 상기 음성인식 예비정보가 상기 식별정보를 포함하고 상기 어휘집합을 포함하지 않는 경우,
    상기 음성인식 서버가 상기 데이터베이스에 저장된 어휘집합 중 상기 식별정보에 의해 식별되는 어휘집합을 상기 인식대상어휘풀로 결정하는 단계를 더 포함하는 음성인식 방법.
  5. 제1항에 있어서,
    상기 음성인식 방법은,
    상기 음성인식 서버가 상기 인식대상어휘풀에 포함된 복수의 어휘에 대한 어휘 트리(lexical tree)를 생성하는 단계를 더 포함하되,
    상기 (c) 단계는,
    상기 어휘 트리를 이용하여 상기 인식대상 음성에 대한 음성인식을 수행하는 단계를 포함하는 음성인식 방법.
  6. 제1항에 있어서,
    상기 (c) 단계는,
    상기 음성인식 서버가 상기 인식대상 음성에 대한 음성인식을 수행하는 과정에서 상기 인식대상어휘풀에 포함된 어휘와 유사한 어휘를 인식하는 경우, 상기 인식대상어휘풀에 포함된 어휘를 우선적으로 이용하는 단계를 포함하는 음성인식 방법.
  7. 삭제
  8. 제1항 내지 제2항 또는 제4항 내지 제6항 중 어느 한 항에 기재된 방법을 수행하는 컴퓨터 프로그램이 기록된 컴퓨터 판독 가능한 기록매체.
  9. 클라이언트로부터 음성인식에 이용될 어휘풀에 관한 정보인 음성인식 예비정보를 수신하는 정보수신모듈;
    상기 클라이언트로부터 상기 클라이언트의 사용자에 의해 입력된 인식대상 음성을 수신하는 음성수신모듈;
    소정의 인식대상어휘풀을 이용하여 상기 인식대상 음성에 대한 음성 인식을 수행하는 음성인식모듈; 및
    상기 인식대상 음성에 대한 음성인식 결과를 상기 클라이언트로 전송하는 결과전송모듈을 포함하되,
    상기 인식대상어휘풀은 상기 클라이언트로부터 수신된 상기 음성인식 예비정보에 기초하여 결정되는 음성인식 서버로서,
    상기 음성인식 예비정보는,
    복수의 후보어휘로 구성된 어휘집합 또는 식별정보 중 적어도 하나를 포함하며,
    상기 음성인식 서버는, 저장모듈을 더 포함하되,
    상기 저장모듈은, 상기 음성인식 예비정보가 상기 어휘집합 및 상기 식별정보를 모두 포함하는 경우,
    상기 어휘집합이 상기 식별정보에 의해 식별되도록 상기 어휘집합 및 상기 식별정보를 데이터베이스에 저장하는 음성인식 서버.
  10. 제9항에 있어서,
    상기 음성인식 예비정보는,
    복수의 후보어휘로 구성된 어휘집합을 포함하며
    상기 음성인식 서버는,
    상기 어휘집합을 상기 인식대상어휘풀로 결정하는 어휘풀 결정모듈을 더 포함하는 음성인식 서버.
  11. 삭제
  12. 제9항에 있어서,
    상기 음성인식 서버는, 어휘풀 결정모듈을 더 포함하되,
    상기 어휘풀 결정모듈은, 상기 음성인식 예비정보가 상기 식별정보를 포함하고 상기 어휘집합을 포함하지 않는 경우,
    상기 데이터베이스에 저장된 어휘집합 중 상기 식별정보에 의해 식별되는 어휘집합을 상기 인식대상어휘풀로 결정하는 음성인식 서버.
  13. 제9항에 있어서,
    상기 음성인식 서버는,
    상기 인식대상어휘풀에 포함된 복수의 어휘에 대한 어휘 트리를 생성하는 어휘트리 생성모듈을 더 포함하되,
    상기 음성인식모듈은,
    상기 어휘 트리를 이용하여 상기 인식대상 음성에 대한 음성인식을 수행하는 음성인식 서버.
  14. 제9항에 있어서,
    상기 음성인식모듈은,
    상기 인식대상 음성에 대한 음성인식을 수행하는 과정에서 상기 인식대상어휘풀에 포함된 어휘와 유사한 어휘를 인식하는 경우, 상기 인식대상어휘풀에 포함된 어휘를 우선적으로 이용하는 음성인식 서버.
  15. 삭제
KR1020120074363A 2012-07-09 2012-07-09 음성인식 서버, 음성인식 클라이언트 및 그 음성인식 방법 KR101212126B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020120074363A KR101212126B1 (ko) 2012-07-09 2012-07-09 음성인식 서버, 음성인식 클라이언트 및 그 음성인식 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020120074363A KR101212126B1 (ko) 2012-07-09 2012-07-09 음성인식 서버, 음성인식 클라이언트 및 그 음성인식 방법

Publications (1)

Publication Number Publication Date
KR101212126B1 true KR101212126B1 (ko) 2012-12-14

Family

ID=47907626

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120074363A KR101212126B1 (ko) 2012-07-09 2012-07-09 음성인식 서버, 음성인식 클라이언트 및 그 음성인식 방법

Country Status (1)

Country Link
KR (1) KR101212126B1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150103855A (ko) * 2014-03-04 2015-09-14 주식회사 엘지유플러스 어플리케이션과 서버 간의 연동을 이용한 음성 서비스 제공 방법 및 그 시스템
KR20150133595A (ko) * 2014-05-20 2015-11-30 한국전자통신연구원 특화영역 교체형 음성인식 시스템, 모바일 장치 및 그 방법

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006276460A (ja) 2005-03-29 2006-10-12 Nec Corp 音声認識用辞書配信システム、音声認識用辞書配信方法及び音声認識用辞書配信プログラム
WO2008114708A1 (ja) 2007-03-14 2008-09-25 Nec Corporation 音声認識システム、音声認識方法、および音声認識処理プログラム
JP2012128240A (ja) 2010-12-16 2012-07-05 Denso Corp 音声認識システム及び辞書生成装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006276460A (ja) 2005-03-29 2006-10-12 Nec Corp 音声認識用辞書配信システム、音声認識用辞書配信方法及び音声認識用辞書配信プログラム
WO2008114708A1 (ja) 2007-03-14 2008-09-25 Nec Corporation 音声認識システム、音声認識方法、および音声認識処理プログラム
JP2012128240A (ja) 2010-12-16 2012-07-05 Denso Corp 音声認識システム及び辞書生成装置

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150103855A (ko) * 2014-03-04 2015-09-14 주식회사 엘지유플러스 어플리케이션과 서버 간의 연동을 이용한 음성 서비스 제공 방법 및 그 시스템
KR101643808B1 (ko) * 2014-03-04 2016-07-29 주식회사 엘지유플러스 어플리케이션과 서버 간의 연동을 이용한 음성 서비스 제공 방법 및 그 시스템
KR20150133595A (ko) * 2014-05-20 2015-11-30 한국전자통신연구원 특화영역 교체형 음성인식 시스템, 모바일 장치 및 그 방법
KR102069700B1 (ko) * 2014-05-20 2020-01-23 한국전자통신연구원 특화영역 교체형 음성인식 시스템, 모바일 장치 및 그 방법

Similar Documents

Publication Publication Date Title
US11557280B2 (en) Background audio identification for speech disambiguation
US11030412B2 (en) System and method for chatbot conversation construction and management
US20210311975A1 (en) Language agnostic command-understanding digital assistant
JP6923332B2 (ja) 自動通訳方法及び装置
US8370143B1 (en) Selectively processing user input
WO2022057712A1 (zh) 电子设备及其语义解析方法、介质和人机对话系统
EP4028932A1 (en) Reduced training intent recognition techniques
US20160336006A1 (en) Discriminative data selection for language modeling
CN107111611A (zh) 区分歧义表达以增强用户体验
US10963495B2 (en) Automated discourse phrase discovery for generating an improved language model of a digital assistant
KR102603717B1 (ko) 네트워크 시스템에서 도메인-특정 모델의 생성
EP3423961A1 (en) Providing images for search queries
KR101640024B1 (ko) 사용자의 상황에 기반한 휴대용 통역 장치 및 방법
WO2020238045A1 (zh) 智能语音识别方法、装置及计算机可读存储介质
WO2019133895A2 (en) Automated document cluster merging for topic-based digital assistant interpretation
US10860588B2 (en) Method and computer device for determining an intent associated with a query for generating an intent-specific response
CN108491421A (zh) 一种生成问答的方法、装置、设备和计算存储介质
AU2022204660B2 (en) Intelligent query auto-completion systems and methods
WO2019133857A1 (en) Language agnostic command-understanding digital assistant
KR20150077580A (ko) 음성 인식 기반 서비스 제공 방법 및 그 장치
JP2022091986A (ja) インテリジェント対話方法、装置、電子機器及び記憶媒体
US11403462B2 (en) Streamlining dialog processing using integrated shared resources
US20210233520A1 (en) Contextual multi-channel speech to text
KR102280439B1 (ko) 질의의도를 분석하기 위한 장치 및 방법
CN111209367A (zh) 信息查找方法、信息查找装置、电子设备及存储介质

Legal Events

Date Code Title Description
A201 Request for examination
A302 Request for accelerated examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20151204

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20161208

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20190329

Year of fee payment: 9