KR20160067202A - 맥락적 통찰 및 탐구 기법 - Google Patents

맥락적 통찰 및 탐구 기법 Download PDF

Info

Publication number
KR20160067202A
KR20160067202A KR1020167009112A KR20167009112A KR20160067202A KR 20160067202 A KR20160067202 A KR 20160067202A KR 1020167009112 A KR1020167009112 A KR 1020167009112A KR 20167009112 A KR20167009112 A KR 20167009112A KR 20160067202 A KR20160067202 A KR 20160067202A
Authority
KR
South Korea
Prior art keywords
context
query
request
user
contextual
Prior art date
Application number
KR1020167009112A
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 KR20160067202A publication Critical patent/KR20160067202A/ko

Links

Images

Classifications

    • G06F17/30867
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/20Ensemble learning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2457Query processing with adaptation to user needs
    • G06F16/24575Query processing with adaptation to user needs using context
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2457Query processing with adaptation to user needs
    • G06F16/24578Query processing with adaptation to user needs using ranking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/332Query formulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/332Query formulation
    • G06F16/3322Query formulation using system suggestions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • G06F16/9535Search customisation based on user profiles and personalisation
    • G06F17/3053
    • G06F17/30637
    • G06F17/3064
    • 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04842Selection of displayed objects or displayed text elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N7/005
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks
    • G06N99/005
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Software Systems (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Human Computer Interaction (AREA)
  • Biophysics (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Algebra (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Probability & Statistics with Applications (AREA)
  • Computational Mathematics (AREA)
  • Machine Translation (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

"맥락적 통찰" 또는 사용자가 소비 또는 저작하고 있는 콘텐츠의 맥락에 맞춤화된 정보를 제공하기 위한 기술들 및 시스템들이 제공된다. 애플리케이션에서 사용자 제스처에 의해 지시될 수 있는 토픽에 관한 정보에 대한 요청이 주어지는 경우, 사용자에 의한 직접적인 검색 질의의 입력을 필요로 하지 않고서 검색 서비스들에 대한 하나 이상의 질의가 형성될 수 있다. 더욱이, 기술들 및 시스템들은 사용자가 소비 또는 저작하고 있는 콘텐츠의 맥락은 물론, 사용자, 장치 및 애플리케이션 메타데이터를 이용하여, 질의들을 형성하고, 결과들을 관련 맥락적 통찰로 체계화 및 필터링할 수 있다.

Description

맥락적 통찰 및 탐구 기법{CONTEXTUAL INSIGHTS AND EXPLORATION}
콘텐츠를 생성 또는 소비하기 위한 애플리케이션들은 노트북, 워드 프로세서, 스프레드시트 또는 프레젠테이션 프로그램과 같은 판독기 애플리케이션들 및 생산성 애플리케이션들을 포함한다. 콘텐츠를 생성 또는 소비하기 위한 이러한 애플리케이션들의 사용자들은 종종 토픽들을 조사하고, 인터넷 검색 서비스들에 의존하여, 생성 또는 소비되는 콘텐츠에 관한 추가 정보를 찾는다. 토픽들을 조사하기 위해, 사용자는 종종 애플리케이션을 떠나 웹 브라우저로 가서 검색을 수행하고 결과들을 검토할 것이다.
"맥락적 통찰(contextual insights)" 또는 사용자가 소비 또는 저작하고 있는 콘텐츠의 맥락에 맞춤화된 정보를 제공하기 위한 기술들 및 시스템들이 제공된다.
콘텐츠를 생성 또는 소비하기 위한 애플리케이션 내로부터 토픽에 관한 정보에 대한 요청이 주어지는 경우, 사용자에 의한 직접적인 검색 질의의 입력을 필요로 하지 않고서 콘텐츠를 생성 또는 소비하기 위한 애플리케이션에 대해 검색 서비스들에 대한 하나 이상의 질의가 형성될 수 있다. 더욱이, 기술들 및 시스템들은 사용자가 소비 또는 저작하고 있는 콘텐츠의 맥락은 물론, 사용자, 장치 및 애플리케이션 메타데이터를 이용하여, 질의들을 형성하고, 결과들을 관련 맥락적 통찰로 체계화 및 필터링할 수 있다.
맥락적 통찰을 용이하게 하기 위한 방법은 적어도 소정의 텍스트에 관한 맥락적 통찰에 대한 요청과 함께 제공된 정보로부터 맥락적 통찰에 대한 주관심사(focus of attention)를 결정하는 단계; 맥락 분석을 수행하여, 상기 요청과 함께 제공된 맥락으로부터 질의 용어들을 결정하는 단계; 상기 질의 용어들 중 하나 이상을 이용하여 적어도 하나의 질의를 형성하는 단계; 상기 적어도 하나의 질의를 적어도 하나의 검색 서비스로 전송함으로써 검색을 개시하는 단계; 및 상기 맥락의 적어도 일부에 따라 상기 적어도 하나의 검색 서비스로부터 수신된 결과들을 체계화 및 필터링하는 단계를 포함할 수 있다.
이 요약은 아래의 상세한 설명에서 더 설명되는 개념들의 발췌를 간단한 형태로 소개하기 위해 제공된다. 이 요약은 청구 발명의 중요한 특징들 또는 본질적인 특징들을 식별하는 것을 의도하지 않으며, 청구 발명의 범위를 한정하는 데 사용되는 것도 의도하지 않는다.
도 1a는 맥락적 통찰을 위한 시스템들 및 기술들의 소정 구현들이 실행될 수 있는 예시적인 동작 환경을 나타낸다.
도 1b 내지 도 1e는 맥락적 통찰을 위한 텍스트의 초기 선택을 지시하는 예시적인 상호작용들을 나타낸다.
도 2는 맥락적 통찰 및 탐구를 위한 예시적인 프로세스 흐름을 나타낸다.
도 3은 맥락적 통찰을 표시하는 예시적인 인터페이스를 나타낸다.
도 4는 설명되는 맥락적 통찰 서비스의 일부 구현들에서 사용되는 컴퓨팅 장치 또는 시스템의 컴포넌트들을 예시하는 블록도를 나타낸다.
도 5는 맥락적 통찰을 위한 기술들의 일 구현이 실행될 수 있는 예시적인 시스템 아키텍처를 나타낸다.
"맥락적 통찰" 또는 사용자가 소비 또는 저작하고 있는 콘텐츠의 맥락에 맞춤화된 정보를 제공하기 위한 기술들 및 시스템들이 제공된다. 맥락적 통찰은 사용자에 대한 결정된 주관심사(예를 들어, 결정된 관심 토픽)와 관련된 사람/연락처 정보, 문서, 회의 정보 및 광고를 포함할 수 있지만 이에 한정되지 않는다.
콘텐츠를 생성 또는 소비하기 위한 애플리케이션의 사용자에 의한 직접 또는 간접 요청일 수 있는 토픽에 관한 정보에 대한 요청이 주어지는 경우, 사용자에 의한 직접적인 검색 질의의 입력을 필요로 하지 않고서 검색 서비스들에 대한 하나 이상의 질의가 애플리케이션에 의해 형성될 수 있다. 더욱이, 기술들 및 시스템들은 사용자가 소비 또는 저작하고(authoring) 있는 콘텐츠의 맥락은 물론, 사용자, 장치 및 애플리케이션 메타데이터의 다른 맥락을 이용하여, 질의들을 형성하고, 결과들을 관련 맥락적 통찰로 체계화 및 필터링할 수 있다.
유리하게, 본 명세서에서 설명되는 기술들 및 시스템들은 콘텐츠를 생성 또는 소비하기 위한 애플리케이션에서 콘텐츠를 소비 또는 저작하는 동안 사용자의 작업 흐름 및/또는 생산성을 개선할 수 있다. 사용자가 콘텐츠를 생성 또는 소비하기 위한 애플리케이션에 있는 동안 토픽을 조사하기를 원할 때, 사용자는 검색을 수행하기 위해 별개의 애플리케이션으로 이동할 필요가 없다. 기술들은 사용자가 애플리케이션을 떠날 필요 없이 토픽에 몰입하는 것을 가능하게 한다. 게다가, 콘텐츠를 생성 또는 소비하기 위한 애플리케이션 내의(또는 그에 의해 액세스 가능한) 맥락은 관련 결과들을 제공하는 데 사용될 수 있으며, 사용자가 관련 결과를 달성하기 위해 검색 질의를 좁히거나 수정할 수 있는 횟수를 줄일 수 있다.
"질의"는 데이터 저장 시스템의 정보에 대한 요청이다. 질의는 요청자에 의해 요구되는 "질의 용어들" 및 용어들의 서로에 대한 관계를 데이터 저장 시스템에 알리는 커맨드이다. 예를 들어, 데이터 저장 시스템이 다양한 검색 서비스에서 이용 가능한 웹 검색 엔진을 포함하는 경우, 질의는 질의 용어 "러시아" 및 "시리아"를 포함할 수 있고, 2개의 질의 용어 간의 관계가 공통적이라는 것(즉, "AND")을 지시할 수 있다. 그에 응답하여, 검색 서비스는 콘텐츠 내의 어딘가에 양 단어를 갖는 콘텐츠만을 반환할 수 있다. 본 명세서에서 자주 사용되는 바와 같이, 질의는 검색 서비스로부터 추가 콘텐츠 또는 정보를 요청하는 커맨드이며, 콘텐츠 또는 정보는 질의 내의 특정 용어들(예를 들어, 단어들)과 관련된다. 질의는 때때로 검색 서비스에 의해 해석될 수 있는 특수 포맷팅 언어로 작성된다.
질의들은 사용자의 지시된 관심 주변의 콘텐츠뿐만 아니라 사용자, 장치 또는 애플리케이션의 속성들로부터 결정되는 추가 팩터들도 포함할 수 있는 사용자의 "맥락"에 의해 형성될 수 있다. "주변 콘텐츠"는 사용자가 나타낸 관심(예를 들어, 선택) 앞 및/또는 뒤의 위치에 있는 텍스트 또는 기타 콘텐츠를 지칭한다. 검색 서비스들로부터 수신된 결과들을 체계화하고 필터링함으로써, 정보는 사용자의 특정 사용 맥락에 맞춤화된 맥락적 통찰로 변환된다. 설명되는 시스템들 및 기술들의 구현들은 더 적절한 관련 콘텐츠를 제공할 뿐만 아니라, 웹 브라우저와 같은 개별 애플리케이션을 이용하는 웹 검색과 관련된 중단 없이도 이들을 제공할 수 있고, 따라서 사용자의 생산성을 개선할 수 있다.
일례로서, 사용자가 시리아 위기에 관한 오바마 대통령의 2013년 대국민 연설에 대한 기사를 읽고 있는 것을 고려한다. 설명되는 맥락적 통찰을 위한 기술들을 포함하는 콘텐츠를 생성 또는 소비하기 위한 애플리케이션에서 기사를 작성하거나 읽는 동안, 사용자는 용어 "러시아"를 강조하고, (개별 커맨드를 통해 또는 강조 액션의 결과로서) 맥락적 통찰을 요청할 수 있다. 애플리케이션은 "러시아", "시리아 내전에서의 러시아의 역할" 및 "러시아-시리아 관계"와 같은 온라인 백과사전으로부터의 기사들을 포함할 수 있는 맥락적 통찰에 대한 정보를 반환할 수 있다. 사용자가 다른 용어 "무기"를 대신 강조하는 경우, 반환되는 정보는 "시리아 및 대량 살상 무기"라는 제목의 기사일 수 있다. 반환되는 정보는 사용자가 나타낸 관심에 의존할 뿐만 아니라 사용자가 읽고 있는 문서의 맥락에도 의존한다.
소정 구현들은 맥락적 통찰 서비스를 이용한다. 맥락적 통찰 서비스는 통상적인 검색으로부터만이 아니라 맥락을 통해 관련되는 결과들을 포함하는 "맥락적 통찰"을 생성하기 위한 기능 및 논리를 포함한다. 하나의 그러한 구현에서, 사용자에 의해 지시되는 텍스트의 부분은 사용자에 의해 선택된 텍스트의 부분 주변의 추가 텍스트와 함께 맥락적 통찰 서비스로 전송된다. 맥락적 통찰 서비스는 검색을 위한 의도된 아이템 또는 토픽에 관한 결정을 수행할 수 있다. 맥락적 통찰 서비스는 사용자의 선택의 맥락을 형성하는 관련 텍스트 내에서 발견된 하나 이상의 제안된 용어를 제공하는 것은 물론, 사용자, 장치 또는 애플리케이션에 관한 맥락 팩터들을 고려하는 추가적인 질의 용어들 또는 제한들을 결정할 수 있다. 하나 이상의 검색 서비스로부터의 검색 결과들의 반환 후에, 관련 결과들이 맥락 및 다른 팩터들에 기초하여 (분류 및 그룹핑을 포함하여) 체계화 및 필터링될 수 있다.
일부 실시예들에서는, 기술들을 반복적으로 적용하여, 맥락적 통찰의 관련성을 점진적으로 개선할 수 있다. 맥락적 통찰과 상호작용하기 위한 다수의 모드가 지원될 수 있다.
도 1a는 맥락적 통찰을 위한 시스템들 및 기술들의 소정 구현들이 실행될 수 있는 예시적인 동작 환경을 나타낸다. 도 1a의 예시적인 동작 환경은 클라이언트 장치(100), 사용자(101), 애플리케이션(120), 맥락적 통찰 컴포넌트(105), 맥락적 통찰 서비스(110) 및 하나 이상의 검색 서비스(120)를 포함할 수 있다.
클라이언트 장치(100)는 하나 이상의 애플리케이션을 실행하기 위한 능력을 갖는 범용 장치일 수 있다. 클라이언트 장치(100)는 개인용 컴퓨터, 랩탑 컴퓨터, 데스크탑 컴퓨터, 태블릿 컴퓨터, 판독기, 이동 장치, 개인 휴대 단말기, 스마트폰, 게이밍 장치 또는 콘솔, 웨어러블 컴퓨터, 광학 머리 탑재 디스플레이를 갖는 웨어러블 컴퓨터, 컴퓨터 시계 또는 스마트 텔레비전일 수 있지만 이에 한정되지 않는다.
애플리케이션(102)은 콘텐츠를 생성 또는 소비하기 위한 프로그램일 수 있다. 콘텐츠를 생성 또는 소비하기 위한 예시적인 애플리케이션들은 MICROSOFT WORD와 같은 워드 프로세싱 애플리케이션; 이메일 애플리케이션; 레이아웃 애플리케이션; MICROSOFT ONENOTE, EVERN0TE 및 GOOGLE KEEP와 같은 노트-취득 애플리케이션; 프레젠테이션 애플리케이션; 및 GOOGLE READER, APPLE iBooks, ACROBAT eBook 판독기, AMAZON KINDLE READER, 및 MICROSOFT 판독기 및 AMAZON KINDLE READER와 같은 지정된 하드웨어 판독기들 상에서 이용 가능한 것들과 같은 판독기 애플리케이션을 포함한다.
맥락적 통찰 컴포넌트(105)는 애플리케이션(102)의 고유 특징으로서 또는 맥락적 통찰 특징을 제공하기 위한 기존 애플리케이션(102)에 대한 플러그인 또는 확장으로서 애플리케이션(102)과 통합될 수 있다. 본 명세서에서 주로 클라이언트 장치(100)에서 애플리케이션(102)과 통합되는 것으로 설명되지만, 맥락적 통찰 컴포넌트(105)는 일부 예들에서 클라이언트 장치(100)와 별개인 장치를 통해 이용 가능할 수 있다.
맥락적 통찰 컴포넌트(105)는, 예를 들어 맥락적 통찰 서비스(110)의 애플리케이션 프로그래밍 인터페이스(API)를 통해, 애플리케이션(102)과 맥락적 통찰 서비스(110) 간의 상호작용을 용이하게 한다.
API는 일반적으로 2개 이상의 애플리케이션이 서로 통신하는 것을 가능하게 하기 위한 프로그래밍 명령어들 및 표준들의 세트이며, 일반적으로 하이퍼텍스트 전송 프로토콜(HTTP) 요청 메시지들의 세트 및 REST(Representational state transfer) 또는 S0AP(Simple Object Access Protocol) 아키텍처에 따른 응답 메시지들에 대한 지정된 포맷 또는 구조로서 구현된다.
애플리케이션(102)의 사용자(101)에 의한 클라이언트 장치(100)와의 특정 사용자 상호작용들의 수신에 응답하여, 맥락적 통찰 컴포넌트(105)는 맥락적 통찰 서비스(110)의 API를 이용하여 맥락적 통찰 서비스(110)의 호출(또는 소환)을 용이하게 할 수 있다. 예를 들어, 맥락적 통찰 컴포넌트(105)는 맥락적 통찰에 대한 요청(130)을 맥락적 통찰 서비스(110)로 전송하며, 이에 따라 맥락적 통찰 서비스(110)는 도 2와 관련하여 설명되는 것들을 포함하는 맥락적 통찰(135)을 제공하기 위해 하나 이상의 동작을 실행할 수 있다. 맥락적 통찰 컴포넌트(105)는 또한 일부 예들에서 예를 들어 맥락적 통찰(135)을 사용자 인터페이스 내에 렌더링함으로써 애플리케이션(102)에 대한 맥락적 통찰(135)의 제공을 용이하게 할 수 있다.
맥락적 통찰 서비스(110)는 맥락적 통찰에 대한 요청(130)을 수신하고, 맥락적 통찰(135)을 생성한다. 요청(130)은 텍스트, 텍스트 마크업, 및/또는 애플리케이션(102)으로부터의 다른 사용 맥락을 포함할 수 있다. 맥락적 통찰 서비스(110)는 도 1a에 스마트 선택(131), 맥락 분석(132) 및 질의 형성(133)으로서 도시된 하나 이상의 컴포넌트를 통해 요청을 처리할 수 있다. 맥락적 통찰 서비스(110)는 그의 동작들의 일부로서 하나 이상의 요청을 하나 이상의 검색 서비스(들)(120)로 지향시킬 수 있으며, 맥락적 통찰(135)을 맥락적 통찰 컴포넌트(105)를 통해 클라이언트 장치(110)로 반환하기 전에 후처리 컴포넌트(134) 내에 검색 서비스(들)(120)로부터 수신된 결과들을 해석 또는 처리할 수 있다.
예를 들어, 요청(130)의 수신시에, 맥락적 통찰 서비스(110)는 맥락적 통찰 컴포넌트(105)에 의해 제공된 정보에 기초하여 사용자의 의도된 콘텐츠 선택의 결정을 수행하고, 사용자가 읽고 있는 다른 콘텐츠뿐만 아니라 다양한 장치 및 사용자 메타데이터와도 관련하여 콘텐츠 선택의 맥락을 분석하고, 하나 이상의 검색 서비스(120)로부터의 검색을 요청하기 위한 하나 이상의 질의를 형성하여 전송할 수 있다. 결과 후처리를 포함하는 맥락적 통찰 서비스의 이러한 동작 양태들은 도 2와 관련하여 더 상세히 설명된다.
일부 구현들에서, 맥락적 통찰 서비스(110)는 결과 후처리 컴포넌트(134)의 활동 후에 맥락적 통찰이 더 최적화될 수 있는 것으로 결정할 수 있다. 스마트 선택(131), 맥락 분석(132) 및/또는 질의 형성(133)의 처리 스테이지들의 다른 반복을 실행하여, 질의 용어들의 수정을 통해 개선된 통찰을 생성할 수 있다.
맥락적 통찰 서비스(110)의 서브컴포넌트들(즉, 스마트 선택(131), 맥락 분석(132), 질의 형성(133) 및 결과 후처리(134))이 도 1a에 도시되지만, 맥락적 통찰 서비스(110)의 컴포넌트들로의 이러한 배열은 예시적일 뿐이며; 개시되는 기술들의 동작 양태들을 수행할 수 있는 맥락적 통찰 서비스의 다른 물리적 및 논리적 배열들이 가능하다는 점에 유의해야 한다. 또한, 맥락적 통찰 서비스(110)의 양태들은 둘 이상의 장치 상에서 구현될 수 있다는 점에 유의해야 한다. 일부 예들에서, 맥락적 통찰 서비스(110)는 사용자 장치들 상에, 그리고 개별 물리적 장치들 상에 구현된 하나 이상의 서비스 상에 배치된 컴포넌트들을 포함할 수 있다.
검색 서비스(들)(120)는 다양한 형태를 취할 수 있다. 친근한 유형의 검색 서비스는 MICROSOFT BING 및 GOOGLE과 같은, 그러나 이에 한정되지 않는 웹 검색 엔진이다. 그러나, 맥락적 통찰에 적합한 콘텐츠에 대해 질의될 수 있는 콘텐츠를 갖는 임의의 서비스 또는 데이터 저장 시스템이 검색 서비스(120)일 수 있다. 검색 서비스는 애플리케이션 내의 질의들 및 맥락 패턴들에 대해 최적화되도록 형성될 수도 있으며, 따라서 정보의 회수가 더 포커싱되고/되거나 개선될 수 있다. 때때로, 내부 또는 비공개 네트워크 상에 구현되는 "인트라넷" 검색 엔진이 검색 서비스(120)로서 질의될 수 있으며; 일례는 마이크로소프트 FAST 검색이다. 맞춤형 회사 지식-기반 또는 지식 관리 시스템은 질의를 통해 액세스 가능한 경우에 검색 서비스(120)일 수 있다. 일부 구현들에서, 텍스트 정보 탐색을 행하는 능력을 가질 수 있는 (MICROSOFT SQL SERVER와 같은) 관계형 데이터베이스 시스템 내에 구현되는 맞춤형 데이터베이스가 검색 서비스(120)일 수 있다. 검색 서비스(120)는 확장형 마크업 언어(XML) 포맷의 구조화된 파일 또는 심지어는 엔트리들의 리스트를 갖는 텍스트 파일과 같은 정보에 액세스할 수 있다. 맥락적 통찰 서비스(110)에 의한 검색 서비스(들)(120)에 대한 질의들은 일부 예들에서 API를 통해 수행될 수 있다.
맥락적 통찰에 대한 요청(130)은 맥락적 통찰의 생성과 관련된 맥락적 통찰 서비스(110)에 대한 다양한 단서들(cues)을 포함할 수 있다. 맥락적 통찰 컴포넌트(105)는 사용자(101)에 의한 지시에 기초하여 요청(130)을 생성하여 맥락적 통찰 서비스(110)로 전송한다.
맥락적 통찰에 대한 요청(130)은 사용자(101)가 클라이언트 장치(100) 상의 애플리케이션(102)과 상호작용함으로써 개시될 수 있다. 예를 들어, (임의의 포맷 타입 문서를 포함하는) 문서, 기사, (예를 들어, 광학 문자 인식을 거치거나 거치지 않을 수 있는) 픽처, 책 등의 형태의 콘텐츠가 클라이언트 장치(100) 상에서 실행되는 애플리케이션(100)을 통해 사용자(101)에 의해 생성 또는 소비(예를 들어, 판독)될 수 있다. 사용자는 콘텐츠, 및/또는 애플리케이션(102)에 대한 인터페이스와 상호작용하여, 맥락적 통찰에 대한 요청(130)이 요구된다는 것을 지시할 수 있다. 맥락적 통찰 컴포넌트(105)는 요청(130)에 대한 사용자(101)에 의한 지시에 응답하여 요청(130)을 생성하여 맥락적 통찰 서비스(110)로 전송하기 위해 애플리케이션(102), 클라이언트 장치(100) 및 심지어는 다른 애플리케이션들 또는 사용자 고유 자원들과 상호작용할 수 있다.
맥락적 통찰에 대한 요청(130)의 지시의 일례로서, 사용자는 맥락적 통찰을 위한 텍스트의 초기 선택을 지시할 수 있다. 텍스트 또는 다른 쉽게 검색 가능한 콘텐츠를 포함하는 애플리케이션(102)에서, 사용자는 예를 들어 문서, 이메일, 노트-취득 애플리케이션에서 취해진 노트, 전자 책 또는 다른 전자 콘텐츠 내의 소정 텍스트에 대한 관심을 표시할 수 있다. 관심의 표시는 검색 필드 내의 검색 용어들의 입력을 필요로 하지 않는다. 물론, 일부 구현에서, 검색 박스가 애플리케이션 내의 도구로서 이용 가능할 수 있으며, 따라서 사용자는 관심 토픽을 지시하는 용어들 또는 자연 언어 표현을 입력할 수 있다.
초기 텍스트 선택을 지시하는 사용자(101)에 의한 상호작용은 다양한 형태를 취할 수 있다. 초기 텍스트 선택을 지시하는 입력은 (하나 이상의 단어 또는 문구의) 구두 선택, 접촉 또는 무접촉 제스처 선택, 터치 선택(손가락 또는 스타일러스), 스와이프 선택, 커서 선택, 스타일러스/펜을 이용한 원 그리기, 또는 클라이언트 장치(100)에 의해 (장치의 사용자 인터페이스 시스템을 통해) 검출될 수 있는 임의의 다른 이용 가능 기술을 포함할 수 있지만 이에 한정되지 않는다. 일부 구현들에서, 맥락적 통찰은 사용자에 의한 능동적인 선택 없이 개시될 수 있다.
사용자(101)는 예를 들어 눈 움직임을 검출할 수 있는 장치를 이용할 수도 있다. 이러한 시나리오에서, 장치는 사용자의 눈이 소정 시간 길이 동안 콘텐츠의 특정 부분 위에 머무는 것을 검출하며, 이는 맥락적 통찰을 위한 콘텐츠의 선택에 대한 사용자의 관심을 나타낸다. 음성 커맨드를 검출할 수 있는 컴퓨팅 장치를 이용하여, 맥락적 통찰을 위한 콘텐츠를 처음 선택하기 위한 구두 커맨드를 인식할 수 있다. 드롭다운 메뉴, 버튼, 검색 박스 또는 우클릭 맥락 메뉴와 같은 다양한 많은 다른 사용자 인터페이스 요소는 사용자가 초기 텍스트 선택을 설정하였다는 것을 알릴 수 있다는 점에도 유의해야 한다. 또한, 초기 텍스트 선택은 문서, 페이지 또는 윈도우 상에서 이용 가능한 텍스트의 일부 또는 전부를 포함할 수 있다는 것을 이해할 수 있다.
도 1b-1e는 맥락적 통찰을 위한 텍스트의 초기 선택을 지시하는 예시적인 상호작용들을 나타낸다. 맥락적 통찰 컴포넌트는 선택은 물론, 선택 전 및/또는 후의 콘텐츠를 포함하는 맥락을 요청의 일부로서 제공한다. 따라서, 맥락적 통찰 및 탐구를 위한 텍스트의 사용자에 의한 지시는 가변적인 특이성을 가질 수 있다.
일례로서, 텍스트가 표시되는 애플리케이션(102)의 그래픽 사용자 인터페이스(150)에서, 사용자는 단어(또는 문구)(151)를 선택할 수 있다. 단어(또는 문구)의 선택은 도 1b에 도시된 것과 같은 터치 인에이블드 디스플레이 스크린 상에서의 스와이프 제스처(152)일 수 있다. 삽입 포인트, 탭, 더블 탭 및 핀치와 같은 다른 제스처들이 사용될 수 있다. 물론, 단어의 비접촉 선택(또한 단어의 커서 선택)이 지시로서 사용될 수 있다. 도 1c에 도시된 예에서, 커서(153)를 이용하여, 예를 들어 마우스 클릭을 통해 사용자 인터페이스(150)의 콘텐츠 표면 상의 포인트를 지시할 수 있다. 커서(153)는 단어 또는 단어들을 강조하지 않고서 용어 내에 배치될 수 있다. 유사한 선택이 (예를 들어, 손가락 또는 펜/스타일러스를 이용하는) 접촉에 의해 또는 심지어는 눈 응시 검출에 의해 수행될 수 있다. 이러한 타입의 선택은 영역의 선택으로서 지칭될 수 있다.
완전하지 않은 단어가 사용자에 의해 텍스트의 초기 선택으로서 지시될 수 있는 것처럼, 사용자는 전술한 사용자 상호작용의 방법들 중 임의의 방법을 이용하여 단일 단어 이상을 선택할 수 있다. 일부 시나리오들에서, 초기 선택은 단어들(또는 문구)의 연속 시리즈를 포함할 수 있다. 예를 들어, 다수의 단어가 도 1d에 도시된 것과 같은 인터페이스 기술들을 이용하여 사용자에 의해 "마킹"될 수 있으며, 여기서는 커서(154)가 문장의 다수의 단어(155)를 선택하는 것으로 도시된다. 따라서, 예시적인 시나리오들에 의해 예시되는 바와 같이, 사용자는 특정 양의 텍스트를 선택하는 것으로 제한되지 않는다.
일부 시나리오들에서, 다수의 불연속 단어 또는 문구가 디지털 스타일러스에 의한 강조, 원 그리기 또는 밑줄치기에 의해 선택될 수 있다. 관심 있는 다수의 단어 또는 문구가 사용자에 의해 우선순위화될 수도 있다. 예를 들어, 하나의 단어 또는 문구가 관심 있는 주요 텍스트 선택으로서 마킹될 수 있고, 다른 관련 단어들이 보조적이지만 관련된 관심을 갖는 지원 단어들 또는 문구들로서 마킹될 수 있다. 예를 들어, 도 1e에 도시된 것과 같은 인터페이스 기술들을 이용하여, 여러 단어(156)가 사용자 인터페이스(150) 상에 지시될 수 있다.
더욱이, 사용자가 맥락 정보 탐색을 위한 어떠한 특정 단어 또는 문구도 선택하지 않는 시나리오도 상상된다. 하나의 그러한 시나리오에서, 초기 텍스트 선택을 위한 입력은 사용자에 의한 능동적이 아닌 수동적인 상호작용들로부터 구별될 수 있다. 예를 들어, 사용자가 애플리케이션에 의해 렌더링된 텍스트를 통해 스크롤링하는 동안, 사용자가 상당한 시간 동안 머무는 단락은 초기 텍스트 선택을 구성할 수 있다. 추가 예로서, 클라이언트 장치가 사용자의 눈 움직임의 추적을 허용하는 경우, 사용자의 눈이 머무는 단어들 또는 문구들은 초기 텍스트 선택을 위한 입력을 형성할 수 있다. 또 다른 예에서, 전체 문서, 윈도우 또는 페이지가 수동적인 상호작용에 기초하여 선택된 것으로 간주될 수 있다.
도 1a를 다시 참조하면, 일부 예들에서, 추가 정보가 사용자의 지시된 초기 텍스트 선택을 포함하는 요청(130)의 일부로서 전송될 수 있다. 추가 정보는 초기 텍스트 선택에 의해 지시되는 검색들의 관련성 또는 명료성을 개선하기 위해 맥락적 통찰 서비스(110)에 의해 사용될 수 있다. 추가 정보는 실시예 및 시나리오에 의해 변할 수 있지만, 일부 실시예들에서는 (텍스트의 확장 부분, 예를 들어 선택 전 및/또는 후의 소정 수의 심벌들 또는 문자들로도 지칭될 수 있는) 선택 주변의 텍스트와 같은 정보, 콘텐츠가 표시되는 애플리케이션에 대한 정보, 애플리케이션이 실행되는 장치에 대한 정보, 및 특정 사용자에 대한 정보를 포함할 수 있다. 일부 예들에서, 이러한 정보는 본 명세서에서 "애플리케이션 메타데이터", "장치 메타데이터" 및 "사용자 메타데이터"로서 각각 지칭될 수 있다.
맥락적 통찰 서비스(110)가 사용자의 선택(및 맥락)을 처리하고, 질의 결과들을 수신 및 처리하면, 맥락적 통찰 서비스(110)는 맥락적 통찰(135)을 사용자에게 반환할 수 있다. 일부 실시예들에서, 맥락적 통찰 컴포넌트(105)는 클라이언트 장치(100) 상에서 사용자에게 맥락적 통찰을 보여주기 위해 하나 이상의 사용자 인터페이스를 렌더링하거나 애플리케이션(102)이 렌더링 또는 표시하는 것을 용이하게 하도록 동작할 수 있다.
도 2는 통찰 및 탐구를 위한 예시적인 프로세스 흐름을 나타낸다. 도 1a와 관련하여 설명된 것과 같은 맥락적 통찰 서비스(110)가 프로세스를 구현할 수 있다.
도 2를 참조하면, 적어도 소정의 텍스트에 관한 맥락적 통찰에 대한 요청의 지시가 수신될 수 있다(201). 요청은 도 1b-1e와 관련하여 설명된 것과 같은 선택 및 선택 전 및/또는 후의 콘텐츠를 포함하는 맥락을 포함할 수 있다.
맥락적 통찰을 위한 주관심사가 예를 들어 도 1a의 맥락적 통찰 서비스(110)의 스마트 선택 컴포넌트(131)에 의해 요청과 함께 제공된 정보로부터 결정될 수 있다(202). "주관심사(focus of attention)"는 사용자가 맥락적 통찰을 탐구하고 획득하기를 원할 것으로 간주되는 개념(또는 "토픽")을 지칭한다.
때때로, 사용자의 텍스트의 선택은 주관심사를 자체적으로 충분히 지시할 수 있다. 그러나, 때때로 사용자는 예를 들어 주관심사에 가깝지만 실제로는 아닌 단어를 지시함으로써 또는 다수의 단어로 이루어진 문구의 하나의 단어만을 지시함으로써 주관심사를 부적절하게 또는 불완전하게 지시할 수 있다. 특정 예로서, 사용자가 "The San Francisco 49ers scored big in last Monday's game"이라는 문장에서 "San"이라는 단어를 선택하는 경우, 진정한 주관심사는 "San"이 아니라 "San Francisco 49ers"일 가능성이 있으며, 따라서 주관심사는 요청과 함께 지시된 선택으로부터 조정되는 것이 필요할 수 있다.
주관심사의 사용자의 지시가 불완전하거나 부적절한 경우, 의도된 주관심사가 때때로 예측 가능할 수 있다. 다양한 기술들을 이용하여, 주어진 사용자 선택 및 주변 텍스트 또는 콘텐츠에 기초하여 사용자의 의도된 주관심사에 대한 후보들을 예측할 수 있다. 이러한 프로세스들은 예를 들어 반복 선택 확장, 문자 n-그램 확률, 용어들에 대한 용어 빈도-역 문서 빈도(tf-idf) 정보, 및 대문자화 특성을 포함할 수 있다. 일부 구현들에서, 둘 이상의 기술을 이용하여, 하나 이상의 후보 주관심사를 선택할 수 있다. 이어서, 이러한 다양한 기술들로부터 결정된 후보 주관심사들을 맥락적 통찰 서비스(110) 또는 그의 스마트 선택 컴포넌트(131)에 의해 채점 및 순위화하여, 다수의 가능성 중에서 하나 이상의 적당한 주관심사를 결정할 수 있다.
스마트 선택 컴포넌트(131)는 모든 현재 선택에 대해 선택이 하나의 문자 또는 단어만큼 우측으로 또는 좌측으로 확장되어야 하는지를 반복적으로 결정할 수 있다. 일부 구현들에서, 스마트 선택 컴포넌트(131)는 온라인 백과사전 또는 지식-베이스로부터 획득될 수 있는 "앵커 텍스트들"을 이용하여 선택할 후보들을 순위화 또는 채점할 수 있다. 때때로 "링크 타이틀들"로 알려진 "앵커 텍스트들"은 하이퍼링크들의 텍스트 설명들이다. 앵커 텍스트들은 하이퍼링크의 목적지에서의 콘텐츠에 대한 관련 설명 또는 맥락 정보를 사용자에게 제공할 수 있다. 앵커 텍스트들은 관련된 개념들로서 서로 긍정적으로 상관되는 단어들 및 문구들의 소스를 형성한다. 온라인 백과사전들 및 지식 베이스들의 예는 MICROSOFT ENCARTA, ENCYCLOPEDIA BRITTANICA 및 WIKIPEDIA이다.
문자 n-그램 확률들은 문자들, 음소들, 음절들 또는 단어들의 시퀀스 내의 다음 아이템을 예측하기 위한 일 타입의 확률 언어 모델인 n-그램 모델들에 기초한다. 문자 n-그램 확률은 훈련 데이터 세트로부터 도출된 확률 분포에 기초하여 타이핑될 다음 문자의 예측을 가능하게 할 수 있다. 일부 예들에서, 스마트 선택 컴포넌트(131)는 앵커 텍스트들로부터의 문자 n-그램 확률 데이터를 통해 기계 학습 기술들을 이용하여 훈련될 수 있다.
일부 구현들에서, 스마트 선택 컴포넌트(131)는 n-그램 확률 정보를 제공하는 이용 가능한 상용 또는 무료 클라우드 기반 서비스들과 상호작용하거나 그들을 이용할 수 있다. 클라우드 기반 서비스의 일례는 "마이크로소프트 웹 N-그램 서비스들"이다. 이러한 서비스는 MICROSOFT BING 검색 엔진에 의해 인덱싱된 모든 콘텐츠를 계속 분석한다. 유사한 서비스들이 구글의 N-그램 코퍼스(corpus)로부터 이용 가능하다. 클라우드 기반 서비스는 인터넷 사용자들이 그들의 검색들을 명확하게 하기 위해 추가하거나 변경하는 단어들에 대한 검색 엔진 로그들의 분석을 포함할 수 있다. 스마트 선택 컴포넌트(131)는 API를 통해 그러한 클라우드 기반 서비스와 연동할 수 있다.
일부 예들에서, tf-idf 기술들이 스마트 선택 컴포넌트(131)에서 이용될 수 있다. tf-idf는 단어가 집합 또는 코퍼스 내의 문서에 대해 얼마나 중요한지를 반영하도록 의도된 수치 통계이다. tf-idf 값은 용어(예를 들어, 단어 또는 문구)가 문서 내에 나타나는 횟수에 비례하여 증가하지만, 일부 단어들이 일반적으로 다른 단어들보다 더 공통적이라는 사실을 제어하기 위해 단어를 포함하는 문서들의 수에 의해 부정적으로 가중화된다. tf-idf 기술들을 이용하는 한 가지 방법은 후보 주관심사 내의 각각의 용어에 대한 tf-idf 값들을 합산하는 것이다.
일부 예들에서, 용어들의 대문자화 특성들을 이용하여 주관심사 후보들에 대한 명사들 또는 명사구들을 식별할 수 있다. 대문자화 특성들은 소정 용어들의 중요도를 순위화하는 데 사용될 뿐만 아니라, 최종 순위들이 계산될 때 추가적인 채점 필터들로서 사용될 수도 있다. 다른 구현들은 사전 기반 기술들을 이용하여, 앨범들, 노래들, 영화들 및 TV 쇼들의 타이틀들과 같은 알려진, 명명된 엔티티들의 대형 사전을 더 식별할 수 있다. 일부 예들에서, 자연 언어 분석기를 이용하여, 단어들, 용어 경계들 및 성분들(명사구, 동사구 등)의 음성의 부분을 식별할 수 있다. 주관심사를 예측하기 위한 설명되는 기술들은 예들이며, 한정을 의도하지 않는다는 점에 유의해야 한다.
다양한 설명되는 기술들 및 다른 기술들로부터의 채점 데이터(scoring data)를 이용하여, 사용자 지시 주관심사로부터 후보 주관심사들을 생성할 수 있다. 점수들은 스마트 선택 컴포넌트(131)에 의해 집계될 수 있으며, 이러한 기술들 중 하나 이상의 기술에 의해 할당된 점수들이 컴파일, 평균화 및 가중화될 수 있다. 점수들은 후보 주관심사 내의 단어들의 대문자화 및 정지-단어 특성들에 의해 더 수정될 수 있다(정지-단어들은 관사들("A", "an", "the")과 같은 의미상 무관한 단어들이다). 각각의 후보 주관심사에 대한 최종 점수 및 순위가 계산될 수 있고, 주어진 사용자 선택을 위한 상위 후보 주관심사(포커스들)를 찾는 데 사용될 수 있다.
따라서, 요청과 함께 제공되는 초기 텍스트 선택은 "사용자 지시" 주관심사로서 지칭될 수 있다. 사용자 지시 주관심사의 지시에 더하여, 요청은 사용자 지시 주관심사의 전 및/또는 후의 텍스트 또는 콘텐츠의 범위를 포함할 수 있다. 이어서, 사용자 지시 주관심사는 다양한 예측 기술들이 적용됨에 따라 드러나는 순위들에 응답하여 의도된 주관심사를 발견하기 위한 확장, 축소 또는 조작을 위해 분석될 수 있다. 사용자 지시 주관심사들과 다를 수 있는 하나 이상의 주관심사가 선택될 수 있다.
하나 이상의 주관심사가 결정되면, 맥락 분석을 수행하여 질의를 형성하기 위한 질의 용어들을 결정할 수 있다(203). 질의 용어들의 결정의 일부로서, OR, NOT 및 BOOST와 같은 연산자들은 물론, 사용자의 위치(프라이버시 허가를 통해 이용 가능한 경우), 시각, 클라이언트 장치 등과 같은 (예를 들어, 사용자 메타데이터로부터 도출되는) 메타 정보도 포함하는 질의 아이템들도 결정하여 질의들의 생성을 용이하게 할 수 있다. 맥락 분석은 주관심사와 관련하여 검색 엔진에 질의하는 데 사용될 수 있는 맥락 내의 대표적인 용어들을 식별할 수 있다. 맥락 분석은 예를 들어 도 1a와 관련하여 설명된 것과 같은 맥락 분석 컴포넌트(132)에 의해 수행될 수 있다.
여기서, 맥락 분석은 검색 서비스(예를 들어, 검색 서비스들(120) 중 하나 이상)에 대한 질의를 특정 사용자와 더 관련되도록 정밀화할 수 있는 기술이다. 예를 들어, 기사, 문서, 전자 책의 콘텐츠, 또는 (콘텐츠를 주관심사에 대한 그의 맥락 관계에 대해 분석하기 위한 기술들을 포함하는) 사용자가 읽거나 조작하고 있는 다른 전자 콘텐츠; 애플리케이션 및 장치 특성들; 및 클라이언트 장치 사용자의 식별자, 위치, 환경, 언어, 프라이버시 설정, 검색 이력, 관심, 또는 컴퓨팅 자원들에 대한 액세스와 관련된 메타데이터를 포함하는 다양한 형태의 맥락이 분석될 수 있다. 이제, 질의 정밀화와 관련된 이러한 다양한 형태의 맥락의 이용이 설명된다.
기사, 문서, 전자 책의 콘텐츠, 또는 사용자가 상호작용하고 있는 다른 전자 콘텐츠는 검색 질의를 정밀화할 수 있는 "맥락"의 하나의 가능한 양태이다. 예를 들어, "러시아 연방"을 주관심사로서 선택한 사용자는 올림픽에 대한 기사를 읽을 때보다 시리아 내전에 관한 기사를 읽을 때 러시아에 대한 상이한 정보에 관심을 가질 수 있다. 기사 콘텐츠에 대한 맥락 분석이 이 예에서 수행되는 경우, 질의 용어들은 "러시아 연방"(사용자 지정 포커스)으로부터 "시리아 내전에서의 러시아 연방의 연관성" 또는 "러시아 연방 2014 소치 올림픽"으로 각각 수정될 수 있다.
주관심사 주변의 전자 콘텐츠는 다양한 방식들 중 하나 이상의 방식으로 질의 용어들을 결정하기 위한 맥락 분석을 겪을 수 있다. 일부 예들에서, 전체 문서, 기사 또는 전자 책이 질의 용어들을 결정하기 위한 맥락을 위해 분석될 수 있다. 일부 예들에서, 맥락 분석을 겪는 전자 콘텐츠는 전체 문서, 기사 또는 전자 책보다 적을 수 있다. 후보 맥락 용어들에 대해 분석되는 주변 콘텐츠의 양 및 타입은 애플리케이션, 콘텐츠 타입 및 다른 팩터들에 따라 변할 수 있다.
예를 들어, 맥락 분석되는 콘텐츠는 주관심사 주변의 단어들, 페이지들 또는 단락들의 범위에 의해 정의될 수 있다. 전자 책에서, 예를 들어, 맥락 분석을 위한 콘텐츠는 사용자가 읽지 않은 페이지들 또는 장들이 아니라 실제로 읽은 전자 책의 부분으로만 제한될 수 있다. 일부 예들에서, 맥락 분석을 위한 콘텐츠는 전자 콘텐츠에 대한 타이틀, 저자, 발행일, 인덱스, 목차, 서지 사항 또는 다른 메타데이터를 포함할 수 있다. 일부 구현들에서, 클라이언트에서의 맥락적 통찰 컴포넌트(105)는 맥락적 통찰 서비스에 대한 요청 내에서 제공되는 맥락 콘텐츠의 양에 대한 규칙들을 결정 및/또는 적용하는 데 사용될 수 있다.
주관심사 주변의 적절한 범위의 콘텐츠의 맥락 분석은 일부 구현들에서 주변 콘텐츠로부터 후보 맥락 용어들을 선택하고 그들을 주관심사 용어와 관련하여 분석함으로써 수행될 수 있다. 예를 들어, 후보 맥락 용어들을 서로 독립적으로 그러나 주관심사 용어와 관련하여 채점하는 기술이 이용될 수 있다. 기술은 포커스-후보 맥락 용어들의 각각의 쌍에 대한 점수를 결정한 후에 점수들을 순위화할 수 있다.
일부 구현들에서, 주변 콘텐츠로부터의 후보 용어와 주관심사 간의 관계의 관련성이 검색 엔진들의 질의 로그들과 관련하여 분석될 수 있다. 질의 로그들은 다수의 사용자에 의해 실행된 이전 검색들로부터 수집된 휴리스틱을 이용하여 주관심사 용어들과 주변 콘텐츠로부터의 후보 용어들 사이의 소정 관계들이 다른 것들보다 강하다는 것을 지시할 수 있다. 일부 구현들에서, 맥락 분석 컴포넌트(132)는 웹 콘텐츠 크롤들(crawls)로부터 용어 관계들을 발췌함으로써 용어들에 대해 훈련될 수 있다. 일부 예들에서, 용어들 간의 관계의 강도는 예를 들어 API 호출 또는 다른 통신 메커니즘을 통해 상대 용어 강도들을 획득할 수 있는 전술한 "마이크로소프트 웹 N-그램 서비스" 시스템과 같은 클라우드 기반 서비스의 일부로서 이용 가능할 수 있다.
단독으로 또는 다른 기술들과 연계하여 사용되는, 후보 맥락 용어들의 관련성을 결정하는 데 사용될 수 있는 다른 기술은 후보 맥락이 명명된 엔티티인지를 결정하는 것이다. 예를 들어, 후보 맥락 용어는 앨범들, 노래들, 영화들 및 TV 쇼들의 타이틀들과 같은 알려진, 명명된 엔티티들의 사전의 일부일 수 있으며; 후보 맥락 용어가 명명된 엔티티인 경우, 후보 용어의 관련성이 조정될 수 있다.
후보 맥락 용어와 주관심사 간의 거리도 맥락 분석에서 고려될 수 있다. 거리는 후보 맥락 용어와 주관심사 사이에 개재된 단어들 또는 용어들의 수에 의해 결정될 수 있다.
일부 구현들에서, 주관심사 용어들에 관한 후보 맥락 용어의 관련성은 온라인 지식 베이스로부터 이용 가능한 앵커 텍스트와 관련하여 결정될 수 있다. 앵커 텍스트들 내의 용어들의 발생 빈도들의 통계 측정치들은 후보 용어들 및 주관심사 용어들이 관련될 가능성이 있는지 또는 용어들의 병렬성이 임의적인지를 지시할 수 있다. 예를 들어, 앵커 텍스트 내의 후보 맥락 용어와 주관심사 용어(들) 사이의 매우 열렬한 관계 값들은 후보 맥락 용어가 질의 용어에 대한 나쁜 선택이라는 것을 지시할 수 있다.
일부 맥락 분석 기술들은 주관심사 주변의 콘텐츠로부터의 용어들의 수집 및 분석에 더하여(또는 그 대신에) 애플리케이션, 장치 또는 사용자와 관련된 메타데이터를 이용할 수 있다. 이러한 기술들은 검색 질의를 위해 선택된 질의 용어들을 정밀화, 확장 또는 축소하기 위해 맥락 분석 컴포넌트(132)에 의해 사용될 수 있다.
일부 구현들에서, 애플리케이션(102) 또는 장치(100)의 타입은 맥락 분석의 팩터일 수 있다. 예를 들어, 사용자가 워드 프로세서와 같은 콘텐츠 저작 애플리케이션에서 논문을 작성하고 있는 경우, 질의 용어들에 대한 맥락 분석은 판독기 애플리케이션의 경우의 분석과 다를 수 있다. 저작 애플리케이션의 이러한 예에서, 맥락 분석은 애플리케이션 타입을 통해 질의 용어들을 발견하기 위한 더 좁은 포커스가 적절할 수 있는 것으로 결정하여, 아마도 질의 용어들을 정의들 및 학문 자료들로 제한할 수 있다. 판독기의 경우, 더 관심 기반이고 비공식적인 자료들이 적절할 수 있으며, 따라서 후보 질의 용어들은 더 넓은 범위에 걸친다.
사용자 장치 메타데이터로부터 도출되는 팩터들도 소정 구현들에서 고려될 수 있다. 때때로, 사용자 장치의 타입은 맥락 분석으로부터 결정되는 질의 용어들의 팩터일 수 있다. 예를 들어, 사용자 장치가 전화 크기의 이동 장치인 경우, 후보 맥락 용어들은 사용자 장치가 데스크탑 컴퓨터인 경우에 선택되는 것들과 다른 분류로부터 선택될 수 있다. 소형 이동 장치의 경우, 사용자의 관심들은 더 약식일 수 있고, 스크린은 더 작은 공간을 가질 수 있으며, 따라서 더 요약된 정보를 생성하는 후보 용어들이 선택될 수 있다. 또한, 맥락 분석은 근처의 인기 있는 물건들과 관련될 수 있는 후보 용어들을 선택함으로써 장치 이동성을 고려할 수 있다. 이와 달리, 사용자 장치가 데스크탑 장치인 경우, 사용자는 직장에 있을 수 있고, 더 상세하고 유익한 결과들을 원할 수 있으며; 추가적인 정보 소스들로부터 결과들을 얻는 질의 용어들이 추가될 수 있다.
일부 구현들에서, 사용자 메타데이터로부터 도출되는 팩터들은 질의 용어들을 정의하기 위한 맥락 분석의 일부로서 사용될 수 있다. 때때로, 팩터는 사용자의 타입 - 예를 들어, 사용자의 현재 역할이 회사 종업원인지 또는 소비자인지 -일 수 있다. 사용자의 타입은 예를 들어 사용자가 통신 네트워크에 액세스하고 있는 인터넷 프로토콜(IP) 주소에 의해 결정될 수 있다. 전자의 경우에는 작업 지향 질의 용어들이 맥락 분석 컴포넌트에 의해 우선적으로 선택될 수 있고, 후자의 경우에는 가정 또는 소비자와 더 관련된 용어들이 선호될 수 있다. 일부 구현들에서, 사용자 타입은 회사 인트라넷에 의해 액세스 가능한 회사 지식 관리 시스템과 같은 컴퓨팅 자원들의 가용성을 결정할 수 있다. 회사 관련 자원들의 가용성은 맥락 분석 컴포넌트가 그러한 특수 시스템들을 표적으로 하는 질의 용어들을 선택하는 것을 가능하게 할 수 있다.
일부 구현들에서, 맥락 분석의 팩터는 이전의 검색들 또는 관심들의 사용자 이력일 수 있다. 일부 예들에서, 사용자에 의해 선택된 이전의 주관심사들의 과거 기록을 분석하여, 후보 질의 용어들을 생성하거나 예측할 수 있다. 그러한 후보 용어들은 주변 콘텐츠에 대한 후보 용어들과 관련하여 설명된 것들과 유사한 기술들을 이용하여, 예를 들어, N-용어 서비스들 또는 앵커 텍스트 분석을 이용하여 사용자의 현재 주관심사와 관련하여 정밀화 또는 순위화될 수 있다.
후보 용어들은 이전의 사용자 인터넷 검색들에 기초하여 맥락 분석 엔진에 의해 선택될 수 있다. 이러한 검색들의 과거 기록은 후보 질의 용어들을 생성 또는 예측할 수 있다. 유사하게, 인터넷 브라우저 쿠키들 또는 방문된 웹사이트들의 브라우저 이력을 이용하여, 후보 용어들을 예측 또는 정밀화할 수 있는 사용자 관심들을 식별할 수 있다. 생성된 후보 용어들은 과거의 주관심사 용어들과 관련하여 전술한 것들과 유사한 기술들을 이용하여 순위화 또는 정밀화될 수 있다.
맥락 분석 컴포넌트의 질의 용어들의 결정 동안 분석될 수 있는 다른 팩터들은 사용자가 맥락적 통찰을 요청하고 있는 시각 및 클라이언트 장치의 현재 지리 위치일 수 있다. 사용자 프로필 및 인구 통계 정보, 예를 들어 나이, 성별, 민족, 종교, 직업 및 선호하는 언어도 질의 용어 결정의 팩터들로서 사용될 수 있다. 일부 구현들에서 사용자의 프라이버시 설정들은 사용자 프로필 메타데이터가 맥락 분석에 이용될 수 있는지 그리고 프로필 메타데이터가 어느 정도 이용될 수 있는지에 영향을 줄 수 있다는 점에 유의해야 한다.
도 2에 도시된 프로세스를 계속 설명하면, 질의 용어들 중 하나 이상을 이용하여 질의가 형성될 수 있다(204). 질의 형성은 동작 모드가 사용자 선호들과 관련하여 결정되는 전처리 결정을 포함할 수 있으며; 동작 모드는 어떤 맥락 관련 용어들이 질의를 형성하는 데 사용되는지를 알릴 수 있다. 질의 형성은 하나 이상의 검색 서비스로 전송될 수 있는 실제 질의들의 집계를 포함할 수 있다. 질의 형성은, 예를 들어, 도 1a와 관련하여 설명된 질의 형성 컴포넌트(133)에 의해 수행될 수 있다.
일부 실시예들에서, 질의 형성 컴포넌트(133)는 동작 모드가 사용자 선호들과 관련하여 결정되는 전처리 결정에 관여할 수 있다. 동작 모드는 적절하거나 바람직한 검색 결과들의 하나 이상의 클래스를 결정할 수 있다. 예를 들어, 2개의 동작 모드는 "탐색" 및 "탐구"일 수 있다. "탐색" 모드는 주관심사와 좁게 관련된 표적화된 결과들(예를 들어, 사전 탐색)을 제공할 수 있다. "탐구" 모드는 더 일반적인 검색 결과들을 제공할 수 있으며, 예를 들어, 어떤 검색 결과들 또는 토픽들을 더 탐구할지에 관하여 사용자에게 여러 옵션을 제시할 수 있다. 물론, 다수의 동작 모드가 제공되는 시나리오들과 같이, 검색 결과의 상이한 클래스들을 표현하는 다른 동작 모드들이 가능하다.
따라서, 질의 형성 컴포넌트의 동작은 맥락 분석 단계로부터의 질의 용어들이 사용자의 지시된/결정된 주관심사들(또는 사용자가 제공한 경우에 명확한 검색 질의)을 어느 정도 대체 또는 대신할 수 있는지를 결정하는 것일 수 있다. 동작 모드는 사용자에 의해 능동적으로, 예를 들어 모드의 긍정적인 선택에 의해, 또는 수동적으로, 예를 들어, 사용자, 장치 또는 애플리케이션 메타데이터로부터 결정된 소정 팩터에 기초하여 선택될 수 있다.
일부 예들에서, 동작 모드는 맥락 분석으로부터의 결과들 또는 다른 팩터들에 기초하여 질의 형성 컴포넌트(133)에 의해 결정될 수 있다. 예를 들어, 질의 형성 컴포넌트(133)는 주관심사의 모호성에 기초하여 어느 동작 모드를 사용할지를 결정할 수 있다. 맥락 분석 동안 또는 후에 맥락적 통찰 서비스가 주관심사의 모호성으로 인해 용어들 또는 결과들이 탐색 모드를 위해 허용 가능하게 좁지 않을 수 있는 것으로 결정하는 경우, 탐구 모드가 선택될 수 있다.
때때로, 질의 형성 컴포넌트(133)는 소정의 추가 맥락 용어들이 주관심사를 부적절하게 압도하는 검색 결과들을 반환할 수 있는 것으로 판단할 수 있다. 일부 예들에서, 질의 형성 컴포넌트(133)는 성인 또는 불쾌한 콘텐츠를 반환할 가능성이 있을 수 있는 질의 용어들을 수정할 수 있으며; 사용자 프로필 메타데이터(예를 들어, 사용자의 나이)는 질의 용어들의 그러한 수정의 팩터일 수 있다. 맥락적 통찰 서비스(110)는 예를 들어 하나 이상의 시험적인 질의를 형성하여 검색 서비스들로 전송함으로써 이러한 결정을 행할 수 있다. 시험적인 질의들은 맥락적 통찰 서비스(110)가 질의 용어들의 여러 시험 형성에 대한 검색 결과들을 미리보는 것을 가능하게 할 수 있으며, 따라서 맥락 분석에 의해 추가된 용어들이 조정 또는 수정될 수 있다.
질의 형성은 하나 이상의 검색 서비스로 전송될 수 있는 실제 질의들의 집계를 포함할 수 있다. 일부 예들에서, 질의 형성 컴포넌트는 접속적으로 연결되는 하나 이상의 질의 용어로 구성되는 단일 질의를 집계하여 단일 검색 서비스로 전송할 수 있다.
그러나, 일부 예들에서, 맥락 분석은 맥락이 상이한 맥락 용어들을 상이하게 탐구하기를 원하도록 사용자를 유도할 수 있는 주관심사에 대한 다수의 양태를 커버한다는 것을 알릴 수 있다. 질의 형성 컴포넌트는 검색 결과들의 상이한 클래스들에 대한 결정된 요구에 기초하여 이접적인 질의들(disjunctive queries)을 형성하고, 상이한 용어들을 갖는 개별 질의들을 형성하고, 질의들을 다수의 실행 단계로 분할하고/하거나, 상이한 질의들을 상이한 검색 서비스들로 전송할 수 있다. 일부 예들에서, 질의 용어들은 특정 검색 결과들을 얻기 위해 특정 순서로 배열될 수 있다.
예를 들어, 질의 형성 컴포넌트(133)는 특정 주관심사 및 맥락 분석이 분할된 방식으로 사용자에게 최상으로 제시될 수 있는 질의 용어들을 알리는 것으로 결정할 수 있다. 그러한 경우, 질의 형성 컴포넌트(133)는 "포커스-용어 AND(맥락-용어1 OR 맥락-용어2 OR ...)" 형태의 이접적 질의를 형성할 수 있다. 더욱이, 질의 형성 컴포넌트(133)는 때때로 다수의 질의 - 주관심사를 더 좁게 표적화하는 질의, 및 소수의 관련 주제들에 대한 탐구적인 검색 결과들을 표적화하는 하나 이상의 질의 -를 형성할 수 있다. 일부 예들에서, 질의는 주어진 클래스로부터 결과들을 회수하기 위해 특정 검색 서비스에 대해 표적화될 수 있다.
질의 형성은 의도된 검색 서비스들에 기초하여 실행될 수 있으며, 따라서 맥락적 통찰 서비스는 질의를 하나 이상의 검색 서비스에 전송함으로써 검색을 개시한다(205). 검색은 맥락적 통찰 서비스(110) 또는 그의 소정의 컴포넌트(예를 들어, 질의 형성 컴포넌트(133))가 도 1a에 도시된 바와 같이 질의를 하나 이상의 검색 서비스(120)로 발부하거나 전송할 때 발생할 수 있다. 전송되면, 검색의 결과들이 수신될 수 있다(206). 많은 예에서, 도 1a에 도시된 바와 같이, 검색 서비스에 대한 API 호출을 통해, 검색 질의가 발부될 것이고, 검색 결과들이 반환될 것이다. 다수의 질의가 전송된 맥락들에서, 결과들을 분할하기 위해 또는 특정 검색 서비스들을 표적화하기 위해, 검색 결과들의 다수의 세트가 수신될 수 있다.
결과들의 수신 후에, 결과들은 맥락의 적어도 일부에 따라 체계화 및 필터링될 수 있다(207). 맥락적 통찰 서비스(110) 또는 그의 소정 컴포넌트(예를 들어, 도 1a에서 설명된 결과 후처리 컴포넌트(134))는 결과들을 수신하고/하거나 체계화 및 필터링 동작들을 수행할 수 있다. 결과들의 체계화 및 필터링은 예를 들어 다양한 기준들에 따른 결과들의 순위화; 다수의 질의 및/또는 다수의 검색 서비스로부터의 결과 세트들을 포함하는 결과 세트들의 집계, 분류 및 그룹핑; 및 거짓된 또는 덜 관련된 결과들의 제거를 포함할 수 있다.
일부 구현들에서, 결과들의 체계화 및 필터링은 다양한 기준들에 따른 결과들의 순위화를 포함할 수 있으며, 기준들의 일부는 맥락으로부터 결정될 수 있다. 결과 후처리 컴포넌트는 검색 서비스로부터 수신된 검색 결과들의 양태들을 다양한 기술들에 따라 평가할 수 있다. 하나 이상의 기술로부터 드러나는 순위의 평가들은 서로 연계하여 사용될 수 있으며, 기술들 중 일부는 주어진 맥락에서 관련 대답들을 생성하기 위한 그들의 적성에 따라 가중화될 수 있다.
일부 예들에서, 검색 결과들은 순위 위치와 함께 검색 서비스로부터 수신될 수 있으며, 그러한 순위는 관련성을 결정하기 위한 자연스런 시작 포인트를 형성할 수 있다. 다른 기술은 검색 결과의 타이틀 또는 URL이 질의와 얼마나 밀접하게 매칭되는지의 언어적 평가를 포함할 수 있으며; 예를 들어, 타이틀 내의 단어들이 질의 내의 용어들에 대한 거의 정확한 매치인 경우에, 결과는 더 관련될 수 있다.
맥락 분석으로부터 결정된 팩터들은 맥락에 관한 검색 결과들의 부합을 돕기 위한 결과 후처리 단계에서도 적용될 수 있다. 예를 들어, 결과들을 평가하여, 결과들이 사용자 프로필 메타데이터와 부합되는 것을 보증할 수 있다. 나이에 맞지 않는 결과들은 예를 들어 완전히 제거될 수 있으며; 다른 예들에서 사용자의 위치에 더 적합할 수 있는 결과들이 다른 결과들보다 결과 후처리 컴포넌트(134)에 의해 더 높게 순위화될 수 있다.
검색 결과가 (예를 들어, 위키피디아 상의) 명확화 페이지(disambiguation page)에 대응하는지, 질의의 길이, 맥락의 길이 및 다른 질의 성능 지시자들과 같은 팩터들도 검색 결과 관련성의 평가에서 사용될 수 있다.
그러나, 때때로, 결과들의 순위화 이외의 다른 기술들이 맥락적 통찰에 대한 결과들의 체계화 및 필터링과 관련될 수 있다. 예를 들어, 여러 질의 또는 검색 서비스로부터의 다수의 결과 세트가 수신된 때, 결과들은 그룹핑 또는 재분류될 수 있다. 더욱이, 상이한 검색 서비스들의 불일치 또는 부합성 결여가 존재할 때, 어느 결과 세트들을 우선순위화할지에 관한 결정들이 필요할 수 있다.
일부 예들에서, 다수의 질의가 질의 형성 컴포넌트(133)에 의해 그리고 아마도 다수의 검색 서비스로 발부되었을 수 있다. 그러한 예들에서, 질의들 자체는 당연히 결과 세트들의 의도된 그룹핑들을 반영할 수 있다. 예를 들어, 주관심사가 지리 위치와 관련되고, 질의 형성 컴포넌트(133)가 질의를 여행 정보와 함께 검색 서비스로 명확히 지향시킨 경우, 그러한 서비스로부터 반환되는 검색 결과들은 결과 후처리 컴포넌트(134)에 의해 "여행" 카테고리 아래에 함께 그룹핑될 수 있다. 유사하게, 질의 형성 컴포넌트(133)가 지리 위치의 이력에 포커싱하는 개별 질의를 검색 서비스로 발부한 경우, 그러한 결과들도 함께 그룹핑될 수 있다. 물론, 검색 결과들은 또한 그룹 또는 카테고리 내에서 순위화 및 정밀화될 수 있다. 일부 예들에서, 상이한 질의들로부터 반환된 결과 세트들은 결과 후처리 컴포넌트(134)에 의해 재통합될 수 있다. 더욱이, 때때로, 검색 서비스로부터 단일 결과 세트로서 수신된 결과들은 예를 들어 토픽, 결과를 갖는 웹사이트의 도메인, 결과의 타입(예를 들어, 텍스트, 사진, 멀티미디어), 콘텐츠 등급 또는 다른 기준들에 따라 더 논리적으로 분할 및 그룹핑될 수 있다.
일부 구현들은 결과 후처리 컴포넌트(134)에 의한 결과 임계치들의 검출을 포함할 수 있다. 결과 "임계치들"은 결과들의 특정 그룹들이 예를 들어 관련성에 의해 또는 카테고리/토픽에 의해 서로 관련될 수 있다는 것을 지시하는 하나 이상의 결과 또는 결과 세트 내의 연접 포인트들이다. 이러한 임계치들은 결과들을 그룹핑, 정밀화, 제거 또는 재분류하는 데 사용될 수 있다.
예를 들어, 주어진 검색에서, 처음 3개의 검색 결과가 높은 순위 점수를 가지므로 상위에 순위화되지만, 다음 7개의 검색 결과가 낮은 순위 점수를 갖는 그룹을 형성하는 경우, 3개의 결과의 제1 그룹은 주관심사 및 맥락과 매우 관련될 수 있다. 여기서, 결과 임계치가 존재할 수 있고, 그를 초과하는 결과들은, 예를 들어, 상이한 동작 모드를 표시하는 인터페이스 내에서 사용자에게 상이하게 표현되거나 절단(truncated)될 수 있다. 다른 예시적인 시나리오에서, 아마도 10개의 결과 모두가 유사한 순위 점수를 갖고, 결과들의 관련성은 서로 구별하기 어려울 것이며, 이러한 예에서는 관련성에 관한 결과 임계치가 존재하지 않고, 상이한 제시 및 그룹핑 옵션들이 사용될 수 있다. 결과 임계치들은 때때로 얼마나 많은 통찰(135)이 주어진 맥락적 통찰 요청(130)으로부터 반환되는지를 결정하는 데 사용될 수 있다. 일부 예들에서, 주어진 결과 임계치의 특성들은 사용자, 애플리케이션 또는 장치 메타데이터(예를 들어, 장치 스크린의 크기)에 적응될 수 있다.
때때로, 결과 임계치들은 콘텐츠 그룹들의 검출을 허가하는 패턴들로부터 인식될 수 있다. 패턴들의 예는 언제 여러 결과가 그들의 타이틀, 사이트 기원 또는 순위 점수들에서 유사성을 보이는지를 포함한다. 결과 후처리 컴포넌트(134)가 특정 패턴과 매칭되는 것으로 결정될 수 있는 결과들을 수신할 때, 결과 후처리 컴포넌트(134)는 그러한 결과들을 함께 단일 결과 또는 결과들의 분할된 카테고리로서 그룹핑할 수 있다. 예를 들어, 다양한 웹사이트들로의 유사한 뉴스 릴리스의 다수의 포스팅은 매우 유사한 타이틀들 또는 간단한 설명들을 갖는 것으로 결정될 수 있으며, 결과 후처리 컴포넌트(134)는 패턴을 인식하고, 뉴스 릴리스들을 단일 통찰로 그룹핑 또는 절단할 수 있다.
결과 임계치들은 소스들 간의 불일치의 패턴들로부터 검출될 수 있다. 예를 들어, 엔트로피의 레벨 - 상이한 소스들로부터 반환된 결과들 사이에 오버랩이 존재하거나 존재하지 않는 정도 - 이 결과 임계치를 지시할 수 있다. 예를 들어 하나의 소스로부터의 결과들이 다른 소스로부터의 결과들과 낮은 오버랩을 갖는 경우, 이러한 패턴은 결과들이 상이한 맥락적 통찰을 갖는 다수의 그룹으로 분리될 수 있다는 것을 지시할 수 있다.
일부 예들에서, 예를 들어, 임계치가 소스들 간의 불일치의 식별 가능 패턴으로부터 검출될 때, 맥락적 통찰 서비스(110)의 소정 기능들은 적절한 맥락적 통찰을 결정하기 위해 반복 실행될 수 있다(예를 들어, 동작 202에서 조정이 행해지고, 프로세스들이 반복될 수 있다). 예를 들어, 도 1a와 관련하여 설명된 바와 같이, 결과 후처리 컴포넌트(134)는 스마트 선택, 맥락 분석 및/또는 질의 형성의 처리 스테이지들의 다른 반복이 개선된 통찰을 생성할 수 있는 것으로 결정할 수 있다. 처리의 추가 반복들의 결과로서, 주관심사, 콘텐츠 및 메타데이터로부터의 맥락 용어들, 및 질의 용어들이 수정될 수 있다.
소스들 간의 불일치의 패턴은 예를 들어 형성된 질의 용어들이 소스들 또는 검색 서비스들 중 하나 이상과 관련하여 모호할 때 발생할 수 있다. 예를 들어 요청이 "John Woo"에 대한 맥락적 통찰을 위해 행해지고, John Woo가 저명한 영화 감독일 뿐만 아니라 국제 연합에서의 고위 원로인 경우, 결과들의 적어도 2개의 상이한 패턴이 반환될 수 있다. 추가 맥락 또는 수정된 주관심사를 이용하는 처리의 추가 반복을 이용하여 최상의 관련 통찰을 결정할 수 있다. 또는, 동음이의어 "row"를 고려한다(동음이의어는 동일한 철자를 갖지만 반드시 동일하게 발음되지는 않고, 상이한 의미들 및 기원들을 갖는 둘 이상의 단어 각각이다). 영국인들은 논쟁 또는 말다툼을 의미하기 위해 단어 "row"를 자주 사용하지만, 미국인들은 좀처럼 그렇지 않으며; 미국인들은 그 단어를 그의 동사 형태로, 예를 들어 "노를 이용하는 것과 같이 배를 젓는 것"으로 사용하는 경향이 있다. 주어진 질의 내의 2개의 의미에 의존하는 임계치가 결정되면, 추가 맥락 분석은 예를 들어 사용자가 영국인인 것을(따라서, "논쟁"을 의미하는 것을) 또는 단어 "row"가 소비되는 콘텐츠와 관련하여 동사 형태로 사용되고 있다는 것을 식별할 수 있다.
결과들의 체계화 및 필터링(207)이 완료된 때, 맥락적 통찰(135)이 맥락적 통찰 서비스(110)에 의해 호출 컴포넌트(105) 또는 클라이언트 장치(100)로 반환될 수 있다(208).
도 3은 맥락적 통찰을 표시하는 예시적인 인터페이스를 나타낸다. 예시적인 인터페이스는 맥락적 통찰(135)이 사용자 장치(100) 상에 표시될 수 있는 한 가지 방식을 예시하기 위해 제공된다. 도 3에 도시된 것과 같은 예시적인 인터페이스가 애플리케이션(102)에 의해 생성되거나, 애플리케이션(102) 또는 장치(100)와 연계하여 맥락적 통찰 컴포넌트(105)에 의해 렌더링될 수 있다. 이 예는 예시적인 목적을 위한 것일 뿐이며, 맥락적 통찰이 맥락적 통찰 서비스(110)에 의해 체계화 및 필터링될 수 있는 방식들 및 다양성들을 한정하는 것을 의도하지 않는다.
도 3을 참조하면, 맥락적 통찰 미리보기(300)가 기존 애플리케이션 표면(301) 위에 드러나지 않게 표시되어, 애플리케이션 표면(301) 내에 표시된 콘텐츠를 일부만 가릴 수 있다. 예시적인 미리보기(300)에서, (식별된 텍스트(303)에 의해 제공되는 바와 같은) 타이틀(302), 이미지(정지 또는 이동)(304)(이용 가능한 경우) 및 요약 텍스트(305)(이용 가능한 경우)를 포함할 수 있는 고속 요약이 제공될 수 있다.
예시적인 맥락적 통찰 미리보기(300) 내에는 맥락적 통찰들에서의 그룹핑들을 형성할 수 있는 다양한 동작 모드들 또는 맥락적 통찰 서비스(110)에 의해 결정된 다양한 다른 그룹핑들(320)의 미리보기도 포함될 수 있다. 사용자가 맥락적 통찰들을 내비게이션하는 것을 가능하게 하기 위해, 관련 결과들(310)은 동작 모드들 또는 다른 그룹핑들을 나타낼 수 있는 모듈들(320)로 그룹핑될 수 있다.
도 3에 도시된 예에서, 결과들(310)은 소스에 의해 그룹핑된다. 이와 관련하여, "소스"는 네트워크 위치, 웹사이트, 애플리케이션의 타입, (이미지와 같은) 결과의 타입, 또는 결과들을 그룹핑하는 다른 논리적 방법을 의미할 수 있다. 소스들의 일부 예들은 위키피디아 온라인 백과사전; 회사 내의 사용자들에 의해 사적으로 이용 가능한 내부 웹 서버 및/또는 소셜 그래프와 같은 로컬 네트워크 소스; 특정 뉴스 웹사이트; 사진 공유 웹사이트로부터의 이미지 파일들; 데이터베이스로부터의 구조화된 데이터; 또는 사용자의 드라이브들 또는 개인 클라우드 저장소 상의 비공개 파일들일 수 있다.
모듈 그룹핑들은 사용자에 대한 맥락 정보에 기초하여 상이하게 표시될 수 있다는 점에 유의해야 한다. 예를 들어, 집에서의 사용자는 소비자 또는 엔터테인먼트 지향 정보 소스들을 수신할 수 있다. 동일 사용자는 직장에 있을 때 상이한 그룹핑들(및 전술한 바와 같이 상이한 결과들)을 수신할 수 있다. 많은 그러한 형태의 그룹핑이 가능하다. 일부 예들에서, 설명된 바와 같이, 그룹핑들 또는 모듈들은 주관심사 용어들 또는 개념들과 맥락 용어들 간의 관계의 강도에 의해 형성될 수 있다. 이러한 양태들은 도 2와 관련하여 설명되었다.
도 4는 설명되는 맥락적 통찰 서비스의 일부 구현들에서 사용되는 컴퓨팅 장치 또는 시스템의 컴포넌트들을 예시하는 블록도를 도시한다. 예를 들어, 맥락적 통찰 서비스(110)를 실행하도록 동작하는 임의의 컴퓨팅 장치 또는 환경 내의 다른 장치들 간의 상호작용을 용이하게 하는 중간 장치들은 하나 이상의 컴퓨팅 장치를 자체적으로 포함할 수 있는 시스템(400)과 관련하여 설명된 바와 같이 각각 구현될 수 있다. 시스템(400)은 하나 이상의 블레이드 서버 장치, 독립 서버 장치, 개인용 컴퓨터, 라우터, 허브, 스위치, 브리지, 방화벽 장치, 침입 검출 장치, 메인프레임 컴퓨터, 네트워크 부착 저장 장치, 및 다른 타입의 컴퓨팅 장치를 포함할 수 있다. 하드웨어는 대칭 다중 처리(SMP) 아키텍처 또는 불균일 메모리 액세스(NUMA) 아키텍처와 같은 임의의 적절한 컴퓨터 아키텍처들에 따라 구성될 수 있다.
시스템(400)은 중앙 처리 유닛(CPU) 또는 마이크로프로세서와 같은 처리 장치를 포함할 수 있는 처리 시스템(401), 및 저장 시스템(403)으로부터 소프트웨어(402)를 회수하여 실행하는 다른 회로를 포함할 수 있다. 처리 시스템(401)은 단일 처리 장치 내에 구현될 수 있지만, 프로그램 명령어들의 실행에서 협력하는 다수의 처리 장치 또는 서브시스템에 걸쳐 분산될 수도 있다.
처리 시스템(401)의 예는 범용 중앙 처리 유닛, 주문형 프로세서 및 논리 장치는 물론, 임의의 다른 타입의 처리 장치, 이들의 조합들 또는 변형들을 포함한다. 하나 이상의 처리 장치는 멀티프로세서 또는 멀티코어 프로세서를 포함할 수 있고, 축소 명령어 세트 컴퓨팅(RISC) 명령어 세트, 복합 명령어 세트 컴퓨팅(CISC) 명령어 세트 또는 이들의 조합을 포함하지만 이에 한정되지 않는 하나 이상의 적절한 명령어 세트에 따라 동작할 수 있다. 소정 실시예들에서, 하나 이상의 디지털 신호 프로세서(DSP)가 범용 CPU 대신에 또는 그에 더하여 시스템의 컴퓨터 하드웨어의 일부로서 포함될 수 있다.
저장 시스템(403)은 처리 시스템(401)에 의해 판독될 수 있고, (스마트 선택(131), 맥락 분석(132), 질의 형성(133) 및 결과 후처리(134)와 같은) 맥락적 통찰 컴포넌트들(404)을 포함하는 소프트웨어(402)를 저장할 수 있는 임의의 컴퓨터 판독 가능 저장 매체를 포함할 수 있다. 저장 시스템(403)은 컴퓨터 판독 가능 명령어, 데이터 구조, 프로그램 모듈 또는 다른 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현되는 휘발성 및 비휘발성, 이동식 및 비이동식 매체를 포함할 수 있다.
저장 매체의 예는 랜덤 액세스 메모리(RAM), 판독 전용 메모리(ROM), 자기 디스크, 광 디스크, CD, DVD, 플래시 메모리, 반도체 메모리, 상변화 메모리 또는 임의의 다른 적절한 저장 매체를 포함한다. 소정 구현들은 가상 메모리 및 비가상 메모리 중 하나 또는 양자를 포함할 수 있다. 어떠한 경우에도 저장 매체는 전파 신호로 구성되지 않는다. 저장 매체에 더하여, 일부 구현들에서, 저장 시스템(403)은 소프트웨어(402)를 내부적으로 또는 외부적으로 통신할 수 있는 통신 매체도 포함할 수 있다.
저장 시스템(403)은 단일 저장 장치로서 구현될 수 있지만, 서로 함께 위치하거나 분산되는 다수의 저장 장치 또는 서브시스템에 걸쳐 구현될 수도 있다. 저장 시스템(403)은 처리 시스템(401)과 통신할 수 있는 제어기와 같은 추가 요소들을 포함할 수 있다.
소프트웨어(402)는 프로그램 명령어들 내에 구현될 수 있으며, 많은 기능 가운데 특히, 일반적으로 시스템(400) 또는 구체적으로 처리 시스템(401)에 의해 실행될 때, 시스템(400) 또는 처리 시스템(401)이 맥락적 통찰을 가능하게 하기 위해 본 명세서에서 설명되는 바와 같이 동작하게 할 수 있다. 소프트웨어(402)는 맥락적 통찰 서비스를 구현하는 프로그램 명령어들(404)을 제공할 수 있다. 소프트웨어(402)는 시스템(400) 상에서 맥락적 통찰 서비스에 의해 수행되는 바와 같은 본 명세서에서 설명되는 방법들을 기계 판독 가능 처리 명령어들(404) 내에 구현하는 컴포넌트들, 프로그램들, 에이전트들 또는 계층들을 구현할 수 있다.
소프트웨어(402)는 운영 체제 소프트웨어 또는 다른 애플리케이션 소프트웨어와 같은 추가적인 프로세스들, 프로그램들 또는 컴포넌트들도 포함할 수 있다. 소프트웨어(402)는 처리 시스템(401)에 의해 실행될 수 있는 펌웨어 또는 소정의 다른 형태의 기계 판독 가능 처리 명령어들도 포함할 수 있다.
일반적으로, 소프트웨어(402)는 처리 시스템(401) 내에 로딩되고 실행될 때 시스템(400)을 전반적으로 범용 컴퓨팅 시스템으로부터 맥락적 통찰을 용이하게 하도록 맞춤화된 특수 목적 컴퓨팅 시스템으로 변환할 수 있다. 사실상, 소프트웨어(402)를 저장 시스템(403) 상에 인코딩하는 것은 저장 시스템(403)의 물리 구조를 변환할 수 있다. 물리 구조의 구체적인 변환은 본 설명의 상이한 구현들에서의 다양한 팩터들에 의존할 수 있다. 그러한 팩터들의 예는 저장 시스템(403)의 저장 매체를 구현하는 데 사용되는 기술 및 컴퓨터 저장 매체가 주요 또는 보조 저장소로서 특성화되는지를 포함할 수 있지만 이에 한정되지 않는다.
시스템(400)은 소프트웨어(402)가 스테이지화될 수 있고, 소프트웨어(402)가 전개 및 실행 또는 추가적인 배포를 위해 또 다른 컴퓨팅 시스템으로 배포, 운반, 다운로드 또는 달리 제공될 수 있는 임의의 컴퓨팅 시스템을 나타낼 수 있다.
시스템(400)이 다수의 컴퓨팅 장치를 포함하는 실시예들에서, 컴퓨팅 장치들 간의 통신을 용이하게 하기 위해 하나 이상의 통신 네트워크가 사용될 수 있다. 예를 들어, 하나 이상의 통신 네트워크는 컴퓨팅 장치들 간의 통신을 용이하게 하는 로컬, 광역 또는 애드혹 네트워크를 포함할 수 있다. 하나 이상의 직접 통신 링크가 컴퓨팅 장치들 사이에 포함될 수 있다. 게다가, 일부 예들에서, 컴퓨팅 장치들은 지리적으로 분산된 위치들에 설치될 수 있다. 다른 예들에서, 다수의 컴퓨팅 장치가 서버 팜 또는 사무실과 같은 단일 지리 위치에 설치될 수 있다.
통신 네트워크 또는 네트워크들의 집합 또는 공기를 통해 시스템(400)과 다른 컴퓨팅 시스템들(도시되지 않음) 사이의 통신을 허용하는 통신 접속들 또는 장치들을 제공하는 통신 인터페이스(405)가 포함될 수 있다. 시스템간 통신을 함께 가능하게 하는 접속들 및 장치들의 예들은 네트워크 인터페이스 카드, 안테나, 전력 증폭기, RF 회로, 송수신기 및 다른 통신 회로를 포함할 수 있다. 접속들 및 장치들은 금속, 유리, 공기 또는 임의의 다른 적절한 통신 매체와 같은 통신 매체를 통해 통신하여, 다른 컴퓨팅 시스템들 또는 시스템들의 네트워크들과 통신을 교환할 수 있다. 전술한 통신 매체, 네트워크, 접속 및 장치는 잘 알려져 있으며, 여기서는 상세히 설명될 필요가 없다.
시스템(400)의 많은 요소가 시스템-온-칩(SoC) 장치 내에 포함될 수 있다는 점에 유의해야 한다. 이러한 요소들은 처리 시스템(401), 통신 인터페이스(405) 및 심지어는 저장 시스템(403) 및 소프트웨어(402)의 요소들을 포함할 수 있지만 이에 한정되지 않는다.
도 5는 맥락적 통찰을 위한 기술들의 일 구현이 실행될 수 있는 예시적인 시스템 아키텍처를 나타낸다. 도 5에 도시된 예에서, 텍스트 콘텐츠와 상호작용하기 위한 애플리케이션(501)이 랩탑, 데스크탑, 태블릿, 판독기, 이동 전화 등과 같은 컴퓨팅 시스템들이거나 이들을 포함할 수 있는 클라이언트 장치(500) 상에 구현될 수 있다. 맥락적 통찰 컴포넌트(502)가 맥락적 통찰 서비스(511)와의 통신을 용이하게 하기 위해 애플리케이션(502)과 통합될 수 있다.
맥락적 통찰 서비스(511)는 시스템(400)의 인스턴스일 수 있는 서버(510) 상의 소프트웨어 또는 하드웨어(또는 이들의 조합)로서 구현될 수 있다. 맥락적 통찰 서비스(511)의 특징들 및 기능들은 API를 통해 장치(500), 애플리케이션(501) 또는 맥락적 통찰 컴포넌트(502)에 의해 호출될 수 있다.
맥락적 통찰 서비스(511)는 검색 질의들을 개시하고 검색 서비스(521)로 전송할 수 있다. 검색 서비스(521)는 자체적으로 시스템(400) 또는 그의 양태들과 관련하여 설명된 것과 유사한 시스템의 인스턴스일 수 있는 서버(520) 상에 구현될 수 있다. 많은 검색 서비스가 주어진 환경에서의 질의를 위해 이용 가능할 수 있다.
환경 내의 컴포넌트들 간의 데이터의 통신 및 교환은 네트워크(550)를 통해 발생할 수 있다. 네트워크(550)는 셀룰러 네트워크(예를 들어, 무선 전화), 점대점 다이얼업 접속, 위성 네트워크, 인터넷, 근거리 네트워크(LAN), 광역 네트워크(WAN), 와이파이 네트워크, 애드혹 네트워크, 인트라넷, 엑스트라넷 또는 이들의 조합을 포함할 수 있지만 이에 한정되지 않는다. 네트워크는 인터넷과 같은 공개 네트워크들 및/또는 보안 기업 비공개 네트워크와 같은 비공개 네트워크들을 포함하는 하나 이상의 접속된 네트워크(예를 들어, 멀티-네트워크 환경)를 포함할 수 있다.
대안으로서 또는 추가로, 본 명세서에서 설명되는 기능, 방법들 및 프로세스들은 하나 이상의 하드웨어 모듈(또는 논리 컴포넌트)에 의해 적어도 부분적으로 구현될 수 있다. 예를 들어, 하드웨어 모듈들은 주문형 집적 회로(ASIC) 칩, 필드 프로그래머블 게이트 어레이(FPGA), 시스템-온-칩(SoC) 시스템, 복합 프로그래밍 가능 논리 장치(CPLD) 및 현재 알려졌거나 나중에 개발될 다른 프로그래밍 가능 논리 장치를 포함할 수 있지만 이에 한정되지 않는다. 하드웨어 모듈들이 활성화될 때, 하드웨어 모듈들은 하드웨어 모듈들 내에 포함된 기능, 방법들 및 프로세스들을 수행한다.
본 발명의 소정 양태들은 아래의 비한정적인 실시예들을 제공한다.
예 1. 맥락적 통찰을 용이하게 하기 위한 방법으로서, 적어도 소정의 텍스트에 관한 맥락적 통찰에 대한 요청을 수신하는 단계; 상기 요청과 함께 제공된 정보로부터 상기 맥락적 통찰에 대한 주관심사를 결정하는 단계; 상기 요청과 함께 제공된 맥락으로부터 맥락 분석을 수행하여 질의 용어들을 결정하는 단계; 상기 질의 용어들 중 하나 이상을 이용하여 적어도 하나의 질의를 형성하는 단계; 상기 적어도 하나의 질의를 적어도 하나의 검색 서비스로 전송함으로써 검색을 개시하는 단계; 상기 검색의 결과들을 수신하는 단계; 및 상기 맥락의 적어도 일부에 따라 상기 결과들을 체계화 및 필터링하는 단계를 포함하는 방법.
예 2. 예 1에 있어서, or, not 및 boost와 같은 연산자들; 및 사용자의 위치, 시각 및 클라이언트 장치와 같은 메타데이터를 포함하는 질의 아이템들도 상기 요청과 함께 제공된 상기 정보로부터 결정되고, 상기 적어도 하나의 질의의 상기 형성은 상기 질의 아이템들 중 하나 이상을 더 이용하는 방법.
예 3. 예 1-2 중 어느 한 예에 있어서, 맥락적 통찰에 대한 상기 요청과 함께 제공된 상기 정보는 텍스트의 선택의 지시를 포함하는 방법.
예 4. 예 1-2 중 어느 한 예에 있어서, 맥락적 통찰에 대한 상기 요청과 함께 제공된 상기 정보는 영역의 선택의 지시를 포함하는 방법.
예 5. 예 1-4 중 어느 한 예에 있어서, 상기 지시로부터 상기 주관심사를 결정하는 단계는 상기 요청과 함께 제공된 상기 정보로부터의 최초 지시된 텍스트 섹션을 상기 요청과 함께 제공된 상기 맥락으로부터 선택된 추가 텍스트를 이용하여 수정하여 하나 이상의 후보 주관심사를 형성하고; 상기 하나 이상의 후보 주관심사의 각각에 대한 확률 또는 점수를 결정하고; 최고 확률 또는 점수를 갖는 상기 후보 주관심사 중 적어도 하나를 선택함으로써 상기 주관심사를 예측하는 단계를 포함하는 방법.
예 6. 예 1-5 중 어느 한 예에 있어서, 상기 맥락은 상기 지시 주변의 콘텐츠, 장치 메타데이터, 애플리케이션 메타데이터 및 사용자 메타데이터 중 하나 이상을 포함하는 방법.
예 7. 예 1-6 중 어느 한 예에 있어서, 적어도 하나의 질의를 형성하는 단계는 상기 주관심사 내의 모호성의 레벨 및 사용자 선호 중 하나 이상으로부터 동작 모드를 결정하는 단계; 및 상기 동작 모드에 응답하여 상기 질의를 수정하는 단계를 더 포함하는 방법.
예 8. 예 1-7 중 어느 한 예에 있어서, 적어도 하나의 질의를 형성하는 단계는 사용자 메타데이터에 응답하여 상기 질의를 수정하는 단계를 더 포함하는 방법.
예 9. 예 1-8 중 어느 한 예에 있어서, 상기 결과들을 체계화 및 필터링하는 단계는 상기 결과들 내의 패턴을 검출하는 단계 - 상기 패턴은 상기 결과들의 순위들 중 하나 이상의 순위의 유사성의 레벨, 상기 결과들의 콘텐츠, 및 상기 결과들의 원인에 기초함 -; 및 상기 패턴을 이용하여 결과들을 그룹핑, 재분류 또는 제거하는 단계를 더 포함하는 방법.
예 10. 예 1-9 중 어느 한 예에 있어서, 질의 용어들을 결정하는 단계는 상기 요청의 소스인 애플리케이션에서 소비 또는 생성되는 파일의 콘텐츠; 상기 애플리케이션의 애플리케이션 특성들; 상기 애플리케이션이 실행되는 장치의 장치 특성들; 또는 사용자의 식별자, 위치, 환경, 언어, 프라이버시 설정들, 검색 이력, 관심들 및/또는 컴퓨팅 자원들에 대한 액세스와 관련된 메타데이터 중 하나 이상의 맥락 분석을 수행하는 단계를 포함하는 방법.
예 11. 예 10에 있어서, 상기 파일의 상기 콘텐츠의 맥락 분석을 수행하는 단계는 상기 애플리케이션에서 소비 또는 생성되는 상기 파일의 모든 콘텐츠의 맥락 분석을 수행하거나, 상기 파일의 콘텐츠의 특정 양의 맥락 분석을 수행하는 방법.
예 12. 예 10 또는 11에 있어서, 상기 콘텐츠의 맥락 분석을 수행하는 단계는 주관심사 용어 주변의 콘텐츠로부터 후보 맥락 용어들을 선택하는 단계, 및 상기 주관심사 용어와 관련하여 상기 후보 맥락 용어들을 분석하는 단계를 더 포함하는 방법.
예 13. 예 12에 있어서, 상기 질의 용어들을 결정하는 단계는 서로 독립적으로 그러나 상기 주관심사 용어와 관련하여 상기 후보 맥락 용어들을 채점하는 단계; 및 후보 맥락 용어 및 주관심사 용어의 각각의 쌍에 대한 상기 점수들을 순위화하는 단계를 더 포함하는 방법.
예 14. 예 12-13 중 어느 한 예에 있어서, 상기 질의 용어들을 결정하는 단계는 검색 엔진들의 질의 로그들을 이용하여 상기 주관심사 용어에 대한 후보 맥락 용어의 관련성을 분석하는 단계를 더 포함하는 방법.
예 15. 예 12-14 중 어느 한 예에 있어서, n-그램 서비스로부터 상기 후보 맥락 용어들에 대한 강도 관계 값을 요청하는 단계를 포함하는 방법.
예 16. 예 12-15 중 어느 한 예에 있어서, 상기 질의 용어들을 결정하는 단계는 후보 맥락 용어가 명명된 엔티티인지를 결정하는 단계, 및 상기 후보 맥락 용어가 상기 명명된 엔티티인지의 여부에 따라 상기 후보 맥락 용어의 관련성을 조정하는 단계를 더 포함하는 방법.
예 17. 예 12-16 중 어느 한 예에 있어서, 상기 질의 용어들을 결정하는 단계는 상기 후보 맥락 용어와 상기 주관심사 용어 사이의 단어들 또는 용어들의 수인 거리 값을 결정하는 단계를 더 포함하는 방법.
예 18. 예 12-17 중 어느 한 예에 있어서, 상기 주관심사 용어에 대한 후보 맥락 용어의 상기 관련성은 온라인 지식 베이스로부터 이용 가능한 앵커 텍스트를 이용하여 결정되는 방법.
예 19. 예 1-18 중 어느 한 예의 방법을 수행하기 위한 명령어들을 저장한 컴퓨터 판독 가능 저장 매체.
예 20. 하나 이상의 컴퓨터 판독 가능 저장 매체; 상기 하나 이상의 컴퓨터 판독 가능 저장 매체 중 적어도 하나 상에 저장된 프로그램 명령어들을 포함하고, 상기 프로그램 명령어들은 처리 시스템에 의해 실행될 때 상기 처리 시스템으로 하여금, 적어도 소정의 텍스트에 관한 맥락적 통찰에 대한 요청을 수신하는 것에 응답하여: 상기 요청과 함께 제공된 정보로부터 주관심사를 결정하고; 상기 요청과 함께 제공된 맥락으로부터 맥락 분석을 수행하여, 하나 이상의 맥락 용어를 결정하고; 상기 주관심사 및 상기 맥락 용어들 중 하나 이상을 이용하여 적어도 하나의 질의를 형성하고; 상기 적어도 하나의 질의를 적어도 하나의 검색 서비스로 전송하여 검색을 개시하고; 상기 적어도 하나의 검색 서비스로부터 하나 이상의 결과를 수신하는 것에 응답하여, 상기 맥락의 적어도 일부에 따라 상기 결과들을 체계화 및 필터링하게 하는 서비스.
예 21. 예 20에 있어서, 상기 처리 시스템으로 하여금 상기 지시로부터 상기 주관심사를 결정하게 하는 상기 프로그램 명령어들은 상기 처리 시스템으로 하여금, 상기 요청과 함께 제공된 상기 정보로부터의 최초 지시된 텍스트 섹션을 상기 요청과 함께 제공된 상기 맥락으로부터 선택된 추가 텍스트를 이용하여 수정하여 하나 이상의 후보 주관심사를 형성하고; 상기 하나 이상의 후보 주관심사의 각각에 대한 확률 또는 점수를 결정하고; 최고 확률 또는 점수를 갖는 상기 후보 주관심사 중 적어도 하나를 선택하게 하는 서비스.
예 22. 예 20-21 중 어느 한 예에 있어서, 상기 맥락은 상기 지시 주변의 콘텐츠, 장치 메타데이터, 애플리케이션 메타데이터 및 사용자 메타데이터 중 하나 이상을 포함하는 서비스.
예 23. 예 20-22 중 어느 한 예에 있어서, 상기 처리 시스템으로 하여금 상기 적어도 하나의 질의를 형성하게 하는 상기 프로그램 명령어들은 상기 처리 시스템으로 하여금, 상기 주관심사 내의 모호성의 레벨 및 사용자 선호 중 하나 이상으로부터 동작 모드를 결정하고, 상기 동작 모드에 응답하여 상기 질의를 수정하게 하는 서비스.
예 24. 예 20-23 중 어느 한 예에 있어서, 상기 처리 시스템으로 하여금 상기 적어도 하나의 질의를 형성하게 하는 상기 프로그램 명령어들은 상기 처리 시스템으로 하여금 사용자 메타데이터에 응답하여 상기 질의를 수정하게 하는 서비스.
예 25. 예 20-24 중 어느 한 예에 있어서, 상기 처리 시스템으로 하여금 상기 결과들을 체계화 및 필터링하게 하는 상기 프로그램 명령어들은 상기 처리 시스템으로 하여금, 상기 결과들 내의 패턴을 검출하고 - 상기 패턴은 상기 결과들의 순위들 중 하나 이상의 순위의 유사성의 레벨, 상기 결과들의 콘텐츠, 및 상기 결과들의 원인에 기초함 -; 상기 패턴을 이용하여 결과들을 그룹핑, 재분류 또는 제거하게 하는 서비스.
예 26. 예 20-25 중 한 예에 있어서, 상기 프로그램 명령어들은 상기 처리 시스템으로 하여금 예 1-19 중 어느 한 예의 방법의 단계들을 수행하게 하는 서비스.
예 27. 처리 시스템; 하나 이상의 컴퓨터 판독 가능 저장 매체; 상기 하나 이상의 저장 매체 중 적어도 하나 상에 저장된 프로그램 명령어들을 포함하고, 상기 프로그램 명령어들은 처리 시스템에 의해 실행될 때 상기 처리 시스템으로 하여금, 적어도 소정의 텍스트에 관한 맥락적 통찰에 대한 요청과 함께 제공된 정보로부터 상기 맥락적 통찰에 대한 주관심사를 결정하고; 상기 요청과 함께 제공된 맥락의 맥락 분석을 수행하여 질의 용어들을 결정하고; 상기 질의 용어들 중 하나 이상을 이용하여 적어도 하나의 질의를 형성하고; 상기 적어도 하나의 질의를 적어도 하나의 검색 서비스로 전송하고; 상기 맥락의 적어도 일부에 따라 상기 적어도 하나의 검색 서비스로부터 수신된 결과들을 체계화 및 필터링하고, 상기 체계화 및 필터링된 결과들을 상기 요청의 소스에 제공하게 하는 시스템.
예 28. 예 27에 있어서, 상기 처리 시스템으로 하여금 상기 지시로부터 상기 주관심사를 결정하게 하는 상기 프로그램 명령어들은 상기 처리 시스템으로 하여금, 상기 요청과 함께 제공된 상기 정보로부터의 최초 지시된 텍스트 섹션을 상기 요청과 함께 제공된 상기 맥락으로부터 선택된 추가 텍스트를 이용하여 수정하여 하나 이상의 후보 주관심사를 형성하고; 상기 하나 이상의 후보 주관심사의 각각에 대한 확률 또는 점수를 결정하고; 최고 확률 또는 점수를 갖는 상기 후보 주관심사 중 적어도 하나를 선택하게 하는 시스템.
예 29. 예 27-28 중 어느 한 예에 있어서, 상기 요청 맥락은 상기 지시 주변의 콘텐츠, 장치 메타데이터, 애플리케이션 메타데이터 및 사용자 메타데이터 중 하나 이상을 포함하는 시스템.
예 30. 예 27-29 중 어느 한 예에 있어서, 상기 처리 시스템으로 하여금 상기 적어도 하나의 질의를 형성하게 하는 상기 프로그램 명령어들은 상기 처리 시스템으로 하여금, 상기 주관심사 내의 모호성의 레벨 및 사용자 선호 중 하나 이상으로부터 동작 모드를 결정하고, 상기 동작 모드에 응답하여 상기 질의를 수정하게 하는 시스템.
예 31. 예 27-30 중 어느 한 예에 있어서, 상기 처리 시스템으로 하여금 상기 적어도 하나의 질의를 형성하게 하는 상기 프로그램 명령어들은 상기 처리 시스템으로 하여금 사용자 메타데이터에 응답하여 상기 질의를 수정하게 하는 시스템.
예 32. 예 27-31 중 어느 한 예에 있어서, 상기 처리 시스템으로 하여금 상기 맥락의 적어도 일부에 따라 상기 적어도 하나의 검색 서비스로부터 수신된 결과들을 체계화 및 필터링하게 하는 상기 프로그램 명령어들은 상기 처리 시스템으로 하여금, 상기 결과들 내의 패턴을 검출하고 - 상기 패턴은 상기 결과들의 순위들 중 하나 이상의 순위의 유사성의 레벨, 상기 결과들의 콘텐츠, 및 상기 결과들의 원인에 기초함 -; 상기 패턴을 이용하여 결과들을 그룹핑, 재분류 또는 제거하게 하는 시스템.
예 33. 예 27-32 중 한 예에 있어서, 상기 프로그램 명령어들은 상기 처리 시스템으로 하여금 예 1-19 중 어느 한 예의 방법의 단계들을 수행하게 하는 시스템.
예 34. 적어도 소정의 텍스트에 관한 맥락적 통찰에 대한 요청을 수신하기 위한 수단; 상기 요청과 함께 제공된 정보로부터 상기 맥락적 통찰에 대한 주관심사를 결정하기 위한 수단; 상기 요청과 함께 제공된 맥락으로부터 맥락 분석을 수행하여 질의 용어들을 결정하기 위한 수단; 상기 질의 용어들 중 하나 이상을 이용하여 적어도 하나의 질의를 형성하기 위한 수단; 상기 적어도 하나의 질의를 적어도 하나의 검색 서비스로 전송함으로써 검색을 개시하기 위한 수단; 상기 검색의 결과들을 수신하기 위한 수단; 및 상기 맥락의 적어도 일부에 따라 상기 결과들을 체계화 및 필터링하기 위한 수단을 포함하는 시스템.
본 명세서에서 설명되는 예들 및 실시예들은 예시의 목적을 위한 것일 뿐이며, 그를 고려하는 다양한 수정들 및 변경들이 이 분야의 기술자들에게 암시될 것이며, 본원의 사상 및 범위 내에 포함되어야 한다는 것을 이해해야 한다.
본 발명은 구조적 특징들 및/또는 동작들에 고유한 언어로 설명되었지만, 첨부된 청구항들에서 정의되는 발명은 전술한 특정 특징들 또는 동작들로 반드시 한정되지는 않는다는 것을 이해해야 한다. 오히려, 전술한 특정 특징들 및 동작들은 청구항들을 구현하는 예들로서 개시되며, 다른 등가적인 특징들 및 동작들은 청구항들의 범위 내에 있는 것을 의도한다.

Claims (15)

  1. 맥락적 통찰(contextual insights)을 용이하게 하기 위한 방법으로서,
    적어도 일부 텍스트에 관한 맥락적 통찰에 대한 요청을 수신하는 단계와,
    상기 요청과 함께 제공된 정보로부터 상기 맥락적 통찰에 대한 주관심사(focus of attention)를 결정하는 단계와,
    상기 요청과 함께 제공된 맥락(context)으로부터 맥락 분석을 수행하여 질의 용어(query terms)를 결정하는 단계와,
    상기 질의 용어 중 하나 이상을 이용하여 적어도 하나의 질의를 형성하는 단계와,
    상기 적어도 하나의 질의를 적어도 하나의 검색 서비스로 전송함으로써 검색을 개시하는 단계와,
    상기 검색의 결과를 수신하는 단계와,
    상기 맥락의 적어도 일부에 따라 상기 결과를 체계화(organizing) 및 필터링하는 단계를 포함하는
    방법.
  2. 제1항에 있어서,
    상기 맥락적 통찰에 대한 요청과 함께 제공된 상기 정보는 텍스트의 선택의 지시 또는 영역의 선택의 지시를 포함하는
    방법.
  3. 제1항에 있어서,
    상기 요청과 함께 제공된 상기 정보로부터 상기 주관심사를 결정하는 단계는,
    상기 요청과 함께 제공된 상기 정보로부터의 최초 지시된 텍스트 섹션을 상기 요청과 함께 제공된 상기 맥락으로부터 선택된 추가 텍스트를 이용하여 수정하여 하나 이상의 후보 주관심사(candidate foci of attention)를 형성하고,
    상기 하나 이상의 후보 주관심사의 각각에 대한 확률 또는 점수를 결정하고,
    최고 확률 또는 점수를 갖는 상기 후보 주관심사 중 적어도 하나를 선택
    함으로써 상기 주관심사를 예측하는 단계를 포함하는
    방법.
  4. 제1항에 있어서,
    상기 맥락은 상기 지시 주변의 콘텐츠, 장치 메타데이터, 애플리케이션 메타데이터 및 사용자 메타데이터 중 하나 이상을 포함하는
    방법.
  5. 제1항에 있어서,
    상기 콘텐츠의 맥락 분석을 수행하는 것은 주관심사 용어(a focus-of-attention term) 주변의 콘텐츠로부터 후보 맥락 용어를 선택하고 상기 후보 포커스 용어와 관련하여 상기 후보 맥락 용어를 분석하는 것을 더 포함하고,
    상기 질의 용어를 결정하는 단계는 서로 독립적으로 그러나 상기 주관심사 용어와 관련하여 상기 후보 맥락 용어를 채점하는(scoring) 단계, 및 후보 맥락 용어 및 주관심사 용어의 각각의 쌍에 대한 점수를 순위화(ranking)하는 단계를 포함하는
    방법.
  6. 제1항에 있어서,
    상기 적어도 하나의 질의를 형성하는 단계는,
    상기 주관심사 내의 모호성(ambiguity)의 레벨 및 사용자 선호 중 하나 이상으로부터 동작 모드를 결정하는 단계와,
    상기 동작 모드에 응답하여 상기 질의를 수정하는 단계를 더 포함하는
    방법.
  7. 제1항에 있어서,
    상기 적어도 하나의 질의를 형성하는 단계는 사용자 메타데이터에 응답하여 상기 질의를 수정하는 단계를 더 포함하는
    방법.
  8. 제1항에 있어서,
    상기 결과를 체계화 및 필터링하는 단계는,
    상기 결과 내의 패턴을 검출하는 단계 - 상기 패턴은 상기 결과의 순위 중 하나 이상의 순위의 유사성의 레벨, 상기 결과의 콘텐츠, 및 상기 결과의 원인에 기초함 - 와,
    상기 패턴을 이용하여 결과를 그룹핑, 재분류 또는 제거하는 단계를 더 포함하는
    방법.
  9. 하나 이상의 컴퓨터 판독 가능 저장 매체와,
    상기 하나 이상의 컴퓨터 판독 가능 저장 매체 중 적어도 하나 상에 저장된 프로그램 명령어를 포함하고,
    상기 프로그램 명령어는 처리 시스템에 의해 실행될 때 상기 처리 시스템으로 하여금,
    적어도 소정의 텍스트에 관한 맥락적 통찰에 대한 요청을 수신하는 것에 응답하여,
    상기 요청과 함께 제공된 정보로부터 주관심사를 결정하고,
    상기 요청과 함께 제공된 맥락으로부터 맥락 분석을 수행하여 하나 이상의 맥락 용어를 결정하고,
    상기 주관심사 및 상기 맥락 용어 중 하나 이상을 이용하여 적어도 하나의 질의를 형성하고,
    상기 적어도 하나의 질의를 적어도 하나의 검색 서비스로 전송하여 검색을 개시하고,
    상기 적어도 하나의 검색 서비스로부터 하나 이상의 결과를 수신하는 것에 응답하여, 상기 맥락의 적어도 일부에 따라 상기 결과를 체계화 및 필터링하게 하는
    서비스.
  10. 제9항에 있어서,
    상기 처리 시스템으로 하여금 상기 주관심사를 결정하게 하는 상기 프로그램 명령어는 상기 처리 시스템으로 하여금,
    상기 요청과 함께 제공된 상기 정보로부터의 최초 지시된 텍스트 섹션을 상기 요청과 함께 제공된 상기 맥락으로부터 선택된 추가 텍스트를 이용하여 수정하여 하나 이상의 후보 주관심사를 형성하고,
    상기 하나 이상의 후보 주관심사의 각각에 대한 확률 또는 점수를 결정하고,
    최고 확률 또는 점수를 갖는 상기 후보 주관심사 중 적어도 하나를 선택하게 하는
    서비스.
  11. 제9항에 있어서,
    상기 처리 시스템으로 하여금 상기 적어도 하나의 질의를 형성하게 하는 상기 프로그램 명령어는 상기 처리 시스템으로 하여금,
    상기 주관심사 내의 모호성의 레벨 및 사용자 선호 중 하나 이상으로부터 동작 모드를 결정하고,
    상기 동작 모드에 응답하여 상기 질의를 수정하게 하는
    서비스.
  12. 제9항에 있어서,
    상기 처리 시스템으로 하여금 상기 요청과 함께 제공된 상기 맥락으로부터 상기 맥락 분석을 수행하여 상기 하나 이상의 맥락 용어를 결정하게 하는 상기 프로그램 명령어는 상기 처리 시스템이,
    상기 요청의 소스인 애플리케이션에서 소비 또는 생성되는 파일의 콘텐츠,
    상기 애플리케이션의 애플리케이션 특성,
    상기 애플리케이션이 실행되는 장치의 장치 특성, 또는
    사용자의 식별자, 위치, 환경, 언어, 프라이버시 설정, 검색 이력, 관심 및/또는 컴퓨팅 자원에 대한 액세스와 관련된 메타데이터
    중 하나 이상의 맥락 분석을 수행하게 하는
    서비스.
  13. 처리 시스템과,
    하나 이상의 컴퓨터 판독 가능 저장 매체와,
    상기 하나 이상의 저장 매체 중 적어도 하나 상에 저장된 프로그램 명령어를 포함하고,
    상기 프로그램 명령어는 상기 처리 시스템에 의해 실행될 때 상기 처리 시스템으로 하여금,
    적어도 소정의 텍스트에 관한 맥락적 통찰에 대한 요청과 함께 제공된 정보로부터 상기 맥락적 통찰에 대한 주관심사를 결정하고,
    상기 요청과 함께 제공된 맥락의 맥락 분석을 수행하여 질의 용어를 결정하고,
    상기 질의 용어 중 하나 이상을 이용하여 적어도 하나의 질의를 형성하고,
    상기 적어도 하나의 질의를 적어도 하나의 검색 서비스로 전송하고,
    상기 맥락의 적어도 일부에 따라 상기 적어도 하나의 검색 서비스로부터 수신된 결과를 체계화 및 필터링하고,
    상기 체계화 및 필터링된 결과를 상기 요청의 소스에 제공하게 하는
    시스템.
  14. 제13항에 있어서,
    상기 처리 시스템이 상기 주관심사를 결정하게 하는 상기 프로그램 명령어는 상기 처리 시스템으로 하여금,
    상기 요청과 함께 제공된 상기 정보로부터의 최초 지시된 텍스트 섹션을 상기 요청과 함께 제공된 상기 맥락으로부터 선택된 추가 텍스트를 이용하여 수정하여 하나 이상의 후보 주관심사를 형성하고,
    상기 하나 이상의 후보 주관심사의 각각에 대한 확률 또는 점수를 결정하고,
    최고 확률 또는 점수를 갖는 상기 후보 주관심사 중 적어도 하나를 선택하게 하는
    시스템.
  15. 제13항에 있어서,
    상기 처리 시스템이 상기 맥락의 적어도 일부에 따라 상기 적어도 하나의 검색 서비스로부터 수신된 결과를 체계화 및 필터링하게 하는 상기 프로그램 명령어는 상기 처리 시스템으로 하여금,
    상기 결과 내의 패턴을 검출하고 - 상기 패턴은 상기 결과의 순위 중 하나 이상의 순위의 유사성의 레벨, 상기 결과의 콘텐츠, 및 상기 결과의 원인에 기초함 -,
    상기 패턴을 이용하여 결과를 그룹핑, 재분류 또는 제거하게 하는
    시스템.
KR1020167009112A 2013-10-07 2014-10-07 맥락적 통찰 및 탐구 기법 KR20160067202A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201361887954P 2013-10-07 2013-10-07
US61/887,954 2013-10-07
PCT/US2014/059451 WO2015054218A1 (en) 2013-10-07 2014-10-07 Contextual insights and exploration

Publications (1)

Publication Number Publication Date
KR20160067202A true KR20160067202A (ko) 2016-06-13

Family

ID=51790877

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020167009112A KR20160067202A (ko) 2013-10-07 2014-10-07 맥락적 통찰 및 탐구 기법

Country Status (6)

Country Link
US (2) US9436918B2 (ko)
EP (2) EP3055789A1 (ko)
KR (1) KR20160067202A (ko)
CN (2) CN105637507B (ko)
TW (1) TW201519075A (ko)
WO (2) WO2015053993A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180036460A (ko) * 2016-09-30 2018-04-09 주식회사 솔트룩스 문서 작성을 위한 능동적 지식 추천 시스템 및 방법

Families Citing this family (247)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8677377B2 (en) 2005-09-08 2014-03-18 Apple Inc. Method and apparatus for building an intelligent automated assistant
US11003706B2 (en) 2005-10-26 2021-05-11 Cortica Ltd System and methods for determining access permissions on personalized clusters of multimedia content elements
US11032017B2 (en) 2005-10-26 2021-06-08 Cortica, Ltd. System and method for identifying the context of multimedia content elements
US10372746B2 (en) 2005-10-26 2019-08-06 Cortica, Ltd. System and method for searching applications using multimedia content elements
US10193990B2 (en) * 2005-10-26 2019-01-29 Cortica Ltd. System and method for creating user profiles based on multimedia content
US11604847B2 (en) 2005-10-26 2023-03-14 Cortica Ltd. System and method for overlaying content on a multimedia content element based on user interest
US10585934B2 (en) 2005-10-26 2020-03-10 Cortica Ltd. Method and system for populating a concept database with respect to user identifiers
US9384196B2 (en) 2005-10-26 2016-07-05 Cortica, Ltd. Signature generation for multimedia deep-content-classification by a large-scale matching system and method thereof
US11216498B2 (en) 2005-10-26 2022-01-04 Cortica, Ltd. System and method for generating signatures to three-dimensional multimedia data elements
US10621988B2 (en) 2005-10-26 2020-04-14 Cortica Ltd System and method for speech to text translation using cores of a natural liquid architecture system
US10614626B2 (en) 2005-10-26 2020-04-07 Cortica Ltd. System and method for providing augmented reality challenges
US20160321253A1 (en) 2005-10-26 2016-11-03 Cortica, Ltd. System and method for providing recommendations based on user profiles
US10776585B2 (en) 2005-10-26 2020-09-15 Cortica, Ltd. System and method for recognizing characters in multimedia content
US8818916B2 (en) 2005-10-26 2014-08-26 Cortica, Ltd. System and method for linking multimedia data elements to web pages
US8326775B2 (en) 2005-10-26 2012-12-04 Cortica Ltd. Signature generation for multimedia deep-content-classification by a large-scale matching system and method thereof
US10607355B2 (en) 2005-10-26 2020-03-31 Cortica, Ltd. Method and system for determining the dimensions of an object shown in a multimedia content item
US11403336B2 (en) 2005-10-26 2022-08-02 Cortica Ltd. System and method for removing contextually identical multimedia content elements
US11019161B2 (en) 2005-10-26 2021-05-25 Cortica, Ltd. System and method for profiling users interest based on multimedia content analysis
US10691642B2 (en) 2005-10-26 2020-06-23 Cortica Ltd System and method for enriching a concept database with homogenous concepts
US9646005B2 (en) 2005-10-26 2017-05-09 Cortica, Ltd. System and method for creating a database of multimedia content elements assigned to users
US10742340B2 (en) 2005-10-26 2020-08-11 Cortica Ltd. System and method for identifying the context of multimedia content elements displayed in a web-page and providing contextual filters respective thereto
US10848590B2 (en) 2005-10-26 2020-11-24 Cortica Ltd System and method for determining a contextual insight and providing recommendations based thereon
US10387914B2 (en) 2005-10-26 2019-08-20 Cortica, Ltd. Method for identification of multimedia content elements and adding advertising content respective thereof
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
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
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
US10706373B2 (en) 2011-06-03 2020-07-07 Apple Inc. Performing actions associated with task items that represent tasks to perform
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
US11568331B2 (en) * 2011-09-26 2023-01-31 Open Text Corporation Methods and systems for providing automated predictive analysis
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
JP2014099052A (ja) * 2012-11-14 2014-05-29 International Business Maschines Corporation テキストを編集する装置、データ処理方法およびプログラム
CN113470641B (zh) 2013-02-07 2023-12-15 苹果公司 数字助理的语音触发器
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
WO2014197335A1 (en) 2013-06-08 2014-12-11 Apple Inc. Interpreting and acting upon commands that involve sharing information with remote devices
US10176167B2 (en) 2013-06-09 2019-01-08 Apple Inc. System and method for inferring user intent from speech inputs
KR101772152B1 (ko) 2013-06-09 2017-08-28 애플 인크. 디지털 어시스턴트의 둘 이상의 인스턴스들에 걸친 대화 지속성을 가능하게 하기 위한 디바이스, 방법 및 그래픽 사용자 인터페이스
CN105453026A (zh) 2013-08-06 2016-03-30 苹果公司 基于来自远程设备的活动自动激活智能响应
US9485543B2 (en) 2013-11-12 2016-11-01 Google Inc. Methods, systems, and media for presenting suggestions of media content
US9552395B2 (en) * 2013-11-13 2017-01-24 Google Inc. Methods, systems, and media for presenting recommended media content items
US9721002B2 (en) * 2013-11-29 2017-08-01 Sap Se Aggregating results from named entity recognition services
US10296160B2 (en) 2013-12-06 2019-05-21 Apple Inc. Method for extracting salient dialog usage from live data
KR102135367B1 (ko) * 2014-01-23 2020-07-17 엘지전자 주식회사 이동 단말기 및 그것의 제어 방법
US9633004B2 (en) 2014-05-30 2017-04-25 Apple Inc. Better resolution when referencing to concepts
US9715875B2 (en) 2014-05-30 2017-07-25 Apple Inc. Reducing the need for manual start/end-pointing and trigger phrases
US9430463B2 (en) 2014-05-30 2016-08-30 Apple Inc. Exemplar-based natural language processing
WO2015184186A1 (en) 2014-05-30 2015-12-03 Apple Inc. Multi-command single utterance input method
US10170123B2 (en) 2014-05-30 2019-01-01 Apple Inc. Intelligent assistant for home automation
US11334720B2 (en) 2019-04-17 2022-05-17 International Business Machines Corporation Machine learned sentence span inclusion judgments
US9338493B2 (en) 2014-06-30 2016-05-10 Apple Inc. Intelligent automated assistant for TV user interactions
US9811352B1 (en) 2014-07-11 2017-11-07 Google Inc. Replaying user input actions using screen capture images
KR20160021524A (ko) * 2014-08-18 2016-02-26 엘지전자 주식회사 이동 단말기 및 이의 제어방법
US9965559B2 (en) 2014-08-21 2018-05-08 Google Llc Providing automatic actions for mobile onscreen content
US9818400B2 (en) 2014-09-11 2017-11-14 Apple Inc. Method and apparatus for discovering trending terms in speech requests
US10528597B2 (en) 2014-09-28 2020-01-07 Microsoft Technology Licensing, Llc Graph-driven authoring in productivity tools
US10402061B2 (en) 2014-09-28 2019-09-03 Microsoft Technology Licensing, Llc Productivity tools for content authoring
US10210146B2 (en) 2014-09-28 2019-02-19 Microsoft Technology Licensing, Llc Productivity tools for content authoring
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
US10534502B1 (en) * 2015-02-18 2020-01-14 David Graham Boyers Methods and graphical user interfaces for positioning the cursor and selecting text on computing devices with touch-sensitive displays
US10152299B2 (en) 2015-03-06 2018-12-11 Apple Inc. Reducing response latency of intelligent automated assistants
US9886953B2 (en) 2015-03-08 2018-02-06 Apple Inc. Virtual assistant activation
US10567477B2 (en) 2015-03-08 2020-02-18 Apple Inc. Virtual assistant continuity
US9721566B2 (en) 2015-03-08 2017-08-01 Apple Inc. Competing devices responding to voice triggers
US9703541B2 (en) 2015-04-28 2017-07-11 Google Inc. Entity action suggestion on a mobile device
US10402410B2 (en) * 2015-05-15 2019-09-03 Google Llc Contextualizing knowledge panels
US10460227B2 (en) 2015-05-15 2019-10-29 Apple Inc. Virtual assistant in a communication session
US10083688B2 (en) 2015-05-27 2018-09-25 Apple Inc. Device voice control for selecting a displayed affordance
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
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
US9971940B1 (en) * 2015-08-10 2018-05-15 Google Llc Automatic learning of a video matching system
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
US10331312B2 (en) 2015-09-08 2019-06-25 Apple Inc. Intelligent automated assistant in a media environment
US10747498B2 (en) 2015-09-08 2020-08-18 Apple Inc. Zero latency digital assistant
US11587559B2 (en) 2015-09-30 2023-02-21 Apple Inc. Intelligent device identification
US10970646B2 (en) 2015-10-01 2021-04-06 Google Llc Action suggestions for user-selected content
US10178527B2 (en) 2015-10-22 2019-01-08 Google Llc Personalized entity repository
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
EP3171281A1 (en) * 2015-11-17 2017-05-24 Dassault Systèmes Thematic web corpus
US10055390B2 (en) * 2015-11-18 2018-08-21 Google Llc Simulated hyperlinks on a mobile device based on user intent and a centered selection of text
US10049668B2 (en) 2015-12-02 2018-08-14 Apple Inc. Applying neural network language models to weighted finite state transducers for automatic speech recognition
WO2017105641A1 (en) 2015-12-15 2017-06-22 Cortica, Ltd. Identification of key points in multimedia data elements
US11195043B2 (en) 2015-12-15 2021-12-07 Cortica, Ltd. System and method for determining common patterns in multimedia content elements based on key points
US10223066B2 (en) 2015-12-23 2019-03-05 Apple Inc. Proactive assistance based on dialog communication between devices
CN105786977B (zh) * 2016-02-05 2020-03-03 北京百度网讯科技有限公司 基于人工智能的移动搜索方法和装置
US10446143B2 (en) * 2016-03-14 2019-10-15 Apple Inc. Identification of voice inputs providing credentials
US10650007B2 (en) 2016-04-25 2020-05-12 Microsoft Technology Licensing, Llc Ranking contextual metadata to generate relevant data insights
CN105975540A (zh) 2016-04-29 2016-09-28 北京小米移动软件有限公司 信息显示方法及装置
US10783178B2 (en) * 2016-05-17 2020-09-22 Google Llc Generating a personal database entry for a user based on natural language user interface input of the user and generating output based on the entry in response to further natural language user interface input of the user
US11227589B2 (en) 2016-06-06 2022-01-18 Apple Inc. Intelligent list reading
US10049663B2 (en) 2016-06-08 2018-08-14 Apple, Inc. Intelligent automated assistant for media exploration
US10586535B2 (en) 2016-06-10 2020-03-10 Apple Inc. Intelligent digital assistant in a multi-tasking environment
US10769182B2 (en) 2016-06-10 2020-09-08 Apple Inc. System and method of highlighting terms
US10831763B2 (en) * 2016-06-10 2020-11-10 Apple Inc. System and method of generating a key list from multiple search domains
DK201670540A1 (en) 2016-06-11 2018-01-08 Apple Inc Application integration with a digital assistant
DK179415B1 (en) 2016-06-11 2018-06-14 Apple Inc Intelligent device arbitration and control
US10474753B2 (en) 2016-09-07 2019-11-12 Apple Inc. Language identification using recurrent neural networks
WO2018053735A1 (zh) * 2016-09-21 2018-03-29 朱小军 一种搜索方法及系统
US10043516B2 (en) 2016-09-23 2018-08-07 Apple Inc. Intelligent automated assistant
US10535005B1 (en) 2016-10-26 2020-01-14 Google Llc Providing contextual actions for mobile onscreen content
US11032410B2 (en) * 2016-11-08 2021-06-08 Microsoft Technology Licensing, Llc Mobile data insight platforms for data analysis
EP4439403A3 (en) * 2016-11-23 2024-10-30 Primal Fusion Inc. System and method for training machine learning classifier
US11281993B2 (en) 2016-12-05 2022-03-22 Apple Inc. Model and ensemble compression for metric learning
US11237696B2 (en) 2016-12-19 2022-02-01 Google Llc Smart assist for repeated actions
TWI603320B (zh) * 2016-12-29 2017-10-21 大仁科技大學 全域對話系統
CN108279828A (zh) * 2016-12-30 2018-07-13 北京搜狗科技发展有限公司 一种启动应用程序的方法、装置和终端
US11138208B2 (en) 2016-12-30 2021-10-05 Microsoft Technology Licensing, Llc Contextual insight system
US11204787B2 (en) 2017-01-09 2021-12-21 Apple Inc. Application integration with a digital assistant
US20180253638A1 (en) * 2017-03-02 2018-09-06 Accenture Global Solutions Limited Artificial Intelligence Digital Agent
US11003839B1 (en) 2017-04-28 2021-05-11 I.Q. Joe, Llc Smart interface with facilitated input and mistake recovery
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
DK201770439A1 (en) 2017-05-11 2018-12-13 Apple Inc. Offline personal assistant
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
DK180048B1 (en) 2017-05-11 2020-02-04 Apple Inc. MAINTAINING THE DATA PROTECTION OF PERSONAL INFORMATION
US11301477B2 (en) 2017-05-12 2022-04-12 Apple Inc. Feedback analysis of a digital assistant
DK179496B1 (en) 2017-05-12 2019-01-15 Apple Inc. USER-SPECIFIC Acoustic Models
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
DK201770411A1 (en) 2017-05-15 2018-12-20 Apple Inc. MULTI-MODAL INTERFACES
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
US10311144B2 (en) 2017-05-16 2019-06-04 Apple Inc. Emoji word sense disambiguation
DK179560B1 (en) 2017-05-16 2019-02-18 Apple Inc. FAR-FIELD EXTENSION FOR DIGITAL ASSISTANT SERVICES
US10403278B2 (en) 2017-05-16 2019-09-03 Apple Inc. Methods and systems for phonetic matching in digital assistant services
US10303715B2 (en) 2017-05-16 2019-05-28 Apple Inc. Intelligent automated assistant for media exploration
US20180336892A1 (en) 2017-05-16 2018-11-22 Apple Inc. Detecting a trigger of a digital assistant
US10783320B2 (en) * 2017-05-16 2020-09-22 Apple Inc. Device, method, and graphical user interface for editing screenshot images
US11108709B2 (en) * 2017-05-25 2021-08-31 Lenovo (Singapore) Pte. Ltd. Provide status message associated with work status
US10657328B2 (en) 2017-06-02 2020-05-19 Apple Inc. Multi-task recurrent neural network architecture for efficient morphology handling in neural language modeling
WO2019008581A1 (en) 2017-07-05 2019-01-10 Cortica Ltd. DETERMINATION OF DRIVING POLICIES
US11899707B2 (en) 2017-07-09 2024-02-13 Cortica Ltd. Driving policies determination
US11816622B2 (en) 2017-08-14 2023-11-14 ScoutZinc, LLC System and method for rating of personnel using crowdsourcing in combination with weighted evaluator ratings
US10445429B2 (en) 2017-09-21 2019-10-15 Apple Inc. Natural language understanding using vocabularies with compressed serialized tries
US10747756B2 (en) * 2017-09-28 2020-08-18 Oracle International Corporation Recommending fields for a query based on prior queries
US10755051B2 (en) 2017-09-29 2020-08-25 Apple Inc. Rule-based natural language processing
US11113608B2 (en) 2017-10-30 2021-09-07 Accenture Global Solutions Limited Hybrid bot framework for enterprises
CN107844327B (zh) * 2017-11-03 2020-10-27 南京大学 一种实现上下文一致性的检测系统及检测方法
CN111433767A (zh) * 2017-11-20 2020-07-17 乐威指南公司 用于过滤电子书的补充内容的系统和方法
US10909191B2 (en) 2017-11-20 2021-02-02 Rovi Guides, Inc. Systems and methods for displaying supplemental content for an electronic book
US10909193B2 (en) * 2017-11-20 2021-02-02 Rovi Guides, Inc. Systems and methods for filtering supplemental content for an electronic book
US10636424B2 (en) 2017-11-30 2020-04-28 Apple Inc. Multi-turn canned dialog
CN109917988B (zh) * 2017-12-13 2021-12-21 腾讯科技(深圳)有限公司 选中内容显示方法、装置、终端及计算机可读存储介质
US10733982B2 (en) 2018-01-08 2020-08-04 Apple Inc. Multi-directional dialog
US10733375B2 (en) 2018-01-31 2020-08-04 Apple Inc. Knowledge-based framework for improving natural language understanding
US10303771B1 (en) 2018-02-14 2019-05-28 Capital One Services, Llc Utilizing machine learning models to identify insights in a document
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
US10831812B2 (en) 2018-03-20 2020-11-10 Microsoft Technology Licensing, Llc Author-created digital agents
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
US10853332B2 (en) * 2018-04-19 2020-12-01 Microsoft Technology Licensing, Llc Discovering schema using anchor attributes
US10978056B1 (en) * 2018-04-20 2021-04-13 Facebook, Inc. Grammaticality classification for natural language generation in assistant systems
US11715042B1 (en) 2018-04-20 2023-08-01 Meta Platforms Technologies, Llc Interpretability of deep reinforcement learning models in assistant systems
US10782986B2 (en) 2018-04-20 2020-09-22 Facebook, Inc. Assisting users with personalized and contextual communication content
US11886473B2 (en) 2018-04-20 2024-01-30 Meta Platforms, Inc. Intent identification for agent matching by assistant systems
US11676220B2 (en) 2018-04-20 2023-06-13 Meta Platforms, Inc. Processing multimodal user input for assistant systems
US11307880B2 (en) 2018-04-20 2022-04-19 Meta Platforms, Inc. Assisting users with personalized and contextual communication content
US11320983B1 (en) * 2018-04-25 2022-05-03 David Graham Boyers Methods and graphical user interfaces for positioning a selection, selecting, and editing, on a computing device running applications under a touch-based operating system
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
US10984780B2 (en) 2018-05-21 2021-04-20 Apple Inc. Global semantic word embeddings using bi-directional recurrent neural networks
US10892996B2 (en) 2018-06-01 2021-01-12 Apple Inc. Variable latency device coordination
US11386266B2 (en) 2018-06-01 2022-07-12 Apple Inc. Text correction
DK179822B1 (da) 2018-06-01 2019-07-12 Apple Inc. Voice interaction at a primary device to access call functionality of a companion device
DK180639B1 (en) 2018-06-01 2021-11-04 Apple Inc DISABILITY OF ATTENTION-ATTENTIVE VIRTUAL ASSISTANT
DK201870355A1 (en) 2018-06-01 2019-12-16 Apple Inc. VIRTUAL ASSISTANT OPERATION IN MULTI-DEVICE ENVIRONMENTS
US10496705B1 (en) 2018-06-03 2019-12-03 Apple Inc. Accelerated task performance
US10846544B2 (en) 2018-07-16 2020-11-24 Cartica Ai Ltd. Transportation prediction system and method
JP6965846B2 (ja) * 2018-08-17 2021-11-10 日本電信電話株式会社 言語モデルスコア算出装置、学習装置、言語モデルスコア算出方法、学習方法及びプログラム
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
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
US20200133308A1 (en) 2018-10-18 2020-04-30 Cartica Ai Ltd Vehicle to vehicle (v2v) communication less truck platooning
US11181911B2 (en) 2018-10-18 2021-11-23 Cartica Ai Ltd Control transfer of a vehicle
US11126870B2 (en) 2018-10-18 2021-09-21 Cartica Ai Ltd. Method and system for obstacle detection
US10839694B2 (en) 2018-10-18 2020-11-17 Cartica Ai Ltd Blind spot alert
US11244176B2 (en) 2018-10-26 2022-02-08 Cartica Ai Ltd Obstacle detection and mapping
US10748038B1 (en) 2019-03-31 2020-08-18 Cortica Ltd. Efficient calculation of a robust signature of a media unit
US11475898B2 (en) 2018-10-26 2022-10-18 Apple Inc. Low-latency multi-speaker speech recognition
EP3857431A1 (en) * 2018-10-30 2021-08-04 Google LLC Automatic hyperlinking of documents
US10789535B2 (en) 2018-11-26 2020-09-29 Cartica Ai Ltd Detection of road elements
CN109543022B (zh) * 2018-12-17 2020-10-13 北京百度网讯科技有限公司 文本纠错方法和装置
US11200461B2 (en) * 2018-12-21 2021-12-14 Capital One Services, Llc Methods and arrangements to identify feature contributions to erroneous predictions
US11638059B2 (en) 2019-01-04 2023-04-25 Apple Inc. Content playback on multiple devices
WO2020172329A1 (en) * 2019-02-19 2020-08-27 Google Llc Learning to extract entities from conversations with neural networks
CN109918555B (zh) * 2019-02-20 2021-10-15 百度在线网络技术(北京)有限公司 用于提供搜索建议的方法、装置、设备和介质
US11643005B2 (en) 2019-02-27 2023-05-09 Autobrains Technologies Ltd Adjusting adjustable headlights of a vehicle
US11285963B2 (en) 2019-03-10 2022-03-29 Cartica Ai Ltd. Driver-based prediction of dangerous events
US11694088B2 (en) 2019-03-13 2023-07-04 Cortica Ltd. Method for object detection using knowledge distillation
US11348573B2 (en) 2019-03-18 2022-05-31 Apple Inc. Multimodality in digital assistant systems
US11132548B2 (en) 2019-03-20 2021-09-28 Cortica Ltd. Determining object information that does not explicitly appear in a media unit signature
US12055408B2 (en) 2019-03-28 2024-08-06 Autobrains Technologies Ltd Estimating a movement of a hybrid-behavior vehicle
US10796444B1 (en) 2019-03-31 2020-10-06 Cortica Ltd Configuring spanning elements of a signature generator
US11222069B2 (en) 2019-03-31 2022-01-11 Cortica Ltd. Low-power calculation of a signature of a media unit
US10789527B1 (en) 2019-03-31 2020-09-29 Cortica Ltd. Method for object detection using shallow neural networks
US10776669B1 (en) 2019-03-31 2020-09-15 Cortica Ltd. Signature generation and object detection that refer to rare scenes
US11275892B2 (en) 2019-04-29 2022-03-15 International Business Machines Corporation Traversal-based sentence span judgements
US11423908B2 (en) 2019-05-06 2022-08-23 Apple Inc. Interpreting spoken requests
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
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
US11289073B2 (en) 2019-05-31 2022-03-29 Apple Inc. Device text to speech
DK180129B1 (en) 2019-05-31 2020-06-02 Apple Inc. USER ACTIVITY SHORTCUT SUGGESTIONS
US11496600B2 (en) 2019-05-31 2022-11-08 Apple Inc. Remote execution of machine-learned models
DK201970510A1 (en) 2019-05-31 2021-02-11 Apple Inc Voice identification in digital assistant systems
US11360641B2 (en) 2019-06-01 2022-06-14 Apple Inc. Increasing the relevance of new available information
US11468890B2 (en) 2019-06-01 2022-10-11 Apple Inc. Methods and user interfaces for voice-based control of electronic devices
US11550865B2 (en) 2019-08-19 2023-01-10 Dropbox, Inc. Truncated search results that preserve the most relevant portions
US11347756B2 (en) 2019-08-26 2022-05-31 Microsoft Technology Licensing, Llc Deep command search within and across applications
WO2021056255A1 (en) 2019-09-25 2021-04-01 Apple Inc. Text detection using global geometry estimators
US10748022B1 (en) 2019-12-12 2020-08-18 Cartica Ai Ltd Crowd separation
US11593662B2 (en) 2019-12-12 2023-02-28 Autobrains Technologies Ltd Unsupervised cluster generation
US10956295B1 (en) * 2020-02-26 2021-03-23 Sap Se Automatic recognition for smart declaration of user interface elements
US11590988B2 (en) 2020-03-19 2023-02-28 Autobrains Technologies Ltd Predictive turning assistant
US11827215B2 (en) 2020-03-31 2023-11-28 AutoBrains Technologies Ltd. Method for training a driving related object detector
US11768945B2 (en) * 2020-04-07 2023-09-26 Allstate Insurance Company Machine learning system for determining a security vulnerability in computer software
US11061543B1 (en) 2020-05-11 2021-07-13 Apple Inc. Providing relevant data items based on context
US11183193B1 (en) 2020-05-11 2021-11-23 Apple Inc. Digital assistant hardware abstraction
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
US11756424B2 (en) 2020-07-24 2023-09-12 AutoBrains Technologies Ltd. Parking assist
US11900046B2 (en) * 2020-08-07 2024-02-13 Microsoft Technology Licensing, Llc Intelligent feature identification and presentation
US11829720B2 (en) 2020-09-01 2023-11-28 Apple Inc. Analysis and validation of language models
US12049116B2 (en) 2020-09-30 2024-07-30 Autobrains Technologies Ltd Configuring an active suspension
WO2022107328A1 (ja) * 2020-11-20 2022-05-27 富士通株式会社 機械学習プログラム、機械学習方法および自然言語処理装置
US11983208B2 (en) * 2021-02-16 2024-05-14 International Business Machines Corporation Selection-based searching using concatenated word and context
US20220366513A1 (en) * 2021-05-14 2022-11-17 Jpmorgan Chase Bank, N.A. Method and apparatus for check fraud detection through check image analysis
CN113641724B (zh) * 2021-07-22 2024-01-19 北京百度网讯科技有限公司 知识标签挖掘方法、装置、电子设备及存储介质
EP4194300A1 (en) 2021-08-05 2023-06-14 Autobrains Technologies LTD. Providing a prediction of a radius of a motorcycle turn
WO2023028599A1 (en) * 2021-08-27 2023-03-02 Rock Cube Holdings LLC Systems and methods for time-dependent hyperlink presentation
WO2023135477A1 (en) * 2022-01-13 2023-07-20 High Sec Labs Ltd. System and method for secure copy-and-paste opertions between hosts through a peripheral sharing device

Family Cites Families (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5574840A (en) * 1994-08-29 1996-11-12 Microsoft Corporation Method and system for selecting text utilizing a plurality of text using switchable minimum granularity of selection
US6385602B1 (en) * 1998-11-03 2002-05-07 E-Centives, Inc. Presentation of search results using dynamic categorization
US7000197B1 (en) * 2000-06-01 2006-02-14 Autodesk, Inc. Method and apparatus for inferred selection of objects
US6907581B2 (en) * 2001-04-03 2005-06-14 Ramot At Tel Aviv University Ltd. Method and system for implicitly resolving pointing ambiguities in human-computer interaction (HCI)
US20070136251A1 (en) * 2003-08-21 2007-06-14 Idilia Inc. System and Method for Processing a Query
JP4278050B2 (ja) * 2004-01-30 2009-06-10 ソフトバンクモバイル株式会社 検索装置及び情報提供システム
US7536382B2 (en) * 2004-03-31 2009-05-19 Google Inc. Query rewriting with entity detection
GB0407816D0 (en) * 2004-04-06 2004-05-12 British Telecomm Information retrieval
US7603349B1 (en) * 2004-07-29 2009-10-13 Yahoo! Inc. User interfaces for search systems using in-line contextual queries
US7856441B1 (en) * 2005-01-10 2010-12-21 Yahoo! Inc. Search systems and methods using enhanced contextual queries
US20060074883A1 (en) * 2004-10-05 2006-04-06 Microsoft Corporation Systems, methods, and interfaces for providing personalized search and information access
US8838562B1 (en) * 2004-10-22 2014-09-16 Google Inc. Methods and apparatus for providing query parameters to a search engine
WO2007118424A1 (en) * 2006-04-13 2007-10-25 Zhang, Sheng Web search on mobile devices
US8706748B2 (en) * 2007-12-12 2014-04-22 Decho Corporation Methods for enhancing digital search query techniques based on task-oriented user activity
US20100241663A1 (en) * 2008-02-07 2010-09-23 Microsoft Corporation Providing content items selected based on context
US8650507B2 (en) * 2008-03-04 2014-02-11 Apple Inc. Selecting of text using gestures
US8786556B2 (en) * 2009-03-12 2014-07-22 Nokia Corporation Method and apparatus for selecting text information
US20100289757A1 (en) * 2009-05-14 2010-11-18 Budelli Joey G Scanner with gesture-based text selection capability
US9262063B2 (en) 2009-09-02 2016-02-16 Amazon Technologies, Inc. Touch-screen user interface
US8489390B2 (en) * 2009-09-30 2013-07-16 Cisco Technology, Inc. System and method for generating vocabulary from network data
EP2488963A1 (en) * 2009-10-15 2012-08-22 Rogers Communications Inc. System and method for phrase identification
CN102804182A (zh) 2010-01-11 2012-11-28 苹果公司 电子文本的操纵和显示
US8704783B2 (en) * 2010-03-24 2014-04-22 Microsoft Corporation Easy word selection and selection ahead of finger
US9069416B2 (en) * 2010-03-25 2015-06-30 Google Inc. Method and system for selecting content using a touchscreen
US8719246B2 (en) * 2010-06-28 2014-05-06 Microsoft Corporation Generating and presenting a suggested search query
US9087043B2 (en) * 2010-09-29 2015-07-21 Rhonda Enterprises, Llc Method, system, and computer readable medium for creating clusters of text in an electronic document
US8818981B2 (en) * 2010-10-15 2014-08-26 Microsoft Corporation Providing information to users based on context
US20120102401A1 (en) * 2010-10-25 2012-04-26 Nokia Corporation Method and apparatus for providing text selection
JP5087129B2 (ja) * 2010-12-07 2012-11-28 株式会社東芝 情報処理装置及び情報処理方法
US9645986B2 (en) 2011-02-24 2017-05-09 Google Inc. Method, medium, and system for creating an electronic book with an umbrella policy
KR20120102262A (ko) * 2011-03-08 2012-09-18 삼성전자주식회사 휴대용 단말기가 열람하는 텍스트에서 원하는 내용을 선택하는 방법 및 장치
CN103608760A (zh) * 2011-06-03 2014-02-26 谷歌公司 用于选择文本的手势
US8612584B2 (en) 2011-08-29 2013-12-17 Google Inc. Using eBook reading data to generate time-based information
US9612670B2 (en) * 2011-09-12 2017-04-04 Microsoft Technology Licensing, Llc Explicit touch selection and cursor placement
US9471547B1 (en) * 2011-09-23 2016-10-18 Amazon Technologies, Inc. Navigating supplemental information for a digital work
US20150205490A1 (en) * 2011-10-05 2015-07-23 Google Inc. Content selection mechanisms
US8626545B2 (en) 2011-10-17 2014-01-07 CrowdFlower, Inc. Predicting future performance of multiple workers on crowdsourcing tasks and selecting repeated crowdsourcing workers
US9691381B2 (en) * 2012-02-21 2017-06-27 Mediatek Inc. Voice command recognition method and related electronic device and computer-readable medium
CN103294706A (zh) * 2012-02-28 2013-09-11 腾讯科技(深圳)有限公司 触摸式终端中的文本搜索方法和装置
US9292192B2 (en) * 2012-04-30 2016-03-22 Blackberry Limited Method and apparatus for text selection
US9916396B2 (en) * 2012-05-11 2018-03-13 Google Llc Methods and systems for content-based search
WO2014000251A1 (en) * 2012-06-29 2014-01-03 Microsoft Corporation Input method editor
US9009169B2 (en) * 2012-09-20 2015-04-14 Intelliresponse Systems Inc. Disambiguation framework for information searching

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180036460A (ko) * 2016-09-30 2018-04-09 주식회사 솔트룩스 문서 작성을 위한 능동적 지식 추천 시스템 및 방법

Also Published As

Publication number Publication date
CN105637507B (zh) 2019-03-08
EP3055789A1 (en) 2016-08-17
US9436918B2 (en) 2016-09-06
WO2015054218A1 (en) 2015-04-16
EP3055787A1 (en) 2016-08-17
WO2015053993A1 (en) 2015-04-16
TW201519075A (zh) 2015-05-16
CN105612517A (zh) 2016-05-25
CN105637507A (zh) 2016-06-01
US20150100524A1 (en) 2015-04-09
US20150100562A1 (en) 2015-04-09

Similar Documents

Publication Publication Date Title
KR20160067202A (ko) 맥락적 통찰 및 탐구 기법
US11294970B1 (en) Associating an entity with a search query
US9418128B2 (en) Linking documents with entities, actions and applications
CN107787487B (zh) 将文档解构为成分块以用于在生产力应用中重新使用
WO2020005571A1 (en) Misinformation detection in online content
US20140019460A1 (en) Targeted search suggestions
US9336277B2 (en) Query suggestions based on search data
KR101594791B1 (ko) 서버들, 디스플레이 디바이스들, 스크롤링 방법들 및 히트맵들을 생성하는 방법들
JP2018077858A (ja) 会話式情報検索システムおよび方法
US8332426B2 (en) Indentifying referring expressions for concepts
US20230177360A1 (en) Surfacing unique facts for entities
EP2109050A1 (en) Facilitating display of an interactive and dynamic cloud of terms related to one or more input terms
US10296644B2 (en) Salient terms and entities for caption generation and presentation
US20070174257A1 (en) Systems and methods for providing sorted search results
US8700594B2 (en) Enabling multidimensional search on non-PC devices
US9805120B2 (en) Query selection and results merging
JP2015511746A5 (ko)
US20110307432A1 (en) Relevance for name segment searches
US10242033B2 (en) Extrapolative search techniques
US11481454B2 (en) Search engine results for low-frequency queries
Dahir et al. A query expansion method based on topic modeling and DBpedia features
US9811592B1 (en) Query modification based on textual resource context
US9152698B1 (en) Substitute term identification based on over-represented terms identification
US20170293683A1 (en) Method and system for providing contextual information
Kravi et al. One query, many clicks: Analysis of queries with multiple clicks by the same user

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid