KR20210046275A - 음성 인식 서비스를 제공하는 사용자 단말, 방법 및 서버 - Google Patents
음성 인식 서비스를 제공하는 사용자 단말, 방법 및 서버 Download PDFInfo
- Publication number
- KR20210046275A KR20210046275A KR1020190129815A KR20190129815A KR20210046275A KR 20210046275 A KR20210046275 A KR 20210046275A KR 1020190129815 A KR1020190129815 A KR 1020190129815A KR 20190129815 A KR20190129815 A KR 20190129815A KR 20210046275 A KR20210046275 A KR 20210046275A
- Authority
- KR
- South Korea
- Prior art keywords
- candidate
- service
- query word
- extension
- service domain
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 42
- 239000000284 extract Substances 0.000 claims description 34
- 238000006243 chemical reaction Methods 0.000 claims description 25
- 230000005540 biological transmission Effects 0.000 claims description 5
- OAICVXFJPJFONN-UHFFFAOYSA-N Phosphorus Chemical compound [P] OAICVXFJPJFONN-UHFFFAOYSA-N 0.000 claims 2
- 229910052698 phosphorus Inorganic materials 0.000 claims 2
- 239000011574 phosphorus Substances 0.000 claims 2
- 238000000605 extraction Methods 0.000 description 16
- 238000010586 diagram Methods 0.000 description 12
- 239000013598 vector Substances 0.000 description 12
- 238000004891 communication Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 244000240602 cacao Species 0.000 description 4
- 239000003795 chemical substances by application Substances 0.000 description 2
- 238000010606 normalization Methods 0.000 description 2
- 241000750004 Nestor meridionalis Species 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000002604 ultrasonography 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/02—Feature extraction for speech recognition; Selection of recognition unit
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/60—Information retrieval; Database structures therefor; File system structures therefor of audio data
- G06F16/63—Querying
-
- 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/26—Speech to text 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/08—Speech classification or search
- G10L2015/081—Search algorithms, e.g. Baum-Welch or Viterbi
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Multimedia (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Acoustics & Sound (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Telephonic Communication Services (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
음성 인식 서비스를 제공하는 사용자 단말은 음성 명령에 대한 텍스트로부터 질의어 및 서비스 도메인을 추출하는 질의어 추출부, 상기 추출된 서비스 도메인에 기초하여 상기 질의어를 확장시킴으로써 적어도 하나의 확장 질의어를 생성하는 질의어 확장부, 상기 추출된 서비스 도메인에 대응하는 후보 탐색을 위한 적어도 하나의 데이터베이스를 결정하고, 상기 결정된 적어도 하나의 데이터베이스로부터 상기 적어도 하나의 확장 질의어 각각에 대한 적어도 하나의 후보를 탐색하고, 상기 적어도 하나의 후보를 확장시킴으로써 적어도 하나의 확장 후보를 생성하는 후보 확장부, 상기 적어도 하나의 확장 질의어 및 상기 적어도 하나의 확장 후보 간의 유사도를 산출하고, 상기 산출된 유사도에 기초하여 최종 후보를 선택하는 최종 후보 선택부 및 상기 선택된 최종 후보에 기초하여 상기 음성 명령에 대한 서비스를 제공하는 서비스 제공부를 포함한다.
Description
본 발명은 음성 인식 서비스를 제공하는 사용자 단말, 방법 및 서버에 관한 것이다.
지능형 개인 비서는 사용자가 요구하는 작업을 처리하고, 사용자에게 특화된 서비스를 제공하는 소프트웨어 에이전트이다. 지능형 개인 비서는 인공 지능(AI) 엔진과 음성 인식을 기반으로 사용자에게 맞춤 정보를 수집하여 제공하고, 사용자의 음성 명령에 따라 일정 관리, 이메일 전송, 식당 예약 등 여러 기능을 수행하는 점에서 사용자의 편의성을 향상시킨다.
이러한 지능형 개인 비서는 주로 스마트폰에서 맞춤형 개인 서비스의 형태로 제공되고 있다.
지능형 개인 비서는 사용자가 자신이 원하는 서비스를 제공받기 위해 질의를 발화하면, 발화된 질의에 대해 음성 인식을 수행하고, 인식된 질의를 분석하여 질의와 관련된 서비스를 제공한다.
그러나 지능형 개인 비서는 음성 인식 시의 주변 소음, 발화 형태 등에 따라 사용자의 음성을 오인식할 수 있다. 즉, 사용자의 음성을 오인식하여 사용자의 의도와는 전혀 다른 서비스를 제공하는 문제점이 있었다.
한국공개특허 제 2016-0071111호(2016.06.21 공개)
본 발명은 상술한 문제점을 해결하기 위한 것으로서, 사용자의 음성 명령으로부터 서비스 도메인을 추출하고, 추출된 서비스 도메인에 기초하여 질의어 및 후보를 확장시켜 음성 인식을 수행함으로써, 사용자가 발화한 음성 명령을 오인식하더라도 사용자가 의도한 서비스를 제공하는 음성 인식 서비스를 제공하는 사용자 단말, 방법 및 음성 인식 서비스를 제공하는 서버를 제공하고자 한다.
다만, 본 실시예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제로 한정되지 않으며, 또 다른 기술적 과제들이 존재할 수 있다.
상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 발명의 일 실시예에 따르면, 음성 명령에 대한 텍스트로부터 질의어 및 서비스 도메인을 추출하는 질의어 추출부, 상기 추출된 서비스 도메인에 기초하여 상기 질의어를 확장시킴으로써 적어도 하나의 확장 질의어를 생성하는 질의어 확장부, 상기 추출된 서비스 도메인에 대응하는 후보 탐색을 위한 적어도 하나의 데이터베이스를 결정하고, 상기 결정된 적어도 하나의 데이터베이스로부터 상기 적어도 하나의 확장 질의어 각각에 대한 적어도 하나의 후보를 탐색하고, 상기 적어도 하나의 후보를 확장시킴으로써 적어도 하나의 확장 후보를 생성하는 후보 확장부, 상기 적어도 하나의 확장 질의어 및 상기 적어도 하나의 확장 후보 간의 유사도를 산출하고, 상기 산출된 유사도에 기초하여 최종 후보를 선택하는 최종 후보 선택부 및 상기 선택된 최종 후보에 기초하여 상기 음성 명령에 대한 서비스를 제공하는 서비스 제공부를 포함하는 사용자 단말을 제공할 수 있다.
본 발명의 다른 실시예에 따르면, 음성 명령에 대한 텍스트로부터 질의어 및 서비스 도메인을 추출하는 단계, 상기 추출된 서비스 도메인에 기초하여 상기 질의어를 확장시킴으로써 적어도 하나의 확장 질의어를 생성하는 단계, 상기 추출된 서비스 도메인에 대응하는 후보 탐색을 위한 적어도 하나의 데이터베이스를 결정하는 단계, 상기 결정된 적어도 하나의 데이터베이스로부터 상기 적어도 하나의 확장 질의어 각각에 대한 적어도 하나의 후보를 탐색하는 단계, 상기 적어도 하나의 후보를 확장시킴으로써 적어도 하나의 확장 후보를 생성하는 단계, 상기 적어도 하나의 확장 질의어 및 상기 적어도 하나의 확장 후보 간의 유사도를 산출하는 단계, 상기 산출된 유사도에 기초하여 최종 후보를 선택하는 단계 및 상기 선택된 최종 후보에 기초하여 상기 음성 명령에 대한 서비스를 제공하는 단계를 포함하는 음성 인식 서비스 제공 방법을 제공할 수 있다.
본 발명의 또 다른 실시예에 따르면, 사용자 단말로부터 음성 명령을 수신하고, 상기 수신한 음성 명령에 대한 음성 인식을 통해 상기 음성 명령을 텍스트로 변환하는 음성 명령 수신부, 상기 변환된 텍스트로부터 질의어 및 서비스 도메인을 추출하는 질의어 추출부, 상기 추출된 서비스 도메인에 기초하여 상기 질의어를 확장시킴으로써 적어도 하나의 확장 질의어를 생성하는 질의어 확장부, 상기 추출된 서비스 도메인에 대응하는 후보 탐색을 위한 적어도 하나의 데이터베이스를 결정하고, 상기 결정된 적어도 하나의 데이터베이스로부터 상기 적어도 하나의 확장 질의어 각각에 대한 적어도 하나의 후보를 탐색하고, 상기 적어도 하나의 후보를 확장시킴으로써 적어도 하나의 확장 후보를 생성하는 후보 확장부, 상기 적어도 하나의 확장 질의어 및 상기 적어도 하나의 확장 후보 간의 유사도를 산출하고, 상기 산출된 유사도에 기초하여 최종 후보를 선택하는 최종 후보 선택부 및 상기 선택된 최종 후보에 기초하여 상기 음성 명령에 대한 서비스가 실행되도록 하는 서비스 제어 명령을 상기 사용자 단말로 전송하는 서비스 제어 명령 전송부를 포함하는 서버를 제공할 수 있다.
전술한 본 발명의 과제 해결 수단 중 어느 하나에 의하면, 사용자의 음성 명령을 오인식하더라도 서비스 도메인에 기초하여 확장된 질의어 및 후보를 통해 사용자가 원하는 서비스를 제공할 수 있도록 하는 음성 인식 서비스를 제공하는 사용자 단말, 방법 및 음성 인식 서비스 제공 서버를 제공할 수 있다.
도 1은 본 발명의 일 실시예에 따른 음성 인식 서비스 제공 시스템의 구성도이다.
도 2는 본 발명의 일 실시예에 따른 사용자 단말의 구성도이다.
도 3a 내지 도 3c는 본 발명의 일 실시예에 따른 제 1 서비스 도메인과 관련된 서비스를 제공하는 과정을 설명하기 위한 예시적인 도면이다.
도 4a 내지 도 4c는 본 발명의 일 실시예에 따른 제 2 서비스 도메인과 관련된 서비스를 제공하는 과정을 설명하기 위한 예시적인 도면이다.
도 5a 내지 도 5c는 본 발명의 일 실시예에 따른 제 3 서비스 도메인과 관련된 서비스를 제공하는 과정을 설명하기 위한 예시적인 도면이다.
도 6은 본 발명의 일 실시예에 따른 사용자 단말에서 음성 인식 서비스를 제공하는 방법의 순서도이다.
도 7은 본 발명의 일 실시예에 따른 음성 인식 서비스 제공 서버의 구성도이다.
도 8은 본 발명의 일 실시예에 따른 음성 인식 서비스 제공 서버에서 음성 인식 서비스를 제공하는 방법의 순서도이다.
도 2는 본 발명의 일 실시예에 따른 사용자 단말의 구성도이다.
도 3a 내지 도 3c는 본 발명의 일 실시예에 따른 제 1 서비스 도메인과 관련된 서비스를 제공하는 과정을 설명하기 위한 예시적인 도면이다.
도 4a 내지 도 4c는 본 발명의 일 실시예에 따른 제 2 서비스 도메인과 관련된 서비스를 제공하는 과정을 설명하기 위한 예시적인 도면이다.
도 5a 내지 도 5c는 본 발명의 일 실시예에 따른 제 3 서비스 도메인과 관련된 서비스를 제공하는 과정을 설명하기 위한 예시적인 도면이다.
도 6은 본 발명의 일 실시예에 따른 사용자 단말에서 음성 인식 서비스를 제공하는 방법의 순서도이다.
도 7은 본 발명의 일 실시예에 따른 음성 인식 서비스 제공 서버의 구성도이다.
도 8은 본 발명의 일 실시예에 따른 음성 인식 서비스 제공 서버에서 음성 인식 서비스를 제공하는 방법의 순서도이다.
아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
본 명세서에 있어서 '부(部)'란, 하드웨어에 의해 실현되는 유닛(unit), 소프트웨어에 의해 실현되는 유닛, 양방을 이용하여 실현되는 유닛을 포함한다. 또한, 1 개의 유닛이 2 개 이상의 하드웨어를 이용하여 실현되어도 되고, 2 개 이상의 유닛이 1 개의 하드웨어에 의해 실현되어도 된다. 한편, '~부'는 소프트웨어 또는 하드웨어에 한정되는 의미는 아니며, '~부'는 어드레싱 할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 '~부'는 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들 및 변수들을 포함한다. 구성요소들과 '~부'들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 '~부'들로 결합되거나 추가적인 구성요소들과 '~부'들로 더 분리될 수 있다. 뿐만 아니라, 구성요소들 및 '~부'들은 디바이스 내의 하나 또는 그 이상의 CPU들을 재생시키도록 구현될 수도 있다.
도 1은 본 발명의 일 실시예에 따른, 음성 인식 서비스 제공 시스템의 구성도이다. 도 1을 참조하면, 음성 인식 서비스 제공 시스템(1)은 사용자 단말(110) 및 음성 인식 서비스 제공 서버(120)를 포함할 수 있다.
사용자 단말(110) 및 음성 인식 서비스 제공 서버(120)는 음성 인식 서비스 제공 시스템(1)에 의하여 제어될 수 있는 구성요소들을 예시적으로 도시한 것이며, 이러한 도 1의 음성 인식 서비스 제공 시스템(1)은 본 발명의 일 실시예에 불과하므로 도 1을 통해 본 발명이 한정 해석되는 것은 아니며, 본 발명의 다양한 실시예들에 따라 도 1과 다르게 구성될 수도 있다.
도 1의 음성 인식 서비스 제공 시스템(1)의 각 구성요소들은 일반적으로 네트워크(network)를 통해 연결된다. 예를 들어, 도 1에 도시된 바와 같이, 사용자 단말(110)은 음성 인식 서비스 제공 서버(120)와 동시에 시간 간격을 두고 연결될 수 있다.
네트워크는 단말들 및 서버들과 같은 각각의 노드 상호 간에 정보 교환이 가능한 연결 구조를 의미하는 것으로, 근거리 통신망(LAN: Local Area Network), 광역 통신망(WAN: Wide Area Network), 인터넷 (WWW: World Wide Web), 유무선 데이터 통신망, 전화망, 유무선 텔레비전 통신망 등을 포함한다. 무선 데이터 통신망의 일례에는 3G, 4G, 5G, 3GPP(3rd Generation Partnership Project), LTE(Long Term Evolution), WIMAX(World Interoperability for Microwave Access), 와이파이(Wi-Fi), 블루투스 통신, 적외선 통신, 초음파 통신, 가시광 통신(VLC: Visible Light Communication), 라이파이(LiFi) 등이 포함되나 이에 한정되지는 않는다.
사용자 단말(110)은 예를 들어, 음성 인식 스피커, 스마트폰, 차량용 스피커, 태블릿 PC 등을 포함하는 음성 인식 서비스를 제공하는 모든 단말을 포함할 수 있다.
사용자 단말(110)은 음성 명령을 수신하고, 수신한 음성 명령에 대한 음성 인식을 통해 음성 명령을 텍스트로 변환할 수 있다. 예를 들어, 사용자 단말(110)은 수신한 음성 명령을 STT(Speach To Text)를 통해 텍스트로 변환할 수 있다.
사용자 단말(110)은 음성 명령에 대한 텍스트로부터 질의어 및 서비스 도메인을 추출할 수 있다. 질의어란 사용자가 실행하고자 하는 서비스와 관련된 명령어로, 사용자가 실제 실행하고자 하는 서비스의 의도(intent) 및 요구 기능을 실행하기 위한 파라미터를 얻어내도록 하는 엔티티(entity)를 포함할 수 있다. 서비스 도메인은 특정 서비스의 영역으로서, 특정 서비스에서 활용되는 정보의 속성에 의해 정의될 수 있다. 즉, 서비스 도메인은 사용자로부터 입력된 음성 명령과 관련된 주제를 식별하기 위해 이용될 수 있다. 예를 들어, 사용자 단말(110)이 "아이유 노래 틀어줘"라는 음성 명령을 입력받은 경우, 사용자 단말(110)은 음성 명령에 대한 텍스트로부터 서비스 도메인을 '음악'으로 추출하고, 음악 도메인 내에서 질의어를 '아이유-음악재생'으로 추출할 수 있다.
여기서, 서비스 도메인은 통화 서비스에 해당하는 제 1 서비스 도메인, 문자 메시지 서비스에 해당하는 제 2 서비스 도메인, 인스턴트 메시지 서비스에 해당하는 제 3 서비스 도메인 및 컨텐츠 검색 서비스에 해당하는 제 4 서비스 도메인 등을 포함할 수 있다. 서비스 도메인은 제 1 서비스 도메인 내지 제 4 서비스 도메인 이외에도 다양하게 구성될 수 있으며, 이에 한정되는 것은 아니다.
사용자 단말(110)은 텍스트로부터 서비스 도메인에 관한 서비스 도메인 관련 텍스트를 추출하고, 추출한 서비스 도메인 관련 텍스트에 기초하여 제 1 서비스 도메인, 제 2 서비스 도메인, 제 3 서비스 도메인 및 제 4 서비스 도메인 중 어느 하나를 추출할 수 있다. 여기서, 서비스 도메인 관련 텍스트는 데이터베이스에 저장된 서비스 도메인의 키워드와 비교함으로써 추출될 수 있다. 이에 대한 자세한 설명은 후술하기로 한다.
사용자 단말(110)은 추출된 서비스 도메인에 기초하여 질의어를 확장시킴으로써 적어도 하나의 확장 질의어를 생성할 수 있다. 여기서, 사용자 단말(110)은 질의어를 추출된 도메인의 종류마다 다른 방식으로 확장할 수 있다.
사용자 단말(110)은 추출된 서비스 도메인에 대응하는 후보 탐색을 위한 적어도 하나의 데이터베이스를 결정하고, 결정된 적어도 하나의 데이터베이스로부터 적어도 하나의 확장 질의어 각각에 대한 적어도 하나의 후보를 탐색하고, 적어도 하나의 후보를 확장시킴으로써 적어도 하나의 확장 후보를 생성할 수 있다. 여기서, 후보란 추출된 질의어와 동일 또는 유사한 키워드일 수 있다. 후보를 탐색함으로써 질의어가 오인식된 경우라 하더라도 질의어와 유사한 후보의 탐색을 통해 음성 인식의 정확도를 높여 사용자의 의도에 따라 서비스가 제공될 수 있도록 할 수 있다.
사용자 단말(110)은 적어도 하나의 확장 질의어 및 적어도 하나의 확장 후보 간의 유사도를 산출하고, 산출된 유사도에 기초하여 최종 후보를 선택할 수 있다.
이를 위해, 사용자 단말(110)은 적어도 하나의 확장 질의어 및 적어도 하나의 확장 후보 간의 비교를 위해 적어도 하나의 확장 질의어 및 적어도 하나의 확장 후보를 적어도 하나의 변환 형식으로 변환할 수 있다.
여기서, 적어도 하나의 변환 형식은 키스트로크(keystroke), 발음 기호, 문자열 등을 포함할 수 있다. 이후, 사용자 단말(110)은 적어도 하나의 확장 질의어 각각 및 적어도 하나의 확장 질의어 각각에 대응하는 적어도 하나의 확장 후보 각각의 유사도를 산출하고, 적어도 하나의 확장 후보 각각의 유사도에 기초하여 소정 개수의 유사 후보를 선택할 수 있다. 이 때, 사용자 단말(110)은 추출된 도메인의 종류마다 다른 기준으로 소정 개수의 유사 후보 중 최종 후보를 선택할 수 있다.
사용자 단말(110)은 선택된 최종 후보에 기초하여 음성 명령에 대한 서비스를 제공할 수 있다.
본 발명의 다른 실시예에 따르면, 사용자 단말(110)이 음성 명령을 음성 인식 서비스 제공 서버(120)로 전송함으로써, 음성 인식 서비스 제공 서버(120)에 의해 수행될 수도 있다. 이하에서는 해당 실시예를 설명하기로 한다.
음성 인식 서비스 제공 서버(120)는 사용자 단말(110)로부터 음성 명령을 수신하고, 수신한 음성 명령에 대한 음성 인식을 통해 음성 명령을 텍스트로 변환할 수 있다.
음성 인식 서비스 제공 서버(120)는 변환된 텍스트로부터 질의어 및 서비스 도메인을 추출할 수 있다. 여기서, 서비스 도메인은 통화 서비스에 해당하는 제 1 서비스 도메인, 문자 메시지 서비스에 해당하는 제 2 서비스 도메인, 인스턴트 메시지 서비스에 해당하는 제 3 서비스 도메인 및 컨텐츠 검색 서비스에 해당하는 제 4 서비스 도메인 등을 포함할 수 있다.
예를 들어, 음성 인식 서비스 제공 서버(120)는 텍스트로부터 서비스 도메인에 관한 서비스 도메인 관련 텍스트를 추출하고, 추출한 서비스 도메인 관련 텍스트에 기초하여 제 1 서비스 도메인, 제 2 서비스 도메인, 제 3 서비스 도메인 및 제 4 서비스 도메인 중 어느 하나를 추출할 수 있다.
음성 인식 서비스 제공 서버(120)는 추출된 서비스 도메인에 기초하여 질의어를 확장시킴으로써 적어도 하나의 확장 질의어를 생성할 수 있다. 여기서, 음성 인식 서비스 제공 서버(120)는 질의어를 추출된 도메인의 종류마다 다른 방식으로 확장할 수 있다.
음성 인식 서비스 제공 서버(120)는 추출된 서비스 도메인에 대응하는 후보 탐색을 위한 적어도 하나의 데이터베이스를 결정하고, 결정된 적어도 하나의 데이터베이스로부터 적어도 하나의 확장 질의어 각각에 대한 적어도 하나의 후보를 탐색하고, 적어도 하나의 후보를 확장시킴으로써 적어도 하나의 확장 후보를 생성할 수 있다.
음성 인식 서비스 제공 서버(120)는 적어도 하나의 확장 질의어 및 적어도 하나의 확장 후보 간의 유사도를 산출하고, 산출된 유사도에 기초하여 최종 후보를 선택할 수 있다.
이를 위해, 음성 인식 서비스 제공 서버(120)는 적어도 하나의 확장 질의어 및 적어도 하나의 확장 후보 간의 비교를 위해 적어도 하나의 확장 질의어 및 적어도 하나의 확장 후보를 적어도 하나의 변환 형식으로 변환할 수 있다. 여기서, 적어도 하나의 변환 형식은 키스트로크(keystroke), 발음 기호, 문자열 등을 포함할 수 있다.
이후, 음성 인식 서비스 제공 서버(120)는 적어도 하나의 확장 질의어 각각 및 적어도 하나의 확장 질의어 각각에 대응하는 적어도 하나의 확장 후보 각각의 유사도를 산출하고, 적어도 하나의 확장 후보 각각의 유사도에 기초하여 소정 개수의 유사 후보를 선택할 수 있다. 이 때, 음성 인식 서비스 제공 서버(120)는 추출된 도메인의 종류마다 다른 기준으로 소정 개수의 유사 후보 중 최종 후보를 선택할 수 있다.
음성 인식 서비스 제공 서버(120)는 선택된 최종 후보에 기초하여 음성 명령에 대한 서비스가 실행되도록 하는 서비스 제어 명령을 사용자 단말(110)로 전송할 수 있다.
이하에서는 도 1의 음성 인식 서비스 제공 시스템의 각 구성요소의 동작에 대해 보다 구체적으로 설명한다.
도 2는 본 발명의 일 실시예에 따른 사용자 단말의 구성도이다. 도 1 및 도 2를 참조하면, 사용자 단말(110)은 음성 인식부(210), 질의어 추출부(220), 질의어 확장부(230), 후보 확장부(240), 최종 후보 선택부(250), 서비스 제공부(260) 및 데이터베이스(270)를 포함할 수 있다.
음성 인식부(210)는 음성 명령을 수신할 수 있다. 음성 명령은 예를 들어, 문자 메시지 및 통화의 수신자명, 인스턴트 메시지의 친구 리스트에 포함된 친구명, 컨텐츠를 검색하기 위한 플레이 리스트명 등을 포함할 수 있다.
예를 들어, 음성 인식부(210)는 사용자로부터 "다니엘님에게 전화 걸어줘"와 같이 통화 서비스와 관련된 음성 명령을 수신할 수 있다. 다른 예를 들어, 음성 인식부(210)는 사용자로부터 "다니엘님에게 문자 보내줘"와 같이 문자 메시지와 관련된 음성 명령을 수신할 수 있다. 또 다른 예를 들어, 음성 인식부(210)는 사용자로부터 "다니엘님에게서 온 인스턴트 메시지 읽어줘"와 같이 인스턴트 메시지와 관련된 음성 명령을 수신할 수 있다. 또 다른 예를 들어, 음성 인식부(210)는 사용자로부터 "거짓말 노래 틀어줘"와 같이 컨텐츠 검색 서비스와 관련된 음성 명령을 수신할 수 있다.
음성 인식부(210)는 수신한 음성 명령에 대한 음성 인식을 통해 음성 명령을 텍스트로 변환할 수 있다. 예를 들어, 음성 인식부(210)는 수신한 음성 명령을 STT(Speach To Text)를 통해 텍스트로 변환할 수 있다.
질의어 추출부(220)는 음성 명령에 대한 텍스트로부터 질의어를 추출할 수 있다. 예를 들어, 질의어 추출부(220)는 텍스트로부터 질의어로서 수신자명, 메신져 친구명, 플레이리스트명 등을 추출할 수 있다.
질의어 추출부(220)는 음성 명령에 대한 텍스트로부터 서비스 도메인을 추출할 수 있다. 예를 들어, 질의어 추출부(220)는 음성 명령에 대한 텍스트로부터 서비스 도메인에 관한 서비스 도메인 관련 텍스트를 추출하고, 추출한 서비스 도메인 관련 텍스트에 기초하여 어느 하나의 서비스 도메인을 추출할 수 있다. 여기서, 서비스 도메인은 통화 서비스(예를 들어, 전화 걸기)에 해당하는 제 1 서비스 도메인, 문자 메시지 서비스(예를 들어, 문자 보내기, 문자 읽어주기)에 해당하는 제 2 서비스 도메인, 인스턴트 메시지 서비스(예를 들어, 인스턴트 메시지 보내기, 인스턴트 메시지 읽어주기)에 해당하는 제 3 서비스 도메인 및 컨텐츠 검색 서비스(예를 들어, 플레이 리스트 재생)에 해당하는 제 4 서비스 도메인 등을 포함할 수 있다.
예를 들어, 질의어 추출부(220)는 도메인 분류기를 이용하여 제 1 내지 제 4 서비스 도메인 중 어느 하나를 추출할 수 있다. 여기서, 질의어 추출부(220)는, 도메인에 특화된 단어 의미 벡터를 얻어내면서 동시에 빠른 수행 속도를 유지하기 위해 기존에 사용되던 캐릭터 기반 의미 벡터 대신 도메인 특화 의미 벡터를 이용할 수 있다. 도메인 특화 의미 벡터는 예를 들어, GloVe(Global Vectors) 의미 벡터 등과 같이 일반 단어 의미 벡터로는 표현할 수 없는, 해당 문제에 특허된 단어의 의미를 나타내기 위한 것으로, 네트워크 모델 훈련시에 같이 훈련될 수 있다. 여기서, GloVe란 분산 단어 표현에 대한 모델로, 해당 모델은 단어에 대한 벡터 표현을 획득하기 위한 비지도 학습 알고리즘일 수 있으며, 해당 모델은 단어를 의미있는 공간으로 매핑시킴으로써 획득될 수 있고, 단어 간의 거리는 의미론적 유사성과 관련이 있다.
도메인 특화 의미 벡터를 이용함으로써 문장 단위 정확률의 성능이 향상되며, 도메인 특화 의미 벡터가 각 문제에서 단어의 의미 벡터를 fine-tuning하는데 효과적일 수 있다. 질의어 추출부(220)는 도메인 특화 의미 벡터에 기초한 도메인 분류기를 이용한 방법 외에도, 다양한 방법으로 서비스 도메인을 추출할 수 있으며, 이에 한정하지 않는다.
다른 예를 들어, 질의어 추출부(220)는 추출한 서비스 도메인 관련 텍스트를 각각의 서비스 도메인의 키워드가 저장된 데이터베이스(270)와 비교하여 제 1 내지 제 4 서비스 도메인 중 어느 하나를 추출할 수 있다.
데이터베이스(270)는 제 1 내지 제 4 데이터베이스를 포함할 수 있다. 제 1 데이터베이스에는 '통화, 전화, 발신, 수신, 발신자, 수신자, 걸어줘, 연결' 등과 같이 제 1 서비스 도메인과 관련된 키워드가 저장되어 있을 수 있다. 제 2 데이터베이스에는 '문자, 발송, 발신, 수신, 발신자, 수신자, 응답, 메시지, 보내줘, 읽어줘' 등과 같이 제 2 서비스 도메인과 관련된 키워드가 저장되어 있을 수 있다. 제 3 데이터베이스는 '친구, 지인, 메시지, 톡, 채팅, 단체 채팅, 보내줘, 읽어줘' 등과 같이 제 3 서비스 도메인과 관련된 키워드가 저장되어 있을 수 있다. 제 4 데이터베이스는 '노래, 음악, 영화, 드라마, 미드, 일드, 틀어줘, 재생, 빠르게, 느리게, 다음곡(노래), 이전곡(노래), 일시정지, 정지' 등과 같이 제 4 서비스 도메인과 관련된 키워드가 저장되어 있을 수 있다.
예를 들어, 질의어 추출부(220)는 "다니엘님에게 전화 걸어줘"라는 음성 명령으로부터 [전화, 걸어줘]라는 서비스 도메인 관련 텍스트를 추출하여 제 1 서비스 도메인을 추출할 수 있다. 다른 예를 들어, 질의어 추출부(220)는 "다니엘님에게 문자 보내줘"라는 음성 명령으로부터 [문자, 보내줘]라는 서비스 도메인 관련 텍스트를 추출하여 제 2 서비스 도메인을 추출할 수 있다. 또 다른 예를 들어, 질의어 추출부(220)는 "다니엘님에게서 온 인스턴트 메시지 읽어줘"라는 음성 명령으로부터 [인스턴트 메시지, 읽어줘]라는 서비스 도메인 관련 텍스트를 추출하여 제 3 서비스 도메인을 추출할 수 있다. 또 다른 예를 들어, 질의어 추출부(220)는 "거짓말 노래 틀어줘"라는 음성 명령으로부터 [노래, 틀어줘]라는 서비스 도메인 관련 텍스트를 추출하여 제 4 서비스 도메인을 추출할 수 있다.
질의어 확장부(230)는 추출된 서비스 도메인에 기초하여 질의어를 확장시킴으로써 적어도 하나의 확장 질의어를 생성할 수 있다. 여기서, 질의어 확장부(230)는 질의어를 추출된 도메인의 종류마다 다른 방식으로 확장할 수 있다.
예를 들어, 질의어 확장부(230)는 추출된 서비스 도메인이 제 1 서비스 도메인 또는 제 2 서비스 도메인에 해당하는 경우, 질의어에 대해 사용자 단말(110)의 주소록의 필드에 따른 조합, 접미사를 제외한 확장 등을 수행하여 적어도 하나의 확장 질의어를 생성할 수 있다. 예를 들어, 질의어 확장부(230)는 '다니엘, 대리'라는 질의어에 대해 주소록 필드에 따른 조합을 통해 '다니엘 대리'와 같이 확장 질의어를 생성할 수 있다.
다른 예를 들어, 질의어 확장부(230)는 제 3 서비스 도메인에 기초하여 질의어에 대해 접미사를 제외한 확장을 수행하여 적어도 하나의 확장 질의어를 생성할 수 있다. 예를 들어, 질의어 확장부(230)는 '다니엘님'이라는 질의어에 대해 접미사를 제외한 확장을 통해 '다니엘'이라는 확장 질의어를 생성할 수 있다.
또 다른 예를 들어, 질의어 확장부(230)는 제 4 서비스 도메인에 기초하여 질의어에 대해 날짜 형식의 정규화를 수행하여 적어도 하나의 확장 질의어를 생성할 수 있다. 예를 들어, 질의어 확장부(230)는 질의어가 '2019/12/31'라는 날짜 형식을 포함하는 경우, 해당 날짜 형식의 정규화를 수행하여 '2019년 12월 31일'로 확장 질의어를 생성할 수 있다.
후보 확장부(240)는 추출된 서비스 도메인에 대응하는 후보 탐색을 위한 적어도 하나의 데이터베이스(270)를 결정하고, 결정된 적어도 하나의 데이터베이스(270)로부터 적어도 하나의 확장 질의어 각각에 대한 적어도 하나의 후보를 탐색하고, 적어도 하나의 후보를 확장시킴으로써 적어도 하나의 확장 후보를 생성할 수 있다. 여기서, 후보는 키(key)와 서비스에 대한 ID에 해당하는 값(value)로 구성될 수 있다. 여기서, 키(key)는 특정 텍스트와 관련된 파라미터명을 나타내고, 값(value)은 서비스에 대한 ID에 대응하여 추출된 값을 의미하며, 키와 값은 예를 들어, 키1(key1) 및 값1(value1)과 같이 매칭되어 저장되어 있을 수 있다.
데이터베이스(270)는 제 5 내지 제 7 데이터베이스를 더 포함할 수 있다. 제 5 데이터베이스에는 사용자가 사용자 단말(110)의 설치된 주소록 앱을 통해 등록한 친구명, 친구 전화 번호 등이 저장되어 있을 수 있다. 제 6 데이터베이스에는 사용자가 인스턴트 메시지 서비스를 통해 등록한 친구명 또는 친구 ID, 대화 내용 등이 저장되어 있을 수 있다. 제 7 데이터베이스에는 컨텐츠 검색 서비스를 제공하기 위한 복수의 컨텐츠명, 복수의 컨텐츠명과 관련된 메타데이터 등이 저장되어 있을 수 있다.
예를 들어, 후보 확장부(240)는 제 5 데이터베이스로부터 확장 질의어 각각에 대한 후보를 탐색한 경우, 탐색한 후보를 주소록의 필드에 따른 조합과 접미사를 제외한 확장을 수행하여 적어도 하나의 확장 후보를 생성할 수 있다. 예를 들어, 사용자 단말(110)의 주소록의 친구명으로 '다니엘, 대리'가 등록된 경우, 후보 확장부(240)는 확장 질의어에 기초하여 제 5 데이터베이스로부터 후보로서 '다니엘, 대리'를 탐색하고, 탐색한 후보에 기초하여 '다니엘 대리'와 같이 확장 후보를 생성할 수 있다.
다른 예를 들어, 후보 확장부(240)는 제 6 데이터베이스로부터 확장 질의어 각각에 대한 후보를 탐색한 경우, 탐색한 후보에 대해 영어와 한글을 분리하고, 성씨를 제외한 이름을 추출하는 확장을 수행하여 적어도 하나의 확장 후보를 생성할 수 있다. 예를 들어, 사용자 단말(110)의 인스턴트 메시지 서비스의 친구명으로 '이다니엘(daniel)'이 등록된 경우, 후보 확장부(240)는 확장 질의어에 기초하여 제 6 데이터베이스로부터 후보로서 '이다니엘(daniel)'을 탐색하고, 탐색한 후보에 기초하여 '이다니엘', '다니엘', 'daniel'과 같이 확장 후보를 생성할 수 있다.
또 다른 예를 들어, 후보 확장부(240)는 제 7 데이터베이스로부터 확장 질의어 각각에 대한 후보를 탐색한 경우, 탐색한 후보에 대해 날짜 형식 정규화를 수행하거나, 가능한 후보의 조합의 생성을 통해 적어도 하나의 확장 후보를 생성할 수 있다. 예를 들어, 사용자 단말(110)의 써드파티(3rd-party) 앱 등을 통해 컨텐츠를 검색, 이용, 구매, 보유한 경우, 후보 확장부(240)는 확장 질의어에 기초하여 제 7 데이터베이스로부터 후보로서 '2019/12/31'을 탐색하고, 탐색된 후보에 기초하여 '2019년 12월 31일'과 같이 확장 후보를 생성할 수 있다.
다음의 표 1은 '다니엘, 대리'라는 질의어에 대하여 생성된 확장 질의어 및 확장 후보를 나타내고 있다. 서비스 도메인은 제 1 서비스 도메인인 것으로 가정한다.
예를 들어, 질의어가 "다니엘, 대리'인 경우, 질의어 확장부(230)는 접미사를 제외한 확장을 통해 '다니엘 대리'와 '다니엘'과 같이 확장 질의어를 생성할 수 있다. 후보 확장부(240)는 제 5 데이터베이스로부터 '다니엘 대리'라는 확장 질의어에 대한 후보로서 '다니엘, 대리님', '강다니엘(daniel)'을 추출할 수 있다. 이때, 후보 확장부(240)는 후보 중 하나인 '다니엘, 대리님'을 확장하여, '다니엘 대리님', '다니엘대리', '다니엘'이라는 확장 후보를 생성할 수 있다. 또한, 후보 확장부(240)는 후보 중 다른 하나인 '강다니엘(daniel)'을 확장하여, '강다니엘', '다니엘', 'daniel'이라는 확장 후보를 생성할 수 있다.
또한, 후보 확장부(240)는 제 6 데이터베이스로부터 '다니엘'이라는 확장 질의어에 대한 후보로서 '강다니엘(Daniel)'을 추출할 수 있다. 이때, 후보 확장부(240)는 후보인 '강다니엘(Daniel)'을 확장하여, '강다니엘', '다니엘', 'daniel'이라는 확장 후보를 생성할 수 있다.
최종 후보 선택부(250)는 적어도 하나의 확장 질의어 및 적어도 하나의 확장 후보 간의 유사도를 산출하고, 산출된 유사도에 기초하여 최종 후보를 선택할 수 있다.
최종 후보 선택부(250)는 형식 변환부(251) 및 유사 후보 선택부(252)를 포함할 수 있다.
형식 변환부(251)는 적어도 하나의 확장 질의어 및 적어도 하나의 확장 후보 간의 비교를 위해 적어도 하나의 확장 질의어 및 적어도 하나의 확장 후보를 적어도 하나의 변환 형식으로 변환할 수 있다. 여기서, 적어도 하나의 변환 형식은 키스트로크(keystroke), 발음 기호, 문자열 등을 포함할 수 있다. 키스트로크는 알파벳으로 표현한 타이핑 쿼리를 의미하고, 발음 기호는 미리 정의된 기호로 발음을 표현한 것을 의미하고, 문자열은 입력 문자열 그대로를 사용하는 것을 의미한다.
예를 들어, 변환 형식이 키스트로크로 설정된 경우, 형식 변환부(251)는 '다니엘'이라는 확장 질의어를 'eksldpf'과 같이 변환할 수 있으며, 확장 후보 또한 동일한 형식으로 변환할 수 있다. 여기서, 영어로 구성된 확장 질의어의 경우, 한글 발음으로 변환 후에 키스트로크 변환을 수행할 수 있다. 예를 들어, 형식 변환부(251)는 'daniel'이라는 확장 질의어를 '다니엘'과 같이 한글 발음으로 변환한 후에 'eksldpf'과 같이 변환할 수 있다.
다른 예를 들어, 변환 형식이 발음 기호로 설정된 경우, 형식 변환부(251)는 '다니엘'이라는 확장 질의어를 'da ni el'과 같이 변환할 수 있으며, 확장 후보 또한 동일한 형식으로 변환할 수 있다.
또 다른 예를 들어, 변환 형식이 문자열로 설정된 경우, 형식 변환부(251)는 '다니엘'이라는 확장 질의어를 '다니엘'과 같이 그대로 이용할 수 있다.
유사 후보 선택부(252)는 적어도 하나의 확장 질의어 각각 및 적어도 하나의 확장 질의어 각각에 대응하는 적어도 하나의 확장 후보 각각의 유사도를 산출할 수 있다.
다음의 표 2는 '다니엘, 대리'라는 질의어에 있어서, 확장질의어와 확장후보 간의 유사도를 나타내고 있다.
표 2를 참조하면, 유사 후보 선택부(252)는 '다니엘 대리'라는 확장 질의어와 이에 대한 확장 후보를 각각 비교하여 유사도를 산출하고, '다니엘'이라는 확장 질의어와 이에 대한 확장 후보를 각각 비교하여 유사도를 산출할 수 있다.
예를 들어, 표 2에는 '다니엘 대리'라는 확장 질의어'와 '다니엘 대리님'이라는 확장 후보 간의 유사도가 95%이고, '다니엘'라는 확장 질의어'와 '강다니엘'이라는 확장 후보 간의 유사도가 80%인 것을 나타내고 있다.
이와 같이, 본 발명에 따르면, 질의어뿐만 아니라 후보를 확장하고 확장 질의어와 확장 후보 간의 유사도를 산출하여 음성 인식 서비스를 수행함으로써 사용자의 음성 명령이 오인식될 확률을 현저하게 낮출 수 있다.
이 때, 유사 후보 선택부(252)는 편집 거리(ED, Edit Distance)에 따른 에러 점수(Error Model)에 기초하여 각각의 유사도를 산출할 수 있다. 편집 거리는 A라는 키워드를 B라는 키워드로 만들기 위해 필요한 편집 횟수를 의미하며, 예를 들어, '카카??'을 '카카오'로 만들기 위해 '1회'(insertion 1회)의 편집이 요구되므로 이 경우, 편집 거리는 '1회'이다. 에러 점수는 정타와 오타 사이에서 오타가 입력될 확률을 의미하며, 예를 들어, '한겨례'와 '한겨레'의 경우, 'ㅔ'를 입력해야 하지만 'ㅖ'가 입력된 확률을 의미할 수 있다.
유사 후보 선택부(252)는 적어도 하나의 확장 후보 각각에 대한 유사도에 기초하여 소정 개수의 유사 후보를 선택할 수 있다. 예를 들어, 유사 후보 선택부(252)는 확장 질의어가 N개인 경우, 각 확장 질의어 별로 최대 K개(K는 각 확장 질의어에 대한 확장 후보의 개수 중 최대의 수일 수 있음)의 유사한 후보를 선택할 수 있다.
예를 들어, 유사 후보 선택부(252)는 기설정된 유사도 이상을 가진 최대 K개의 확장후보를 유사 후보로서 선택할 수 있다. 예를 들어, 표 2의 경우, 90% 유사도 이상을 가진 '다니엘 대리님'(유사도: 95%), '다니엘 대리'(유사도: 100%), 'daniel'(유사도: 90%)가 유사 후보로서 선택될 수 있다.
최종 후보 선택부(250)는 추출된 도메인의 종류마다 다른 기준으로 소정 개수의 유사 후보 중 최종 후보를 선택할 수 있다.
최종 후보 선택부(250)는 예를 들어, 상술한 바와 같이 '다니엘 대리님'(유사도: 95%), '다니엘 대리'(유사도: 100%), 'daniel'(유사도: 90%)가 유사 후보인 경우, 이 중 하나를 최종 후보로 선택할 수 있다
최종 후보 선택부(250)는 어느 한 유사 후보의 유사도가 다른 유사 후보보다 독보적으로 높은 경우(유사도의 차이가 기설정된 범위를 초과하는 경우), 해당 유사 후보를 최종 후보로서 선택할 수 있다. 예를 들어, 제 1 유사 후보의 유사도 90%이고, 제 2 유사 후보 및 제 3 유사 후보의 유사도가 각각 65%, 45%인 경우, 최종 후보 선택부(250)는 제 1 유사 후보를 최종 후보로서 선택할 수 있다.
다른 예를 들어, 최종 후보 선택부(250)는 유사도의 차이가 기설정된 범위 내에 있는 경우, 서비스 도메인의 특성을 더 고려하여 유사 후보를 선택할 수 있다.
예컨대, 최종 후보 선택부(250)는 질의어가 제 1 서비스 도메인에 관한 것인 경우, 최근 통화 이력에 기초하여 사용자(100)가 송신할 확률을 계산하고, 이를 더 고려하여 최종 후보를 선택할 수 있다.
또한, 최종 후보 선택부(250)는 질의어가 제 3 서비스 도메인에 관한 것인 경우, 확장 후보에 대응하는 후보와의 채팅 횟수, 해당 후보와의 단체 채팅방 수, 해당 후보와의 최근 채팅 이력 등에 기초하여 산출된 친밀도 점수를 더 고려하여 최종 후보를 선택할 수 있다.
또한, 최종 후보 선택부(250)는 유사 후보 간의 유사도의 차이에 기초하여 유사도 및 서비스 도메인의 특성에 대한 가중치를 다르게 적용하여 최종 후보를 선택할 수도 있다. 예를 들어, 최종 후보 선택부(250)는 최종 후보를 선택함에 있어서 유사도에 제 1 가중치를 적용하고, 도메인의 특성에 제 2 가중치를 적용할 수 있다. 이때, 제 1 가중치는 유사도의 차이에 비례하고, 제 2 가중치는 유사도의 차이에 반비례할 수 있다.
서비스 제공부(260)는 선택된 최종 후보에 기초하여 음성 명령에 대한 서비스를 제공할 수 있다. 이 때, 서비스 제공부(260)는 최종 후보의 값(value)에 해당하는 서비스 ID를 이용하여 음성 명령에 대한 서비스를 제공할 수 있다. 음성 명령에 대한 서비스를 제공하는 과정에 대해서는 도 3a 내지 도 6c를 통해 상세히 설명하도록 한다.
도 3a 내지 도 3c는 본 발명의 일 실시예에 따른 제 1 서비스 도메인과 관련된 서비스를 제공하는 과정을 설명하기 위한 예시적인 도면이다.
도 3a를 참조하면, 음성 인식부(210)는 사용자(100)로부터 발화된 "헤이 카카오, 다니엘님에게 전화 걸어줘"(300)라는 음성 명령에 대해 음성 인식을 수행하고, 음성 명령을 텍스트로 변환할 수 있다.
질의어 추출부(220)는 변환된 음성 명령에 대한 텍스트로부터 질의어 및 서비스 도메인을 추출할 수 있다. 예를 들어, 질의어 추출부(220)는 텍스트로부터 수신자명에 해당하는 '다니엘님'이라는 질의어를 추출하고, 제 1 데이터베이스를 탐색하여 제 1 서비스 도메인 관련 텍스트로서 [전화, 걸어줘]를 추출하고, 이를 통해 통화 서비스에 해당하는 제 1 서비스 도메인을 추출할 수 있다.
도 3b를 참조하면, 질의어 확장부(230)는 추출된 제 1 서비스 도메인에 기초하여 '다니엘님'이라는 질의어를 확장시킴으로써 '다니엘'과 같이 확장 질의어를 생성하고, 후보 확장부(240)는 사용자 단말(110)에 설치된 주소록(310)을 통해 '다니엘'이라는 확장 질의어에 대한 '다니엘, 대리'(311)라는 후보를 탐색하여 '다니엘, 대리'(311)를 확장시킴으로써, '다니엘 대리', '다니엘'로 확장 후보를 생성하고, 최종 후보 선택부(250)는 '다니엘'이라는 확장 질의어와 '다니엘 대리', '다니엘' 각각의 유사도를 비교하여 최종 후보로 '다니엘, 대리'(311)를 선택할 수 있다.
도 3c를 참조하면, 서비스 제공부(260)는 사용자(100)가 '다니엘, 대리'(320)와 음성 통화를 수행할 수 있도록 통화 서비스를 제공할 수 있다.
도 4a 내지 도 4c는 본 발명의 일 실시예에 따른 제 2 서비스 도메인과 관련된 서비스를 제공하는 과정을 설명하기 위한 예시적인 도면이다.
도 4a를 참조하면, 음성 인식부(210)는 사용자(100)로부터 발화된 "헤이 카카오, 다니엘님에게 내일 10시 회사에서 보자고 문자 보내줘"(400)라는 음성 명령에 대해 음성 인식을 수행하여 텍스트로 변환할 수 있다.
질의어 추출부(220)는 변환된 음성 명령에 대한 텍스트로부터 질의어 및 서비스 도메인을 추출할 수 있다. 예를 들어, 질의어 추출부(220)는 텍스트로부터 수신자명에 해당하는 '다니엘님'이라는 질의어를 추출하고, 제 2 데이터베이스를 탐색하여 제 서비스 도메인 관련 텍스트로 [문자, 보내줘]를 추출하고, 이를 통해 문자 메시지 서비스에 해당하는 제 2 서비스 도메인을 추출할 수 있다.
도 4b를 참조하면, 질의어 확장부(230)는 추출된 제 2 서비스 도메인에 기초하여 '다니엘님'이라는 질의어를 확장시킴으로써 '다니엘'과 같이 확장 질의어를 생성하고, 후보 확장부(240)는 사용자 단말(110)에 설치된 주소록(410)을 통해 '다니엘'이라는 확장 질의어에 대한 '다니엘, 대리'(411)라는 후보를 탐색하여 '다니엘, 대리'(411)를 확장시킴으로써, '다니엘 대리', '다니엘'로 확장 후보를 생성하고, 최종 후보 선택부(250)는 '다니엘'이라는 확장 질의어와 '다니엘 대리', '다니엘' 각각의 유사도를 비교하여 최종 후보로 '다니엘, 대리'(411)를 선택할 수 있다.
도 4c를 참조하면, 서비스 제공부(260)는 문자 메시지 애플리케이션(420)을 이용하여 '다니엘, 대리'(411)에게 "내일 6시 회사에서 보자"(421)라는 문자 메시지를 전송할 수 있다.
도 5a 내지 도 5c는 본 발명의 일 실시예에 따른 제 3 서비스 도메인과 관련된 서비스를 제공하는 과정을 설명하기 위한 예시적인 도면이다.
도 5a를 참조하면, 음성 인식부(210)는 사용자(100)로부터 발화된 "헤이 카카오, 다니엘님에게서 온 카톡 읽어줘"(500)라는 음성 명령에 대해 음성 인식을 수행하여 텍스트로 변환할 수 있다.
질의어 추출부(220)는 변환된 음성 명령에 대한 텍스트로부터 질의어 및 서비스 도메인을 추출할 수 있다. 예를 들어, 질의어 추출부(220)는 텍스트로부터 메신져 친구명에 해당하는 '다니엘님'이라는 질의어를 추출하고, 제 3 데이터베이스(273)를 탐색하여 제 3서비스 도메인 관련 텍스트로 [카톡, 읽어줘]를 추출하고, 이를 통해 인스턴트 메시지 서비스에 해당하는 제 3 서비스 도메인을 추출할 수 있다.
도 5b를 참조하면, 질의어 확장부(230)는 추출된 제 3 서비스 도메인에 기초하여 '다니엘님'이라는 질의어를 확장시킴으로써 '다니엘'과 같이 확장 질의어를 생성하고, 후보 확장부(240)는 사용자 단말(110)에 설치된 인스턴트 메신저의 친구 리스트(510)를 통해 '다니엘'이라는 확장 질의어에 대한 '강다니엘'(511)라는 후보를 탐색하여 '강다니엘'(511)을 확장시킴으로써, '강다니엘'(511), '다니엘'로 확장 후보를 생성하고, 최종 후보 선택부(250)는 '다니엘'이라는 확장 질의어와 '강다니엘'(511), '다니엘' 각각의 유사도를 비교하여 최종 후보로 '강다니엘'(511)를 선택할 수 있다.
도 5c를 참조하면, 서비스 제공부(260)는 인스턴트 메시지 애플리케이션(520)을 통해 '강다니엘'(511)에게서 온 "내일 6시 강남역에서 보자"(521)라는 인스턴트 메시지를 사용자 단말(110)에 자체적으로 내장된 스피커를 통해 음성으로 출력할 수 있다. 이 때, 사용자 단말(110)이 음성 인식 스피커인 경우, 음성 인식 스피커를 통해 "내일 6시 강남역에서 보자"(530)가 출력될 수도 있다.
본 발명의 또 다른 실시예에 따르면, 사용자 단말(110)은 사용자 단말(110)에 구비된 카메라(미도시)를 통해 서비스 명령을 입력받을 수 있다. 예를 들어, 사용자 단말(110)은 서비스 명령을 포함하는 이미지를 획득하는 촬영부(미도시)를 더 포함할 수 있다.
예를 들어, 사용자 단말(110)은 사용자 단말(110)의 카메라를 통해 촬영된 이미지로서, 와이파이 리스트(Wi-Fi List), 상호명, 메뉴명 등에 대한 OCR 인식을 통해 촬영된 이미지에서 서비스 명령(텍스트)을 추출할 수 있다.
이때, 사용자 단말(110)은 변환된 텍스트로부터 질의어 및 서비스 도메인을 추출하고, 추출한 질의어를 서비스 도메인(예를 들어, 와이파이 접속 서비스, 지도 서비스, 주문 서비스 등과 관련된 서비스 도메인)에 기초하여 확장시킴으로써, 확장 질의어를 생성할 수 있다.
또한, 사용자 단말(110)은 확장 질의어에 기초하여 서비스 도메인과 관련된 후보를 탐색하고, 탐색된 후보를 확장시킴으로써, 적어도 하나의 확장 후보를 생성할 수 있다. 이 때, 사용자 단말(110)은 생성된 적어도 하나의 확장 후보 중 어느 하나를 최종 후보로 선택함으로써, 선택된 최종 후보와 관련된 서비스(예를 들어, 와이파이 접속 서비스, 지도 서비스, 주문 서비스 등)를 제공할 수 있다.
해당 실시예에 대하여 상세히 설명하지 않았지만, 상술한 음성 명령을 이용하는 실시예에서 설명된 내용들이 모두 적용된다.
도 6은 본 발명의 일 실시예에 따른 사용자 단말에서 음성 인식 서비스를 제공하는 방법의 순서도이다. 도 6에 도시된 사용자 단말(110)에서 음성 인식 서비스를 제공하는 방법은 도 1 내지 도 5c에 도시된 실시예에 따른 음성 인식 서비스 제공 시스템(1)에 의해 시계열적으로 처리되는 단계들을 포함한다. 따라서, 이하 생략된 내용이라고 하더라도 도 1 내지 도 5c에 도시된 실시예에 따른 사용자 단말(110)에서 음성 인식 서비스를 제공하는 방법에도 적용된다.
단계 S600에서 사용자 단말(110)은 음성 명령에 대한 텍스트로부터 질의어 및 서비스 도메인을 추출할 수 있다.
단계 S610에서 사용자 단말(110)은 추출된 서비스 도메인에 기초하여 질의어를 확장시킴으로써 적어도 하나의 확장 질의어를 생성할 수 있다.
단계 S620에서 사용자 단말(110)은 추출된 서비스 도메인에 대응하는 후보 탐색을 위한 적어도 하나의 데이터베이스를 결정할 수 있다.
단계 S630에서 사용자 단말(110)은 결정된 적어도 하나의 데이터베이스로부터 적어도 하나의 확장 질의어 각각에 대한 적어도 하나의 후보를 탐색할 수 있다.
단계 S640에서 사용자 단말(110)은 적어도 하나의 후보를 확장시킴으로써 적어도 하나의 확장 후보를 생성할 수 있다.
단계 S650에서 사용자 단말(110)은 적어도 하나의 확장 질의어 및 적어도 하나의 확장 후보 간의 유사도를 산출할 수 있다.
단계 S660에서 사용자 단말(110)은 산출된 유사도에 기초하여 최종 후보를 선택할 수 있다.
단계 S670에서 사용자 단말(110)은 선택된 최종 후보에 기초하여 음성 명령에 대한 서비스를 제공할 수 있다.
상술한 설명에서, 단계 S600 내지 S670은 본 발명의 구현예에 따라서, 추가적인 단계들로 더 분할되거나, 더 적은 단계들로 조합될 수 있다. 또한, 일부 단계는 필요에 따라 생략될 수도 있고, 단계 간의 순서가 전환될 수도 있다.
도 7은 본 발명의 일 실시예에 따른 음성 인식 서비스 제공 서버의 구성도이다. 본 발명에서 제안하는 음성 인식 서비스는 음성 인식 서비스 제공 서버(120)에 의해 제공될 수도 있다.
도 7을 참조하면, 음성 인식 서비스 제공 서버(120)는 음성 명령 수신부(710), 질의어 추출부(720), 질의어 확장부(730), 후보 확장부(740), 최종 후보 선택부(750) 및 서비스 제어 명령 전송부(760)를 포함할 수 있다.
음성 명령 수신부(710)는 사용자 단말(110)로부터 음성 명령을 수신하고, 수신한 음성 명령에 대한 음성 인식을 통해 음성 명령을 텍스트로 변환할 수 있다.
도 7의 음성 인식 서비스 제공 서버(120)에 포함된 질의어 추출부(720), 질의어 확장부(730), 후보 확장부(740) 및 최종 후보 선택부(750)는 도 2를 통해 설명한 사용자 단말(110)의 질의어 추출부(220), 질의어 확장부(230), 후보 확장부(240), 최종 후보 선택부(250)와 동일한 기능을 수행하므로 이하 설명을 생략하도록 한다.
서비스 제어 명령 전송부(760)는 선택된 최종 후보에 기초하여 음성 명령에 대한 서비스가 실행되도록 하는 서비스 제어 명령을 사용자 단말(110)로 전송할 수 있다.
도 8은 본 발명의 일 실시예에 따른 음성 인식 서비스 제공 서버에서 음성 인식 서비스를 제공하는 방법의 순서도이다. 도 8에 도시된 음성 인식 서비스 제공 서버(120)에서 음성 인식 서비스를 제공하는 방법은 도 1 내지 도 7에 도시된 실시예에 따른 음성 인식 서비스 제공 시스템(1)에 의해 시계열적으로 처리되는 단계들을 포함한다. 따라서, 이하 생략된 내용이라고 하더라도 도 1 내지 도 7에 도시된 실시예에 따른 음성 인식 제공 서버(120)에서 음성 인식 서비스를 제공하는 방법에도 적용된다.
단계 S800에서 음성 인식 서비스 제공 서버(120)는 사용자 단말(110)로부터 음성 명령을 수신할 수 있다.
단계 S810에서 음성 인식 서비스 제공 서버(120)는 수신한 음성 명령에 대한 음성 인식을 통해 음성 명령을 텍스트로 변환할 수 있다.
단계 S820에서 음성 인식 서비스 제공 서버(120)는 변환된 텍스트로부터 질의어 및 서비스 도메인을 추출할 수 있다.
단계 S830에서 음성 인식 서비스 제공 서버(120)는 추출된 서비스 도메인에 기초하여 질의어를 확장시킴으로써 적어도 하나의 확장 질의어를 생성할 수 있다.
단계 S840에서 음성 인식 서비스 제공 서버(120)는 추출된 서비스 도메인에 대응하는 후보 탐색을 위한 적어도 하나의 데이터베이스를 결정할 수 있다.
단계 S850에서 음성 인식 서비스 제공 서버(120)는 결정된 적어도 하나의 데이터베이스로부터 적어도 하나의 확장 질의어 각각에 대한 적어도 하나의 후보를 탐색할 수 있다.
단계 S860에서 음성 인식 서비스 제공 서버(120)는 적어도 하나의 후보를 확장시킴으로써 적어도 하나의 확장 후보를 생성할 수 있다.
단계 S870에서 음성 인식 서비스 제공 서버(120)는 적어도 하나의 확장 질의어 및 적어도 하나의 확장 후보 간의 유사도를 산출할 수 있다.
단계 S880에서 음성 인식 서비스 제공 서버(120)는 산출된 유사도에 기초하여 최종 후보를 선택할 수 있다.
단계 S890에서 음성 인식 서비스 제공 서버(120)는 선택된 최종 후보에 기초하여 음성 명령에 대한 서비스가 실행되도록 하는 서비스 제어 명령을 사용자 단말(110)로 전송할 수 있다.
상술한 설명에서, 단계 S800 내지 S890은 본 발명의 구현예에 따라서, 추가적인 단계들로 더 분할되거나, 더 적은 단계들로 조합될 수 있다. 또한, 일부 단계는 필요에 따라 생략될 수도 있고, 단계 간의 순서가 전환될 수도 있다.
본 발명의 실시예는 컴퓨터에 의해 실행되는 프로그램 모듈과 같은 컴퓨터에 의해 실행가능한 명령어를 포함하는 기록 매체의 형태로도 구현될 수 있다. 컴퓨터 판독 가능 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한 컴퓨터 판독가능 매체는 컴퓨터 저장 매체를 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다. 전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.
본 발명의 방법 및 시스템은 특정 실시예와 관련하여 설명되었지만, 그것들의 구성 요소 또는 동작의 일부 또는 전부는 범용 하드웨어 아키텍쳐를 갖는 컴퓨터 시스템을 사용하여 구현될 수 있다.
전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.
본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
110: 사용자 단말
120: 음성 인식 제공 서버
210: 음성 인식부
220: 질의어 추출부
230: 질의어 확장부
240: 후보 확장부
250: 최종 후보 선택부
251: 형식 변환부
252: 유사 후보 선택부
260: 서비스 제공부
270: 데이터베이스
710: 음성 명령 수신부
720: 질의어 추출부
730: 질의어 확장부
740: 후보 확장부
750: 최종 후보 선택부
751: 형식 변환부
752: 유사 후보 선택부
760: 서비스 제어 명령 전송부
770: 데이터베이스
120: 음성 인식 제공 서버
210: 음성 인식부
220: 질의어 추출부
230: 질의어 확장부
240: 후보 확장부
250: 최종 후보 선택부
251: 형식 변환부
252: 유사 후보 선택부
260: 서비스 제공부
270: 데이터베이스
710: 음성 명령 수신부
720: 질의어 추출부
730: 질의어 확장부
740: 후보 확장부
750: 최종 후보 선택부
751: 형식 변환부
752: 유사 후보 선택부
760: 서비스 제어 명령 전송부
770: 데이터베이스
Claims (19)
- 음성 인식 서비스를 제공하는 사용자 단말에 있어서,
음성 명령에 대한 텍스트로부터 질의어 및 서비스 도메인을 추출하는 질의어 추출부;
상기 추출된 서비스 도메인에 기초하여 상기 질의어를 확장시킴으로써 적어도 하나의 확장 질의어를 생성하는 질의어 확장부;
상기 추출된 서비스 도메인에 대응하는 후보 탐색을 위한 적어도 하나의 데이터베이스를 결정하고, 상기 결정된 적어도 하나의 데이터베이스로부터 상기 적어도 하나의 확장 질의어 각각에 대한 적어도 하나의 후보를 탐색하고, 상기 적어도 하나의 후보를 확장시킴으로써 적어도 하나의 확장 후보를 생성하는 후보 확장부;
상기 적어도 하나의 확장 질의어 및 상기 적어도 하나의 확장 후보 간의 유사도를 산출하고, 상기 산출된 유사도에 기초하여 최종 후보를 선택하는 최종 후보 선택부; 및
상기 선택된 최종 후보에 기초하여 상기 음성 명령에 대한 서비스를 제공하는 서비스 제공부를 포함하는, 사용자 단말.
- 제 1 항에 있어서,
상기 음성 명령을 수신하고, 상기 수신한 음성 명령에 대한 음성 인식을 통해 상기 음성 명령을 상기 텍스트로 변환하는 음성 인식부
를 더 포함하는 것인, 사용자 단말.
- 제 1 항에 있어서,
상기 서비스 도메인은 통화 서비스에 해당하는 제 1 서비스 도메인, 문자 메시지 서비스에 해당하는 제 2 서비스 도메인, 인스턴트 메시지 서비스에 해당하는 제 3 서비스 도메인 및 컨텐츠 검색 서비스에 해당하는 제 4 서비스 도메인 중 적어도 하나를 포함하는 것인, 사용자 단말.
- 제 3 항에 있어서,
상기 질의어 추출부는 상기 텍스트로부터 서비스 도메인에 관한 서비스 도메인 관련 텍스트를 추출하고, 상기 추출한 서비스 도메인 관련 텍스트에 기초하여 상기 제 1 서비스 도메인, 상기 제 2 서비스 도메인, 상기 제 3 서비스 도메인 및 상기 제 4 서비스 도메인 중 어느 하나를 추출하는 것인, 사용자 단말.
- 제 3 항에 있어서,
상기 질의어 확장부는 상기 질의어를 상기 추출된 도메인의 종류마다 다른 방식으로 확장하는 것인, 사용자 단말.
- 제 1 항에 있어서,
상기 최종 후보 선택부는 상기 적어도 하나의 확장 질의어 및 상기 적어도 하나의 확장 후보 간의 비교를 위해 상기 적어도 하나의 확장 질의어 및 상기 적어도 하나의 확장 후보를 적어도 하나의 변환 형식으로 변환하는 형식 변환부를 포함하는 것인, 사용자 단말.
- 제 6 항에 있어서,
상기 적어도 하나의 변환 형식은 키스트로크(keystroke), 발음 기호, 문자열 중 어느 하나를 포함하는 것인, 사용자 단말.
- 제 1 항에 있어서,
상기 최종 후보 선택부는 상기 적어도 하나의 확장 질의어 각각 및 상기 적어도 하나의 확장 질의어 각각에 대응하는 상기 적어도 하나의 확장 후보 각각의 유사도를 산출하고, 상기 적어도 하나의 확장 후보 각각의 유사도에 기초하여 소정 개수의 유사 후보를 선택하는 유사 후보 선택부를 포함하는 것인, 사용자 단말.
- 제 8 항에 있어서,
상기 최종 후보 선택부는 상기 추출된 도메인의 종류마다 다른 기준으로 상기 추출된 소정 개수의 유사 후보 중 상기 최종 후보를 선택하는 것인, 사용자 단말.
- 제 1 항에 있어서,
서비스 명령을 포함하는 이미지를 획득하는 촬영부를 더 포함하되,
상기 질의어 추출부는 상기 이미지에 포함된 서비스 명령으로부터 상기 질의어 및 상기 서비스 도메인을 추출하는 것인, 사용자 단말.
- 음성 인식 서비스를 제공하는 방법에 있어서,
음성 명령에 대한 텍스트로부터 질의어 및 서비스 도메인을 추출하는 단계;
상기 추출된 서비스 도메인에 기초하여 상기 질의어를 확장시킴으로써 적어도 하나의 확장 질의어를 생성하는 단계;
상기 추출된 서비스 도메인에 대응하는 후보 탐색을 위한 적어도 하나의 데이터베이스를 결정하는 단계;
상기 결정된 적어도 하나의 데이터베이스로부터 상기 적어도 하나의 확장 질의어 각각에 대한 적어도 하나의 후보를 탐색하는 단계;
상기 적어도 하나의 후보를 확장시킴으로써 적어도 하나의 확장 후보를 생성하는 단계;
상기 적어도 하나의 확장 질의어 및 상기 적어도 하나의 확장 후보 간의 유사도를 산출하는 단계;
상기 산출된 유사도에 기초하여 최종 후보를 선택하는 단계; 및
상기 선택된 최종 후보에 기초하여 상기 음성 명령에 대한 서비스를 제공하는 단계를 포함하는, 음성 인식 서비스 제공 방법.
- 음성 인식 서비스를 제공하는 서버에 있어서,
사용자 단말로부터 음성 명령을 수신하고, 상기 수신한 음성 명령에 대한 음성 인식을 통해 상기 음성 명령을 텍스트로 변환하는 음성 명령 수신부;
상기 변환된 텍스트로부터 질의어 및 서비스 도메인을 추출하는 질의어 추출부;
상기 추출된 서비스 도메인에 기초하여 상기 질의어를 확장시킴으로써 적어도 하나의 확장 질의어를 생성하는 질의어 확장부;
상기 추출된 서비스 도메인에 대응하는 후보 탐색을 위한 적어도 하나의 데이터베이스를 결정하고, 상기 결정된 적어도 하나의 데이터베이스로부터 상기 적어도 하나의 확장 질의어 각각에 대한 적어도 하나의 후보를 탐색하고, 상기 적어도 하나의 후보를 확장시킴으로써 적어도 하나의 확장 후보를 생성하는 후보 확장부;
상기 적어도 하나의 확장 질의어 및 상기 적어도 하나의 확장 후보 간의 유사도를 산출하고, 상기 산출된 유사도에 기초하여 최종 후보를 선택하는 최종 후보 선택부; 및
상기 선택된 최종 후보에 기초하여 상기 음성 명령에 대한 서비스가 실행되도록 하는 서비스 제어 명령을 상기 사용자 단말로 전송하는 서비스 제어 명령 전송부를 포함하는, 서버.
- 제 12 항에 있어서,
상기 서비스 도메인은 통화 서비스에 해당하는 제 1 서비스 도메인, 문자 메시지 서비스에 해당하는 제 2 서비스 도메인, 인스턴트 메시지 서비스에 해당하는 제 3 서비스 도메인 및 컨텐츠 검색 서비스에 해당하는 제 4 서비스 도메인 중 적어도 하나를 포함하는 것인, 서버.
- 제 13 항에 있어서,
상기 질의어 추출부는 상기 텍스트로부터 서비스 도메인에 관한 서비스 도메인 관련 텍스트를 추출하고, 상기 추출한 서비스 도메인 관련 텍스트에 기초하여 상기 제 1 서비스 도메인, 상기 제 2 서비스 도메인, 상기 제 3 서비스 도메인 및 상기 제 4 서비스 도메인 중 어느 하나를 추출하는 것인, 서버.
- 제 14 항에 있어서,
상기 질의어 확장부는 상기 질의어를 상기 추출된 도메인의 종류마다 다른 방식으로 확장하는 것인, 서버.
- 제 12 항에 있어서,
상기 최종 후보 선택부는 상기 적어도 하나의 확장 질의어 및 상기 적어도 하나의 확장 후보 간의 비교를 위해 상기 적어도 하나의 확장 질의어 및 상기 적어도 하나의 확장 후보를 적어도 하나의 변환 형식으로 변환하는 형식 변환부를 포함하는 것인, 서버.
- 제 16 항에 있어서,
상기 적어도 하나의 변환 형식은 키스트로크(keystroke), 발음 기호, 문자열 중 어느 하나를 포함하는 것인, 서버.
- 제 14 항에 있어서,
상기 최종 후보 선택부는 상기 적어도 하나의 확장 질의어 각각 및 상기 적어도 하나의 확장 질의어 각각에 대응하는 상기 적어도 하나의 확장 후보 각각의 유사도를 산출하고, 상기 적어도 하나의 확장 후보 각각의 유사도에 기초하여 소정 개수의 유사 후보를 선택하는 유사 후보 선택부를 포함하는 것인, 서버.
- 제 18 항에 있어서,
상기 최종 후보 선택부는 상기 추출된 도메인의 종류마다 다른 기준으로 상기 추출된 소정 개수의 유사 후보 중 상기 최종 후보를 선택하는 것인, 서버.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190129815A KR102335048B1 (ko) | 2019-10-18 | 2019-10-18 | 음성 인식 서비스를 제공하는 사용자 단말, 방법 및 서버 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020190129815A KR102335048B1 (ko) | 2019-10-18 | 2019-10-18 | 음성 인식 서비스를 제공하는 사용자 단말, 방법 및 서버 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20210046275A true KR20210046275A (ko) | 2021-04-28 |
KR102335048B1 KR102335048B1 (ko) | 2021-12-03 |
Family
ID=75720934
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020190129815A KR102335048B1 (ko) | 2019-10-18 | 2019-10-18 | 음성 인식 서비스를 제공하는 사용자 단말, 방법 및 서버 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102335048B1 (ko) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102486120B1 (ko) * | 2022-10-13 | 2023-01-09 | (주)액션파워 | 음성 신호와 연관된 컨텐츠를 결정하는 방법 |
WO2023106649A1 (ko) * | 2021-12-08 | 2023-06-15 | 삼성전자주식회사 | 추천 명령어를 이용하여 음성 인식을 수행하는 전자 장치 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20040023498A (ko) * | 2002-09-11 | 2004-03-18 | 삼성전자주식회사 | 영상화면 내의 글자 이미지를 인식하는 장치 및 방법 |
KR20080024911A (ko) * | 2006-09-15 | 2008-03-19 | 학교법인 포항공과대학교 | 음성 인식 시스템에서의 인식 오류 수정 방법 |
KR20160032564A (ko) * | 2014-09-16 | 2016-03-24 | 삼성전자주식회사 | 영상표시장치, 영상표시장치의 구동방법 및 컴퓨터 판독가능 기록매체 |
KR20160071111A (ko) | 2014-12-11 | 2016-06-21 | 삼성전자주식회사 | 전자 장치에서의 개인 비서 서비스 제공 |
-
2019
- 2019-10-18 KR KR1020190129815A patent/KR102335048B1/ko active IP Right Grant
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20040023498A (ko) * | 2002-09-11 | 2004-03-18 | 삼성전자주식회사 | 영상화면 내의 글자 이미지를 인식하는 장치 및 방법 |
KR20080024911A (ko) * | 2006-09-15 | 2008-03-19 | 학교법인 포항공과대학교 | 음성 인식 시스템에서의 인식 오류 수정 방법 |
KR20160032564A (ko) * | 2014-09-16 | 2016-03-24 | 삼성전자주식회사 | 영상표시장치, 영상표시장치의 구동방법 및 컴퓨터 판독가능 기록매체 |
KR20160071111A (ko) | 2014-12-11 | 2016-06-21 | 삼성전자주식회사 | 전자 장치에서의 개인 비서 서비스 제공 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023106649A1 (ko) * | 2021-12-08 | 2023-06-15 | 삼성전자주식회사 | 추천 명령어를 이용하여 음성 인식을 수행하는 전자 장치 |
KR102486120B1 (ko) * | 2022-10-13 | 2023-01-09 | (주)액션파워 | 음성 신호와 연관된 컨텐츠를 결정하는 방법 |
JP2024058553A (ja) * | 2022-10-13 | 2024-04-25 | アクションパワー コーポレイション | 音声信号に関連するコンテンツを決定する方法、コンピューター可読保存媒体に保存されたコンピュータープログラム及びコンピューティング装置 |
US11971920B1 (en) | 2022-10-13 | 2024-04-30 | Actionpower Corp. | Method for determining content associated with voice signal |
Also Published As
Publication number | Publication date |
---|---|
KR102335048B1 (ko) | 2021-12-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20230053350A1 (en) | Encapsulating and synchronizing state interactions between devices | |
KR102594708B1 (ko) | 자연어 처리 시스템, 자연어 처리 장치, 자연어 처리 방법 및 컴퓨터 판독가능 기록매체 | |
US11049493B2 (en) | Spoken dialog device, spoken dialog method, and recording medium | |
US10719507B2 (en) | System and method for natural language processing | |
CN114303132B (zh) | 在虚拟个人助手中使用唤醒词进行上下文关联和个性化的方法和*** | |
KR102386863B1 (ko) | 사용자 기반 언어 모델 생성 장치, 방법 및 음성 인식 장치 | |
US8868428B2 (en) | Integration of embedded and network speech recognizers | |
US9190055B1 (en) | Named entity recognition with personalized models | |
US8762156B2 (en) | Speech recognition repair using contextual information | |
JP4155854B2 (ja) | 対話制御システム及び方法 | |
JP2017107078A (ja) | 音声対話方法、音声対話装置及び音声対話プログラム | |
JP2020505643A (ja) | 音声認識方法、電子機器、及びコンピュータ記憶媒体 | |
JP2018513431A (ja) | クラウドソーシングに基づいてデジタルパーソナルアシスタントのための言語理解分類子モデルを更新すること | |
KR20140112360A (ko) | 음성 인식의 단어 통합 시스템 및 단어군 추가 방법 | |
JPWO2008016102A1 (ja) | 類似度計算装置及び情報検索装置 | |
KR20090130028A (ko) | 분산 음성 검색을 위한 방법 및 장치 | |
KR101891498B1 (ko) | 대화형 ai 에이전트 시스템에서 멀티 도메인 인텐트의 혼재성을 해소하는 멀티 도메인 서비스를 제공하는 방법, 컴퓨터 장치 및 컴퓨터 판독가능 기록 매체 | |
US11514907B2 (en) | Activation of remote devices in a networked system | |
KR102335048B1 (ko) | 음성 인식 서비스를 제공하는 사용자 단말, 방법 및 서버 | |
US11984115B2 (en) | Dialog system capable of semantic-understanding mapping between user intents and machine services | |
US20210034662A1 (en) | Systems and methods for managing voice queries using pronunciation information | |
WO2019155716A1 (ja) | 情報処理装置、情報処理システム、および情報処理方法、並びにプログラム | |
CN107180027B (zh) | 语音控制业务分类方法及装置 | |
KR101482148B1 (ko) | 개인화된 발음열을 이용한 그룹 매핑 데이터 생성 서버, 음성 인식 서버 및 방법 | |
KR20210115645A (ko) | 복수의 언어에 대한 음성 인식을 수행하는 음성 처리 서버, 방법 및 컴퓨터 프로그램 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |