KR101770358B1 - 내장형 및 네트워크 음성 인식기들의 통합 - Google Patents

내장형 및 네트워크 음성 인식기들의 통합 Download PDF

Info

Publication number
KR101770358B1
KR101770358B1 KR1020127022282A KR20127022282A KR101770358B1 KR 101770358 B1 KR101770358 B1 KR 101770358B1 KR 1020127022282 A KR1020127022282 A KR 1020127022282A KR 20127022282 A KR20127022282 A KR 20127022282A KR 101770358 B1 KR101770358 B1 KR 101770358B1
Authority
KR
South Korea
Prior art keywords
voice command
query
query result
machine
result
Prior art date
Application number
KR1020127022282A
Other languages
English (en)
Other versions
KR20130018658A (ko
Inventor
알렉산더 그루엔스테인
윌리엄 제이. 비르네
Original Assignee
구글 인코포레이티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 구글 인코포레이티드 filed Critical 구글 인코포레이티드
Publication of KR20130018658A publication Critical patent/KR20130018658A/ko
Application granted granted Critical
Publication of KR101770358B1 publication Critical patent/KR101770358B1/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/28Constructional details of speech recognition systems
    • 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/32Multiple recognisers used in sequence or in parallel; Score combination systems therefor, e.g. voting systems
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/02Feature extraction for speech recognition; Selection of recognition unit
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/28Constructional details of speech recognition systems
    • G10L15/30Distributed recognition, e.g. in client-server systems, for mobile phones or network applications

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)
  • Computer Vision & Pattern Recognition (AREA)
  • Telephonic Communication Services (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

방법, 컴퓨터 프로그램 제품, 및 시스템은 클라이언트 디바이스상에서 보이스 커맨드를 실행하는 위해 제공된다. 방법은, 상기 클라이언트 디바이스 상에 위치하는 제1 음성 인식기를 이용하여, 보이스 커맨드의 오디오 스트림을 제1 기계-판독가능한 보이스 커맨드로 번역하는 단계 및 클라이언트 데이터베이스에 쿼리하기 위해, 상기 제1 기계-판독가능한 보이스 커맨드를 이용하여 제1 쿼리 결과를 생성하는 단계를 포함한다. 또한 오디오 스트림은 제2 음성 인식기를 이용하여 제2 기계-판독가능한 보이스 커맨드로 번역하는 원격 서버 디바이스로 전송될 수 있다. 나아가, 상기 방법은 상기 원격 서버 디바이스로부터 제2 쿼리 결과를 수신하는 단계로서, 상기 제2 쿼리 결과는 원격 서버 데이터베이스에 쿼리하기 위해 상기 제2 기계-판독가능한 보이스 커맨드를 이용하여 상기 원격 서버 디바이스에 의해 생성되는 상기 수신하는 단계; 및 상기 클라이언트 디바이스상에 상기 제1 쿼리 결과 및 상기 제2 쿼리 결과를 디스플레이하는 단계를 포함할 수 있다.

Description

내장형 및 네트워크 음성 인식기들의 통합{INTEGRATION OF EMBEDDED AND NETWORK SPEECH RECOGNIZERS}
본 명세서는 일반적으로 음성 인식기 분야에 관한 것이다.
모바일 디바이스들의 음성 인식은 사용자들로 하여금 키패드, 버튼 및 다이얼과 같은 입력 컨트롤(input control)을 최소한으로 사용하여 모바일 디바이스와 통신하고 커맨드(command)들을 전달하도록 한다. 일부 음성 인식 태스크는 음성 신호들의 대규모 분석과 단어 및 언어 통계학적 모델들의 검색을 요구하여 모바일 디바이스에는 복잡한 프로세스일 수 있다. 이는 모바일 디바이스들이 통상적으로 제한된 연산용 메모리 및 배터리 자원들을 갖기 때문이다. 이와 같이, 더 복잡한 음성 인식 태스크들은 종종 예컨대, 네트워크 서버들에 있는 음성 인식 시스템들과 같이, 모바일 디바이스의 외부에 배치되는 음성 인식 시스템으로 분담(offload)된다.
더 복잡한 음성 인식 태스크들이 모바일 디바이스가 아닌, 네트워크 서버 상에서 수행되기 때문에, 보이스 커맨드(voice command)의 결과들은 네트워크 서버 내에 저장된 데이터로 제한될 수 있다. 이러한 음성 인식 태스크들에 있어서, 모바일 디바이스 사용자는 상기 모바일 디바이스에 저장된 데이터에 기초하여 보이스 커맨드에 상응할 수 있는 쿼리 결과들을 보는 데 이점이 없다. 게다가, 네트워크 서버에 보이스 커맨드를 전송하고 네트워크 서버에서 음성 인식 동작을 수행해서, 그 네트워크 서버에서 모바일 디바이스로 쿼리 결과를 전송하는 데 시간 지연이 상당할 수 있다. 음성 인식 태스크와 같이 모바일 디바이스상의 애플리케이션 실행에 상당한 시간 지연은 사용자에게 나쁜 경험으로 이어질 수 있다.
모바일 분야의 음성 인식 시스템들의 상술한 한계들을 극복하기 위하여, 모바일 디바이스와 같은 클라이언트 디바이스상에서 음성 인식 태스크들을 수행하는 방법들 및 시스템이 요구된다.
실시예들은 클라이언트 디바이스 상에서 보이스 커맨드(Voice Command)를 실행하는 방법을 포함한다. 상기 방법은 상기 클라이언트 디바이스 상에 위치하는 제1 음성 인식기를 이용하여, 보이스 커맨드의 오디오 스트림을 제1 기계-판독가능한 보이스 커맨드로 번역하는 단계 및 클라이언트 데이터베이스에 쿼리하기 위해, 상기 제1 기계-판독가능한 보이스 커맨드를 이용하여 제1 쿼리 결과를 생성하는 단계를 포함한다. 또한 오디오 스트림은 제2 음성 인식기를 이용하여 상기 오디오 스트림을 제2 기계-판독가능한 보이스 커맨드로 번역하는 원격 서버 디바이스로 전송될 수 있다. 나아가, 상기 방법은 원격 서버 데이터베이스에 쿼리하기 위해 상기 제2 기계-판독가능한 보이스 커맨드를 이용하여 상기 원격 서버 디바이스에 의해 생성된 제2 쿼리 결과를 상기 원격 서버 디바이스로부터 수신하는 단계; 및 상기 클라이언트 디바이스 상에 상기 제1 쿼리 결과 및 상기 제2 쿼리 결과를 디스플레이하는 단계를 포함한다. 상기 오디오 스트림을 상기 원격 서버 디바이스에 전송하는 것과 상기 제2 쿼리 결과를 상기 원격 서버 디바이스로부터 상기 클라이언트 디바이스에 전송하는 것은, 상기 클라이언트 디바이스에 의한 제1 쿼리 결과의 생성과 동시에, 실질적으로 동일 시간에, 또는 그와 오버랩되는 시간 기간 동안 일어날 수 있다.
또한 실시예들은 프로세서가 클라이언트 디바이스상에서 보이스 커맨드를 실행하도록 기록된 컴퓨터 프로그램 로직을 구비하는 컴퓨터-이용가능한 매체를 포함하는 컴퓨터 프로그램 제품을 포함한다. 상기 컴퓨터 프로그램 로직은, 프로세서로 하여금 상기 클라이언트 디바이스에 위치하는 제1 음성 인식기를 이용하여 보이스 커맨드의 오디오 스트림을 제1 기계-판독가능한 보이스 커맨드로 번역하도록 해주는 제1 컴퓨터 판독가능한 프로그램 코드; 프로세서로 하여금 클라이언트 데이터베이스에 쿼리하기 위해 상기 제1 기계-판독가능한 보이스 커맨드를 이용하여 제1 쿼리 결과를 생성하도록 해주는 제2 컴퓨터 판독가능한 프로그램 코드; 프로세서로 하여금 제2 음성 인식기를 이용하여, 상기 오디오 스트림을 제2 기계-판독가능한 보이스 커맨드로 번역하는 원격 서버 디바이스로 상기 오디오 스트림을 전송하도록 해주는 제3 컴퓨터 판독가능한 프로그램 코드; 프로세서로 하여금 원격 서버 데이터베이스에 쿼리하기 위해 상기 제2 기계-판독가능한 보이스 커맨드를 이용하여 상기 원격 서버 디바이스에 의해 생성된 제2 쿼리 결과를 상기 원격 서버 디바이스로부터 수신하도록 해주는 제4 컴퓨터 판독가능한 프로그램 코드; 및 프로세서로 하여금 상기 클라이언트 디바이스상에 상기 제1 쿼리 결과 및 상기 제2 쿼리 결과를 디스플레이하도록 해주는 제5 컴퓨터 판독가능한 프로그램 코드를 포함한다.
또한 실시예들은 클라이언트 디바이스상에서 보이스 커맨드를 실행하기 위한 시스템을 포함하다. 상기 시스템은 제1 음성 인식기 디바이스, 클라이언트 쿼리 관리자 및 디스플레이 디바이스를 포함한다. 제1 음성 인식기 디바이스는 보이스 커맨드의 오디오 스트림을 제1 기계-판독가능한 보이스 커맨드로 번역하도록 구성된다. 클라이언트 쿼리 관리자는, 클라이언트 데이터베이스에 쿼리하기 위해 상기 제1 기계-판독가능한 보이스 커맨드를 이용하여 제1 쿼리 결과를 생성하고, 제2 음성 인식기 디바이스를 이용하여 상기 오디오 스트림을 제2 기계-판독가능한 보이스 커맨드로 번역하는 원격 서버 디바이스로 상기 오디오 스트림을 전송하고, 원격 서버 데이터베이스에 쿼리하기 위해 상기 제2 기계-판독가능한 보이스 커맨드를 이용하여 상기 원격 서버 디바이스에 의해 생성된 제2 쿼리 결과를 상기 원격 서버 디바이스로부터 수신하도록 구성된다. 디스플레이 디바이스는 상기 제1 쿼리 결과 및 상기 제2 쿼리 결과를 상기 클라이언트 디바이스상에 디스플레이하도록 구성된다.
다양한 실시예들의 구조 및 동작 뿐만 아니라, 여기서 설명되는 실시예들의 다른 특징들 및 효과들은 첨부한 도면을 참조하여 이하 더욱 상세히 설명된다. 이하 설명되는 실시예들이 여기 설명된 특정 실시예들에 한정되지 않음을 주의한다. 그러한 실시예들은 오직 설명을 위한 목적으로 여기 나타난다. 추가적인 실시예들은 여기 포함된 기재들에 기초하여 관련 기술분야의 당업자들에게 명백해질 것이다.
여기에 병합되고 명세서의 일부를 형성하는 첨부 도면들은 실시예들을 설명할 뿐 아니라 설명(description)과 더불어, 그 실시예들의 원리를 설명하고 관련 기술분야의 당업자로 하여금 실시예들을 만들어 이용할 수 있도록 하는 역할도 제공한다.
도 1은 실시예들이 구현될 수 있는 예시적인 통신 시스템을 도시한 것이다.
도 2는 클라이언트 디바이스의 실시예를 도시한 것이다.
도 3은 서버 디바이스의 실시예를 도시한 것이다.
도 4는 클라이언트 디바이스상에서 보이스 커맨드를 수행하기 위한 방법의 실시예를 도시한 것이다.
도 5(a)-5(c)는 실시예에 따른 모바일 폰상의 예시적인 사용자 인터페이스를 도시한 것이다.
도 6은 클라이언트 디바이스상에서 보이스 커맨드를 수행하기 위한 방법의 일 실시예를 도시한 것이다.
도 7(a) 및 8(b)는 실시예에 따라 모바일 폰상의 다른 예시적인 사용자 인터페이스를 도시한 것이다.
도 8은 클라이언트 디바이스상에서 보이스 커맨드를 수행하기 위한 또 다른 방법의 실시예를 도시한 것이다.
도 9는 클라이언트 디바이스상에서 보이스 커맨드를 수행하기 위한 또 다른 방버의 실시예를 도시한 것이다.
도 10(a)-10(e)는 실시예에 따른 모바일 폰 상의 다른 예시적인 사용자 인터페이스를 도시한 것이다.
도 11은 실시예들이 구현될 수 있는 예시적인 컴퓨터 시스템을 도시한 것이다.
후술하는 상세한 설명은 예시적인 실시예들을 도시하는 첨부 도면들을 참조한다. 다른 실시예들도 가능하고, 본 발명의 사상 및 범위 내에서 실시예들에 대한 변형이 만들어질 수 있다. 따라서, 상세한 설명은 이하 설명된 실시예들에 한정되지 않는다.
이하 설명하는 실시예들이 그 도면들에 도시된 소프트웨어, 하드웨어, 펌웨어 및/또는 엔티티들의 다른 다수의 실시예들로 구현될 수 있다는 점은 관련 기술분야의 당업자에게 명백해질 것이다. 실시예들을 구현하기 위해 하드웨어의 특정 컨트롤을 가진 일부 실제 소프트웨어 코드는 본 명세서에 한정되지 않는다. 따라서, 실시예들의 동작 행태는 여기서 나타난 상세한 설명의 주어진 레벨에서 실시예들의 변형 및 수정이 가능하다는 것을 이해하도록 설명될 것이다.
도 1은 실시예들이 구현될 수 있는 예시적인 통신 시스템(100)을 도시한 것이다. 통신 시스템(100)은 클라이언트 디바이스(110)를 포함하는데, 이는 네트워크(120)를 서버 디바이스(130)에 통신 가능하도록 연결된다. 클라이언트 디바이스(110)는, 예를 들어, 모바일 폰, 개인 디지털 보조장치(PDA), 랩탑 또는 모바일 디바이스들의 다른 유사한 형태들일 수 있고, 이에 한정되지 않는다. 서버 디바이스(130)는 예를 들어, 텔레커뮤니케이션 서버, 웹 서버 또는 데이터베이스 서버들의 다른 유사한 형태들일 수 있고 이에 한정되지 않는다. 일 실시예에서, 서버 디바이스(130)는 예를 들어, 한정되지 않고, 집약적 컴퓨팅 환경(clustered computing environment) 또는 서버 팜(server farm)에 병합된 하나 이상의 컴퓨팅 디바이스들과 같은 다중 프로세서들 및 다중 공유 또는 분리 메모리 컴포넌트들을 가질 수 있다. 집약적 컴퓨팅 환경 또는 서버 팜에 의해 수행된 컴퓨팅 프로세스는 동일 또는 상이한 위치들에 배치된 다중 프로세서들에 걸쳐 수행될 수 있다. 일 실시예에서, 서버 디바이스(130)는 단일 컴퓨팅 디바이스상에서 수행될 수 있다. 컴퓨팅 디바이스들의 예시는 중앙 처리 장치(central processing unit), 특수 용도의 통합 회로(application-specific integrated circuit), 또는 적어도 하나의 프로세서 및 메모리를 구비한 다른 형태의 컴퓨팅 디바이스를 포함하지만, 이에 한정되는 것은 아니다. 또한 네트워크(120)는 예를 들어, 클라이언트 디바이스(110)를 서버 디바이스(130)에 통신을 위해 연결시키는 유선(예컨대, 이더넷) 또는 무선(예컨대, Wi-Fi 및 3G) 네트워크일 수 있고, 이에 한정되는 것은 아니다.
도 2는 클라이언트 디바이스(110)의 실시예를 도시한 것이다. 클라이언트 디바이스(110)는 음성 인식기(210), 클라이언트 쿼리 관리자(220), 마이크로폰(230), 클라이언트 데이터베이스(240), 및 디스플레이 디바이스(250)를 포함한다. 일 실시예에 있어서, 마이크로폰(230)은 클라이언트 쿼리 관리자(220)에 연결된 음성 인식기(210)에 연결된다. 또한 클라이언트 관리자(220)는 일 실시예에 따라 클라이언트 데이터베이스(240) 및 디스플레이(250)에 연결된다.
일 실시예에서, 음성 인식기(210) 및 클라이언트 쿼리 관리자(220)는 소프트웨어, 펌웨어, 하드웨어 또는 이들의 조합으로 구현될 수 있다. 음성 인식기(210) 및 클라이언트 쿼리 관리자(220) 또는 그들 중 일부의 실시예들은 또한 여기서 설명하는 기능들을 수행할 능력이 있는 하나 이상의 컴퓨팅 디바이스들상에서 실행되는 컴퓨터-판독가능한 코드로서 구현될 수 있다. 컴퓨팅 디바이스들의 예는 중앙 처리 장치, 특수 용도의 통합 회로, 또는 적어도 하나의 프로세서 및 메모리를 구비한 다른 형태의 컴퓨팅 디바이스를 포함하고, 이에 한정되는 것은 아니다.
일 실시예로서, 마이크로폰(230)은 보이스 커맨드에 상응하는 오디오 스트림을 수신하고, 음성 인식기(210)에 보이스 커맨드를 제공하도록 구성된다. 보이스 커맨드는 예를 들어, 일 실시에 따른 모바일 폰 사용자와 같은 오디오 소스로부터 생성될 수 있고, 이에 한정되는 것은 아니다. 결국, 음성 인식기(210)는 일 실시예에 따라, 오디오 스트림을 기계-판독가능한 보이스 커맨드로 번역하도록 구성된다. 오디오 스트림을 기계-판독가능한 보이스 커맨드로 번역하는 방법들 및 기술들은 관련 기술분야의 당업자에게 잘 알려져 있다. 이러한 방법 및 기술들의 예는 뉘앙스 커뮤니케이션즈(Nuance Communications, Inc.)에 의한 드래곤 자연적 스피킹 소프트웨어(Dragon Naturally Speaking Software) 및 맥스피치 소프트웨어(MacSpeech Software), 둘 다와 같은 상업적 음성 인식 소프트웨어에서 찾아볼 수 있다.
일 실시예에서, 기계-판독가능한 보이스 커맨드에 기초하여, 클라이언트 쿼리 관리자(220)는 쿼리 결과를 생성하기 위해 클라이언트 데이터베이스(240)에 쿼리한다. 일 구현에 있어서, 클라이언트 데이터베이스(240)는 전화 번호, 주소 정보, 및 이전 보이스 커맨드로부터의 결과들(이하 상세히 후술함)과 같은 예에 한정되지 않고, 클라이언트 디바이스(110)에 로컬 저장된 정보를 포함한다. 본 명세서에 기초하여, 관련 기술분야의 당업자는 클라이언트 데이터베이스(240)에 저장된 다른 데이터가 여기서 설명한 실시예들에 대해 쿼리 결과들을 제공할 수 있음을 이해한다.
일 실시예로서, 클라이언트 쿼리 매니저(220)는 도 1의 네트워크(120)를 통해 보이스 커맨드에 상응하는 오디오 스트림을 서버 디바이스(130)에 전송하는 것을 조정한다. 오디오 스크림은 예를 들어, 한정되지 않고 WAVE 오디오 포맷과 같은 다양한 형태의 오디오 파일 포맷으로 서버 디바이스(130)에 전송될 수 있다. 이하 더 상세히 설명할, 서버 디바이스(130)가 오디오 스트림을 처리한 후에, 클라이언트 쿼리 관리자(220)는 네트워크(120)를 통해 서버 디바이스(130)로부터 쿼리 결과를 수신하는 것을 조정한다. 서버 디바이스(130)에 대한 데이터의 전송 및, 서버 디바이스(130)으로부터의 데이터 수신은, 송수신기(transceiver; 도 2에 도시되지 않음)를 이용하여 수행될 수 있고, 이는 관련 기술분야의 당업자에 의해 잘 알려져 있다.
도 2의 클라이언트 쿼리 관리자(220)는 일 실시예에 따라 그것이 클라이언트 데이터베이스(240)에 쿼리하는 방식과 동시에, 실질적으로 동일 시간에, 또는 병렬적으로 그 오디오 스트림을 서버 디바이스(130)에 전송하는 것을 조정한다. 결과적으로, 일 실시예에서, 서버 디바이스(130)로부터의 쿼리 결과는 클라이언트 쿼리 관리자(220)에 의해 수신되고, 그 쿼리가 클라이언트 디바이스(110)로부터 발생됨과 동시에, 병렬로, 또는 직후에 디스플레이 디바이스(250)에 디스플레이 될 수 있다. 대안으로, 클라이언트 쿼리 관리자(220)가 클라이언트 데이터베이스(240)에 쿼리하는 연산 시간 또는 보이스 커맨드의 복잡성에 의존하여, 서버 디바이스(130)로부터의 쿼리 결과는 클라이언트 쿼리 관리자(220)에 의해 수신될 수 있고, 일 실시예에 따라 클라이언트 데이터베이스(240)로부터 쿼리 결과를 디스플레이하기 전에, 디스플레이 디바이스(250) 상에 디스플레이될 수 있다.
도 2를 참조하면, 일 실시예로서, 디스플레이 디바이스(250)는 클라이언트 데이터베이스(240) 및 서버 디바이스(130)로부터의 쿼리 결과들을 디스플레이하도록 구성된다. 이러한 쿼리 결과들은 클라이언트 데이터베이스(240)에 저장되고, 일 실시예에 따라 그 쿼리 결과들을 생성하는데 사용되는 보이스 커맨드와 실질적으로 동일하거나 실질적으로 유사한 장래 보이스 커맨드에 기초하여 이후 시간에 검색될 수 있다.
도 3은 서버 디바이스(130)의 실시예를 도시한 것이다. 서버 디바이스(130)는 음성 인식기(310), 서버 쿼리 관리자(320) 및 서버 데이터베이스(330)를 포함한다. 일 실시예에서, 음성 인식기(310)는 서버 데이터베이스(330)와 연결된 서버 쿼리 관리자(320)에 연결된다.
일 실시예에서, 음성 인식기(310) 및 서버 쿼리 관리자(320)는 소프트웨어, 펌웨어, 하드웨어 또는 이들의 조합으로 구현될 수 있다. 음성 인식기(310) 및 서버 쿼리 관리자(320) 또는 그들 중 일부의 실시예들은 또한 여기서 설명된 기능들을 수행할 능력이 있는 하나 이상의 컴퓨팅 디바이스상에서 실행되는 컴퓨터-판독가능한 코드로서 구현될 수 있다. 컴퓨팅 디바이스의 예는 중앙 처리 장치, 특수 용도의 통합 회로, 또는 적어도 하나의 프로세서 및 메모리를 구비한 다른 형태의 컴퓨팅 디바이스를 포함하고, 이에 한정되는 것은 아니다.
상기 설명된 것처럼, 도 2를 참조하면, 서버 디바이스(130)는 클라이언트 디바이스(110)로부터 보이스 커맨드에 상응하는 오디오 스트림을 수신한다. 일 실시예로서, 서버 쿼리 관리자(320)는 송수신기(도 3에 도시되지 않음)를 통해 클라이언트 디바이스(110)로부터 오디오 스트림의 수신, 및 그 오디오 스트림을 음성 인식기(310)에 전송하는 것을 조정한다. 결국 음성 인식기(310)는 본 실시예에 따라 오디오 스트림을 기계-판독가능한 보이스 커맨드로 번역하도록 구성된다.
일 실시예로서, 음성 인식기(310)는 클라이언트 디바이스(110)의 음성 인식기(210)에 의해 번역된 태스크들보다 더 복잡한 음성 인식 태스크들뿐만 아니라, 간단한 음성 인식 태스크들 모두 번역하도록 구성된다. 이는 음성 인식기(310)가 일 실시예에 따라 더 복잡한 보이스 커맨드들을 상응하는 기계-판독가능한 보이스 커맨드로 번역하기 위해, 음성 인식기(210)보다 더 많은 연산 및 메모리 자원들을 갖기 때문이다. 복잡한 음성 인식 태스크들을 처리하는 방법들 및 기술들은 관련 기술분야의 당업자에게 알려져 있다.
일 실시예로서, 음성 인식기(310)에 의해 번역된 기계-판독가능한 보이스 커맨드에 기초하여, 서버 쿼리 관리자(320)는 예를 들어, 텍스트 데이터, 이미지 데이터 및 비디오와 같은 광범위한 정보를 포함하고, 이에 한정되지 않는다. 본 명세서에 기초하여, 관련 기술분야의 당업자는 서버 데이터베이스(330)에 저장된 다른 데이터가 여기 설명된 실시예에 쿼리 결과들을 제공할 수 있음을 이해할 것이다.
쿼리 결과가 서버 데이터베이스(330)로부터 검색된 후에, 서버 쿼리 관리자(320)는 도 1의 네트워크(120)를 통해 클라이언트 디바이스(110)에 쿼리 결과를 전송하는 것을 조정한다. 클라이언트 디바이스(110)에 대한 데이터의 전송 및, 그로부터의 데이터 수신은 관련 기술분야의 당업자에 의해 알려진 송수신기(도 3에 도시되지 않음)를 이용하여 수행될 수 있다.
도 4는 클라이언트 디바이스상에서 보이스 커맨드를 수행하기 위한 방법(400)의 실시예를 도시한 것이다. 본 방법(400)은 예를 들어, 도 1의 통신 시스템(100)에서 클라이언트 디바이스(110)를 이용하여 일어날 수 있다. 클라이언트 디바이스에 상응하는 쿼리 결과를 처리하고 반환하기 위해 더 복잡한 보이스 커맨드들을 서버 디바이스에 분담하는 음성 인식 시스템들과는 달리, 본 방법(400)에 따라 수행하는 음성 인식 시스템은 서버 디바이스뿐만 아니라 클라이언트 디바이스상에서 간단하고 복잡한 보이스 커맨드들 모두를 처리한다. 클라이언트 디바이스 및 서버 디바이스 모두에 의해 생성된 쿼리 결과들은 클라이언트 데이터베이스 및 서버 데이터베이스 각각으로부터 정보를 제공한다. 결과적으로, 클라이언트 디바이스의 사용자는 서버 디바이스에 저장된 데이터뿐만 아니라 클라이언트 디바이스에 저장된 데이터에 기초한 보이스 커맨드에 상응할 수 있는 쿼리 결과들을 보는 이득을 받는다.
설명의 편의를 위해, 통신 시스템(100)은 방법(400)의 상세한 설명을 용이하게 하기 위해 사용될 수 있다. 그러나 여기 상세한 설명에 기초하여, 관련 기술분야의 당업자는 본 방법(400)이 다른 통신 시스템들 상에서 실행될 수 있음을 이해할 것이다. 이러한 다른 통신 시스템들은 여기 설명된 실시예들의 사상 및 범위 내에 있다.
더 나아가, 설명의 편의를 위해, 본 방법(400)은 보이스 커맨드의 오디오 소스로서의 모바일 폰 사용자와 함께 모바일 폰(예컨대, 도 1의 클라이언트 디바이스(110))의 맥락에서 설명될 것이다. 모바일 폰은 통신 네트워크(예컨대, 도 1의 네트워크(120))를 통해 네트워크 서버(예컨대, 도 1의 서버 디바이스(130))에 통신을 위해 연결된다. 여기 상세한 설명에 기초하여, 관련 기술분야의 당업자는 방법(400)이 예컨대, PDA 및 랩탑(이에 한정되지 않음)과 같은 다른 형태의 클라이언트 디바이스 상에서 실행될 수 있고, 예컨대, 라디오 및 컴퓨터(이에 한정되지 않음)와 같은 다른 오디오 소스들로 실행될 수 있음을 이해할 것이다. 이러한 다른 형태의 클라이언트 디바이스들 및 오디오 소스들은 여기 설명된 실시예들의 범위 및 사상 내에 있다.
스텝 410에서, 보이스 커맨드의 오디오 스트림은 모바일 폰에 위치하는 음성 인식기를 통해 기계-판독가능한 보이스 커맨드로 번역된다. 여기 설명된 것처럼, 도 2와 관련하여, 음성 인식기(210)는 마이크로폰(230)에 의해 수신된 오디오 스트림을 번역한다.
스텝 420에서, 쿼리는 스텝 410으로부터 생성된 기계-판독가능한 보이스 커맨드에 기초하여 쿼리 결과를 생성하도록 모바일 폰의 데이터베이스에 만들어진다. 도 2를 참조하면, 음성 인식기(210)에 의해 번역된 기계-판독가능한 보이스 커맨드에 기초하여, 클라이언트 쿼리 관리자(220)는 쿼리 결과를 생성하기 위해 쿼리 데이터베이스(240)에 쿼리한다.
도 5(a)-(c)는 여기 설명된 실시예들에 따라 모바일 폰 상에서 예시적인 사용자 인터페이스(UI)를 도시한 것이다 이러한 도시들은 도 4의 스텝 410 및 420의 설명이 용이하도록 돕는데 이용된다.
도 5(a)와 관련하여, 모바일 폰 UI(510)는 모바일 폰 사용자가 보이스 커맨드를 하도록 한다. 본 예에서, 모바일 폰 사용자는 보이스 커맨드로서 "Barry Cage"를 제공한다. 결국, 스텝 410에 따라, 모바일 폰은 그의 내장형 음성 인식기(예컨대, 도 2의 음성 인식기(210))를 이용하여 보이스 커맨드의 오디오 스트림을 기계-판독가능한 보이스 커맨드로 번역한다. 모바일 폰상의 쿼리 관리자(예컨대, 도 2의 클라이언트 쿼리 관리자(220))는 "Barry Cage"를 위해 모바일 폰의 데이터베이스에 쿼리한다.
도 5(b)와 관련하여, 모바일 폰의 쿼리 관리자는 "Barry Cage" 이름에 대해 연락처 리스트 데이터베이스를 쿼리하고, 쿼리 결과(520)를 찾는다. 여기 상세한 설명에 기초하여, 관련 기술분야의 당업자는 모바일 폰의 다른 데이터베이스들이 예를 들어, 콜 로그 정보(call log information), 뮤직 라이브러리(music library), 및 캘린더 목록들(calendar listings)(이에 한정되지 않음)과 같은 쿼리 결과를 생성하도록 쿼리될 수 있음을 이해할 것이다.
도 5(c)와 관련하여, 모바일 폰 사용자는 보이스 커맨드에 상응하는 연락처 정보(530)를 보기 위해 쿼리 결과(520)를 선택할 수 있다.
도 4를 참조하여, 스텝 430에서, 보이스 커맨드가 네트워크 서버에 위치하는 음성 인식기를 통해 기계-판독가능한 보이스 커맨드로 번역되는 경우, 보이스 커맨드의 오디오 스트림은 네트워크 서버에 전송된다. 상기 설명한 것처럼, 도 2와 관련하여, 클라이언트 쿼리 관리자(220)는 서버 디바이스(130)에 대한 오디오 스트림의 전송을 조정한다.
스텝 440에서, 쿼리 결과가 스텝 430으로부터 기계-판독가능한 보이스 커맨드에 기초하여 서버 데이터베이스에 만들어진 쿼리로부터 생성되는 경우, 쿼리 결과는 네트워크 서버로부터 수신된다. 도 3과 관련하여, 음성 인식기(310)는 보이스 커맨드를 기계-판독가능한 보이스 커맨드로 번역한다. 기계-판독가능한 보이스 커맨드에 기초하여, 서버 쿼리 관리자(320)는 쿼리 결과를 생성하기 위해 서버 데이터베이스(330)에 쿼리한다. 이러한 쿼리 결과는 이후에 네트워크(120)를 통해 서버 디바이스(130)로부터 클라이언트 디바이스(110)로 전송된다.
일 실시예로서, 도 6의 방법(600)에 도시된 것처럼, 네트워크 서버에 대한 오디오 스트림의 전송(스텝 430) 및 네트워크 서버로부터 쿼리 결과의 수신(스텝 440)은, 모바일 폰에 의해 보이스 커맨드의 오디오 스트림 전송(스텝 410) 및 모바일 폰상의 데이터베이스의 쿼리(스텝 420)와 동시에, 실질적으로 동일 시간에, 또는 오버랩되도록 수행될 수 있다. 결과적으로 일 실시예에서 네트워크 서버로부터의 쿼리 결과는 모바일 폰의 데이터베이스로부터 쿼리 결과를 디스플레이하는 것과 동시에, 병렬적으로 또는 바로 직후에 모바일 폰에 의해 수신되고, 모바일 폰상에 디스플레이될 수 있다. 대안으로서, 모바일 폰의 데이터베이스에 쿼리하기 위한 연산 시간 및 보이스 커맨드의 복잡성에 의존하여, 네트워크 서버로부터의 쿼리 결과는 일 실시예에 따라 모바일 폰의 데이터베이스로부터 쿼리 결과의 디스플레이에 잎서, 모바일 폰에 의해 수신되고 디스플레이될 수 있다.
도 4의 스텝 450에서, 스텝 420으로부터의 쿼리 결과 및 스텝 440으로부터의 쿼리 결과가 모바일 폰상에 디스플레이된다. 일 실시예에서, 스텝 420 및 440으로부터의 쿼리 결과들은 모바일 폰의 데이터베이스에 저장되고, 모바일 폰 사용자의 장래 보이스 커맨드에 기초하여 디스플레이될 수 있다.
도 7(a) 및 7(b)는 여기서 설명하는 실시예들에 따라 모바일 폰상의 예시적인 UI(710)를 도시한 것이다. 이러한 도시는 도 4의 스텝 430-450의 설명이 용이하도록 돕는 데 이용된다.
도 5와 유사하게, 도 7(a) 및 7(b)의 도시는 모바일 폰 사용자가 보이스 커맨드로서 "Barry Cage"를 제공한다고 가정한다. 도 7(a)와 관련하여, 도 4의 스텝 410 및 420에 따라, 필드 720은 모바일 폰의 데이터베이스(예컨대, 도 2의 클라이언트 데이터베이스(240))에 만들어진 쿼리로부터 쿼리 결과를 디스플레이한다. 또한 스텝 430-450에 따라, 필드 730은 네트워크 서버(예컨대, 도 3의 서버 데이터베이스(330))에 만들어진 쿼리로부터 쿼리 결과를 디스플레이한다.
도 7(a)의 예에서, 필드 730은 보이스 커맨드("Barry Cage"; "Mary paige"; 및 "mary peach")를 위해 가능한 매치(match)들로서 네트워크 서버가 반환하는 3개의 엔트리들의 리스트이다. 모바일 폰 사용자가 필드 720으로부터 엔트리(예컨대, "Barry Cage")를 선택하는 것을 결정하지 않는다면, 이후에 모바일 폰 사용자는 필드 730으로부터 엔트리를 선택할 수 있다. 또한 필드 630에서 리스트의 부분적인 부분은 제1 시기에 모바일 폰상에 의해 수신되고 디스플레이될 수 있고, 필드 730에서 리스트의 나머지는 제2 시기(예컨대, 제1 시기보다 늦은 시간)에 모바일 폰에 의해 수신되고 디스플레이될 수 있다. 이러한 방식으로, 모바일 폰 사용자는 쿼리 결과들의 나머지가 네트워크 서버에 의해 처리되고 모바일 폰에 의해 수신될 때 쿼리 결과들의 일부를 볼 수 있다.
도 7(b)와 관련하여, 모바일 폰 사용자가 도 7(a)의 필드 730으로부터 "Barry Cage"를 선택하면, 웹 검색으로부터의 결과들(740)이 모바일 폰상에 디스플레이된다. 이후에 모바일 폰 사용자는 관심있는 하이퍼링크를 배치하기 위해 검색 결과들(740)을 거쳐 스크롤할 수 있다. 도 4의 스텝 450에 따라, 검색 결과들(740) 및 도 4의 스텝 420(예컨대, 도 7(a)의 필드 720)으로부터의 쿼리 결과가 일 실시예에 따라 모바일 폰 사용자에 의해 장래 보이스 커맨드를 위한 모바일 폰에 저장된다. 예를 들어, 모바일 폰이 정시에 이후 지점에서 보이스 커맨드로서 "Barry Cage"를 제공한다면, 도 7의 필드 720의 "Barry Cage" 및 필드 730의 "Barry Cage"가 모바일 폰의 메모리로부터 검색되고, 모바일 폰 사용자에게 디스플레이된다. "Barry Cage"에 대한 웹 검색 결과를 저장하는 데 있어서, 모바일 폰 사용자는 미리-선택된 웹 검색 결과를 보는 이득을 받는다. 결과적으로, 모바일 폰이 이전의 보이스 커맨드로부터 선택된 엔트리를 빠르게 리콜하기 때문에 모바일 폰 사용자의 경험이 향상된다. 도 7(a)의 필드 720 및 730에서 데이터를 저장 및 검색하기 위한 예시적인 방법 및 시스템은, 전체로서 참조되어 여기 병합되고 "보이스-활성화 커맨드를 위한 개인화 및 대기시간 감소(Personalization and Latency Reduction for Voice-Activated Commands)"로 명명된 미국 특허 출원 번호 제 12/873,470호에서 찾을 수 있다.
도 8은 클라이언트 디바이스상에서 보이스 커맨드를 수행하기 위한 또 다른 방법(800)을 도시한 것이다. 방법(800)은 예를 들어 도 1의 통신 시스템(100)에 있는 클라이언트 디바이스(110)를 이용하여 일어날 수 있다. 도 4의 방법(400)과 마찬가지로, 설명의 편의를 위해 통신 시스템(100)은 방법(800)의 설명을 용이하게 하기 위해 이용될 것이다. 또한 설명의 편의를 위해 방법(800)은 보이스 커맨드의 오디오 소스로서 모바일 폰 사용자와 함께 모바일 폰(예컨대, 도 1의 클라이언트 디바이스(110))의 맥락에서 설명될 것이다.
스텝 810에서, 보이스 커맨드의 오디오 스트림은 모바일 폰에 의해 수신된다. 상기 설명한 것처럼, 도 2와 관련하여 마이크로폰(230)은 보이스 커맨드의 오디오 스트림을 수신하도록 구성된다.
스텝 820에서, 모바일 폰에 위치하는 음성 인식기는 오디오 스트림(스텝 810으로부터)이 적절한 신뢰도(confidence score)를 가진 기계-판독 가능한 보이스 커맨드로 번역될 수 있는지 여부를 결정한다. 일 실시예로서, 모바일 폰의 컴퓨터 및 메모리 리소스들로 인해, 모바일 폰에 위치하는 음성 인식기(예컨대, 도 2의 음성 인식기(210))는 더 복잡한 보이스 커맨드를 적절히 높은 신뢰도를 가진 상응하는 기계-판독가능한 커맨드로 번역하지 못할 수 있다. 특히, 보이스 커맨드를 위한 음성 인식 신뢰도가 미리 결정된 임계치 이하라면, 이후에 쿼리는 일 실시예에 따라 보이스 커맨드에 기초한 모바일 폰의 데이터베이스에 만들어지지 않는다. 대신, 일 실시예로서 모바일 폰은 모바일 폰에 의해 장래 리콜을 위하여 상대적으로 낮은 신뢰도를 가진 기계-판독가능한 보이스 커맨드를 저장한다. 이러한 장래 리콜 특성은 이하 더 상세히 설명될 것이다. 음성 인식 신뢰도를 결정하기 위한 방법 및 기술은 관련 기술분야의 당업자에게 알려져 있다.
스텝 830에서, 모바일 폰에 위치하는 음성 인식기가 보이스 커맨드의 오디오 스트림에 대한 기계-판독가능한 보이스 커맨드 번역을 제공할 수 있다면, 이후에 보이스 커맨드는 모바일 폰상에 위치하는 음성 인식기를 통해 기계-판독가능한 보이스 커맨드로 번역된다. 스텝 830은 도 4의 스텝 410과 유사한 기능을 수행한다.
스텝 840에서, 쿼리는 스텝 830으로부터 생성된 기계-판독가능한 보이스 커맨드에 기초하여 쿼리 결과를 생성하기 위해 모바일 폰의 데이터베이스상에 만들어진다. 스텝 840은 도 4의 스텝 420과 유사한 기능을 수행한다.
스텝 850에서, 모바일 폰에 위치하는 음성 인식기가 적절한 신뢰도를 가진 보이스 커맨드의 오디오 스트림을 위한 기계-판독가능한 보이스 커맨드 번역을 제공할 수 있는지 여부와 상관없이, 보이스 커맨드가 네트워크 서버에 위치하는 음성 인식기를 통해 기계-판독가능한 보이스 커맨드로 번역되는 경우에 보이스 커맨드의 오디오 스트림은 네트워크 서버로 전송된다. 스텝 850은 도 4의 스텝 430과 유사한 기능을 수행한다.
스텝 860에서, 쿼리 결과가 스텝 850으로부터 기계-판독가능한 보이스 커맨드에 기초하여 서버 데이터베이스에 만들어진 쿼리로부터 생성되는 경우에, 쿼리 결과는 네트워크 서버로부터 수신된다. 스텝 860은 도 4의 스텝 440과 유사한 기능을 수행한다.
도 9는 클라이언트 디바이스상에서 보이스 커맨드를 수행하기 위한 또 다른 방법(900)을 도시한 것이다. 도 6의 스텝 430 및 440과 마찬가지로, 도 8의 스텝 860 및 870은 일 실시예에 따라 모바일 폰에 의해 보이스 커맨드에 대한 오디오 스트림의 전송(스텝 830) 및 모바일 폰에서 데이터베이스의 쿼리(스텝 840)를 동시에, 실질적으로 동일 시간에, 또는 오버랩되도록 수행될 수 있다. 결과적으로 일 실시예에서 모바일 폰의 데이터베이스로부터의 쿼리 결과를 디스플레이함과 실질적으로 동일 시간에, 병렬적으로, 또는 바로 직후에, 네트워크 서버로부터 쿼리 결과가 모바일 폰에 의해 수신되고 디스플레이될 수 있다. 대안으로, 모바일 폰의 데이터베이스에 쿼리하기 위한 연산 시간 또는 보이스 커맨드의 복잡성에 의존하여, 네트워크 서버로부터의 쿼리 결과가 일 실시예에 따라 모바일 폰의 데이터베이스로부터 쿼리 결과의 디스플레이 전에 모바일 폰에 의해 수신되고 디스플레이될 수 있다.
도 8의 스텝 880을 참조하면, 모바일 폰에 위치하는 음성 인식기가 보이스 커맨드의 오디오 스트림에 대한 기계-판독가능한 보이스 커맨드 번역을 제공할 수 있다면(스텝 870 참조), 스텝 820으로부터의 쿼리 결과 및 840으로부터의 쿼리 결과가 모바일 폰상에 디스플레이된다(스텝 880 참조). 일 실시예에서, 스텝 820 및 840으로부터의 쿼리 결과들은 모바일 폰 사용자에 의해 장래 보이스 커맨드를 위한 모바일 폰의 데이터베이스에 저장된다.
대안으로, 모바일 디바이스상에 위치한 음성 인식기가 보이스 커맨드의 오디오 스트림에 대한 기계-판독가능한 보이스 커맨드 번역을 제공하지 못한다면(스텝 870 참조), 이후에 스텝 840으로부터의 쿼리 결과만 모바일 폰상에 디스플레이된다(스텝 890). 일 실시예에서, 스텝 840으로부터의 쿼리 결과가 모바일 폰 사용자에 의해 장래 보이스 커맨드에 대한 모바일 폰의 데이터베이스에 저장된다.
일 실시예에서, 장래 보이스 커맨드는 이러한 기계-판독가능한 보이스 커맨드가 상대적으로 낮은 신뢰도를 가진 기계-판독가능한 보이스 커맨드와 비교될 수 있는(도 2의 스텝 820으로부터), 기계-판독가능한 보이스 커맨드로 번역될 수 있다. 2개의 기계-판독가능한 보이스 커맨드들이 실질적으로 서로 매치되거나 실질적으로 서로 유사하다면, 이후에 모바일 폰은 일 실시예로서 스텝 820으로부터의 쿼리 결과 및/또는 스텝 840으로부터의 쿼리 결과를 디스플레이한다. 도 7(a)의 필드 720 및 730에서 데이터를 저장 및 검색하기 위한 예시적인 방법 및 시스템은 전체로서 참조되어 여기 병합되고, "보이스활성화 커맨드를 위한 개인화 및 대기시간 감소"로 명명된 미국 특허 출원번호 제 12/783,470호(변호사 사건 번호. 2525.2360000)에서 찾을 수 있다.
또한 일 실시예에 따라, 장래 보이스 커맨드에 상응하는 오디오 스트림은, 보이스 커맨드가 네트워크 서버에 위치하는 음성 인식기를 통해 기계-판독가능한 보이스 커맨드로 번역되는 경우에, 네트워크 서버로 전송된다. 일 실시예로서, 장래 보이스 커맨드에 상응하는 기계-판독가능한 보이스 커맨드에 기초하여, 쿼리는 쿼리 결과를 생성하도록 네트워크 서버상의 데이터베이스에 만들어진다. 일 실시예에 따라 이러한 쿼리 결과는 모바일 폰에 의해 수신되고, 디스플레이되고, 저장된다.
이전의 보이스 커맨드에 상응하는 저장된 쿼리 결과 및 장래 보이스 커맨드에 상응하는 다른 쿼리 결과를 디스플레이하는 데 있어서, 다른 무엇보다도 이득은, 일 실시예에 따라, 모바일 사용자가 네트워크 서버로부터 (만약 있다면) 업데이트된 쿼리 결과를 보는 이득을 받는다는 것이다. 또한 일 실시예에서, 모바일 폰의 음성 인식기가 미리-저장된 보이스 커맨드에 상응하는 것으로서 장래 보이스 커맨드의 특성에 대해 잘못 묘사할 수 있다. 이러한 경우, 네트워크 서버에 위치하는 음성 인식기는 일 실시예에 따라, 모바일 폰에 위치하는 음성 인식기에 의해 제공된 번역보다, 장래 보이스 커맨드의 더 정확한 번역을 제공함으로써 특성을 잘못 묘사하는 것을 해결할 수 있다.
도 10(a)-(e)는 여기 설명된 실시예들에 따라 모바일 폰에서의 예시적인 UI(1010)를 도시한 것이다. 이러한 도시는 방법(800)의 설명을 용이하도록 돕는 데 이용된다.
도 10(a)와 관련하여, 모바일 폰 UI(1010)는 모바일 폰 사용자가 보이스 커맨드 하도록 한다. 이러한 예에서, 모바일 폰 사용자는 보이스 커맨드로서, "pizza my heart"를 제공한다. 결국, 스텝 810 및 820에 따라, 모바일 폰은 보이스 커맨드를 수신하고, 보이스 커맨드의 오디오 스트림이 적절한 신뢰도를 가진 기계-판독가능한 보이스 커맨드로 번역될 수 있다.
도 10에 도시된 예에서, 보이스 커맨드 "pizza my heart"는 미리 결정된 임계치 이상의 음성 인식 신뢰도를 반환하지 않는다. 다시 말해, 보이스 커맨드"pizza my heart"는 모바일 폰에 위치한 음성 인식기로부터 높은 신뢰도 매치를 반환하지 않는다. 보이스 커맨드의 오디오 스트림은, 스텝 850에 따라, 음성 인식 프로세싱을 위해 네트워크 서버에 전송된다.
도 10(b)는 네트워크 서버에 만들어진 보이스 커맨드로부터 쿼리 결과들의 예시적인 리스트(1020)를 도시한 것이다. 스텝 850에 따라, 쿼리 결과들의 예시적인 리스트(1020)는 네트워크 서버로부터 모바일 폰로 전송된다. 일 실시예에서, 모바일 폰 사용자가 쿼리 결과들의 예시적인 리스트(1020)를 볼 때, 각각의 쿼리 결과들(예컨대, 웹 페이지, 이미지, 텍스트 데이터)에 관한 정보는 모바일 폰의 캐시 메모리에 저장된다. 이는 모바일 사용자가 쿼리 결과들의 예시적인 리스트(1020)로부터 관심있는 쿼리 결과를 선택하도록 해주고, 일시적으로 쿼리 결과들에 관한 정보를 보도록 해주므로, 모바일 폰 사용자의 경험을 향상시킨다. 예를 들어, 도 10(c)와 관련하여, 모바일 폰 사용자는 쿼리 결과들의 예시적인 리스트(1020)로부터 최상단 엔트리 "pizza my heart"를 선택하고, 웹 검색 결과들의 리스트(1030)가 모바일 폰상에 디스플레이된다. 웹 검색 결과들로부터, 모바일 폰 사용자는 관심있는 하이퍼링크(예컨대, www.pizzamyheart.com)를 선택할 수 있고, 도 10(d)의 웹 페이지(1040)에 도시된 것처럼, 모바일 폰상에 웹 페이지의 컨텐츠를 볼 수 있다.
더 나아가, 스텝 850의 실시예에서, 쿼리 결과들의 예시적인 리스트의 일부분은 제1 시기에 모바일 폰에 의해 수신되고, 디스플레이될 수 있고, 쿼리 결과들의 예시적인 리스트의 나머지는 제2 시기(예컨대, 제1 시기보다 늦은 시간)에 모바일 폰에 의해 수신되고, 디스플레이될 수 있다. 이러한 방식으로, 쿼리 결과들의 나머지가 모바일 서버에 의해 처리되고, 모바일 폰에 의해 수신될 때, 모바일 폰 사용자는 쿼리 결과들의 부분을 볼 수 있다.
일 실시예에서, 모바일 폰 사용자에 의해 선택된 쿼리 결과(예컨대, www.pizzamyheart.com)는 모바일 폰 사용자에 의해 장래 보이스 커맨드를 위한 모바일 폰의 데이터베이스에 저장된다. 예를 들어, 모바일 사용자가 이후에 모바일 폰에 보이스 커맨드로서 "pizza my heart"를 제공할 때, 하이퍼링크 "www.pizzamyheart.com"은 모바일 폰의 데이터베이스에 만들어진 쿼리로부터 쿼리 결과로서 나타난다. 이는 도 10(e)의 필드 1050에 도시된다. 모바일 폰 사용자는 필드 1050에서 쿼리 결과를 선택할 수 있고, 도 10(d)에 도시된 것처럼, "www.pizzamyheart.com"에서 웹 페이지를 볼 수 있다. 쿼리 결과 및 연계된 웹페이지를 저장하는 데 있어서, 모바일 폰 사용자는 미리-선택된 웹 검색 결과를 보는 이득을 수신한다. 결국, 모바일 폰이 이전의 보이스 커맨드로부터 선택된 엔트리를 빠르게 리콜할 수 있기 때문에, 모바일 폰 사용자의 경험이 향상된다. 도 10(e)의 필드 1050에서 데이터를 저장하고 검색하기 위한 예시적인 방법 및 시스템은 전체로서 참조되어 여기 병합되고, "보이스 활성화 커맨드를 위한 개인화 및 대기시간 감소"로 명명된 미국 특허 출원번호 제12/780,470호(변호사 사건 번호 2525.2360000)에서 찾을 수 있다.
여기서 설명된 실시예들의 다양한 측면들은 소프트웨어, 펌웨어, 하드웨어 또는 이들의 조합으로 구현될 수 있다. 도 11은 실시예들 또는 그들 중 일부분이 컴퓨터-판독가능한 코드로서 구현될 수 있는 예시적인 컴퓨터 시스템(1100)을 도시한 것이다. 예를 들어, 도 4의 플로우차트(400), 도 6의 플로우차트(600), 도 8의 플로우차트(800), 또는 도 9의 플로우차트(900)에 의해 도시된 방법들은 컴퓨터 시스템(1100)에 도시될 수 있다. 다양한 실시예들은 이러한 예시적 컴퓨터 시스템(1100)에 관하여 설명된다. 본 명세서를 읽은 후에, 관련 기술분야의 당업자는 다른 컴퓨터 시스템들 및/또는 컴퓨터 구조들을 이용하여 여기 설명된 실시예들을 어떻게 구현하는지 이해하게 될 것이다.
컴퓨터 시스템(1100)은 예시적인 컴퓨팅 디바이스이고, 프로세서(1104)와 같은 하나 이상의 프로세서들을 포함한다. 프로세서(1104)는 특수용 또는 범용 프로세서일 수 있다. 프로세서(1104)는 통신 설비(1106; 예컨대, 버스 또는 네트워크)에 연결된다.
또한 컴퓨터 시스템(1100)은 메인 메모리(1108), 바람직하게는 랜덤 액세스 메모리(RAM)를 포함하고, 보조 메모리(1110)를 포함할 수 있다. 보조 메모리(1110)는 예를 들어, 하드 디스크 드라이브(1112), 이동 저장 드라이브(removable storage derive; 1114) 및/또는 메모리 스틱을 포함할 수 있다. 이동 저장 드라이브(1114)는 플로피 디스크 드라이브, 마그네틱 테이프 드라이브, 광학 디스크 드라이브, 플래시 메모리 등을 포함할 수 있다. 이동 저장 드라이브(1114)는 잘 알려진 방식으로 이동 저장 유닛(1118)로부터 판독하거나(read), 및/또는 거기에 기록한다(write). 이동 저장 유닛(1118)은 이동 저장 드라이브(1114)에 의해 판독되거나 기록되는 플로피 디스크, 마그네틱 테이프, 광학 디스크 등을 포함할 수 있다. 관련 기술분야의 당업자에 의해 이해될 것처럼, 이동 저장 유닛(1118)은 컴퓨터 소프트웨어 및/또는 데이터를 저장하는 컴퓨터-이용가능한 저장 매체를 포함한다.
대안적인 구현들에 있어서, 보조 메모리(1110)는 컴퓨터 프로그램들 또는 다른 명령어들이 컴퓨터 시스템(1100)에 로드되도록 해주기 위해, 다른 유사한 디바이스들을 포함할 수 있다. 그러한 디바이스들은 예컨대, 이동 저장 유닛(1122) 및 인터페이스(1120)을 포함할 수 있다. 그러한 디바이스들의 예는 프로그램 카트리지 및 카트리지 인터페이스(비디오 게임 디바이스들에서 발견되는 것들처럼), 이동 메모리 칩(예컨대, EPROM 또는 PROM) 및 연계된 소켓, 및 소프트웨어 및 데이터가 이동 저장 유닛(1122)로부터 컴퓨터 시스템(1100)으로 전송되도록 해주는 다른 이동 저장 유닛(1122) 및 인터페이스들(1120)을 포함할 수 있다.
컴퓨터 시스템(1100)은 또한 통신 인터페이스(1124)를 포함할 수 있다. 통신 인터페이스(1124)는 소프트웨어 및 데이터로 하여금 컴퓨터 시스템(1100) 및 외부 디바이스들 사이에서 전송되도록 해준다. 통신 인터페이스(1124)는 모뎀, 네트워크 인터페이스(예컨대, 이더넷 카드), 통신 포트, PCMCIA 슬롯 및 카드 등을 포함하라 수 있다. 통신 인터페이스(1124)를 통해 전송된 소프트웨어 및 데이터는 전자적, 전자기적, 광학적, 또는 통신 인터페이스(1124)에 의해 수신될 수 있는 다른 신호들일 수 있는 신호들의 형태일 수 있다. 이러한 신호들은 통신 경로(1126)를 통해 통신 인터페이스(1124)에 제공된다. 통신 경로(1126)는 신호들을 나르고, 유선 또는 케이블, 광섬유, 전화선, 셀룰러 전화 링크, RF 링크 또는 다른 통신 채널들을 이용하여 구현될 수 있다.
본 문서에서, "컴퓨터 프로그램 매체" 및 "컴퓨터-이용가능한 매체"라는 용어들은 일반적으로 이동 저장 유닛(1118), 이동 저장 유닛(1122), 및 하드 디스크 드라이브(1112)에 설치된 하드 디스크와 같은 매체를 말하는 데 이용된다. 컴퓨터 프로그램 매체 및 컴퓨터-이용가능한 매체도 메모리 반도체(예컨대, DRAMs 등)일 수 있는 메인 메모리(1108) 및 보조 메모리(1110)와 같은 메모리들을 말할 수 있다. 이러한 컴퓨터 프로그램은 컴퓨터 시스템(1100)에 소프트웨어를 제공한다.
컴퓨터 프로그램들(컴퓨터 컨트롤 로직이라 부름)은 메인 메모리(1108) 및/또는 보조 메모리(11110)에 저장된다. 또한 컴퓨터 프로그램들은 통신 인터페이스(1124)를 통해 수신될 수 있다. 실행 시 그러한 컴퓨터 프로그램들은 컴퓨터 시스템(1100)으로 하여금 여기 설명되는 실시예들을 구현하도록 할 수 있다. 특히, 실행 시 컴퓨터 프로그램들은 프로세서(904)로 하여금 상기한 도 4의 플로우차트(400), 도 6의 플로우차트 (600), 도 8의 플로우차트(800), 및 도 9의 플로우 차트(900)에 의해 도시된 방법들에 있는 스텝들과 같이 상기 설명된 프로세스들을 구현하도록 해준다. 따라서, 그러한 컴퓨터 프로그램들은 컴퓨터 시스템(1100)의 컨트롤러들을 나타낸다. 여기 설명된 실시예들이 소트프웨어를 이용하여 구현될 때, 소트프웨어는 컴퓨터 프로그램 제품에 저장될 수 있고, 이동 저장 드라이브(1114), 인터페이스(1120), 하드 드라이브(112) 또는 통신 인터페이스(1124)를 이용하여 컴퓨터 시스템(1100)에 로드될 수 있다.
여기 상세한 설명에 기초하여, 관련 기술분야의 당업자는 컴퓨터 프로그램들이 , 실행 시에 하나 이상의 프로세서들로 하여금 도 4의 플로우차트(400), 도 6의 플로우차트 (600), 도 8의 플로우차트(800), 및 도 9의 플로우 차트(900)에 의해 도시된 방법들에 있는 단계들과 같이 상기 설명한 프로세스들을 구현하도록 해줄 수 있음을 이해할 것이다. 일 실시예에 있어서, 하나 이상의 프로세서들은 집약적 컴퓨팅 환경 또는 서버 팜에 병합된 컴퓨팅 디바이스의 일부분이 될 수 있다. 더 나아가, 일 실시예에서, 플로우차트들(400, 600, 800 및 900)에 의해 도시된 방법들에 있는 단계들과 같은 집약적 컴퓨팅 환경에 의해 수행되는 컴퓨팅 프로세스는 동일하거나 상이한 위치들에 배치된 다중 프로세서들에 걸쳐 수행될 수 있다.
또한 실시예들은 일부 컴퓨터-이용가능한 매체상에 저장된 소프트웨어를 포함하는 컴퓨터 프로그램 제품들에 전달된다. 그러한 소프트웨어는 하나 이상의 데이터 프로세싱 디바이스에서 실행될 때, 데이터 프로세싱 디바이스(들)이 여기 설명된 것처럼 동작하도록 해준다. 실시예들은 현재 알려진 또는 미래에 알려질 일부 컴퓨터-이용가능한 또는 판독가능한 매체를 채용한다. 컴퓨터-이용가능한 매체들의 예들은, 초기 저장 디바이스들(예컨대, 랜덤 액세스 메모리의 한 형태) 및 보조 저장 디바이스들(예컨대, 하드 드라이브, 플로피 디스크, CD ROMS, ZIP 디스크, 테이프, 마그네틱 저장 디바이스, 광학 저장 디바이스, MEMS, 나노 테크놀로지의 저장 디바이스 등)를 포함하고, 이에 한정되는 것은 아니다.
다양한 실시예들이 상기 설명되었지만, 그 실시예들은 오직 예시로 나타난 것이고, 이에 한정되지 않음을 이해하여야 한다. 형태 및 세부사항들의 다양한 변형들 여기 설명된 실시예들의 사상과 범위를 벗어나지 않는 범주 내에서 만들어질 수 있음을 관련 기술분야의 당업자는 이해할 것이다. 본 명세서가 이러한 예들에 한정도지 않음을 이해하여야 한다. 이러한 명세서는 여기 설명된 것처럼 동작하는 요소들에 적용가능하다. 따라서, 본 명세서의 사상 및 범위는 상기한 예시적인 실시예들 중 일부에 한정되어서는 안되고, 오직 후술하는 청구범위 및 그들의 등가물에 따라 정의되어야 한다.

Claims (27)

  1. 클라이언트 디바이스 상에서 보이스 커맨드(Voice Command)를 실행하는 방법으로서,
    상기 클라이언트 디바이스 상에 위치하는 제1 음성 인식기를 이용하여, 보이스 커맨드의 오디오 스트림을 제1 기계-판독가능한 보이스 커맨드로 번역하는 단계;
    클라이언트 데이터베이스에 쿼리하기 위해, 상기 제1 기계-판독가능한 보이스 커맨드를 이용하여 제1 쿼리 결과를 생성하는 단계;
    제2 음성 인식기를 이용하여 상기 오디오 스트림을 제2 기계-판독가능한 보이스 커맨드로 번역하는 원격 서버 디바이스로 상기 오디오 스트림을 전송하는 단계;
    원격 서버 데이터베이스에 쿼리하기 위해 상기 제2 기계-판독가능한 보이스 커맨드를 이용하여 상기 원격 서버 디바이스에 의해 생성된 제2 쿼리 결과를 상기 원격 서버 디바이스로부터 수신하는 단계;
    상기 클라이언트 디바이스 상에 상기 제1 쿼리 결과 및 상기 제2 쿼리 결과를 디스플레이하는 단계;
    상기 클라이언트 디바이스 상에 상기 제1 및 제2 쿼리 결과들의 적어도 일부를 저장하는 단계;
    후속하는 보이스 커맨드의 번역이 상기 제1 및 제2 쿼리 결과들을 생성했던 상기 번역된 보이스 커맨드와 유사한 것으로 결정되는 경우, 상기 저장된 제1 및 제2 쿼리 결과들을 검색하는 단계;
    상기 후속하는 보이스 커맨드와 연계된 제2 오디오 스트림을 상기 원격 서버 디바이스에 전송하는 단계;
    상기 제2 음성 인식기를 이용하여 상기 제2 오디오 스트림을 제3 기계-판독가능한 보이스 커맨드로 번역하는 단계;
    상기 원격 서버 디바이스로부터 제3 쿼리 결과를 수신하는 단계, 상기 제3 쿼리 결과는 상기 제3 기계-판독가능한 보이스 커맨드에 기초하여 상기 서버 데이터베이스에 만들어진 후속 쿼리로부터 생성되며, 상기 제3 쿼리 결과는 상기 제2 쿼리 결과의 업데이트된 버젼이며; 및
    상기 클라이언트 디바이스상에 상기 제1, 제2 및 제3 쿼리 결과들을 디스플레이하는 단계를 포함하는 방법.
  2. 삭제
  3. 삭제
  4. 삭제
  5. 청구항 1에 있어서,
    저장하기 위한 상기 제1 및 제2 쿼리 결과들의 어느 일부분을 식별하는 단계를 더 포함하고,
    상기 식별은, 상기 제2 쿼리 결과의 부분으로서 반환된 아이템들의 리스트로부터 관심 아이템에 대한 사용자 선택을 수신하는 단계를 포함하는 방법.
  6. 청구항 1에 있어서,
    상기 제1 쿼리 결과를 생성하는 단계는,
    상기 제1 기계-판독가능한 보이스 커맨드에 기초하여 상기 쿼리가 상기 클라이언트 데이터베이스에 만들어질 때와 오버랩(overlap)하는 시간 기간 동안, 상기 제2 기계-판독가능한 보이스 커맨드에 기초하여 상기 원격 서버 데이터베이스에 만들어진 쿼리가 발생하도록, 상기 제2 음성 인식기에 상기 오디오 스트림을 전송하는 단계를 포함하는 방법.
  7. 청구항 1에 있어서,
    상기 오디오 스트림을 전송하는 단계는 상기 클라이언트 디바이스로부터 상기 서버 디바이스로 상기 보이스 커맨드의 압축된 오디오 스트림을 전송하는 단계를 포함하는 방법.
  8. 청구항 1에 있어서,
    상기 제1 및 제2 쿼리 결과들을 디스플레이하는 단계는, 제1 시기에 제1 결과 및 상기 제2 쿼리 결과 제1 서브셋, 제2 시기에 상기 제1 결과, 상기 제2 쿼리 결과의 상기 제1 서브셋 및 상기 제2 쿼리 결과의 제2 서브셋을 디스플레이하는 단계를 포함하는 방법.
  9. 프로세서가 클라이언트 디바이스상에서 보이스 커맨드를 실행하도록 기록된 컴퓨터 프로그램 로직을 구비하는 컴퓨터-판독가능 저장 매체로서, 상기 컴퓨터 프로그램 로직은:
    프로세서로 하여금 상기 클라이언트 디바이스에 위치하는 제1 음성 인식기를 이용하여 보이스 커맨드의 오디오 스트림을 제1 기계-판독가능한 보이스 커맨드로 번역하게 하는 제1 컴퓨터 판독가능한 프로그램 코드;
    프로세서로 하여금 클라이언트 데이터베이스에 쿼리하기 위해 상기 제1 기계-판독가능한 보이스 커맨드를 이용하여 제1 쿼리 결과를 생성하게 하는 제2 컴퓨터 판독가능한 프로그램 코드;
    프로세서로 하여금 제2 음성 인식기를 이용하여, 상기 오디오 스트림을 제2 기계-판독가능한 보이스 커맨드로 번역하는 원격 서버 디바이스로 상기 오디오 스트림을 전송하게 하는 제3 컴퓨터 판독가능한 프로그램 코드;
    프로세서로 하여금, 원격 서버 데이터베이스에 쿼리하기 위해 상기 제2 기계-판독가능한 보이스 커맨드를 이용하여 상기 원격 서버 디바이스에 의해 생성된 제2 쿼리 결과를 상기 원격 서버 디바이스로부터 수신하게 하는 제4 컴퓨터 판독가능한 프로그램 코드;
    프로세서로 하여금 상기 클라이언트 디바이스 상에 상기 제1 쿼리 결과 및 상기 제2 쿼리 결과를 디스플레이하게 하는 제5 컴퓨터 판독가능한 프로그램 코드;
    프로세서로 하여금 상기 클라이언트 디바이스 상에 상기 제1 및 제2 쿼리 결과들의 적어도 일부분을 저장하게 하는 제6 컴퓨터 판독가능한 프로그램 코드;
    후속하는 보이스 커맨드의 번역이 상기 제1 및 제2 쿼리 결과들을 생성했던 상기 번역된 보이스 커맨드와 유사한 것으로 결정되는 경우, 프로세서로 하여금 상기 저장된 제1 및 제2 쿼리 결과들을 검색하도록 해주는 제7 컴퓨터 판독가능한 프로그램 코드;
    프로세서로 하여금 상기 후속하는 보이스 커맨드와 연계된 제2 오디오 스트림을 상기 원격 서버 디바이스에 전송하게 하는 제8 컴퓨터 판독가능한 프로그램 코드;
    프로세서로 하여금 상기 제2 음성 인식기를 이용하여 상기 제2 오디오 스트림을 제3 기계-판독가능한 보이스 커맨드로 번역하게 하는 제9 컴퓨터 판독가능한 프로그램 코드;
    프로세서로 하여금 상기 원격 서버 디바이스로부터 제3 쿼리 결과를 수신하게 하는 제10 컴퓨터 판독가능한 프로그램 코드, 상기 제3 쿼리 결과는 상기 제3 기계-판독가능한 보이스 커맨드에 기초하여 상기 서버 데이터베이스에 만들어진 후속 쿼리로부터 생성되며, 상기 제3 쿼리 결과는 상기 제2 쿼리 결과의 업데이트된 버젼이며; 및
    프로세서로 하여금 상기 클라이언트 디바이스 상에 제1, 제2, 및 제3 쿼리 결과들을 디스플레이하게 하는 제11 컴퓨터 판독가능한 프로그램 코드를 포함하는 컴퓨터-판독가능 저장 매체.
  10. 삭제
  11. 삭제
  12. 삭제
  13. 청구항 9에 있어서,
    상기 제 6 컴퓨터 판독가능한 프로그램 코드는
    프로세서로 하여금 저장을 위해 제1 및 제2 쿼리 결과들의 어느 부분을 식별하게 하는 컴퓨터 판독가능한 프로그램 코드를 포함하며, 상기 식별은 제2 쿼리 결과의 일부로서 반환되는 아이템들의 리스트로부터 관심 아이템에 대한 사용자 선택을 수신하는 것을 포함하는 컴퓨터-판독가능 저장 매체.
  14. 청구항 9에 있어서,
    상기 제2 컴퓨터 판독가능한 프로그램 코드는
    상기 쿼리가 상기 제1 기계-판독가능한 보이스 커맨드에 기초하여 상기 클라이언트 데이터베이스에 만들어질 때와 오버랩되는 시간 기간 동안, 상기 제2 기계-판독가능한 보이스 커맨드에 기초하여 상기 원격 서버 데이터베이스에 만들어진 상기 쿼리가 발생하도록, 프로세서로 하여금 제2 음성 인식기에 오디오 스트림을 전송하게 하는 컴퓨터 판독가능한 프로그램 코드를 포함하는 컴퓨터-판독가능 저장 매체.
  15. 클라이언트 디바이스상에서 보이스 커맨드를 실행하기 위한 시스템으로서,
    보이스 커맨드의 오디오 스트림을 제1 기계-판독가능한 보이스 커맨드로 번역하도록 구성된 제1 음성 인식기 디바이스;
    클라이언트 쿼리 관리자, 상기 클라이언트 쿼리 관리자는:
    클라이언트 데이터베이스에 쿼리하기 위해 상기 제1 기계-판독가능한 보이스 커맨드를 이용하여 제1 쿼리 결과를 생성하고,
    제2 음성 인식기 디바이스를 이용하여 상기 오디오 스트림을 제2 기계-판독가능한 보이스 커맨드로 번역하는 원격 서버 디바이스로 상기 오디오 스트림을 전송하고, 그리고
    원격 서버 데이터베이스에 쿼리하기 위해 상기 제2 기계-판독가능한 보이스 커맨드를 이용하여 상기 원격 서버 디바이스에 의해 생성된 제2 쿼리 결과를 상기 원격 서버 디바이스로부터 수신하도록 구성되며;
    상기 제1 쿼리 결과 및 상기 제2 쿼리 결과를 상기 클라이언트 디바이스상에 디스플레이하도록 구성된 디스플레이 디바이스;
    상기 보이스 커맨드의 상기 오디오 스트림을 수신하고, 상기 오디오 스트림을 상기 제1 음성 인식기 디바이스에 제공하도록 구성된 마이크로폰;
    상기 클라이언트 디바이스 상에 상기 제1 및 제2 쿼리 결과들의 적어도 일부분을 저장하도록 구성된 저장 디바이스를 포함하며,
    상기 클라이언트 쿼리 관리자는:
    후속하는 보이스 커맨드의 번역이 상기 제1 및 제2 쿼리 결과들을 생성했던 상기 번역된 보이스 커맨드와 유사한 것으로 결정되는 경우, 상기 클라이언트 쿼리 관리자는 상기 저장 디바이스로부터 저장된 제1 및 제2 쿼리 결과들을 검색하고,
    상기 후속하는 보이스 커맨드와 연계된 제2 오디오 스트림을 상기 원격 서버 디바이스에 전송하고,
    상기 제2 오디오 스트림을 상기 제2 음성 인식 디바이스를 이용하여 제3 기계-판독가능한 보이스 커맨드로 번역하고, 그리고
    상기 원격 서버 디바이스로부터 제3 쿼리 결과를 수신하도록 더 구성되며, 상기 제3 쿼리 결과는 상기 제3 기계-판독가능한 보이스 커맨드에 기초하여 상기 서버 데이터베이스에 만들어진 후속 쿼리로부터 생성되며, 상기 제3 쿼리 결과는 상기 제2 쿼리 결과의 업데이트된 버젼인 것을 특징으로 하는 시스템.
  16. 삭제
  17. 삭제
  18. 삭제
  19. 청구항 15에 있어서,
    상기 클라이언트 쿼리 관리자는
    상기 쿼리가 상기 제1 기계-판독가능한 보이스 커맨드에 기초하여 상기 클라이언트 데이터베이스에 만들어질 때와 오버랩되는 시간 기간 동안, 상기 제2 기계-판독가능한 보이스 커맨드에 기초하여 상기 원격 서버 데이터베이스에 만들어진 상기 쿼리가 발생하도록, 상기 오디오 스트림을 상기 제2 음성 인식기에 전송하도록 구성되는 시스템.
  20. 청구항 15에 있어서,
    상기 디스플레이 디바이스는 제1 시기에 제1 결과 및 상기 제2 쿼리 결과의 제1 서브셋, 제2 시기에 상기 제1 결과, 상기 제2 쿼리 결과의 상기 제1 서브셋 및 상기 제2 쿼리 결과의 제2 서브셋을 디스플레이하도록 구성된 시스템.
  21. 클라이언트 디바이스에서, 보이스 커맨드를 정의하는 오디오 스트림을 수신하는 단계;
    상기 클라이언트 디바이스에 저장된 제1 음성 인식기 모듈을 이용하여, 상기 오디오 스트림에 적어도 부분적으로 기초하여 제1 기계-판독가능한 보이스 커맨드를 정의하는 단계;
    클라이언트 데이터베이스에 보낸 제1 쿼리에 응답하여 제1 쿼리 결과를 수신하는 단계, 상기 제1 쿼리는 상기 기계-판독가능한 보이스 커맨드를 포함하며;
    제2 음성 인식기 모듈을 이용하여 원격 서버 디바이스가 제2 기계-판독가능한 보이스 커맨드를 정의하도록 상기 오디오 스트림을 상기 원격 서버 디바이스에 전송하는 단계, 상기 제2 기계-판독가능한 보이스 커맨드는 상기 오디오 스트림에 적어도 부분적으로 기초하며;
    상기 원격 서버 디바이스로부터 제2 쿼리 결과를 수신하는 단계, 상기 제2 쿼리 결과는 상기 전송된 오디오 스트림에 대한 응답이며;
    상기 제1 쿼리 결과를 상기 클라이언트 디바이스의 디스플레이에 디스플레이하는 단계, 상기 디스플레이된 제1 쿼리 결과는 적어도 제1 선택가능한 결과 아이템을 포함하며;
    상기 제2 쿼리 결과를 상기 클라이언트 디바이스의 디스플레이에 디스플레이하는 단계, 상기 디스플레이된 제2 쿼리 결과는 적어도 제2 선택가능한 결과 아이템을 포함하며;
    상기 제1 쿼리 결과의 디스플레이는 상기 제2 쿼리 결과의 디스플레이에 의존하지 않으며, 상기 제2 쿼리 결과의 디스플레이는 상기 제1 쿼리 결과의 디스플레이에 의존하지 않으며;
    상기 제1 쿼리 결과 및 상기 제2 쿼리 결과의 적어도 한 부분을 상기 클라이언트 디바이스의 메모리에 저장하는 단계;
    상기 클라이언트 디바이스에서, 후속하는 보이스 커맨드를 정의하는 제2 오디오 스트림을 수신하는 단계;
    상기 제1 음성 인식기 모듈을 이용하여, 상기 후속하는 보이스 커맨드에 적어도 부분적으로 기초하여 제3 기계-판독가능한 보이스 커맨드를 정의하는 단계;
    상기 제3 기계-판독가능한 보이스 커맨드가 상기 제1 기계-판독가능한 보이스 커맨드와 유사하다는 것을 결정하는 단계;
    상기 제3 기계-판독가능한 보이스 명령이 상기 제1 기계-판독가능한 보이스 커맨드와 유사하다고 결정된 때, 상기 클라이언트 디바이스의 메모리로부터, 상기 저장된 제1 쿼리 결과 및 상기 저장된 제2 쿼리 결과를 검색하는 단계;
    상기 제2 음성 인식기 모듈을 사용하여 상기 원격 서버 디바이스가 제4 기계-판독가능한 보이스 커맨드를 정의하도록 상기 후속하는 보이스 커맨드와 연계된 상기 제2 오디오 스트림을 상기 원격 서버 디바이스에 전송하는 단계, 상기 제4 기계-판독가능한 보이스 커맨드는 상기 제2 오디오 스트림에 적어도 부분적으로 기초하며;
    상기 원격 서버 디바이스로부터 제3 쿼리 결과를 수신하는 단계, 상기 제3 쿼리 결과는 상기 전송된 제2 오디오 스트림에 대한 응답이며, 상기 제3 쿼리 결과는 상기 제2 쿼리 결과의 업데이트된 버젼이며; 및
    상기 검색된 제1 쿼리 결과, 상기 검색된 제2 쿼리 결과 및 상기 제3 쿼리 결과를 상기 클라이언트 디바이스의 디스플레이에 디스플레이하는 단계를 포함하는 것을 특징으로 하는 방법.
  22. 청구항 21에 있어서,
    제1 시간 인터벌(time interval) 동안 상기 오디오 스트림을 상기 원격 서버 디바이스에 전송하는 단계; 및
    제2 시간 인터벌 동안 상기 제1 쿼리를 상기 클라이언트 데이터베이스에 보내는 단계를 더 포함하며, 제1 시간 인터벌의 적어도 한 부분과 제2 시간 인터벌의 부분은 시간이 오버랩되는 것을 특징으로 하는 방법.
  23. 청구항 21에 있어서,
    상기 제1 쿼리 결과 및 상기 제2 쿼리 결과를 디스플레이하는 단계는 제1 시기(time instance)에 상기 제1 쿼리 결과 및 상기 제2 쿼리 결과의 제1 서브셋을 디스플레이하는 단계 및 제2 시기에 상기 제1 쿼리 결과, 상기 제2 쿼리 결과의 상기 제1 서브셋 및 상기 제2 쿼리 결과의 제2 서브셋을 디스플레이하는 단계를 포함하는 것을 특징으로 하는 방법.
  24. 명령들을 나타내는 코드를 저장하는 비-일시적 컴퓨터 판독가능 저장 매체로서, 실행시 상기 명령들은 클라이언트 디바이스의 프로세서로 하여금:
    보이스 커맨드를 정의하는 오디오 스트림을 수신하게 하며;
    상기 클라이언트 디바이스에 저장된 제1 음성 인식기 모듈을 이용하여, 상기 오디오 스트림에 적어도 부분적으로 기초하여 제1 기계-판독가능한 보이스 커맨드를 정의하게 하며;
    제1 쿼리를 클라이언트 데이터베이스에 보내게 하며, 상기 제1 쿼리는 상기 제1 기계-판독가능한 보이스 커맨드에 적어도 부분적으로 기초하며;
    상기 클라이언트 데이터베이스에 보낸 상기 제1 쿼리에 응답하여 제1 쿼리 결과를 수신하게 하며, 상기 제1 쿼리 결과는 M개의 선택가능한 결과 아이템들의 리스트를 포함하며, 여기서 M은 정수(whole number)이며;
    제2 음성 인식기 모듈을 이용하여 원격 서버 디바이스가 제2 기계-판독가능한 보이스 커맨드를 정의하도록 상기 오디오 스트림을 상기 원격 서버 디바이스에 전송하게 하며, 상기 제2 기계-판독가능한 보이스 커맨드는 상기 오디오 스트림에 적어도 부분적으로 기초하며;
    상기 원격 서버 디바이스로부터 제2 쿼리 결과를 수신하게 하며, 상기 제2 쿼리 결과는 상기 전송된 오디오 스트림에 대한 응답이며 그리고 N개의 선택가능한 결과 아이템들의 리스트를 포함하며, 여기서 N은 정수이며;
    상기 클라이언트 디바이스에 디스플레이하기 위한 상기 M개의 선택가능한 결과 아이템들의 리스트를 포함하는 상기 제1 쿼리 결과를 출력하게 하며;
    상기 클라이언트 디바이스에 디스플레이하기 위한 상기 N개의 선택가능한 결과 아이템들의 리스트를 포함하는 상기 제2 쿼리 결과를 출력하게 하며, 상기 제1 쿼리 결과의 출력은 상기 제2 쿼리 결과의 출력에 의존하지 않으며, 상기 제2 쿼리 결과의 출력은 상기 제1 쿼리 결과의 출력에 의존하지 않으며;
    상기 제1 쿼리 결과 및 상기 제2 쿼리 결과의 적어도 한 부분이 상기 클라이언트 디바이스의 메모리에 저장되도록 개시하게 하며;
    후속하는 보이스 커맨드를 정의하는 제2 오디오 스트림을 수신하게 하며;
    상기 제1 음성 인식기 모듈을 이용하여, 상기 후속하는 보이스 커맨드에 적어도 부분적으로 기초하여 제3 기계-판독가능한 보이스 커맨드를 정의하게 하며;
    상기 제3 기계-판독가능한 보이스 커맨드가 상기 제1 기계-판독가능한 보이스 커맨드와 유사하다는 것을 결정하게 하며;
    상기 제3 기계-판독가능한 보이스 명령이 상기 제1 기계-판독가능한 보이스 커맨드와 유사하다고 결정된 때, 상기 클라이언트 디바이스의 메모리로부터, 상기 저장된 제1 쿼리 결과 및 상기 저장된 제2 쿼리 결과를 검색하게 하며;
    상기 제2 음성 인식기 모듈을 사용하여 상기 원격 서버 디바이스가 제4 기계-판독가능한 보이스 커맨드를 정의하도록 상기 후속하는 보이스 커맨드와 연계된 상기 제2 오디오 스트림을 상기 원격 서버 디바이스에 전송하게 하며, 상기 제4 기계-판독가능한 보이스 커맨드는 상기 제2 오디오 스트림에 적어도 부분적으로 기초하며;
    상기 원격 서버 디바이스로부터 제3 쿼리 결과를 수신하게 하며, 상기 제3 쿼리 결과는 상기 전송된 제2 오디오 스트림에 대한 응답이며, 상기 제3 쿼리 결과는 상기 제2 쿼리 결과의 업데이트된 버젼이며 그리고 P개의 선택가능한 결과 아이템들의 리스트를 포함하며, 여기서 P는 정수이며; 및
    상기 클라이언트 디바이스에 디스플레이 하기 위해 상기 제3 쿼리 결과를 출력하게 하는 것을 특징으로 하는 비-일시적 컴퓨터 판독가능 저장 매체.
  25. 클라이언트 디바이스에 저장되는 제1 음성 인식기 모듈, 상기 제1 음성 인식기 모듈은:
    보이스 커맨드를 정의하는 오디오 스트림을 수신하고;
    상기 오디오 스트림에 적어도 부분적으로 기초하여 제1 기계-판독가능한 보이스 커맨드를 정의하고;
    후속하는 보이스 커맨드를 정의하는 제2 오디오 스트림을 수신하고; 그리고
    상기 후속하는 보이스 커맨드에 적어도 부분적으로 기초하여 제3 기계-판독가능한 보이스 커맨드를 정의하도록 구성되며;
    클라이언트 쿼리 관리자, 상기 클라이언트 쿼리 관리자는:
    제1 쿼리를 클라이언트 데이터베이스에 보내는 것에 응답하여 제1의 수의 선택가능한 결과 아이템들을 포함하는 제1 쿼리 결과를 수신하고, 상기 제1 쿼리는 상기 제1 기계-판독가능한 보이스 커맨드에 적어도 부분적으로 기초하며;
    제2 음성 인식기 모듈을 이용하여 원격 서버 디바이스가 제2 기계-판독가능한 보이스 커맨드를 정의하도록 상기 오디오 스트림을 상기 원격 서버 디바이스에 전송하고, 상기 제2 기계-판독가능한 보이스 커맨드는 상기 오디오 스트림에 적어도 부분적으로 기초하며;
    상기 원격 서버 디바이스로부터 제2의 수의 선택가능한 결과 아이템들을 포함하는 제2 쿼리 결과를 수신하고, 상기 제2 쿼리 결과는 상기 전송된 오디오 스트림에 대한 응답이며;
    상기 제3 기계-판독가능한 보이스 커맨드가 상기 제1 기계-판독가능한 보이스 커맨드와 유사하다는 것을 결정하고;
    상기 클라이언트 디바이스의 메모리로부터, 상기 제3 기계-판독가능한 보이스 커맨드가 상기 제1 기계-판독가능한 보이스 커맨드와 유사한 때, 저장 디바이스로부터 상기 저장된 제1 쿼리 결과 및 상기 저장된 제2 쿼리 결과를 검색하고;
    상기 제2 음성 인식기 모듈을 이용하여 상기 원격 서버 디바이스가 제4 기계-판독가능한 보이스 커맨드를 정의하도록 상기 후속하는 보이스 커맨드와 연계된 상기 제2 오디오 스트림을 상기 원격 서버 디바이스에 전송하고, 상기 제4 기계-판독가능한 보이스 커맨드는 상기 제2 오디오 스트림에 적어도 부분적으로 기초하며; 그리고
    상기 원격 서버 디바이스로부터 제3의 수의 선택가능한 결과 아이템들을 포함하는 제3 쿼리 결과를 수신하도록 구성되며, 상기 제3 쿼리 결과는 상지 전송된 제2 오디오 스트림에 대한 응답이며, 상기 제3 쿼리 결과는 상기 제2 쿼리 결과의 업데이트된 버젼이며;
    디스플레이 디바이스, 상기 디스플레이 디바이스는:
    상기 제1 쿼리 결과에 대응하는 상기 제1의 수의 선택가능한 결과 아이템들을 상기 클라이언트 디바이스에 디스플레이하고, 상기 제2 쿼리 결과에 대응하는 상기 제2의 수의 선택가능한 결과 아이템들을 상기 클라이언트 디바이스에 디스플레이하고, 상기 제1의 수의 선택가능한 결과 아이템들의 디스플레이는 상기 제2의 수의 선택가능한 결과 아이템들의 디스플레이에 의존하지 않으며, 상기 제2의 수의 선택가능한 결과 아이템들의 디스플레이는 상기 제1의 수의 선택가능한 결과 아이템들의 디스플레이에 의존하지 않으며; 그리고
    상기 검색된 제1 쿼리 결과에 대응하는 상기 제1의 수의 선택가능한 결과 아이템들, 상기 검색된 제2 쿼리 결과에 대응하는 상기 제2의 수의 선택가능한 결과 아이템들, 상기 검색된 제3 쿼리 결과에 대응하는 상기 제3의 수의 선택가능한 결과 아이템들을 상기 클라이언트 디바이스에 디스플레이하도록 구성되며;
    상기 보이스 커맨드의 상기 오디오 스트림을 수신하고 그리고 상기 오디오 스트림을 상기 제1 음성 인식기 모듈에 제공하도록 구성되는 마이크; 및
    제1 쿼리 결과 및 제2 쿼리 결과의 적어도 한 부분을 상기 클라이언트 디바이스에 저장하도록 구성되는 저장 디바이스를 포함하는 것을 특징으로 하는 시스템.
  26. 컴퓨터로 구현되는 방법으로서,
    사용자 발언(user utterance)에 대응하는 오디오 데이터를 수신하는 단계;
    상기 오디오 데이터를 원격 음성 인식기에 제공하는 단계, 그리고 응답으로, 쿼리로서 상기 사용자 발언의 원격으로 생성된 표기(remotely-generated transcription)의 적어도 한 부분을 이용하여 원격 데이터베이스의 검색의 결과로서 식별된 수개의 검색 결과들을 획득하는 단계, 상기 사용자 발언의 원격으로 생성된 표기는 상기 원격 음성 인식기에 의해 생성되며;
    상기 사용자 발언의 로컬에서 생성된 표기(locally-generated transcription) 및 상기 사용자 발언의 로컬에서 생성된 표기와 연계된 음성 인식 신뢰 값(speech recognition confidence value)을 획득하는 단계, 상기 사용자 발언의 로컬에서 생성된 표기 및 상기 신뢰 값은 로컬 음성 인식기에 의해 생성되며;
    상기 로컬 음성 인식기에 의해 생성된 상기 음성 인식 신뢰 값이 임계 값을 충족하지 않는다고 결정하는 단계에 응답하여:
    쿼리로서 상기 로컬에서 생성된 표기의 적어도 한 부분을 이용하여 로컬 데이터베이스의 검색을 수행하는 것을 바이패스(bypass)하는 단계;
    상기 원격 데이터베이스의 상기 검색의 결과로서 식별된 하나 이상의 상기 검색 결과들을 출력을 위해 제공하는 단계;
    상기 원격 데이터베이스의 상기 검색의 결과로서 식별된 상기 제공된 검색 결과들 중으로부터 특정 검색 결과의 선택을 표시하는 데이터를 수신하는 단계;
    상기 특정 검색 결과를 식별하는 데이터와 연계된, 상기 로컬 음성 인식기에 의해 생성된, 상기 사용자 발언의 로컬에서 생성된 표기를 저장하는 단계;
    상기 사용자 발언의 로컬에서 생성된 표기를 저장한 후에 제2 사용자 발언에 대응하는 제2 오디오 데이터를 수신하는 단계;
    상기 제2 사용자 발언의 로컬에서 생성된 표기를 획득하는 단계, 상기 제2 사용자 발언의 로컬에서 생성된 표기는 상기 로컬 음성 인식기에 의해 생성되며;
    상기 제2 사용자 발언의 로컬에서 생성된 표기가 상기 저장된 사용자 발언의 로컬에서 생성된 표기가 일치한다는 것을 결정하는 단계;
    상기 제2 사용자 발언의 로컬에서 생성된 표기가 상기 저장된 사용자 발언의 로컬에서 생성된 표기와 일치한다는 것을 결정한 후에 제2 오디오 데이터를 상기 원격 음성 인식기에 제공하는 단계 그리고 응답으로, 쿼리로서 상기 제2 사용자 발언의 원격으로 생성된 표기의 적어도 한 부분을 이용하여 상기 원격 데이터베이스의 검색의 결과로서 식별된 수개의 추가적인 검색 결과들을 획득하는 단계, 상기 제2 사용자 발언의 원격으로 생성된 표기는 상기 원격 음성 인식기에 의해 생성되며; 그리고
    상기 사용자 발언의 상기 로컬에서 생성된 표기와 연계되어 저장된 상기 특정 검색 결과를 식별하는 상기 데이터에 기초하여, 상기 특정 검색 결과 및 상기 원격 데이터 베이스의 상기 검색의 결과로서 식별된 상기 수개의 추가적인 검색 결과들을 출력을 위해 제공하는 단계를 포함하는 것을 특징으로 하는 컴퓨터로 구현되는 방법.
  27. 청구항 26에 있어서,
    상기 원격 음성 인식기로부터, 상기 사용자 발언의 수개의 후보 표기들(candidate transcriptions)을 획득하는 단계;
    상기 하나 이상의 수개의 후보 표기들을 출력을 취해 제공하는 단계; 그리고
    상기 하나 이상의 후보 표기들 중으로부터 특정 표기의 선택을 표시하는 데이터를 수신하는 단계를 더 포함하며, 상기 원격 데이터베이스의 상기 검색의 결과로서 식별된 상기 수개의 검색 결과들은 상기 특정 표기의 적어도 한 부분은 이용하여 상기 원격 데이터베이스의 검색의 결과로서 식별되는 것을 특징으로 하는 컴퓨터로 구현되는 방법.
KR1020127022282A 2010-01-26 2011-01-25 내장형 및 네트워크 음성 인식기들의 통합 KR101770358B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US29825110P 2010-01-26 2010-01-26
US61/298,251 2010-01-26
US12/794,896 US20110184740A1 (en) 2010-01-26 2010-06-07 Integration of Embedded and Network Speech Recognizers
US12/794,896 2010-06-07
PCT/US2011/022427 WO2011094215A1 (en) 2010-01-26 2011-01-25 Integration of embedded and network speech recognizers

Publications (2)

Publication Number Publication Date
KR20130018658A KR20130018658A (ko) 2013-02-25
KR101770358B1 true KR101770358B1 (ko) 2017-08-22

Family

ID=44309629

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020127022282A KR101770358B1 (ko) 2010-01-26 2011-01-25 내장형 및 네트워크 음성 인식기들의 통합

Country Status (7)

Country Link
US (3) US20110184740A1 (ko)
EP (2) EP2529372B1 (ko)
KR (1) KR101770358B1 (ko)
CN (1) CN102884569B (ko)
AU (1) AU2011209760B2 (ko)
CA (1) CA2788088A1 (ko)
WO (1) WO2011094215A1 (ko)

Families Citing this family (67)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8626511B2 (en) * 2010-01-22 2014-01-07 Google Inc. Multi-dimensional disambiguation of voice commands
US20110184740A1 (en) * 2010-01-26 2011-07-28 Google Inc. Integration of Embedded and Network Speech Recognizers
US9842299B2 (en) 2011-01-25 2017-12-12 Telepathy Labs, Inc. Distributed, predictive, dichotomous decision engine for an electronic personal assistant
US9202465B2 (en) * 2011-03-25 2015-12-01 General Motors Llc Speech recognition dependent on text message content
US8700406B2 (en) * 2011-05-23 2014-04-15 Qualcomm Incorporated Preserving audio data collection privacy in mobile devices
US8924219B1 (en) 2011-09-30 2014-12-30 Google Inc. Multi hotword robust continuous voice command detection in mobile devices
US20130085753A1 (en) * 2011-09-30 2013-04-04 Google Inc. Hybrid Client/Server Speech Recognition In A Mobile Device
WO2013102052A1 (en) * 2011-12-28 2013-07-04 Bloomberg Finance L.P. System and method for interactive automatic translation
US9317605B1 (en) 2012-03-21 2016-04-19 Google Inc. Presenting forked auto-completions
US9645127B2 (en) * 2012-05-07 2017-05-09 Alexander Himanshu Amin Electronic nose system and method
US10839440B2 (en) * 2012-05-07 2020-11-17 Hannah Elizabeth Amin Mobile communications device with electronic nose
US8930341B2 (en) * 2012-05-07 2015-01-06 Alexander Himanshu Amin Mobile communications device with electronic nose
KR20130125067A (ko) * 2012-05-08 2013-11-18 삼성전자주식회사 전자 장치 및 그의 제어 방법
KR101914708B1 (ko) * 2012-06-15 2019-01-14 삼성전자주식회사 서버 및 서버의 제어 방법
US10354650B2 (en) * 2012-06-26 2019-07-16 Google Llc Recognizing speech with mixed speech recognition models to generate transcriptions
US9715879B2 (en) * 2012-07-02 2017-07-25 Salesforce.Com, Inc. Computer implemented methods and apparatus for selectively interacting with a server to build a local database for speech recognition at a device
US9384736B2 (en) * 2012-08-21 2016-07-05 Nuance Communications, Inc. Method to provide incremental UI response based on multiple asynchronous evidence about user input
KR101330671B1 (ko) 2012-09-28 2013-11-15 삼성전자주식회사 전자장치, 서버 및 그 제어방법
WO2014060054A1 (de) * 2012-10-16 2014-04-24 Audi Ag Spracherkennung in einem kraftfahrzeug
US9171066B2 (en) * 2012-11-12 2015-10-27 Nuance Communications, Inc. Distributed natural language understanding and processing using local data sources
US9117451B2 (en) * 2013-02-20 2015-08-25 Google Inc. Methods and systems for sharing of adapted voice profiles
CN105027198B (zh) * 2013-02-25 2018-11-20 三菱电机株式会社 语音识别***以及语音识别装置
EP4042978B1 (en) 2013-03-15 2023-06-07 Canary Medical Inc. Devices, systems and methods for monitoring hip replacements
US9646606B2 (en) 2013-07-03 2017-05-09 Google Inc. Speech recognition using domain knowledge
US9305554B2 (en) * 2013-07-17 2016-04-05 Samsung Electronics Co., Ltd. Multi-level speech recognition
US9530416B2 (en) 2013-10-28 2016-12-27 At&T Intellectual Property I, L.P. System and method for managing models for embedded speech and language processing
US9666188B2 (en) * 2013-10-29 2017-05-30 Nuance Communications, Inc. System and method of performing automatic speech recognition using local private data
KR102246893B1 (ko) * 2013-12-11 2021-04-30 삼성전자주식회사 대화형 시스템, 이의 제어 방법, 대화형 서버 및 이의 제어 방법
US9792911B2 (en) * 2014-03-25 2017-10-17 Panasonic Automotive Systems Company Of America, Division Of Panasonic Corporation Of North America Background voice recognition trainer
US10162889B2 (en) 2014-06-18 2018-12-25 Google Llc Methods, systems, and media for searching for video content
US9953646B2 (en) 2014-09-02 2018-04-24 Belleau Technologies Method and system for dynamic speech recognition and tracking of prewritten script
US10310808B2 (en) 2014-09-08 2019-06-04 Google Llc Systems and methods for simultaneously receiving voice instructions on onboard and offboard devices
CA2998709A1 (en) 2014-09-17 2016-03-24 Canary Medical Inc. Devices, systems and methods for using and monitoring medical devices
US9830321B2 (en) * 2014-09-30 2017-11-28 Rovi Guides, Inc. Systems and methods for searching for a media asset
KR102301880B1 (ko) * 2014-10-14 2021-09-14 삼성전자 주식회사 전자 장치 및 이의 음성 대화 방법
US10999636B1 (en) 2014-10-27 2021-05-04 Amazon Technologies, Inc. Voice-based content searching on a television based on receiving candidate search strings from a remote server
KR20160056548A (ko) * 2014-11-12 2016-05-20 삼성전자주식회사 질의 응답을 위한 디스플레이 장치 및 방법
US9898455B2 (en) 2014-12-01 2018-02-20 Nuance Communications, Inc. Natural language understanding cache
CN104918198A (zh) * 2015-05-11 2015-09-16 阔地教育科技有限公司 一种基于在线课堂的音频校准方法及装置
US9865265B2 (en) 2015-06-06 2018-01-09 Apple Inc. Multi-microphone speech recognition systems and related techniques
US10013981B2 (en) 2015-06-06 2018-07-03 Apple Inc. Multi-microphone speech recognition systems and related techniques
EP3323126A4 (en) * 2015-07-17 2019-03-20 Nuance Communications, Inc. REDUCED LATENCY SPEECH RECOGNITION SYSTEM USING MULTIPLE RECOGNITION DEVICES
US10048936B2 (en) 2015-08-31 2018-08-14 Roku, Inc. Audio command interface for a multimedia device
US9875081B2 (en) 2015-09-21 2018-01-23 Amazon Technologies, Inc. Device selection for providing a response
US9972342B2 (en) * 2015-11-20 2018-05-15 JVC Kenwood Corporation Terminal device and communication method for communication of speech signals
KR20230152788A (ko) 2016-03-23 2023-11-03 카나리 메디칼 아이엔씨. 경보 임플란트를 위한 이식 가능한 리포팅 프로세서
US11191479B2 (en) 2016-03-23 2021-12-07 Canary Medical Inc. Implantable reporting processor for an alert implant
US9761227B1 (en) * 2016-05-26 2017-09-12 Nuance Communications, Inc. Method and system for hybrid decoding for enhanced end-user privacy and low latency
CN107452383B (zh) * 2016-05-31 2021-10-26 华为终端有限公司 一种信息处理方法、服务器、终端及信息处理***
US9619202B1 (en) 2016-07-07 2017-04-11 Intelligently Interactive, Inc. Voice command-driven database
US10685656B2 (en) * 2016-08-31 2020-06-16 Bose Corporation Accessing multiple virtual personal assistants (VPA) from a single device
JP6659514B2 (ja) 2016-10-12 2020-03-04 東芝映像ソリューション株式会社 電子機器及びその制御方法
CN108010523B (zh) * 2016-11-02 2023-05-09 松下电器(美国)知识产权公司 信息处理方法以及记录介质
US10971157B2 (en) 2017-01-11 2021-04-06 Nuance Communications, Inc. Methods and apparatus for hybrid speech recognition processing
WO2018140420A1 (en) 2017-01-24 2018-08-02 Honeywell International, Inc. Voice control of an integrated room automation system
US10572220B2 (en) * 2017-04-12 2020-02-25 American Megatrends International, Llc Method for controlling controller and host computer with voice
US10984329B2 (en) 2017-06-14 2021-04-20 Ademco Inc. Voice activated virtual assistant with a fused response
US10482904B1 (en) 2017-08-15 2019-11-19 Amazon Technologies, Inc. Context driven device arbitration
US10679620B2 (en) * 2018-03-06 2020-06-09 GM Global Technology Operations LLC Speech recognition arbitration logic
US20190332848A1 (en) 2018-04-27 2019-10-31 Honeywell International Inc. Facial enrollment and recognition system
JP2021156907A (ja) * 2018-06-15 2021-10-07 ソニーグループ株式会社 情報処理装置および情報処理方法
US20190390866A1 (en) 2018-06-22 2019-12-26 Honeywell International Inc. Building management system with natural language interface
US10885912B2 (en) * 2018-11-13 2021-01-05 Motorola Solutions, Inc. Methods and systems for providing a corrected voice command
KR102088322B1 (ko) * 2018-11-16 2020-03-12 엘지전자 주식회사 인공지능 기반의 어플라이언스 제어 장치 및 그를 포함하는 어플라이언스 제어 시스템
CN111508484B (zh) * 2019-01-31 2024-04-19 阿里巴巴集团控股有限公司 语音数据的处理方法及装置
US11481401B2 (en) * 2020-11-25 2022-10-25 International Business Machines Corporation Enhanced cognitive query construction
US20220293109A1 (en) * 2021-03-11 2022-09-15 Google Llc Device arbitration for local execution of automatic speech recognition

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090204409A1 (en) * 2008-02-13 2009-08-13 Sensory, Incorporated Voice Interface and Search for Electronic Devices including Bluetooth Headsets and Remote Systems
US20090271200A1 (en) * 2008-04-23 2009-10-29 Volkswagen Group Of America, Inc. Speech recognition assembly for acoustically controlling a function of a motor vehicle

Family Cites Families (49)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5903454A (en) * 1991-12-23 1999-05-11 Hoffberg; Linda Irene Human-factored interface corporating adaptive pattern recognition based controller apparatus
CN101359350B (zh) * 1995-02-13 2012-10-03 英特特拉斯特技术公司 用于安全地管理在数据项上的操作的方法
US7191135B2 (en) * 1998-04-08 2007-03-13 Symbol Technologies, Inc. Speech recognition system and method for employing the same
US7003463B1 (en) * 1998-10-02 2006-02-21 International Business Machines Corporation System and method for providing network coordinated conversational services
US6185535B1 (en) * 1998-10-16 2001-02-06 Telefonaktiebolaget Lm Ericsson (Publ) Voice control of a user interface to service applications
US6408272B1 (en) * 1999-04-12 2002-06-18 General Magic, Inc. Distributed voice user interface
US6963759B1 (en) * 1999-10-05 2005-11-08 Fastmobile, Inc. Speech recognition technique based on local interrupt detection
CN1315721A (zh) 2000-03-23 2001-10-03 韦尔博泰克有限公司 客户服务器语音信息传送***与方法
JP3728177B2 (ja) * 2000-05-24 2005-12-21 キヤノン株式会社 音声処理システム、装置、方法及び記憶媒体
JP3672800B2 (ja) * 2000-06-20 2005-07-20 シャープ株式会社 音声入力通信システム
US7027987B1 (en) * 2001-02-07 2006-04-11 Google Inc. Voice interface for a search engine
US7013289B2 (en) * 2001-02-21 2006-03-14 Michel Horn Global electronic commerce system
US6738743B2 (en) * 2001-03-28 2004-05-18 Intel Corporation Unified client-server distributed architectures for spoken dialogue systems
US7809574B2 (en) * 2001-09-05 2010-10-05 Voice Signal Technologies Inc. Word recognition using choice lists
US7711570B2 (en) * 2001-10-21 2010-05-04 Microsoft Corporation Application abstraction with dialog purpose
WO2003036520A1 (en) * 2001-10-23 2003-05-01 Visto Corporation System and method for merging remote and local data in a single user interface
US6898567B2 (en) * 2001-12-29 2005-05-24 Motorola, Inc. Method and apparatus for multi-level distributed speech recognition
US7062444B2 (en) * 2002-01-24 2006-06-13 Intel Corporation Architecture for DSR client and server development platform
US6993482B2 (en) * 2002-12-18 2006-01-31 Motorola, Inc. Method and apparatus for displaying speech recognition results
US7197331B2 (en) * 2002-12-30 2007-03-27 Motorola, Inc. Method and apparatus for selective distributed speech recognition
US7461352B2 (en) * 2003-02-10 2008-12-02 Ronald Mark Katsuranis Voice activated system and methods to enable a computer user working in a first graphical application window to display and control on-screen help, internet, and other information content in a second graphical application window
US20040254787A1 (en) * 2003-06-12 2004-12-16 Shah Sheetal R. System and method for distributed speech recognition with a cache feature
DE602004003497T2 (de) * 2003-06-30 2007-09-13 Koninklijke Philips Electronics N.V. System und verfahren zur erzeugung einer multimedia-zusammenfassung von multimedia-strömen
US7437353B2 (en) * 2003-12-31 2008-10-14 Google Inc. Systems and methods for unification of search results
US7548977B2 (en) * 2005-02-11 2009-06-16 International Business Machines Corporation Client / server application task allocation based upon client resources
US20060235684A1 (en) * 2005-04-14 2006-10-19 Sbc Knowledge Ventures, Lp Wireless device to access network-based voice-activated services using distributed speech recognition
US20070061335A1 (en) * 2005-09-14 2007-03-15 Jorey Ramer Multimodal search query processing
US8370334B2 (en) * 2006-09-15 2013-02-05 Emc Corporation Dynamic updating of display and ranking for search results
US8464295B2 (en) * 2006-10-03 2013-06-11 Verizon Patent And Licensing Inc. Interactive search graphical user interface systems and methods
US20080154612A1 (en) * 2006-12-26 2008-06-26 Voice Signal Technologies, Inc. Local storage and use of search results for voice-enabled mobile communications devices
US20080162472A1 (en) * 2006-12-28 2008-07-03 Motorola, Inc. Method and apparatus for voice searching in a mobile communication device
WO2008091727A1 (en) * 2007-01-23 2008-07-31 Johnson Controls Technology Company Mobile device gateway systems and methods
US8996379B2 (en) * 2007-03-07 2015-03-31 Vlingo Corporation Speech recognition text entry for software applications
US8886545B2 (en) * 2007-03-07 2014-11-11 Vlingo Corporation Dealing with switch latency in speech recognition
US8949130B2 (en) * 2007-03-07 2015-02-03 Vlingo Corporation Internal and external speech recognition use with a mobile communication facility
US8074103B2 (en) * 2007-10-19 2011-12-06 Oracle International Corporation Data corruption diagnostic engine
US8423362B2 (en) * 2007-12-21 2013-04-16 General Motors Llc In-vehicle circumstantial speech recognition
WO2009102885A1 (en) * 2008-02-12 2009-08-20 Phone Through, Inc. Systems and methods for enabling interactivity among a plurality of devices
US8019608B2 (en) * 2008-08-29 2011-09-13 Multimodal Technologies, Inc. Distributed speech recognition using one way communication
US7933777B2 (en) * 2008-08-29 2011-04-26 Multimodal Technologies, Inc. Hybrid speech recognition
US8224644B2 (en) * 2008-12-18 2012-07-17 Microsoft Corporation Utterance processing for network-based speech recognition utilizing a client-side cache
US7958109B2 (en) * 2009-02-06 2011-06-07 Yahoo! Inc. Intent driven search result rich abstracts
US8332225B2 (en) * 2009-06-04 2012-12-11 Microsoft Corporation Techniques to create a custom voice font
US9111540B2 (en) * 2009-06-09 2015-08-18 Microsoft Technology Licensing, Llc Local and remote aggregation of feedback data for speech recognition
US8892439B2 (en) * 2009-07-15 2014-11-18 Microsoft Corporation Combination and federation of local and remote speech recognition
US8682669B2 (en) * 2009-08-21 2014-03-25 Synchronoss Technologies, Inc. System and method for building optimal state-dependent statistical utterance classifiers in spoken dialog systems
US20110067059A1 (en) * 2009-09-15 2011-03-17 At&T Intellectual Property I, L.P. Media control
US8438030B2 (en) * 2009-11-25 2013-05-07 General Motors Llc Automated distortion classification
US20110184740A1 (en) * 2010-01-26 2011-07-28 Google Inc. Integration of Embedded and Network Speech Recognizers

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090204409A1 (en) * 2008-02-13 2009-08-13 Sensory, Incorporated Voice Interface and Search for Electronic Devices including Bluetooth Headsets and Remote Systems
US20090271200A1 (en) * 2008-04-23 2009-10-29 Volkswagen Group Of America, Inc. Speech recognition assembly for acoustically controlling a function of a motor vehicle

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Heungkyu Lee et al., ‘Speech Interactive Agent on Car Navigation System using embedded ASR/SDR/TTS’, Speech Sciences, 11(2), pp.181~192, June 2004.*

Also Published As

Publication number Publication date
EP2529372A1 (en) 2012-12-05
US20120084079A1 (en) 2012-04-05
US8868428B2 (en) 2014-10-21
WO2011094215A1 (en) 2011-08-04
AU2011209760A1 (en) 2012-08-16
EP3477637B1 (en) 2021-08-11
US8412532B2 (en) 2013-04-02
EP3477637A1 (en) 2019-05-01
US20110184740A1 (en) 2011-07-28
US20120310645A1 (en) 2012-12-06
EP2529372B1 (en) 2019-04-10
CN102884569A (zh) 2013-01-16
KR20130018658A (ko) 2013-02-25
CN102884569B (zh) 2014-11-05
CA2788088A1 (en) 2011-08-04
AU2011209760B2 (en) 2013-12-05

Similar Documents

Publication Publication Date Title
KR101770358B1 (ko) 내장형 및 네트워크 음성 인식기들의 통합
US11990135B2 (en) Methods and apparatus for hybrid speech recognition processing
AU2015210460B2 (en) Speech recognition repair using contextual information
US9865264B2 (en) Selective speech recognition for chat and digital personal assistant systems
US8170866B2 (en) System and method for increasing accuracy of searches based on communication network
US9293137B2 (en) Apparatus and method for speech recognition
KR20190100334A (ko) 문맥상의 핫워드들
RU2525440C2 (ru) Основанные на языке разметки выбор и использование распознавателей для обработки произнесения
US20120253799A1 (en) System and method for rapid customization of speech recognition models
JP2008287697A (ja) 音声チャットシステム、情報処理装置およびプログラム
US11532301B1 (en) Natural language processing
US20220020358A1 (en) Electronic device for processing user utterance and operation method therefor
CN110308886A (zh) 提供与个性化任务相关联的声音命令服务的***和方法
US11626107B1 (en) Natural language processing
AU2014200663B2 (en) Integration of embedded and network speech recognizers

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
GRNT Written decision to grant