KR20230132588A - 오디오 대화에 기초하는 사용자 지향 액션들 - Google Patents

오디오 대화에 기초하는 사용자 지향 액션들 Download PDF

Info

Publication number
KR20230132588A
KR20230132588A KR1020237028991A KR20237028991A KR20230132588A KR 20230132588 A KR20230132588 A KR 20230132588A KR 1020237028991 A KR1020237028991 A KR 1020237028991A KR 20237028991 A KR20237028991 A KR 20237028991A KR 20230132588 A KR20230132588 A KR 20230132588A
Authority
KR
South Korea
Prior art keywords
user
application
electronic device
information
conversation
Prior art date
Application number
KR1020237028991A
Other languages
English (en)
Inventor
비부덴두 모하파트라
윌리엄 클레이
Original Assignee
소니그룹주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 소니그룹주식회사 filed Critical 소니그룹주식회사
Publication of KR20230132588A publication Critical patent/KR20230132588A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/16Sound input; Sound output
    • G06F3/167Audio in a user interface, e.g. using voice commands for navigating, audio feedback
    • 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/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • 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
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • 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/06Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
    • G10L15/063Training
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • 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/26Speech to text 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/08Speech classification or search
    • G10L2015/088Word spotting
    • 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/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/223Execution procedure of a spoken command
    • 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/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/226Procedures used during a speech recognition process, e.g. man-machine dialogue using non-speech characteristics
    • G10L2015/227Procedures used during a speech recognition process, e.g. man-machine dialogue using non-speech characteristics of the speaker; Human-factor methodology
    • 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/22Procedures used during a speech recognition process, e.g. man-machine dialogue
    • G10L2015/226Procedures used during a speech recognition process, e.g. man-machine dialogue using non-speech characteristics
    • G10L2015/228Procedures used during a speech recognition process, e.g. man-machine dialogue using non-speech characteristics of application context

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Computational Linguistics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • Acoustics & Sound (AREA)
  • Software Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Computation (AREA)
  • Medical Informatics (AREA)
  • Data Mining & Analysis (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Telephone Function (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

오디오 대화에 기초하는 정보 추출 및 사용자 지향 액션들을 위한 전자 디바이스 및 방법이 제공된다. 전자 디바이스는, 제1 사용자 및 제2 사용자와 연관된 대화에 대응하는 오디오 신호를 수신한다. 전자 디바이스는 적어도 하나의 추출 기준에 기초하여 수신된 오디오 신호로부터 텍스트 정보를 추출한다. 전자 디바이스는 추출된 텍스트 정보에 머신 러닝 모델을 적용하여 추출된 텍스트 정보의 적어도 하나의 정보 타입을 식별한다. 전자 디바이스는 식별된 적어도 하나의 정보 타입에 기초하여 전자 디바이스와 연관된 애플리케이션들의 세트를 결정한다. 전자 디바이스는 적어도 하나의 선택 기준에 기초하여 결정된 애플리케이션들의 세트로부터 제1 애플리케이션을 선택하고, 텍스트 정보에 기초하여 선택된 제1 애플리케이션의 실행을 제어한다.

Description

오디오 대화에 기초하는 사용자 지향 액션들
관련 출원들에 대한 상호 참조/참조에 의한 포함
본 출원은, 2021년 3월 9일자로 미국 특허청에 출원된 미국 특허 출원 제17/195,923호의 우선권 이익을 주장한다. 상기에 언급된 출원들 각각은 이로써 그 전체가 참조로 본 명세서에 포함된다.
분야
본 개시내용의 다양한 실시예들은 정보 추출 및 사용자 지향 액션(user-oriented action)들에 관한 것이다. 더 구체적으로는, 본 개시내용의 다양한 실시예들은 오디오 대화에 기초하는 정보 추출 및 사용자 지향 액션들을 위한 전자 디바이스 및 방법에 관한 것이다.
정보 프로세싱 분야의 최근 진보들은 전자 디바이스(예를 들어, 모바일 폰, 스마트 폰, 및 다른 전자 디바이스들)를 사용하여 오디오를 프로세싱하기 위한 다양한 기술들(예컨대, 오디오-텍스트 변환(audio-to-text conversion))의 발전으로 이어졌다. 전형적으로, 전자 디바이스의 사용자가 다른 사용자와 대화(예를 들어, 전화 통화)할 때, 사용자는 진행 중인 대화 동안 한 피스(piece)의 관련 정보(예컨대, 이름, 전화 번호, 주소 등)를 기입 또는 세이브(save)할 필요가 있을 수도 있다. 그러나, 이것은 사용자가 다른 액션(예컨대, 걷기 또는 운전하기 등)을 수행하는 동안 대화를 유지하는 경우 고도로 불편할 수도 있다. 특정 상황들에서, 사용자는 펜 및/또는 종이를 찾는 동안 대화의 일 부분을 또한 놓칠 수도 있다. 특정 다른 상황들에서, 사용자는 대화를 스피커로 돌림으로써 정보를 전자 디바이스 내에 수동으로 입력할 수도 있는데, 이는 불편할 수도 있고 프라이버시 우려들을 일으킬 수도 있다. 다른 상황들에서, 사용자가 정보를 세이브하도록 애쓰는 경우에도, 사용자와 관련이 있거나 또는 세이브된 정보와 연관될 수도 있는, 대화 동안 말한 세이브되지 않은 정보의 다른 피스들이 있을 수도 있다.
본 출원의 나머지 부분에 그리고 도면들을 참조하여 제시된 바와 같은, 본 개시내용의 일부 양태들과의 설명된 시스템들의 비교를 통해, 종래의 그리고 전통적인 접근법들의 추가의 제한들 및 단점들이 본 기술분야의 통상의 기술자에게 명백해질 것이다.
청구범위에 더 완전하게 제시되는 바와 같이, 오디오 대화에 기초하는 정보 추출 및 사용자 지향 액션을 위한 전자 디바이스 및 방법은 실질적으로 도면들 중 적어도 하나에 도시되거나 그리고/또는 이와 관련하여 설명된 바와 같이 제공된다.
본 개시내용의 이들 그리고 다른 피처(feature)들 및 이점들은, 유사한 참조 번호들이 전반에 걸쳐 유사한 부분들을 지칭하는 첨부 도면들과 함께, 본 개시내용의 다음의 상세한 설명의 검토로부터 인지될 수도 있다.
도 1은 본 개시내용의 일 실시예에 따른, 오디오 대화에 기초하는 정보 추출 및 사용자 지향 액션들을 위한 예시적인 네트워크 환경을 예시하는 블록 다이어그램이다.
도 2는 본 개시내용의 일 실시예에 따른, 오디오 대화에 기초하는 정보 추출 및 사용자 지향 액션들을 위한 예시적인 전자 디바이스를 예시하는 블록 다이어그램이다.
도 3은 본 개시내용의 일 실시예에 따른, 오디오 대화에 기초하는 정보 추출 및 사용자 지향 액션들을 위해 전자 디바이스에 의해 수행되는 예시적인 동작들을 예시하는 다이어그램이다.
도 4a는 본 개시내용의 일 실시예에 따른, 출력 정보를 디스플레이할 수도 있는 예시적인 제1 사용자 인터페이스(user interface)(UI)를 예시하는 다이어그램이다.
도 4b는 본 개시내용의 일 실시예에 따른, 출력 정보를 디스플레이할 수도 있는 예시적인 제2 사용자 인터페이스(UI)를 예시하는 다이어그램이다.
도 4c는 본 개시내용의 일 실시예에 따른, 출력 정보를 디스플레이할 수도 있는 예시적인 제3 사용자 인터페이스(UI)를 예시하는 다이어그램이다.
도 4d는 본 개시내용의 일 실시예에 따른, 출력 정보를 디스플레이할 수도 있는 예시적인 제4 사용자 인터페이스(UI)를 예시하는 다이어그램이다.
도 4e는 본 개시내용의 일 실시예에 따른, 출력 정보를 디스플레이할 수도 있는 예시적인 제5 사용자 인터페이스(UI)를 예시하는 다이어그램이다.
도 5는 본 개시내용의 일 실시예에 따른, 오디오 신호들을 캡처링(capture)하기 위한 트리거로서 언어적 큐(verbal cue)들을 인식할 수도 있는 예시적인 사용자 인터페이스(UI)를 예시하는 다이어그램이다.
도 6은 본 개시내용의 일 실시예에 따른, 오디오 신호들을 캡처링하기 위한 트리거로서 사용자 입력을 수신할 수도 있는 예시적인 사용자 인터페이스(UI)를 예시하는 다이어그램이다.
도 7은 본 개시내용의 일 실시예에 따른, 사용자 입력에 기초하여 추출된 텍스트 정보를 검색할 수도 있는 예시적인 사용자 인터페이스(UI)를 예시하는 다이어그램이다.
도 8은 본 개시내용의 일 실시예에 따른, 오디오 대화에 기초하는 정보 추출 및 사용자 지향 액션들을 위해 채용되는 머신 러닝(machine learning)(ML) 모델을 트레이닝시키기 위한 예시적인 동작들을 예시하는 다이어그램이다.
도 9는 본 개시내용의 일 실시예에 따른, 오디오 대화에 기초하는 정보 추출 및 사용자 지향 액션들을 위한 예시적인 방법을 예시하는 흐름도를 도시한다.
오디오 대화로부터 자동 정보 추출을 위한 개시된 전자 디바이스 및 방법에서 다음의 설명되는 구현들이 발견될 수도 있다. 본 개시내용의 예시적인 양태들은 제1 사용자와 제2 사용자 사이의 대화를 위한 오디오 전용 통화 또는 오디오-비디오 통화를 실행하도록 구성될 수도 있는 전자 디바이스(예를 들어, 모바일 폰, 스마트 폰, 또는 다른 전자 디바이스)를 제공한다. 전자 디바이스는, 대화에 대응하는 오디오 신호를 수신할 수도 있고, 적어도 하나의 추출 기준에 기초하여 수신된 오디오 신호로부터 텍스트 정보를 추출할 수도 있다. 적어도 하나의 추출 기준의 예들은, 제1 사용자와 연관된 사용자 프로파일(user profile)(예컨대, 성별, 취미들 또는 관심사들, 직업, 빈번하게 방문한 장소들, 빈번하게 구매한 제품들 또는 서비스들 등), 제1 사용자와 대화하는 제2 사용자와 연관된 사용자 프로파일, 제1 사용자의 지오-로케이션(geo-location) 위치, 또는 현재 시간을 포함할 수도 있지만, 이에 제한되지 않는다. 예를 들어, 오디오 신호는 제1 사용자와 제2 사용자 사이의 실시간 대화 또는 레코딩된 메시지를 포함할 수도 있다. 추출된 텍스트 정보는, 제1 사용자와 관련된 특정 정보 타입을 포함할 수도 있다. 전자 디바이스는 추출된 텍스트 정보에 머신 러닝 모델을 적용하여 추출된 텍스트 정보의 적어도 하나의 정보 타입을 식별할 수도 있다. 예를 들어, 정보 타입은 위치, 전화 번호, 이름, 날짜, 시간 스케줄, 랜드마크, 고유 식별자, 또는 유니버설 리소스 로케이터(universal resource locator)를 포함할 수도 있지만, 이에 제한되지 않는다. 전자 디바이스는, 식별된 적어도 하나의 정보 타입에 기초하여 전자 디바이스와 연관된 애플리케이션들의 세트(예를 들어 - 그러나 이에 제한되지 않음 -, 전화 번호부, 캘린더 애플리케이션, 인터넷 브라우저, 텍스트 편집기 애플리케이션, 맵 애플리케이션, 전자 상거래 애플리케이션, 또는 서비스 제공자와 관련된 애플리케이션)를 추가로 결정할 수도 있다.
전자 디바이스는 적어도 하나의 선택 기준에 기초하여 결정된 애플리케이션들의 세트로부터 제1 애플리케이션을 선택할 수도 있다. 적어도 하나의 선택 기준의 예들은, 제1 사용자와 연관된 사용자 프로파일, 제2 사용자와 연관된 사용자 프로파일, 제1 사용자와 제2 사용자 사이의 관계, 대화의 맥락, 애플리케이션들의 세트를 실행하는 전자 디바이스의 능력, 애플리케이션들의 세트의 각각의 애플리케이션의 우선순위, 애플리케이션들의 세트의 각각의 애플리케이션의 선택 빈도, 애플리케이션들의 세트에 대응하는 사용 정보, 현재 뉴스, 현재 시간, 제1 사용자의 지오-로케이션, 일기 예보, 또는 제1 사용자의 상태를 포함할 수도 있지만, 이에 제한되지 않는다. 전자 디바이스는, 추출된 텍스트 정보에 기초하여 제1 애플리케이션의 실행을 추가로 제어할 수도 있고, 제1 애플리케이션의 실행에 기초하여 출력 정보(예컨대, 대화에 기초하는 태스크의 통지, 전화 번호부에 추가된 새로운 연락처의 통지, 또는 캘린더 애플리케이션에 추가된 리마인더의 통지, 내비게이션 맵, 웹사이트, 검색된 제품 또는 서비스, 제1 애플리케이션의 사용자 인터페이스 등)의 디스플레이를 제어할 수도 있다. 따라서, 개시된 전자 디바이스는 대화로부터 관련 정보(즉, 텍스트 정보)를 동적으로 추출할 수도 있고, 실시간으로의 대화로부터의 관련 정보(예컨대, 이름들, 전화 번호들, 주소들, 또는 임의의 다른 정보)의 추출에 의해 사용자 편의성을 개선시킬 수도 있다. 개시된 전자 디바이스는 추출된 정보를 사용하여 관련 액션(예컨대, 전화 번호의 세이브, 리마인더 설정, 웹사이트 열기, 내비게이션 맵 열기, 제품 또는 서비스의 검색 등)을 수행하고 편리한 사용 준비 방식으로 출력 정보를 디스플레이하기 위해 애플리케이션의 지능적인 선택 및 실행에 기초하여 사용자 경험을 추가로 향상시킬 수도 있다.
도 1은 본 개시내용의 일 실시예에 따른, 오디오 대화에 기초하는 정보 추출 및 사용자 지향 액션들을 위한 예시적인 네트워크 환경을 예시하는 블록 다이어그램이다. 도 1을 참조하면, 네트워크 환경(100)이 도시되어 있다. 네트워크 환경(100)에는, 전자 디바이스(102), 사용자 디바이스(104), 및 서버(106)가 도시되어 있는데, 이들은 통신 네트워크(108)를 통해 서로 통신가능하게 커플링될 수도 있다. 전자 디바이스(102)는, 정보 타입(110B)을 제공하기 위해 텍스트 정보(110A)를 프로세싱할 수도 있는 머신 러닝(ML) 모델(110)을 포함할 수도 있다. 전자 디바이스(102)는 애플리케이션들의 세트(112)를 더 포함할 수도 있다. 네트워크 환경(100)에는, 전자 디바이스(102)와 연관될 수도 있는 제1 사용자(114), 및 사용자 디바이스(104)와 연관될 수도 있는 제2 사용자(116)가 추가로 도시되어 있다. 애플리케이션들의 세트(112)는 제1 애플리케이션(112A), 제2 애플리케이션(112B) 등을 제N 애플리케이션(112N)까지 포함할 수도 있다. 도 1에 도시된 제1 애플리케이션(112A), 제2 애플리케이션(112B), 및 제N 애플리케이션(112N)은 단지 일 예로서 제시된다는 것에 주목할 수도 있다. 애플리케이션들의 세트(112)는 본 개시내용의 범주로부터 벗어남이 없이 오직 하나의 애플리케이션 또는 하나 초과의 애플리케이션을 포함할 수도 있다. 제1 사용자(114)와 제2 사용자(116) 사이의 대화는 단지 일 예로서 제시된다는 것에 주목할 수도 있다. 네트워크 환경은, (예를 들어, 전화 회의(conference call)를 통해) 대화를 수행하는 다수의 사용자들을 포함할 수도 있거나, 또는 본 개시내용의 범주로부터 벗어남이 없이, 제1 사용자(114)와 머신(예컨대, AI 어시스턴트) 사이의 대화, 2개 이상의 머신 사이의(예컨대, 2개 이상의 IoT 디바이스, 또는 V2X 통신 사이의) 대화, 또는 이들의 임의의 조합을 포함할 수도 있다.
전자 디바이스(102)는, 오디오 전용 통화 또는 오디오-비디오 통화를 실행 또는 프로세싱하도록 구성될 수도 있고, 애플리케이션들의 세트(112)를 호스팅하기 위한 동작 환경을 포함할 수도 있는 적합한 로직, 회로부, 및/또는 인터페이스들을 포함할 수도 있다. 전자 디바이스(102)는, 제1 사용자(114) 및 제2 사용자(116)와 연관된 또는 이들 사이의 대화에 대응하는 오디오 신호를 수신하도록 구성될 수도 있다. 전자 디바이스(102)는 적어도 하나의 추출 기준에 기초하여 수신된 오디오 신호로부터 텍스트 정보(110A)를 추출하도록 구성될 수도 있다. 전자 디바이스(102)는 적어도 하나의 선택 기준에 기초하여 제1 애플리케이션(112A)을 선택하도록 구성될 수도 있다. 전자 디바이스(102)는 텍스트 정보(110A)에 기초하여 선택된 제1 애플리케이션(112A)의 실행을 제어하도록 구성될 수도 있다. 전자 디바이스(102)는, 텍스트 정보(110A)의 추출, 제1 애플리케이션(112A)의 선택, 사용자 입력의 수신, 및 출력 정보의 디스플레이를 관리하기 위한 애플리케이션(서버(106)로부터 다운로드가능함)을 포함할 수도 있다. 전자 디바이스(102)의 예들은, 모바일 폰, 스마트 폰, 태블릿 컴퓨팅 디바이스, 퍼스널 컴퓨터, 게이밍 콘솔, 미디어 플레이어, 스마트 오디오 디바이스, 비디오 컨퍼런싱 디바이스(video conferencing device), 서버, 또는 통신 및 정보 프로세싱 능력을 갖는 다른 소비자 전자 디바이스를 포함할 수도 있지만, 이에 제한되지 않는다.
사용자 디바이스(104)는, 통신 네트워크(108)를 통해, 전자 디바이스(102)와 (예를 들어, 오디오 또는 오디오-비디오 통화들을 통해) 통신하도록 구성될 수도 있는 적합한 로직, 회로부, 및 인터페이스들을 포함할 수도 있다. 사용자 디바이스(104)는, 제2 사용자(116)와 연관된 소비자 전자 디바이스일 수도 있고, 예를 들어, 모바일 폰, 스마트 폰, 태블릿 컴퓨팅 디바이스, 퍼스널 컴퓨터, 게이밍 콘솔, 미디어 플레이어, 스마트 오디오 디바이스, 비디오 컨퍼런싱 디바이스, 또는 통신 능력을 갖는 다른 소비자 전자 디바이스를 포함할 수도 있다.
서버(106)는, 중앙집중화된 머신 러닝(ML) 모델을 저장하도록 구성될 수도 있는 적합한 로직, 회로부, 및 인터페이스들을 포함할 수도 있다. 일부 실시예들에서, 서버(106)는 ML 모델을 트레이닝시키고 ML 모델(예컨대, ML 모델(110))의 카피들(copies)을 최종 사용자 디바이스들(예컨대, 전자 디바이스(102))에게 배포하도록 구성될 수도 있다. 서버(106)는 텍스트 정보(110A)의 추출, 제1 애플리케이션(112A)의 선택, 사용자 입력의 수신, 및 출력 정보의 디스플레이를 관리하기 위해 전자 디바이스(102)에 다운로드가능 애플리케이션을 제공할 수도 있다. 특정 경우들에서, 서버(106)는, 웹 애플리케이션들, 클라우드 애플리케이션들, HTTP 요청들, 리포지토리(repository) 동작들, 파일 전송, 및 이와 유사한 것을 통해 동작들을 실행할 수도 있는 클라우드 서버로서 구현될 수도 있다. 서버(106)의 다른 예시적인 구현들은 데이터베이스 서버, 파일 서버, 웹 서버, 미디어 서버, 애플리케이션 서버, 메인프레임 서버, 또는 다른 타입들의 서버들을 포함할 수도 있지만, 이에 제한되지 않는다. 특정 실시예들에서, 서버(106)는 본 기술분야의 통상의 기술자들에게 잘 알려진 몇몇 기술들의 사용에 의해 복수의 분산된 클라우드 기반 리소스들로서 구현될 수도 있다. 본 기술분야의 통상의 기술자는 본 개시내용의 범주가 별개의 엔티티들로서의 서버(106) 및 전자 디바이스(102)의 구현으로 제한되지 않을 수도 있다는 것을 이해할 것이다. 그에 따라, 특정 실시예들에서, 서버(106)의 기능성들은 본 개시내용의 범주로부터 벗어남이 없이 전체적으로 또는 적어도 부분적으로 전자 디바이스(102)에 포함될 수도 있다.
통신 네트워크(108)는, 전자 디바이스(102), 사용자 디바이스(104), 및/또는 서버(106)가 서로 통신할 수도 있게 하는 통신 매체를 포함할 수도 있다. 통신 네트워크(108)는 유선 또는 무선 통신 네트워크일 수도 있다. 통신 네트워크(108)의 예들은 인터넷, 클라우드 네트워크, 무선 충실도(Wireless Fidelity)(Wi-Fi) 네트워크, 개인 영역 네트워크(Personal Area Network)(PAN), 로컬 영역 네트워크(Local Area Network)(LAN), 또는 도시 영역 네트워크(Metropolitan Area Network)(MAN)를 포함할 수도 있지만, 이에 제한되지 않는다. 네트워크 환경(100)에서의 다양한 디바이스들은 다양한 유선 및 무선 통신 프로토콜들에 따라 통신 네트워크(108)에 연결하도록 구성될 수도 있다. 그러한 유선 및 무선 통신 프로토콜들의 예들은 송신 제어 프로토콜 및 인터넷 프로토콜(Transmission Control Protocol and Internet Protocol)(TCP/IP), 사용자 데이터그램 프로토콜(User Datagram Protocol)(UDP), 하이퍼텍스트 전송 프로토콜(Hypertext Transfer Protocol)(HTTP), 파일 전송 프로토콜(File Transfer Protocol)(FTP), 지그비(Zig Bee), EDGE, IEEE 802.11, Li-Fi(light fidelity), 802.16, IEEE 802.11s, IEEE 802.11g, 멀티-홉 통신, 무선 액세스 포인트(access point)(AP), 디바이스 대 디바이스 통신(device to device communication), 셀룰러 통신 프로토콜들, 및 블루투스(Bluetooth)(BT) 통신 프로토콜들 중 적어도 하나를 포함할 수도 있지만, 이에 제한되지 않는다.
ML 모델(110)은 타입 식별 모델일 수도 있는데, 이는 적어도 하나의 정보 타입의 분류 태스크 또는 타입 식별 태스크에 대해 트레이닝될 수도 있다. ML 모델(110)은, 대화에(또는 텍스트 정보(110A)에) 전형적으로 존재하는 상이한 정보 타입들의 트레이닝 데이터세트에 대해 미리 트레이닝될 수도 있다. ML 모델(110)은 그의 하이퍼파라미터들, 예를 들어, 활성화 함수(들), 가중치들의 수, 비용 함수, 정규화 함수, 입력 사이즈, 레이어들의 수, 및 이와 유사한 것에 의해 정의될 수도 있다. ML 모델(110)의 하이퍼파라미터들은 튜닝될 수도 있고, 가중치들은, 입력들, 예컨대 트레이닝 데이터세트에서의 피처들과 출력 레이블들, 예컨대 상이한 정보 타입, 예를 들어, 위치, 전화 번호, 이름, 식별자, 또는 날짜 사이의 관계를 식별하도록 트레이닝 데이터세트에 대해 ML 모델(110)을 트레이닝시키기 전에 또는 그 동안에 업데이트될 수도 있다. 트레이닝 데이터세트에서의 피처 정보에 대한 트레이닝의 몇몇 에폭(epoch)들 후에, ML 모델(110)은 (텍스트 정보(110A)와 같은) 입력들의 세트에 대한 예측/분류 결과를 출력하도록 트레이닝될 수도 있다. 예측 결과는, 입력들(예를 들어, 새로운/보이지 않는 인스턴스들로부터 추출된 입력 피처들)의 세트의 각각의 입력에 대한 클래스 레이블(즉, 정보 타입)을 표시할 수도 있다. 예를 들어, ML 모델(110)은 추출된 텍스트 정보(110A)의 정보 타입(110B)과 같은 결과를 예측하기 위해 몇몇 트레이닝 텍스트 정보(110A)에 대해 트레이닝될 수도 있다. 일부 실시예들에서, ML 모델(110)은 식별된 정보 타입(110B) 또는 각각의 정보 타입에 대한 애플리케이션의 사용자 선택의 이력 중 어느 하나에 기초하여 애플리케이션들의 세트(112)의 결정에 대해 또한 트레이닝 또는 재트레이닝될 수도 있다.
일 실시예에서, ML 모델(110)은, 예를 들어, 전자 디바이스(102) 상에서 실행가능한 애플리케이션의 소프트웨어 컴포넌트로서 구현될 수도 있는 전자 데이터를 포함할 수도 있다. ML 모델(110)은 전자 디바이스(102)와 같은 프로세싱 디바이스에 의한 실행을 위해 라이브러리들, 외부 스크립트들, 또는 다른 로직/명령어들에 의존할 수도 있다. ML 모델(110)은, 전자 디바이스(102)와 같은 컴퓨팅 디바이스가, 추출된 텍스트 정보의 정보 타입을 검출하기 위해 하나 이상의 동작을 수행하는 것을 가능하게 하기 위한 컴퓨터 실행가능 코드들 또는 루틴들을 포함할 수도 있다. 추가적으로 또는 대안적으로, ML 모델(110)은, 프로세서, 마이크로프로세서(예를 들어, 하나 이상의 동작을 수행하거나 그의 수행을 제어하기 위함), 필드 프로그래밍가능 게이트 어레이(field-programmable gate array)(FPGA), 또는 주문형 집적 회로(application-specific integrated circuit)(ASIC)를 포함하는 하드웨어를 사용하여 구현될 수도 있다. 예를 들어, 식별 태스크를 위한 ML 모델(110)의 계산들을 가속화하기 위해 추론 가속기 칩이 전자 디바이스(102)에 포함될 수도 있다. 일부 실시예들에서, ML 모델(110)은 하드웨어와 소프트웨어 양측 모두의 조합을 사용하여 구현될 수도 있다. ML 모델(110)의 예들은, 회귀 방법(들), 인스턴스 기반 방법(들), 정규화 방법(들), 판정 트리 방법(decision tree method)(들), 베이지안 방법(Bayesian method)(들), 클러스터링 방법(들), 연관 규칙 학습, 및 차원 축소 방법(dimensionality reduction method)(들) 중 하나 이상에 기초하는 모델 또는 뉴럴 네트워크 모델(neural network model)을 포함할 수도 있지만, 이에 제한되지 않는다.
ML 모델(110)의 예들은, 딥 뉴럴 네트워크(deep neural network)(DNN), 순환 뉴럴 네트워크(recurrent neural network)(RNN), 인공 뉴럴 네트워크(artificial neural network)(ANN), (You Only Look Once) YOLO 네트워크, 장단기 메모리(Long Short Term Memory)(LSTM) 네트워크 기반 RNN, CNN+ANN, LSTM+ANN, 게이티드 순환 유닛(gated recurrent unit)(GRU) 기반 RNN, 완전 연결된 뉴럴 네트워크, 연결주의 시간 분류(Connectionist Temporal Classification)(CTC) 기반 RNN, 딥 베이지안 뉴럴 네트워크, 생성적 적대 네트워크(Generative Adversarial Network)(GAN), 및/또는 그러한 네트워크들의 조합과 같은 - 그러나 이에 제한되지 않음 - 뉴럴 네트워크 모델을 포함할 수도 있다. 일부 실시예들에서, ML 모델(110)은, 데이터 흐름 그래프들을 사용하는 수치 계산 기법들을 포함할 수도 있다. 특정 실시예들에서, ML 모델(110)은 다수의 딥 뉴럴 네트워크(DNN)들의 하이브리드 아키텍처에 기초할 수도 있다.
애플리케이션들의 세트(112)는, 텍스트 정보(110A)에 기초하여 전자 디바이스의 운영 체제 상에서 실행할 수도 있는 적합한 로직, 코드, 및/또는 인터페이스들을 포함할 수도 있다. 애플리케이션들의 세트(112)의 각각의 애플리케이션은, 텍스트 정보(110A)에 기초하여 특정 액션을 수행하도록 구성되는 명령어들의 세트 또는 프로그램을 포함할 수도 있다. 애플리케이션들의 세트(112)의 예들은, 캘린더 애플리케이션, 전화 번호부 애플리케이션, 맵 애플리케이션, 메모 애플리케이션, 텍스트 편집기 애플리케이션, 전자 상거래 애플리케이션(예컨대, 쇼핑 애플리케이션, 음식 주문 애플리케이션, 티켓팅 애플리케이션 등), 모바일 뱅킹 애플리케이션, 전자 학습 애플리케이션, 전자 지갑 애플리케이션, 인스턴트 메시징 애플리케이션, 이메일 애플리케이션, 브라우저 애플리케이션, 엔터프라이즈 애플리케이션, 택시 애그리게이터 애플리케이션(cab aggregator application), 번역기 애플리케이션, 전자 디바이스(102) 상에 설치된 임의의 다른 애플리케이션들, 또는 전자 디바이스(102)를 통해 액세스가능한 클라우드 기반 애플리케이션을 포함할 수도 있지만, 이에 제한되지 않는다. 일 예에서, 제1 애플리케이션(112A)은 캘린더 애플리케이션에 대응할 수도 있고, 제2 애플리케이션(112B)은 전화 번호부 애플리케이션에 대응할 수도 있다.
동작 시에, 전자 디바이스(102)는 오디오 캡처링 디바이스(audio capturing device)(206)(도 2에 설명된 바와 같음)를 사용하여 제1 사용자(114)와 제2 사용자(116) 사이의 대화와 연관된 오디오 신호를 캡처링하기 위한 트리거(예컨대, 사용자 입력 또는 언어적 큐)를 수신 또는 인식하도록 구성될 수도 있다. 예를 들어, 오디오 신호는 제1 사용자(114)와 제2 사용자(116) 사이의 실시간 대화 또는 레코딩된 메시지를 포함할 수도 있다. 전자 디바이스(102)는 제1 사용자(114)와 제2 사용자(116) 사이의 대화에 대응하는 오디오 신호를 수신 또는 취출하도록 구성될 수도 있다. 전자 디바이스(102)는, 예를 들어, 도 3에 설명된 바와 같이, 적어도 하나의 추출 기준에 기초하여 수신된 오디오 신호로부터 텍스트 정보(110A)를 추출하도록 구성될 수도 있다. 적어도 하나의 추출 기준의 예들은, 제1 사용자(114)와 연관된 사용자 프로파일, 제1 사용자(114)와 대화하는 제2 사용자(116)와 연관된 사용자 프로파일, 제1 사용자(114)의 지오-로케이션 위치, 현재 시간 등을 포함할 수도 있지만, 이에 제한되지 않는다. 전자 디바이스(102)는 다양한 음성-텍스트 변환 기법들 및 자연어 프로세싱(natural language processing)(NLP) 기법들을 사용하여 수신된 오디오 신호에 대응하는 텍스트 정보를 생성하도록 구성될 수도 있다. 예를 들어, 전자 디바이스(102)는 음성-텍스트 변환 기법들을 채용하여 수신된 오디오 신호를 원시 텍스트로 변환한 후에, NLP 기법들을 채용하여 원시 텍스트로부터 텍스트 정보(110A)(예컨대, 이름, 전화 번호, 주소 등)를 추출할 수도 있다. 음성-텍스트 변환 기법들은, 대화에서의 수신된 오디오 신호(예컨대, 음성 신호)의 분석, 그리고 원시 텍스트로의 수신된 오디오 신호의 변환과 연관된 기법에 대응할 수도 있다. 원시 텍스트 및/또는 오디오 신호의 분석과 연관된 NLP 기법들의 예들은, 자동 요약, 감정 분석, 맥락 추출, 품사 태깅(parts-of-speech tagging), 의미론적 관계 추출(semantic relationship extraction), 스테밍(stemming), 텍스트 마이닝(text mining), 및 머신 번역을 포함할 수도 있지만, 이에 제한되지 않는다.
전자 디바이스(102)는 추출된 텍스트 정보(110A)에 ML 모델(110)을 적용하여 추출된 텍스트 정보(110A)의 적어도 하나의 정보 타입(110B)을 식별하도록 구성될 수도 있다. 적어도 하나의 정보 타입(110B)은 위치, 전화 번호, 이름, 날짜, 시간 스케줄, 랜드마크, 고유 식별자, 또는 유니버설 리소스 로케이터를 포함할 수도 있지만, 이에 제한되지 않는다. 정보 타입(110B)의 식별을 위해 사용되는 ML 모델(110)은, 텍스트 정보(110A)의 추출을 위해 사용되는 것과 동일하거나 또는 상이할 수도 있다. ML 모델(110)은, 임의의 대화에 전형적으로 존재하는 상이한 정보 타입들(110B)의 트레이닝 데이터세트에 대해 미리 트레이닝될 수도 있다. 정보 타입(110B)을 식별하기 위한 ML 모델의 적용의 세부사항들이, 예를 들어, 도 3에 설명된 바와 같다. 따라서, 개시된 전자 디바이스(102)는 실시간으로 대화로부터의 텍스트 정보(110A)의 자동 추출 및 정보 타입의 식별을 제공할 수도 있다. 그에 따라, 개시된 전자 디바이스(102)는 대화 동안 일부 정보(예컨대, 이름들, 전화 번호들, 주소들, 또는 임의의 다른 정보)를 기입 또는 세이브하기 위해 제1 사용자(114)가 직면한 시간 소모 및 어려움을 감소시킨다. 그 결과, 제1 사용자(114)는 대화의 임의의 중요한 또는 관련 부분을 놓치지 않을 수도 있다.
전자 디바이스(102)는, 예를 들어, 도 4a 내지 도 4e에 설명된 바와 같이 식별된 정보 타입(110B)에 기초하여 전자 디바이스(102)와 연관된 애플리케이션들의 세트(112)를 결정하도록 추가로 구성될 수도 있다. 적어도 하나의 선택 기준에 기초하여, 전자 디바이스(102)는, 예를 들어, 도 3에 설명된 바와 같이 결정된 애플리케이션들의 세트(112)로부터 제1 애플리케이션(112A)을 선택하도록 구성될 수도 있다. 적어도 하나의 선택 기준의 예들은, 제1 사용자(114)와 연관된 사용자 프로파일, 제2 사용자(116)와 연관된 사용자 프로파일, 제1 사용자(114)와 제2 사용자(116) 사이의 관계, 대화의 맥락, 애플리케이션들의 세트(112)를 실행하는 전자 디바이스(102)의 능력, 애플리케이션들의 세트(112)의 각각의 애플리케이션의 우선순위, 애플리케이션들의 세트(112)의 각각의 애플리케이션의 선택 빈도, 애플리케이션들의 세트(112)에 대응하는 사용 정보, 현재 뉴스, 현재 시간, 제1 사용자(114)의 지오-로케이션, 일기 예보, 또는 제1 사용자(114)의 상태를 포함할 수도 있지만, 이에 제한되지 않는다.
전자 디바이스(102)는, 예를 들어, 도 3 및 도 4a 내지 도 4e에 설명된 바와 같이 텍스트 정보(110A)에 기초하여 선택된 제1 애플리케이션(112A)의 실행을 제어하도록 추가로 구성될 수도 있다. 개시된 전자 디바이스(102)는 출력 정보를 디스플레이하기 위해 선택된 제1 애플리케이션(112A)의 실행의 자동 제어를 제공할 수도 있다. 출력 정보의 예들은, 태스크를 실행하기 위한 명령어들의 세트, 텍스트 정보(110A)와 관련된 URL(uniform resource locator), 텍스트 정보(110A)와 관련된 웹사이트, 텍스트 정보(110A)에서의 키워드, 대화에 기초하는 태스크의 통지, 제1 애플리케이션(112A)으로서 전화 번호부에 추가된 새로운 연락처의 통지, 제1 애플리케이션(112A)으로서 캘린더 애플리케이션에 추가된 리마인더의 통지, 또는 제1 애플리케이션(112A)의 사용자 인터페이스 중 적어도 하나를 포함할 수도 있지만, 이에 제한되지 않는다. 따라서, 전자 디바이스(102)는 추출된 텍스트 정보(110A)를 사용하여 관련 액션(예컨대, 전화 번호의 세이브, 리마인더 설정, 웹사이트 열기, 내비게이션 맵 열기, 제품 또는 서비스의 검색 등)을 수행하고 편리한 사용 준비 방식으로 출력 정보를 디스플레이하기 위해 제1 애플리케이션(112A)(예컨대, 전화 번호부 애플리케이션, 캘린더 애플리케이션, 브라우저, 내비게이션 애플리케이션, 전자 상거래 애플리케이션, 또는 다른 관련 애플리케이션 등)의 지능적인 선택 및 실행에 의해 사용자 경험을 향상시킬 수도 있다. 추출된 텍스트 정보(110A)에 기초하여 하나 이상의 애플리케이션에 의해 수행되는 상이한 액션들의 세부사항들이, 예를 들어, 도 4a 내지 도 4e에 제공된다.
일 실시예에서, 전자 디바이스(102)는, 제1 사용자(114)와 대화하는 제2 사용자(116)의 사용자 프로파일, 제1 사용자(114)와 제2 사용자(116)의 관계, 제1 사용자(114)와 제2 사용자(116) 각각의 직업, 제2 사용자(116)와의 제1 사용자(114)의 대화의 빈도, 또는 대화의 시간에 기초하여 대화의 맥락을 결정하도록 구성될 수도 있다. 특정 실시예들에서, 전자 디바이스(102)는 제1 사용자(114)와 제2 사용자(116)의 관계에 기초하여 애플리케이션들의 세트(112)의 각각의 애플리케이션과 연관된 우선순위를 변경하도록 구성될 수도 있다.
일 실시예에서, 전자 디바이스(102)는, 예를 들어, 도 4a 내지 도 4c에 설명된 바와 같이, 사용자 입력에 기초하여 제1 애플리케이션(112A)을 선택하고, 선택된 제1 애플리케이션(112A)에 기초하여 ML 모델(110)을 트레이닝 또는 재트레이닝시키도록 구성될 수도 있다. 다른 실시예에서, 전자 디바이스는 사용자 입력에 기초하여 추출된 텍스트 정보를 검색하고, 검색의 결과의 디스플레이를 제어하도록 구성될 수도 있다. 전자 디바이스(102)는, 예를 들어, 도 7에 설명된 바와 같이 결과의 타입에 기초하여 적어도 하나의 정보 타입을 식별하도록 ML 모델(110)을 트레이닝시키도록 추가로 구성될 수도 있다.
도 2는 본 개시내용의 일 실시예에 따른, 오디오 대화에 기초하는 정보 추출 및 사용자 지향 액션들을 위한 도 1의 예시적인 전자 디바이스를 예시하는 블록 다이어그램이다. 도 2는 도 1로부터의 요소들과 관련하여 기술된다. 도 2를 참조하면, 전자 디바이스(102)의 블록 다이어그램(200)이 도시되어 있다. 전자 디바이스(102)는 회로부(202)를 포함할 수도 있다. 전자 디바이스(102)는 메모리(204), 오디오 캡처링 디바이스(206), 및 I/O 디바이스(208)를 더 포함할 수도 있다. I/O 디바이스(208)는 디스플레이 디바이스(212)를 더 포함할 수도 있다. 추가로, 전자 디바이스(102)는, 전자 디바이스(102)가 통신 네트워크(108)에 연결될 수도 있게 하는 네트워크 인터페이스(210)를 포함할 수도 있다. 메모리(204)는 트레이닝된 ML 모델(110) 및 연관된 트레이닝 데이터를 저장할 수도 있다.
회로부(202)는, 전자 디바이스(102)에 의해 실행될 상이한 동작들과 연관된 프로그램 명령어들을 실행하도록 구성될 수도 있는 적합한 로직, 회로부, 인터페이스들, 및/또는 코드를 포함할 수도 있다. 예를 들어, 동작들 중 일부는, 오디오 신호의 수신, 텍스트 정보(110A)의 추출, 추출된 텍스트 정보(110A)에 대한 ML 모델(110)의 적용, 텍스트 정보(110A) 타입의 식별, 애플리케이션들의 세트(112)의 결정, 제1 애플리케이션(112A)의 선택, 및 선택된 제1 애플리케이션(112A)의 실행의 제어를 포함할 수도 있다. 회로부(202)는, 별개의 프로세서로서 구현될 수도 있는 하나 이상의 특수화된 프로세싱 유닛을 포함할 수도 있다. 일 실시예에서, 하나 이상의 특수화된 프로세싱 유닛은, 하나 이상의 특수화된 프로세싱 유닛의 기능들을 집합적으로 수행하는 프로세서들의 클러스터 또는 집적 프로세서로서 구현될 수도 있다. 회로부(202)는 본 기술분야에 알려져 있는 다수의 프로세서 기술들에 기초하여 구현될 수도 있다. 회로부(202)의 구현들의 예들은 X86 기반 프로세서, 그래픽 프로세싱 유닛(Graphics Processing Unit)(GPU), 축소 명령어 세트 컴퓨팅(Reduced Instruction Set Computing)(RISC) 프로세서, 주문형 집적 회로(ASIC) 프로세서, 복합 명령어 세트 컴퓨팅(Complex Instruction Set Computing)(CISC) 프로세서, 마이크로컨트롤러, 중앙 프로세싱 유닛(central processing unit)(CPU), 및/또는 다른 제어 회로들일 수도 있다.
메모리(204)는, 회로부(202)에 의해 실행될 하나 이상의 명령어를 저장하도록 구성될 수도 있는 적합한 로직, 회로부, 인터페이스들, 및/또는 코드를 포함할 수도 있다. 메모리(204)는 오디오 신호, 추출된 텍스트 정보(110A), 정보 타입(110B), 및 출력 정보를 저장하도록 구성될 수도 있다. 일부 실시예들에서, 메모리(204)는 ML 모델(110)을 호스팅하여 정보 타입(110B)을 식별하고 애플리케이션들의 세트(112)를 선택하도록 구성될 수도 있다. 메모리(204)는 애플리케이션들의 세트(112)와 연관된 사용자 데이터 및 애플리케이션 데이터를 저장하도록 추가로 구성될 수도 있다. 메모리(204)의 구현의 예들은 랜덤 액세스 메모리(Random Access Memory)(RAM), 판독 전용 메모리(Read Only Memory)(ROM), 전기적 소거가능 프로그래밍가능 판독 전용 메모리(Electrically Erasable Programmable Read-Only Memory)(EEPROM), 하드 디스크 드라이브(Hard Disk Drive)(HDD), 솔리드 스테이트 드라이브(Solid-State Drive)(SSD), CPU 캐시, 및/또는 보안 디지털(Secure Digital)(SD) 카드를 포함할 수도 있지만, 이에 제한되지 않는다.
오디오 캡처링 디바이스(206)는, 제1 사용자(114)와 제2 사용자(116) 사이의 대화에 대응하는 오디오 신호를 캡처링하도록 구성될 수도 있는 적합한 로직, 회로부, 코드 및/또는 인터페이스들을 포함할 수도 있다. 오디오 캡처링 디바이스(206)의 예들은, 레코더, 일렉트릿 마이크로폰(electret microphone), 다이내믹 마이크로폰, 카본 마이크로폰, 압전 마이크로폰, 섬유 마이크로폰, 마이크로-전자-기계-시스템(micro-electro-mechanical-systems)(MEMS) 마이크로폰, 또는 다른 마이크로폰들을 포함할 수도 있지만, 이에 제한되지 않는다.
I/O 디바이스(208)는, 입력을 수신하고 수신된 입력에 기초하여 출력을 제공하도록 구성될 수도 있는 적합한 로직, 회로부, 인터페이스들, 및/또는 코드를 포함할 수도 있다. I/O 디바이스(208)는, 회로부(202)와 통신하도록 구성될 수도 있는 다양한 입력 및 출력 디바이스들을 포함할 수도 있다. 예를 들어, 전자 디바이스(102)는 I/O 디바이스(208)를 통해 사용자 입력을 수신하여, 대화와 연관된 오디오 신호의 캡처를 트리거하고, 제1 애플리케이션(112A)을 선택하며, 추출된 텍스트 정보(110A)를 검색할 수도 있다. 추가로, 전자 디바이스(102)는 출력 정보를 렌더링하도록 I/O 디바이스(208)를 제어할 수도 있다. I/O 디바이스(208)의 예들은 터치 스크린, 키보드, 마우스, 조이스틱, 디스플레이 디바이스(예를 들어, 디스플레이 디바이스(212)), 마이크로폰, 또는 스피커를 포함할 수도 있지만, 이에 제한되지 않는다.
디스플레이 디바이스(212)는, 제1 애플리케이션(112A)의 출력 정보를 디스플레이하도록 구성될 수도 있는 적합한 로직, 회로부, 및/또는 인터페이스들을 포함할 수도 있다. 하나의 실시예에서, 디스플레이 디바이스(212)는, 디스플레이 디바이스(212)가 터치에 의한 사용자 입력을 수신하는 것을 가능하게 할 수도 있는 터치 가능 디바이스일 수도 있다. 디스플레이 디바이스(212)는, 액정 디스플레이(Liquid Crystal Display)(LCD) 디스플레이, 발광 다이오드(Light Emitting Diode)(LED) 디스플레이, 플라즈마 디스플레이, 또는 유기 LED(Organic LED)(OLED) 디스플레이 기술, 또는 다른 디스플레이 기술들 중 적어도 하나와 같은 - 그러나 이에 제한되지 않음 - 몇몇 알려진 기술들을 통해 실현될 수도 있는 디스플레이 유닛을 포함할 수도 있다.
네트워크 인터페이스(210)는, 통신 네트워크(108)를 통해 전자 디바이스(102), 사용자 디바이스(104), 및 서버(106) 사이의 통신을 용이하게 하도록 구성될 수도 있는 적합한 로직, 회로부, 인터페이스들, 및/또는 코드를 포함할 수도 있다. 네트워크 인터페이스(210)는 통신 네트워크(108)와의 전자 디바이스(102)의 유선 또는 무선 통신을 지원하기 위한 다양한 알려진 기술들의 사용에 의해 구현될 수도 있다. 네트워크 인터페이스(210)는 안테나, 라디오 주파수(radio frequency)(RF) 트랜시버, 하나 이상의 증폭기, 튜너, 하나 이상의 오실레이터, 디지털 신호 프로세서, 코더-디코더(coder-decoder)(CODEC) 칩셋, 가입자 식별 모듈(subscriber identity module)(SIM) 카드, 또는 로컬 버퍼 회로부를 포함할 수도 있지만, 이에 제한되지 않는다.
네트워크 인터페이스(210)는 인터넷, 인트라넷, 무선 네트워크, 셀룰러 전화 네트워크, 무선 로컬 영역 네트워크(LAN), 또는 도시 영역 네트워크(MAN)와 같은 네트워크들과의 무선 통신을 통해 통신하도록 구성될 수도 있다. 무선 통신은 모바일 통신용 글로벌 시스템(Global System for Mobile Communications)(GSM), 향상된 데이터 GSM 환경(Enhanced Data GSM Environment)(EDGE), 광대역 코드 분할 다중 액세스(wideband code division multiple access)(W-CDMA), 롱 텀 에볼루션(Long Term Evolution)(LTE), 코드 분할 다중 액세스(code division multiple access)(CDMA), 시분할 다중 액세스(time division multiple access)(TDMA), 블루투스, 무선 충실도(Wi-Fi)(예컨대, IEEE 802.11a, IEEE 802.11b, IEEE 802.11g 또는 IEEE 802.11n), 음성 인터넷 프로토콜(voice over Internet Protocol)(VoIP), Li-Fi(light fidelity), 마이크로파 액세스를 위한 세계적 상호운용성(Worldwide Interoperability for Microwave Access)(Wi-MAX)과 같은 복수의 통신 표준들, 프로토콜들 및 기술들 중 하나 이상을 사용하도록 구성될 수도 있다.
본 기술분야의 통상의 기술자는, 도 2의 전자 디바이스(102)가, 본 개시내용의 기능 및 동작을 설명 및 기술하기 위해 본 명세서에서 예시되는 컴포넌트들 또는 시스템들에 추가적으로, 다른 적합한 컴포넌트들 또는 시스템들을 또한 포함할 수도 있다는 것을 이해할 것이다. 전자 디바이스(102)의 다른 컴포넌트들 또는 시스템들에 대한 상세한 설명이 간결함을 위해 본 개시내용으로부터 생략되었다. 회로부(202)의 동작들은, 예를 들어, 도 3, 도 4a 내지 도 4e, 도 5, 도 6, 도 7, 도 8, 및 도 9에서 추가로 설명된다.
도 3은 본 개시내용의 일 실시예에 따른, 오디오 대화에 기초하는 정보 추출 및 사용자 지향 액션들을 위해 전자 디바이스에 의해 수행되는 예시적인 동작들을 예시하는 다이어그램이다. 도 3은 도 1 및 도 2로부터의 요소들과 관련하여 기술된다. 도 3을 참조하면, 본 명세서에서 설명되는 바와 같은, 302 내지 314로부터의 예시적인 동작들을 예시하는 블록 다이어그램(300)이 도시되어 있다. 블록 다이어그램(300)에 예시된 예시적인 동작들은 302에서 시작할 수도 있고, 임의의 컴퓨팅 시스템, 장치, 또는 디바이스에 의해, 예컨대 도 1의 전자 디바이스(102) 또는 도 2의 회로부(202)에 의해 수행될 수도 있다. 도 3을 참조하면, 전자 디바이스(302A)가 추가로 도시되어 있다. 전자 디바이스(302A)의 구성 및 기능성들은, 예를 들어, 도 1에 설명된 전자 디바이스(102)의 구성 및 기능성들과 동일할 수도 있다. 그에 따라, 전자 디바이스(302A)의 설명이 간결함을 위해 본 개시내용으로부터 생략된다.
302에서, 오디오 신호가 수신될 수도 있다. 회로부(202)는, 제1 사용자(예컨대, 제1 사용자(114))와 제2 사용자(예컨대, 제2 사용자(116)) 사이의 대화에 대응하는 오디오 신호를 수신할 수도 있다. 제1 사용자(114) 및 제2 사용자(116)는 대화에서 수신단(예컨대, 수신자) 또는 송신단(예컨대, 발신자)에 각각 대응할 수도 있다. 오디오 신호는, 제1 사용자(114)와 제2 사용자(116) 사이의 실시간 대화 또는 레코딩된 메시지 중 적어도 하나를 포함할 수도 있다. 일 실시예에서, 회로부(202)는, 예를 들어, 도 5 및 도 6에 설명된 바와 같이, 트리거(예컨대, 언어적 큐 또는 사용자 입력에 기초하여 오디오 신호를 캡처링하기 위해 오디오 캡처링 디바이스(예컨대, 오디오 캡처링 디바이스(206))를 제어할 수도 있다). 회로부(202)는 데이터 소스로부터 오디오 신호를 수신할 수도 있다. 데이터 소스는, 예를 들어, 오디오 캡처링 디바이스(206), 전자 디바이스(302A) 상의 메모리(예컨대, 메모리(204)), 클라우드 서버(예컨대, 서버(106)), 또는 이들의 조합일 수도 있다. 수신된 오디오 신호는, 대화와 연관된 오디오 정보(예를 들어, 오디오 부분)를 포함할 수도 있다.
일 실시예에서, 회로부(202)는 다양한 음성-텍스트 변환 기법들을 사용하여 수신된 오디오 신호를 원시 텍스트로 변환하도록 구성될 수도 있다. 회로부(202)는 원시 텍스트로부터 텍스트 정보(110A)(예컨대, 이름, 전화 번호, 주소, 고유 식별자, 시간 스케줄 등)를 추출하기 위해 NLP 기법들을 사용하도록 구성될 수도 있다. 일부 실시예들에서, 회로부(202)는 음성-텍스트 변환 및 NLP 기법들을 동시에 실행하여 오디오 신호로부터 텍스트 정보(110A)를 추출하도록 구성될 수도 있다. 다른 실시예에서, 회로부(202)는 수신된 오디오 신호에 대해 NLP를 직접 실행하고 수신된 오디오 신호로부터 텍스트 정보(110A)를 생성하도록 구성될 수도 있다. 상기에 언급된 NLP 기법들의 상세한 구현은 본 기술분야의 통상의 기술자에게 알려져 있을 수도 있고, 그에 따라, 상기에 언급된 NLP 기법들에 대한 상세한 설명이 간결함을 위해 본 개시내용으로부터 생략되었다.
304에서, 텍스트 정보(예컨대, 텍스트 정보(110A))가 추출될 수도 있다. 회로부(202)는 적어도 하나의 추출 기준(304A)에 기초하여 수신된 오디오 신호로부터(또는 오디오 신호의 텍스트 형태로부터) 텍스트 정보(110A)를 추출할 수도 있다. 추출된 텍스트 정보(110A)는, 대화로부터 추출된 특정 텍스트 정보에 대응될 수도 있어서, 텍스트 정보(110A)는, 제1 사용자(114)와 관련되거나 또는 제1 사용자(114)에게 중요한 정보를 포함할 수도 있다. 그와 같이 추출된 텍스트 정보(110A)는, 제1 사용자(114)가 대화 동안 저장하기를 원할 수도 있는 정보, 예를 들어, 전화 번호, 이름, 날짜, 주소, 및 이와 유사한 것에 대응할 수도 있다. 일 실시예에서, 회로부(202)는 제1 사용자(114)와 제2 사용자(116) 사이의 실시간 대화 동안 자동으로 텍스트 정보(110A)를 추출하도록 구성될 수도 있다. 다른 실시예에서, 회로부(202)는 제1 사용자(114)와 제2 사용자(116) 사이의 대화와 연관된 레코딩된 메시지로부터 텍스트 정보(110A)를 추출하도록 구성될 수도 있다. 예를 들어, 회로부(202)는 음성-텍스트 변환 기법들을 사용하여 수신된 오디오 신호를 원시 텍스트로 변환하도록 구성될 수도 있다. 회로부(202)는 원시 텍스트로부터 텍스트 정보(110A)(예컨대, 이름, 전화 번호, 주소, 고유 식별자, 시간 스케줄 등)를 추출하기 위해 NLP 기법들을 사용하도록 구성될 수도 있다. 일 실시예에서, 텍스트 정보(110A)는, 대화와 관련된 오디오 신호로부터 추출되거나 또는 대화(레코딩된 통화 또는 진행 중인 통화 중 어느 하나)의 텍스트 표현으로부터 추출된 단어 또는 어구(다수의 단어들을 포함함)일 수도 있다.
적어도 하나의 추출 기준(304A)의 예들은, 제1 사용자(114)와 연관된 사용자 프로파일, 제1 사용자(114)와 대화하는 제2 사용자(116)와 연관된 사용자 프로파일, 제1 사용자(114)와 제2 사용자(116)의 관계, 제1 사용자(114)와 제2 사용자(116) 각각의 직업, 위치, 또는 대화의 시간을 포함할 수도 있지만, 이에 제한되지 않는다. 제1 사용자(114)의 사용자 프로파일은, 제1 사용자(114)와 연관된 관심사들 또는 선호도들 중 하나에 대응할 수도 있고, 제2 사용자(116)의 사용자 프로파일은, 제2 사용자(116)와 연관된 관심사들 또는 선호도들 중 하나에 대응할 수도 있다. 예를 들어, 사용자 프로파일은, 이름, 연령, 성별, 거주지 위치, 시각 선호도들, 취미들, 직업, 빈번하게 방문한 장소들, 빈번하게 구매한 제품들 또는 서비스들, 또는 주어진 사용자(예컨대, 제1 사용자(114), 또는 제2 사용자(116))와 연관된 다른 선호도들을 포함할 수도 있지만, 이에 제한되지 않는다. 제1 사용자(114)와 제2 사용자(116)의 관계의 예들은, 직업적 관계(예컨대, 동료, 클라이언트 등), 개인적 관계(예를 들어, 부모, 자녀, 배우자, 친구들, 이웃들 등), 또는 임의의 다른 관계(예를 들어, 은행 관계 관리자, 레스토랑 배달, 체육관 트레이너 등)를 포함할 수도 있지만, 이에 제한되지 않는다.
일 예에서, 제1 사용자(114)와 제2 사용자(116) 각각의 직업은, 헬스케어 전문가, 엔터테인먼트 전문가, 비즈니스 전문가, 법률 전문가, 엔지니어, 산업 전문가, 연구원 또는 분석가, 법률 집행관, 군인 등을 포함할 수도 있지만, 이에 제한되지 않는다. 지오-로케이션은, 제1 사용자(114) 또는 제2 사용자(116)에 의해 선호되는 임의의 지리적 위치, 또는 제1 사용자(114) 또는 제2 사용자(116)가 대화 동안 존재할 수도 있는 곳을 포함할 수도 있다. 대화의 시간은, 제1 사용자(114) 또는 제2 사용자(116)에 의한 임의의 선호되는 시간, 또는 대화가 이루어졌을 수도 있을 때의 시각을 포함할 수도 있다. 예를 들어, 회로부(202)는 추출 기준으로서 제1 사용자(114)의 지오-로케이션(예컨대, 도쿄)에 기초하여 텍스트 정보(110A)(예컨대, "초밥")를 추출할 수도 있다. 다른 예에서, 회로부(202)는, 대화에서의 다른 용어들(예컨대, "도쿄에서 인기있는")에 기초하는 대화의 맥락에 기초하여 텍스트 정보(110A)(예컨대, "초밥")를 추출할 수도 있다. 다른 예에서, 회로부(202)는 추출 기준으로서 제1 사용자(114) 또는 제2 사용자(116)의 직업에 기초하여 텍스트 정보(110A)를 추출할 수도 있다. 제1 사용자(114) 또는 제2 사용자(116)의 직업이 의료계인 경우에, 회로부(202)는 대화로부터 의료 용어들(예컨대, 약의 이름, 처방량 등)을 추출할 수도 있다. 제1 사용자(114) 또는 제2 사용자(116)의 직업이 법조계인 경우에, 회로부(202)는 대화로부터 법률 용어들(예컨대, 미국 연방 법전(United States code)의 섹션들)을 추출할 수도 있다. 다른 예에서, 회로부(202)는 추출 기준이 제1 사용자(114)와 제2 사용자(116)(예컨대, 학생과 교사) 사이의 관계를 포함하는 경우에 텍스트 정보(110A)(예컨대, 시험 스케줄, 등록 웹사이트 등)를 추출할 수도 있다. 다른 예에서, 회로부(202)는 추출 기준이 대화의 시간을 포함하는 경우에 텍스트 정보(110A)(예컨대, 밤, 낮, AM, PM 등)를 추출할 수도 있다.
306에서, 정보 타입(예컨대, 정보 타입(110B))이 식별될 수도 있다. 회로부(202)는 추출된 텍스트 정보(110A)에 머신 러닝(ML) 모델(110)을 적용하여 추출된 텍스트 정보(110A)의 적어도 하나의 정보 타입(110B)을 식별하도록 구성될 수도 있다. ML 모델(110)은 추출된 텍스트 정보(110A)를 입력하여 정보 타입(110B)을 출력할 수도 있다. 적어도 하나의 정보 타입(110B)은, 위치, 전화 번호, 이름, 날짜, 시간 스케줄, 랜드마크(예를 들어, XYZ 매장 근처), 고유 식별자(예를 들어, 직원 ID, 고객 ID 등), 유니버설 리소스 로케이터, 또는 정보의 다른 특정 카테고리들 중 적어도 하나를 포함할 수도 있지만, 이에 제한되지 않는다. 예를 들어, ML 모델(110)은 정보 타입(110B)을 "전화 번호"로서 식별하기 위해 미리 정의된 세트의 숫자들을 텍스트 정보(110A)로서 입력할 수도 있다. 일 예에서, 정보 타입(110B)은 위치, 예컨대 특정 위치의 주소, 선호되는 위치(예를 들어, 가정 또는 오피스), 또는 제1 사용자(114)의 관심 위치, 또는 제1 사용자(114)와 연관된 임의의 다른 위치와 연관될 수도 있다. 다른 예에서, 정보 타입(110B)은 다른 인력, 또는 상업적 장소, 또는 임의의 다른 시설의 전화 번호와 연관될 수도 있다. 정보 타입(110B)은, 제1 사용자(114)가 특정 위치 및 스케줄에서 만나기로 의도할 수도 있거나 또는 만나도록 요구되는 사람의 이름과 같은 이름, 위치, 또는 스케줄의 조합을 포함할 수도 있다. 그러한 시나리오에서, 회로부(202)는 정보 타입(110B)을 이름, 위치, 날짜, 및 시간(예를 들어, 금요일에, 점심 시간에, 오피스 근처에서, ABC 은행으로부터의 John(John from ABC bank, near Office, on Friday, at lunchtime))으로서 결정하도록 구성될 수도 있다. 회로부(202)는 추가의 프로세싱을 위해 추출된 텍스트 정보(110A) 및 정보 타입(110B)을 저장하도록 추가로 구성될 수도 있다.
308에서, 애플리케이션들의 세트(예컨대, 애플리케이션들의 세트(112))가 결정될 수도 있다. 회로부(202)는 식별된 적어도 하나의 정보 타입(110B)에 기초하여 전자 디바이스(302A)와 연관된 애플리케이션들의 세트(112)를 결정하도록 구성될 수도 있다. 일 실시예에서, 회로부(202)는 ML 모델(110)의 적용에 기초하여 식별된 적어도 하나의 정보 타입(110B)에 대한 애플리케이션들의 세트(112)를 결정하도록 추가로 구성될 수도 있다. ML 모델(110)은 식별된 정보 타입(110B)에 기초하여 애플리케이션들의 세트(112)를 출력하도록 트레이닝될 수도 있다. 애플리케이션들의 세트(112)는 제1 애플리케이션(112A), 제2 애플리케이션(112B), 또는 제N 애플리케이션(112N)과 같은 하나 이상의 애플리케이션을 포함할 수도 있다. 각각의 정보 타입(110B)에 대해, 회로부(202)는 애플리케이션들의 세트(112)를 결정하도록 구성될 수도 있다. 정보 타입(110B)(예를 들어, 금요일에, 점심 시간에, 오피스 근처에서, ABC 은행으로부터의 John)에 대해 결정될 수도 있는 애플리케이션들의 세트(112)의 예는, 캘린더 애플리케이션(약속을 세이브하기 위해), 전화 번호부(이름과 번호를 세이브하기 위해), 전자 상거래 애플리케이션(점심 예약을 행하기 위해), 웹 브라우저(오피스 근처의 레스토랑들을 찾기 위해), 소셜 네트워킹 애플리케이션(John의 프로파일 또는 ABC 은행의 프로파일을 체크하기 위해), 또는 메모 애플리케이션(약속에 대한 관련 메모를 세이브하기 위해)을 포함할 수도 있지만, 이에 제한되지 않는다. 예를 들어, 도 1 및 도 4a 내지 도 4e에 애플리케이션들의 세트(112)와 관련된 상이한 예들이 제공된다.
310에서, 제1 애플리케이션(예컨대, 제1 애플리케이션(112A))이 선택될 수도 있다. 회로부(202)는 적어도 하나의 선택 기준(310A)에 기초하여 결정된 애플리케이션들의 세트(112)로부터 제1 애플리케이션(112A)을 선택하도록 구성될 수도 있다. 일 실시예에서, 적어도 하나의 선택 기준(310A)은, 제1 사용자(114)와 연관된 사용자 프로파일, 제1 사용자(114)와 대화하는 제2 사용자(116)와 연관된 사용자 프로파일, 또는 제1 사용자(114)와 제2 사용자(116) 사이의 관계 중 적어도 하나를 포함할 수도 있다. 회로부(202)는 메모리(204)로부터 또는 서버(106)로부터 제1 사용자(114) 및 제2 사용자(116)에 관한 사용자 프로파일을 취출할 수도 있다. 일 예에서, 회로부(202)는 John과의 약속을 "금요일에, 1 PM에, 오피스 근처에서, ABC 은행으로부터의 John과 미팅"으로서 세이브하기 위해 (제1 애플리케이션(112A)으로서) 캘린더 애플리케이션을 선택할 수도 있다.
다른 예에서, 제1 사용자(114)와 제2 사용자(116) 사이의 대화는 "이번 주 토요일에 나가자..."와 같은 추출된 텍스트 정보(110A)를 포함할 수도 있다. 회로부(202)는 ML 모델(110)을 사용하여 활동 스케줄로서 정보 타입(110B)을 식별할 수도 있다. 추가로, 선택 기준(310A)에 기초하여, 회로부(202)는 제1 애플리케이션(112A)을 선택하도록 구성될 수도 있다. 일 예에서, 회로부(202)는 제1 사용자(114)와 제2 사용자(116) 사이의 관계를 친구들로서 결정할 수도 있다. 제1 사용자(114)와 연관된 사용자 프로파일, 및 대화에서 제2 사용자(116)와 연관된 사용자 프로파일에 기초하여, 회로부(202)는 주말에 제1 사용자(114) 및 제2 사용자(116)에 의해 선호되거나 또는 수행되는 활동들을 결정할 수도 있다. 예를 들어, 제1 사용자(114) 및 제2 사용자(116)에 대한 선호되는 활동은 트레킹을 포함할 수도 있다. 그 후에, 회로부(202)는 선택 기준(310A)(예컨대, 제1 사용자(114)와 제2 사용자(116) 사이의 관계, 사용자 프로파일 등)에 기초하여 제1 애플리케이션(112A)을 선택할 수도 있다. 그러한 시나리오에서, 제1 애플리케이션(112A)은, 표 1A에 나타낸 바와 같이, 캘린더 애플리케이션(미팅의 리마인더를 설정하기 위해), 웹 브라우저(인근 트레킹 설비들과 연관된 웹사이트들을 브라우징하기 위해), 또는 트레킹 장비를 구매하기 위한 전자 상거래 쇼핑 애플리케이션을 포함할 수도 있다. 다른 예에서, 제1 사용자(114) 및 제2 사용자(116)에 대한 선호되는 활동은 영화 감상을 포함할 수도 있다. 그 후에, 회로부(202)는 선택 기준(310A)(예컨대, 제1 사용자(114)와 제2 사용자(116) 사이의 관계, 및/또는 사용자 프로파일들)에 기초하여 제1 애플리케이션(112A)을 선택할 수도 있다. 그러한 시나리오에서, 제1 애플리케이션(112A)은, 표 1A에 나타낸 바와 같이, 캘린더 애플리케이션(미팅의 리마인더를 설정하기 위해), 웹 브라우저(최신 영화들을 브라우징하기 위해), 또는 전자 상거래 티켓팅 애플리케이션(영화 티켓들을 구매하기 위해)을 포함할 수도 있다.
Figure pct00001
표 1A: 프로파일에 기초하는 활동 및 애플리케이션의 선택
다른 예에서, 제1 사용자(114) 및 제2 사용자(116)에 대한 선호되는 활동은 관광을 포함할 수도 있다. 그 후에, 회로부(202)는 선택 기준(310A)(예컨대, 제1 사용자(114)와 제2 사용자(116) 사이의 관계, 사용자 프로파일 등)에 기초하여 제1 애플리케이션(112A)을 선택할 수도 있다. 그러한 시나리오에서, 제1 애플리케이션(112A)은, 표 1A에 나타낸 바와 같이, 캘린더 애플리케이션(미팅의 리마인더를 설정하기 위해), 웹 브라우저(인근 관광 명소들을 브라우징하기 위해), 또는 맵 애플리케이션(인근 관광 명소들로의 루트를 계획하기 위해)을 포함할 수도 있다.
Figure pct00002
표 1B: 환경에 기초하는 활동 및 애플리케이션의 선택
다른 실시예에서, 회로부(202)는 활동 시간에 제1 사용자(114) 주위의 환경(그러한 일기 예보)에 기초하여 활동을 제안할 수도 있다. 예를 들어, 회로부(202)는 어구 "이번 주 토요일에 나가자..."에 기초하여 활동 스케줄로서 정보 타입(110B)을 식별할 수도 있다. 회로부(202)는, 제1 사용자(114)의 사용자 프로파일에 추가적으로, 활동 시간의 일기 예보에 기초하여 제안될 활동을 결정할 수도 있다. 표 1B에 나타낸 바와 같이, 회로부(202)는 트레킹 또는 다른 실외 활동들에 호의적인 일기 예보(예를 들어, 맑음, 화씨 76도)에 기초하여 "트레킹"을 제안할 수도 있다. 예를 들어, 회로부(202)는 일기 예보가 높은 온도들(예컨대, 화씨 120도)을 표시하는 경우에 실외 활동을 제안하지 않을 수도 있다. 다른 예에서, 회로부(202)는 "비올 확률, 60% 강수"를 표시하는 일기 예보에 기초하여 "영화들"을 제안할 수도 있다. 다른 예에서, 회로부(202)는 낮은 온도들(예컨대, 화씨 20도)을 표시하는 일기 예보에 기초하여 다른 실내 활동(예컨대, "박물관 방문")을 제안할 수도 있다. 다른 실시예에서, 회로부(202)는 특정 위치에서의 계절들에 기초하여 활동을 제안할 수도 있다. 예를 들어, 회로부(202)는 봄 시즌 동안 실외 활동들을 제안할 수도 있고, 겨울 시즌 동안 실내 활동을 제안할 수도 있다. 다른 실시예에서, 회로부(202)는 스케줄링된 활동의 날에 대한 환경 조건에 기초하여 캘린더 태스크를 추가로 추가할 수도 있다. 예를 들어, 회로부(202)는 토요일에 강수 확률이 60%이기 때문에 "우산 휴대"와 같은 캘린더 태스크를 추가할 수도 있다. 표들 1A 및 1B에 제공된 데이터는 단지 예들로서 취해질 수도 있고 본 개시내용을 제한하는 것으로서 해석되지 않을 수도 있다는 것에 주목해야 한다.
다른 예에서, 회로부(202)는 제1 사용자(114)와 제2 사용자(116) 사이의 관계를 새로운 동료들로서 결정할 수도 있다. 그러한 시나리오에서, 제1 애플리케이션(112A)은, 미팅의 리마인더를 설정하기 위한 캘린더 애플리케이션, 또는 제2 사용자(116)의 사용자 프로파일을 체크하기 위한 소셜 네트워킹 애플리케이션을 포함할 수도 있다. 일 실시예에서, 동일한 추출된 텍스트 정보(110A)에 대해, 회로부(202)는 선택 기준(310A)에 기초하여 (제1 애플리케이션(112A)으로서) 상이한 애플리케이션을 선택하도록 구성될 수도 있다.
일 실시예에서, 적어도 하나의 선택 기준(310A)은, 대화의 맥락, 애플리케이션들의 세트(112)를 실행하는 전자 디바이스(302A)의 능력, 애플리케이션들의 세트(112)의 각각의 애플리케이션의 우선순위, 애플리케이션들의 세트(112)의 각각의 애플리케이션의 선택 빈도, 전자 디바이스(302A)에 의해 등록된 제1 사용자(114)의 인증 정보, 애플리케이션들의 세트(112)에 대응하는 사용 정보, 현재 뉴스, 현재 시간, 제1 사용자(114)의 전자 디바이스(302A)의 관련된 지오-로케이션, 일기 예보, 또는 제1 사용자(114)의 상태를 더 포함할 수도 있지만, 이에 제한되지 않는다.
대화의 맥락은, 업무 관련 대화, 개인 대화, 은행 관련 대화, 다가오는/현재 이벤트에 관한 대화, 또는 다른 타입들의 대화들을 포함할 수도 있지만, 이에 제한되지 않는다. 일 실시예에서, 회로부(202)는 제1 사용자(114)와 대화하는 제2 사용자(116)의 사용자 프로파일, 제1 사용자(114)와 제2 사용자(116)의 관계, 제1 사용자(114)와 제2 사용자(116) 각각의 직업, 제2 사용자(116)와의 대화의 빈도, 또는 대화의 시간에 기초하여 대화의 맥락을 결정하도록 추가로 구성될 수도 있다. 예를 들어, 대화로부터의 추출된 텍스트 정보(110A)는 "...11 AM에 만나자..."와 같은 어구를 포함할 수도 있다. 예시적인 시나리오에서, 제1 사용자(114)와 제2 사용자(116) 사이의 관계는 직업적일 수도 있고, 제2 사용자(116)와의 대화의 빈도는 "자주"일 수도 있다. 그러한 시나리오에서, 선택된 제1 애플리케이션(112A)은, 선호되는 미팅 룸을 예약하기 위한 엔터프라이즈 애플리케이션 또는 웹 브라우저를 포함할 수도 있다. 다른 시나리오에서, 제1 사용자(114)와 제2 사용자(116) 사이의 관계는 개인적(예를 들어, 친구)일 수도 있고, 제2 사용자(116)와의 대화의 빈도는 "가끔"일 수도 있다. 그러한 시나리오에서, 선택된 제1 애플리케이션(112A)은, 대화의 빈도 또는 제1 사용자(114) 또는 제2 사용자와 연관된 사용자 프로파일(또는 관계)에 기초하여 선호되는 레스토랑에서 브런치를 위한 테이블을 예약하기 위한 전자 상거래 애플리케이션 또는 웹 브라우저를 포함할 수도 있다.
제1 애플리케이션(112A)을 실행하는 전자 디바이스(302A)의 능력은, (예를 들어, 프로세싱 로드(processing load) 또는 네트워크 연결성으로 인해) 전자 디바이스(302A)가 특정 시간에 제1 애플리케이션(112A)을 실행할 수도 있는지 여부를 표시할 수도 있다. 전자 디바이스(302A)에 의해 등록된 제1 사용자(114)의 인증 정보는, 제1 사용자(114)가 제1 애플리케이션(112A)에 로그인되어 있고 제1 사용자(114)에 의해 제1 애플리케이션(112A)에 필요한 권한들이 승인되는지 여부를 표시할 수도 있다. 제1 애플리케이션(112A)에 대응하는 사용 정보는, 제1 사용자(114)에 의한 제1 애플리케이션(112A)의 사용 빈도와 연관된 정보를 표시할 수도 있다. 예를 들어, 애플리케이션들의 세트(112)의 각각의 애플리케이션의 선택 빈도는, 제1 사용자(114)가 얼마나 빈번하게 애플리케이션들의 세트(112) 각각을 선택할 수도 있는지를 표시할 수도 있다. 따라서, 과거 선택들의 더 높은 빈도에 기초하여, 애플리케이션들의 세트(112)로부터 제1 애플리케이션(112A)을 선택할 확률이 더 높을 수도 있다.
애플리케이션들의 세트(112)의 각각의 애플리케이션의 우선순위는, 결정된 애플리케이션들의 세트(112) 중에서 (제1 애플리케이션(112A)으로서의) 애플리케이션의 선택을 위해 상이한 미리 정의된 우선순위들을 표시할 수도 있다. 일 실시예에서, 회로부(202)는 제1 사용자(114)와 제2 사용자(116) 사이의 관계에 기초하여 애플리케이션들의 세트(112)의 각각의 애플리케이션과 연관된 우선순위를 변경하도록 추가로 구성될 수도 있다. 예를 들어, 개인적 관계(예컨대, 가족 구성원)에 의한 대화를 위한 제1 애플리케이션(112A)(예를 들어, 음식 주문 애플리케이션)의 우선순위는, 직업적 관계(예컨대, 동료)에 의한 대화를 위한 제1 애플리케이션(112A)의 우선순위에 비해 더 높을 수도 있다. 다시 말해, 회로부(202)는 가족 구성원(예컨대, 부모, 배우자, 또는 자녀)과의 대화에 기초하여 결정된 애플리케이션들의 세트(112) 중에서 제1 애플리케이션(112A)(예를 들어, 음식 주문 애플리케이션)을 선택하고, 동료와의 대화에 기초하여 결정된 애플리케이션들의 세트(112) 중에서 제2 애플리케이션(112B)(예를 들어, 엔터프라이즈 애플리케이션)을 선택할 수도 있다. 제1 사용자(114)와 제2 사용자(116) 사이의 관계와 연관된 애플리케이션들의 세트(112)의 각각의 애플리케이션의 우선순위는, 예를 들어, 표 2에 설명된 바와 같이, 메모리(204)에 미리 정의될 수도 있다.
일 실시예에서, 대화로부터의 추출된 텍스트 정보(110A)는 어구 "1 PM에 만나자"를 포함할 수도 있다. 텍스트 정보(110A) 및 선택 기준(310A)에 기초하여, 회로부(202)는, 표 2에 나타낸 바와 같이, 대화의 맥락, 사용자들 사이의 관계, 또는 제1 사용자(114)의 위치에 기초하여 실행을 위한 제1 애플리케이션(112A)을 선택하고, 제1 애플리케이션(112A)의 실행에 기초하여 출력 정보를 디스플레이하도록 구성될 수도 있다:
Figure pct00003
표 2: 관계에 기초하는 애플리케이션들의 우선순위
표 2에 제공된 데이터는 단지 예들로서 취해질 수도 있고 본 개시내용을 제한하는 것으로서 해석되지 않을 수도 있다는 것에 주목해야 한다. 일 실시예에서, 룩업 테이블(표 2)은 제1 사용자(114)와 제2 사용자(116) 사이의 관계와 연관되어 태스크 사이의 연관을 저장할 수도 있다. 일 예에서, 동료에 대한 추출된 텍스트 정보(110A)와 연관된 태스크는, 배우자에 대한 추출된 텍스트 정보(110A)와 연관된 태스크와 비교하여 상이할 수도 있다. 다른 실시예에서, 회로부(202)는 추출된 텍스트 정보(110A)에서의 미팅의 시간에 기초하여 또는 대화의 시간에 기초하여 제2 애플리케이션(112B)을 선택할 수도 있다. 예를 들어, 대화의 시간이 "11:00 AM"이고 미팅 시간이 "1:00 PM"인 경우에, 회로부(202)는 레스토랑에서 테이블을 예약하기 위해 전자 상거래 애플리케이션을 선택할 수도 있다. 다른 경우에, 대화의 시간이 "12:30 PM"이고 미팅 시간이 "1:00 PM"인 경우에, 회로부(202)는 미팅 장소로 택시를 예약하기 위해 택시 애그리게이터 애플리케이션을 대안적으로 또는 추가적으로 선택할 수도 있다.
312에서, 제1 애플리케이션(112A)이 실행될 수도 있다. 회로부(202)는 텍스트 정보(110A)에 기초하여 선택된 제1 애플리케이션(112A)의 실행을 제어하도록 구성될 수도 있다. 제1 애플리케이션(112A)의 실행은, 특정 애플리케이션을 실행하는 전자 디바이스(302A)의 능력과 연관될 수도 있다. 일 예에서, 텍스트 정보(110A)는 전화 번호를 표시할 수도 있고, 회로부(202)는 새로운 연락처를 세이브하거나 또는 새로운 연락처로 직접 전화하거나 또는 메시지를 전송하기 위해, 실행을 위한 전화 번호부 애플리케이션을 선택하도록 구성될 수도 있다. 다른 예에서, 텍스트 정보(110A)는 위치를 표시할 수도 있고, 회로부(202)는 추출된 텍스트 정보(110A)에서 표시된 위치로의 내비게이션을 위해 맵 애플리케이션을 선택하도록 구성될 수도 있다. 선택된 제1 애플리케이션(112A)의 실행은, 예를 들어, 도 4a 내지 도 4e에 추가로 설명된다.
314에서, 출력 정보가 디스플레이될 수도 있다. 회로부(202)는 제1 애플리케이션(112A)의 실행에 기초하여 출력 정보의 디스플레이를 제어하도록 구성될 수도 있다. 회로부(202)는 전자 디바이스(302A)의 디스플레이 디바이스(212) 상에 출력 정보를 디스플레이할 수도 있다. 출력 정보의 예들은, 태스크를 실행하기 위한 명령어들의 세트, 텍스트 정보(110A)와 관련된 URL(uniform resource locator), 텍스트 정보(110A)와 관련된 웹사이트, 텍스트 정보(110A)에서의 키워드, 대화에 기초하는 태스크의 통지, 제1 애플리케이션(112A)으로서 전화 번호부에 추가된 새로운 연락처의 통지, 제1 애플리케이션(112A)으로서 캘린더 애플리케이션에 추가된 리마인더의 통지, 또는 제1 애플리케이션(112A)의 사용자 인터페이스를 포함할 수도 있지만, 이에 제한되지 않는다. 출력 정보의 디스플레이는, 예를 들어, 도 4a 내지 도 4e에 추가로 설명된다.
도 4a는 본 개시내용의 일 실시예에 따른, 출력 정보를 디스플레이할 수도 있는 예시적인 제1 사용자 인터페이스(UI)를 예시하는 다이어그램이다. 도 4a는 도 1, 도 2, 및 도 3의 요소들과 함께 기술된다. 도 4a를 참조하면, UI(400A)가 도시되어 있다. UI(400A)는 제1 애플리케이션(112A)의 실행을 위해 확인 스크린(402)을 디스플레이 디바이스(예컨대, 디스플레이 디바이스(212)) 상에 디스플레이할 수도 있다. 전자 디바이스(102)는 출력 정보를 디스플레이하도록 디스플레이 디바이스(212)를 제어할 수도 있다.
일 예에서, 대화로부터의 추출된 텍스트 정보(110A)는 어구 "1 PM에 만나자"를 포함할 수도 있다. 텍스트 정보(110A) 및 선택 기준(310A)에 기초하여, 회로부(202)는 실행을 위한 제1 애플리케이션(112A)을 자동으로 선택하고, 제1 애플리케이션(112A)의 실행에 기초하여 출력 정보를 디스플레이하도록 구성될 수도 있다. 도 4a에는, UI 요소(예컨대, "제출" 버튼(404))가 추가로 도시되어 있다. 일 예에서, 회로부(202)는 "제출" 버튼(404)을 통해 사용자 입력을 수신하도록 구성될 수도 있다. 일 실시예에서, 디스플레이 디바이스(212)는, 도 4a에 도시된 바와 같이, 전자 디바이스(102)에 의한 실행을 위해 하나 초과의 제1 애플리케이션(112A)이 선택된 경우에 태스크의 사용자 확인을 위한 확인 스크린(402)을 디스플레이할 수도 있다. 제출 버튼(404)을 통한 사용자 입력은, 선택된 제1 애플리케이션(112A)(예컨대, 캘린더 애플리케이션, 전자 상거래 애플리케이션 등)에 대응하는 태스크의 확인을 표시할 수도 있다. UI(400A)는, 사용자 입력에 기초하여 상이한 선택을 표시하기 위해 이동될 수도 있는, 태스크의 선택을 표시하는 하이라이팅 박스(highlighting box)를 더 포함할 수도 있다. 도 4a에서, 선택된 제1 애플리케이션(112A)에 대응되는 태스크들이 "미팅 리마인더 설정", "레스토랑에서의 테이블 예약", 또는 "음식 배달 애플리케이션 열기"로서 디스플레이될 수도 있다. 회로부(202)가 (디스플레이 디바이스(212) 상의 "제출" 버튼을 통해) 선택된 태스크의 사용자 확인을 수신할 때, 회로부(202)는, 도 4d 및 도 4e 그리고 표들 1 내지 5에 나타낸 바와 같이, 대응하는 제1 애플리케이션(112A)을 실행하고, 출력 정보를 디스플레이할 수도 있다. 예를 들어, 회로부(202)가, 도 4a에 도시된 바와 같이, 캘린더 애플리케이션에 대응하는 태스크 "미팅 리마인더 설정"의 확인을 수신할 때, 회로부(202)는 캘린더 애플리케이션을 실행하여 미팅 리마인더를 설정하고 리마인더의 통지를 출력 정보로서 디스플레이할 수도 있다.
도 4b는 본 개시내용의 일 실시예에 따른, 출력 정보를 디스플레이할 수도 있는 예시적인 제2 사용자 인터페이스(UI)를 예시하는 다이어그램이다. 도 4b는 도 1, 도 2, 도 3, 및 도 4a로부터의 요소들과 관련하여 기술된다. 도 4b를 참조하면, UI(400B)가 도시되어 있다. UI(400B)는 제1 애플리케이션(112A)의 실행을 위해 확인 스크린(402)을 디스플레이 디바이스(예컨대, 디스플레이 디바이스(212)) 상에 디스플레이할 수도 있다. 일 예에서, 대화로부터의 추출된 텍스트 정보(110A)는 어구 "이 웹사이트를 체크하세요..."를 포함할 수도 있다. 텍스트 정보(110A) 및 선택 기준(310A)에 기초하여, 회로부(202)는 선택된 제1 애플리케이션(112A)에 의해 실행될 태스크로서 출력 정보를 디스플레이하도록 구성될 수도 있다. 디스플레이 디바이스(212)는, 도 4b에 도시된 바와 같이, 전자 디바이스(102)에 의한 실행을 위해 하나 초과의 제1 애플리케이션(112A)이 선택된 경우에 태스크의 사용자 확인을 위한 확인 스크린(402)을 디스플레이할 수도 있다. 제출 버튼(404)을 통한 사용자 입력은, 선택된 제1 애플리케이션(112A)(예컨대, 브라우저)에 대응하는 태스크의 확인을 표시할 수도 있다. UI(400B)는, 사용자 입력에 기초하여 상이한 선택을 표시하기 위해 이동될 수도 있는, 태스크의 선택을 표시하는 하이라이팅 박스를 더 포함한다. 도 4b에서, 선택된 제1 애플리케이션(112A)에 대응하는 태스크가 "정보를 위해 URL: 'A' 열기", "URL 'A' 북마크", "정보를 위해 웹사이트: 'B' 방문", 또는 "웹사이트 'B' 북마크"로서 디스플레이될 수도 있다. 회로부(202)가 (디스플레이 디바이스(212)를 통해) 선택된 태스크의 사용자 확인을 수신할 때, 회로부(202)는, 도 4d 및 도 4e 그리고 표들 1 내지 5에 나타낸 바와 같이, 대응하는 제1 애플리케이션(112A)을 실행하고, 출력 정보를 디스플레이할 수도 있다. 예를 들어, 회로부(202)가, 도 4b에 도시된 바와 같이, 브라우저에 대응하는 태스크 "정보를 위해 웹사이트: 'B' 방문"의 확인을 수신할 때, 회로부(202)는 브라우저를 실행하고 출력 정보로서 웹사이트를 디스플레이할 수도 있다. 추출된 시간 스케줄 또는 URL에 기초하여 선택된 제1 애플리케이션(112A)에 대응하는 태스크들의 예들은, 다음과 같이, 표 3에 제시된다:
Figure pct00004
표 3: 선택된 애플리케이션에 대응하는 예시적인 태스크들
다른 실시예에서, 회로부(202)는 제1 사용자(114)에게 이용가능한 하나 이상의 액션에 영향을 미치는 환경(예컨대, 제1 사용자(114)의 상태 또는 상황)에 기초하여 태스크 또는 액션을 추천할 수도 있다. 예를 들어, 제1 사용자(114)가 운전 중인 동안 대화를 나누고 있는 경우에, 회로부(202)는 대화로부터 텍스트 정보(110A)의 몇몇 피스들(예컨대, 이름, 전화 번호, 또는 웹사이트)을 추출할 수도 있다. 제1 사용자(114)의 상태(예컨대, 운전 중인 상태)에 기초하여, 회로부(202)는 제1 사용자(114)가 정지해 있을 때 추천되는 태스크와 비교하여 상이한 액션 또는 태스크를 제시할 수도 있다. 예를 들어, 회로부(202)가 제1 사용자(114)의 상태가 "운전 중"이라고 결정하는 경우에, 회로부(202)는, 도 4b 및 표 3에 나타낸 바와 같이, 선택된 제1 애플리케이션(112A)에 대응하는 태스크, 예컨대 "URL 'A' 북마크" 또는 "웹사이트 'B' 북마크"를 추천할 수도 있어서, 제1 사용자(114)가 세이브된 URL 또는 웹사이트에 나중의 시점에 액세스할 수도 있도록 한다. 회로부(202)는 다양한 방법들, 예컨대, 전자 디바이스(102) 상의 사용자 입력(예컨대, "운전 모드"), 과거 사용자 거동(예컨대, 아침 9시 내지 10시에 오피스로 통근), 또는 전자 디바이스(102)의 GPS 포지션을 변화시키는 것에 기초하여 제1 사용자(114)의 사용자 상태(정지됨 또는 운전 중)를 결정할 수도 있다. 표 3에 제공된 데이터는 단지 예시적인 데이터로서 취해질 수도 있고 본 개시내용을 제한하는 것으로서 해석되지 않을 수도 있다는 것에 주목해야 한다.
도 4c는 본 개시내용의 일 실시예에 따른, 출력 정보를 디스플레이할 수도 있는 예시적인 제3 사용자 인터페이스(UI)를 예시하는 다이어그램이다. 도 4c는 도 1, 도 2, 도 3, 도 4a, 및 도 4b로부터의 요소들과 관련하여 기술된다. 도 4c를 참조하면, UI(400C)가 도시되어 있다. UI(400C)는 제1 애플리케이션(112A)의 실행을 위해 확인 스크린(402)을 디스플레이 디바이스(예컨대, 디스플레이 디바이스(212)) 상에 디스플레이할 수도 있다. 일 예에서, 대화로부터의 추출된 텍스트 정보(110A)는 위치 "...아파트 1234, ABC 거리..."를 포함할 수도 있다. 텍스트 정보(110A) 및 선택 기준(310A)에 기초하여, 회로부(202)는, 도 4c에 도시된 바와 같이, 전자 디바이스(102)에 의한 실행을 위해 하나 초과의 제1 애플리케이션(112A)이 선택된 경우에 태스크의 사용자 확인을 위한 확인 스크린(402)을 디스플레이하기 위해 디스플레이 디바이스(212)를 제어하도록 구성될 수도 있다. UI(400C)는, 사용자 입력에 기초하여 상이한 선택을 표시하기 위해 이동될 수도 있는, 태스크의 선택을 표시하는 하이라이팅 박스를 더 포함한다. 도 4c에서, 선택된 제1 애플리케이션(112A)에 대응하는 태스크들이 "맵 애플리케이션 열기", "위치 정보를 위해 웹사이트: 'B' 방문", 및 "메모 애플리케이션에 주소를 세이브"로서 디스플레이될 수도 있다. 회로부(202)가 (디스플레이 디바이스(212)를 통해) 선택된 태스크의 사용자 확인을 수신할 때, 회로부(202)는, 도 4d 및 도 4e 그리고 표들 1 내지 5에 나타낸 바와 같이, 대응하는 제1 애플리케이션(112A)을 실행하고, 출력 정보를 디스플레이할 수도 있다. 예를 들어, 회로부(202)가, 도 4b에 도시된 바와 같이, 메모 애플리케이션에 대응하는 태스크 "메모 애플리케이션에 주소를 세이브"의 확인을 수신할 때, 회로부(202)는 메모 애플리케이션을 실행하고 세이브된 주소의 통지를 출력 정보로서 디스플레이할 수도 있다. 추출된 위치에 기초하여 선택된 제1 애플리케이션(112A)에 대응하는 태스크들의 예들은, 다음과 같이, 표 4에 제시된다:
Figure pct00005
표 4: 선택된 애플리케이션들에 대응하는 예시적인 태스크들
표 4에 제공된 데이터는 단지 예시적인 데이터로서 취해질 수도 있고 본 개시내용을 제한하는 것으로서 해석되지 않을 수도 있다는 것에 주목해야 한다. 일 예에서, 제1 사용자(114)의 전자 디바이스(102)의 지오-로케이션이 추출된 텍스트 정보(110A)의 주소와 가까운 경우에, 주소에 대한 거리 및 방향들을 보여주기 위해 맵 애플리케이션이 실행될 수도 있다.
도 4d는 본 개시내용의 일 실시예에 따른, 출력 정보를 디스플레이할 수도 있는 예시적인 제4 사용자 인터페이스(UI)를 예시하는 다이어그램이다. 도 4d는 도 1, 도 2, 도 3, 도 4a, 도 4b, 및 도 4c로부터의 요소들과 관련하여 기술된다. 도 4d를 참조하면, UI(400D)가 도시되어 있다. UI(400D)는 제1 애플리케이션(112A)의 실행에 기초하여 출력 정보를 디스플레이 디바이스(예컨대, 디스플레이 디바이스(212)) 상에 디스플레이할 수도 있다. 예를 들어, UI(400D)는 출력 정보로서 제1 애플리케이션(112A)의 사용자 인터페이스를 디스플레이할 수도 있다. 일 예에서, 대화로부터의 추출된 텍스트 정보(110A)는 "...전화 번호 1234..."를 포함할 수도 있다. 텍스트 정보(110A) 및 선택 기준(310A)에 기초하여, 회로부(202)는 전화 번호부의 사용자 인터페이스, 또는 전화 번호부에 추가된 새로운 연락처의 통지로서 출력 정보를 디스플레이하도록 구성될 수도 있다. 도 4d에서, 출력 정보(예를 들어, 전화 번호부의 사용자 인터페이스)가 "연락처 생성...이름: ABC, 및 전화: 1234"로서 디스플레이될 수도 있다. 추출된 전화 번호에 기초하여 선택된 제1 애플리케이션(112A)에 대응하는 태스크들의 예들은, 다음과 같이, 표 5에 제시된다:
Figure pct00006
표 5: 선택된 애플리케이션들에 대응하는 예시적인 태스크들
명령어들의 세트가 태스크를 실행하기 위해 표 5에 제공된 데이터는 단지 예시적인 데이터로서 취해질 수도 있고 본 개시내용을 제한하는 것으로서 해석되지 않을 수도 있다는 것에 주목해야 한다. 도 4d에는, UI 요소(예컨대, 연락처 편집 버튼(406))가 추가로 도시되어 있다. 일 실시예에서, 회로부(202)는 연락처 편집 버튼(406)을 통해 사용자 입력을 수신하도록 구성될 수도 있다. 일 예에서, 연락처 편집 버튼(406)을 통한 사용자 입력은 전화 번호부에 세이브하기 전에 연락처 정보에 대한 변경들을 허용할 수도 있다.
도 4e는 본 개시내용의 일 실시예에 따른, 출력 정보를 디스플레이할 수도 있는 예시적인 제5 사용자 인터페이스(UI)를 예시하는 다이어그램이다. 도 4e는 도 1, 도 2, 도 3, 도 4a, 도 4b, 도 4c, 및 도 4d로부터의 요소들과 관련하여 기술된다. 도 4e를 참조하면, UI(400E)가 도시되어 있다. UI(400E)는 제1 애플리케이션(112A)의 실행에 기초하여 출력 정보를 디스플레이 디바이스(예컨대, 디스플레이 디바이스(212)) 상에 디스플레이할 수도 있다. 예를 들어, UI(400E)는 출력 정보로서 제1 애플리케이션(112A)의 사용자 인터페이스를 디스플레이할 수도 있다. 일 실시예에서, 대화로부터의 추출된 텍스트 정보(110A)는 미팅 스케줄 "...ABC에서 미팅..."을 포함할 수도 있다. 텍스트 정보(110A) 및 선택 기준(310A)에 기초하여, 회로부(202)는 (제1 애플리케이션(112A)으로서의) 캘린더 애플리케이션의 사용자 인터페이스로서, 또는 캘린더 애플리케이션에 추가된 리마인더의 통지로서 출력 정보를 디스플레이하도록 구성될 수도 있다. 도 4e에서, 출력 정보(예를 들어, 캘린더 애플리케이션의 사용자 인터페이스)가 "리마인더 설정, 제목: ABC, 시간: HH:MM, 날짜: DD/MM/YY"로서 디스플레이될 수도 있다. 추출된 미팅 스케줄에 기초하여 선택된 제1 애플리케이션(112A)에 대응하는 태스크의 예들은, 다음과 같이, 표 6에 제시된다:
Figure pct00007
표 6: 선택된 애플리케이션에 대응하는 예시적인 태스크
명령어들의 세트가 태스크를 실행하기 위해 표 6에 제공된 데이터는 단지 예시적인 데이터로서 취해질 수도 있고 본 개시내용을 제한하는 것으로서 해석되지 않을 수도 있다는 것에 주목해야 한다. 도 4e에는, UI 요소(예컨대, 리마인더 편집 버튼(408))가 추가로 도시되어 있다. 일 실시예에서, 회로부(202)는 캘린더 애플리케이션에 저장된 리마인더의 편집을 허용할 수도 있는 리마인더 편집 버튼(408)을 통해 사용자 입력을 수신하도록 구성될 수도 있다.
도 5는 본 개시내용의 일 실시예에 따른, 오디오 신호들을 캡처링하기 위한 트리거로서 언어적 큐들을 인식할 수도 있는 예시적인 사용자 인터페이스(UI)를 예시하는 다이어그램이다. 도 5는 도 1, 도 2, 도 3, 및 도 4a 내지 도 4e로부터의 요소들과 관련하여 기술된다. 도 5를 참조하면, UI(500)가 도시되어 있다. UI(500)는, 디스플레이 디바이스(예컨대, 디스플레이 디바이스(212)) 상에, 오디오 신호들(즉, 대화의 일 부분)을 캡처링하기 위한 트리거들로서 인식될 언어적 큐들(502)을 디스플레이할 수도 있다. 전자 디바이스(102)는 제1 사용자(114)에 의한 편집 및 확인을 위해 "큐 1", "큐 2"와 같은 언어적 큐들(502)을 디스플레이하도록 디스플레이 디바이스(212)를 제어할 수도 있다. 예를 들어, "큐 1"은 "전화 번호"로서 설정될 수도 있고 "큐 2"는 "이름" 또는 "주소" 등으로서 설정될 수도 있다. 회로부(202)는 언어적 큐를 표시하는 사용자 입력을 수신하여 언어적 큐를 설정할 수도 있다. 회로부(202)는 언어적 큐들(502)을 수신하기 위해 웹을 검색하도록 구성될 수도 있다.
일 실시예에서, 회로부(202)는, 오디오 신호를 캡처링하기 위한 트리거로서 제1 사용자(114)와 제2 사용자(116) 사이의 대화에서 언어적 큐(502)(예컨대, "큐 1" 또는 "큐 2")를 인식하도록 추가로 구성될 수도 있다. 회로부(202)는 인식된 언어적 큐(502)에 기초하여, 오디오 캡처링 디바이스(예컨대, 오디오 캡처링 디바이스(206))로부터 또는 레코딩된/진행 중인 대화로부터 오디오 신호를 수신하도록 구성될 수도 있다. 일 예에서, 회로부(202)는 오디오 캡처링 디바이스(206)로부터 또는 전화 통화 또는 비디오 통화에서의 진행 중인 대화로부터 오디오 신호의 취출을 시작 및/또는 중지하기 위한 언어적 큐(502)를 수신할 수도 있다. 예를 들어, 언어적 큐 "시작"은, 대화에 대응하는 오디오 신호의 캡처를 트리거할 수도 있고, 언어적 큐 "중지"는 오디오 신호의 캡처를 중지할 수도 있다. 그 후에, 회로부(202)는 캡처링된 오디오 신호를 메모리(204)에 세이브할 수도 있다.
본 기술분야의 통상의 기술자는, 언어적 큐들이, 본 개시내용의 기능 및 동작을 설명 및 기술하기 위해 도 5에 예시되는 언어적 큐들(502)에 추가적으로 다른 적합한 큐들을 포함할 수도 있다는 것을 이해할 것이라는 것에 주목할 수도 있다. 전자 디바이스(102)에 의해 인식되는 다른 언어 큐들(502)에 대한 상세한 설명이 간결함을 위해 본 개시내용으로부터 생략되었다.
도 5에는, UI 요소(예컨대, "제출" 버튼(504))가 추가로 도시되어 있다. 일 실시예에서, 회로부(202)는 UI(500) 및 제출 버튼(504)을 통해 사용자 입력을 수신하도록 구성될 수도 있다. 일 실시예에서, UI(500)를 통한 사용자 입력은, 인식될 언어적 큐들(502)의 확인을 표시할 수도 있다. UI 요소(예컨대, 편집 버튼(506))가 추가로 도시되어 있다. 일 실시예에서, 회로부(202)는 편집 버튼(506)을 통해 언어적 큐들(502)의 수정을 위한 사용자 입력을 수신하도록 구성될 수도 있다.
도 6은 본 개시내용의 일 실시예에 따른, 오디오 신호들을 캡처링하기 위한 트리거로서 사용자 입력을 수신할 수도 있는 예시적인 사용자 인터페이스(UI)를 예시하는 다이어그램이다. 도 6은 도 1, 도 2, 도 3, 도 4a 내지 도 4e, 및 도 5로부터의 요소들과 관련하여 기술된다. 도 6을 참조하면, UI(600)가 도시되어 있다. UI(600)는 디스플레이 디바이스(예컨대, 디스플레이 디바이스(212)) 상에 복수의 UI 요소들을 디스플레이할 수도 있다. UI 요소(예컨대, 전화 통화 스크린(602), 음소거 버튼(604), 키패드 버튼(606), 레코더 버튼(608), 및 스피커 버튼(610))가 추가로 도시되어 있다. 일 실시예에서, 회로부(202)는 UI(600) 및 UI 요소들(604, 606, 608, 및 610)을 통해 사용자 입력을 수신하도록 구성될 수도 있다. 일 실시예에서, UI(600)의 UI 요소의 선택은, 도 6에 도시된 바와 같이, 점선 사각형 박스로 표시될 수도 있다.
일 실시예에서, 회로부(202)는, 대화에 대응하는 오디오 신호를 캡처링하기 위한 트리거를 표시하는 사용자 입력을 수신하도록 추가로 구성될 수도 있다. 회로부(202)는 수신된 사용자 입력에 기초하여, 오디오 캡처링 디바이스(예컨대, 오디오 캡처링 디바이스(206))로부터 또는 레코딩된/진행 중인 대화로부터 오디오 신호를 수신하도록 추가로 구성될 수도 있다. 일 예에서, 회로부(202)는 레코더 버튼(608)에 의해 사용자 입력을 수신하도록 구성될 수도 있다. 회로부(202)는 레코더 버튼(608)의 선택에 기초하여 대화에 대응하는 오디오 신호를 캡처링하는 것을 시작할 수도 있다. 회로부(202)는 레코더 버튼(608)에 대한 다른 사용자 입력에 기초하여 오디오 신호의 레코딩을 중지하도록 구성될 수도 있다. 그 후에, 회로부(202)는 레코더 버튼(608)을 통한 수신된 다른 사용자 입력에 기초하여 메모리(204)에 레코딩된 오디오 신호를 세이브할 수도 있다. 음소거 버튼(604), 키패드 버튼(606), 및 스피커 버튼(610)의 기능성들이 본 기술분야의 통상의 기술자에게 알려져 있고, 음소거 버튼(604), 키패드 버튼(606), 및 스피커 버튼(610)에 대한 상세한 설명이 간결함을 위해 본 개시내용으로부터 생략되었다.
도 7은 본 개시내용의 일 실시예에 따른, 사용자 입력에 기초하여 추출된 텍스트 정보를 검색할 수도 있는 예시적인 사용자 인터페이스(UI)를 예시하는 다이어그램이다. 도 7은 도 1, 도 2, 도 3, 도 4a 내지 도 4e, 도 5, 및 도 6으로부터의 요소들과 관련하여 기술된다. 도 7을 참조하면, UI(700)가 도시되어 있다. UI(700)는 캡처링된 대화(702)를 디스플레이 디바이스(예컨대, 디스플레이 디바이스(212)) 상에 디스플레이할 수도 있다. 전자 디바이스(102)는 캡처링된 대화(702)를 디스플레이하도록 디스플레이 디바이스(212)를 제어할 수도 있다.
일 실시예에서, 회로부(202)는 키워드를 표시하는 사용자 입력을 수신하도록 구성될 수도 있다. 회로부(202)는 사용자 입력에 기초하여 추출된 텍스트 정보(110A)를 검색하고, 검색의 결과의 디스플레이를 제어하도록 추가로 구성될 수도 있다. 도 7에서, 대화는 "제1 사용자: ... 나는 전화를 설치하고 싶습니다..., 제2 사용자: ...이름과 주소를 부탁드립니다..., 제1 사용자: 주소는 1600 사우스 애비뉴, 아파트 16입니다..."로서 디스플레이될 수도 있다. UI 요소들, 예컨대, "제출" 버튼(704), 및 텍스트 검색 박스(706)가 추가로 도시되어 있다. 일 실시예에서, 회로부(202)는 제출 버튼(704) 및 텍스트 검색 박스(706)를 통해 사용자 입력을 수신하도록 구성될 수도 있다. 일 실시예에서, 사용자 입력은 UI(700)에서 키워드(예를 들어, "주소" 또는 "숫자")를 표시할 수도 있다. 회로부(202)는 키워드(예컨대, "주소")에 대해 대화를 검색하고, 키워드에 기초하여 텍스트 정보(110A)(예컨대, "주소는 1600 사우스 애비뉴, 아파트 16입니다")를 추출하며, 추출된 텍스트 정보(110A)에 기초하여 제1 애플리케이션(112A)(예를 들어, 맵 애플리케이션)의 실행을 제어하도록 구성될 수도 있다. 일 실시예에서, 회로부(202)는 (추출된 텍스트 정보(110A)로서의) 키워드 검색의 결과 및 (정보 타입(110B)으로서의) 결과의 타입을 채용하여, 예를 들어, 도 8에 설명된 바와 같이, ML 모델(110)을 추가로 트레이닝시킬 수도 있다.
도 8은 본 개시내용의 일 실시예에 따른, 오디오 대화에 기초하는 정보 추출 및 사용자 지향 액션들을 위해 채용되는 머신 러닝(ML) 모델을 트레이닝시키기 위한 예시적인 동작들을 예시하는 다이어그램이다. 도 8은 도 1, 도 2, 도 3, 도 4a 내지 도 4e, 도 5, 도 6, 및 도 7로부터의 요소들과 관련하여 기술된다. 도 8을 참조하면, 본 명세서에서 설명되는 바와 같은, 802 내지 806으로부터의 예시적인 동작들을 예시하는 블록 다이어그램(800)이 도시되어 있다. 블록 다이어그램(800)에 예시된 예시적인 동작들은 802에서 시작할 수도 있고, 임의의 컴퓨팅 시스템, 장치, 또는 디바이스에 의해, 예컨대 도 1의 전자 디바이스(102) 또는 도 2의 회로부(202)에 의해 수행될 수도 있다.
802에서, 오디오 신호(802A)로부터 추출된 텍스트 정보(예컨대, 텍스트 정보(110A))가 머신 러닝(ML) 모델(110)에 입력될 수도 있다. 텍스트 정보(110A)는 ML 모델(110)에 대한 트레이닝 데이터를 표시할 수도 있다. 트레이닝 데이터는 멀티모드 데이터일 수도 있고, 텍스트 정보(110A)의 새로운 예들 및 이들의 타입들에 대해 머신 러닝(ML) 모델(110)을 추가로 트레이닝시키는 데 사용될 수도 있다. 트레이닝 데이터는, 예를 들어, 오디오 신호(802A), 또는 텍스트 정보(110A)와 연관된 새로운 키워드들을 포함할 수도 있다. 예를 들어, 트레이닝 데이터는, 도 7에 도시된 바와 같이, 대화로부터의 복수의 키워드들, 추출된 텍스트 정보(110A)의 키워드 검색을 표시하는 사용자 입력, 정보 타입(110B), 및 실행을 위한 제1 애플리케이션(112A)의 선택과 연관될 수도 있다.
트레이닝 데이터(이는 데이터베이스로부터 획득될 수도 있다)에 기초하여 ML 모델(110)에 대해 몇몇 입력 피처들이 생성될 수도 있다. 트레이닝 데이터는, 추출 기준(304A), 선택 기준(310A), 및 다른 관련 정보와 연관된 다양한 데이터포인트들을 포함할 수도 있다. 예를 들어, 트레이닝 데이터는, 제1 사용자(114)의 사용자 프로파일, 제1 사용자(114)의 직업, 또는 대화의 시간과 같은, 제1 사용자(114)와 관련된 데이터포인트들을 포함할 수도 있다. 추가적으로 또는 대안적으로, 트레이닝 데이터는, 대화의 맥락, 애플리케이션들의 세트(112)의 각각의 애플리케이션의 우선순위, 제1 사용자(114)에 의한 애플리케이션들의 세트(112)의 각각의 애플리케이션의 선택 빈도, 및 제1 사용자(114)에 의한 애플리케이션들의 세트(112)의 각각의 애플리케이션의 사용(예를 들어, 시간 지속기간)과 관련된 데이터포인트들을 포함할 수도 있다. 트레이닝 데이터는, 현재 뉴스, 현재 시간, 또는 제1 사용자(114)의 지오-로케이션과 관련된 데이터포인트들을 더 포함할 수도 있다.
그 후, ML 모델(110)은 트레이닝 데이터(예를 들어, ML 모델(110)이 아직 트레이닝되지 않은 텍스트 정보(110A)의 새로운 예들 및 이들의 타입들)에 대해 트레이닝될 수도 있다. 트레이닝 전에, 예를 들어, 소프트웨어 개발자 또는 제1 사용자(114)로부터의 사용자 입력(808)에 기초하여 하이퍼파라미터들의 세트가 선택될 수도 있다. 예를 들어, 트레이닝 데이터로부터 생성된 입력 피처에서의 각각의 데이터포인트에 대해 특정 가중치가 선택될 수도 있다. 제1 사용자(114)로부터의 사용자 입력(808)은, 제1 애플리케이션(112A)의 수동 선택, 추출된 텍스트 정보(110A)에 대한 키워드 검색, 및 키워드 검색을 위한 정보 타입(110B)을 포함할 수도 있다. 사용자 입력(808)은, 제1 사용자(114)에 의해 제공된 키워드(즉, 새로운 텍스트 정보)에 대한 (정보 타입(110B) 및 선택된 제1 애플리케이션(112A)으로서의) 클래스 레이블에 대응할 수도 있다.
트레이닝 시에, 몇몇 입력 피처들이 ML 모델(110)에 대한 입력들로서 순차적으로 전달될 수도 있다. ML 모델(110)은 그러한 입력들에 기초하여 몇몇 추천들(예컨대, 정보 타입(804), 및 애플리케이션들의 세트(806))을 출력할 수도 있다. 일단 트레이닝되면, ML 모델(110)은, 입력 피처에서의 다른 데이터포인트들보다 출력 추천에 더 많이 기여할 수도 있는, 입력 피처에서의 데이터포인트들에 대해 더 높은 가중치들을 선택할 수도 있다.
일 실시예에서, 회로부(202)는 사용자 입력에 기초하여 제1 애플리케이션(112A)을 선택하고, 선택된 제1 애플리케이션(112A)에 기초하여 머신 러닝(ML) 모델(110)을 트레이닝시키도록 구성될 수도 있다. 그러한 시나리오에서, ML 모델(110)은 애플리케이션들의 세트(112)의 각각의 애플리케이션의 우선순위, 제1 사용자(114)의 사용자 프로파일, 애플리케이션들의 세트(112)의 각각의 애플리케이션의 선택 빈도, 또는 애플리케이션들의 세트(112)의 각각의 애플리케이션에 대응하는 사용 정보에 기초하여 트레이닝될 수도 있다.
일 실시예에서, 회로부(202)는, 예를 들어, 도 7에 설명된 바와 같이, 사용자 입력에 기초하여 추출된 텍스트 정보를 검색하고, 검색의 결과의 디스플레이를 제어하도록 추가로 구성될 수도 있다. 회로부(202)는 결과의 타입에 기초하여 적어도 하나의 정보 타입(110B)을 식별하도록 ML 모델(110)을 트레이닝시키도록 추가로 구성될 수도 있다. 그러한 시나리오에서, ML 모델(110)은, 위치, 전화 번호, 이름, 날짜, 시간 스케줄, 랜드마크, 고유 식별자, 또는 유니버설 리소스 로케이터를 포함할 수도 있지만 이에 제한되지 않는 결과에 기초하여 트레이닝될 수도 있다.
도 9는 본 개시내용의 일 실시예에 따른, 오디오 대화에 기초하는 정보 추출 및 사용자 지향 액션들을 위한 예시적인 방법을 예시하는 흐름도를 도시한다. 도 9는 도 1, 도 2, 도 3, 도 4a 내지 도 4e, 도 5, 도 6, 도 7, 및 도 8로부터의 요소들과 관련하여 기술된다. 도 9를 참조하면, 흐름도(900)가 도시되어 있다. 흐름도(900)의 동작들은 전자 디바이스(102) 또는 회로부(202)와 같은 컴퓨팅 시스템에 의해 실행될 수도 있다. 이 동작들은 902에서 시작하고 904로 진행할 수도 있다.
904에서, 오디오 신호가 수신될 수도 있다. 하나 이상의 실시예에서, 회로부(202)는, 예를 들어, 도 3에서(302에) 설명된 바와 같이, 제1 사용자(예컨대, 제1 사용자(114))와 제2 사용자(예컨대, 제2 사용자(116)) 사이의 대화(예컨대, 대화(702))에 대응하는 오디오 신호를 수신하도록 구성될 수도 있다.
906에서, 수신된 오디오 신호로부터 텍스트 정보가 추출될 수도 있다. 하나 이상의 실시예에서, 회로부(202)는, 예를 들어, 도 3에서(304에) 설명된 바와 같이, 적어도 하나의 추출 기준(예컨대, 추출 기준(304A))에 기초하여 수신된 오디오 신호로부터 텍스트 정보(예컨대, 텍스트 정보(110A))를 추출하도록 구성될 수도 있다.
908에서, 머신 러닝 모델이 추출된 텍스트 정보(110A)에 적용되어 적어도 하나의 정보 타입을 식별할 수도 있다. 하나 이상의 실시예에서, 회로부(202)는, 예를 들어, 도 3에서(306에) 설명된 바와 같이, 추출된 텍스트 정보(110A)에 대해 머신 러닝(ML) 모델(예컨대, ML 모델(110))을 적용하여 추출된 텍스트 정보(110A)의 적어도 하나의 정보 타입(예컨대, 정보 타입(110B))을 식별하도록 구성될 수도 있다.
910에서, 전자 디바이스(102)와 연관된 애플리케이션들의 세트가, 식별된 적어도 하나의 정보 타입(110B)에 기초하여 결정될 수도 있다. 하나 이상의 실시예에서, 회로부(202)는, 예를 들어, 도 3에서(308에) 설명된 바와 같이, 식별된 적어도 하나의 정보 타입(110B)에 기초하여 전자 디바이스(102)와 연관된 애플리케이션들의 세트(예컨대, 애플리케이션들의 세트(112))를 결정하도록 구성될 수도 있다. 일부 실시예들에서, 트레이닝된 ML 모델(110)은 애플리케이션들의 세트(112)를 결정하기 위해 식별된 정보 타입(110B)에 적용될 수도 있다.
912에서, 결정된 애플리케이션들의 세트(112)로부터 제1 애플리케이션이 선택될 수도 있다. 하나 이상의 실시예에서, 회로부(202)는, 예를 들어, 도 3에서(310에) 설명된 바와 같이, 적어도 하나의 선택 기준(예컨대, 선택 기준(310A))에 기초하여 결정된 애플리케이션들의 세트(112)로부터 제1 애플리케이션(예컨대, 제1 애플리케이션(112A))을 선택하도록 구성될 수도 있다.
914에서, 선택된 제1 애플리케이션(112A)의 실행이 제어될 수도 있다. 하나 이상의 실시예에서, 회로부(202)는, 예를 들어, 도 3에서(312에) 설명된 바와 같이, 텍스트 정보(110A)에 기초하여 선택된 제1 애플리케이션(112A)의 실행을 제어하도록 구성될 수도 있다. 제어가 종료될 수도 있다.
흐름도(900)가 904, 906, 908, 910, 912, 및 914와 같은 개별 동작들로서 예시되어 있지만, 본 개시내용은 이와 같이 제한되지 않는다. 이에 따라, 특정 실시예들에서, 그러한 개별 동작들은 추가로, 개시된 실시예들의 본질로부터 손상시키는 일 없이 특정 구현에 따라, 추가적인 동작들로 분할되거나, 더 적은 동작들로 조합되거나, 또는 제거될 수도 있다.
본 개시내용의 다양한 실시예들은 머신 및/또는 컴퓨터(예를 들어, 전자 디바이스(102))에 의해 실행가능한 명령어들이 저장된 비일시적 컴퓨터 판독가능 매체 및/또는 저장 매체를 제공할 수도 있다. 명령어들은, 머신 및/또는 컴퓨터(예를 들어, 전자 디바이스(102))로 하여금, 제1 사용자(예컨대, 제1 사용자(114)) 및 제2 사용자(예컨대, 제2 사용자(116))와 연관된 대화(예컨대, 대화(702))에 대응할 수도 있는 오디오 신호의 수신을 포함하는 동작들을 수행하게 할 수도 있다. 동작들은, 적어도 하나의 추출 기준(예컨대, 추출 기준(304A))에 기초하는, 수신된 오디오 신호로부터의 텍스트 정보(예컨대, 텍스트 정보(110A))의 추출을 더 포함할 수도 있다. 동작들은, 추출된 텍스트 정보(110A)의 적어도 하나의 정보 타입(예컨대, 정보 타입(110B))을 식별하기 위해 추출된 텍스트 정보(110A)에 대한 머신 러닝 모델(예컨대, ML 모델(110))의 적용을 더 포함할 수도 있다. 동작들은, 식별된 적어도 하나의 정보 타입(110B)에 기초하는, 전자 디바이스(102)와 연관된 애플리케이션들의 세트(예컨대, 애플리케이션들의 세트(112))의 결정을 더 포함할 수도 있다. 동작들은, 적어도 하나의 선택 기준(예컨대, 선택 기준(310A))에 기초하는, 결정된 애플리케이션들의 세트(112)로부터의 제1 애플리케이션(예컨대, 제1 애플리케이션(112A))의 선택을 더 포함할 수도 있다. 동작들은, 텍스트 정보(110A)에 기초하는, 선택된 제1 애플리케이션(112A)의 실행의 제어를 더 포함할 수도 있다.
본 개시내용의 예시적인 양태들은, 회로부(예컨대, 회로부(202))를 포함할 수도 있는 전자 디바이스(예컨대, 전자 디바이스(102))를 포함할 수도 있다. 회로부(202)는, 제1 사용자(예컨대, 제1 사용자(114)) 및 제2 사용자(예컨대, 제2 사용자(116))와 연관된 대화(예컨대, 대화(702))에 대응하는 오디오 신호를 수신하도록 구성될 수도 있다. 회로부(202)는 적어도 하나의 추출 기준(예컨대, 추출 기준(304A))에 기초하여 수신된 오디오 신호로부터 텍스트 정보(예컨대, 추출된 텍스트 정보(110A))를 추출하도록 구성될 수도 있다. 회로부(202)는 추출된 텍스트 정보(110A)에 대해 머신 러닝 모델(예컨대, ML 모델(110))을 적용하여 추출된 텍스트 정보(110A)의 적어도 하나의 정보 타입(예컨대, 정보 타입(110B))을 식별하도록 구성될 수도 있다. 식별된 적어도 하나의 정보 타입(110B)에 기초하여, 회로부(202)는, 전자 디바이스(102)와 연관된 애플리케이션들의 세트(예컨대, 애플리케이션들의 세트(112))를 결정하도록 구성될 수도 있다. 회로부(202)는, 적어도 하나의 선택 기준(예컨대, 선택 기준(310A))에 기초하여 결정된 애플리케이션들의 세트(112)로부터 제1 애플리케이션(예컨대, 제1 애플리케이션(112A))을 선택하도록 추가로 구성될 수도 있다. 회로부(202)는 텍스트 정보(110A)에 기초하여 선택된 제1 애플리케이션(112A)의 실행을 제어하도록 추가로 구성될 수도 있다.
일 실시예에 따르면, 회로부(202)는 제1 애플리케이션(112A)의 실행에 기초하여 출력 정보의 디스플레이를 제어하도록 추가로 구성될 수도 있다. 출력 정보는, 태스크를 실행하기 위한 명령어들의 세트, 텍스트 정보와 관련된 URL(uniform resource locator), 텍스트 정보와 관련된 웹사이트, 텍스트 정보에서의 키워드, 대화(702)에 기초하는 태스크의 통지, 제1 애플리케이션(112A)으로서 전화 번호부에 추가된 새로운 연락처의 통지, 제1 애플리케이션(112A)으로서 캘린더 애플리케이션에 추가된 리마인더의 통지, 또는 제1 애플리케이션(112A)의 사용자 인터페이스 중 적어도 하나를 포함할 수도 있다.
일 실시예에 따르면, 적어도 하나의 선택 기준(310A)은, 제1 사용자(114)와 연관된 사용자 프로파일, 제1 사용자(114)와 대화(702)하는 제2 사용자(116)와 연관된 사용자 프로파일, 또는 제1 사용자(114)와 제2 사용자(116) 사이의 관계 중 적어도 하나를 포함할 수도 있다. 제1 사용자(114)의 사용자 프로파일은, 제1 사용자(114)와 연관된 관심사들 또는 선호도들 중 하나에 대응할 수도 있고, 제2 사용자(116)의 사용자 프로파일은, 제2 사용자(116)와 연관된 관심사들 또는 선호도들 중 하나에 대응할 수도 있다.
일 실시예에 따르면, 적어도 하나의 선택 기준(310A)은, 대화(702)의 맥락, 애플리케이션들의 세트(112)를 실행하는 전자 디바이스(102)의 능력, 애플리케이션들의 세트(112)의 각각의 애플리케이션의 우선순위, 애플리케이션들의 세트(112)의 각각의 애플리케이션의 선택 빈도, 전자 디바이스(102)에 의해 등록된 제1 사용자(114)의 인증 정보, 애플리케이션들의 세트(112)에 대응하는 사용 정보, 현재 뉴스, 현재 시간, 또는 제1 사용자(114)의 전자 디바이스(102)의 관련된 지오-로케이션, 일기 예보, 또는 제1 사용자(114)의 상태 중 적어도 하나를 포함할 수도 있다.
일 실시예에 따르면, 회로부(202)는 제1 사용자(114)와 대화(702)하는 제2 사용자(116)의 사용자 프로파일, 제1 사용자(114)와 제2 사용자(116)의 관계, 제1 사용자(114)와 제2 사용자(116) 각각의 직업, 제2 사용자(116)와의 대화의 빈도, 또는 대화(702)의 시간에 기초하여 대화(702)의 맥락을 결정하도록 추가로 구성될 수도 있다.
일 실시예에 따르면, 회로부(202)는 제1 사용자(114)와 제2 사용자(116)의 관계에 기초하여 애플리케이션들의 세트(112)의 각각의 애플리케이션과 연관된 우선순위를 변경하도록 추가로 구성될 수도 있다.
일 실시예에 따르면, 오디오 신호는, 제1 사용자(114)와 제2 사용자(116) 사이의 실시간 대화(702) 또는 레코딩된 메시지 중 적어도 하나를 포함할 수도 있다.
일 실시예에 따르면, 회로부(202)는, 대화(702)와 연관된 오디오 신호를 캡처링하기 위한 트리거를 표시하는 사용자 입력(예컨대, 사용자 입력(808))을 수신하도록 추가로 구성될 수도 있다. 수신된 사용자 입력(808)에 기초하여, 회로부(202)는 오디오 캡처링 디바이스(예컨대, 오디오 캡처링 디바이스(206))로부터 오디오 신호를 수신하도록 추가로 구성될 수도 있다.
일 실시예에 따르면, 회로부(202)는, 대화(702)와 연관된 오디오 신호를 캡처링하기 위한 트리거로서 대화(702)에서 언어적 큐(예컨대, 언어적 큐(502))를 인식하도록 추가로 구성될 수도 있다. 인식된 언어적 큐(502)에 기초하여, 회로부(202)는 오디오 캡처링 디바이스(예컨대, 오디오 캡처링 디바이스(206))로부터 오디오 신호를 수신하도록 추가로 구성될 수도 있다.
일 실시예에 따르면, 회로부(202)는 머신 러닝(ML) 모델(110)의 적용에 기초하여 식별된 적어도 하나의 정보 타입(110B)에 대한 애플리케이션들의 세트(112)를 결정하도록 추가로 구성될 수도 있다.
일 실시예에 따르면, 회로부(202)는 사용자 입력(예컨대, 사용자 입력(808))에 기초하여 제1 애플리케이션(112A)을 선택하도록 추가로 구성될 수도 있다. 선택된 제1 애플리케이션(112A)에 기초하여, 회로부(202)는 머신 러닝(ML) 모델(110)을 트레이닝시키도록 추가로 구성될 수도 있다.
일 실시예에 따르면, 회로부(202)는 사용자 입력(808)에 기초하여 추출된 텍스트 정보(110A)를 검색하고, 검색의 결과의 디스플레이를 제어하도록 추가로 구성될 수도 있다. 결과의 타입에 기초하여, 회로부(202)는 적어도 하나의 정보 타입(110B)을 식별하도록 머신 러닝(ML) 모델(110)을 트레이닝시키도록 추가로 구성될 수도 있다.
일 실시예에 따르면, 적어도 하나의 정보 타입(110B)은 위치, 전화 번호, 이름, 날짜, 시간 스케줄, 랜드마크, 고유 식별자, 또는 유니버설 리소스 로케이터 중 적어도 하나를 포함할 수도 있다.
본 개시내용은 하드웨어, 또는 하드웨어와 소프트웨어의 조합으로 실현될 수도 있다. 본 개시내용은 적어도 하나의 컴퓨터 시스템에서, 중앙집중화된 방식으로, 또는 상이한 요소들이 몇몇 상호연결된 컴퓨터 시스템들에 걸쳐 확산될 수도 있는 경우, 분산된 방식으로 실현될 수도 있다. 본 명세서에서 설명되는 방법들을 수행하도록 적응되는 컴퓨터 시스템 또는 다른 장치가 적합할 수도 있다. 하드웨어와 소프트웨어의 조합은, 컴퓨터 프로그램을 갖는 범용 컴퓨터 시스템일 수도 있는데, 이 컴퓨터 프로그램은, 로딩 및 실행될 때, 컴퓨터 시스템을 제어하여 그것이 본 명세서에서 설명되는 방법들을 수행하도록 할 수도 있다. 본 개시내용은 다른 기능들을 또한 수행하는 집적 회로의 일 부분을 포함하는 하드웨어로 실현될 수도 있다.
본 개시내용은 또한, 본 명세서에서 설명되는 방법들의 구현을 가능하게 하는 모든 피처들을 포함하고, 컴퓨터 시스템에 로딩될 때, 이들 방법들을 수행하는 것이 가능한 컴퓨터 프로그램 제품에 내장될 수도 있다. 본 맥락에서의 컴퓨터 프로그램은, 정보 프로세싱 능력을 갖는 시스템으로 하여금, 직접적으로, 또는 다음의 것: a) 다른 언어, 코드 또는 표기법으로의 변환; b) 상이한 자료 형태의 재생성 중 어느 하나 또는 이들 양측 모두 이후에 특정 기능을 수행하게 하도록 의도되는 명령어들의 세트의, 임의의 언어, 코드 또는 표기법으로의, 임의의 표현을 의미한다.
본 개시내용은 특정 실시예들을 참조하여 설명되지만, 본 개시내용의 범주로부터 벗어남이 없이 다양한 변경들이 이루어질 수도 있고 등가물들이 대체될 수도 있다는 것이 본 기술분야의 통상의 기술자들에 의해 이해될 것이다. 추가적으로, 본 개시내용의 범주로부터 벗어남이 없이 본 개시내용의 교시에 특정 상황 또는 자료를 적응시키기 위해 많은 수정들이 이루어질 수도 있다. 그에 따라, 본 개시내용은 개시된 특정 실시예에 제한되지 않고, 본 개시내용은 첨부된 청구범위의 범주 내에 속하는 모든 실시예들을 포함할 것으로 의도된다.

Claims (20)

  1. 전자 디바이스로서,
    회로부를 포함하고,
    상기 회로부는:
    제1 사용자 및 제2 사용자와 연관된 대화에 대응하는 오디오 신호를 수신하고;
    적어도 하나의 추출 기준에 기초하여 상기 수신된 오디오 신호로부터 텍스트 정보를 추출하고;
    상기 추출된 텍스트 정보에 머신 러닝 모델(machine learning model)을 적용하여 상기 추출된 텍스트 정보의 적어도 하나의 정보 타입을 식별하고;
    상기 식별된 적어도 하나의 정보 타입에 기초하여 상기 전자 디바이스와 연관된 애플리케이션들의 세트를 결정하고;
    적어도 하나의 선택 기준에 기초하여 상기 결정된 애플리케이션들의 세트로부터 제1 애플리케이션을 선택하고;
    상기 텍스트 정보에 기초하여 상기 선택된 제1 애플리케이션의 실행을 제어하도록
    구성되는, 전자 디바이스.
  2. 제1항에 있어서,
    상기 회로부는 상기 제1 애플리케이션의 실행에 기초하여 출력 정보의 디스플레이를 제어하도록 추가로 구성되고,
    상기 출력 정보는, 태스크를 실행하기 위한 명령어들의 세트, 상기 텍스트 정보와 관련된 URL(uniform resource locator), 상기 텍스트 정보와 관련된 웹사이트, 상기 텍스트 정보에서의 키워드, 상기 대화에 기초하는 상기 태스크의 통지, 상기 제1 애플리케이션으로서 전화 번호부에 추가된 새로운 연락처의 통지, 상기 제1 애플리케이션으로서 캘린더 애플리케이션에 추가된 리마인더의 통지, 또는 상기 제1 애플리케이션의 사용자 인터페이스 중 적어도 하나를 포함하는, 전자 디바이스.
  3. 제1항에 있어서,
    상기 적어도 하나의 선택 기준은, 상기 제1 사용자와 연관된 사용자 프로파일(user profile), 상기 제1 사용자와 대화하는 상기 제2 사용자와 연관된 사용자 프로파일, 또는 상기 제1 사용자와 상기 제2 사용자 사이의 관계 중 적어도 하나를 포함하고,
    상기 적어도 하나의 추출 기준은, 상기 제1 사용자와 연관된 사용자 프로파일, 상기 제1 사용자와 대화하는 상기 제2 사용자와 연관된 사용자 프로파일, 상기 제1 사용자의 지오-로케이션(geo-location), 또는 현재 시간 중 적어도 하나를 포함하고,
    상기 제1 사용자의 사용자 프로파일은, 상기 제1 사용자와 연관된 관심사들 또는 선호도들 중 하나에 대응하고,
    상기 제2 사용자의 사용자 프로파일은, 상기 제2 사용자와 연관된 관심사들 또는 선호도들 중 하나에 대응하는, 전자 디바이스.
  4. 제1항에 있어서,
    상기 적어도 하나의 선택 기준은, 상기 대화의 맥락, 상기 애플리케이션들의 세트를 실행하는 상기 전자 디바이스의 능력, 상기 애플리케이션들의 세트의 각각의 애플리케이션의 우선순위, 상기 애플리케이션들의 세트의 각각의 애플리케이션의 선택 빈도, 상기 전자 디바이스에 의해 등록된 상기 제1 사용자의 인증 정보, 상기 애플리케이션들의 세트에 대응하는 사용 정보, 현재 뉴스, 현재 시간, 상기 제1 사용자의 상기 전자 디바이스의 지오-로케이션, 일기 예보, 또는 상기 제1 사용자의 상태 중 적어도 하나를 포함하는, 전자 디바이스.
  5. 제4항에 있어서,
    상기 회로부는, 상기 제1 사용자와 대화하는 상기 제2 사용자의 사용자 프로파일, 상기 제1 사용자와 상기 제2 사용자의 관계, 상기 제1 사용자와 상기 제2 사용자 각각의 직업, 상기 제2 사용자와의 대화의 빈도, 또는 상기 대화의 시간에 기초하여 상기 대화의 맥락을 결정하도록 추가로 구성되는, 전자 디바이스.
  6. 제4항에 있어서,
    상기 회로부는 상기 제1 사용자와 상기 제2 사용자의 관계에 기초하여 상기 애플리케이션들의 세트의 각각의 애플리케이션과 연관된 우선순위를 변경하도록 추가로 구성되는, 전자 디바이스.
  7. 제1항에 있어서,
    상기 오디오 신호는, 상기 제1 사용자와 상기 제2 사용자 사이의 실시간 대화 또는 레코딩된 메시지 중 적어도 하나를 포함하는, 전자 디바이스.
  8. 제1항에 있어서,
    상기 회로부는:
    상기 대화와 연관된 오디오 신호를 캡처링(capture)하기 위한 트리거를 표시하는 사용자 입력을 수신하고;
    상기 수신된 사용자 입력에 기초하여 오디오 캡처링 디바이스(audio capturing device)로부터 상기 오디오 신호를 수신하도록
    추가로 구성되는, 전자 디바이스.
  9. 제1항에 있어서,
    상기 회로부는:
    상기 대화와 연관된 오디오 신호를 캡처링하기 위한 트리거로서 상기 대화에서 언어적 큐(verbal cue)를 인식하고;
    상기 인식된 언어적 큐에 기초하여 오디오 캡처링 디바이스로부터 상기 오디오 신호를 수신하도록
    추가로 구성되는, 전자 디바이스.
  10. 제1항에 있어서,
    상기 회로부는 상기 머신 러닝 모델의 적용에 기초하여 상기 식별된 적어도 하나의 정보 타입에 대한 애플리케이션들의 세트를 결정하도록 추가로 구성되는, 전자 디바이스.
  11. 제1항에 있어서,
    상기 회로부는:
    사용자 입력에 기초하여 상기 제1 애플리케이션을 선택하고;
    상기 선택된 제1 애플리케이션에 기초하여 상기 머신 러닝 모델을 트레이닝시키도록
    추가로 구성되는, 전자 디바이스.
  12. 제1항에 있어서,
    상기 회로부는:
    사용자 입력에 기초하여 상기 추출된 텍스트 정보를 검색하고;
    상기 검색의 결과의 디스플레이를 제어하고;
    상기 결과의 타입에 기초하여 상기 적어도 하나의 정보 타입을 식별하도록 상기 머신 러닝 모델을 트레이닝시키도록
    추가로 구성되는, 전자 디바이스.
  13. 제1항에 있어서,
    상기 적어도 하나의 정보 타입은, 위치, 전화 번호, 이름, 날짜, 시간 스케줄, 랜드마크, 고유 식별자, 또는 유니버설 리소스 로케이터(universal resource locator) 중 적어도 하나를 포함하는, 전자 디바이스.
  14. 방법으로서,
    전자 디바이스에서:
    제1 사용자 및 제2 사용자와 연관된 대화에 대응하는 오디오 신호를 수신하는 단계;
    적어도 하나의 추출 기준에 기초하여 상기 수신된 오디오 신호로부터 텍스트 정보를 추출하는 단계;
    상기 추출된 텍스트 정보에 머신 러닝 모델을 적용하여 상기 추출된 텍스트 정보의 적어도 하나의 정보 타입을 식별하는 단계;
    상기 식별된 적어도 하나의 정보 타입에 기초하여 상기 전자 디바이스와 연관된 애플리케이션들의 세트를 결정하는 단계;
    적어도 하나의 선택 기준에 기초하여 상기 결정된 애플리케이션들의 세트로부터 제1 애플리케이션을 선택하는 단계; 및
    상기 텍스트 정보에 기초하여 상기 선택된 제1 애플리케이션의 실행을 제어하는 단계
    를 포함하는, 방법.
  15. 제14항에 있어서,
    상기 제1 애플리케이션의 실행에 기초하여 출력 정보의 디스플레이를 제어하는 단계를 더 포함하고,
    상기 출력 정보는, 태스크를 실행하기 위한 명령어들의 세트, 상기 텍스트 정보와 관련된 URL(uniform resource locator), 상기 텍스트 정보와 관련된 웹사이트, 상기 텍스트 정보에서의 키워드, 상기 대화에 기초하는 상기 태스크의 통지, 상기 제1 애플리케이션으로서 전화 번호부에 추가된 새로운 연락처의 통지, 상기 제1 애플리케이션으로서 캘린더 애플리케이션에 추가된 리마인더의 통지, 또는 상기 제1 애플리케이션의 사용자 인터페이스 중 적어도 하나를 포함하는, 방법.
  16. 제14항에 있어서,
    상기 적어도 하나의 선택 기준은, 상기 제1 사용자와 연관된 사용자 프로파일, 상기 제1 사용자와 대화하는 상기 제2 사용자와 연관된 사용자 프로파일, 또는 상기 제1 사용자와 상기 제2 사용자 사이의 관계 중 적어도 하나를 포함하고,
    상기 적어도 하나의 추출 기준은, 상기 제1 사용자와 연관된 사용자 프로파일, 상기 제1 사용자와 대화하는 상기 제2 사용자와 연관된 사용자 프로파일, 상기 제1 사용자의 지오-로케이션, 또는 현재 시간 중 적어도 하나를 포함하고,
    상기 제1 사용자의 사용자 프로파일은, 상기 제1 사용자와 연관된 관심사들 또는 선호도들 중 하나에 대응하고,
    상기 제2 사용자의 사용자 프로파일은, 상기 제2 사용자와 연관된 관심사들 또는 선호도들 중 하나에 대응하는, 방법.
  17. 제14항에 있어서,
    상기 적어도 하나의 선택 기준은, 상기 대화의 맥락, 상기 애플리케이션들의 세트를 실행하는 상기 전자 디바이스의 능력, 상기 애플리케이션들의 세트의 각각의 애플리케이션의 우선순위, 상기 애플리케이션들의 세트의 각각의 애플리케이션의 선택 빈도, 상기 전자 디바이스에 의해 등록된 상기 제1 사용자의 인증 정보, 상기 애플리케이션들의 세트에 대응하는 사용 정보, 현재 뉴스, 현재 시간, 상기 제1 사용자의 상기 전자 디바이스의 지오-로케이션, 일기 예보, 또는 상기 제1 사용자의 상태 중 적어도 하나를 포함하는, 방법.
  18. 제17항에 있어서,
    상기 제1 사용자와 대화하는 상기 제2 사용자의 사용자 프로파일, 상기 제1 사용자와 상기 제2 사용자의 관계, 상기 제1 사용자와 상기 제2 사용자 각각의 직업, 상기 제2 사용자와의 대화의 빈도, 또는 상기 대화의 시간에 기초하여 상기 대화의 맥락을 결정하는 단계를 더 포함하는, 방법.
  19. 제17항에 있어서,
    상기 제1 사용자와 대화하는 상기 제2 사용자에 기초하여 상기 애플리케이션들의 세트의 각각의 애플리케이션과 연관된 우선순위를 변경하는 단계를 더 포함하는, 방법.
  20. 컴퓨터 실행가능 명령어들이 저장된 비일시적 컴퓨터 판독가능 매체로서,
    상기 컴퓨터 실행가능 명령어들은, 전자 디바이스에 의해 실행될 때, 상기 전자 디바이스로 하여금 동작들을 실행하게 하고,
    상기 동작들은:
    제1 사용자 및 제2 사용자와 연관된 대화에 대응하는 오디오 신호를 수신하는 동작;
    적어도 하나의 추출 기준에 기초하여 상기 수신된 오디오 신호로부터 텍스트 정보를 추출하는 동작;
    상기 추출된 텍스트 정보에 머신 러닝 모델을 적용하여 상기 추출된 텍스트 정보의 적어도 하나의 정보 타입을 식별하는 동작;
    상기 식별된 적어도 하나의 정보 타입에 기초하여 상기 전자 디바이스와 연관된 애플리케이션들의 세트를 결정하는 동작;
    적어도 하나의 선택 기준에 기초하여 상기 결정된 애플리케이션들의 세트로부터 제1 애플리케이션을 선택하는 동작; 및
    상기 텍스트 정보에 기초하여 상기 선택된 제1 애플리케이션의 실행을 제어하는 동작
    을 포함하는, 비일시적 컴퓨터 판독가능 매체.
KR1020237028991A 2021-03-09 2022-03-08 오디오 대화에 기초하는 사용자 지향 액션들 KR20230132588A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US17/195,923 2021-03-09
US17/195,923 US20220293096A1 (en) 2021-03-09 2021-03-09 User-oriented actions based on audio conversation
PCT/IB2022/052061 WO2022189974A1 (en) 2021-03-09 2022-03-08 User-oriented actions based on audio conversation

Publications (1)

Publication Number Publication Date
KR20230132588A true KR20230132588A (ko) 2023-09-15

Family

ID=80780693

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020237028991A KR20230132588A (ko) 2021-03-09 2022-03-08 오디오 대화에 기초하는 사용자 지향 액션들

Country Status (6)

Country Link
US (1) US20220293096A1 (ko)
EP (1) EP4248303A1 (ko)
JP (1) JP2024509816A (ko)
KR (1) KR20230132588A (ko)
CN (1) CN116261752A (ko)
WO (1) WO2022189974A1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11770268B2 (en) * 2022-02-14 2023-09-26 Intel Corporation Enhanced notifications for online collaboration applications

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013155619A1 (en) * 2012-04-20 2013-10-24 Sam Pasupalak Conversational agent
US20140188889A1 (en) * 2012-12-31 2014-07-03 Motorola Mobility Llc Predictive Selection and Parallel Execution of Applications and Services
US10192549B2 (en) * 2014-11-28 2019-01-29 Microsoft Technology Licensing, Llc Extending digital personal assistant action providers
US10482184B2 (en) * 2015-03-08 2019-11-19 Google Llc Context-based natural language processing
US10157350B2 (en) * 2015-03-26 2018-12-18 Tata Consultancy Services Limited Context based conversation system
US9740751B1 (en) * 2016-02-18 2017-08-22 Google Inc. Application keywords
US10945129B2 (en) * 2016-04-29 2021-03-09 Microsoft Technology Licensing, Llc Facilitating interaction among digital personal assistants
US10467509B2 (en) * 2017-02-14 2019-11-05 Microsoft Technology Licensing, Llc Computationally-efficient human-identifying smart assistant computer
US11361266B2 (en) * 2017-03-20 2022-06-14 Microsoft Technology Licensing, Llc User objective assistance technologies
KR102445382B1 (ko) * 2017-07-10 2022-09-20 삼성전자주식회사 음성 처리 방법 및 이를 지원하는 시스템
KR20190133100A (ko) * 2018-05-22 2019-12-02 삼성전자주식회사 어플리케이션을 이용하여 음성 입력에 대한 응답을 출력하는 전자 장치 및 그 동작 방법
US11128997B1 (en) * 2020-08-26 2021-09-21 Stereo App Limited Complex computing network for improving establishment and broadcasting of audio communication among mobile computing devices and providing descriptive operator management for improving user experience
US11558335B2 (en) * 2020-09-23 2023-01-17 International Business Machines Corporation Generative notification management mechanism via risk score computation

Also Published As

Publication number Publication date
EP4248303A1 (en) 2023-09-27
US20220293096A1 (en) 2022-09-15
JP2024509816A (ja) 2024-03-05
CN116261752A (zh) 2023-06-13
WO2022189974A1 (en) 2022-09-15

Similar Documents

Publication Publication Date Title
US11823677B2 (en) Interaction with a portion of a content item through a virtual assistant
US11379529B2 (en) Composing rich content messages
US11093536B2 (en) Explicit signals personalized search
US10270862B1 (en) Identifying non-search actions based on a search query
US20170277993A1 (en) Virtual assistant escalation
US10749989B2 (en) Hybrid client/server architecture for parallel processing
US9276802B2 (en) Systems and methods for sharing information between virtual agents
US9560089B2 (en) Systems and methods for providing input to virtual agent
US20140188889A1 (en) Predictive Selection and Parallel Execution of Applications and Services
US20140164532A1 (en) Systems and methods for virtual agent participation in multiparty conversation
US20130346347A1 (en) Method to Predict a Communicative Action that is Most Likely to be Executed Given a Context
US20140245140A1 (en) Virtual Assistant Transfer between Smart Devices
US20140164953A1 (en) Systems and methods for invoking virtual agent
CN107066523A (zh) 使用搜索结果的自动路由
KR20190076870A (ko) 연락처 정보를 추천하는 방법 및 디바이스
KR20230132588A (ko) 오디오 대화에 기초하는 사용자 지향 액션들
KR20140115434A (ko) 자연어 검색과 연계된 공개 형 채팅을 통한 정보공유 및 광고 제공 단말 및 서버 장치 운영환경 제공방법
van Achteren Finding context aware functional requirements
KR20140114955A (ko) 자연어 검색과 연계된 공개 형 채팅을 통한 정보공유 및 광고방법을 제공하는 단말 어플리케이션 환경 제공 장치 및 시스템
KR20140115433A (ko) 자연어 검색과 연계된 공개 형 채팅을 통한 정보공유 및 광고 제공 운영 방법
KR20140114956A (ko) 자연어 검색과 연계된 공개 형 채팅을 통한 정보공유 및 광고 제공 서비스를 지원하는 서버환경 제공 시스템