KR101994987B1 - 관련 엔티티들 - Google Patents

관련 엔티티들 Download PDF

Info

Publication number
KR101994987B1
KR101994987B1 KR1020147026346A KR20147026346A KR101994987B1 KR 101994987 B1 KR101994987 B1 KR 101994987B1 KR 1020147026346 A KR1020147026346 A KR 1020147026346A KR 20147026346 A KR20147026346 A KR 20147026346A KR 101994987 B1 KR101994987 B1 KR 101994987B1
Authority
KR
South Korea
Prior art keywords
entity
entities
search
type
query
Prior art date
Application number
KR1020147026346A
Other languages
English (en)
Other versions
KR20140128443A (ko
Inventor
피터 진 홍
프라이비르 케이. 굽타
나타니엘 제이. 게일린
라마크리시난 카지유르-만날
카비 제이. 고엘
오머 바르-오르
잭 더블유. 멘젤
크리스티나 알. 다나라즈
자레드 엘. 레비
사시드하르 에이. 타쿠르
그레이스 청
벤슨 차이
Original Assignee
구글 엘엘씨
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 구글 엘엘씨 filed Critical 구글 엘엘씨
Publication of KR20140128443A publication Critical patent/KR20140128443A/ko
Application granted granted Critical
Publication of KR101994987B1 publication Critical patent/KR101994987B1/ko

Links

Images

Classifications

    • 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/951Indexing; Web crawling techniques
    • 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/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
    • 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/9538Presentation of query results

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

검색 질의가 대상으로 하는 엔티티와 관련되는 엔티티들을 식별하기 위한 컴퓨터 스토리지 매체 상에 인코딩된 컴퓨터 프로그램들을 포함하는 장치, 시스템들 및 방법들이 제공된다. 방법들 중 하나는 검색 질의 - 상기 검색 질의는 제1 엔티티 타입의 제1 엔티티와 관련되는 것으로 판정되고 제2 엔티티 타입의 하나 이상의 엔티티들은 상기 제1 엔티티와 관계를 가지며 - 를 수신하는 단계와, 상기 검색 질의에 대한 검색 결과들을 수신하는 단계와, 상기 제1 엔티티에 대한 참조를 포함하는 리소스를 식별하는 검색 결과들의 카운트가 제1 임계값을 만족함을 판정하는 단계와, 상기 제2 엔티티 타입을 관련 엔티티 타입으로 가지는 리소스를 식별하는 검색 결과들의 카운트가 제2 임계값을 만족함을 판정하는 단계와, 그리고 상기 검색 질의에 대한 응답의 일부로서 상기 제2 엔티티 타입의 하나 이상의 엔티티들을 식별하는 정보를 전송하는 단계를 포함한다.

Description

관련 엔티티들{RELATED ENTITIES}
[관련 기술의 상호 참조]
본 출원은 35 U.S.C.§119(e)하에서 발명의 명칭이 "Related Entities"인 2012년 2월 22일자로 출원된 미국 특허 출원 제61/601,975호, 발명의 명칭이 "Related Entities"인 2012년 5월 16일자로 출원된 미국 특허 출원 제61/647,977호 및 발명의 명칭이 "Related Entities"인 2012년 6월 15일자로 출원된 미국 특허 출원 제61/660,637호의 이득을 주장하며, 상기 출원들 모두는 그 전체가 본 명세서에 참조로서 포함된다.
[기술분야]
본 발명은 인터넷 검색 시스템들에 관한 것이다.
인터넷 검색 엔진은 사용자의 필요들에 관련된 인터넷 리소스들, 예컨대 웹 페이지들, 이미지들, 텍스트 문서들 또는 멀티미디어 컨텐츠를 식별하기 위한 것이며, 사용자에게 가장 유용한 방식으로 리소스들에 관한 정보를 제시하기 위한 것이다. 인터넷 검색 엔진들은 사용자가 제출한 질의에 응답하여 검색 결과들의 세트를 리턴한다. 인터넷 검색 엔진들은 일반적으로, 특별한 수신된 질의들을 분류할 수 있는 하나 이상의 서비스들을 포함한다. 이러한 서비스들은: 외설적인(pornographic) 질의, 즉 외설적인 결과들을 찾는 질의 또는 외설적인 것으로 분류된 리소스들을 식별하는 다수의 검색 결과들이 리턴되는 질의, 특별한 리소스로 항행하는(navigational) 질의, 즉 그 특별한 리소스를 찾는 질의, 로컬 질의, 즉 사용자의 가까이 위치된 비즈니스에 관한 정보를 찾는 질의, 또는 정보의 특별한 항목을 찾는 질의, 예컨대 질의에 제기된 질문에 대한 답변인 정보의 항목을 찾는 질의 중 하나 이상으로 질의들을 분류하는 서비스들을 포함할 수 있다.
본 명세서는 검색 질의가 대상으로 하는(direct) 엔티티에 관련되는 엔티티들을 식별하는 것에 관한 기술들을 설명한다.
일반적으로, 본 명세서에 기술되는 발명의 일 혁신적인 양상은 방법들로 실현될 수 있는 바, 상기 방법들은 사용자 디바이스로부터의 제1 검색 질의 - 상기 제1 검색 질의는 제1 엔티티 타입의 제1 엔티티에 관련되는 것으로 판정되었고 제2 엔티티 타입의 하나 이상의 엔티티들은 상기 제1 엔티티와의 미리 결정된 관계를 가지며 - 를 수신하는 액션(action)과, 검색 엔진에 의해 제공되는 상기 제1 검색 질의에 대한 검색 결과들 - 상기 검색 결과들 각각은 각각의 리소스를 식별하고 - 을 수신하는 액션과, 상기 제1 엔티티에 대한 참조를 포함하는 리소스를 식별하는 검색 결과들의 카운트가 제1 임계값을 만족함을 판정하는 액션과, 제2 엔티티 타입을 가지는 리소스를 관련 엔티티 타입으로서 식별하는 검색 결과들의 카운트가 제2 임계값을 만족함을 판정하는 액션과, 그리고 사용자 디바이스에 상기 제1 검색 질의에 대한 응답의 부분으로서 상기 제2 엔티티 타입의 하나 이상의 엔티티들을 식별하는 정보를 전송하는 액션을 포함한다.
본 양상의 다른 실시예들은 대응하는 컴퓨터 시스템들, 장치들 및 하나 이상의 컴퓨터 스토리지 디바이스들 상에 레코딩된 컴퓨터 프로그램들을 포함하며, 이들 각각은 상기 방법들의 액션들을 수행하도록 구성되어 있다. 하나 이상의 컴퓨터들의 시스템은 소프트웨어, 펌웨어, 하드웨어 또는 이들의 조합이 상기 시스템 상에 인스톨되게 함으로써 특별한 동작들 또는 액션들을 수행하도록 구성될 수 있으며, 이들은 동작 시, 상기 시스템으로 하여금 상기 액션들을 수행하도록 한다. 하나 이상의 컴퓨터들은 명령어들을 포함함으로써 특별한 동작들 또는 액션들을 수행하도록 구성될 수 있으며, 상기 명령어들은 데이터 프로세싱 장치에 의해 실행될 때, 상기 장치로 하여금 상기 액션들을 수행하도록 한다.
이들 및 다른 실시예들은 옵션(option)에 따라서는, 다음의 특징들 중 하나 이상을 포함할 수 있다. 검색 결과들 각각은 검색 결과에 의해 식별되는 각각의 리소스로부터 추출된 각각의 제목(title) 및 각각의 텍스트의 토막(snippet)을 포함할 수 있고, 제1 엔티티에 대한 참조를 포함하는 리소스를 식별하는 검색 결과들의 카운트가 제1 임계값을 만족함을 판정하는 것은 상기 검색 결과에 포함된 각각의 제목 또는 각각의 텍스트의 토막 내의 상기 제1 엔티티에 대한 참조를 포함하는 검색 결과들의 카운트가 상기 제1 임계값을 만족함을 판정하는 것을 포함할 수 있다.
제2 엔티티 타입의 하나 이상의 엔티티들을 식별하는 정보는 하나 이상의 엔티티들 각각에 대응하는 각각의 이미지를 포함할 수 있고, 상기 방법은 제2 엔티티 타입의 하나 이상의 엔티티들 각각에 대해, 엔티티의 이름으로부터 파생된(derived) 검색 질의에 응답하여 이미지 검색 엔진으로부터 엔티티에 대응하는 각각의 이미지를 획득하는 액션을 더 포함할 수 있다.
제2 타입의 하나 이상의 엔티티들 중 특정 엔티티에 대한 이미지를 획득하는 것은 특정 엔티티의 이름을 포함하는 특별한 검색 질의가 모호(ambiguous)한 것으로 판정하는 것 - 이러한 판정은 검색 엔진에 의해 특별한 검색 질의에 대해 제공되는 검색 결과들로부터, 특별한 검색 질의가 특정한 타입의 특정한 엔티티에 복수의 리소스들 각각을 매핑하는 인덱스 내의 어떤 엔티티에도 관련되지 않음을 판정하는 것 또는 상기 인덱스 내의 하나 보다 많은 엔티티에 관련됨을 판정하는 것을 포함하고 - 과, 특정 엔티티의 이름 및, 제1 엔티티 타입의 제1 엔티티에 대한 참조 또는 제2 엔티티 타입에 대한 참조 중 적어도 하나를 포함하는 제2 검색 질의를 생성하는 것과, 이미지 검색 엔진으로부터 제2 검색 질의에 대한 이미지 검색 결과들을 획득하는 것과, 그리고 제2 검색 질의에 대한 이미지 검색 결과들에 의해 식별되는 이미지들로부터 특정 엔티티에 대한 이미지를 선택하는 것을 포함할 수 있다.
방법은 상기 제2 검색 질의가 모호하지 않은 것으로 판정하는 액션을 더 포함할 수 있다.
이미지 검색 결과들에 의해 식별되는 이미지들로부터의 특정 엔티티에 대한 이미지를 선택하는 것은 이미지의 종횡비(aspect ratio)에 적어도 부분적으로 근거하여 이미지를 선택하는 것을 포함할 수 있다.
방법은 또한, 제1 검색 질의에 대한 검색 결과들로부터 제1 검색 질의가 제1 엔티티 타입의 제1 엔티티에 관련됨을 판정하는 액션을 포함할 수 있고, 이러한 판정은 특정한 타입의 특정한 엔티티로에 복수의 리소스들 각각을 매핑하는 인덱스를 사용하여, 제1 엔티티에 매핑되는 리소스를 식별하는 검색 결과들의 카운트가 제3 임계값을 초과함을 판정하는 것을 포함한다.
방법은 또한, 외설적인 질의, 특별한 리소스로 항행하는 질의, 로컬 질의 또는 정보의 특별한 항목을 찾는 질의 중 어느 것이 아닌 것으로서 검색 질의를 분류하는 데이터를 획득하는 액션을 포함할 수 있다.
하나 이상의 엔티티들을 식별하는 정보는 하나 이상의 엔티티들 각각의 이름 및 제2 엔티티 타입을 식별하는 정보를 포함할 수 있다.
방법은 또한, 제2 엔티티 타입의 엔티티들 각각에 대한 각각의 순위 스코어를 판정하는 액션 및 상기 순위 스코어들에 따라 제2 엔티티 타입의 엔티티들을 순서화하는 액션을 포함할 수 있다.
제2 엔티티 타입의 특정 엔티티에 대한 순위 스코어는 특정 엔티티에 대한 인식된 참조가 인덱싱 엔진에 의해 인덱스되는 리소스들 내의 제1 엔티티에 대한 인식된 참조와 얼마나 빈번하게 공동 발생(co-occur)되는지에 적어도 부분적으로 근거할 수 있다.
제2 엔티티 타입의 특정 엔티티에 대한 순위 스코어는 제1 엔티티를 대상으로 하는 검색 질의를 제출한 후에 특정 엔티티가 사용자에 의해 얼마나 빈번하게 검색되는지에 적어도 부분적으로 근거할 수 있다.
제2 엔티티 타입의 특정 엔티티에 대한 순위 스코어는 특정 엔티티의 전역적인 인기(global popularity)에 적어도 부분적으로 근거할 수 있다.
제2 엔티티 타입의 특정 엔티티에 대한 순위 스코어는 특정 엔티티에 대한 인식된 참조가 제1 엔티티에 대한 인식된 참조로서 이전에 제출된 동일한 검색 질의에서 얼마나 빈번하게 공동 발생되는지에 적어도 부분적으로 근거할 수 있다.
방법은 또한, 제2 엔티티 타입의 엔티티들 중 둘 이상이 특정화된 순서를 가지는 엔티티들의 세트의 멤버(member)들이라고 나타내는 데이터에 액세스하는 액션 및 특정화된 순서와 매치되도록 제2 엔티티 타입의 둘 이상의 엔티티들의 순서화를 조정하는 액션을 포함할 수 있다.
방법은 또한, 제2 엔티티 타입의 엔티티들 중 둘 이상이 넓은 엔티티의 부분으로서 잘 알려져 있다고 나타내는 정보에 액세스하는 액션 및 제2 엔티티 타입의 엔티티들의 순서로 넓은 엔티티와 제2 엔티티 타입의 둘 이상의 엔티티들을 교체하는 액션을 포함할 수 있다.
본 명세서에 기술된 본 발명은 다음의 장점들 중 하나 이상을 실현하도록 특별한 실시예들로 구현될 수 있다. 사용자들은 자신들의 검색 질의가 대상으로 하는 엔티티와 특별한 관계를 가지는 엔티티들에 관한 정보를 쉽게 볼 수 있다. 특히, 사용자들은 관심있는 엔티티를 식별하는 검색 질의를 검색 엔진에 제출함으로써 관심있는 엔티티와 관련된 엔티티들을 식별하는 정보를 쉽게 획득할 수 있다. 추가적으로, 사용자는 관련 엔티티들에 관한 더 많은 정보를 획득하기 위해 다른 검색 질의를 쉽게 제출할 수 있다. 사용자는 엔티티와 관련된 엔티티들에 관한 정보를 봄으로써 자신의 검색 질의가 대상으로 하는 엔티티에 관하여 학습할 수 있다. 예를 들어, 사용자는, 특별한 사람의 이름을 포함하는 질의를 검색 엔진에 제출하고 상기 특별한 사람에 의해 쓰여진 책들을 식별하는 정보를 제시받음으로써 상기 특별한 사람이 저자(author)임을 학습할 수 있다. 추가적으로, 사용자들이 엔티티를 대상으로 하는 질의를 제출한 후에 상기 엔티티에 관하여 가질 가능성이 있는 질문들이 예측될 수 있고, 이 질문들에 대한 답변들인 엔티티들에 관한 정보가 예컨대, 사용자가 상기 답변들을 찾기 위해 다른 검색 질의를 제출하거나 또는 다른 리소스로 항행할 필요 없이 질의에 대한 응답의 부분으로서 사용자에게 제공될 수 있다. 예를 들어, 저자를 대상으로 하는 질의들을 제출한 사용자들은 상기 저자에 의해 쓰여진 특별한 책들에 관한 정보를 빈번하게 후속적으로 찾을 수 있다. 이 특별한 책들을 식별하는 정보는 사용자가 추가적인 질의들을 제출하거나 또는 질의에 대한 검색 결과들에 의해 식별되는 리소스들로 항행할 필요없이 검색 질의에 대한 응답의 부분으로서 사용자에게 제시될 수 있다. 특별한 타입의 엔티티를 대상으로 하는 검색 질의를 제출함으로써, 사용자는 엔티티와 관련된 특별한 타입의 다른 엔티티들에 관한 정보를 쉽게 획득하고 상기 다른 엔티티들을 대상으로 하는 질의들을 제출할 수 있다.
본 명세서의 발명의 하나 이상의 실시예들의 세부사항은 첨부 도면들 및 하기 상세한 설명에 제시된다. 본 발명의 다른 특징들, 양상들 및 장점들이 상세한 설명, 도면들 및 특허 청구 범위로부터 분명해질 것이다.
도 1은 예시적인 검색 결과 페이지를 도시한다.
도 2는 예시적인 검색 시스템의 블록도이다.
도 3은 검색 질의에 대한 응답의 부분으로서 식별될 하나 이상의 관련 엔티티들을 식별하기 위한 예시적인 프로세스의 순서도이다.
도 4는 검색 질의가 특정 엔티티를 대상으로 하는 것인지를 판정하기 위한 예시적인 프로세스의 순서도이다.
도 5는 관련 엔티티들이 특별한 검색 질의에 응답하여 식별되어야 하는지를 판정하기 위한 예시적인 프로세스의 순서도이다.
도 6은 관련 엔티티들을 선택함에 있어서 사용될 인덱스들을 구축하기 위한 예시적인 프로세스의 순서도이다.
도 7은 관련 엔티티들을 순서화하기 위한 예시적인 프로세스의 순서도이다.
도 8은 엔티티를 동일한 타입의 관련 엔티티들에 매핑하기 위한 예시적인 프로세스의 순서도이다.
다양한 도면들에서 유사한 도면 부호들 및 지정들은 유사한 요소들을 나타낸다.
도 1은 검색 질의(102) "roald dahl"에 대한 예시적인 검색 결과 페이지(100)를 도시한다. 검색 결과 페이지(100)는 두 개의 검색 결과들(104 및 106) 및 관련 엔티티들의 이름들(108)을 포함한다. 검색 결과들(104 및 106) 및 관련 엔티티들의 이름들(108)은 검색 질의(102)에 응답하여 검색 시스템에 의해 생성된다. 검색 결과들(104 및 106) 각각은 각각의 리소스를 식별하고, 각각의 제목들(120 및 122) 및 각각의 텍스트 토막들(124 및 126)을 포함하며, 이들은 검색 결과들에 의해 식별된 리소스들로부터 추출된다. 검색 시스템은 종래의 검색 기법들을 이용하여 검색 결과들(104 및 106)을 생성한다.
검색 시스템은 특정 엔티티, 즉 저자 Roald Dahl를 대상으로 하는 것으로서 검색 질의(102)를 분류하고, 검색 결과 페이지(100)에 제시하기 위해 특정 엔티티와 미리 결정된 관계를 가지는 즉, Roald Dahl에 의해 저작된 책들인 관련 엔티티들의 이름들(108)을 리턴한다. 도시된 예에서, 검색 시스템은 검색 결과들(104 및 106) 중 하나 또는 둘 모두가 저자 Roald Dahl에 대한 권위적(authoritative) 리소스라고 판정된 리소스를 식별하기 때문에, 저자 Roald Dahl를 대상으로 하는 것으로서 검색 질의(102)를 분류할 수 있다. 예를 들어, 검색 결과들(104 및 106)에 의해 식별된 리소스들 중 하나 또는 둘 모두 즉, 저자 Roald Dahl의 공식 웹 사이트 및 저자 Roald Dahl에 대한 위키피디아 페이지는 저자 Roald Dahl에 대한 권위적 리소스라고 판정되었을 수 있다. 검색 질의(102)에 응답하여, 검색 시스템은 예컨대, 저자 Roald Dahl와 관계를 가지는 엔티티들을 식별하는 데이터를 저장하는 인덱스를 이용하여, 리턴될 관련 엔티티들의 이름들을 선택한다.
관련 엔티티들의 이름들(108) 중의 각각의 이름, 예컨대 "Charlie and the Chocolate Factory" 및 "James and the Giant Peach"이 링크 - 이 링크에 의해 사용자는 관련 엔티티의 이름으로부터 파생된 질의에 대한 검색 결과들을 획득할 수 있다 - 의 형태로 제시된다. 예를 들어, 관련 엔티티의 이름으로부터 파생된 질의는 관련 엔티티의 이름, 예컨대 "Charlie and the Chocolate Factory", 검색 질의(102)의 텍스트, 예컨대 "Roald Dahl", 및 상기 이름이 속하는 엔티티 타입의 이름, 예컨대 "책" 중 하나 이상을 포함할 수 있다. 각각의 이름은 이름에 대응하는 이미지(114), 예컨대 책의 표지의 이미지와 함께 제시된다. 이미지들 각각은 또한, 링크 - 상기 링크에 의해 사용자는 이미지에 대응되는 관련 엔티티의 이름으로부터 파생된 질의에 대한 검색 결과들을 얻을 수 있다 - 의 형태로 제시될 수 있다. 일부 구현들에서, 사용자가 이미지들(114) 중 하나 위에서 입력 디바이스의 커서를 호버링(hovering)함에 응답하여, 이미지에 대응되는 관련 엔티티에 관한 추가적인 정보가 디스플레이된다. 예를 들어, 사용자가 이미지들(114) 중 하나 위에서 호버링함에 응답하여, 이미지에 대응하는 책이 출판된 년도가 사용자에게 디스플레이될 수 있다.
검색 결과 페이지는 또한, 검색 결과 페이지(100)에 명명된, 관련 엔티티들의 타입을 식별하는 정보(110), 이 경우에서는 "책들" 및 검색 질의(102)가 관련되는 것으로 판정된 엔티티를 식별하는 정보(112), 이 경우에서는 "Roald Dahl"을 포함한다.
도 2는 예시적인 검색 시스템(214)의 블록도이다. 검색 시스템(214)은 하기에 기술되는 시스템, 컴포넌트들 및 기법들이 구현될 수 있는 하나 이상의 위치들에서의 하나 이상의 컴퓨터들 상의 컴퓨터 프로그램으로서 구현되는 정보 검색 시스템의 예이다.
사용자(202)는 사용자 디바이스(204)를 통해 검색 시스템(214)과 상호대화(interact)할 수 있다. 예를 들어, 사용자 디바이스(204)는 데이터 통신 네트워크(212), 예컨대 로컬 영역 네트워크(LAN) 또는 광역 네트워크(WAN), 예컨대 인터넷 또는 네트워크들의 조합을 통해 검색 시스템(214)에 결합된 컴퓨터일 수 있다. 일부 경우들에서, 검색 시스템(214)은 예컨대, 사용자가 사용자 디바이스(204) 상에서 검색들을 수행하는 어플리케이션을 인스톨한 경우, 사용자 디바이스(204) 상에 구현될 수 있다. 사용자 디바이스(204)는 일반적으로, 명령어들 및 데이터를 저장하기 위한 메모리 예컨대, RAM(206) 및 저장된 명령어들을 실행하기 위한 프로세서(208)를 포함할 것이다. 상기 메모리는 판독 전용 메모리 및 기록가능 메모리 둘 모두를 포함할 수 있다.
사용자(202)는 검색 시스템(214)에 질의(210)를 제출하기 위해 사용자 디바이스(204)를 사용할 수 있다. 검색 시스템(214) 내의 검색 엔진(230)은 질의에 매칭되는 리소스들을 식별하기 위해 검색을 수행한다. 사용자(202)가 질의(210)를 제출할 때, 질의(210)는 네트워크(212)를 통해 검색 시스템(214)에 전송될 수 있다. 검색 시스템(214)은 인덱스 데이터베이스(222) 및 검색 엔진(230)을 포함한다. 검색 시스템(214)은 검색 결과들(228)을 생성함으로써 질의(210)에 응답하고, 상기 검색 결과들은 예컨대, 사용자 디바이스(204) 상에서 동작하는 웹 브라우져에 의해 디스플레이될 검색 결과 웹 페이지로서 사용자(202)에게 제시되기 위해 네트워크를 통해 사용자 디바이스(204)에 제출된다.
본 명세서에서, 용어 "데이터베이스"는 데이터의 어떤 집합(collection)을 나타내기 위해 넓게 이용될 것인 바, 상기 데이터는 어떤 특별한 방식으로 구조화될 필요가 없거나 또는 전혀 구조화될 필요가 없으며, 상기 데이터는 하나 이상의 장소들에 있는 스토리지 디바이스들 상에 저장될 수 있다. 따라서, 예컨대, 인덱스 데이터베이스(222)는 복수의 데이터의 집합들을 포함할 수 있는 바, 이들 각각은 서로 다르게 조직화되고 액세스될 수 있다. 유사하게, 본 명세서에서 용어 "엔진"은 하나 이상의 특정한 기능들을 수행할 수 있는 소프트웨어 기반 시스템 또는 서브 시스템을 나타내기 위해 넓게 이용될 것이다. 일반적으로, 엔진은 하나 이상의 위치들에서의 하나 이상의 컴퓨터들 상에 인스톨된 하나 이상의 소프트웨어 모듈들 또는 컴포넌트들로서 구현될 것이다. 일부 경우들에서, 하나 이상의 컴퓨터들은 특별한 엔진에 전용일 수 있고, 다른 경우들에서, 복수의 엔진들은 동일한 컴퓨터 또는 컴퓨터들 상에 인스톨되고 실행될 수 있다.
질의(210)가 검색 엔진(230)에 의해 수신될 때, 검색 엔진(230)은 질의(210)를 만족하는 리소스들을 식별한다. 검색 엔진(230)은 일반적으로, 리소스들을 인덱스하는 인덱싱 엔진(220), 인덱스 정보를 저장하는 인덱스 데이터베이스(222) 및, 질의(210)를 만족하는 리소스들에 대해 스코어들을 생성하고 이들 각각의 스코어들에 따라 리소스들의 순위를 매기는 순위 엔진(252) 또는 다른 소프트웨어를 포함할 것이다.
검색 시스템(214)은 또한, 관련 엔티티 엔진(240)을 포함하거나 또는 이와 통신할 수 있으며, 상기 관련 엔티티 엔진은 검색 결과들(228)로부터, 질의(210)가 특정 엔티티를 대상으로 하는 것인지 즉, 질의가 특정 엔티티를 대상으로 하는 것으로서 분류되어야 하는지를 판정한다. 질의가 특정 엔티티를 대상으로 하는 것인지를 판정하는 것은 도 4를 참조하여 하기에 더욱 상세히 기술될 것이다. 만일 질의가 특정 엔티티를 대상으로 하는 것이면, 관련 엔티티 엔진(240)은 특정 엔티티와 미리 결정된 관계를 가지는 엔티티들을 식별한다. 특정 엔티티와 미리 결정된 관계를 가지는 엔티티들을 식별하는 것은 도 3을 참조하여 하기에 더욱 상세히 기술될 것이다. 일단, 관련 엔티티들이 식별되면, 검색 시스템(214)은 검색 질의(210)에 대한 응답의 부분으로서 관련 엔티티들을 식별하는 정보를 예컨대 검색 결과들(228)과 함께 또는 검색 결과들(228)을 대신하여 사용자 디바이스(204)에 전송할 수 있다.
질의가 특정 엔티티를 대상으로 하는 것인지를 판정하고 특정 엔티티와 관련되는 엔티티들을 식별하기 위해, 관련 엔티티 엔진(240)은 관련 엔티티 인덱스 데이터베이스(250)와 통신할 수 있다. 관련 엔티티 인덱스 데이터베이스(250)은 두 개의 인덱스들을 포함하는 바, 일 인덱스는 하나 이상의 관련 엔티티들에 엔티티들의 그룹의 각각의 엔티티를 매핑하고 엔티티와 하나 이상의 관련 엔티티들과의 사이의 관계를 식별하며, 다른 인덱스는 엔티티들의 그룹의 각각의 엔티티에 엔티티에 대한 하나 이상의 권위적 리소스들을 매핑한다. 이 인덱스들을 구축하는 것은 도 6을 참조하여 하기에 기술된다.
도 3은 검색 질의에 대한 응답의 부분으로서 식별될 하나 이상의 관련 엔티티들을 식별하기 위한 예시적인 프로세스(300)의 순서도이다. 편의를 위해, 프로세스(300)는 하나 이상의 위치들에 위치된 하나 이상의 컴퓨터들의 시스템에 의해 수행되는 것으로서 기술될 것이다. 예를 들어, 적절하게 프로그래밍된 검색 시스템, 예컨대 도 2의 검색 시스템(214)은 프로세스(300)를 수행할 수 있다.
시스템은 사용자 디바이스로부터 검색 질의를 수신하고(단계 302) 검색 엔진으로부터 검색 질의에 대한 검색 결과들을 획득한다(단계 304).
시스템은 검색 질의가 주요한 엔티티(principal entity)에 관한 것임을 판정한다(단계 306). 시스템은 검색 질의에 대해 획득된 검색 결과들을 분석함으로써 이를 행한다. 검색 질의에 대한 검색 결과들의 분석으로부터 상기 검색 질의가 엔티티를 대상으로 하는 것임을 판정하는 것은 도 4를 참조하여 하기에 더욱 상세히 기술된다.
시스템은 하나 이상의 다른 엔티티들이 주요한 엔티티와 관계를 가짐을 판정한다(단계 308). 시스템은 인덱스, 예컨대 도 2의 관련 엔티티 인덱스 데이터베이스(250) 내의 인덱스에 액세스함으로써 하나 이상의 다른 엔티티들이 주요한 엔티티와 관계를 가짐을 판정하며, 상기 인덱스는 엔티티와 미리 결정된 관계를 가지는 다른 엔티티들에 엔티티들을 매핑한다. 상기 인덱스는 또한, 하나 이상의 관련 엔티티들의 타입을 식별하며, 옵션에 따라서는 검색 질의가 대상으로 하는 엔티티와 관련 엔티티들과의 사이의 관계를 식별한다. 관련 엔티티들은 미리 결정된 관계에 따라, 엔티티와 동일한 타입 또는 다른 타입을 가질 수 있다. 예를 들어, 특별한 영화의 경우, 관련 엔티티들은 상기 영화에서 주역을 맡은 연기자들, 영화의 프로듀서, 영화의 감독 및 기타 등등일 수 있다. 대안적으로는, 관련 엔티티들은 동일한 프로듀서에 의해 제작되거나 동일한 감독에 의해 지휘되거나 또는 상기 영화와 하나 이상의 연기자들을 공유하는 다른 영화일 수 있다. 인덱스는 또한, 관련 엔티티들의 타입(예컨대, "연기자") 및 관련 엔티티들과 주요한 엔티티와의 관계(예컨대, "영화에서 연기를 하는(acted in)")를 식별할 수 있다.
시스템은 검색 질의에 응답하여 관련 엔티티들이 식별되어야 함을 판정한다(단계 310). 검색 질의에 응답하여 관련 엔티티들이 식별되어야 하는지를 판정하는 것은 도 5를 참조하여 하기에 기술될 것이다.
시스템은 검색 질의에 대한 응답의 부분으로서 관련 엔티티들을 식별하는 정보를 전송한다(단계 312). 관련 엔티티들을 식별하는 정보는 예컨대, 사용자에게 제시되기 위해 검색 결과 웹 페이지에 포함되고 사용자 디바이스에 전송될 수 있다. 관련 엔티티들을 식별하는 정보는 링크의 형태로 사용자에게 제시되는 각각의 엔티티의 이름을 포함할 수 있고, 상기 링크는 사용자에 의해 선택될 때, 검색 엔진, 예컨대 도 2의 검색 엔진(230)에 엔티티의 이름으로부터 파생된 검색 질의를 제출한다. 엔티티의 이름으로부터 파생된 검색 질의는 엔티티의 이름으로만 구성된 질의가 모호한 것으로 판정되는지에 따라, 관련 엔티티의 이름만을 포함하거나 또는 이름 및 예컨대, 관련 엔티티의 하나 이상의 타입 및 주요한 엔티티의 이름을 포함할 수 있다.
검색 질의는, 상기 검색 질의에 대한 검색 결과들이 상기 검색 질의가 어떤 하나의 특정 엔티티를 대상으로 하지 않음을 나타내는 경우, 모호한 것으로 판정될 수 있다. 즉, 검색 질의에 대한 검색 결과들의 분석 후, 검색 질의가 어떤 엔티티를 대상으로 하지 않는 것으로 판정되거나 또는 하나보다 많은 엔티티를 대상으로 하는 것으로 판정되는 경우, 상기 검색 질의는 모호한 것으로 판정된다. 검색 질의에 대한 검색 결과들의 분석으로부터 상기 검색 질의가 엔티티를 대상으로 하는 것으로 판정하는 것은 도 4를 참조하여 하기에 더욱 상세히 기술된다. 검색 결과들이 모호한 경우, 링크는 사용자에 의해 선택될 때, 엔티티의 이름 및 관련 엔티티의 하나 이상의 타입 및 주요한 엔티티의 이름를 포함하는 질의를 제출한다.
관련 엔티티들을 식별하는 정보는 옵션에 따라서는, 관련 엔티티들의 이름들 대신 또는 상기 이름들에 더하여, 관련 엔티티에 대응하는 이미지를 포함할 수 있다. 엔티티들의 이름들과 유사하게, 각각의 이미지는 링크의 형태로 제시될 수 있고, 상기 링크는 사용자에 의해 선택될 때, 검색 엔진에 엔티티의 이름 - 이미지가 상기 이름에 대응한다 - 으로부터 파생된 검색 질의를 제출한다. 시스템은, 이미지 검색 엔진에 엔티티의 이름으로부터 파생된 검색 질의를 제출하고 검색 질의에 대한 이미지 검색 결과들에 의해 식별된 이미지들로부터 이미지를 선택함으로써(예컨대, 가장 높은 순위의 이미지 검색 결과에 의해 식별된 이미지를 선택함으로써) 관련 엔티티에 대한 대응하는 이미지를 획득할 수 있다. 엔티티의 이름으로부터 파생된 질의는 예컨대, 상기에 기술된 기법을 이용하여 모호하지 않은 것으로 판정된 질의일 수 있다. 또한, 일부 구현들에서, 시스템은 예컨대, 미리 결정된 범위의 종횡비들 내에 속하는 종횡비를 가지는 특별한 미리 결정된 특성들을 가지는 이미지들을 선호한다. 즉, 시스템은, 이미지를 식별하는 이미지 검색 결과가 미리 결정된 임계값을 만족하는 순위를 가지거나 또는 미리 결정된 임계 스코어를 만족하는 스코어를 가지는 것을 고려하여, 미리 결정된 특성들과 매치되는 특성들을 가진 이미지들만을 선택할 수 있다.
대안적으로는, 시스템은 엔티티들에 대한 이미지들을 제공하는 인덱스를 유지할 수 있다. 관련 엔티티들을 식별하는 정보는 또한, 옵션에 따라서는 인덱스 내의 관련 엔티티들과 연관된(associated) 메타데이터를 포함할 수 있다. 예를 들어, "책" 타입의 엔티티의 경우, 메타데이터는 책이 본래 출판된 연도를 식별할 수 있다.
도 4는 검색 질의가 특정 엔티티를 대상으로 하는지를 판정하기 위한 예시적인 프로세스(400)의 순서도이다. 편의를 위해, 프로세스(400)는 하나 이상의 위치들에 위치된 하나 이상의 컴퓨터들의 시스템에 의해 수행되는 것으로서 기술될 것이다. 예를 들어, 적절하게 프로그래밍된 검색 시스템, 예컨대 도 2의 검색 시스템(214)은 프로세스(400)를 수행할 수 있다.
시스템은 검색 엔진으로부터 검색 질의에 대한 검색 결과들을 획득한다(단계 402).
시스템은 검색 결과들에 의해 식별되는 충분한 수의 리소스들이 특정 엔티티에 대한 권위적 리소스들인지를 판정한다(단계(404)). 예를 들어, 시스템은 특정 엔티티에 대한 권위적 리소스들인 리소스들의 카운트가 임계값을 초과하는지를 판정할 수 있다. 어느 리소스들이 권위적 리소스들인지를 판정함에 있어서, 시스템은 옵션에 따라서는, 특정 수의 가장 높은 순위의 검색 결과들 또는 검색 엔진에 의해 검색 결과들에 할당된, 임계값을 초과하는 스코어를 가지는 검색 결과들에 의해 식별되는 리소스들을 고려할 수 있다.
시스템은 인덱스, 예컨대 엔티티들에 권위적 리소스들을 매핑하는, 도 2의 관련 엔티티 데이터베이스(250)에 포함된 인덱스에 액세스함으로써 검색 결과에 의해 식별되는 리소스가 어떤 엔티티들에 대한 권위적 리소스인지를 판정한다. 엔티티에 대한 권위적 리소스는 검색 결과들에서의 발생이 검색 질의가 엔티티를 대상으로 함을 나타내는 강한 표시자(strong indicator)인 것으로 판정된 리소스이다. 어느 엔티티들이 권위적인지를 판정하는 것 및 인덱스를 구축하는 것이 도 6을 참조하여 하기에 기술된다.
특정 엔티티에 대한 권위적 리소스들인 리소스들의 수가 충분한 경우, 시스템은 검색 질의를 특정 엔티티를 대상으로 하는 것으로서 분류한다(단계 406).
불충분한 수의 리소스들이 특정 엔티티에 대한 권위적 리소스들인 경우, 시스템은 검색 질의를 특정 엔티티를 대상으로 하지 않는 것으로서 분류한다(단계 408).
도 5는 특별한 검색 질의에 응답하여 관련 엔티티들이 식별되어야 하는지를 판정하기 위한 예시적인 프로세스(500)의 순서도이다. 편의를 위해, 프로세스(500)는 하나 이상의 위치들에 위치된 하나 이상의 컴퓨터들의 시스템에 의해 수행되는 것으로서 기술될 것이다. 예를 들어, 적절하게 프로그래밍된 검색 시스템, 예컨대 도 2의 검색 시스템(214)은 프로세스(500)를 수행할 수 있다.
시스템은 검색 엔진으로부터 검색 질의에 대한 검색 결과들을 획득한다(단계 502). 검색 질의는 예컨대, 도 4를 참조하여 상기에 기술된 프로세스를 수행함으로써 특정 엔티티 타입의 하나 이상의 엔티티들에 관련된 특정 엔티티를 대상으로 하는 것으로 판정된 질의이다. 시스템은 또한, 검색 결과들에 의해 식별되는 리소스들 중 적어도 일부에 대해 리소스들 각각과 관련된 하나 이상의 엔티티 타입들을 식별하는 데이터를 획득한다. 예를 들어, 데이터는 엔티티 타입들 "차" 및 "영화"를 일 검색 결과에 의해 식별되는 일 리소스에 관련되는 것으로서 식별할 수 있고, 엔티티 타입들 "연기자" 및 "저자"를 다른 검색 결과에 의해 식별되는 다른 리소스에 관련되는 것으로서 식별할 수 있으며, 기타 등등 역시 이러한 방식으로 식별한다.
시스템은 검색 결과들에 의해 식별되는 임계 수보다 많은 리소스들이 특정 엔티티에 대한 참조들을 포함하는지를 판정한다(단계 504). 어느 리소스들이 특정 엔티티에 대한 참조들을 포함하는지를 판정함에 있어서, 시스템은 옵션에 따라서는 미리 결정된 수의 가장 높은 순위의 검색 결과들에 의해 또는 검색 엔진에 의해 검색 결과들에 할당된, 임계값을 초과하는 스코어를 가지는 검색 결과들에 의해 식별되는 리소스들만을 고려할 수 있다. 예를 들어, 시스템은 검색 결과에 의해 식별되는 리소스로부터 추출된 제목 또는 텍스트 토막 내의 특정 엔티티로의 적어도 하나의 인식된 참조, 예컨대 특정 엔티티에 대한 알려진 이름을 포함하는 가장 높은 순위의 검색 결과들의 비율(proportion)이 임계값을 초과하는지를 판정할 수 있다. 예를 들어, 시스템은 상위 5개의 가장 높은 순위의 검색 결과들 중 두 개 또는 상위 10개의 가장 높은 순위의 검색 결과들 중 세 개 또는 상위 100개의 가장 높은 순위의 검색 결과들 중 30개가 특정 엔티티에 대한 인식된 참조를 포함하는지를 판정할 수 있다.
검색 결과들에 의해 식별되는 불충분한 수의 리소스들이 특정 엔티티에 대한 참조들을 포함하는 경우, 시스템은 검색 질의에 응답하여 관련 엔티티들이 식별되지 않아야 함을 판정한다(단계 510).
검색 결과들에 의해 식별되는 충분한 수의 리소스들이 특정 엔티티에 대한 참조들을 포함하는 경우, 시스템은, 검색 엔진으로부터 획득되는 관련 엔티티 타입들에 관한 데이터를 이용하여 관련 엔티티들의 엔티티 타입이 검색 결과들에 의해 식별되는 임계 수보다 많은 리소스들에 관련되는지를 판정한다(단계 506). 어느 리소스들이 관련 엔티티들의 타입과 매치되는 관련 엔티티 타입을 가지는지를 판정함에 있어서, 시스템은 옵션에 따라서는, 특정 수의 가장 높은 순위의 검색 결과들 또는 검색 엔진에 의해 검색 결과들에 할당된, 임계값을 초과하는 스코어를 가진 검색 결과들에 의해 식별되는 리소스들만을 고려할 수 있다. 예를 들어, "저자" 타입의 엔티티를 대상으로 하는 것으로 판정된 검색 질의의 경우, "책" 타입의 하나 이상의 엔티티들은 저자와 관계를 가질 수 있다. 그 다음, 시스템은 검색 질의에 대한 응답의 부분으로서 상기 저자와 관련된 책들의 이름을 리턴하도록 판정하기 전에, 미리 결정된 수의 가장 높은 순위의 검색 결과들에 의해 식별되는 충분한 수의 리소스들이 "책"의 관련 엔티티 타입을 가지는지를 체크할 수 있다.
검색 결과들에 의해 식별되는 충분한 수의 리소스들이 관련 엔티티들의 타입과 매치되는 관련 엔티티 타입을 가지는 경우, 시스템은 검색 질의에 응답하여 관련 엔티티들이 식별되는 것으로 판정한다(단계 508).
검색 결과들에 의해 식별되는 불충분한 수의 리소스들이 관련 엔티티들의 타입과 매치되는 관련 엔티티 타입을 가지는 경우, 시스템은 검색 질의에 응답하여 관련 엔티티들이 식별되지 않는 것으로 판정한다(단계 510).
일부 구현들에서, 시스템은 검색 질의를 하나 이상의 특별한 클래스들에 속하거나 또는 속하지 않은 것으로서 특징 짓는 정보로의 액세스를 가진다. 시스템은 예컨대, 검색 결과들이 획득되는 검색 엔진에 포함된 하나 이상의 서비스들로부터 정보를 획득할 수 있다. 예를 들어, 시스템은, 검색 질의를 잠재적으로 외설적인, 항행적인 또는 로컬한 질의 중 하나 이상으로서 특징짓거나 또는 검색 질의를 정보의 특별한 항목을 찾는 질의로서 특징짓는 데이터를 획득할 수 있다. 이러한 구현들에서, 심지어 검색 질의에 응답하여 관련 엔티티들을 식별하기 위한 다른 기준이 만족되는 경우에도, 정보가 검색 질의가 특별한 경우들 중 하나 이상에 속한다고 나타내면 검색 질의에 대한 응답의 부분으로서 관련 엔티티들에 관한 정보를 리턴하는 것을 삼가할 수 있는 바, 그 이유는 예컨대 관련 엔티티들의 이름들을 리턴하는 것이 사용자에게 부적절하거나 또는 바람직하지 않을 수 있기 때문이다.
도 6은 관련 엔티티들을 선택하는 데 있어 사용될 인덱스들을 구축하기 위한 예시적인 프로세스(600)의 순서도이다. 편의를 위해, 프로세스(600)는 하나 이상의 위치들에 위치된 하나 이상의 컴퓨터들의 시스템에 의해 수행되는 것으로서 기술될 것이다. 예를 들어, 적절하게 프로그래밍된 검색 시스템, 예컨대 도 2의 검색 시스템(214)은 프로세스(600)를 수행할 수 있다.
프로세스(600)는 복수의 타입들의 복수의 엔티티들에 대해 수행될 수 있다. 시스템은 특별한 타입의 특정 엔티티를 식별하는 데이터를 획득한다(단계 602).
획득된 데이터는 특정 엔티티에 대한 하나 이상의 이름들을 포함하고, 엔티티의 타입을 식별한다. 획득된 데이터는 또한, 옵션에 따라서는 엔티티와 연관된 하나 이상의 리소스들을 식별할 수 있다. 예를 들어, 저자 J.R.R Tolkien의 경우, 획득된 데이터는 엔티티의 이름 "J.R.R. Tolkien" 을 포함하고 엔티티의 타입 "저자"를 식별할 수 있다. 데이터는 또한, 옵션에 따라서는 저자 J.R.R Tolkien와 연관된 하나 이상의 리소스들에 대한 리소스 로케이터들 예컨대, 저자를 대상으로 하는 온라인 백과사전 페이지 또는 저자의 공식 웹페이지를 포함할 수 있다. 일부 상황들에서, 획득된 데이터는 특정 엔티티에 대한 하나보다 많은 타입을 식별할 수 있다. 예를 들어, 데이터는 Will Smith를 "연기자" 타입 및 "음악가" 타입으로서 특징지을 수 있다.
시스템은 다양한 소스들로부터 엔티티들을 식별하는 데이터를 획득할 수 있다. 예를 들어, 일 소스는, 엔티티들을 표시하는 노드들을 포함하고 노드에 의해 표시되는 각각의 엔티티의 타입을 식별하는 구조화된 데이터의 온라인 데이터베이스일 수 있다. 존재하는 구조화된 데이터의 온라인 데이터베이스의 일례는 인터넷 상에서 http://www.freebase.com에 액세스가능한 FREEBASE 데이터베이스이다. 다른 소스들은 엔티티들의 그룹 각각을 대상으로 하는 페이지들을 가진 온라인 백과사전들 및 특별한 타입의 엔티티들을 대상으로 하는 웹사이트들, 예컨대 영화들 및 영화에 관련된 엔티티들(예컨대 연기자들, 감독들 및 프로듀서들)를 대상으로 하는 리소스들을 포함하는 웹페이지를 포함할 수 있다.
시스템은 하나 이상의 리소스들을 특정 엔티티에 대한 권위적 리소스들로서 식별한다(단계 604). 엔티티를 식별하는 획득된 데이터가 또한, 엔티티와 연관된 리소스들을 식별하는 경우, 시스템은 이 리소스들을 엔티티에 대한 권위적 리소스들로서 선택할 수 있다. 예를 들어, 엔티티에 대한 온라인 백과사전 페이지는 엔티티와 관련된 다른 리소스들 예컨대, 엔티티의 공식 웹사이트로의 링크들을 포함할 수 있다. 추가적으로, 엔티티와 관련된 리소스들은, 예컨대 다른 노드로의 링크 또는 엔티티의 속성(property)을 표시하는 링크의 방식에 의해 구조화된 데이터의 온라인 데이터베이스 내의 특정 엔티티를 표시하는 노드와 연관될 수 있다.
데이터가 엔티티에 대한 어떤 연관 리소스들을 식별하지 못하는 경우 또는 데이터에 의해 엔티티에 대해 식별되는 리소스들을 증가시키기 위하여, 시스템은 검색 엔진에 엔티티의 이름 또는 이름들로부터 파생된 검색 질의를 제출하고 검색 질의에 대한 검색 결과들을 획득할 수 있다. 그 다음, 시스템은 획득된 검색 결과들에 의해 식별되는 리소스들로부터 특별한 리소스들을 엔티티에 대한 권위적 리소스들로서 선택할 수 있다. 예를 들어, 시스템은 특정 수의 가장 높은 스코어의 검색 결과들 또는 임계 스코어를 초과하는 스코어를 가지는 각각의 검색 결과를 선택할 수 있다.
시스템은 인덱스 내의 특정 엔티티와 권위적 리소스들을 연관시킨다(단계 606). 예를 들어, 특정 엔티티에 대한 각각의 권위적 리소스에 대해, 시스템은 즉, 리소스의 리소스 로케이터와 특정 엔티티 간의 연관성을 정의하는 데이터로부터 매핑을 생성할 수 있다. 인덱스는 예컨대, 관련 엔티티 인덱스 데이터베이스(250)에 포함된 인덱스들 중 하나일 수 있다.
획득된 데이터가 특정 엔티티에 대해 하나보다 많은 엔티티 타입을 식별하는 경우, 시스템은 타입들 중 하나를 인덱스 내의 특정 엔티티에 대한 입력에 대한 엔티티 타입으로서 선택할 수 있다. 예를 들어, 시스템은 특정 엔티티의 이름으로부터 파생된 검색 질의에 대한 검색 결과들을 획득할 수 있다. 미리 결정된 수의 가장 높은 순위의 검색 결과들 각각에 대해, 시스템은 예컨대, 리소스들과 관련되는 엔티티 타입들을 식별하는 서비스로부터 검색 결과에 의해 식별되는 리소스에 대한 관련 엔티티 타입들을 식별하는 데이터를 획득할 수 있다. 그 다음, 시스템은 관련 엔티티 타입들에 근거하여 특정 엔티티에 대한 엔티티 타입들 중 하나를 선택할 수 있는 바, 예컨대 대부분의 리소스들과 관련되는 엔티티 타입을 특정 엔티티에 대한 엔티티 타입으로서 선택할 수 있다.
대안적으로는, 시스템은 그 엔티티에 대한 타입들 각각에 대해 인덱스에 입력을 생성할 수 있는 바, 예컨대 "연기자" Will Smith에 대한 일 입력 및 "음악가" Will Smith에 대한 일 입력을 생성할 수 있으며, 타입들 각각에 대해 각각의 입력과 식별된 권위적 리소스들 중 하나 이상을 연관시킬 수 있다. 시스템은 데이터를 획득함으로써 권위적 리소스들 중 어느 것이 특정 엔티티에 대한 입력들 각각과 연관되는지를 선별할 수 있으며, 상기 데이터는 권위적 리소스들 각각에 대해, 그 권위적 리소스에 대한 관련 엔티티 타입들을 식별한다. 특정 엔티티에 대한 인덱스 입력들 각각에 대해, 그 다음, 시스템은 그 입력에 대해 엔티티 타입과 매치되는 관련 엔티티 타입을 가지는 권위적 리소스들을 연관시킨다.
예를 들어, Will Smith가 "연기자" 및 "음악가" 둘 모두로 식별되는 경우, 시스템은 Will Smith에 대한 두 개의 권위적 리소스들 즉, 연기자들 및 영화들에 관한 웹 페이지로부터 Will Smith을 대상으로 하는 웹 페이지 및 음악가들에 대한 소셜 미디어 웹 사이트로부터 Will Smith를 대상으로 하는 웹 페이지를 식별할 수 있다. 시스템은 권위적 리소스들 각각에 대한 가장 관련있는 엔티티 타입들을 식별하는 데이터를 획득하고, "연기자" 타입을 가지는 엔티티 "Will Smith"와 연기자들 및 영화들에 관한 웹 사이트로부터의 페이지를 연관시킬 수 있는 바, 그 이유는 예컨대, 획득된 데이터는 엔티티 타입 "연기자"가 상기 페이지와 관련됨을 나타냈기 때문이다. 시스템은 또한, 엔티티 타입 "음악가"를 가지는 엔티티 "Will Smith"와 소셜 미디어 웹 사이트로부터의 페이지를 연관시킬 수 있는 바, 그 이유는 예컨대, 획득된 데이터는 엔티티 타입 "음악가"가 상기 페이지와 관련됨을 나타냈기 때문이다.
시스템은 특정 엔티티와 관계를 가지는 다른 엔티티들을 식별하는 데이터를 획득한다(단계 608). 특정 엔티티가 하나보다 많은 타입을 가지는 경우, 시스템은 타입들 각각에 대한 다른 엔티티들을 식별하는 데이터를 획득한다. 바람직한 타입의 관계가 미리 판정될 수 있는 바, 예컨대, 시스템 관리자에 의해 특정될 수 있다. 다시 말해, 시스템 관리자는 "저자" 타입의 엔티티들에 대해, 획득된 데이터가 상기 저자에 의해 쓰여진 "책" 타입의 엔티티들을 식별해야함을 특정할 수 있다.
시스템은 예컨대, 엔티티를 식별하는 데이터가 획득된 동일한 소스 또는 추가적인 소스들로부터 다른 엔티티들 및 엔티티와 이들의 관계를 식별하는 데이터를 획득할 수 있다. 예를 들어, 시스템은 엔티티와 관련되는 엔티티들을 식별하는 데이터를 획득하기 위해 구조화된 데이터의 온라인 데이터베이스에 질의할 수 있다. 예를 들어, 연기자를 나타내는 엔티티의 경우, 시스템은 연기자가 연기한 하나 이상의 영화들을 식별하는 데이터를 획득하기 위해 구조화된 데이터의 온라인 데이터베이스에 질의할 수 있다. 추가적으로, 엔티티에 관한 온라인 백과사전에서의 페이지는 엔티티와 관련되는 다른 엔티티들을 식별할 수 있다. 예를 들어, 뮤지컬 아티스트에 대한 온라인 백과사전 페이지는 상기 뮤지컬 아티스트에 의한 앨범들, 상기 뮤지컬 아티스트의 인기있는 음악들 및 기타 등등을 식별할 수 있다.
시스템은 특정 엔티티와 미리 결정된 관계를 가지는 엔티티들을 순서화한다(단계 610). 일부 구현들에서, 시스템은 관련 엔티티들이 데이터 소스로부터 시스템에 의해 수신된 순서에 따라 상기 관련 엔티티들을 순서화한다. 그러나, 다른 구현들에서, 시스템은 예컨대, 특정 엔티티를 대상으로 하는 검색 질의들을 제출한 사용자들이 상기 특정 엔티티와 관련되는 엔티티들 중의 특정 엔티티들에 관한 정보에 더욱 관심있음을 고려하기 위해 관련 엔티티들을 재순서화한다. 관련 엔티티들을 순서화하는 것은 도 7을 참조하여 하기에 기술된다.
시스템은 인덱스 내의 특정 엔티티와 관련 엔티티들을 연관시킨다(단계 612). 예를 들어, 시스템은 특정 엔티티로부터 관련 엔티티들 각각으로의 매핑을 생성할 수 있다. 상기 매핑은 또한, 관련 엔티티들의 타입 및, 옵션에 따라서는 특정 엔티티와 관련 엔티티들과의 사이의 관계의 성격(nature)을 식별할 수 있다. 인덱스는 예컨대, 관련 엔티티 인덱스 데이터베이스(250)에 포함된 인덱스들 중 하나일 수 있다. 시스템은 특정 엔티티를 대상으로 하는 검색 질의에 응답하여 관련 엔티티들이 사용자에게 제시되기 위해 선택될 때, 관련 엔티티들이 시스템에 의해 생성된 순서와 매치되는 순서로 제시되는 방식으로 매핑을 생성할 수 있다.
일부 구현들에서, 시스템은 또한, 데이터 소스들 중 하나로부터 관련 엔티티들 각각에 관한 추가적인 정보를 획득하고, 예컨대, 도 1을 참조하여 상기에 기술된 바와 같이 사용자에게 나중에 디스플레이하기 위해, 인덱스에 추가적인 정보를 예컨대, 관련 엔티티와 연관된 메타데이터로서 저장한다. 획득된 데이터는 관련 엔티티들의 타입 및 관련 엔티티들과 특정 엔티티 간의 관계에 좌우될 수 있다. 예를 들어, 특정 엔티티가 "영화" 타입의 엔티티이고, 관련 엔티티들이 영화에서 연기한 "연기자" 타입의 엔티티들인 경우, 추가적인 정보는 관련 엔티티들 각각이 배역을 맡은 캐릭터의 이름을 포함할 수 있다. 그러나, 특정 엔티티가 "저자" 타입의 엔티티이고, 관련 엔티티들이 상기 저자에 의해 쓰여진 "책" 타입의 엔티티들인 경우, 추가적인 정보는 관련 엔티티들 각각이 처음 출판된 년도를 포함할 수 있다. 따라서, 추가적인 정보는 그 엔티티의 특정 엔티티와의 관계에 의해 관련 엔티티가 소유하는 속성의 값일 수 있다.
도 7은 관련 엔티티들을 순서화하기 위한 예시적인 프로세스(700)의 순서도이다. 편의를 위해, 프로세스(700)는 하나 이상의 위치들에 위치된 하나 이상의 컴퓨터들의 시스템에 의해 수행되는 것으로서 기술될 것이다. 예를 들어, 적절하게 프로그램된 검색 시스템, 예컨대 도 2의 검색 시스템은 프로세스(500)를 수행할 수 있다.
시스템은 특정 엔티티에 대한 관련 엔티티들을 식별하는 데이터를 획득한다(단계 702).
시스템은 관련 엔티티들 각각에 대한 순위 스코어를 판정한다(단계 704). 시스템은 다양한 인자 별 스코어(factor-specific score)들 중 둘 이상을 집계(aggregating)함으로써 순위 스코어들을 판정하고, 각각의 인자 별 스코어는 각각의 인자에 근거하여 컴퓨팅된다.
예를 들어, 시스템은 각각의 관련 엔티티에 대한 인식된 참조, 예컨대 관련 엔티티의 알려진 이름이 인덱싱 엔진, 예컨대 도 2의 인덱싱 엔진(220)에 의해 인덱스된 리소스들 내의 특정 엔티티에 대한 인식된 참조와 얼마나 빈번하게 공동 발생되는지에 근거하여 관련 엔티티들 각각에 대한 스코어를 생성할 수 있어서, 특정 엔티티와 더 빈번하게 공동 발생되는 관련 엔티티들은 특정 엔티티와 덜 빈번하게 공동 발생되는 관련 엔티티들보다 높은 스코어를 가진다.
다른 예로서, 시스템은 특정 엔티티를 대상으로 하는 질의를 제출한 후에 각각의 관련 엔티티가 사용자에 의해 얼마나 빈번하게 검색되는지에 근거하여 관련 엔티티들 각각에 대한 스코어를 생성할 수 있다. 예를 들어, 시스템은, 관련 엔티티들 각각에 대해, 특정 엔티티에 대한 인식된 참조를 포함하는 초기 검색 질의를 제출한 후에 예컨대, 상기 초기 검색 질의를 제출한 바로 다음에, 사용자들이 관련 엔티티에 대한 인식된 참조를 포함하는 검색 질의들을 얼마나 빈번하게 제출하는지를 식별하는 데이터를 획득할 수 있다. 나중의 검색 질의가 이전의 검색 질의를 제출한 미리 결정된 시간의 윈도우 내에 제출되는 경우 및 이전의 검색 질의가 제출된 후에 나중의 검색 질의가 제출될 때 어떠한 추가적인 검색 질의들도 사용자에 의해 제출되지 않는 경우, 나중의 검색 질의는 이전의 검색 질의 바로 다음에 제출되는 것이라고 고려될 수 있다. 시스템은, 특정 엔티티를 대상으로 하는 질의를 제출한 후에 더욱 빈번하게 검색되는 관련 엔티티들이 특정 엔티티를 대상으로 하는 질의를 제출한 후에 덜 빈번하게 검색되는 관련 엔티티들보다 큰 스코어들을 가지도록 스코어들을 생성할 수 있다.
다른 예로서, 시스템은 관련 엔티티들 각각의 전역적인 인기에 근거하여 관련 엔티티들 각각에 대한 스코어를 생성할 수 있다. 관련 엔티티의 전역적인 인기는 관련 엔티티에 대한 인식된 참조가 인덱싱 엔진에 의해 인덱스되는 리소스들에 얼마나 빈번하게 나타나는지, 관련 엔티티에 대한 인식된 참조가 이전에 제출된 검색 질의들, 즉 사용자들에 의해 검색 엔진에 제출된 질의들의 레코드에 저장된 검색 질의들에 얼마나 빈번하게 나타나는지 또는 이 두 가지 모두에 근거하여 측정될 수 있다. 대안적으로는, 관련 엔티티의 전역적인 인기는, 관련 엔티티에 대한 권위적 리소스들이 이전에 제출된 질의들에 대한 검색 결과들에서 얼마나 빈번하게 식별되는지에 적어도 부분적으로 근거할 수 있다. 예를 들어, 전역적인 인기는 이전에 제출된 질의들 - 이 질의들에 대해 관련 엔티티에 대한 권위적 리소스가 미리 결정된 수의 가장 높은 순위의 검색 결과들 중 하나에 의해 식별된다 - 의 수에 적어도 부분적으로 근거할 수 있다. 시스템은, 다른 엔티티보다 높은 전역적인 인기를 가지는 관련 엔티티가 낮은 전역적인 인기를 가지는 관련 엔티티보다 높은 스코어를 가지게 되도록 스코어들을 생성할 수 있다.
다른 예로서, 시스템은, 관련 엔티티에 대한 인식된 참조가 특정 엔티티에 대한 인식된 참조와 동일한 이전에 제출된 검색 질의에서 얼마나 빈번하게 공동 발생되는지에 근거하여 관련 엔티티들 각각에 대한 스코어를 생성할 수 있어서, 예컨대 이전에 제출된 검색 질의들에서 특정 엔티티와 더욱 빈번하게 공동 발생되는 관련 엔티티들은 특정 엔티티와 덜 빈번하게 공동 발생되는 관련 엔티티들보다 높은 스코어들을 가진다.
그 다음, 시스템은 엔티티에 대한 인자 별 스코어들에 근거하여 각각의 관련된 엔티티에 대한 순위 스코어를 생성할 수 있다. 시스템은 예컨대, 엔티티에 대한 인자 별 스코어들을 표준화하고(normalizing) 그 다음 표준화된 스코어들의 평균을 컴퓨팅하거나, 표준화된 스코어들의 합을 컴퓨팅하거나, 표준화된 스코어들의 곱을 컴퓨팅하거나 또는 그렇지 않으면 표준화된 스코어들을 집계함으로써 소정 엔티티에 대한 순위 스코어를 생성할 수 있다.
시스템은 관련 엔티티들의 순위 스코어들에 따라 관련 엔티티들을 순서화한다(단계 706). 일부 구현들에서, 시스템은 엔티티들의 순위 스코어들에 따라 엔티티들을 순서화한 후에 관련 엔티티들의 순서를 더 조정할 수 있다. 특히, 시스템은 엔티티들의 하나 이상의 세트들에 대한 순서를 특정하는 데이터로의 액세스를 가질 수 있다. 예를 들어, 데이터는 영화들 특히, 3부작 영화(movie trilogy)가 이들의 개봉 날짜에 의해 순서화되거나 또는 미국의 대통령들이 이들의 임기가 시작하거나 또는 끝나는 날짜에 의해 순서화되어야 함을 특정할 수 있다. 데이터가, 관련 엔티티들 중 둘 이상이 특정된 순서를 가지는 엔티티들의 세트의 멤버들이라고 나타내는 경우, 시스템은 상기 특정된 순서와 매치되도록 상기 세트의 멤버들의 순서를 조정할 수 있다. 일부 구현들에서, 엔티티들의 세트의 멤버들이 관련 엔티티들의 순서에 있어서 다른 엔티티들에 의해 분리되는 경우, 시스템은 특정된 순서와 매치되도록 상기 세트의 멤버들을 재순서화하고, 예컨대 상기 세트 내의 가장 높은 순위의 엔티티의 위치에서 또는 상기 세트 내의 엔티티들의 평균 위치에서 시작하여 관련 엔티티들의 순서로 상기 세트의 재순서화된 멤버들을 함께 위치시킨다. 일부 다른 구현들에서, 엔티티들의 세트의 멤버들이 관련 엔티티들의 순서에 있어서 다른 엔티티들에 의해 분리되는 경우, 시스템은 특정된 순서와 매치되도록 상기 세트의 멤버들의 순서를 조정하지 못하게 한다.
다른 예로서, 시스템은 넓은 엔티티의 부분으로서 잘 알려진 엔티티들의 세트들을 식별하는 데이터로의 액세스를 가질 수 있다. 예를 들어, 데이터는 인기있는 책 시리즈를 구성하는 개별적인 책들이 개별적인 책들로서 보다는 이 시리즈의 부분으로 잘 알려져 있다고 나타낼 수 있다. 데이터가, 관련 엔티티들 중 일부 또는 전부가 넓은 엔티티에 포함된다고 나타내는 경우, 시스템은 넓은 엔티티와 순서대로 된 이 관련 엔티티들을 교체할 수 있다. 예를 들어, 저자에 대한 관련 엔티티들은 그 저자에 의해 쓰여진 책들을 포함할 수 있다. 저자가 잘 알려진 3부작 책들을 썼고, 이 책들이 상기 저자에 대한 관련 엔티티들에 포함되는 경우, 시스템은 삼부작을 나타내는 단일 엔티티와 그 삼부작 내의 책들을 교체할 수 있다. 일부 구현들에서, 넓은 엔티티의 부분으로서 잘 알려진 엔티티들의 세트 내의 엔티티들이 관련 엔티티들의 순서의 다른 엔티티들에 의해 분리되는 경우, 시스템은 셋트 내의 가장 높은 순위의 엔티티의 위치에서 순서대로 넓은 엔티티를 위치시킨다. 대안적으로는, 시스템은 세트 내의 엔티티들의 위치들의 평균인 위치에서 순서대로 넓은 엔티티를 위치시킬 수 있다. 일부 다른 구현들에서, 시스템은 세트 내의 엔티티들이 관련 엔티티들의 순서의 다른 엔티티들에 의해 분리되는 경우, 넓은 엔티티와 세트 내의 엔티티들을 교체하지 못하게 할 수 있다.
프로세스들(600 및 700)이 특정 엔티티와 관련된 엔티티들을 식별하는 데이터를 획득하고, 그 다음 관련 엔티티들을 순서화하는 것을 기술하는 바, 일부 상황들에서 예컨대, 관련 엔티티들이 특별환 엔티티와 동일한 타입을 가질 때, 시스템은 특정 엔티티와 관련된 엔티티들을 식별하기 위해 획득된 데이터에 의해 식별되는 후보 엔티티들을 수정(refine)할 수 있다. 예를 들어, "사람" 타입의 특정 엔티티에 대해, 시스템은 구조화된 데이터의 온라인 데이터베이스 내의 노드들에 의해 표시되는 "사람" 타입의 많은 수의 다른 엔티티들을 식별하는 데이터를 획득할 수 있다. 그 다음, 시스템은 특정 엔티티와 관련된 "사람" 타입의 엔티티들을 식별하기 위해 획득된 엔티티들을 수정할 수 있다.
도 8은 엔티티를 동일한 타입의 관련 엔티티들에 매핑하기 위한 예시적인 프로세스(800)의 순서도이다. 편의를 위해, 프로세스(800)는 하나 이상의 위치들에 위치된 하나 이상의 컴퓨터들의 시스템에 의해 수행되는 것으로서 기술될 것이다. 예를 들어, 적절하게 프로그램된 검색 시스템, 예컨대 도 2의 검색 시스템(214)은 프로세스(800)를 수행할 수 있다.
프로세스(800)는 복수의 타입들의 복수의 엔티티들에 대해 수행될 수 있다. 예를 들어, 프로세스(800)는 각각의 타입에 대해 수행될 수 있으며, 상기 각각의 타입에 대해, 소정 타입의 엔티티에 관한 검색 질의에 응답하여, 소정 엔티티와 관련된 타입의 다른 엔티티들을 식별하는 정보를 리턴하는 것이 바람직할 수 있는 바, 그 이유는 예컨대, 사용자들이 종종, 상기 타입의 엔티티를 참조하는 초기 질의를 제출한 후에 상기 타입의 다른 엔티티들을 참조하는 추가적인 검색 질의들을 제출하기 때문이다.
시스템은 특별한 타입의 특정 엔티티를 식별하는 데이터를 획득한다(단계 802). 획득된 데이터는 특정 엔티티에 대한 하나 이상의 이름들을 포함하고, 엔티티의 타입을 식별한다. 시스템은, 예컨대, 구조화된 데이터의 온라인 데이터베이스로부터 데이터를 획득할 수 있다.
시스템은 특정 엔티티와 관련되는 특별한 타입의 다른 엔티티들을 식별한다(단계 804). 예를 들어, 시스템은 특별한 타입의 다른 엔티티들을 식별하는 데이터를 획득하기 위해 구조화된 데이터의 온라인 데이터베이스에 질의할 수 있다. 그 다음, 시스템은 각각의 다른 엔티티에 대한 인식된 참조가 인덱싱 엔진, 예컨대 도 2의 인덱싱 엔진(220)에 의해 인덱스되는 리소스들 내의 특정 엔티티에 대한 인식된 참조와 얼마나 빈번하게 공동 발생되는지에 근거하여 특정 엔티티와 관련되는 특별한 타입의 엔티티들을 식별할 수 있다. 예를 들어, 시스템은 특정 엔티티와 가장 빈번하게 공동 발생되는 미리 결정된 수의 다른 엔티티들을 관련 엔티티들로서 선택할 수 있다. 대안적으로는, 시스템은 임계 빈도를 초과하는 빈도에서 특정 엔티티와 공동 발생되는 이러한 다른 엔티티들을 관련 엔티티들로서 선택할 수 있다.
시스템은 관련 엔티티들을 순서화한다(단계 806). 시스템은 각각의 관련 엔티티에 대한 인식된 참조가 인덱싱 엔진에 의해 인덱스되는 리소스들 내의 특정 엔티티에 대한 인식된 참조와 얼마나 빈번하게 공동 발생되는지에 근거하여 각각의 관련 엔티티에 대한 공동 발생(cooccurrence) 스코어를 계산할 수 있어서, 예컨대 특정 엔티티와 더 빈번하게 공동 발생되는 관련 엔티티들은 특정 엔티티와 덜 빈번하게 공동 발생되는 관련 엔티티들보다 높은 공동 발생 스코어를 가진다.
시스템은 또한, 특정 엔티티를 대상으로 하는 검색 질의를 제출한 후에 각각의 관련 엔티티가 사용자들에 의해 얼마나 빈번하게 검색되는지에 근거하여 각각의 관련 엔티티에 대한 후속 질의 스코어를 계산할 수 있다. 예를 들어, 시스템은, 사용자들이 특정 엔티티의 이름을 포함하는 초기 검색 질의를 제출한 후에 예컨대, 초기 검색 질의를 제출한 미리 결정된 시간 윈도우 내에 또는 초기 검색 질의를 제출한 바로 다음에, 관련 엔티티의 이름을 포함하는 검색 질의들을 얼마나 빈번하게 제출하는지를 관련 엔티티들 각각에 대해 식별하는 데이터를 획득할 수 있다. 그 다음, 시스템은 예컨대, 초기 검색 질의가 제출된 후에 더 빈번하게 검색된 엔티티들이 초기 검색 질의가 제출된 후에 덜 빈번하게 검색된 관련 엔티티들보다 높은 후속 질의 스코어들을 가지도록 후속 질의 스코어들을 계산할 수 있다.
그 다음, 시스템은 공동 발생 스코어, 후속 질의 스코어 또는 둘 모두에 근거하여 각각의 관련 엔티티에 대한 순위 스코어를 생성하고, 상기 순위 스코어들에 따라 관련 엔티티들을 순서화할 수 있다. 시스템은 예컨대, 엔티티에 대한 공동 발생 스코어 및 후속 질의 스코어를 표준화하고 그 다음, 표준화된 스코어들의 평균을 컴퓨팅하거나, 표준화된 스코어들의 합을 컴퓨팅하거나, 표준화된 스코어들의 곱을 컴퓨팅하거나 또는 그렇지 않으면 표준화된 스코어들을 집계함으로써, 소정 엔티티에 대한 순위 스코어를 생성할 수 있다.
시스템은 인덱스 내의 특정 엔티티와 관련 엔티티들을 연관시킨다(단계 808). 예를 들어, 시스템은 특정 엔티티로부터 관련 엔티티들 각각으로의 매핑을 생성할 수 있다. 매핑은 또한, 관련 엔티티들의 타입 및, 옵션에 따라서는 특정 엔티티와 관련 엔티티들과의 사이의 관계의 성격을 식별할 수 있다. 인덱스는 예컨대, 관련 엔티티 인덱스 데이터베이스(250)에 포함된 인덱스들 중 하나일 수 있다. 시스템은, 특별한 엔티티를 대상으로 하는 검색 질의에 응답하여 관련 엔티티들이 사용자에게 제시되기 위해 선택될 때 상기 관련 엔티티들이 시스템에 의해 생성되는 순서와 매치되는 순서로 제시되는 방식으로 매핑을 생성할 수 있다.
일부 구현들에서, 특별한 엔티티와 특별한 타입의 관련 엔티티들을 연관시키기 전에, 시스템은 각각의 관련 엔티티에 대해, 관련 엔티티에 대한 공동 발생 스코어 및 후속 질의 스코어 모두가 각각의 임계 값들을 초과하는지를 판정한다. 만일, 소정 관련 엔티티에 대해, 각각의 스코어가 임계 값을 초과하지 않으면, 시스템은 인덱스 내의 특별한 엔티티와 관련 엔티티를 연관시키지 못하게 한다.
추가적으로, 일부 구현들에서, 시스템은, 특별한 엔티티와 특별한 타입의 어떤 관련 엔티티들을 연관시키기 전에 충분한 데이터가 상기 특별한 엔티티에 대해 존재하는지를 판정한다. 예를 들어, 시스템은, 엔티티에 대한 인식된 참조가 임계 수보다 많은 검색 질의들 또는 임계 수보다 많은 리소스들에서 발생되는지를 판정할 수 있다. 불충분한 데이터가 특별한 엔티티에 대해 존재하는 경우, 시스템은, 인덱스 내의 엔티티와 특별한 타입의 어떤 관련 엔티티들을 연관시키지 않도록 판정할 수 있다.
본 명세서에 기술된 본 발명 및 기능적 동작들의 실시예들은 본 명세서에 개시된 구조들 및 이의 구조적 균등물들을 포함하는 디지털 전자 회로망으로, 유형으로 실현되는(tangibly-embodied) 소프트웨어 또는 펌웨어로, 컴퓨터 하드웨어로 또는 이들 중 하나 이상의 조합으로 구현될 수 있다. 본 명세서에서 기술되는 본 발명의 실시예들은 하나 이상의 컴퓨터 프로그램들 즉, 데이터 프로세싱 장치에 의한 실행을 위해 또는 데이터 프로세싱 장치의 동작을 제어하기 위해 유형의 비-일시적 프로그램 캐리어 상에 인코딩된 컴퓨터 프로그램 명령어들의 하나 이상의 모듈들로서 구현될 수 있다. 대안적으로 또는 추가적으로는, 프로그램 명령어들은 인공적으로 생성된 전파 신호, 예컨대 기계로 생성된 전기적, 광학적 또는 전자기적 신호 상에 인코딩될 수 있으며, 상기 신호는 데이터 프로세싱 장치에 의한 실행을 위해 적절한 수신 장치로 전송하기 위한 정보를 인코딩하도록 생성된다. 컴퓨터 스토리지 매체는 기계로 판독가능한 스토리지 디바이스, 기계로 판독가능한 스토리지 기판, 랜덤 또는 시리얼 액세스 메모리 디바이스 또는 이들 중 하나 이상의 조합일 수 있다.
용어 "데이터 프로세싱 장치"는 데이터 프로세싱 하드웨어를 나타내며, 예로서 프로그래밍가능한 프로세서, 컴퓨터 또는 복수의 프로세서들 또는 컴퓨터들을 포함하여, 데이터를 프로세싱하기 위한 모든 종류의 장치, 디바이스들 및 머신들을 포괄한다. 장치는 또한, 특수용 로직 회로망, 예컨대, FPGA(field programmable gate array) 또는 ASIC(application-specific integrated circuit)일 수 있거나 또는 이를 더 포함할 수 있다. 장치는 옵션에 따라서는, 하드웨어에 더하여, 컴퓨터 프로그램들을 위한 실행 환경을 생성하는 코드, 예컨대 프로세서 펌웨어, 프로토콜 스택, 데이터베이스 관리 시스템, 운영 체제 또는 이들 중 하나 이상의 조합을 구성하는 코드를 포함할 수 있다.
(프로그램, 소프트웨어, 소프트웨어 어플리케이션, 모듈, 소프트웨어 모듈, 스크립트 또는 코드로 역시 나타내지거나 또는 기술될 수 있는) 컴퓨터 프로그램은 컴파일된 또는 해석된 언어들, 선언 또는 절차형 언어들을 포함하는 프로그래밍 언어의 어떤 형태로 기록될 수 있으며, 이는 단독형 프로그램으로 또는 모듈, 컴포넌트, 서브루틴 또는 컴퓨팅 환경에서 사용하기에 적절한 다른 유닛으로서의 형태를 포함하여 어떤 형태로 디플로이(deploy)될 수 있다. 컴퓨터 프로그램은 반드시 그러한 것은 아니지만, 파일 시스템 내의 파일에 대응할 수 있다. 프로그램은, 다른 프로그램들 또는 데이터를 유지하는 파일 예컨대, 마크업 언어 문서에 저장된 하나 이상의 스크립트들의 부분에, 당해의 프로그램에 전용인 단일 파일에, 또는 복수의 조직화된 파일들 예컨대, 하나 이상의 모듈들, 서브-프로그램들 또는 코드의 부분들을 저장하는 파일들에 저장될 수 있다. 컴퓨터 프로그램은, 일 컴퓨터 상에서 실행되거나 또는, 일 사이트에 위치되거나 또는 복수의 사이트에 걸쳐 분산되고 통신 네트워크에 의해 상호 연결된 복수의 컴퓨터들 상에서 실행되도록 디플로이될 수 있다.
본 명세서에 기술된 프로세스들 및 로직 흐름들은 입력 데이터로 동작하고 출력을 생성함으로써 기능들을 수행하도록 하는 하나 이상의 컴퓨터 프로그램들을 실행하는 하나 이상의 프로그램가능한 컴퓨터들에 의해 수행될 수 있다. 프로세스들 및 로직 흐름들은 또한, 특수용 로직 회로망, 예컨대 FPGA 또는 ASIC에 의해 수행될 수 있고, 장치는 또한, 특수용 로직 회로망, 예컨대 FPGA 또는 ASIC으로 구현될 수 있다.
컴퓨터 프로그램을 실행하기에 적절한 컴퓨터들은 범용 또는 특수용 마이크로프로세서들 또는 둘 모두 또는 어떤 다른 종류의 중앙 프로세싱 유닛을 포함하는 바, 예로서, 이들에 기초할 수 있다. 일반적으로, 중앙 프로세싱 유닛은 판독 전용 메모리 또는 랜덤 액세스 메모리 또는 둘 모두로부터 명령어들 및 데이터를 수신할 것이다. 컴퓨터의 필수 요소들은 명령어들을 수행 또는 실행하기 위한 중앙 프로세싱 유닛 및 명령어들 및 데이터를 저장하기 위한 하나 이상의 메모리 디바이스들이다. 일반적으로, 컴퓨터는 또한, 데이터를 저장하기 위한 하나 이상의 메스 스토리지 디바이스들, 예컨대 자기, 자기-광학 디스크들 또는 광학 디스크들을 포함하거나 또는 이들로부터 데이터를 수신 또는 이들에 데이터를 전송 또는 데이터를 송수신하도록 동작적으로 결합될 것이다. 그러나, 컴퓨터는 이러한 디바이스들을 반드시 가져야 하는 것은 아니다. 더욱이, 컴퓨터는 다른 컴퓨터, 단지 몇 가지 예를 들자면, 예컨대 모바일 전화기, 개인용 디지털 단말기(PDA), 모바일 오디오 또는 비디오 플레이어, 게임 콘솔, GPS(Global Positioning System) 수신기 또는 포터블한 스토리지 디바이스, 예컨대, USB 플래시 드라이브에 내장될 수 있다.
컴퓨터 프로그램 명령어들 및 데이터를 저장하기에 적절한 컴퓨터 판독가능 매체는, 예로서 반도체 메모리 디바이스들 예컨대, EPROM, EEPROM 및 플래시 메모리 디바이스들; 자기 디스크들 예컨대,내부 하드 디스크들 또는 탈착가능한 디스크들; 자기-광학 디스크들; 및 CD-ROM 및 DVD-ROM 디스크들을 포함하여, 모든 형태의 비-휘발성 메모리, 매체 및 메모리 디바이스들을 포함한다. 프로세서 및 메모리는 특수용 로직 회로망에 의해 보충되거나 또는 이에 통합될 수 있다.
사용자와의 상호대화를 제공하기 위해, 본 명세서에 기술된 본 발명의 실시예들은, 사용자에게 정보를 디스플레이하기 위한 디스플레이 디바이스, 예컨대 CRT(cathode ray tube) 또는 LCD(liquid crystal display) 모니터 및 사용자가 컴퓨터에 입력을 제공할 수 있는 키보드 및 포인팅 디바이스 예컨대, 마우스 또는 트랙볼을 가지는 컴퓨터 상에 구현될 수 있다. 다른 종류의 디바이스들이 마찬가지로 사용자와의 상호대화를 제공하기 위해 사용될 수 있는 바, 예를 들어, 사용자에게 제공되는 피드백은 감각적인(sensory) 피드백의 어떤 형태, 예컨대 시각적 피드백, 청각적 피드백 또는 촉각적 피드백일 수 있고, 사용자로부터의 입력은 음향, 스피치 또는 촉각 입력을 포함하는 어떤 형태로 수신될 수 있다. 추가적으로, 컴퓨터는 사용자에 의해 사용되는 디바이스에 문서들을 전송하고 이로부터 문서들을 수신함으로써, 예컨대 웹 브라우져로부터 수신된 요청들에 응답하여 사용자의 디바이스 상의 웹 브라우져에 웹 페이지들을 전송함으로써 사용자와 상호대화할 수 있다.
본 명세서에 기술된 본 발명의 실시예들은, 예컨대, 데이터 서버로서 백-엔드 컴포넌트들을 포함하거나 또는 미들웨어 컴포넌트 예컨대, 어플리케이션 서버를 포함하거나 또는 프런트-엔드 컴포넌트 예컨대, 사용자가 본 명세서에 기술된 본 발명의 구현물과 상호대화할 수 있는 그래픽 사용자 인터페이스 또는 웹 브라우져를 가지는 클라이언트 컴퓨터, 또는 하나 이상의 이러한 백-엔드, 미들웨어 또는 프런트-엔드 컴포넌트들의 어떤 조합을 포함하는 컴퓨팅 시스템에 구현될 수 있다. 시스템의 컴포넌트들은 디지털 데이터 통신, 예컨대 통신 네트워크의 어떤 형태 또는 매체에 의해 상호연결될 수 있다. 통신 네트워크들의 예들은 로컬 영역 네트워크("LAN") 및 광역 네트워크("WAN"), 예컨대 인터넷을 포함한다.
컴퓨팅 시스템은 클라이언트들 및 서버들을 포함할 수 있다. 클라이언트 밀 서버는 일반적으로 서로로부터 원격이며, 전형적으로 통신 네트워크를 통해 상호대화한다. 클라이언트 및 서버의 관계는 각각의 컴퓨터들 상에서 동작하고 서로에 대해 클라이언트-서버 관계를 가지는 컴퓨터 프로그램들에 의해 발생된다.
본 명세서가 많은 특정한 구현 세부사항들을 포함하지만, 이들은 어떤 발명의 범위 또는 청구될 수 있는 것을 제한하는 것으로 해석되어서는 안되며, 오히려 특별한 발명들의 특별한 실시예들에 특수할 수 있는 특징들을 설명하는 것으로 해석되어야 한다. 개별적인 실시예들의 맥락에서 본 명세서에 기술된 특정한 특징들은 또한, 단일 실시예로 결합하여 구현될 수 있다. 반대로, 단일 실시예의 맥락에서 기술된 다양한 특징들은 또한, 복수의 실시예들에서 개별적으로 또는 어떤 적절한 부조합으로 구현될 수 있다. 더욱이, 비록 특징들이 특정한 조합들에서 역할하는 것으로 상기에 기술될 수 있고 심지어는 초기에 그러하게 청구될 수 있지만, 청구된 조합으로부터의 하나 이상의 특징들은 일부 경우들에서, 상기 조합으로부터 삭제될 수 있으며, 청구된 조합은 부조합 또는 부조합의 변형으로 유도될 수 있다.
유사하게, 동작들이 도면들에서 특별한 순서로 도시되지만, 이는 바람직한 결과들을 달성하기 위해, 이러한 동작들이 도시된 특별한 순서 또는 순차적인 순서로 수행되어야 하거나 또는 모든 예시된 동작들이 수행되어야 함을 요하는 것으로 해석되어서는 안된다. 특정한 상황들에서, 멀티태스킹 및 병렬 프로세싱이 장점적일 수 있다. 더욱이, 상기 기술된 실시예들에서의 다양한 시스템 모듈들 및 컴포넌트들의 분리가 모든 실시예들에서 그러한 분리를 요하는 것으로서 해석되어서는 안되며, 기술된 프로그램 컴포넌트들 및 시스템은 일반적으로, 단일 소프트웨어 물에 함께 통합되거나 또는 복수의 소프트웨어 물들 내로 패키징될 수 있음이 이해되어야만 한다.
본 발명의 특별한 실시예들이 기술되었다. 다른 실시예들이 다음의 특허 청구 범위 내에 있다. 예를 들어, 특허 청구 범위에 기재된 액션들은 상이한 순서로 수행될 수 있으며 여전히 바람직한 결과들을 달성할 수 있다. 일례로, 첨부 도면들에 도시된 프로세스들은 바람직한 결과들을 달성하기 위해 반드시, 도시된 특별한 순서 또는 순차적인 순서를 요하지 않는다. 특정한 구현들에서, 멀티태스킹 및 병렬 프로세싱이 장점적일 수 있다.

Claims (26)

  1. 하나 이상의 컴퓨터들에 의해 수행되는 방법으로서,
    사용자 디바이스로부터 제1 검색 질의를 수신하는 단계, 상기 제1 검색 질의는 제1 엔티티 타입의 제1 엔티티와 관련되는 것으로 결정되고, 제2 엔티티 타입의 하나 이상의 엔티티들은 상기 제1 엔티티와 사전 결정된 관계를 가지며;
    검색 엔진에 의해 제공되는 상기 제1 검색 질의에 대한 검색 결과들을 수신하는 단계, 상기 검색 결과들 각각은 각각의 리소스를 식별하고;
    상기 검색 결과들로부터, 상기 제1 검색 질의에 대한 응답의 일부로서 상기 제2 엔티티 타입의 하나 이상의 엔티티들을 식별하는 정보를 포함할지 여부를 결정하는 단계, 이 결정 단계는;
    상기 제1 엔티티에 대한 참조(reference)를 포함하는 리소스를 식별하는 검색 결과들의 카운트(count)가 제1 임계값을 만족하는지 결정하는 단계;
    상기 제2 엔티티 타입을 갖는 상기 리소스를 관련(relevant) 엔터티 타입으로서 식별하는 검색 결과들의 카운트가 제2 임계값을 만족하는지 결정하는 단계; 및
    상기 제1 엔티티에 대한 참조를 포함하는 리소스를 식별하는 검색 결과들의 카운트가 제1 임계 값을 만족하는지의 결정 및 상기 제2 엔티티 타입을 갖는 상기 리소스를 관련 엔터티 타입으로서 식별하는 검색 결과들의 카운트가 제2 임계값을 만족하는지의 결정에 기초하여, 상기 제1 검색 질의에 대한 응답의 일부로서 상기 제2 엔티티 타입의 하나 이상의 엔티티들을 식별하는 정보를 포함하도록 결정하는 단계를 포함하고; 및
    상기 제2 엔티티 타입의 하나 이상의 엔티티들을 식별하는 정보를 상기 제1 검색 질의에 대한 응답의 일부로서 사용자 디바이스에 전송하는 단계를 포함하는 것을 특징으로 하는 하나 이상의 컴퓨터들에 의해 수행되는 방법.
  2. 제1항에 있어서,
    상기 검색 결과들 각각은 상기 검색 결과에 의해 식별된 각각의 리로스로부터 추출된 각각의 제목(title) 및 각각의 텍스트의 토막(snippet)을 포함하며, 상기 제1 엔티티에 대한 참조를 포함하는 리소스를 식별하는 검색 결과들의 카운트가 제1 임계값을 만족함을 판정하는 단계는:
    상기 검색 결과에 포함된 각각의 제목 또는 각각의 텍스트의 토막 내의 상기 제1 엔티티에 대한 참조를 포함하는 검색 결과들의 카운트가 상기 제1 임계값을 만족하는지 결정하는 것을 포함하는 것을 특징으로 하는 하나 이상의 컴퓨터들에 의해 수행되는 방법.
  3. 제1항에 있어서,
    상기 제2 엔티티 타입의 하나 이상의 엔티티들을 식별하는 정보는 상기 하나 이상의 엔티티들 각각에 대응하는 각각의 이미지를 포함하며, 상기 방법은:
    상기 제2 엔티티 타입의 하나 이상의 엔티티들 각각에 대해, 엔티티의 이름으로부터 파생되는(derived) 검색 질의에 응답하여 이미지 검색 엔진으로부터 엔티티에 대응하는 각각의 이미지를 획득하는 단계를 더 포함하는 것을 특징으로 하는 하나 이상의 컴퓨터들에 의해 수행되는 방법.
  4. 제3항에 있어서,
    상기 제2 엔티티 타입의 하나 이상의 엔티티들의 특정(particular) 엔티티에 대한 이미지를 획득하는 단계는:
    상기 특정 엔티티의 이름을 포함하는 특정 검색 질의가 모호함(ambiguous)을 결정하는 단계, 상기 특정 검색 질의가 모호함을 결정하는 단계는, 상기 검색 엔진에 의해 상기 특정 검색 질의에 대해 제공되는 검색 결과들로부터, 상기 특정 검색 질의가 복수의 리소스들 각각을 특정 타입의 특정 엔티티에 매핑하거나 인덱스 내의 둘 이상의(more than one) 엔티티에 관련시키는 인덱스의 엔티티와 관련이 없음을 결정하는 단계를 포함하며;
    상기 특정 엔티티의 이름, 및 상기 제1 엔티티 타입의 상기 제1 엔티티에 대한 참조 또는 상기 제2 엔티티 타입에 대한 참조 중 적어도 하나를 포함하는 제2 검색 질의를 생성하는 단계;
    상기 이미지 검색 엔진으로부터 상기 제2 검색 질의에 대한 이미지 검색 결과들을 획득하는 단계; 및
    상기 제2 검색 질의에 대한 상기 이미지 검색 결과들에 의해 식별되는 이미지들로부터 상기 특정 엔티티에 대한 이미지를 선택하는 단계를 포함하는 것을 특징으로 하는 하나 이상의 컴퓨터들에 의해 수행되는 방법.
  5. 제4항에 있어서,
    상기 이미지 검색 결과들에 의해 식별되는 이미지로부터 상기 특정 엔티티에 대한 이미지를 선택하는 단계는:
    상기 이미지의 종횡비(aspect ratio)에 적어도 부분적으로 근거하여 이미지를 선택하는 단계를 포함하는 것을 특징으로 하는 하나 이상의 컴퓨터들에 의해 수행되는 방법.
  6. 제1항에 있어서,
    상기 제1 검색 질의에 대한 검색 결과들로부터, 상기 제1 검색 질의가 상기 제1 엔티티 타입의 제1 엔티티에 관련됨을 결정하는 단계를 더 포함하며,
    상기 제1 검색 질의가 제1 엔티티에 관련됨을 판정하는 단계는:
    특정 타입의 특정 엔티티에 복수의 리소스들 각각을 매핑하는 인덱스를 이용하여, 상기 제1 엔티티에 매핑되는 리소스를 식별하는 검색 결과들의 카운트가 제3 임계값을 초과함을 결정하는 단계를 포함하는 것을 특징으로 하는 하나 이상의 컴퓨터들에 의해 수행되는 방법.
  7. 제1항에 있어서,
    상기 제1 검색 질의에 대한 응답의 일부로서 상기 제2 엔티티 타입의 하나 이상의 엔티티들을 식별하는 정보를 포함할 지 여부를 결정하는 단계는:
    상기 검색 질의를 외설적인(pornographic) 질의, 특정 리소스로 향하는 (navigational) 질의, 로컬 질의(local query), 또는 정보의 특정 항목(item)을 찾는 질의 중 어느 것도 아닌 것으로서 분류하는 데이터를 획득하는 단계를 더 포함하는 것을 특징으로 하는 하나 이상의 컴퓨터들에 의해 수행되는 방법.
  8. 제1항에 있어서,
    상기 하나 이상의 엔티티들을 식별하는 정보는 상기 하나 이상의 엔티티들 각각의 이름 및 상기 제2 엔티티 타입을 식별하는 정보를 포함하는 것을 특징으로 하는 하나 이상의 컴퓨터들에 의해 수행되는 방법.
  9. 제1항에 있어서,
    상기 제2 엔티티 타입의 엔티티들 각각에 대해 각각의 순위 스코어를 결절하는 단계; 및
    상기 순위 스코어들에 따라 상기 제2 엔티티 타입의 상기 엔티티들을 순서화 (ordering)하는 단계를 더 포함하는 것을 특징으로 하는 하나 이상의 컴퓨터들에 의해 수행되는 방법.
  10. 제9항에 있어서,
    상기 제2 엔티티 타입의 특정 엔티티에 대한 순위 스코어는 상기 특정 엔티티에 대한 인식된 참조가 인덱스 엔진에 의해 인덱싱되는 리소스들 내의 상기 제1 엔티티에 대한 인식된 참조와 얼마나 빈번하게 공동 발생(co-occur)되는지에 적어도 부분적으로 근거하는 것을 특징으로 하는 하나 이상의 컴퓨터들에 의해 수행되는 방법.
  11. 제9항에 있어서,
    상기 제2 엔티티 타입의 특정 엔티티에 대한 순위 스코어는 상기 제1 엔티티를 대상으로 하는(direct) 검색 질의를 제출한 후에 상기 특정 엔티티가 사용자에 의해 얼마나 빈번하게 검색되는지에 적어도 부분적으로 근거하는 것을 특징으로 하는 하나 이상의 컴퓨터들에 의해 수행되는 방법.
  12. 제9항에 있어서,
    상기 제2 엔티티 타입의 특정 엔티티에 대한 순위 스코어는 상기 특정 엔티티의 전역적인 인기(global popularity)에 적어도 부분적으로 근거하는 것을 특징으로 하는 하나 이상의 컴퓨터들에 의해 수행되는 방법.
  13. 제9항에 있어서,
    상기 제2 엔티티 타입의 특정 엔티티에 대한 순위 스코어는 상기 특정 엔티티에 대한 인식된 참조(recognized reference)가 상기 제1 엔티티에 대한 인식된 참조와 동일한 이전에 제출된 검색 질의에서 얼마나 빈번하게 공동 발생되는지에 적어도 부분적으로 근거하는 것을 특징으로 하는 하나 이상의 컴퓨터들에 의해 수행되는 방법.
  14. 제9항에 있어서,
    상기 제2 엔티티 타입의 엔티티들 중 둘 이상이 특정된 순서를 가지는 엔티티들의 세트의 멤버(member)들임을 나타내는 데이터에 액세스하는 단계; 및
    상기 특정된 순서와 매치되도록 상기 제2 엔티티 타입의 둘 이상의 엔티티들의 순서를 조정하는 단계를 더 포함하는 것을 특징으로 하는 하나 이상의 컴퓨터들에 의해 수행되는 방법.
  15. 제9항에 있어서,
    상기 제2 엔티티 타입의 엔티티들 중 둘 이상이 더 넓은 엔티티(broader entity)의 일부인 것으로 더 잘 알려짐(better known)을 나타내는 데이터에 액세스하는 단계; 및
    상기 제2 엔티티 타입의 둘 이상의 엔티티들을 상기 제2 엔티티 타입의 엔티티들의 순서에서 상기 더 넓은 엔티티로 교체하는 단계를 더 포함하는 것을 특징으로 하는 하나 이상의 컴퓨터들에 의해 수행되는 방법.
  16. 하나 이상의 컴퓨터들에 의해 수행되는 방법으로서,
    제1 엔티티 타입의 제1 엔티티 및 상기 제1 엔티티 타입의 복수의 후보 엔티티(candidate entity)들을 식별하는 데이터를 획득하는 단계;
    상기 후보 엔티티들에 대한 인식된 참조들이 리소스들 내의 상기 제1 엔티티에 대한 인식된 참조와 얼마나 빈번하게 공동 발생되는지에 적어도 부분적으로 근거하여, 상기 제1 엔티티 타입의 상기 복수의 후보 엔티티들을 상기 제1 엔티티에 대한 관련 엔티티들로서 선택하는 단계;
    상기 관련 엔티티들을 순위화(ranking)하는 단계, 상기 관련 엔티티들을 순위화하는 단계는
    상기 관련 엔티티들 각각에 대해, 상기 관련 엔티티에 대한 인식된 참조들을 포함하는 검색 질의들이 상기 제1 엔티티에 대한 인식된 참조를 포함하는 검색 질의를 제출한 후 얼마나 자주 사용자들에 의해 검색 엔진에 제출되는지에 적어도 부분적으로 기초로 하여 각각의 후속 질의 스코어를 결정하는 단계;
    상기 관련 엔티티들 각각에 대해, 상기 관련 엔티티에 대한 상기 후속 질의 스코어에 적어도 부분적으로 기초하여 각각의 순위 스코어를 계산하는 단계, 및
    상기 순위 스코어에 기초하여 상기 관련 엔티티들을 순위화하는 단계를 포함하고;
    상기 제1 엔티티에 대한 인식된 참조가 리소스들의 제1 임계 개수(first threshold number) 또는 이전에 제출된 검색 질의들의 제2 임계 개수 중 적어도 하나에서 발생함을 결정하는 단계; 및
    상기 제1 엔티티에 대한 인식된 참조가 리소스들의 제1 임계 개수 또는 이전에 제출된 검색 질의들의 제2 임계 개수 중 적어도 하나에서 발생한다고 결정한 것에 응답하여, 상기 엔티티에 대한 하나 이상의 각각의 관련 엔티티들에 복수의 엔티티들 각각을 매핑하는 인덱스에, 상기 제1 엔티티와 상기 제1 엔티티 타입의 상기 관련 엔티티들 사이의 매핑을 생성하는 단계를 포함하는 것을 특징으로 하는 하나 이상의 컴퓨터들에 의해 수행되는 방법.
  17. 제16항에 있어서,
    상기 관련 엔티티들을 순위화하는 단계는:
    상기 관련 엔티티들 각각에 대해, 상기 관련 엔티티에 대한 인식된 참조가 상기 검색 엔진에 의해 인덱싱된 리소들내의 제1 엔티티에 대한 인식된 참조와 얼마나 자주 공동 발생되는지에 근거하여, 각각의 공동 발생(co-occurrence) 스코어를 계산하는 단계를 포함하고, 상기 관련 엔티티들 각각에 대해, 각각의 순위 스코어를 계산하는 단계는:
    상기 관련 엔티티에 대한 후속 질의 스코어 및 상기 관련 엔티티에 대한 공동 발생 스코어부터 상기 관련 엔티티에 대한 순위 스코어를 계산하는 단계를 포함하는 것을 특징으로 하는 하나 이상의 컴퓨터들에 의해 수행되는 방법.
  18. 제17항에 있어서,
    각 관련 엔티티에 대해, 상기 관련 엔티티에 대한 상기 각각의 공동 발생 스코어가 제3 임계값을 초과함을 결정하는 단계;
    각 관련 엔티티에 대해, 상기 관련 엔티티에 대한 각각의 후속 쿼리 스코어가 제4 임계값을 초과함을 결정하는 단계; 및
    상기 공동 발생 스코어가 상기 제3 임계값을 초과하고 상기 후속 쿼리 스코어들이 상기 제4 임계값을 초과하는 것으로 결정한 것에 응답하여 상기 인덱스에 맵핑을 생성하는 단계를 더 포함하는 것을 특징으로 하는 하나 이상의 컴퓨터들에 의해 수행되는 방법.
  19. 제16항에 있어서,
    사용자 디바이스로부터 제1 검색 질의를 수신하는 단계;
    상기 제1 검색 질의가 상기 제1 엔티티 타입의 상기 제1 엔티티에 관련됨을 결정하는 단계;
    상기 인덱스로부터, 상기 제1 엔티티 타입의 관련 엔티티들이 상기 제1 엔티티와 사전 결정된 관계를 갖는지를 결정하는 단계; 및
    상기 제1 검색 질의에 대한 응답의 일부로서 상기 하나 이상의 관련 엔티티들을 식별하는 정보를 사용자 디바이스에게 전송하는 단계를 더 포함하는 것을 특징으로 하는 하나 이상의 컴퓨터들에 의해 수행되는 방법.
  20. 하나 이상의 컴퓨터들 및 명령어들을 저장한 하나 이상의 저장(storage) 디바이스들을 포함하는 시스템으로서, 상기 명령어들은 상기 하나 이상의 컴퓨터들에 의해 실행될 때, 상기 하나 이상의 컴퓨터들로 하여금 동작들을 수행하게 하며, 상기 동작들은:
    사용자 디바이스로부터 제1 검색 질의를 수신하는 단계, 상기 제1 검색 질의는 제1 엔티티 타입의 제1 엔티티와 관련되는 것으로 결정되고, 제2 엔티티 타입의 하나 이상의 엔티티들은 상기 제1 엔티티와 사전 결정된 관계를 가지며;
    검색 엔진에 의해 제공되는 상기 제1 검색 질의에 대한 검색 결과들을 수신하는 단계, 상기 검색 결과들 각각은 각각의 리소스를 식별하고;
    상기 검색 결과들로부터, 상기 제1 검색 질의에 대한 응답의 일부로서 상기 제2 엔티티 타입의 하나 이상의 엔티티들을 식별하는 정보를 포함할지 여부를 결정하는 단계, 이 결정 단계는;
    상기 제1 엔티티에 대한 참조(reference)를 포함하는 리소스를 식별하는 검색 결과들의 카운트(count)가 제1 임계값을 만족하는지 결정하는 단계;
    상기 제2 엔티티 타입을 갖는 상기 리소스를 관련(relevant) 엔터티 타입으로서 식별하는 검색 결과들의 카운트가 제2 임계값을 만족하는지 결정하는 단계; 및
    상기 제1 엔티티에 대한 참조를 포함하는 리소스를 식별하는 검색 결과들의 카운트가 제1 임계 값을 만족하는지의 결정 및 상기 제2 엔티티 타입을 갖는 상기 리소스를 관련 엔터티 타입으로서 식별하는 검색 결과들의 카운트가 제2 임계값을 만족하는지의 결정에 기초하여, 상기 제1 검색 질의에 대한 응답의 일부로서 상기 제2 엔티티 타입의 하나 이상의 엔티티들을 식별하는 정보를 포함하도록 결정하는 단계를 포함하고; 및
    상기 제2 엔티티 타입의 하나 이상의 엔티티들을 식별하는 정보를 상기 제1 검색 질의에 대한 응답의 일부로서 사용자 디바이스에게 전송하는 단계를 포함하는 것을 특징으로 하는 시스템.
  21. 명령어들을 포함하는 컴퓨터 프로그램이 인코딩된 비-일시적 컴퓨터 저장(storage) 매체로서, 상기 명령어는 하나 이상의 컴퓨터들에 의해 실행될 때, 상기 하나 이상의 컴퓨터들로 하여금 동작들을 수행하게 하며, 상기 동작들은:
    사용자 디바이스로부터 제1 검색 질의를 수신하는 단계, 상기 제1 검색 질의는 제1 엔티티 타입의 제1 엔티티와 관련되는 것으로 결정되고, 제2 엔티티 타입의 하나 이상의 엔티티들은 상기 제1 엔티티와 사전 결정된 관계를 가지며;
    검색 엔진에 의해 제공되는 상기 제1 검색 질의에 대한 검색 결과들을 수신하는 단계, 상기 검색 결과들 각각은 각각의 리소스를 식별하고;
    상기 검색 결과들로부터, 상기 제1 검색 질의에 대한 응답의 일부로서 상기 제2 엔티티 타입의 하나 이상의 엔티티들을 식별하는 정보를 포함할지 여부를 결정하는 단계, 이 결정 단계는;
    상기 제1 엔티티에 대한 참조(reference)를 포함하는 리소스를 식별하는 검색 결과들의 카운트(count)가 제1 임계값을 만족하는지 결정하는 단계;
    상기 제2 엔티티 타입을 갖는 상기 리소스를 관련(relevant) 엔터티 타입으로서 식별하는 검색 결과들의 카운트가 제2 임계값을 만족하는지 결정하는 단계; 및
    상기 제1 엔티티에 대한 참조를 포함하는 리소스를 식별하는 검색 결과들의 카운트가 제1 임계 값을 만족하는지의 결정 및 상기 제2 엔티티 타입을 갖는 상기 리소스를 관련 엔터티 타입으로서 식별하는 검색 결과들의 카운트가 제2 임계값을 만족하는지의 결정에 기초하여, 상기 제1 검색 질의에 대한 응답의 일부로서 상기 제2 엔티티 타입의 하나 이상의 엔티티들을 식별하는 정보를 포함하도록 결정하는 단계를 포함하고; 및
    상기 제2 엔티티 타입의 하나 이상의 엔티티들을 식별하는 정보를 상기 제1 검색 질의에 대한 응답의 일부로서 사용자 디바이스에게 전송하는 단계를 포함하는 것을 특징으로 하는 컴퓨터 저장 매체.
  22. 하나 이상의 컴퓨터들 및 명령어들을 저장한 하나 이상의 저장(storage) 디바이스들을 포함하는 시스템으로서, 상기 명령어들은 하나 이상의 컴퓨터들에 의해 실행될 때, 상기 하나 이상의 컴퓨터들로 하여금 동작들을 수행하게 하며, 상기 동작들은:
    제1 엔티티 타입의 제1 엔티티 및 상기 제1 엔티티 타입의 복수의 후보 엔티티(candidate entity)들을 식별하는 데이터를 획득하는 단계;
    상기 후보 엔티티들에 대한 인식된 참조들이 리소스들 내의 상기 제1 엔티티에 대한 인식된 참조와 얼마나 빈번하게 공동 발생되는지에 적어도 부분적으로 근거하여, 상기 제1 엔티티 타입의 상기 복수의 후보 엔티티들을 상기 제1 엔티티에 대한 관련 엔티티들로서 선택하는 단계;
    상기 관련 엔티티들을 순위화(ranking)하는 단계, 상기 관련 엔티티들을 순위화하는 단계는
    상기 관련 엔티티들 각각에 대해, 상기 관련 엔티티에 대한 인식된 참조들을 포함하는 검색 질의들이 상기 제1 엔티티에 대한 인식된 참조를 포함하는 검색 질의를 제출한 후 얼마나 자주 사용자들에 의해 검색 엔진에 제출되는지에 적어도 부분적으로 기초로 하여 각각의 후속 질의 스코어를 결정하는 단계;
    상기 관련 엔티티들 각각에 대해, 상기 관련 엔티티에 대한 상기 후속 질의 스코어에 적어도 부분적으로 기초하여 각각의 순위 스코어를 계산하는 단계, 및
    상기 순위 스코어에 기초하여 상기 관련 엔티티들을 순위화하는 단계를 포함하고;
    상기 제1 엔티티에 대한 인식된 참조가 리소스들의 제1 임계 개수(first threshold number) 또는 이전에 제출된 검색 질의들의 제2 임계 개수 중 적어도 하나에서 발생함을 결정하는 단계; 및
    상기 제1 엔티티에 대한 인식된 참조가 리소스들의 제1 임계 개수 또는 이전에 제출된 검색 질의들의 제2 임계 개수 중 적어도 하나에서 발생한다고 결정한 것에 응답하여, 상기 엔티티에 대한 하나 이상의 각각의 관련 엔티티들에 복수의 엔티티들 각각을 매핑하는 인덱스에, 상기 제1 엔티티와 상기 제1 엔티티 타입의 상기 관련 엔티티들 사이의 매핑을 생성하는 단계를 포함하는 것을 특징으로 하는 시스템.
  23. 명령어들을 포함하는 컴퓨터 프로그램이 인코딩된 컴퓨터 저장(storage) 매체로서, 상기 명령어들은 하나 이상의 컴퓨터들에 의해 실행될 때, 상기 하나 이상의 컴퓨터들로 하여금 동작들을 수행하게 하며, 상기 동작들은:
    제1 엔티티 타입의 제1 엔티티 및 상기 제1 엔티티 타입의 복수의 후보 엔티티(candidate entity)들을 식별하는 데이터를 획득하는 단계;
    상기 후보 엔티티들에 대한 인식된 참조들이 리소스들 내의 상기 제1 엔티티에 대한 인식된 참조와 얼마나 빈번하게 공동 발생되는지에 적어도 부분적으로 근거하여, 상기 제1 엔티티 타입의 상기 복수의 후보 엔티티들을 상기 제1 엔티티에 대한 관련 엔티티들로서 선택하는 단계;
    상기 관련 엔티티들을 순위화(ranking)하는 단계, 상기 관련 엔티티들을 순위화하는 단계는
    상기 관련 엔티티들 각각에 대해, 상기 관련 엔티티에 대한 인식된 참조들을 포함하는 검색 질의들이 상기 제1 엔티티에 대한 인식된 참조를 포함하는 검색 질의를 제출한 후 얼마나 자주 사용자들에 의해 검색 엔진에 제출되는지에 적어도 부분적으로 기초로 하여 각각의 후속 질의 스코어를 결정하는 단계;
    상기 관련 엔티티들 각각에 대해, 상기 관련 엔티티에 대한 상기 후속 질의 스코어에 적어도 부분적으로 기초하여 각각의 순위 스코어를 계산하는 단계, 및
    상기 순위 스코어에 기초하여 상기 관련 엔티티들을 순위화하는 단계를 포함하고;
    상기 제1 엔티티에 대한 인식된 참조가 리소스들의 제1 임계 개수(first threshold number) 또는 이전에 제출된 검색 질의들의 제2 임계 개수 중 적어도 하나에서 발생함을 결정하는 단계; 및
    상기 제1 엔티티에 대한 인식된 참조가 리소스들의 제1 임계 개수 또는 이전에 제출된 검색 질의들의 제2 임계 개수 중 적어도 하나에서 발생한다고 결정한 것에 응답하여, 상기 엔티티에 대한 하나 이상의 각각의 관련 엔티티들에 복수의 엔티티들 각각을 매핑하는 인덱스에, 상기 제1 엔티티와 상기 제1 엔티티 타입의 상기 관련 엔티티들 사이의 매핑을 생성하는 단계를 포함하는 것을 특징으로 하는 컴퓨터 저장 매체.
  24. 삭제
  25. 삭제
  26. 삭제
KR1020147026346A 2012-02-22 2013-02-22 관련 엔티티들 KR101994987B1 (ko)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US201261601975P 2012-02-22 2012-02-22
US61/601,975 2012-02-22
US201261647977P 2012-05-16 2012-05-16
US61/647,977 2012-05-16
US201261660637P 2012-06-15 2012-06-15
US61/660,637 2012-06-15
PCT/US2013/027474 WO2013126808A1 (en) 2012-02-22 2013-02-22 Related entities

Publications (2)

Publication Number Publication Date
KR20140128443A KR20140128443A (ko) 2014-11-05
KR101994987B1 true KR101994987B1 (ko) 2019-09-30

Family

ID=47891962

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020147026346A KR101994987B1 (ko) 2012-02-22 2013-02-22 관련 엔티티들

Country Status (5)

Country Link
US (4) US9275152B2 (ko)
KR (1) KR101994987B1 (ko)
CN (2) CN104428767B (ko)
AU (1) AU2013222184B2 (ko)
WO (1) WO2013126808A1 (ko)

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9898533B2 (en) * 2011-02-24 2018-02-20 Microsoft Technology Licensing, Llc Augmenting search results
US9424353B2 (en) 2012-02-22 2016-08-23 Google Inc. Related entities
US9275152B2 (en) 2012-02-22 2016-03-01 Google Inc. Related entities
US9552414B2 (en) 2012-05-22 2017-01-24 Quixey, Inc. Dynamic filtering in application search
US9229974B1 (en) * 2012-06-01 2016-01-05 Google Inc. Classifying queries
US9922120B2 (en) 2012-08-24 2018-03-20 Microsoft Technology Licensing, Llc Online learning of click-through rates on federated search results
US9116918B1 (en) * 2012-11-14 2015-08-25 Google Inc. Methods, systems, and media for interpreting queries
US20140280084A1 (en) * 2013-03-15 2014-09-18 Google Inc. Using structured data for search result deduplication
US20140320504A1 (en) * 2013-04-30 2014-10-30 Tamm, Inc. Virtual Re-Animation
US9646062B2 (en) * 2013-06-10 2017-05-09 Microsoft Technology Licensing, Llc News results through query expansion
US9418103B2 (en) * 2013-12-06 2016-08-16 Quixey, Inc. Techniques for reformulating search queries
US11120210B2 (en) * 2014-07-18 2021-09-14 Microsoft Technology Licensing, Llc Entity recognition for enhanced document productivity
JP5957048B2 (ja) * 2014-08-19 2016-07-27 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation 曖昧性を解消する教師データの生成方法、生成システム、及び生成プログラム
WO2016171874A1 (en) * 2015-04-22 2016-10-27 Google Inc. Providing user-interactive graphical timelines
US10586156B2 (en) 2015-06-25 2020-03-10 International Business Machines Corporation Knowledge canvassing using a knowledge graph and a question and answer system
US10803391B2 (en) * 2015-07-29 2020-10-13 Google Llc Modeling personal entities on a mobile device using embeddings
US10503796B2 (en) * 2015-10-26 2019-12-10 Facebook, Inc. Searching for application content with social plug-ins
US10318562B2 (en) * 2016-07-27 2019-06-11 Google Llc Triggering application information
SG11201901775SA (en) 2016-09-02 2019-03-28 Futurevault Inc Real-time document filtering systems and methods
CA3035100A1 (en) 2016-09-02 2018-03-08 FutureVault Inc. Systems and methods for sharing documents
US10776379B1 (en) 2017-03-24 2020-09-15 United Services Automobile Association (Usaa) Smart documentation systems and methods
US11580115B2 (en) 2017-06-29 2023-02-14 Ebay Inc. Identification of intent and non-intent query portions
WO2019008394A1 (en) * 2017-07-07 2019-01-10 Cscout Ltd CAPTURE AND EXTRACTION OF DIGITAL INFORMATION
CN108305210B (zh) * 2017-07-28 2020-05-22 腾讯科技(深圳)有限公司 数据处理方法、装置及存储介质
CN108337532A (zh) * 2018-02-13 2018-07-27 腾讯科技(深圳)有限公司 演出片段的标注方法、视频播放方法、装置及系统
US10776163B1 (en) * 2018-03-16 2020-09-15 Amazon Technologies, Inc. Non-hierarchical management system for application programming interface resources
CN108829854B (zh) * 2018-06-21 2021-08-31 北京百度网讯科技有限公司 用于生成文章的方法、装置、设备和计算机可读存储介质
US11036770B2 (en) 2018-07-13 2021-06-15 Wyzant, Inc. Specialized search system and method for matching a student to a tutor
CN109933788B (zh) * 2019-02-14 2023-05-23 北京百度网讯科技有限公司 类型确定方法、装置、设备和介质
US11288320B2 (en) * 2019-06-05 2022-03-29 International Business Machines Corporation Methods and systems for providing suggestions to complete query sessions
CN110309423A (zh) * 2019-06-28 2019-10-08 北京奇艺世纪科技有限公司 一种敏感信息识别方法、装置及电子设备

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001046870A1 (en) 1999-12-08 2001-06-28 Amazon.Com, Inc. System and method for locating and displaying web-based product offerings
US20070078884A1 (en) 2005-09-30 2007-04-05 Yahoo! Inc. Podcast search engine
US20090313237A1 (en) 2008-06-13 2009-12-17 Microsoft Corporation Generating query suggestions from semantic relationships in content
US20110320437A1 (en) 2010-06-28 2011-12-29 Yookyung Kim Infinite Browse

Family Cites Families (60)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5630123A (en) * 1994-09-28 1997-05-13 I2 Technologies, Inc. Software system utilizing a filtered priority queue and method of operation
US6012053A (en) * 1997-06-23 2000-01-04 Lycos, Inc. Computer system with user-controlled relevance ranking of search results
US6006225A (en) * 1998-06-15 1999-12-21 Amazon.Com Refining search queries by the suggestion of correlated terms from prior searches
US7225182B2 (en) * 1999-05-28 2007-05-29 Overture Services, Inc. Recommending search terms using collaborative filtering and web spidering
US7925610B2 (en) * 1999-09-22 2011-04-12 Google Inc. Determining a meaning of a knowledge item using document-based information
US6785671B1 (en) * 1999-12-08 2004-08-31 Amazon.Com, Inc. System and method for locating web-based product offerings
US7401072B2 (en) * 2003-06-10 2008-07-15 Google Inc. Named URL entry
US7836391B2 (en) * 2003-06-10 2010-11-16 Google Inc. Document search engine including highlighting of confident results
US7505964B2 (en) * 2003-09-12 2009-03-17 Google Inc. Methods and systems for improving a search ranking using related queries
US8589373B2 (en) 2003-09-14 2013-11-19 Yaron Mayer System and method for improved searching on the internet or similar networks and especially improved MetaNews and/or improved automatically generated newspapers
US7536382B2 (en) * 2004-03-31 2009-05-19 Google Inc. Query rewriting with entity detection
US7519595B2 (en) 2004-07-14 2009-04-14 Microsoft Corporation Method and system for adaptive categorial presentation of search results
US20060047691A1 (en) * 2004-08-31 2006-03-02 Microsoft Corporation Creating a document index from a flex- and Yacc-generated named entity recognizer
US7620628B2 (en) * 2004-12-06 2009-11-17 Yahoo! Inc. Search processing with automatic categorization of queries
US20070150721A1 (en) * 2005-06-13 2007-06-28 Inform Technologies, Llc Disambiguation for Preprocessing Content to Determine Relationships
US7672833B2 (en) * 2005-09-22 2010-03-02 Fair Isaac Corporation Method and apparatus for automatic entity disambiguation
US20070143414A1 (en) * 2005-12-15 2007-06-21 Daigle Brian K Reference links for instant messaging
CN101490677B (zh) * 2006-05-10 2012-12-26 谷歌公司 呈现搜索结果信息
US20080065621A1 (en) 2006-09-13 2008-03-13 Kenneth Alexander Ellis Ambiguous entity disambiguation method
US8086600B2 (en) * 2006-12-07 2011-12-27 Google Inc. Interleaving search results
US20080189169A1 (en) * 2007-02-01 2008-08-07 Enliven Marketing Technologies Corporation System and method for implementing advertising in an online social network
US7849104B2 (en) * 2007-03-01 2010-12-07 Microsoft Corporation Searching heterogeneous interrelated entities
US8195655B2 (en) * 2007-06-05 2012-06-05 Microsoft Corporation Finding related entity results for search queries
US7970766B1 (en) * 2007-07-23 2011-06-28 Google Inc. Entity type assignment
US20090094223A1 (en) * 2007-10-05 2009-04-09 Matthew Berk System and method for classifying search queries
US8594996B2 (en) * 2007-10-17 2013-11-26 Evri Inc. NLP-based entity recognition and disambiguation
US7877404B2 (en) * 2008-03-05 2011-01-25 Microsoft Corporation Query classification based on query click logs
KR101109919B1 (ko) * 2008-05-14 2012-03-02 파나소닉 주식회사 플라즈마 디스플레이 장치 및 플라즈마 디스플레이 패널의 구동 방법
US20090313217A1 (en) * 2008-06-12 2009-12-17 Iac Search & Media, Inc. Systems and methods for classifying search queries
AU2009273944A1 (en) * 2008-07-23 2010-01-28 Google Inc. Video promotion in a video sharing site
US20100057695A1 (en) * 2008-08-28 2010-03-04 Microsoft Corporation Post-processing search results on a client computer
US8392429B1 (en) * 2008-11-26 2013-03-05 Google Inc. Informational book query
US8458171B2 (en) 2009-01-30 2013-06-04 Google Inc. Identifying query aspects
US8959079B2 (en) * 2009-09-29 2015-02-17 International Business Machines Corporation Method and system for providing relationships in search results
US20110184981A1 (en) * 2010-01-27 2011-07-28 Yahoo! Inc. Personalize Search Results for Search Queries with General Implicit Local Intent
US9009134B2 (en) 2010-03-16 2015-04-14 Microsoft Technology Licensing, Llc Named entity recognition in query
US8515889B2 (en) * 2010-03-23 2013-08-20 Ebay Inc. Systems and methods for trend aware self-correcting entity relationship extraction
US9317613B2 (en) * 2010-04-21 2016-04-19 Yahoo! Inc. Large scale entity-specific resource classification
US20110307460A1 (en) * 2010-06-09 2011-12-15 Microsoft Corporation Navigating relationships among entities
US20110307432A1 (en) * 2010-06-11 2011-12-15 Microsoft Corporation Relevance for name segment searches
US20120059838A1 (en) * 2010-09-07 2012-03-08 Microsoft Corporation Providing entity-specific content in response to a search query
US20120084149A1 (en) * 2010-09-10 2012-04-05 Paolo Gaudiano Methods and systems for online advertising with interactive text clouds
WO2012058332A1 (en) * 2010-10-26 2012-05-03 Google Inc. Rich results relevant to user search queries for books
US9189549B2 (en) * 2010-11-08 2015-11-17 Microsoft Technology Licensing, Llc Presenting actions and providers associated with entities
US20150142767A1 (en) * 2010-12-07 2015-05-21 Google Inc. Scoring authors of social network content
US9245022B2 (en) * 2010-12-30 2016-01-26 Google Inc. Context-based person search
US8645393B1 (en) * 2011-04-15 2014-02-04 Google Inc. Ranking clusters and resources in a cluster
US9202176B1 (en) * 2011-08-08 2015-12-01 Gravity.Com, Inc. Entity analysis system
US8965848B2 (en) * 2011-08-24 2015-02-24 International Business Machines Corporation Entity resolution based on relationships to a common entity
US8775439B1 (en) * 2011-09-27 2014-07-08 Google Inc. Identifying entities using search results
US8843466B1 (en) * 2011-09-27 2014-09-23 Google Inc. Identifying entities using search results
US20130110830A1 (en) * 2011-10-31 2013-05-02 Microsoft Corporation Ranking of entity properties and relationships
US9449028B2 (en) * 2011-12-30 2016-09-20 Microsoft Technology Licensing, Llc Dynamic definitive image service
US9443021B2 (en) * 2011-12-30 2016-09-13 Microsoft Technology Licensing, Llc Entity based search and resolution
US9665643B2 (en) 2011-12-30 2017-05-30 Microsoft Technology Licensing, Llc Knowledge-based entity detection and disambiguation
US20130212081A1 (en) * 2012-02-13 2013-08-15 Microsoft Corporation Identifying additional documents related to an entity in an entity graph
US9275152B2 (en) 2012-02-22 2016-03-01 Google Inc. Related entities
US9424353B2 (en) 2012-02-22 2016-08-23 Google Inc. Related entities
US9471606B1 (en) * 2012-06-25 2016-10-18 Google Inc. Obtaining information to provide to users
US10289734B2 (en) * 2015-09-18 2019-05-14 Samsung Electronics Co., Ltd. Entity-type search system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001046870A1 (en) 1999-12-08 2001-06-28 Amazon.Com, Inc. System and method for locating and displaying web-based product offerings
US20070078884A1 (en) 2005-09-30 2007-04-05 Yahoo! Inc. Podcast search engine
US20090313237A1 (en) 2008-06-13 2009-12-17 Microsoft Corporation Generating query suggestions from semantic relationships in content
US20110320437A1 (en) 2010-06-28 2011-12-29 Yookyung Kim Infinite Browse

Also Published As

Publication number Publication date
US20180046717A1 (en) 2018-02-15
CN104428767B (zh) 2018-02-06
US9830390B2 (en) 2017-11-28
US20160179958A1 (en) 2016-06-23
US20130238594A1 (en) 2013-09-12
CN104428767A (zh) 2015-03-18
CN108388582A (zh) 2018-08-10
AU2013222184A1 (en) 2014-09-11
US20230205828A1 (en) 2023-06-29
KR20140128443A (ko) 2014-11-05
WO2013126808A1 (en) 2013-08-29
CN108388582B (zh) 2023-02-03
AU2013222184B2 (en) 2017-09-28
US9275152B2 (en) 2016-03-01

Similar Documents

Publication Publication Date Title
US20230205828A1 (en) Related entities
US20220035827A1 (en) Tag selection and recommendation to a user of a content hosting service
US9053115B1 (en) Query image search
US9336318B2 (en) Rich content for query answers
JP5623431B2 (ja) クエリのアスペクトを識別すること
US9916384B2 (en) Related entities
US20110179021A1 (en) Dynamic keyword suggestion and image-search re-ranking
JP2014532924A (ja) ソーシャルネットワークの特徴を有する名前および他の探索クエリーの関連性
US9535996B1 (en) Selecting content objects for recommendation based on content object collections
US9251202B1 (en) Corpus specific queries for corpora from search query
CN109952571B (zh) 基于上下文的图像搜索结果
US20160335358A1 (en) Processing search queries and generating a search result page including search object related information
US9110943B2 (en) Identifying an image for an entity
US10146849B2 (en) Triggering answer boxes
US20160335365A1 (en) Processing search queries and generating a search result page including search object information
US10055463B1 (en) Feature based ranking adjustment
US20150088859A1 (en) Click magnet images
US10909112B2 (en) Method of and a system for determining linked objects

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant