KR102406236B1 - 대화 이해 시스템 구축 기법 - Google Patents

대화 이해 시스템 구축 기법 Download PDF

Info

Publication number
KR102406236B1
KR102406236B1 KR1020217029117A KR20217029117A KR102406236B1 KR 102406236 B1 KR102406236 B1 KR 102406236B1 KR 1020217029117 A KR1020217029117 A KR 1020217029117A KR 20217029117 A KR20217029117 A KR 20217029117A KR 102406236 B1 KR102406236 B1 KR 102406236B1
Authority
KR
South Korea
Prior art keywords
domain
intent
action
language input
computing device
Prior art date
Application number
KR1020217029117A
Other languages
English (en)
Other versions
KR20210114562A (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 KR20210114562A publication Critical patent/KR20210114562A/ko
Application granted granted Critical
Publication of KR102406236B1 publication Critical patent/KR102406236B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/30Semantic analysis
    • G06F40/35Discourse or dialogue representation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/40Processing or translation of natural language
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/38Creation or generation of source code for implementing user interfaces
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/18Speech classification or search using natural language modelling

Abstract

대화 이해(CU) 서비스에서 애셋을 이용하여 대화 이해를 위한 애플리케이션을 인에이블하는 방법은, 애플리케이션에 대하여 이용할 도메인을 결정하는 단계; 애플리케이션에서 이용할 도메인과 연관되는 애플리케이션 프로그래밍 인터페이스(API)의 선택을 수신하는 단계; API의 선택 및 결정된 도메인에 기초하여 CU 서비스에 대하여 모델을 자동으로 갱신하는 단계; 및 모델을 CU 서비스에 이용 가능하게 만드는 단계를 포함한다.

Description

대화 이해 시스템 구축 기법{BUILDING CONVERSATIONAL UNDERSTANDING SYSTEMS}
대화 이해(CU: conversational understanding) 시스템은 다양한 애플리케이션에 이용된다. 예컨대, CU 시스템은 사용자가 콘텐트를 검색하거나, 아이템을 구매하거나, 방향을 취득하는 등을 할 수 있게 개발되고 있다. CU 개발 프로세스는, CU 구축 프로세스의 각 단계에서, 과학자 및 컴퓨터 언어학자와 같은 전문가를 이용한다. 예컨대, CU 애플리케이션의 생성시에 사용되는 데이터의 레이블링(labeling)에 전문가가 이용된다.
본 개요는 후속하여 발명의 상세한 설명 부분에서 설명되는 개념들 중 선택된 것들을 단순화된 형태로 소개하고자 제공되는 것이다. 본 개요는 청구항의 청구대상의 핵심적인 특징이나 필수적인 특징들을 밝히고자 함이 아니며, 청구항의 청구대상의 범위를 결정하는 데 도움이 되고자 함도 아니다.
개발자는 CU 서비스 또는 플랫폼에서 이용 가능한 애셋(asset) 및 툴(tool)의 도움으로 대화 이해(CU) 시스템을 구축할 수 있다. 툴 및 애셋은 개발자가 CU용 애플리케이션을 이용할 수 있게 하는 한편, CU 서비스와 상호작용해서 해당 CU 서비스를 확장할 수 있게 하도록 제공된다. 툴은 레이블링 툴, 트레이닝 툴, 타당성 검증 툴 등과 같은 다양한 툴을 포함하지만, 이들에 한정되는 것은 아니다. 툴은 기존 도메인에서 커버리지(coverage)를 선택하고, 하나 이상의 도메인의 커버리지를 확장하고, 또한 CU 서비스에서 신규 도메인을 생성하는 데 이용될 수 있다. 예컨대, 개발자는 애플리케이션에 포함시키기 위해 CU 서비스 내의 하나 이상의 기존 도메인(예컨대, 날씨, 경재, 뉴스, 스포츠, ...)으로부터 하나 이상의 애플리케이션 프로그래밍 인터페이스(API)를 선택할 수 있다. 개발자는 CU 서비스 내의 모델을 갱신하는 데 사용되는 데이터를 개발자가 레이블링하는 것을 돕기 위해 툴에 의해 분석되는 예시적인 자연 언어(NL) 문장을 제공할 수 있다. 예컨대, 툴은 개발자가 예시적인 NL 문장으로부터 도메인을 식별하고, 인텐트 액션(intent actions)을 결정하고, 인텐트 객체(intent objects)를 결정하고, 슬롯(slots)을 결정하는 것을 도울 수 있다. 툴은 예시적인 NL 문장에 대하여 가능한 레이블을 자동으로 결정하는 한편, 사용자가 신규 도메인, 인텐트 액션, 인텐트 객체 및 슬롯을 생성하는 것을 허용한다. 예컨대, 툴은 개발자가 인텐트 및 슬롯에 대하여 그 자신의 태그를 추가하거나 또는 자동으로 결정된 태그를 선택하는 데 이용될 수 있다. 개발자가 예시적인 NL 문장의 전부 또는 일부에 태그를 붙인 후에, CU 서비스 내의 모델은 자동으로 갱신되고 타당성 검증이 이루어진다. 예컨대, 타당성 검증 툴은 테스트 데이터에 대한 모델의 정밀도를 결정하는 데 이용될 수 있다.
도 1은 대화 이해 서비스와 상호작용하기 위한 애플리케이션을 생성하는 개발자용 툴을 포함하는 시스템을 도시한 것이다.
도 2는 예시적인 NL 문장을 레이블링하기 위한 예시적인 그래픽 사용자 인터페이스를 도시한 것이다.
도 3은 대화 이해 서비스와 상호작용하기 위한 애플리케이션을 생성하는 툴을 이용하는 프로세스를 도시한 것이다.
도 4는 도메인 모델, 인텐트 모델, 또는 슬롯 모델을 짜맞추는 것에 의해 또는 신규 모델을 트레이닝하기 위해 하위 데이터를 결합하는 것에 의해 맞춤형 모델을 구축하기 위해 예시적인 자연 언어 문장으로부터 도메인, 액션, 및 객체를 자동으로 검출하는 프로세스를 도시한 것이다.
도 5는 대화 이해 시스템과 연관되는 도메인을 추가 또는 갱신하는 프로세스를 도시한 것이다.
도 6은 기존의 도메인으로부터 인텐트(또는 인텐트 액션 및/또는 객체)를 재사용함으로써 신규 도메인을 대화 이해 시스템에 추가하기 위해 기존의 도메인을 이용하는 예시적인 테이블을 도시한 것이다.
도 7은 제공된 툴을 이용하여 개발자에 의해 생성된 기능을 이용해서 애플리케이션과 상호작용하는 대화 이해 시스템을 도시한 것이다.
도 8은 대화 이해 애플리케이션을 개발하기 위한 툴을 제공하는 예시적인 온라인 시스템을 도시한 것이다.
도 9, 도 10a, 도 10b 및 도 11 및 관련 기재는 본 발명의 실시예가 실시될 수 있는 다양한 운영 환경의 논의를 제공한다.
이하에서는 도면을 참조하여 다양한 실시예를 설명하며, 도면에서 유사한 참조번호는 유사한 요소들을 나타낸다.
도 1은 대화 이해 서비스와 상호작용하기 위한 애플리케이션을 생성하기 위해 개발자용 툴을 포함하는 시스템을 도시한 것이다.
도시된 바와 같이, 시스템(100)은 대화 이해(CU) 서비스(105), 개발 관리자(26), 애플리케이션 프로그래머 인터페이스(API)(120), 모델(140), 데이터(150), 레이블링 툴(160), 트레이닝 툴(170), 타당성 검증 툴(180), 애플리케이션(110) 및 터치 스크린 입력 장치(115)를 포함한다.
일반적으로, CU 서비스(105)와 같은 목표 지향적 CU 서비스에서의 자연 언어 이해(Natural Language Understanding(NLU))는, 자연 언어(NL)로 표현되는, 사용자의 도메인(들) 및 인텐트(들)의 식별에 지향되어 있고, 연관된 인수(arguments) 또는 슬롯을 추출하는 것이다. 예컨대, 항공사 도메인에 있어서, 사용자는 운항 정보를 요청(예컨대, "다음주에 뉴욕에서 보스톤으로 가는 항공편이 있습니까(I want to fly to Boston from New York next week)")하곤 한다. 사용자가 자연 언어를 이용해서 영화를 검색하고 해당 영화를 자연 언어 커맨드로 재생하곤 하는 영화 도메인에 있어서는, 다수의 상이한 슬롯 유형(예컨대, 영화 배우, 영화 출시일, 영화 등급 등)이 존재한다. NLU 시스템의 종래의 트레이닝은 전문가에 의해 수동으로 레이블링(도메인, 인텐트, 및 슬롯)되거나 또는 자동으로 레이블링되고 전문가에 의해 검사되는 쿼리(queries)를 이용한다.
개발 관리자(26)는 CU 서비스(105)와 상호작용하기 위한 애플리케이션을 개발 및 구축함에 있어서 개발자를 돕는 툴을 제공하도록 구성된다. 툴은 레이블링 툴(160), 트레이닝 툴(170), 타당성 검증 툴(180) 등과 같은 다양한 툴을 포함하지만, 이들에 한정되는 것은 아니다.
기존의 도메인에서 커버리지를 선택하고, 하나 이상의 도메인을 확장하고, 또한 CU 서비스와 상호작용하는 신규 도메인을 생성하는 데 상이한 툴들이 이용될 수 있다. 예컨대, 개발자는 애플리케이션에 의해 액세스되는 CU 서비스(105) 내의 하나 이상의 기존의 도메인(예컨대, 날씨, 경제, 뉴스, 스포츠, ...)으로부터 하나 이상의 애플리케이션 프로그래밍 인터페이스(API)(120)를 선택할 수 있다. 일반적으로, 도메인은 이해를 위해 CU 서비스가 트레이닝되는 액션 세트와 연관되는 영역(예컨대, 영화 도메인, 음악 도메인, 책 도메인, 게임 도메인, 항공 도메인, ...)이다. 도메인은 특정 영역에 관련되는 것이 보통이지만, 하나 이상의 영역을 포함할 수도 있다. 개발자는 툴을 이용해서 CU 서비스(105)에서 도메인을 확장하거나 또는 신규 도메인을 생성할 수도 있다.
일 실시예에 따르면, CU 서비스가 추가되는 각각의 도메인에 대해서는, 새롭게 추가된 도메인을 반영하기 위해 일정한 수의 기존의 모델(140)이 갱신된다. 일 실시예에 따르면, 모델은 도메인 모델, 인텐트 액션 모델, 인텐트 객체 모델 및 슬롯 모델을 포함한다. 다른 실시예에 따르면, 신규 모델은 신규 도메인의 추가시에 생성될 수 있다.
데이터(150)는 대화 이해를 위한 애플리케이션을 생성하는 것 및 인에이블하는 것에 관련되는 데이터를 포함한다. 일 실시예에 따르면, 애플리케이션은 CU 서비스(105)와 상호작용한다. 예컨대, 데이터(150)는 CU 서비스(105)의 모델을 트레이닝하는 데 사용되는 트레이닝 데이터, CU 서비스(105)에 관련되는 하나 이상의 스키마, CU 서비스(105)에서 기존의 도메인을 확장하거나 또는 신규 도메인을 생성하는 데 사용되는 예시적인 데이터(예컨대, 예시적인 NL 문장) 등을 포함할 수 있다. 일 실시예에 따르면, 트레이닝 데이터와 같은 데이터는 도메인 및 인텐트에 걸쳐서 공유될 수 있다. 예컨대, 인텐트 액션에 대한 트레이닝 데이터는 다양한 도메인에 걸쳐서 공통될 수 있다.
레이블링 툴(160)은 개발자가 원하는 도메인, 인텐트 및 슬롯에 대하여 데이터를 레이블링하는 것을 돕는 데 이용될 수 있다. 예컨대, 레이블링 툴(160)은 개발자가 인텐트 및 슬롯에 대하여 그 자신의 태그를 추가하는 데 이용될 수 있다. 개발자는 어떤 기존의 도메인, 인텐트 액션, 인텐트 객체, 및 슬롯을 사용할지와, 추가적인 커버리지를 CU 서비스(105)에 어떻게 포함시킬지를 결정함에 있어서 개발자를 돕기 위해 레이블링 툴에 의해 분석되는 예시적인 NL 문장을 제공할 수 있다. 레이블링 툴(160)은 예시적인 NL 문장에 대하여 가능한 레이블을 자동으로 결정하고 사용자가 신규 도메인, 인텐트 액션, 인텐트 객체 및 슬롯을 생성하는 것을 허용한다. 예컨대, 툴은 개발자가 인텐트 및 슬롯에 대하여 그 자신의 태그를 추가하거나 또는 자동으로 결정된 태그를 선택하는 데 이용될 수 있다. 레이블링 툴(160)은 도메인 검출기(122), 인텐트 액션 검출기(123), 인텐트 객체 검출기(124) 및 슬롯 태깅 컴포넌트(slot tagging component)(125)를 이용할 수 있다.
도메인 검출기(122)는 상이한 NL 문장들로부터 도메인들을 식별한다. 예컨대, 개발자는 그들이 CU 서비스용으로 커버하고 싶은 예시적인 NL 문장을 제공할 수 있다. 도메인 검출기(122)는 예시로부터 단일의 도메인 또는 다수의 도메인을 식별할 수 있다. 예컨대, 도메인 검출기(122)는 하나의 예시적인 NL 문장으로부터 영화 도메인과 소셜 도메인을 모두 식별하고, 다른 예시적인 NL 문장으로부터는 영화 도메인을 식별할 수 있다. 예시로부터 검출되는 도메인은 이미 CU 서비스(105)에 의해 지원될 수 있거나 또는 그렇지 않을 수 있다. 도메인 검출기(122)의 결과는 그래픽 사용자 인터페이스(GUI)(112)에서 디스플레이될 수 있다.
인텐트 액션 검출기(123)는 현재의 예시적인 NL 문장에 대하여 인텐트 액션을 예측하도록 구성된다. 인텐트 액션은 예시적인 NL 문장에서 수행되는 액션(예컨대, 검색, 포스팅, 플레이, 구매, ...)이다. 예컨대, 인텐트 액션 검출기(123)는 취득 액션; 검색 액션; 포스팅 액션; 플레이 액션 등의 인텐트 액션을 현재의 NL 문장에 대하여 예측할 수 있다. 예측된 인텐트 액션은 예측된 인텐트 액션이 원하는 액션인지를 판정하기 위해 GUI(112)에서 개발자에게 디스플레이될 수 있다.
각각의 판정된 인텐트 액션에 대하여, 인텐트 객체 검출기(124)에 의해 하나 이상의 인텐트 객체가 식별된다. 인텐트 객체는 그 판정된 인텐트 액션에 관련되는 객체이다. 인텐트 객체는 판정된 인텐트 액션의 객체(예컨대, 영화, 사진, 아이템, ...)이다. 인텐트 객체 검출기(124)의 결과는 그래픽 사용자 인터페이스(GUI)(112)에 디스플레이될 수 있다. 일 실시예에 따르면, 인텐트(즉, 인텐트 액션과 인텐트 객체의 조합)는 현재의 예시적인 NL 문장으로부터 결정된다.
슬롯 태깅은 결정된 도메인, 인텐트 액션, 및 인텐트 객체를 이용해서 슬롯 태깅 컴포넌트(125)에 의해 수행된다. 일반적으로, 슬롯 태깅은 어떤 슬롯이 NL 문장의 단어들과 연관되는지를 식별한다. 예시적인 NL 문장은 예측을 이용해서 자동으로 태깅되고 나서, 결정시에 개발자에 의해 수정될 수 있다. 예컨대, 개발자는 GUI(112)를 이용해서 태깅을 변경할 수 있다. 슬롯 태깅 컴포넌트(125)의 결과는 그래픽 사용자 인터페이스(GUI)(112)에 디스플레이될 수 있다.
트레이닝 툴(170)은 CU 서비스(105)의 모델을 갱신하는 데 이용될 수 있는 상이한 툴들을 포함한다. 예컨대, 개발자는 추가적인 트레이닝 데이터로 하나 이상의 모델을 갱신하기 위해 트레이닝 툴을 선택할 수 있다.
타당성 검증 툴(180)은 개발자가 갱신된 모델의 정밀도를 결정하는 데 이용될 수 있다. 예컨대, 타당성 검증 툴(180)은 모델을 이용해서 얻어지는 결과를 예측된 결과와 비교하는 데 이용될 수 있다. 타당성 검증 툴(180)은 또한 개발자가 개별적인 예시가 정확하게 처리되는지를 확인하는 데 이용될 수 있다. 타당성 검증 툴(180)이 결과가 부정확하다고 지시할 경우에, 결과는 (예컨대, 레이블을 변경함으로써) 수정될 수 있다.
개발 관리자(26)와의 통신을 용이하게 하기 위해, 하나 이상의 콜백(callback) 루틴이 구현될 수 있다. 실시예에 따르면, 애플리케이션 프로그램(110)은 스피치(speech) 입력 및 터치 감응식 입력 장치(115) 또는 다른 입력 장치로부터의 입력을 수신하도록 구성되는 다모드(multimodal) 애플리케이션이다. 예를 들어, 음성 입력, 키보드 입력(예컨대, 물리적 키보드 및/또는 SIP), 비디오 기반 입력 등이다. 애플리케이션 프로그램(110)은 또한 다모드 출력(예컨대, 스피치, 그래픽, 진동, 사운드, ...)을 제공할 수 있다. 개발 관리자(26)는 사용자 입력(예컨대, 스피치, 제스처)에 응답하여 애플리케이션(110)에 대하여 정보를 제공할 수 있다. 예컨대, 사용자는 애플리케이션(110)에 의해 수행할 태스크를 식별하기 위해 구절(예컨대, 영화를 선택, 아이템을 구매, 제품을 식별, ...)을 말할 수 있다. 제스처는 집기(pinch) 제스처; 스트레치 제스처; 선택 제스처(예컨대, 디스플레이된 요소에 대한 탭 액션); 선택 및 유지 제스처(예컨대, 디스플레이된 요소에 대하여 수신된 탭 및 유지 제스처); 스와이핑(swiping) 액션 및/또는 드래깅 액션 등을 포함할 수 있지만, 이들에 한정되는 것은 아니다. 제스처는 또한 웨이브 제스처, 스크롤 제스처, 가이드 제스처 등과 같은 선택적으로 캡처된 제스처를 포함할 수 있다. 예컨대, MICROSOFT KINECT와 같은 장치를 이용해서 제스처를 검출할 수 있다.
예시된 바와 같은 시스템(100)은 터치 입력(예컨대, 터치 스크린을 손가락으로 터치하는 행위 또는 거의 터치하는 행위)이 언제 수신되었는지를 검출하는 터치 스크린 입력 장치(115)를 포함한다. 임의의 유형의 터치 스크린을 이용해서 사용자의 터치 입력을 검출할 수 있다. 상세한 내용은 아래에 제공된다.
도 2는 예시적인 NL 문장을 레이블링하기 위한 예시적인 그래픽 사용자 인터페이스를 도시한다.
예시된 바와 같이, 도 2는 현재의 NL 예시 문장(205), 도메인 섹션(210), 인텐트 액션 섹션(220), 인텐트 객체 섹션(230), 및 슬롯 섹션(240)을 포함하는 그래픽 사용자 인터페이스(GUI)(200)를 도시한다.
일 실시예에 따르면, CU 서비스는 하나 이상의 도메인에 대하여 트레이닝되는, 도메인 모델, 하나 이상의 인텐트 모델 및 슬롯 모델을 포함하는 모델 세트를 포함한다. 설명을 위해, 하기의 예시는 게임 도메인, 영화 도메인, 음악 도메인, 및 포괄적 커맨드 도메인을 포함하는 4개의 상이한 도메인에 대하여 트레이닝되는 CU 서비스에 관련된다. CU 서비스에 대하여 모델을 트레이닝하는 데 사용되는 데이터에는 주석이 달린다. 상술한 바와 같이, 레이블링 툴은 개발자가 모델을 갱신하는 데 사용된 데이터에 레이블링하는 것을 돕는 데 이용될 수 있다.
현재의 예시에 있어서, 개발자는 스포츠 및 가능한 다른 도메인에 관련되는 예시적인 NL 문장을 제출했다. 일반적으로, 예시적인 NL 문장은 개발되는 애플리케이션과 사용자가 어떻게 상호작용하게 되는지를 예시하는 문장이다. 예컨대, 스포츠 애플리케이션에서, 도메인은 스포츠 도메인, 날씨 도메인, 영화 도메인, 포괄적 커맨드 도메인 등에 관련되는 정보를 포함할 수 있다.
개발자에 의해 제출된 각각의 예시적인 NL 문장은 레이블링 툴에 의해 처리될 수 있다. 예시적인 NL 문장을 이용해서 추가적인 NL 문장이 자동으로 발생될 수도 있다. 예컨대, 예시적인 NL 문장과 동일한 의미를 나타내는 다른 방식들을 내포하는 강화된 문장 리스트를 자동으로 발생시키는 문장 환언(rephrasing) 툴을 이용해서 예시적인 NL 문장이 환언될 수 있다.
GUI(200)는 예시적인 NL 문장(205), 즉 "코비 브라이언트의 점프 슛 사진들을 보여달라(Show me Kobe Bryant jump shot pictures)"의 처리를 도시한다.
도메인 섹션(210)은 예시적인 NL 문장(205)에 대하여 도메인 검출기를 실행한 결과를 도시한다. 도메인 검출기는 자동으로 실행될 수 있거나 또는 수동으로 실행될 수 있다. 예컨대, 개발자는 도메인 검출기를 실행하기 위해 도메인(Domain) 옵션(212)을 선택할 수 있다. 예시된 바와 같이, 도메인 검출기는 예시적인 NL 문장(205) 및 도메인에 대한 신뢰도 점수(confidence score)에 관련되는 CU 서비스 내의 가용 도메인들로부터 도메인을 식별한다. 신뢰도 점수는 예시적인 NL 문장에 대하여 도메인이 정확하게 식별되는지의 여부에 대한 지시를 개발자에게 제공한다. 일 실시예에 따르면, 신뢰도 점수는 0과 1 사이의 범위이며, 여기서는 점수가 높을수록 낮은 점수에 비해 도메인이 예시적인 NL 문장에 더 관련됨을 의미한다. 개발자는 (도메인 옆에 디스플레이된 박스를 선택함으로써) 제안된 도메인들 중 하나를 택하거나 또는 도메인 추가(Add Domain) 옵션(214)을 선택함으로써 그 자신의 도메인을 추가할 수 있다. 현재의 예시에서는, 개발자가 신규 "스포츠(Sports)" 도메인을 추가했다.
인텐트 액션 섹션(220)은 예시적인 NL 문장(205)에 대하여 인텐트 액션 검출기를 실행한 결과를 도시한다. 인텐트 액션 검출기는 자동으로 실행될 수 있거나 또는 수동으로 실행될 수 있다. 예컨대, 개발자는 인텐트 액션 검출기를 실행하기 위해 인텐트 액션(Intent Action) 옵션(222)을 선택할 수 있다. 인텐트 액션 분류기의 실행에 응답하여, 가장 공산이 큰 인텐트 액션(예컨대, 가장 높은 N 결과)이 신뢰도 점수와 함께 디스플레이된다. 개발자는 또한 모델에 이미 내포되어 있는 디스플레이된 인텐트 액션 레이블을 이용하는 예시적인 NL 문장을 확인하기 위해 예시 확인(See Examples) 옵션(226)을 선택할 수 있다. 개발자는 예시적인 NL 문장을 예시 문장들과 비교해서 제안된 인텐트 액션들 중 하나를 택하도록 결정하거나, 또는 개발자는 예시적인 NL 문장을 레이블링하기 위해 그 자신의 인텐트 액션을 추가하도록 선택할 수 있다. 예컨대, 사용자는 인텐트 액션 추가(Add Intent Action) 옵션(224)을 선택할 수 있다.
인텐트 객체 섹션(230)은 예시적인 NL 문장(205)에 대하여 인텐트 객체 검출기를 실행한 결과를 도시한다. 인텐트 객체 검출기는 자동으로 실행될 수 있거나 또는 수동으로 실행될 수 있다. 예컨대, 개발자는 인텐트 객체 검출기를 실행하기 위해 인텐트 객체(Intent Object) 옵션(232)을 선택할 수 있다. 인텐트 객체 분류기의 실행에 응답하여, 가장 공산이 큰 인텐트 객체(예컨대, 가장 높은 N 결과)가 신뢰도 점수와 함께 디스플레이된다. 개발자는 또한 모델에 이미 내포되어 있는 디스플레이된 인텐트 객체 레이블을 이용하는 예시적인 NL 문장을 확인하기 위해 예시 확인(See Examples) 옵션(236)을 선택할 수 있다. 개발자는 예시적인 NL 문장을 예시 문장들과 비교해서 제안된 인텐트 객체들 중 하나를 택하도록 결정하거나, 또는 개발자는 예시적인 NL 문장을 레이블링하기 위해 그 자신의 인텐트 객체를 추가하도록 선택할 수 있다. 예컨대, 사용자는 인텐트 객체 추가(Add Intent Object) 옵션(234)을 선택할 수 있다.
슬롯 섹션(240)은 예시적인 NL 문장(205)에서 엔티티를 슬롯 태깅한 결과를 도시한다. 슬롯 태깅은 자동으로 실행될 수 있거나 또는 수동으로 실행될 수 있다. 예컨대, 개발자는 슬롯 태깅을 실행하기 위해 슬롯 태깅(Slot Tagging) 옵션(242)을 선택할 수 있다. 슬롯 태깅의 실행에 응답하여, 상이한 검출 슬롯들(예컨대, 가장 높은 N 결과)이 신뢰도 점수와 함께 디스플레이된다. 개발자는 또한 모델에 이미 내포되어 있는 유사한 슬롯들을 확인하기 위해 예시 확인(See Examples) 옵션(246)을 선택할 수 있다. 개발자는 제안된 것을 택하거나 또는 문장의 순서를 강조표시하도록 선택할 수 있으며, 신규 슬롯 추가(Add New Slot) 옵션(244)을 선택함으로써 신규 슬롯 이름을 부여할 수 있다. 현재의 예시에서는, 개발자가 신규 "운동선수(Athlete)" 슬롯을 생성했다.
하나 이상의 문장에 대하여 상기 스텝들을 수행한 후에, 플랫폼은 예시적인 NL 문장의 다음 세트에 대하여 개발자에게 보다 나은 제안을 하기 위해 모델을 자동으로 갱신한다.
제시된 프로세스는 개발자들이 그들의 데이터를 기존의 데이터와 유사하게 레이블링하게 만든다.
도 3 내지 도 5는 대화 이해 시스템을 구축하기 위해 툴을 이용하는 프로세스를 예시한다. 본 명세서에 제시된 처리 순서에 대한 논의를 참고할 때, 다양한 실시예들의 논리적인 동작들은 (1) 컴퓨팅 시스템에서 실행되는 컴퓨터 구현 동작 또는 프로그램 모듈들의 시퀀스 및/또는 (2) 컴퓨팅 시스템 내에서의 상호접속된 머신 로직 회로 또는 회로 모듈들로서 구현된다는 것을 이해해야 한다. 이러한 구현은 본 발명을 구현하는 컴퓨팅 시스템의 성능 요건에 따른 선택의 문제이다. 따라서, 본 명세서에 기술된 실시예들을 구성하는 예시된 논리적 동작들은 동작, 구조적 장치, 액트 또는 모듈로서 다양하게 지칭된다. 이들 동작, 구조적 장치, 액트 및 모듈은 소프트웨어, 펌웨어, 특수 목적 디지털 로직, 및 이들의 임의의 조합으로 구현될 수 있다.
도 3은 대화 이해 서비스와 상호작용하기 위한 애플리케이션을 생성하기 위해 툴을 이용하는 프로세스를 도시한다.
개시 동작 이후에, 프로세스(300)는 동작(310)으로 이동하고, 여기서는 CU 애플리케이션을 개발 및 가능하게 하기 위한 툴이 디스플레이된다. 툴은 개발자가 대화 이해(CU) 시스템 및 서비스와 상호작용하기 위한 애플리케이션을 구축할 수 있게 하기 위해 제공된다. 툴은 API 선택 툴, 레이블링 툴, 트레이닝 툴, 타당성 검증 툴 등과 같은 다양한 툴을 포함하지만, 이들에 한정되는 것은 아니다. 툴은 기존의 도메인으로부터 기능을 선택하고, 하나 이상의 도메인을 확장하고, 또한 신규 도메인을 생성하는 데 사용될 수 있다.
동작(320)으로 이행하면, 툴은 애플리케이션뿐만 아니라 애플리케이션용의 상응하는 API에서 어떤 도메인을 사용할지를 결정하는 데 이용된다. 예컨대, 도메인 검출기는 개발되는 애플리케이션에 관련되는 CU 서비스에서 기존의 도메인을 식별하는 데 이용될 수 있다. 사용자는 또한 하나 이상의 도메인과 연관되는 하나 이상의 기존의 API를 선택할 수 있다.
결정 동작(330)으로 이동하면, 도메인에 대한 갱신이 있는지의 여부 또는 도메인이 CU 시스템에 추가되는지의 여부에 대하여 판정이 이루어진다. 도메인에 대한 갱신이 없거나 또는 도메인이 추가되지 않는 경우에는, 프로세스는 동작(350)으로 이동한다. 도메인에 대한 갱신이 있거나 또는 도메인이 추가되는 경우에는, 프로세스는 동작(340)으로 이동한다.
동작(340)에서, 툴은 모델의 갱신 및 타당성 검증에 이용된다. 예컨대, 레이블링 툴, 트레이닝 툴 및 타당성 검증 툴은 개발자가 개발되고 있는 애플리케이션에 대한 커버리지를 포함하도록 CU 서비스를 갱신하는 데 이용될 수 있다.
동작(350)으로 이동하면, CU 시스템 내의 모델이 애플리케이션에 의해 이용된다. 모델은 하나 이상의 애플리케이션에 의해 이용될 수 있다.
이후, 프로세스는 종료 동작으로 이동하고, 다른 액션의 처리로 복귀한다.
도 4는 도메인 모델, 인텐트 모델, 또는 슬롯 모델을 짜맞추는 것에 의해 또는 신규 모델을 트레이닝하기 위해 하위 데이터를 결합하는 것에 의해 맞춤형 모델을 구축하기 위해 예시적인 자연 언어 문장으로부터 도메인, 액션, 및 객체를 자동으로 검출하는 프로세스를 도시한다.
개시 동작 이후에, 프로세스(400)는 동작(410)으로 이동하고, 여기서는 예시적인 NL 문장이 수신된다. 예시적인 NL 문장들은 상이한 형태들로 수신될 수 있다. 예컨대, 예시는 문장 또는 발언의 형태로 될 수 있다. 예컨대, 예시적인 NL 문장은 "톰 크루즈의 최신 영화를 검색하라(find the most recent tom cruise movie)"일 수 있다. 다른 예시는 "소셜 네트워크 사이트 X에 대하여 이 링크를 포스팅하라(post this link on social network site X)"일 수 있다.
동작(420)으로 이동하면, 예시적인 NL 문장에 연관된 도메인이 검출된다. 일반적으로, 도메인은 액션 세트와 연관되는 영역(예컨대, 영화 도메인, 음악 도메인, 책 도메인, 게임 도메인, 항공 도메인, ...)이다. CU 서비스의 도메인 모델에 이미 내포되어 있는 도메인에 의존하여 0개 또는 그 이상의 도메인이 검출될 수 있다. 예컨대, 도메인 모델은 초기에 하나의 도메인(예컨대, 영화)을 포함할 수 있으며, 이후, 이 도메인이 다른 도메인(예컨대, 소셜)을 포함하도록 확장된다. 보다 많은 도메인들이 도메인 모델에서 추가 또는 제거될 수 있다. 상기에 제공된 예시에 있어서, 2개의 상이한 도메인이 검출될 수 있다(예컨대, 영화 및 소셜).
동작(430)으로 이동하면, 검출된 도메인 각각과 연관되는 인텐트 액션(들)을 결정하기 위해 도메인 검출의 출력이 사용된다. 하나 이상의 인텐트 액션이 검출될 수 있다. 인텐트 액션은 수행되어야 할 액션(예컨대, 검색, 포스팅, 플레이, 구매, ...)이다. 상기에 제공된 예시에 있어서, 검출된 인텐트 액션은 "검색" 및 "포스팅"을 포함한다. 검출된 도메인은 임의의 인텐트 액션의 검출을 돕는 데 사용될 수 있거나, 또는 그렇지 않을 수 있다. 인텐트 액션 도메인은 인텐트 액션이 연관되는 도메인(들)에 따라 상이한 인텐트 액션들을 태깅할 수 있다. 예컨대, 인텐트 액션 "검색"은 다수의 상이한 도메인(예컨대, 영화, 게임, 책, 항공, ...)과 연관될 수 있는 반면, 인텐트 액션 "포스팅"은 단일의 도메인(예컨대, 소셜)과 연관될 수 있다.
동작(440)으로 이행하면, 인텐트 객체(들)가 검출된다. 각각의 결정된 인텐트 액션에 대하여, 하나 이상의 인텐트 객체가 식별된다. 인텐트 객체는 그 결정된 인텐트 액션에 관련되는 객체이다. 인텐트 객체는 결정된 인텐트 액션의 객체(예컨대, 영화, 사진, 아이템, ...)이다. 상기에 제공된 예시에 있어서, 검출된 인텐트 객체는 "영화" 및 "사진"을 포함한다.
동작(450)으로 이동하면, 슬롯 태깅이 수행된다. 하나 이상의 슬롯 모델이 사용될 수 있다. 상기에 제공된 예시에 있어서, 영화 슬롯 모델에 대한 슬롯은 "최신(most recent)"으로 설정되는 ReleaseDate(출시일) 슬롯, "톰 크루즈(Tom Cruise)"로 설정되는 MovieStar(영화배우) 슬롯, "영화(movie)"로 설정되는 MovieType(영화 유형) 슬롯, 및 "사진(picture)"으로 설정되는 ItemType(아이템 유형) 슬롯을 포함한다. 소셜 미디어 슬롯 모델에 대한 슬롯은 "X"로 설정되는 SocialMedia(소셜 미디어) 슬롯을 포함한다. 다른 도메인들은 다른 유형의 슬롯을 포함할 수 있다. 예컨대, 여행 도메인은 출발 장소, 출발 시간, 도착 시간, 도착 목적지, 여행 방법, 제약사항(예컨대, 최저 비용, 도중하차 없음, 등)에 대한 슬롯을 포함할 수 있다. 식사 도메인은 요리 유형, 시간, 파티 사이즈, 예약 필요성, 및 관련 장소(예컨대, 도보 거리 내, 접속역(transit station), 등)에 대한 슬롯을 포함할 수 있다. 개발자는 슬롯 모델에 하나 이상의 슬롯을 추가할 수 있다. 예컨대, 여행 도메인에 대한 슬롯 모델은 여행 방법에 대한 슬롯을 포함하지 않을 수 있다. 발언을 태깅하는 제안된 예시를 이용해서, 개발자는 신규 슬롯을 생성할 수 있다.
동작(460)으로 이동하면, CU 시스템에 대한 모델은 갱신 또는 커스터마이징된다. 일 실시예에 따르면, 신규 모델이 트레이닝될 수 있다.
이후, 프로세스는 종료 동작으로 이동하고, 다른 액션들의 처리로 복귀한다.
도 5는 대화 이해 시스템과 연관되는 도메인을 추가 또는 갱신하는 프로세스를 도시한다.
개시 동작 후에, 프로세스(500)는 동작(510)으로 이동하고, 여기서는 CU 서비스에 갱신 또는 추가할 도메인이 결정된다. 하나 이상의 모델이 갱신 또는 생성될 수 있다. 일 실시예에 따르면, 도메인 모델, 인텐트 액션 모델, 인텐트 객체 모델 및 슬롯 모델을 포함하는 4개의 모델이 갱신된다. 다른 실시예에 따르면, 2개의 신규 모델(인텐트 및 슬롯 모델)이 도메인 추가시에 생성된다.
동작(520)으로 이동하면, 도메인 모델은 추가할 신규 도메인으로 갱신된다. 설명을 위해, 이해 시스템이 현재 4개의 상이한 도메인(영화, 음악, 게임 및 포괄적 커멘드)을 지원하고 있고 스포츠 도메인이 추가되어야 한다고 가정한다. 이해 시스템에 2개의 신규 모델을 추가하는 대신에, 스포츠 도메인에 관련되는 언어가 NL 문장 내에 놓이는 경우에, 신규 스포츠 도메인을 검출하기 위해 기존의 도메인 모델이 갱신된다.
동작(530)으로 이행하면, 인텐트 액션 모델에 아직 포함되어 있지 않은 임의의 신규 인텐트 액션을 지원하기 위해 인텐트 액션 모델이 갱신된다. 신규 도메인과 연관되는 다수의 인텐트 액션은 갱신되기 전에 이미 인텐트 액션 모델에 의해 지원될 수 있다. 예컨대, 스포츠 도메인과 연관되는 "취득(get)" 및 "검색(find)" 인텐트 액션은 이미 인텐트 액션 모델에 의해 지원될 수 있다. 0개 또는 그 이상의 인텐트 액션이 인텐트 액션 모델에 추가될 수 있다(예컨대, "스케줄", ...).
동작(540)으로 이동하면, 인텐트 객체 모델에 아직 포함되어 있지 않은 임의의 신규 인텐트 객체를 지원하기 위해 인텐트 객체 모델이 갱신된다. 신규 도메인과 연관되는 다수의 인텐트 객체는 갱신되기 전에 이미 인텐트 객체 모델에 의해 지원될 수 있다. 예컨대, 이미 지원된 인텐트 객체는 "게임", "사진", "인물 정보"를 포함할 수 있다. 0개 또는 그 이상의 인텐트 객체가 인텐트 객체 모델에 추가될 수 있다(예컨대, "뉴스", ...).
동작(550)으로 이동하면, 신규 도메인을 지원하기 위해 슬롯 모델이 갱신된다. 일 실시예에 따르면, 도메인을 지원하기 위해 단일의 슬롯 모델이 사용된다. 슬롯은 하나 이상의 상이한 도메인, 액션 및 인텐트와 연관될 수 있다.
이후, 프로세스는 종료 동작으로 이동하고, 다른 액션들의 처리로 복귀한다.
도 6은 기존의 도메인으로부터 인텐트(또는 인텐트 액션 및/또는 객체)를 재사용함으로써 신규 도메인을 대화 이해 시스템에 추가하기 위해 기존의 도메인을 이용하는 예시적인 테이블을 도시한다.
설명을 위해, 예시적인 CU 서비스 내의 모델은 영화 도메인, 음악 도메인, 게임 도메인 및 포괄적 커맨드 도메인을 포함하는 4개의 상이한 도메인을 이용해서 트레이닝되지만, 이에 한정되지는 않는다. 다소간의 도메인이 모델을 트레이닝하는 데 사용될 수 있다.
현재의 예시에 있어서, 개발자는 신규 스포츠 도메인을 CU 서비스에 추가하려 한다. 일 실시예에 따르면, 개발자는 예시적인 NL 문장을 제공한다. 예시적인 NL 문장 각각에 대하여, 툴은 인텐트 액션 및 인텐트 객체를 예측한다.
테이블(600)은 예시적인 NL 문장 컬럼, 예측된 인텐트 액션 컬럼, 실제 인텐트 액션 컬럼, 예측된 인텐트 객체 컬럼, 실제 인텐트 객체 컬럼, 및 예측된 인텐트 컬럼을 포함한다. 테이블(600)은 4개의 예시적인 NL 문장을 도시한다.
테이블(600)의 참조에 의해 알 수 있듯이, 예측된 인텐트 액션은 스포츠 도메인이 현재의 CU 서비스의 일부가 아님에도 불구하고 정확하게 예측된다. 현재의 예시에 있어서, 예측된 인텐트 액션은 실제 인텐트 액션과 동일하다. 예측된 인텐트 객체는 인텐트 액션에 비해 정확하게 예측되는 것은 아니지만, 타당하다.
테이블(600) 내의 처음 2개의 NL 문장에 있어서, 처음 2개의 NL 문장 각각은 게임 또는 경기에 관련되기 때문에, 게임 도메인으로부터 "게임" 인텐트 객체 레이블이 예측된다.
3번째 NL 문장 예시는 인텐트 액션 및 인텐트 객체를 기존의 도메인과 공유하고, 정확하게 예측된다.
4번째 NL 문장 예시는, 실제 인텐트가 "뉴스 취득(get_news)"을 페치하는 것이었더라도, "인물 정보 취득(get_person_info)"을 이용해서 정보를 검색하는 오른쪽 문맥(right context)을 검출했다.
CU 서비스에서 커버된 도메인의 수가 현재의 예시에서의 4개를 넘어서 증가하기 때문에, 보다 바람직한 커버리지로 인해 예측이 더 정확해지게 된다. 실험 결과로부터, 자동으로 결정된 예측이 당시의 90% 이상 정확하다는 것을 알았다.
도 7은 제공된 툴을 이용하여 개발자에 의해 생성된 기능을 이용해서 애플리케이션과 상호작용하는 대화 이해 시스템을 예시한다.
예시된 바와 같이, 시스템(700)은 입력 관리자(710), 언어 이해 컴포넌트(720), 다이얼로그 엔진(730), 응답 생성기(740), 및 애플리케이션(770)을 포함한다.
애플리케이션(770)은 CU 서비스(705)와 상호작용하도록 구성되며 본 명세서에 기술된 바와 같은 툴을 이용해서 개발된 애플리케이션이다. 애플리케이션(770)은 CU 서비스(705)와 상호작용하기 위한 자연 사용자 인터페이스(natural user interface)(NUI) 또는 일부 다른 인터페이스를 포함할 수 있다. 예컨대, 자연 언어 다이얼로그 및 인텐트를 표현하는 다른 비언어적 양상(예컨대, 제스처, 터치, 응시, 이미지, 비디오, 구술된 운율 등)의 조합이 서비스(705)와의 상호작용에 사용될 수 있다. 예시된 바와 같이, CU 서비스(705)는 애플리케이션(770)으로부터 스피치 발언을 수신하고 사용자와 대화하도록 구성된다.
입력 관리자(710)는 애플리케이션(770)으로부터 입력(사용자 다이얼로그 액트)을 수신하도록 구성된다. 사용자 다이얼로그 액트는 상이한 유형의 사용자 입력일 수 있다. 예컨대, 사용자 다이얼로그 액트는 스피치 입력(예컨대, 발언), 터치 입력, 제스처 입력, 텍스트 입력뿐만 아니라, 다른 유형의 입력일 수 있다.
입력 관리자(710)는 자동 음성 인식기(ASR), 제스처 인식기, 필체 인식기 등과 같은 상이한 컴포넌트를 포함할 수 있다. 사용자 다이얼로그 액트가 스피치인 경우에, 스피치는 ASR을 이용해서 입력 관리자(710)에 의해 인식된다. 입력 관리자(710)는 언어 이해 컴포넌트(720)에 인도되는 텍스트를 출력한다.
언어 이해 컴포넌트(720)는 텍스트를 수신 및 분석하도록 구성된다. 일반적으로, 언어 이해 컴포넌트(720)는 의미를 텍스트의 단어들에 연관시킨다. 예컨대, 언어 이해 컴포넌트(720)는 텍스트를 태깅하고, 텍스트의 구문 해석을 수행하는 등을 할 수 있다. 언어 이해 컴포넌트(720)는 자연 언어 문장을 의미론적 표현으로 변환하는 전통적으로 규칙 기반 컴포넌트이다.
다이얼로그 엔진(730)은 사용자 다이얼로그 액트에 응답하여 머신 액션을 결정함으로써 다이얼로그를 관리한다. 다이얼로그 엔진(730)은 다이얼로그 상태 계산 컴포넌트(732)를 이용해서 가능한 다이얼로그 상태를 계산한다. 다이얼로그 관리자(734)는 머신 액션 또는 머신 액션들을 결정한다. 다이얼로그 관리자(734)에 의해 사용되는 다이얼로그 상태 정보는 다이얼로그 내에서의 현재 순번에 대한 정보뿐만 아니라 다이얼로그 내에서의 한번 이상의 지난 순번에 대한 정보를 포함한다. 다이얼로그 엔진(730)은 결정된 머신 액션을 응답 생성기(740)에 제공한다.
응답 생성기(740)는 사용자에게 어떤 유형의 응답을 제공할지를 결정한다. 예컨대, 응답 생성기(740)는 사용자에게 구술 응답을 또는 사용자에게 시각 응답을 제공하라고 결정할 수 있다. 예컨대, 텍스트-투-스피치("TTS") 컴포넌트는 결정된 때의 합성된 스피치로서 응답을 출력할 수 있다. 응답 생성기(740)는 입력에 대한 응답을 애플리케이션(770)에 제공한다.
도 8은 대화 이해 애플리케이션을 개발하기 위한 툴을 제공하는 예시적인 온라인 시스템을 예시한다.
도시된 바와 같이, 시스템(1000)은 서비스(1010), 데이터 저장부(1045), 툴(1046), 터치 스크린 입력 장치(1050)(예컨대, 슬레이트), 스마트 폰(1030) 및 디스플레이 장치(1080)를 포함한다.
도시된 바와 같이, 서비스(1010)는, 본원에서 기술되는 다이얼로그 서비스와 같은 서비스를 제공하도록 구성될 수 있는 클라우드 기반 및/또는 엔터프라이즈 기반 서비스이다. 서비스는 상이한 유형의 입력 및 출력을 사용하여 상호작용할 수 있다. 예를 들어, 사용자는 스피치 입력, 터치 입력, 하드웨어 기반 입력 등을 사용할 수 있다. 서비스(1010)에 의해 제공된 서비스들 중 하나 이상의 서비스의 기능은 클라이언트 서버 기반 애플리케이션으로서 구성될 수도 있다.
예시된 바와 같이, 서비스(1010)는 임의의 수의 테넌트(예컨대 테넌트 1 내지 N)에게 리소스(1015) 및 서비스를 제공하는 멀티테넌트 서비스이다. 멀티테넌트 서비스(1010)는, 서비스에 가입된 테넌트들에게 리소스(1015)를 제공하고 각 테넌트의 데이터를 다른 테넌트 데이터로부터 보호되도록 별도로 유지하는 클라우드 기반 서비스이다.
예시된 시스템(1000)은 터치 스크린 입력 장치(1050)(예컨대, 슬레이트 장치) 및 터치 입력이 수신된 때(예컨대, 손가락이 터치 스크린을 터치하거나 거의 터치함)를 검출하는 스마트폰(1030)을 포함한다. 사용자의 터치 입력을 검출하는 임의의 유형의 터치 스크린이 이용될 수 있다. 예를 들어, 터치 스크린은 터치 입력을 검출하는 하나 이상의 용량성 물질층을 포함할 수 있다. 용량성 물질 대신에 또는 이에 더하여 다른 센서를 사용해도 된다. 예를 들어, 적외선 센서를 사용해도 된다. 일 실시예에 따르면, 터치 스크린은 터치가능한 표면과 접촉해 있거나 또는 그 위에 있는 객체를 검출하도록 구성된다. 본 명세서에서 "위(above)"란 용어가 사용되지만, 이것은 터치 패널 시스템의 방향과는 무관함을 이해해야 한다. "위"란 용어는 그러한 모든 방향에 적용될 수 있도록 의도된다. 터치 스크린은 터치 입력이 수신되는 위치(예컨대, 시작 지점, 중간 지점 및 종료 지점)를 결정하도록 구성될 수 있다. 터치가능한 표면과 객체 사이에서의 실제 접촉은 예컨대 터치 패널에 결합된 마이크로폰 또는 진동 센서를 포함한 임의의 적절한 수단에 의해 검출될 수 있다. 접촉을 검출하기 위한 센서의 예들의 리스트는 압력 기반 메커니즘, 마이크로 머신형 가속도계, 압전 장치, 용량형 센서, 저항형 센서, 유도형 센서, 레이저 진동계, 및 LED 진동계를 포함한다.
일 실시예에 따르면, 스마트 폰(1030), 터치 스크린 입력 장치(1050), 및 장치(1080)는 다모드 입력 및 출력으로 구성되고 서비스(1010)와 상호작용하는 애플리케이션(1031, 1051, 1081)을 각각 포함하며, 툴(1046)을 이용해서 개발되었다.
예시된 바와 같이, 터치 스크린 입력 장치(1050), 스마트 폰(1030), 및 디스플레이 장치(1080)는 애플리케이션의 이용을 도시하는 예시적인 디스플레이(1052, 1032, 및 1082)를 도시한다. 데이터는 장치(예컨대, 스마트 폰(1030), 터치 스크린 입력 장치(1050)) 및/또는 몇몇 다른 장소(예컨대, 네트워크 데이터 저장부(1045))에 저장될 수 있다. 데이터 저장부(1045), 또는 몇몇 다른 저장부는 모델뿐만 아니라 다른 데이터를 저장하는 데 사용될 수 있다. 장치에 의해 사용된 애플리케이션은 클라이언트 기반 애플리케이션, 서버 기반 애플리케이션, 클라우드 기반 애플리케이션 또는 일부 조합일 수 있다. 일 실시예에 따르면, 디스플레이 장치(1080)는 디스플레이에 결합된 MICROSOFT XBOX와 같은 장치일 수 있다.
개발 관리자(26)는 본 명세서에 기술된 바와 같은 프로세스들에 관련되는 동작들을 수행하도록 구성된다. 개발 관리자(26)는 서비스(1010)와 상호작용하는 애플리케이션을 생성하기 위해 개발자에 의해 이용되는 툴(1046)에 액세스하도록 구성된다. 관리자(26)가 서비스(1010) 내부에 도시되어 있지만, 관리자의 기능은 다른 장소(예컨대, 스마트 폰(1030) 및/또는 터치 스크린 입력 장치(1050) 및/또는 장치(1080))에 포함될 수 있다.
본 명세서에 기술된 실시예들과 기능들은 데스크톱 컴퓨터 시스템, 유선 및 무선 컴퓨팅 시스템, 모바일 컴퓨팅 시스템(예컨대, 모바일 전화, 넷북, 태블릿 또는 슬레이트 타입 컴퓨터, 노트북 컴퓨터, 및 랩톱 컴퓨터), 핸드헬드 장치, 멀티프로세서 시스템, 마이크로프로세서 기반 또는 프로그램 가능 가전 제품, 미니컴퓨터, 및 메인프레임 컴퓨터를, 제한 없이 포함하는 다수의 컴퓨팅 시스템을 통해 동작할 수 있다.
또한, 본 명세서에 기술된 실시예들과 기능들은 분산 시스템(예컨대, 클라우드 기반 컴퓨팅 시스템)을 통해 동작할 수 있는데, 여기서 애플리케이션 기능, 메모리, 데이터 저장 및 검색, 및 다양한 처리 기능들이 인터넷 또는 인트라넷과 같은 분산 컴퓨팅 네트워크를 통해 서로 원격으로 동작할 수 있다. 다양한 유형의 정보 및 사용자 인터페이스가 온보드 컴퓨팅 장치의 디스플레이를 통해 또는 하나 이상의 컴퓨팅 장치와 연관된 원격 디스플레이 유닛을 통해 디스플레이될 수 있다. 예를 들어, 다양한 유형의 정보 및 사용자 인터페이스가 다양한 유형의 정보 및 사용자 인터페이스가 투영되는 월 서피스 상에서 디스플레이되고 상호작용될 수 있다. 본 발명의 실시예가 실시될 수 있는 다수의 컴퓨팅 시스템과의 상호작용은 키스트로크 입력, 터치 스크린 입력, 음성 또는 다른 오디오 입력, 제스처 입력 등을 포함하는데, 여기서 관련 컴퓨팅 장치가 컴퓨팅 장치의 기능을 제어하기 위한 사용자 제스처를 캡처하고 해석하기 위한 검출(예컨대, 카메라) 기능을 갖추고 있다.
도 9 내지 도 11 및 관련 설명은 본 발명의 실시예들을 실시하는데 이용될 수 있는 다양한 운영 환경에 대한 논의를 제공한다. 그러나, 도 9 내지 도 11과 관련하여 예시되고 논의되는 장치 및 시스템은 예시 및 설명을 위한 것이며 본 명세서에 기술된 본 발명의 실시예를 실시하기 위해 이용될 수 있는 다수의 컴퓨팅 장치 구성을 제한하는 것은 아니다.
도 9는 본 발명의 실시예들을 실시하는데 이용될 수 있는 컴퓨팅 장치(1100)의 물리적 컴포넌트(즉, 하드웨어)를 도시한 블록도이다. 후술하는 컴퓨팅 장치의 컴포넌트는 전술한 컴퓨팅 장치에 적합할 수 있다. 기본 구성에서, 컴퓨팅 장치(1100)는 적어도 하나의 처리 유닛(1102) 및 시스템 메모리(1104)를 포함할 수 있다. 컴퓨팅 장치의 구성 및 유형에 따라, 시스템 메모리(1104)는, 한정적인 것은 아니지만, 휘발성 저장부(예컨대, 랜덤 액세스 메모리), 비휘발성 저장부(예컨대, 리드 온리 메모리), 플래시 메모리, 또는 이들 메모리의 임의의 조합일 수 있다. 시스템 메모리(1104)는 운영 체제(1105)와, 개발 관리자(26)와 같은 소프트웨어 애플리케이션(1120)을 실행하는 데 적합한 하나 이상의 프로그램 모듈(1106)을 포함할 수 있다. 운영 체제(1105)는, 예컨대, 컴퓨팅 장치(1100)의 동작을 제어하는데 적합할 수 있다. 또한, 본 발명의 실시예는 그래픽스 라이브러리, 다른 운영 체제, 또는 임의의 다른 애플리케이션 프로그램과 함께 실시될 수 있으며 임의의 특정 애플리케이션 또는 시스템에 한정되지 않는다. 이 기본 구성은 도 9에 점선(1108) 내에 있는 컴포넌트들로 도시되어 있다. 컴퓨팅 장치(1100)는 부가적인 특징들 또는 기능을 가질 수 있다. 예를 들어, 컴퓨팅 장치(1100)는 예컨대, 자기 디스크, 광학 디스크, 또는 테이프와 같은 부가적인 데이터 저장 장치(착탈식 및/또는 비착탈식)를 또한 포함할 수 있다. 그러한 부가적인 저장부는 도 9에서 착탈식 저장 장치(1109) 및 비착탈식 저장 장치(1110)로 도시되어 있다.
전술한 바와 같이, 프로그램 모듈 및 데이터 파일이 시스템 메모리(1104)에 저장될 수 있다. 프로그램 모듈(1106)(예컨대, 개발 관리자(26))은 처리 유닛(1102)에서 실행되는 동안, 도면들에서 예시된 방법 및 프로세스의 하나 이상의 단계를 포함하는 프로세스를 수행할 수 있지만, 이에 한정되는 것은 아니다. 본 발명의 실시예에 따라 사용될 수 있는 다른 프로그램 모듈은 전자 메일 및 컨택트 애플리케이션, 워드 프로세싱 애플리케이션, 스프레드시트 애플리케이션, 데이터베이스 애플리케이션, 슬라이드 프리젠테이션 애플리케이션, 드로잉 또는 컴퓨터 지원 애플리케이션 프로그램 등을 포함할 수 있다.
또한, 본 발명의 실시예는 개별 전자 소자를 포함하는 전자 회로, 로직 게이트를 포함하는 패키지형 또는 집적형 전자 칩, 마이크로프로세서를 이용하는 회로, 또는 전자 소자 또는 마이크로프로세서를 포함하는 단일 칩에서 실시될 수 있다. 예를 들어, 본 발명의 실시예는 SOC(system-on-a-chip)를 통해 실시될 수 있는데, 도 9에 예시된 각각의 또는 다수의 컴포넌트들이 단일 집적 회로에 집적될 수 있다. 이러한 SOC 장치는 하나 이상의 처리 유닛, 그래픽스 유닛, 통신 유닛, 시스템 가상화 유닛 및 칩 기판 상에 단일 집적 회로로서 집적되는(또는 "버닝되는(burned)") 다양한 애플리케이션 기능을 포함할 수 있다. SOC를 통해 동작할 때, 개발 관리자(26)와 관련하여 본 명세서에서 설명한 기능은 단일 집적 회로(칩) 상의 컴퓨팅 장치(1100)의 다른 컴포넌트들과 통합된 애플리케이션 특정 로직을 통해 동작할 수 있다. 본 발명의 실시예들은, 기계, 광학, 유체공학, 및 양자 기술을 포함한, 예컨대, AND, OR, 및 NOT과 같은 논리 연산을 수행할 수 있는 다른 기술들을 이용하여 실시될 수도 있다. 또한, 본 발명의 실시예는 범용 컴퓨터 또는 임의의 다른 회로 또는 시스템에서 실시될 수도 있다.
컴퓨팅 장치(1100)는 또한 키보드, 마우스, 펜, 음성 입력 장치, 터치 입력 장치 등과 같은 하나 이상의 입력 장치(들)(1112)를 구비할 수 있다. 디스플레이, 스피커, 프린터 등과 같은 출력 장치(들)(1114) 역시 포함될 수 있다. 상술한 장치들은 예시이며, 다른 장치들이 사용될 수 있다. 컴퓨팅 장치(1100)는 다른 컴퓨팅 장치(1118)와의 통신을 허용하는 하나 이상의 통신 접속부(1116)를 포함할 수 있다. 적절한 통신 접속부(1116)의 예시로서는, RF 전송기, 수신기, 및/또는 트랜시버 회로; 범용 직렬 버스(USB), 병렬, 및/또는 직렬 포트가 있지만, 이들에 한정되는 것은 아니다.
본 명세서에서 사용된 컴퓨터 판독 가능 매체라는 용어는 컴퓨터 저장 매체를 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독 가능 명령어, 데이터 구조, 또는 프로그램 모듈과 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 착탈식 및 비착탈식 매체를 포함할 수 있다. 시스템 메모리(1104), 착탈식 저장 장치(1109) 및 비착탈식 저장 장치(1110)는 모두 컴퓨터 판독 가능 저장 매체의 예시들(즉, 메모리 저장부)이다. 컴퓨터 저장 매체는 RAM, ROM, EEPROM, 플래시 메모리 또는 기타 메모리 기술, CD-ROM, DVD(digital versatile disk) 또는 다른 광학 저장부, 자기 카세트, 자기 테이프, 자기 디스크 저장부 또는 기타 자기 저장 장치, 또는 정보를 저장하는데 사용될 수 있으며 컴퓨팅 장치(1100)에 의해 액세스될 수 있는 임의의 다른 제조 물품을 포함한다. 임의의 그러한 컴퓨터 저장 매체는 컴퓨팅 장치(1100)의 일부일 수 있다. 컴퓨터 저장 매체는 반송파 또는 기타 전파 또는 변조된 데이터 신호를 포함하지 않는다.
통신 매체는 컴퓨터 판독 가능 명령어, 데이터 구조, 프로그램 모듈, 또는 반송파나 다른 전송 메커니즘과 같은 변조된 데이터 신호 내의 기타 데이터에 의해 실현될 수 있고, 임의의 정보 전달 매체를 포함한다. "변조된 데이터 신호"란 용어는 정보를 신호로 인코드하는 것과 같은 방식으로 설정 또는 변경된 하나 이상의 특징을 갖는 신호를 의미할 수 있다. 예를 들어, 제한적인 것은 아니지만, 통신 매체는 유선 네트워크 또는 직접 유선 접속과 같은 유선 매체와, 음향, RF, 적외선 및 기타 무선 매체들과 같은 무선 매체를 포함할 수 있다.
도 10a 및 도 10b는, 예를 들어, 모바일 전화기, 스마트 폰, 태블릿 퍼스널 컴퓨터, 랩톱 컴퓨터 등과 같이, 본 발명의 실시예들을 실시하는데 이용될 수 있는 모바일 컴퓨팅 장치(1200)를 예시한 것이다. 도 10a를 참고하면, 실시예를 구현하기 위한 모바일 컴퓨팅 장치(1200)의 일 실시예가 예시되어 있다. 기본 구성에서, 모바일 컴퓨팅 장치(1200)는 입력 요소 및 출력 요소를 구비한 핸드헬드 컴퓨터이다. 모바일 컴퓨팅 장치(1200)는, 통상적으로 사용자로 하여금 모바일 컴퓨팅 장치(1200)에 정보를 입력할 수 있게 하는 디스플레이(1205) 및 하나 이상의 입력 버튼(1215)을 포함한다. 모바일 컴퓨팅 장치(1200)의 디스플레이(1205)는 또한 입력 장치(예컨대, 터치 스크린 디스플레이)로서 기능할 수 있다. 포함될 경우에는, 선택적 측면 입력 요소(1215)가 추가적인 사용자 입력을 가능하게 한다. 측면 입력 요소(1215)는 회전 스위치, 버튼, 또는 임의의 다른 유형의 수동 입력 요소일 수 있다. 대안적인 실시예에서, 모바일 컴퓨팅 장치(1200)는 다소간의 입력 요소를 포함할 수 있다. 예를 들어, 디스플레이(1205)는 일부 실시예에서 터치 스크린이 아닐 수도 있다. 또 다른 대안적인 실시예에서는, 모바일 컴퓨팅 장치(1200)가 셀룰러 폰과 같은 휴대형 전화 시스템이다. 모바일 컴퓨팅 장치(1200)는 또한 선택적 키패드(1235)를 포함할 수 있다. 선택적 키패드(1235)는 물리적 키패드 또는 터치 스크린 디스플레이 상에 생성된 "소프트" 키패드일 수 있다. 다양한 실시예에 있어서, 출력 요소는 그래픽 사용자 인터페이스(GUI)를 보여주기 위한 디스플레이(1205), 시각 지시기(1220)(예컨대, 발광 다이오드), 및/또는 오디오 트랜스듀서(1225)(예컨대, 스피커)를 포함한다. 일부 실시예에 있어서, 모바일 컴퓨팅 장치(1200)는 사용자에게 촉각 피드백을 제공하는 진동 트랜스듀서를 포함한다. 또 다른 실시예에 있어서, 모바일 컴퓨팅 장치(1200)는 신호를 외부 장치에 송신하거나 또는 신호를 외부 장치로부터 수신하기 위한 오디오 입력(예컨대, 마이크로폰 잭), 오디오 출력(예컨대, 헤드폰 잭), 및 비디오 출력(예컨대, HDMI 포트)과 같은 입력 및/또는 출력 포트를 포함한다.
도 10b는 모바일 컴퓨팅 장치의 일 실시예의 아키텍처를 예시한 블록도이다. 즉, 모바일 컴퓨팅 장치(1200)는 일부 실시예를 구현하는 시스템(1202)(즉, 아키텍처)을 포함할 수 있다. 일 실시예에 있어서, 시스템(1202)은 하나 이상의 애플리케이션(예컨대, 브라우저, 이메일, 캘린더링, 컨택트 관리자, 메시징 클라이언트, 게임, 및 매체 클라이언트, 재생기)을 실행할 수 있는 "스마트 폰"으로서 구현된다. 일부 실시예에서, 시스템(1202)은 통합형 PDA(personal digital assistant) 및 무선 전화기와 같은 컴퓨팅 장치로서 통합된다.
하나 이상의 애플리케이션 프로그램(1266)은 메모리(1262)에 로딩될 수 있으며 운영 체제(1264) 상에서 또는 이와 연관하여 실행될 수 있다. 애플리케이션 프로그램의 예로는 전화 다이얼러 프로그램, 이메일 프로그램, PIM(personal information management) 프로그램, 워드 프로세싱 프로그램, 스프레드시트 프로그램, 인터넷 브라우저 프로그램, 메시징 프로그램 등을 들 수 있다. 시스템(1202)은 또한 메모리(1262) 내에 비휘발성 저장 영역(1268)을 포함한다. 비휘발성 저장 영역(1268)은 시스템(1202) 전원이 나가도 손실되어서는 안 되는 영구적 정보(persistent information)를 저장하는 데 사용될 수 있다. 애플리케이션 프로그램(1266)은 이메일 또는 이메일 애플리케이션에 의해 사용된 다른 메시지 등과 같은 정보를 사용하고 비휘발성 저장 영역(1268)에 저장할 수 있다. 동기화 애플리케이션(도시되어 있지 않음)이 또한 시스템(1202)에 존재할 수 있으며, 호스트 컴퓨터에 저장된 상응하는 정보와 동기화된 비휘발성 저장 영역(1268)에 저장된 정보를 유지하기 위해 호스트 컴퓨터 상에 존재하는 상응하는 동기화 애플리케이션과 상호작용하도록 프로그램된다. 본 명세서에서 기술한 바와 같은 개발 관리자(26)를 포함하는 다른 애플리케이션이 메모리(1262)에 로딩되어서 모바일 컴퓨팅 장치(1200) 상에서 실행될 수도 있다는 점을 인식해야 한다.
시스템(1202)은 하나 이상의 배터리로서 구현될 수 있는 전원 장치(1270)를 갖는다. 전원 장치(1270)는 배터리에 전력을 보충하거나 재충전하는 전력공급 도킹 크래들 또는 AC 어댑터와 같은 외부 전원을 더 포함할 수 있다.
시스템(1202)은 무선 주파수 통신을 송신 및 수신하는 기능을 수행하는 무선부(1272)를 또한 포함할 수 있다. 무선부(1272)는 통신 캐리어 또는 서비스 제공자를 통해 시스템(1202)과 "외부 세계(outside world)" 사이의 무선 접속을 용이하게 한다. 무선부(1272)에 대한 전송은 운영 체제(1264)의 제어 하에서 행해진다. 즉, 무선부(1272)에 의해 수신된 통신은 운영 체제(1264)를 통해 애플리케이션 프로그램(1266)에 보급될 수 있으며 그 역도 성립한다.
시각 지시기(1220)는 시각 통지를 제공하는 데 사용될 수 있으며, 및/또는 오디오 인터페이스(1274)는 오디오 트랜스듀서(1225)를 통해 청각 통지를 발생시키는 데 사용될 수 있다. 예시된 실시예에 있어서, 시각 지시기(1220)는 발광 다이오드(LED)이고 오디오 트랜스듀서(1225)는 스피커이다. 이들 장치는 전원 장치(1270)에 직접 결합되어, 작동시에 프로세서(1260) 및 다른 컴포넌트들이 배터리 전력을 보존하기 위해 꺼지더라도 통지 메커니즘에 의해 지시된 기간 동안 온 상태로 유지된다. LED는 사용자가 장치의 파워 온 상태를 지시하는 동작을 취할 때까지 무한정 온 상태로 유지되도록 프로그램될 수 있다. 오디오 인터페이스(1274)는 사용자에게 가청 신호를 제공하고 사용자로부터 가청 신호를 수신하도록 사용된다. 예를 들어, 오디오 인터페이스(1274)는 오디오 트랜스듀서(1225)에 결합되는 것 외에, 마이크로폰에도 결합되어, 예컨대, 전화 대화를 용이하게 하기 위한 가청 입력을 수신할 수 있다. 본 발명의 실시예에 따르면, 후술되는 바와 같이, 마이크로폰은 또한 통지의 제어를 용이하게 하기 위해 오디오 센서 역할을 할 수 있다. 시스템(1202)은 또한 정지 이미지, 비디오 스트림 등을 기록하기 위해 온보드 카메라의 동작을 가능하게 하는 비디오 인터페이스(1276)를 더 포함할 수 있다.
시스템(1202)을 구현하는 모바일 컴퓨팅 장치(1200)는 부가적인 특징들 또는 기능을 가질 수 있다. 예를 들어, 모바일 컴퓨팅 장치(1200)는 자기 디스크, 광 디스크, 또는 테이프와 같은 추가적인 데이터 저장 장치(착탈식 및/또는 비착탈식)를 또한 포함할 수 있다. 이러한 추가적인 저장부는 도 10b에 저장 영역(1268)으로 예시되어 있다. 모바일 컴퓨팅 장치(1200)는 주변 장치 포트(1230)를 포함할 수도 있다.
모바일 컴퓨팅 장치(1200)에 의해 생성되거나 캡처되고 시스템(1202)을 통해 저장된 데이터/정보는 전술한 바와 같이 모바일 컴퓨팅 장치(1200) 상에 로컬로 저장될 수 있으며, 또는 그 데이터는 무선부(1272)를 통해 또는 모바일 컴퓨팅 장치(1200)와 이 모바일 컴퓨팅 장치(1200)와 연관된 별도의 컴퓨팅 장치, 예컨대, 인터넷과 같은 분산 컴퓨팅 네트워크 내의 서버 컴퓨터와의 사이의 유선 접속을 통해 장치에 의해 액세스될 수 있는 임의의 수의 저장 매체에 저장될 수 있다. 이러한 데이터/정보는 무선부(1272) 또는 분산 컴퓨팅 네트워크를 경유하여 모바일 컴퓨팅 장치(1200)를 통해 액세스될 수 있다는 점을 인식해야 한다. 이와 유사하게, 그러한 데이터/정보는, 전자 메일 및 협업 데이터/정보 공유 시스템을 포함한, 잘 알려진 데이터/정보 전송 및 저장 수단에 따라 저장하고 사용하기 위한 컴퓨팅 장치들 사이에서 쉽게 전송될 수 있다.
도 11은 전술한 바와 같이, 예시적인 시스템의 아키텍처의 실시예를 예시한 것이다. 개발 관리자(26)와 연관하여 개발, 상호작용, 또는 편집된 콘텐트는 상이한 통신 채널에 또는 다른 저장 유형으로 저장될 수 있다. 예를 들어, 다양한 문서는 디렉토리 서비스(1322), 웹 포털(1324), 메일박스 서비스(1326), 인스턴트 메시징 저장부(1328), 또는 소셜 네트워킹 사이트(1330)를 이용하여 저장될 수 있다. 개발 관리자(26)는, 본 명세서에 기술된 바와 같이, 데이터 이용을 가능하게 하기 위해 이들 유형의 시스템들 중 어느 하나를 이용할 수 있다. 서버(1320)는 개발 관리자(26)를 클라이언트에게 제공할 수 있다. 일례로서, 서버(1320)는 웹을 통해 개발 관리자(26)를 제공하는 웹 서버일 수 있다. 서버(1320)는 웹을 통한 개발 관리자(26)를 네트워크(1315)를 거쳐 클라이언트에게 제공할 수 있다. 예로서, 클라이언트 컴퓨팅 장치는 컴퓨팅 장치(1100)로서 구현될 수 있으며, 퍼스널 컴퓨터, 태블릿 컴퓨팅 장치(1310) 및/또는 모바일 컴퓨팅 장치(1200)(예컨대, 스마트 폰)에서 실현될 수 있다. 클라이언트 컴퓨팅 장치(1100, 1310, 및 1200)의 이들 실시예 중 어느 하나는 저장부(1316)로부터 콘텐트를 취득할 수 있다.
예컨대, 본 발명의 실시예에 따른 방법, 시스템, 및 컴퓨터 프로그램 제품의 블록도 및/또는 동작도를 참조하여 본 발명의 실시예를 설명하였다. 블록에 주지된 기능/동작은 임의의 흐름도에 도시된 것과 다른 순서로 일어날 수 있다. 예를 들어, 순서대로 도시된 2개의 블록이 실제로는 거의 동시에 실행될 수도 있거나, 또는 수반되는 기능/동작에 따라 이들 블록이 때론 반대의 순서로 실행될 수도 있다.
본원에 제공된 하나 이상의 실시예의 기재 및 예시는 청구된 발명의 범위를 한정하거나 또는 제한하려는 것이 전혀 아니다. 본원에 제공된 실시예, 예시 및 상세는 소유권을 전달하기에 충분하다고 생각되고, 청구된 발명의 최선의 방식을 타인이 만들어서 이용하는 것을 가능하게 한다. 청구된 발명은 본원에서 제공된 임의의 실시예, 예시, 또는 상세에 한정되는 것으로 이해되어서는 안 된다. 조합하여 또는 별도로 도시 및 기술되는지의 여부에 관계없이, 실시예가 특정 세트의 특징을 갖게 하기 위해 다양한 특징들(구조적 특징 및 방법론적 특징)은 선택적으로 포함되거나 또는 생략되는 것으로 의도된다. 본원의 기재 및 예시를 제공받았다면, 본 기술분야의 숙련자는 청구된 발명의 확대된 범위로부터 일탈하지 않는 본원에서 실현되는 일반적인 발명 개념의 확대된 양태들의 정신 내에서 실시예들을 변경, 수정, 및 대체하는 것을 생각해낼 수 있을 것이다.

Claims (28)

  1. 방법으로서,
    컴퓨팅 장치에 의해 언어 입력을 수신하는 단계와,
    상기 컴퓨팅 장치에 의해, 상기 언어 입력을 처리해서 상기 언어 입력과 연관된 도메인을 결정하는 단계와,
    상기 컴퓨팅 장치에 의해, 상기 도메인과 연관된 액션을 결정하는 단계와,
    상기 컴퓨팅 장치에 의해, 상기 액션이 상기 언어 입력을 만족하는지 여부를 결정하는 단계와,
    상기 언어 입력을 만족시키기 위해서는 추가 액션이 필요하다고 결정되는 경우, 상기 컴퓨팅 장치에 의해, 상기 언어 입력에 적어도 부분적으로 기초해서 상기 추가 액션을 생성하는 단계와,
    상기 추가 액션으로 상기 도메인을 자동으로 업데이트하는 단계
    를 포함하는 방법.
  2. 제 1 항에 있어서,
    상기 업데이트된 도메인을 대화 이해 서비스에 제공하는 단계
    를 더 포함하는 방법.
  3. 제 1 항에 있어서,
    상기 도메인은 도메인 모델과 연관되는
    방법.
  4. 제 1 항에 있어서,
    상기 언어 입력을 자동으로 환언(rephrasing)하는 단계
    를 더 포함하는 방법.
  5. 제 4 항에 있어서,
    상기 언어 입력을 환언하는 것은, 상기 언어 입력의 의미를 다른 방식으로 표현하는 추가 언어 입력을 생성하는
    방법.
  6. 제 1 항에 있어서,
    상기 언어 입력으로부터 객체를 결정하는 단계
    를 더 포함하는 방법.
  7. 제 6 항에 있어서,
    상기 객체는 신뢰도 점수(confidence score)와 연관되는
    방법.
  8. 제 7 항에 있어서,
    상기 신뢰도 점수를 디스플레이하는 단계
    를 더 포함하는 방법.
  9. 시스템으로서,
    적어도 하나의 프로세서와,
    상기 적어도 하나의 프로세서에 연결되고, 상기 프로세서에 의해 실행될 때 방법을 수행하는 명령어가 저장되는 메모리
    를 포함하되,
    상기 방법은,
    애플리케이션에 명령을 제공하는 자연 언어 입력의 예시를 수신하는 단계와,
    도메인, 인텐트 액션(intent actions) 및 인텐트 객체(intent objects)를 검출하는 단계와,
    상기 검출된 도메인, 상기 인텐트 액션 및 상기 인텐트 객체를 제공하는 단계와,
    상기 검출된 도메인, 상기 인텐트 액션 및 상기 인텐트 객체 중 하나 이상에 대응하는 입력을 수신하는 단계와,
    상기 수신된 입력에 적어도 부분적으로 기초해서 대화 이해 서비스의 하나 이상의 모델을 자동으로 업데이트하는 단계
    를 포함하는,
    시스템.
  10. 제 9 항에 있어서,
    상기 방법은, 상기 자연 언어 입력에 도메인 검출기를 적용하는 단계를 더 포함하는
    시스템.
  11. 제 9 항에 있어서,
    상기 방법은, 상기 인텐트 액션에 대한 신뢰도 점수를 디스플레이하는 단계를 더 포함하는
    시스템.
  12. 제 9 항에 있어서,
    상기 방법은, 상기 인텐트 객체에 대한 신뢰도 점수를 디스플레이하는 단계를 더 포함하는
    시스템.
  13. 제 9 항에 있어서,
    상기 방법은, 상기 자연 언어 입력에 대해 슬롯 태깅(slot tagging)을 수행하는 단계를 더 포함하는
    시스템.
  14. 제 9 항에 있어서,
    상기 대화 이해 서비스의 하나 이상의 모델을 자동으로 업데이트하는 단계는, 상기 대화 이해 서비스와 연관된 도메인 모델, 인텐트 액션 모델 및 인텐트 객체 모델 중 하나 이상을 업데이트하는 단계를 포함하는
    시스템.
  15. 대화 이해 서비스를 업데이트하는 시스템으로서,
    프로세서와,
    상기 프로세서에 의해 실행될 때, 방법을 수행하는 명령어를 저장하는 메모리
    를 포함하되,
    상기 방법은,
    애플리케이션과 상호작용하기 위해 사용되는 자연 언어 문장으로부터 도메인, 인텐트 액션 및 인텐트 객체를 검출하는 단계와,
    상기 인텐트 액션 및 상기 인텐트 객체에 적어도 부분적으로 기초해서 상기 검출된 도메인이 업데이트되어야 하는지 여부를 결정하는 단계와,
    상기 검출된 도메인이 업데이트되어야 한다고 결정되면, 추가 인텐트 액션 및 추가 인텐트 객체 중 하나 이상을 사용해서 상기 검출된 도메인을 자동으로 업데이트하는 단계
    를 포함하는,
    시스템.
  16. 제 15 항에 있어서,
    상기 방법은, 상기 도메인에 대한 신뢰도를 디스플레이하는 단계를 더 포함하는
    시스템.
  17. 제 15 항에 있어서,
    상기 방법은, 상기 검출된 인텐트 액션에 대한 신뢰도를 디스플레이하는 단계를 더 포함하는
    시스템.
  18. 제 15 항에 있어서,
    상기 방법은, 상기 대화 이해 서비스에 새로운 인텐트 액션이 추가될 것임을 나타내는 입력을 수신하는 단계를 더 포함하는
    시스템.
  19. 제 15 항에 있어서,
    상기 방법은, 상기 검출된 인텐트 객체에 대한 신뢰도를 디스플레이하는 단계를 더 포함하는
    시스템.
  20. 제 15 항에 있어서,
    상기 방법은, 상기 대화 이해 서비스에 새로운 인텐트 객체가 추가될 것임을 나타내는 입력을 수신하는 단계를 더 포함하는
    시스템.
  21. 컴퓨터-구현된 방법으로서,
    컴퓨팅 장치에서 언어 입력을 수신하는 단계와,
    상기 컴퓨팅 장치에 의해, 상기 언어 입력을 처리해서 상기 언어 입력과 연관된 도메인을 결정하는 단계와,
    상기 컴퓨팅 장치에 의해, 상기 도메인과 연관된 액션을 결정하는 단계와,
    상기 컴퓨팅 장치에 의해, 상기 액션이 상기 언어 입력을 만족하는지 여부를 결정하는 단계와,
    상기 언어 입력을 만족시키기 위해서는 추가 액션이 필요하다고 결정되는 경우, 추가 정보의 요청을 원격 컴퓨팅 장치로 전송하는 단계와,
    상기 원격 컴퓨팅 장치로부터 상기 추가 정보를 수신하는 단계 - 상기 추가 정보는 상기 추가 액션을 어떻게 수행할지에 대한 명령을 포함함 -
    를 포함하는 컴퓨터-구현된 방법.
  22. 제 21 항에 있어서,
    상기 추가 액션으로 상기 도메인을 업데이트하는 단계
    를 더 포함하는 컴퓨터-구현된 방법.
  23. 제 22 항에 있어서,
    상기 업데이트된 도메인을 대화 이해 서비스에 제공하는 단계
    를 더 포함하는 컴퓨터-구현된 방법.
  24. 제 21 항에 있어서,
    상기 언어 입력을 자동으로 환언하는 단계
    를 더 포함하는 컴퓨터-구현된 방법.
  25. 제 24 항에 있어서,
    상기 언어 입력을 환언하는 것은, 상기 언어 입력의 의미를 다른 방식으로 표현하는 추가 언어 입력을 생성하는
    를 더 포함하는 컴퓨터-구현된 방법.
  26. 제 21 항에 있어서,
    상기 언어 입력으로부터 객체를 결정하는 단계
    를 더 포함하는 컴퓨터-구현된 방법.
  27. 제 26 항에 있어서,
    상기 객체는 신뢰도 점수와 연관되는
    컴퓨터-구현된 방법.
  28. 제 27 항에 있어서,
    상기 신뢰도 점수를 디스플레이하는 단계
    를 더 포함하는 컴퓨터-구현된 방법.
KR1020217029117A 2013-06-21 2014-06-05 대화 이해 시스템 구축 기법 KR102406236B1 (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US13/923,969 2013-06-21
US13/923,969 US9311298B2 (en) 2013-06-21 2013-06-21 Building conversational understanding systems using a toolset
KR1020157035936A KR102303483B1 (ko) 2013-06-21 2014-06-05 대화 이해 시스템 구축 기법
PCT/US2014/041023 WO2014204659A2 (en) 2013-06-21 2014-06-05 Building conversational understanding systems using a toolset

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020157035936A Division KR102303483B1 (ko) 2013-06-21 2014-06-05 대화 이해 시스템 구축 기법

Publications (2)

Publication Number Publication Date
KR20210114562A KR20210114562A (ko) 2021-09-23
KR102406236B1 true KR102406236B1 (ko) 2022-06-07

Family

ID=51134330

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020217029117A KR102406236B1 (ko) 2013-06-21 2014-06-05 대화 이해 시스템 구축 기법
KR1020157035936A KR102303483B1 (ko) 2013-06-21 2014-06-05 대화 이해 시스템 구축 기법

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020157035936A KR102303483B1 (ko) 2013-06-21 2014-06-05 대화 이해 시스템 구축 기법

Country Status (5)

Country Link
US (3) US9311298B2 (ko)
EP (1) EP3011472A2 (ko)
KR (2) KR102406236B1 (ko)
CN (2) CN105474170B (ko)
WO (1) WO2014204659A2 (ko)

Families Citing this family (255)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8181205B2 (en) 2002-09-24 2012-05-15 Russ Samuel H PVR channel and PVR IPG information
US8677377B2 (en) 2005-09-08 2014-03-18 Apple Inc. Method and apparatus for building an intelligent automated assistant
US9318108B2 (en) 2010-01-18 2016-04-19 Apple Inc. Intelligent automated assistant
US8977255B2 (en) 2007-04-03 2015-03-10 Apple Inc. Method and system for operating a multi-function portable electronic device using voice-activation
US8521511B2 (en) 2007-06-18 2013-08-27 International Business Machines Corporation Information extraction in a natural language understanding system
US9342588B2 (en) * 2007-06-18 2016-05-17 International Business Machines Corporation Reclassification of training data to improve classifier accuracy
US10002189B2 (en) 2007-12-20 2018-06-19 Apple Inc. Method and apparatus for searching using an active ontology
US9330720B2 (en) 2008-01-03 2016-05-03 Apple Inc. Methods and apparatus for altering audio output signals
US8996376B2 (en) 2008-04-05 2015-03-31 Apple Inc. Intelligent text-to-speech conversion
US20100030549A1 (en) 2008-07-31 2010-02-04 Lee Michael M Mobile device having human language translation capability with positional feedback
US8676904B2 (en) 2008-10-02 2014-03-18 Apple Inc. Electronic devices with voice command and contextual data processing capabilities
US10241644B2 (en) 2011-06-03 2019-03-26 Apple Inc. Actionable reminder entries
US10706373B2 (en) 2011-06-03 2020-07-07 Apple Inc. Performing actions associated with task items that represent tasks to perform
US10241752B2 (en) 2011-09-30 2019-03-26 Apple Inc. Interface for a virtual digital assistant
US10276170B2 (en) 2010-01-18 2019-04-30 Apple Inc. Intelligent automated assistant
US8682667B2 (en) 2010-02-25 2014-03-25 Apple Inc. User profiling for selecting user specific voice input processing information
US9262612B2 (en) 2011-03-21 2016-02-16 Apple Inc. Device access using voice authentication
US10057736B2 (en) 2011-06-03 2018-08-21 Apple Inc. Active transport based notifications
US10134385B2 (en) 2012-03-02 2018-11-20 Apple Inc. Systems and methods for name pronunciation
US10417037B2 (en) 2012-05-15 2019-09-17 Apple Inc. Systems and methods for integrating third party services with a digital assistant
US9721563B2 (en) 2012-06-08 2017-08-01 Apple Inc. Name recognition system
US8983840B2 (en) * 2012-06-19 2015-03-17 International Business Machines Corporation Intent discovery in audio or text-based conversation
US9547647B2 (en) 2012-09-19 2017-01-17 Apple Inc. Voice-based media searching
US9292492B2 (en) * 2013-02-04 2016-03-22 Microsoft Technology Licensing, Llc Scaling statistical language understanding systems across domains and intents
CN113470640B (zh) 2013-02-07 2022-04-26 苹果公司 数字助理的语音触发器
US10235358B2 (en) 2013-02-21 2019-03-19 Microsoft Technology Licensing, Llc Exploiting structured content for unsupervised natural language semantic parsing
US10652394B2 (en) 2013-03-14 2020-05-12 Apple Inc. System and method for processing voicemail
US10748529B1 (en) 2013-03-15 2020-08-18 Apple Inc. Voice activated device for use with a voice-based digital assistant
WO2014197334A2 (en) 2013-06-07 2014-12-11 Apple Inc. System and method for user-specified pronunciation of words for speech synthesis and recognition
WO2014197335A1 (en) 2013-06-08 2014-12-11 Apple Inc. Interpreting and acting upon commands that involve sharing information with remote devices
KR101922663B1 (ko) 2013-06-09 2018-11-28 애플 인크. 디지털 어시스턴트의 둘 이상의 인스턴스들에 걸친 대화 지속성을 가능하게 하기 위한 디바이스, 방법 및 그래픽 사용자 인터페이스
US10176167B2 (en) 2013-06-09 2019-01-08 Apple Inc. System and method for inferring user intent from speech inputs
US9728184B2 (en) 2013-06-18 2017-08-08 Microsoft Technology Licensing, Llc Restructuring deep neural network acoustic models
US10474961B2 (en) 2013-06-20 2019-11-12 Viv Labs, Inc. Dynamically evolving cognitive architecture system based on prompting for additional user input
US9594542B2 (en) 2013-06-20 2017-03-14 Viv Labs, Inc. Dynamically evolving cognitive architecture system based on training by third-party developers
US9519461B2 (en) 2013-06-20 2016-12-13 Viv Labs, Inc. Dynamically evolving cognitive architecture system based on third-party developers
US9633317B2 (en) 2013-06-20 2017-04-25 Viv Labs, Inc. Dynamically evolving cognitive architecture system based on a natural language intent interpreter
US9589565B2 (en) 2013-06-21 2017-03-07 Microsoft Technology Licensing, Llc Environmentally aware dialog policies and response generation
US9311298B2 (en) 2013-06-21 2016-04-12 Microsoft Technology Licensing, Llc Building conversational understanding systems using a toolset
US9997160B2 (en) * 2013-07-01 2018-06-12 Toyota Motor Engineering & Manufacturing North America, Inc. Systems and methods for dynamic download of embedded voice components
US10229106B2 (en) * 2013-07-26 2019-03-12 Nuance Communications, Inc. Initializing a workspace for building a natural language understanding system
US10339216B2 (en) * 2013-07-26 2019-07-02 Nuance Communications, Inc. Method and apparatus for selecting among competing models in a tool for building natural language understanding models
US9886950B2 (en) * 2013-09-08 2018-02-06 Intel Corporation Automatic generation of domain models for virtual personal assistants
US20150073790A1 (en) * 2013-09-09 2015-03-12 Advanced Simulation Technology, inc. ("ASTi") Auto transcription of voice networks
US10296160B2 (en) 2013-12-06 2019-05-21 Apple Inc. Method for extracting salient dialog usage from live data
US10073840B2 (en) 2013-12-20 2018-09-11 Microsoft Technology Licensing, Llc Unsupervised relation detection model training
US9324321B2 (en) 2014-03-07 2016-04-26 Microsoft Technology Licensing, Llc Low-footprint adaptation and personalization for a deep neural network
US9529794B2 (en) 2014-03-27 2016-12-27 Microsoft Technology Licensing, Llc Flexible schema for language model customization
US9614724B2 (en) 2014-04-21 2017-04-04 Microsoft Technology Licensing, Llc Session-based device configuration
US11209897B2 (en) * 2014-04-25 2021-12-28 Lenovo (Singapore) Pte. Ltd. Strengthening prediction confidence and command priority using natural user interface (NUI) inputs
US9520127B2 (en) 2014-04-29 2016-12-13 Microsoft Technology Licensing, Llc Shared hidden layer combination for speech recognition systems
US10111099B2 (en) 2014-05-12 2018-10-23 Microsoft Technology Licensing, Llc Distributing content in managed wireless distribution networks
US9384334B2 (en) 2014-05-12 2016-07-05 Microsoft Technology Licensing, Llc Content discovery in managed wireless distribution networks
US9430667B2 (en) 2014-05-12 2016-08-30 Microsoft Technology Licensing, Llc Managed wireless distribution network
US9874914B2 (en) 2014-05-19 2018-01-23 Microsoft Technology Licensing, Llc Power management contracts for accessory devices
US9430463B2 (en) 2014-05-30 2016-08-30 Apple Inc. Exemplar-based natural language processing
US9633004B2 (en) 2014-05-30 2017-04-25 Apple Inc. Better resolution when referencing to concepts
TWI566107B (zh) 2014-05-30 2017-01-11 蘋果公司 用於處理多部分語音命令之方法、非暫時性電腦可讀儲存媒體及電子裝置
US10170123B2 (en) 2014-05-30 2019-01-01 Apple Inc. Intelligent assistant for home automation
US9715875B2 (en) 2014-05-30 2017-07-25 Apple Inc. Reducing the need for manual start/end-pointing and trigger phrases
US10037202B2 (en) 2014-06-03 2018-07-31 Microsoft Technology Licensing, Llc Techniques to isolating a portion of an online computing service
US9367490B2 (en) 2014-06-13 2016-06-14 Microsoft Technology Licensing, Llc Reversible connector for accessory devices
US9717006B2 (en) 2014-06-23 2017-07-25 Microsoft Technology Licensing, Llc Device quarantine in a wireless network
US9338493B2 (en) 2014-06-30 2016-05-10 Apple Inc. Intelligent automated assistant for TV user interactions
US9818400B2 (en) 2014-09-11 2017-11-14 Apple Inc. Method and apparatus for discovering trending terms in speech requests
US9668121B2 (en) 2014-09-30 2017-05-30 Apple Inc. Social reminders
US10074360B2 (en) 2014-09-30 2018-09-11 Apple Inc. Providing an indication of the suitability of speech recognition
US10127911B2 (en) 2014-09-30 2018-11-13 Apple Inc. Speaker identification and unsupervised speaker adaptation techniques
US11574621B1 (en) * 2014-12-23 2023-02-07 Amazon Technologies, Inc. Stateless third party interactions
US10572810B2 (en) 2015-01-07 2020-02-25 Microsoft Technology Licensing, Llc Managing user interaction for input understanding determinations
US9508339B2 (en) * 2015-01-30 2016-11-29 Microsoft Technology Licensing, Llc Updating language understanding classifier models for a digital personal assistant based on crowd-sourcing
US9792560B2 (en) * 2015-02-17 2017-10-17 Microsoft Technology Licensing, Llc Training systems and methods for sequence taggers
US10152299B2 (en) 2015-03-06 2018-12-11 Apple Inc. Reducing response latency of intelligent automated assistants
US20160260029A1 (en) * 2015-03-06 2016-09-08 Speaktoit, Inc. Example-driven machine learning scheme for dialog system engines
US9721566B2 (en) 2015-03-08 2017-08-01 Apple Inc. Competing devices responding to voice triggers
US10567477B2 (en) 2015-03-08 2020-02-18 Apple Inc. Virtual assistant continuity
US9886953B2 (en) 2015-03-08 2018-02-06 Apple Inc. Virtual assistant activation
JPWO2016151692A1 (ja) 2015-03-20 2017-06-15 株式会社東芝 タグ付与支援装置、方法およびプログラム
US10460227B2 (en) 2015-05-15 2019-10-29 Apple Inc. Virtual assistant in a communication session
US10200824B2 (en) 2015-05-27 2019-02-05 Apple Inc. Systems and methods for proactively identifying and surfacing relevant content on a touch-sensitive device
US10083688B2 (en) 2015-05-27 2018-09-25 Apple Inc. Device voice control for selecting a displayed affordance
US9578173B2 (en) 2015-06-05 2017-02-21 Apple Inc. Virtual assistant aided communication with 3rd party service in a communication session
US11025565B2 (en) 2015-06-07 2021-06-01 Apple Inc. Personalized prediction of responses for instant messaging
US20160378747A1 (en) 2015-06-29 2016-12-29 Apple Inc. Virtual assistant for media playback
US11062228B2 (en) 2015-07-06 2021-07-13 Microsoft Technoiogy Licensing, LLC Transfer learning techniques for disparate label sets
US10249297B2 (en) * 2015-07-13 2019-04-02 Microsoft Technology Licensing, Llc Propagating conversational alternatives using delayed hypothesis binding
US10338959B2 (en) 2015-07-13 2019-07-02 Microsoft Technology Licensing, Llc Task state tracking in systems and services
US10747498B2 (en) 2015-09-08 2020-08-18 Apple Inc. Zero latency digital assistant
US10331312B2 (en) 2015-09-08 2019-06-25 Apple Inc. Intelligent automated assistant in a media environment
US10671428B2 (en) 2015-09-08 2020-06-02 Apple Inc. Distributed personal assistant
US10740384B2 (en) 2015-09-08 2020-08-11 Apple Inc. Intelligent automated assistant for media search and playback
US10607504B1 (en) * 2015-09-25 2020-03-31 Educational Testing Service Computer-implemented systems and methods for a crowd source-bootstrapped spoken dialog system
US10691473B2 (en) 2015-11-06 2020-06-23 Apple Inc. Intelligent automated assistant in a messaging environment
US10956666B2 (en) 2015-11-09 2021-03-23 Apple Inc. Unconventional virtual assistant interactions
US10049668B2 (en) 2015-12-02 2018-08-14 Apple Inc. Applying neural network language models to weighted finite state transducers for automatic speech recognition
US11250218B2 (en) 2015-12-11 2022-02-15 Microsoft Technology Licensing, Llc Personalizing natural language understanding systems
US10223066B2 (en) 2015-12-23 2019-03-05 Apple Inc. Proactive assistance based on dialog communication between devices
US10417346B2 (en) * 2016-01-23 2019-09-17 Microsoft Technology Licensing, Llc Tool for facilitating the development of new language understanding scenarios
US20170212928A1 (en) * 2016-01-27 2017-07-27 International Business Machines Corporation Cognitive decision making based on dynamic model composition
US10635281B2 (en) * 2016-02-12 2020-04-28 Microsoft Technology Licensing, Llc Natural language task completion platform authoring for third party experiences
US10509626B2 (en) 2016-02-22 2019-12-17 Sonos, Inc Handling of loss of pairing between networked devices
US9965247B2 (en) 2016-02-22 2018-05-08 Sonos, Inc. Voice controlled media playback system based on user profile
US9826306B2 (en) 2016-02-22 2017-11-21 Sonos, Inc. Default playback device designation
US10264030B2 (en) 2016-02-22 2019-04-16 Sonos, Inc. Networked microphone device control
US9947316B2 (en) 2016-02-22 2018-04-17 Sonos, Inc. Voice control of a media playback system
US10095470B2 (en) 2016-02-22 2018-10-09 Sonos, Inc. Audio response playback
US11227589B2 (en) 2016-06-06 2022-01-18 Apple Inc. Intelligent list reading
US10249300B2 (en) 2016-06-06 2019-04-02 Apple Inc. Intelligent list reading
US10049663B2 (en) 2016-06-08 2018-08-14 Apple, Inc. Intelligent automated assistant for media exploration
US9978390B2 (en) 2016-06-09 2018-05-22 Sonos, Inc. Dynamic player selection for audio signal processing
DK179588B1 (en) 2016-06-09 2019-02-22 Apple Inc. INTELLIGENT AUTOMATED ASSISTANT IN A HOME ENVIRONMENT
US10586535B2 (en) 2016-06-10 2020-03-10 Apple Inc. Intelligent digital assistant in a multi-tasking environment
US10067938B2 (en) 2016-06-10 2018-09-04 Apple Inc. Multilingual word prediction
DK179415B1 (en) 2016-06-11 2018-06-14 Apple Inc Intelligent device arbitration and control
DK179343B1 (en) 2016-06-11 2018-05-14 Apple Inc Intelligent task discovery
DK201670540A1 (en) 2016-06-11 2018-01-08 Apple Inc Application integration with a digital assistant
US10474439B2 (en) * 2016-06-16 2019-11-12 Microsoft Technology Licensing, Llc Systems and methods for building conversational understanding systems
US9996532B2 (en) * 2016-06-17 2018-06-12 Microsoft Technology Licensing, Llc Systems and methods for building state specific multi-turn contextual language understanding systems
US20180005629A1 (en) * 2016-06-30 2018-01-04 Microsoft Technology Licensing, Llc Policy authoring for task state tracking during dialogue
US10152969B2 (en) 2016-07-15 2018-12-11 Sonos, Inc. Voice detection by multiple devices
US10115400B2 (en) 2016-08-05 2018-10-30 Sonos, Inc. Multiple voice services
US10360300B2 (en) 2016-08-24 2019-07-23 Microsoft Technology Licensing, Llc Multi-turn cross-domain natural language understanding systems, building platforms, and methods
US10446137B2 (en) 2016-09-07 2019-10-15 Microsoft Technology Licensing, Llc Ambiguity resolving conversational understanding system
US10474753B2 (en) 2016-09-07 2019-11-12 Apple Inc. Language identification using recurrent neural networks
US10043516B2 (en) 2016-09-23 2018-08-07 Apple Inc. Intelligent automated assistant
US9942678B1 (en) 2016-09-27 2018-04-10 Sonos, Inc. Audio playback settings for voice interaction
US10102256B2 (en) * 2016-09-29 2018-10-16 International Business Machines Corporation Internet search result intention
US9743204B1 (en) 2016-09-30 2017-08-22 Sonos, Inc. Multi-orientation playback device microphones
US10181323B2 (en) 2016-10-19 2019-01-15 Sonos, Inc. Arbitration-based voice recognition
US11281993B2 (en) 2016-12-05 2022-03-22 Apple Inc. Model and ensemble compression for metric learning
US10649739B2 (en) * 2016-12-20 2020-05-12 Microsoft Technology Licensing, Llc Facilitating application development
US10593346B2 (en) 2016-12-22 2020-03-17 Apple Inc. Rank-reduced token representation for automatic speech recognition
US11204787B2 (en) 2017-01-09 2021-12-21 Apple Inc. Application integration with a digital assistant
CN106997767A (zh) * 2017-03-24 2017-08-01 百度在线网络技术(北京)有限公司 基于人工智能的语音处理方法及装置
US10817551B2 (en) * 2017-04-25 2020-10-27 Panasonic Intellectual Property Management Co., Ltd. Method for expanding word, word expanding apparatus, and non-transitory computer-readable recording medium
US10417266B2 (en) 2017-05-09 2019-09-17 Apple Inc. Context-aware ranking of intelligent response suggestions
DK201770383A1 (en) 2017-05-09 2018-12-14 Apple Inc. USER INTERFACE FOR CORRECTING RECOGNITION ERRORS
US10395654B2 (en) 2017-05-11 2019-08-27 Apple Inc. Text normalization based on a data-driven learning network
US10726832B2 (en) 2017-05-11 2020-07-28 Apple Inc. Maintaining privacy of personal information
DK201770439A1 (en) 2017-05-11 2018-12-13 Apple Inc. Offline personal assistant
DK180048B1 (en) 2017-05-11 2020-02-04 Apple Inc. MAINTAINING THE DATA PROTECTION OF PERSONAL INFORMATION
DK179745B1 (en) 2017-05-12 2019-05-01 Apple Inc. SYNCHRONIZATION AND TASK DELEGATION OF A DIGITAL ASSISTANT
DK201770429A1 (en) 2017-05-12 2018-12-14 Apple Inc. LOW-LATENCY INTELLIGENT AUTOMATED ASSISTANT
DK179496B1 (en) 2017-05-12 2019-01-15 Apple Inc. USER-SPECIFIC Acoustic Models
US11301477B2 (en) 2017-05-12 2022-04-12 Apple Inc. Feedback analysis of a digital assistant
DK201770432A1 (en) 2017-05-15 2018-12-21 Apple Inc. Hierarchical belief states for digital assistants
DK201770431A1 (en) 2017-05-15 2018-12-20 Apple Inc. Optimizing dialogue policy decisions for digital assistants using implicit feedback
US20180336892A1 (en) 2017-05-16 2018-11-22 Apple Inc. Detecting a trigger of a digital assistant
US10311144B2 (en) 2017-05-16 2019-06-04 Apple Inc. Emoji word sense disambiguation
US10403278B2 (en) 2017-05-16 2019-09-03 Apple Inc. Methods and systems for phonetic matching in digital assistant services
DK179560B1 (en) 2017-05-16 2019-02-18 Apple Inc. FAR-FIELD EXTENSION FOR DIGITAL ASSISTANT SERVICES
US20180336275A1 (en) 2017-05-16 2018-11-22 Apple Inc. Intelligent automated assistant for media exploration
US10657328B2 (en) 2017-06-02 2020-05-19 Apple Inc. Multi-task recurrent neural network architecture for efficient morphology handling in neural language modeling
CN107463601B (zh) * 2017-06-13 2021-02-12 北京百度网讯科技有限公司 基于人工智能的对话理解系统构建方法、装置、设备及计算机可读存储介质
US11880761B2 (en) 2017-07-28 2024-01-23 Microsoft Technology Licensing, Llc Domain addition systems and methods for a language understanding system
US10475449B2 (en) 2017-08-07 2019-11-12 Sonos, Inc. Wake-word detection suppression
US10885900B2 (en) 2017-08-11 2021-01-05 Microsoft Technology Licensing, Llc Domain adaptation in speech recognition via teacher-student learning
US10048930B1 (en) 2017-09-08 2018-08-14 Sonos, Inc. Dynamic computation of system response volume
CN107679557B (zh) * 2017-09-19 2020-11-27 平安科技(深圳)有限公司 驾驶模型训练方法、驾驶人识别方法、装置、设备及介质
US10445429B2 (en) 2017-09-21 2019-10-15 Apple Inc. Natural language understanding using vocabularies with compressed serialized tries
US10446165B2 (en) 2017-09-27 2019-10-15 Sonos, Inc. Robust short-time fourier transform acoustic echo cancellation during audio playback
US10621981B2 (en) 2017-09-28 2020-04-14 Sonos, Inc. Tone interference cancellation
US10482868B2 (en) 2017-09-28 2019-11-19 Sonos, Inc. Multi-channel acoustic echo cancellation
US10466962B2 (en) 2017-09-29 2019-11-05 Sonos, Inc. Media playback system with voice assistance
US10755051B2 (en) 2017-09-29 2020-08-25 Apple Inc. Rule-based natural language processing
US11157533B2 (en) 2017-11-08 2021-10-26 International Business Machines Corporation Designing conversational systems driven by a semantic network with a library of templated query operators
EP3483746A1 (en) * 2017-11-09 2019-05-15 Snips Methods and devices for generating data to train a natural language understanding component
US10636424B2 (en) 2017-11-30 2020-04-28 Apple Inc. Multi-turn canned dialog
US10880650B2 (en) 2017-12-10 2020-12-29 Sonos, Inc. Network microphone devices with automatic do not disturb actuation capabilities
US10818290B2 (en) 2017-12-11 2020-10-27 Sonos, Inc. Home graph
US10733982B2 (en) 2018-01-08 2020-08-04 Apple Inc. Multi-directional dialog
EP3743833A4 (en) * 2018-01-26 2021-10-27 Ensono, LP REDUCING LATENCY AND IMPROVING THE ACCURACY OF WORK ESTIMATES USING NATURAL LANGUAGE PROCESSING
US10733375B2 (en) 2018-01-31 2020-08-04 Apple Inc. Knowledge-based framework for improving natural language understanding
WO2019152722A1 (en) 2018-01-31 2019-08-08 Sonos, Inc. Device designation of playback and network microphone device arrangements
US10789959B2 (en) 2018-03-02 2020-09-29 Apple Inc. Training speaker recognition models for digital assistants
US10592604B2 (en) 2018-03-12 2020-03-17 Apple Inc. Inverse text normalization for automatic speech recognition
US10818288B2 (en) 2018-03-26 2020-10-27 Apple Inc. Natural assistant interaction
US10909331B2 (en) 2018-03-30 2021-02-02 Apple Inc. Implicit identification of translation payload with neural machine translation
US11145294B2 (en) 2018-05-07 2021-10-12 Apple Inc. Intelligent automated assistant for delivering content from user experiences
US10928918B2 (en) 2018-05-07 2021-02-23 Apple Inc. Raise to speak
US11175880B2 (en) 2018-05-10 2021-11-16 Sonos, Inc. Systems and methods for voice-assisted media content selection
US10847178B2 (en) 2018-05-18 2020-11-24 Sonos, Inc. Linear filtering for noise-suppressed speech detection
US10984780B2 (en) 2018-05-21 2021-04-20 Apple Inc. Global semantic word embeddings using bi-directional recurrent neural networks
US10959029B2 (en) 2018-05-25 2021-03-23 Sonos, Inc. Determining and adapting to changes in microphone performance of playback devices
US11386266B2 (en) 2018-06-01 2022-07-12 Apple Inc. Text correction
DK201870355A1 (en) 2018-06-01 2019-12-16 Apple Inc. VIRTUAL ASSISTANT OPERATION IN MULTI-DEVICE ENVIRONMENTS
DK180639B1 (en) 2018-06-01 2021-11-04 Apple Inc DISABILITY OF ATTENTION-ATTENTIVE VIRTUAL ASSISTANT
US10892996B2 (en) 2018-06-01 2021-01-12 Apple Inc. Variable latency device coordination
DK179822B1 (da) 2018-06-01 2019-07-12 Apple Inc. Voice interaction at a primary device to access call functionality of a companion device
US10496705B1 (en) 2018-06-03 2019-12-03 Apple Inc. Accelerated task performance
US10681460B2 (en) 2018-06-28 2020-06-09 Sonos, Inc. Systems and methods for associating playback devices with voice assistant services
US10461710B1 (en) 2018-08-28 2019-10-29 Sonos, Inc. Media playback system with maximum volume setting
US11076035B2 (en) 2018-08-28 2021-07-27 Sonos, Inc. Do not disturb feature for audio notifications
US10587430B1 (en) 2018-09-14 2020-03-10 Sonos, Inc. Networked devices, systems, and methods for associating playback devices based on sound codes
US11024331B2 (en) 2018-09-21 2021-06-01 Sonos, Inc. Voice detection optimization using sound metadata
US10811015B2 (en) 2018-09-25 2020-10-20 Sonos, Inc. Voice detection optimization based on selected voice assistant service
US11010561B2 (en) 2018-09-27 2021-05-18 Apple Inc. Sentiment prediction from textual data
US10839159B2 (en) 2018-09-28 2020-11-17 Apple Inc. Named entity normalization in a spoken dialog system
US11100923B2 (en) 2018-09-28 2021-08-24 Sonos, Inc. Systems and methods for selective wake word detection using neural network models
US11462215B2 (en) 2018-09-28 2022-10-04 Apple Inc. Multi-modal inputs for voice commands
US11170166B2 (en) 2018-09-28 2021-11-09 Apple Inc. Neural typographical error modeling via generative adversarial networks
US10692518B2 (en) 2018-09-29 2020-06-23 Sonos, Inc. Linear filtering for noise-suppressed speech detection via multiple network microphone devices
US11899519B2 (en) 2018-10-23 2024-02-13 Sonos, Inc. Multiple stage network microphone device with reduced power consumption and processing load
US11475898B2 (en) 2018-10-26 2022-10-18 Apple Inc. Low-latency multi-speaker speech recognition
EP3654249A1 (en) 2018-11-15 2020-05-20 Snips Dilated convolutions and gating for efficient keyword spotting
US11183183B2 (en) 2018-12-07 2021-11-23 Sonos, Inc. Systems and methods of operating media playback systems having multiple voice assistant services
US11132989B2 (en) 2018-12-13 2021-09-28 Sonos, Inc. Networked microphone devices, systems, and methods of localized arbitration
US10602268B1 (en) 2018-12-20 2020-03-24 Sonos, Inc. Optimization of network microphone devices using noise classification
EP3903307A4 (en) * 2018-12-27 2022-09-07 Telepathy Labs, Inc. SYSTEM AND METHOD FOR COMMUNICATION WITH A USER WITH VOICE PROCESSING
US11638059B2 (en) 2019-01-04 2023-04-25 Apple Inc. Content playback on multiple devices
US10867604B2 (en) 2019-02-08 2020-12-15 Sonos, Inc. Devices, systems, and methods for distributed voice processing
US11315556B2 (en) 2019-02-08 2022-04-26 Sonos, Inc. Devices, systems, and methods for distributed voice processing by transmitting sound data associated with a wake word to an appropriate device for identification
US11348573B2 (en) 2019-03-18 2022-05-31 Apple Inc. Multimodality in digital assistant systems
CN109918492A (zh) * 2019-03-18 2019-06-21 百度在线网络技术(北京)有限公司 一种人机对话设置方法和人机对话设置系统
US11120794B2 (en) 2019-05-03 2021-09-14 Sonos, Inc. Voice assistant persistence across multiple network microphone devices
US11307752B2 (en) 2019-05-06 2022-04-19 Apple Inc. User configurable task triggers
US11475884B2 (en) 2019-05-06 2022-10-18 Apple Inc. Reducing digital assistant latency when a language is incorrectly determined
US11423908B2 (en) 2019-05-06 2022-08-23 Apple Inc. Interpreting spoken requests
DK201970509A1 (en) 2019-05-06 2021-01-15 Apple Inc Spoken notifications
US11140099B2 (en) 2019-05-21 2021-10-05 Apple Inc. Providing message response suggestions
US11496600B2 (en) 2019-05-31 2022-11-08 Apple Inc. Remote execution of machine-learned models
US11289073B2 (en) 2019-05-31 2022-03-29 Apple Inc. Device text to speech
DK201970511A1 (en) 2019-05-31 2021-02-15 Apple Inc Voice identification in digital assistant systems
DK180129B1 (en) 2019-05-31 2020-06-02 Apple Inc. USER ACTIVITY SHORTCUT SUGGESTIONS
US11468890B2 (en) 2019-06-01 2022-10-11 Apple Inc. Methods and user interfaces for voice-based control of electronic devices
US11360641B2 (en) 2019-06-01 2022-06-14 Apple Inc. Increasing the relevance of new available information
US11468122B2 (en) * 2019-06-11 2022-10-11 Microsoft Technology Licensing, Llc Shared memory space management for conversational artificial intelligence system
US11170174B2 (en) 2019-06-11 2021-11-09 Microsoft Technology Licensing, Llc Conversational AI using adaptive dialogs
US11151333B2 (en) * 2019-06-11 2021-10-19 Microsoft Technology Licensing Llc Conversational event modeling
AU2020290470B2 (en) * 2019-06-12 2023-03-02 Liveperson, Inc. Systems and methods for communication system intent analysis
US10586540B1 (en) 2019-06-12 2020-03-10 Sonos, Inc. Network microphone device with command keyword conditioning
US11361756B2 (en) 2019-06-12 2022-06-14 Sonos, Inc. Conditional wake word eventing based on environment
US11200894B2 (en) 2019-06-12 2021-12-14 Sonos, Inc. Network microphone device with command keyword eventing
US11138975B2 (en) 2019-07-31 2021-10-05 Sonos, Inc. Locally distributed keyword detection
US10871943B1 (en) 2019-07-31 2020-12-22 Sonos, Inc. Noise classification for event detection
US11138969B2 (en) 2019-07-31 2021-10-05 Sonos, Inc. Locally distributed keyword detection
WO2021056255A1 (en) 2019-09-25 2021-04-01 Apple Inc. Text detection using global geometry estimators
US11189286B2 (en) 2019-10-22 2021-11-30 Sonos, Inc. VAS toggle based on device orientation
US11200900B2 (en) 2019-12-20 2021-12-14 Sonos, Inc. Offline voice control
WO2021137637A1 (en) 2020-01-02 2021-07-08 Samsung Electronics Co., Ltd. Server, client device, and operation methods thereof for training natural language understanding model
US11562740B2 (en) 2020-01-07 2023-01-24 Sonos, Inc. Voice verification for media playback
US11556307B2 (en) 2020-01-31 2023-01-17 Sonos, Inc. Local voice data processing
US11308958B2 (en) 2020-02-07 2022-04-19 Sonos, Inc. Localized wakeword verification
US11183193B1 (en) 2020-05-11 2021-11-23 Apple Inc. Digital assistant hardware abstraction
US11061543B1 (en) 2020-05-11 2021-07-13 Apple Inc. Providing relevant data items based on context
US11308962B2 (en) 2020-05-20 2022-04-19 Sonos, Inc. Input detection windowing
US11482224B2 (en) 2020-05-20 2022-10-25 Sonos, Inc. Command keywords with input detection windowing
US11727919B2 (en) 2020-05-20 2023-08-15 Sonos, Inc. Memory allocation for keyword spotting engines
US11490204B2 (en) 2020-07-20 2022-11-01 Apple Inc. Multi-device audio adjustment coordination
US11438683B2 (en) 2020-07-21 2022-09-06 Apple Inc. User identification using headphones
KR102425276B1 (ko) * 2020-08-24 2022-07-26 에스케이플래닛 주식회사 챗봇 서비스 제공 방법 및 장치
US11698771B2 (en) 2020-08-25 2023-07-11 Sonos, Inc. Vocal guidance engines for playback devices
US20220230631A1 (en) * 2021-01-18 2022-07-21 PM Labs, Inc. System and method for conversation using spoken language understanding
US11551700B2 (en) 2021-01-25 2023-01-10 Sonos, Inc. Systems and methods for power-efficient keyword detection
US20230135962A1 (en) * 2021-11-02 2023-05-04 Microsoft Technology Licensing, Llc Training framework for automated tasks involving multiple machine learning models

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130152092A1 (en) 2011-12-08 2013-06-13 Osher Yadgar Generic virtual personal assistant platform

Family Cites Families (137)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2631864B2 (ja) 1988-06-13 1997-07-16 大成建設株式会社 偏平トンネルの施工方法
US5170499A (en) 1989-03-06 1992-12-08 Motorola, Inc. Method and apparatus for adjusting the volume level of a radio
JP3168004B2 (ja) 1991-08-19 2001-05-21 レルナウト アンド ハウスピイ スピーチプロダクツ 文脈依存モデリング用人工ニューラルネットワークを用いたパターン認識装置
US5233681A (en) 1992-04-24 1993-08-03 International Business Machines Corporation Context-dependent speech recognizer using estimated next word context
US6405132B1 (en) 1997-10-22 2002-06-11 Intelligent Technologies International, Inc. Accident avoidance system
US6167377A (en) 1997-03-28 2000-12-26 Dragon Systems, Inc. Speech recognition language models
KR100241901B1 (ko) 1997-08-28 2000-02-01 윤종용 핸드셋과 핸즈프리킷 공용 음성인식기의 등록 엔트리 관리방법
ITTO980383A1 (it) 1998-05-07 1999-11-07 Cselt Centro Studi Lab Telecom Procedimento e dispositivo di riconoscimento vocale con doppio passo di riconoscimento neurale e markoviano.
DE69937962T2 (de) * 1998-10-02 2008-12-24 International Business Machines Corp. Vorrichtung und verfahren zur bereitstellung von netzwerk-koordinierten konversationsdiensten
US20050091057A1 (en) * 1999-04-12 2005-04-28 General Magic, Inc. Voice application development methodology
US6647270B1 (en) 1999-09-10 2003-11-11 Richard B. Himmelstein Vehicletalk
US7392185B2 (en) * 1999-11-12 2008-06-24 Phoenix Solutions, Inc. Speech based learning/training system using semantic decoding
US6263308B1 (en) 2000-03-20 2001-07-17 Microsoft Corporation Methods and apparatus for performing speech recognition using acoustic models which are improved through an interactive process
US7788602B2 (en) * 2000-06-06 2010-08-31 Microsoft Corporation Method and system for providing restricted actions for recognized semantic categories
DE60102242T2 (de) 2000-06-29 2005-01-27 Aspen Technology, Inc., Cambridge Rechnerverfahren und gerät zur beschränkung einer nicht-linearen gleichungsnäherung eines empirischen prozesses
JP2002091477A (ja) 2000-09-14 2002-03-27 Mitsubishi Electric Corp 音声認識システム、音声認識装置、音響モデル管理サーバ、言語モデル管理サーバ、音声認識方法及び音声認識プログラムを記録したコンピュータ読み取り可能な記録媒体
US6807536B2 (en) 2000-11-16 2004-10-19 Microsoft Corporation Methods and systems for computing singular value decompositions of matrices and low rank approximations of matrices
US6622136B2 (en) * 2001-02-16 2003-09-16 Motorola, Inc. Interactive tool for semi-automatic creation of a domain model
US20050234727A1 (en) * 2001-07-03 2005-10-20 Leo Chiu Method and apparatus for adapting a voice extensible markup language-enabled voice system for natural speech recognition and system response
US6970947B2 (en) 2001-07-18 2005-11-29 International Business Machines Corporation Method and apparatus for providing a flexible and scalable context service
US20030149566A1 (en) 2002-01-02 2003-08-07 Esther Levin System and method for a spoken language interface to a large database of changing records
US7006972B2 (en) 2002-03-20 2006-02-28 Microsoft Corporation Generating a task-adapted acoustic model from one or more different corpora
JP2003280683A (ja) 2002-03-20 2003-10-02 Toshiba Corp 音声認識装置、音声認識装置における音声認識制御方法、音声処理に関する辞書管理装置
US7191119B2 (en) * 2002-05-07 2007-03-13 International Business Machines Corporation Integrated development tool for building a natural language understanding application
US7548847B2 (en) * 2002-05-10 2009-06-16 Microsoft Corporation System for automatically annotating training data for a natural language understanding system
US7398209B2 (en) 2002-06-03 2008-07-08 Voicebox Technologies, Inc. Systems and methods for responding to natural language speech utterance
US7756531B2 (en) 2002-09-04 2010-07-13 Farhad John Aminzadeh Method and apparatus for avoiding call disturbances and facilitating urgent calls based on a caller's decision
US7274741B2 (en) 2002-11-01 2007-09-25 Microsoft Corporation Systems and methods for generating a comprehensive user attention model
JP2004227468A (ja) 2003-01-27 2004-08-12 Canon Inc 情報提供装置、情報提供方法
US20040176083A1 (en) 2003-02-25 2004-09-09 Motorola, Inc. Method and system for reducing distractions of mobile device users
US7366655B1 (en) * 2003-04-02 2008-04-29 At&T Corp. Method of generating a labeling guide for spoken dialog services
US7835910B1 (en) * 2003-05-29 2010-11-16 At&T Intellectual Property Ii, L.P. Exploiting unlabeled utterances for spoken language understanding
CA2473195C (en) 2003-07-29 2014-02-04 Microsoft Corporation Head mounted multi-sensory audio input system
EP1654728A1 (en) 2003-08-01 2006-05-10 Philips Intellectual Property & Standards GmbH Method for driving a dialog system
US20050065789A1 (en) 2003-09-23 2005-03-24 Sherif Yacoub System and method with automated speech recognition engines
US7774196B2 (en) 2003-10-01 2010-08-10 Dictaphone Corporation System and method for modifying a language model and post-processor information
JP2005157494A (ja) 2003-11-20 2005-06-16 Aruze Corp 会話制御装置及び会話制御方法
US8041566B2 (en) 2003-11-21 2011-10-18 Nuance Communications Austria Gmbh Topic specific models for text formatting and speech recognition
CN100539763C (zh) 2003-11-27 2009-09-09 国际商业机器公司 控制来自移动车辆的无线通信的方法
JP4581441B2 (ja) 2004-03-18 2010-11-17 パナソニック株式会社 家電機器システム、家電機器および音声認識方法
US8412521B2 (en) 2004-08-20 2013-04-02 Multimodal Technologies, Llc Discriminative training of document transcription system
US7693713B2 (en) 2005-06-17 2010-04-06 Microsoft Corporation Speech models generated using competitive training, asymmetric training, and data boosting
US7640160B2 (en) 2005-08-05 2009-12-29 Voicebox Technologies, Inc. Systems and methods for responding to natural language speech utterance
US7620549B2 (en) 2005-08-10 2009-11-17 Voicebox Technologies, Inc. System and method of supporting adaptive misrecognition in conversational speech
US8321220B1 (en) * 2005-11-30 2012-11-27 At&T Intellectual Property Ii, L.P. System and method of semi-supervised learning for spoken language understanding using semantic role labeling
US20070128979A1 (en) 2005-12-07 2007-06-07 J. Shackelford Associates Llc. Interactive Hi-Tech doll
US7835911B2 (en) 2005-12-30 2010-11-16 Nuance Communications, Inc. Method and system for automatically building natural language understanding models
US7603330B2 (en) 2006-02-01 2009-10-13 Honda Motor Co., Ltd. Meta learning for question classification
DE102006006551B4 (de) * 2006-02-13 2008-09-11 Siemens Ag Verfahren und System zum Bereitstellen von Sprachdialoganwendungen sowie mobiles Endgerät
IL174522A0 (en) 2006-03-23 2006-08-01 Jonathan Agmon Method for predictive typing
JP2007264128A (ja) 2006-03-27 2007-10-11 Toshiba Corp 音声認識装置及びその方法
US7627536B2 (en) * 2006-06-13 2009-12-01 Microsoft Corporation Dynamic interaction menus from natural language representations
US7716049B2 (en) 2006-06-30 2010-05-11 Nokia Corporation Method, apparatus and computer program product for providing adaptive language model scaling
US9318108B2 (en) * 2010-01-18 2016-04-19 Apple Inc. Intelligent automated assistant
WO2008081543A1 (ja) 2006-12-28 2008-07-10 Fujitsu Limited 携帯端末装置、その通話制御プログラム、その通話制御プログラムを格納した記録媒体、及びその通話制御方法
US7912700B2 (en) 2007-02-08 2011-03-22 Microsoft Corporation Context based word prediction
TW200836893A (en) 2007-03-01 2008-09-16 Benq Corp Interactive home entertainment robot and method of controlling the same
US8838457B2 (en) 2007-03-07 2014-09-16 Vlingo Corporation Using results of unstructured language model based speech recognition to control a system-level function of a mobile communications facility
US20090030697A1 (en) 2007-03-07 2009-01-29 Cerra Joseph P Using contextual information for delivering results generated from a speech recognition facility using an unstructured language model
US20070150428A1 (en) 2007-03-20 2007-06-28 Brandyn Webb Inference engine for discovering features and making predictions using generalized incremental singular value decomposition
JP2008233678A (ja) 2007-03-22 2008-10-02 Honda Motor Co Ltd 音声対話装置、音声対話方法、及び音声対話用プログラム
US8301757B2 (en) * 2007-06-11 2012-10-30 Enghouse Interactive Inc. System and method for obtaining in-use statistics for voice applications in interactive voice response systems
US8275615B2 (en) 2007-07-13 2012-09-25 International Business Machines Corporation Model weighting, selection and hypotheses combination for automatic speech recognition and machine translation
JP2009075582A (ja) 2007-08-29 2009-04-09 Advanced Media Inc 端末装置、言語モデル作成装置、および分散型音声認識システム
CN101415039A (zh) 2007-10-17 2009-04-22 宏达国际电子股份有限公司 通话管理方法
US8229729B2 (en) 2008-03-25 2012-07-24 International Business Machines Corporation Machine translation in continuous space
JP2009230068A (ja) 2008-03-25 2009-10-08 Denso Corp 音声認識装置及びナビゲーションシステム
US8332394B2 (en) 2008-05-23 2012-12-11 International Business Machines Corporation System and method for providing question and answers with deferred type evaluation
US8364481B2 (en) 2008-07-02 2013-01-29 Google Inc. Speech recognition with parallel recognition tasks
US8412529B2 (en) * 2008-10-29 2013-04-02 Verizon Patent And Licensing Inc. Method and system for enhancing verbal communication sessions
US20100114890A1 (en) 2008-10-31 2010-05-06 Purediscovery Corporation System and Method for Discovering Latent Relationships in Data
CN102272754B (zh) 2008-11-05 2015-04-01 谷歌公司 定制语言模型
RU2509350C2 (ru) 2008-11-07 2014-03-10 Матрокс Профешнл Инк Способ семантической обработки естественного языка с использованием графического языка-посредника
US20100128863A1 (en) 2008-11-21 2010-05-27 Robert Bosch Gmbh Context aware voice communication proxy
US8447608B1 (en) 2008-12-10 2013-05-21 Adobe Systems Incorporated Custom language models for audio content
US20100211695A1 (en) 2009-02-16 2010-08-19 Comverse, Ltd. Context-aware communications
US8930179B2 (en) 2009-06-04 2015-01-06 Microsoft Corporation Recognition using re-recognition and statistical classification
US9177557B2 (en) 2009-07-07 2015-11-03 General Motors Llc. Singular value decomposition for improved voice recognition in presence of multi-talker background noise
US8886641B2 (en) 2009-10-15 2014-11-11 Yahoo! Inc. Incorporating recency in network search using machine learning
US8571866B2 (en) 2009-10-23 2013-10-29 At&T Intellectual Property I, L.P. System and method for improving speech recognition accuracy using textual context
KR101622111B1 (ko) 2009-12-11 2016-05-18 삼성전자 주식회사 대화 시스템 및 그의 대화 방법
US8315597B2 (en) 2009-12-21 2012-11-20 Julia Olincy “I am driving/busy” automatic response system for mobile phones
US8249627B2 (en) 2009-12-21 2012-08-21 Julia Olincy “I am driving/busy” automatic response system for mobile phones
EP2339576B1 (en) 2009-12-23 2019-08-07 Google LLC Multi-modal input on an electronic device
US8400332B2 (en) 2010-02-09 2013-03-19 Ford Global Technologies, Llc Emotive advisory system including time agent
JP2012038239A (ja) 2010-08-11 2012-02-23 Sony Corp 情報処理装置、情報処理方法、及び、プログラム
US8972253B2 (en) 2010-09-15 2015-03-03 Microsoft Technology Licensing, Llc Deep belief network for large vocabulary continuous speech recognition
FR2965377A1 (fr) 2010-09-24 2012-03-30 Univ D Avignon Et Des Pays De Vaucluse Procede de classification de donnees biometriques
JP2012075047A (ja) 2010-09-29 2012-04-12 Toshiba Corp Ip交換システム及びip交換装置
US8812321B2 (en) 2010-09-30 2014-08-19 At&T Intellectual Property I, L.P. System and method for combining speech recognition outputs from a plurality of domain-specific speech recognizers via machine learning
JP5704692B2 (ja) 2010-11-30 2015-04-22 独立行政法人情報通信研究機構 パターン分類装置の学習装置及びそのためのコンピュータプログラム
US8352245B1 (en) 2010-12-30 2013-01-08 Google Inc. Adjusting language models
US20130317822A1 (en) 2011-02-03 2013-11-28 Takafumi Koshinaka Model adaptation device, model adaptation method, and program for model adaptation
US9081760B2 (en) 2011-03-08 2015-07-14 At&T Intellectual Property I, L.P. System and method for building diverse language models
US9679561B2 (en) 2011-03-28 2017-06-13 Nuance Communications, Inc. System and method for rapid customization of speech recognition models
US8489529B2 (en) 2011-03-31 2013-07-16 Microsoft Corporation Deep convex network with joint use of nonlinear random projection, Restricted Boltzmann Machine and batch-based parallelizable optimization
WO2012135218A2 (en) 2011-03-31 2012-10-04 Microsoft Corporation Combined activation for natural user interface systems
US10642934B2 (en) 2011-03-31 2020-05-05 Microsoft Technology Licensing, Llc Augmented conversational understanding architecture
US9244984B2 (en) 2011-03-31 2016-01-26 Microsoft Technology Licensing, Llc Location based conversational understanding
US8260615B1 (en) 2011-04-25 2012-09-04 Google Inc. Cross-lingual initialization of language models
US20120290293A1 (en) 2011-05-13 2012-11-15 Microsoft Corporation Exploiting Query Click Logs for Domain Detection in Spoken Language Understanding
US8918352B2 (en) 2011-05-23 2014-12-23 Microsoft Corporation Learning processes for single hidden layer neural networks with linear output units
US20130031476A1 (en) 2011-07-25 2013-01-31 Coin Emmett Voice activated virtual assistant
KR20130022513A (ko) 2011-08-24 2013-03-07 한국전자통신연구원 결합 쌍일차 변환 공간 기반의 화자 적응 방법 및 장치
CA3023918C (en) 2011-09-30 2022-11-29 Apple Inc. Using context information to facilitate processing of commands in a virtual assistant
US8698621B2 (en) 2011-11-22 2014-04-15 Verizon Patent And Licensing Inc. Method and system for providing notifications of a mobile device in motion to determine call treatment
US9235799B2 (en) 2011-11-26 2016-01-12 Microsoft Technology Licensing, Llc Discriminative pretraining of deep neural networks
US9324323B1 (en) 2012-01-13 2016-04-26 Google Inc. Speech recognition using topic-specific language models
US9263040B2 (en) 2012-01-17 2016-02-16 GM Global Technology Operations LLC Method and system for using sound related vehicle information to enhance speech recognition
JP2012128440A (ja) 2012-02-06 2012-07-05 Denso Corp 音声対話装置
CN102609264A (zh) * 2012-02-14 2012-07-25 深圳市同洲视讯传媒有限公司 一种调用应用程序编程接口生成调用代码的方法及装置
US9524730B2 (en) 2012-03-30 2016-12-20 Ohio State Innovation Foundation Monaural speech filter
US8346563B1 (en) 2012-04-10 2013-01-01 Artificial Solutions Ltd. System and methods for delivering advanced natural language interaction applications
GB201208373D0 (en) 2012-05-14 2012-06-27 Touchtype Ltd Mechanism for synchronising devices,system and method
US8600525B1 (en) 2012-05-31 2013-12-03 Honeywell Asca Inc. Efficient quadratic programming (QP) solver for process control and optimization
US9053708B2 (en) 2012-07-18 2015-06-09 International Business Machines Corporation System, method and program product for providing automatic speech recognition (ASR) in a shared resource environment
US10026394B1 (en) 2012-08-31 2018-07-17 Amazon Technologies, Inc. Managing dialogs on a speech recognition platform
US8527276B1 (en) 2012-10-25 2013-09-03 Google Inc. Speech synthesis using deep neural networks
US10282419B2 (en) 2012-12-12 2019-05-07 Nuance Communications, Inc. Multi-domain natural language processing architecture
KR101559124B1 (ko) 2013-02-28 2015-10-12 한양대학교 산학협력단 리튬황전지용 양극, 이를 포함하는 리튬황전지 및 이의 제조 방법
US9177550B2 (en) 2013-03-06 2015-11-03 Microsoft Technology Licensing, Llc Conservatively adapting a deep neural network in a recognition system
US9802693B2 (en) 2013-06-14 2017-10-31 The Boeing Company Control surface calibration system
US9728184B2 (en) 2013-06-18 2017-08-08 Microsoft Technology Licensing, Llc Restructuring deep neural network acoustic models
US9311298B2 (en) 2013-06-21 2016-04-12 Microsoft Technology Licensing, Llc Building conversational understanding systems using a toolset
US9589565B2 (en) 2013-06-21 2017-03-07 Microsoft Technology Licensing, Llc Environmentally aware dialog policies and response generation
CN103456299B (zh) 2013-08-01 2016-06-15 百度在线网络技术(北京)有限公司 一种控制语音识别的方法和装置
CN103400577B (zh) 2013-08-01 2015-09-16 百度在线网络技术(北京)有限公司 多语种语音识别的声学模型建立方法和装置
US9280968B2 (en) 2013-10-04 2016-03-08 At&T Intellectual Property I, L.P. System and method of using neural transforms of robust audio features for speech processing
US9721561B2 (en) 2013-12-05 2017-08-01 Nuance Communications, Inc. Method and apparatus for speech recognition using neural networks with speaker adaptation
US9373324B2 (en) 2013-12-06 2016-06-21 International Business Machines Corporation Applying speaker adaption techniques to correlated features
US9400955B2 (en) 2013-12-13 2016-07-26 Amazon Technologies, Inc. Reducing dynamic range of low-rank decomposition matrices
KR101937655B1 (ko) 2013-12-31 2019-01-11 코오롱인더스트리 주식회사 복합 중공사막 및 그 제조방법
US10339920B2 (en) 2014-03-04 2019-07-02 Amazon Technologies, Inc. Predicting pronunciation in speech recognition
US9324321B2 (en) 2014-03-07 2016-04-26 Microsoft Technology Licensing, Llc Low-footprint adaptation and personalization for a deep neural network
US9529794B2 (en) 2014-03-27 2016-12-27 Microsoft Technology Licensing, Llc Flexible schema for language model customization
US9520127B2 (en) 2014-04-29 2016-12-13 Microsoft Technology Licensing, Llc Shared hidden layer combination for speech recognition systems
US20150325236A1 (en) 2014-05-08 2015-11-12 Microsoft Corporation Context specific language model scale factors

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20130152092A1 (en) 2011-12-08 2013-06-13 Osher Yadgar Generic virtual personal assistant platform

Also Published As

Publication number Publication date
KR102303483B1 (ko) 2021-09-16
KR20160021787A (ko) 2016-02-26
CN110263327A (zh) 2019-09-20
KR20210114562A (ko) 2021-09-23
US9311298B2 (en) 2016-04-12
US20140379326A1 (en) 2014-12-25
WO2014204659A2 (en) 2014-12-24
EP3011472A2 (en) 2016-04-27
US20170255612A1 (en) 2017-09-07
US9697200B2 (en) 2017-07-04
US20160203125A1 (en) 2016-07-14
WO2014204659A3 (en) 2015-07-23
CN105474170A (zh) 2016-04-06
CN110263327B (zh) 2023-10-10
US10572602B2 (en) 2020-02-25
CN105474170B (zh) 2019-06-11

Similar Documents

Publication Publication Date Title
KR102406236B1 (ko) 대화 이해 시스템 구축 기법
AU2019208255B2 (en) Environmentally aware dialog policies and response generation
US9292492B2 (en) Scaling statistical language understanding systems across domains and intents
KR102469513B1 (ko) 불완전한 자연어 질의를 이해하기 위한 방법
US9875237B2 (en) Using human perception in building language understanding models
US9905226B2 (en) Voice command definitions used in launching application with a command
US20140379323A1 (en) Active learning using different knowledge sources
KR20160127810A (ko) 온스크린 아이템 선택 및 명확화를 위한 모델 기반 방식
US20150127319A1 (en) Filled Translation for Bootstrapping Language Understanding of Low-Resourced Languages
US20140350931A1 (en) Language model trained using predicted queries from statistical machine translation
US8996377B2 (en) Blending recorded speech with text-to-speech output for specific domains

Legal Events

Date Code Title Description
A107 Divisional application of patent
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant