KR20200130319A - 추론된 의도에 기반한 로컬 확장 트리거 - Google Patents
추론된 의도에 기반한 로컬 확장 트리거 Download PDFInfo
- Publication number
- KR20200130319A KR20200130319A KR1020207026913A KR20207026913A KR20200130319A KR 20200130319 A KR20200130319 A KR 20200130319A KR 1020207026913 A KR1020207026913 A KR 1020207026913A KR 20207026913 A KR20207026913 A KR 20207026913A KR 20200130319 A KR20200130319 A KR 20200130319A
- Authority
- KR
- South Korea
- Prior art keywords
- query
- search
- local
- cluster
- intent
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
- G06F16/24564—Applying rules; Deductive queries
- G06F16/24565—Triggers; Constraints
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9537—Spatial or temporal dependent retrieval, e.g. spatiotemporal queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/242—Query formulation
- G06F16/2428—Query predicate definition using graphical user interfaces, including menus and forms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2457—Query processing with adaptation to user needs
- G06F16/24575—Query processing with adaptation to user needs using context
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2471—Distributed queries
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/248—Presentation of query results
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/252—Integrating or interfacing systems involving database management systems between a Database Management System and a front-end application
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/28—Databases characterised by their database models, e.g. relational or object models
- G06F16/284—Relational databases
- G06F16/285—Clustering or classification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/9032—Query formulation
- G06F16/90324—Query formulation using system suggestions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/9032—Query formulation
- G06F16/90332—Natural language query formulation or dialogue systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/90335—Query processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/907—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
- G06F16/909—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using geographical or spatial information, e.g. location
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N5/00—Computing arrangements using knowledge-based models
- G06N5/04—Inference or reasoning models
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Computational Linguistics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- Evolutionary Computation (AREA)
- Human Computer Interaction (AREA)
- Fuzzy Systems (AREA)
- Probability & Statistics with Applications (AREA)
- Library & Information Science (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
컴퓨터 저장 매체에 인코딩된 컴퓨터 프로그램을 포함한 방법, 시스템 및 장치가 개시되며, 이는 클러스터 데이터를 혹득하고, 로컬 검색 기능을 트리거하는 소정의 쿼리 클러스터 내에서 검색 쿼리의 부분을 결정하고, 로컬 검색 기능을 트리거하는 소정의 쿼리 클러스터 내의 검색 쿼리의 부분이 로컬 의도 임계치를 충족할 때 소정의 클러스터가 하이 로컬 의도 클러스터임을 나타내는 값을 의도 플래그에 할당하고, 로컬 검색 기능을 트리거하는 소정의 쿼리 클러스터 내의 검색 쿼리 부분이 로컬 의도 임계치를 충족하지 못하는 경우 소정의 클러스터가 로우 로컬 의도 클러스터임을 나타내는 값을 의도 플래그에 할당하고, 검색 쿼리가 하이 로컬 의도 클러스터에 포함되는 것으로 결정될 때 콘텐츠 아이템에 로컬 콘텐츠 특징을 추가하는 것을 포함하여 콘텐츠 아이템을 수정하는 것을 포함한다.
Description
본 명세서는 추론된 의도에 기반한 로컬 확장 트리거에 관한 것이다.
인터넷은 이미지 파일, 오디오 파일, 비디오 파일 및 웹 페이지와 같은 다양한 전자 문서에 대한 액세스를 제공한다. 검색 시스템은 검색 쿼리에 응답하는 전자 문서를 식별할 수 있다. 검색 쿼리는 하나 이상의 검색 쿼리, 이미지, 오디오 데이터 또는 이들의 조합을 포함할 수 있다.
디지털 콘텐츠 시스템은 특정 검색 쿼리에 대한 응답으로 사용자 콘텐츠를 제공할 수 있다. 주기적으로 디지털 콘텐츠 제공자는 사용자의 검색 쿼리에 위치 의도가 포함된 경우 조정된 콘텐츠를 사용자에게 제공할 수 있는 기능을 원할 수 있다.
본 명세서는 동일한 콘텐츠 제공자가 제공하는 제출된 검색 쿼리의 결정된 로컬 의도에 따라 사용자에게 콘텐츠 배포를 수정하는 것과 관련된 기술을 설명한다.
일반적으로, 본 명세서에 기술된 요지의 하나의 혁신적인 양태는 다음을 포함하는 방법으로 구체화될 수 있으며, 방법은, 하나 이상의 컴퓨터에 의해 복수의 쿼리 클러스터를 포함하는 클러스터 데이터를 획득하는 단계 -각각의 쿼리 클러스터는 하나 이상의 매칭 쿼리 특징에 기초하여 동일한 쿼리 클러스터에 포함된 일련의 검색 쿼리의 세트이며-; 복수의 쿼리 클러스터 중에서 소정의 각 쿼리 클러스터에 대해: 하나 이상의 컴퓨터에 의해, 검색 시스템에 입력될 때 로컬 검색 기능을 트리거하는 소정의 쿼리 클러스터 내의 검색 쿼리의 부분을 결정하는 단계; 로컬 검색 기능을 트리거하는 소정의 쿼리 클러스터 내의 검색 쿼리의 부분이 로컬 의도 임계치를 충족하는지 여부를 결정하는 단계; 하나 이상의 컴퓨터에 액세스할 수 있는 메모리에서, 로컬 검색 기능을 트리거하는 소정의 쿼리 클러스터 내의 검색 쿼리의 부분이 로컬 의도 임계치를 충족하는지 여부의 결정에 기초하여 소정의 쿼리 클러스터에 대한 의도 플래그를 유지하는 단계 -상기 의도 플래그를 유지하는 단계는, 하나 이상의 컴퓨터에 의해, 로컬 검색 기능을 트리거하는 소정의 쿼리 클러스터 내의 검색 쿼리의 부분이 로컬 의도 임계치를 충족할 때 소정의 클러스터가 하이 로컬 의도 클러스터임을 나타내는 값을 상기 의도 플래그에 할당하는 단계; 그리고 하나 이상의 컴퓨터에 의해, 로컬 검색 기능을 트리거하는 소정의 쿼리 클러스터 내의 검색 쿼리의 부분이 로컬 의도 임계치를 충족하지 못할 때 소정의 클러스터가 로우 로컬 의도 클러스터임을 나타내는 값을 상기 의도 플래그에 할당하는 단계를 포함하며-; 하나 이상의 컴퓨터에 의해, 클라이언트 장치에 의해 제출된 검색 쿼리 및 검색 쿼리가 포함된 복수의 클러스터 중 하나의 표시를 수신하는 단계; 하나 이상의 컴퓨터에 의해, 검색 쿼리가 하이 로컬 의도 클러스터 또는 로우 로컬 의도 클러스터에 포함되는지를 결정하기 위해 복수의 클러스터 중 하나와 연관된 의도 플래그에 액세스하는 단계; 그리고 검색 쿼리에 응답하는 단계를 포함하며, 상기 검색 쿼리에 응답하는 단계는, 하나 이상의 컴퓨터에 의해, 검색 쿼리가 하이 로컬 의도 클러스터에 포함되는 것으로 결정될 때 콘텐츠 아이템에 로컬 콘텐츠 특징을 추가하는 것을 포함하여, 검색 쿼리에 응답하여 클라이언트 장치에 배포된 콘텐츠 아이템을 수정하는 단계; 그리고 하나 이상의 컴퓨터에 의해, 검색 쿼리가 로우 로컬 의도 클러스터에 포함된 것으로 결정되는 경우 로컬 콘텐츠 특징을 추가하지 않고 검색 쿼리에 응답하여 클라이언트 장치에 배포된 콘텐츠 아이템을 배포하는 단계를 포함한다.
이들 및 다른 실시 예는 각각 다음 특징 중 하나 이상을 선택적으로 포함할 수 있다.
일부 예에서, 검색 시스템에 대해 입력될 때 로컬 검색 기능을 트리거하는 소정의 쿼리 클러스터 내에서 검색 쿼리의 부분을 결정하는 단계는, 소정의 쿼리 클러스터 내의 각 소정의 검색 쿼리에 대해, 소정의 쿼리가 소정의 검색 쿼리를 사용하여 검색 시스템에 의해 생성된 검색 결과 페이지에서 로컬 지식 패널의 프리젠테이션을 트리거하는지 여부를 결정하는 단계; 로컬 지식 패널의 프리젠테이션을 트리거하는 소정의 검색 쿼리의 총 수를 결정하는 단계; 그리고 소정의 쿼리 클러스터에 있는 검색 쿼리의 수와 관련하여 로컬 지식 패널의 프리젠테이션을 트리거하는 소정의 검색 쿼리의 총 수의 비율을 기반으로 검색 쿼리의 부분을 결정하는 단계를 포함한다.
일부 예에서, 검색 시스템에 입력될 때 로컬 검색 기능을 트리거하는 소정의 쿼리 클러스터 내에서 검색 쿼리의 부분을 결정하는 단계는, 소정의 쿼리 클러스터 내에서 소정의 각 검색 쿼리에 대해, 소정의 쿼리가 소정의 검색 쿼리를 사용하여 검색 시스템에 의해 생성된 검색 결과 페이지에서 하나 이상의 로컬 요소의 프리젠테이션을 트리거하는 로컬 속성을 포함하는지 여부를 결정하는 단계; 하나 이상의 로컬 요소의 프리젠테이션을 트리거하는 소정의 검색 쿼리의 총 수를 결정하는 단계; 그리고 소정의 쿼리 클러스터에 있는 검색 쿼리의 수에 대한 하나 이상의 로컬 요소의 프리젠테이션을 트리거하는 소정의 검색 쿼리의 총 수의 비율에 기초하여 검색 쿼리의 부분을 결정하는 단계를 포함한다.
일부 예에서, 상기 검색 쿼리가 하이 로컬 의도 클러스터 또는 로우 로컬 의도 클러스터에 포함되는지 여부를 결정하는 단계는, 검색 쿼리를 사용하여 다수의 다른 쿼리 클러스터를 검색하는 단계; 검색에 기초하여 검색 쿼리를 포함하는 것으로 결정된 소정의 쿼리 클러스터가 하이 로컬 의도 클러스터 또는 로우 로컬 의도 클러스터로 나타내는 값이 의도 플래그에 할당되었는지 여부를 결정하는 단계; 그리고 검색 쿼리를 포함하는 소정의 쿼리 클러스터의 의도 플래그에 상기 결정된 할당된 값에 기초하여 검색 쿼리가 하이 로컬 의도 쿼리 또는 로우 로컬 의도 쿼리임을 나타내는 값을 의도 플래그에 할당하는 단계를 포함한다.
일부 예에서, 상기 검색 쿼리가 하이 로컬 의도 클러스터 또는 로우 로컬 의도 클러스터에 포함되는지를 결정하는 단계는, 검색 쿼리의 데이터베이스에서 검색 쿼리를 식별하는 단계; 데이터베이스에서 검색 쿼리에 대해 하이 로컬 의도 플래그 또는 로우 로컬 의도 플래그가 설정되었는지 여부를 결정하는 단계; 그리고 하이 로컬 의도 플래그 또는 로우 로컬 의도 플래그가 데이터베이스의 검색 쿼리에 대해 설정되었는지 여부의 결정을 기반으로 검색 쿼리가 하이 로컬 의도 쿼리 또는 로우 로컬 의도 쿼리임을 나타내는 값을 의도 플래그에 할당하는 단계를 포함한다.
일부 예에서, 상기 수정된 콘텐츠 아이템의 추가된 로컬 콘텐츠 특징은 대화형 사용자 인터페이스 객체를 포함하고, 상기 방법은, 대화형 사용자 인터페이스 객체와의 상호 작용을 지정하는 정보를 수신하는 단계; 그리고 추가 콘텐츠가 표시되도록 하는 데이터를 제공하는 단계를 포함하며, 추가 콘텐츠는 상호 작용을 기반으로 선택된다.
일부 예들에서, 상기 검색 쿼리가 상기 하이 로컬 의도 클러스터에 포함되는 것으로 결정될 때 상기 로컬 콘텐츠 특징을 상기 콘텐츠 아이템에 추가하는 단계는 상기 콘텐츠 아이템에 그래픽 오버레이로서 상기 로컬 콘텐츠 특징을 추가하는 단계를 포함한다.
이 양태의 다른 실시 예는 컴퓨터 저장 장치에 인코딩된 방법의 동작을 수행하도록 구성된 시스템, 장치 및 컴퓨터 프로그램을 포함할 수 있다.
일반적으로, 본 명세서에 설명된 요지의 또 다른 혁신적인 양태는 데이터 처리 장치; 그리고 데이터 처리 장치와 데이터 통신하고, 데이터 처리 장치에 의해 실행될 때 데이터 처리 장치로 하여금 동작들을 수행하게 하는 명령어를 저장하는 비-일시적 컴퓨터 판독 가능 저장 매체를 포함하며, 상기 동작들은, 하나 이상의 컴퓨터에 의해, 복수의 쿼리 클러스터를 포함하는 클러스터 데이터를 획득하는 동작 -각각의 쿼리 클러스터는 하나 이상의 매칭 쿼리 특징에 기초하여 동일한 쿼리 클러스터에 포함된 검색 쿼리의 세트임-; 복수의 쿼리 클러스터 중에서 소정의 각 쿼리 클러스터에 대해:
하나 이상의 컴퓨터에 의해, 검색 시스템에 입력될 때 로컬 검색 기능을 트리거하는 소정의 쿼리 클러스터 내의 검색 쿼리의 부분을 결정하는 동작; 로컬 검색 기능을 트리거하는 소정의 쿼리 클러스터 내의 검색 쿼리의 부분이 로컬 의도 임계치를 충족하는지 여부를 결정하는 동작; 하나 이상의 컴퓨터에 액세스할 수 있는 메모리에서, 로컬 검색 기능을 트리거하는 소정의 쿼리 클러스터 내의 검색 쿼리의 부분이 로컬 의도 임계치를 충족하는지 여부의 결정에 기초하여 소정의 쿼리 클러스터에 대한 의도 플래그를 유지하는 동작 -상기 의도 플래그를 유지하는 동작은, 하나 이상의 컴퓨터에 의해, 로컬 검색 기능을 트리거하는 소정의 쿼리 클러스터 내의 검색 쿼리의 부분이 로컬 의도 임계치를 충족할 때 소정의 클러스터가 하이 로컬 의도 클러스터임을 나타내는 값을 상기 의도 플래그에 할당하는 동작; 그리고 하나 이상의 컴퓨터에 의해, 로컬 검색 기능을 트리거하는 소정의 쿼리 클러스터 내의 검색 쿼리의 부분이 로컬 의도 임계치를 충족하지 못할 때 소정의 클러스터가 로우 로컬 의도 클러스터임을 나타내는 값을 상기 의도 플래그에 할당하는 동작을 포함하며-; 하나 이상의 컴퓨터에 의해, 클라이언트 장치에 의해 제출된 검색 쿼리 및 검색 쿼리가 포함된 복수의 클러스터 중 하나의 표시를 수신하는 동작; 하나 이상의 컴퓨터에 의해, 검색 쿼리가 하이 로컬 의도 클러스터 또는 로우 로컬 의도 클러스터에 포함되는지를 결정하기 위해 복수의 클러스터 중 하나와 연관된 의도 플래그에 액세스하는 동작; 그리고 검색 쿼리에 응답하는 동작을 포함하며, 상기 검색 쿼리에 응답하는 동작은, 하나 이상의 컴퓨터에 의해, 검색 쿼리가 하이 로컬 의도 클러스터에 포함되는 것으로 결정될 때 콘텐츠 아이템에 로컬 콘텐츠 특징을 추가하는 것을 포함하여, 검색 쿼리에 응답하여 클라이언트 장치에 배포된 콘텐츠 아이템을 수정하는 동작; 그리고 하나 이상의 컴퓨터에 의해, 검색 쿼리가 로우 로컬 의도 클러스터에 포함된 것으로 결정될 때 로컬 콘텐츠 특징을 추가하지 않고 검색 쿼리에 응답하여 클라이언트 장치에 배포된 콘텐츠 아이템을 배포하는 동작을 포함한다.
일반적으로, 본 명세서에 기술된 요지의 또 다른 혁신적인 양태는 컴퓨터 프로그램으로 인코딩된 비-일시적 컴퓨터 저장 매체에서 구현될 수 있으며, 컴퓨터 프로그램은 데이터 처리 장치에 의해 실행될 때 데이터 처리 장치로 하여금 동작들을 수행하게하는 명령어를 포함하며, 상기 동작들은, 하나 이상의 컴퓨터에 의해, 복수의 쿼리 클러스터를 포함하는 클러스터 데이터를 획득하는 동작 -각각의 쿼리 클러스터는 하나 이상의 매칭 쿼리 특징에 기초하여 동일한 쿼리 클러스터에 포함된 검색 쿼리의 세트임-; 복수의 쿼리 클러스터 중에서 소정의 각 쿼리 클러스터에 대해: 하나 이상의 컴퓨터에 의해, 검색 시스템에 입력될 때 로컬 검색 기능을 트리거하는 소정의 쿼리 클러스터 내의 검색 쿼리의 부분을 결정하는 동작; 로컬 검색 기능을 트리거하는 소정의 쿼리 클러스터 내의 검색 쿼리의 부분이 로컬 의도 임계치를 충족하는지 여부를 결정하는 동작; 하나 이상의 컴퓨터에 액세스할 수 있는 메모리에서, 로컬 검색 기능을 트리거하는 소정의 쿼리 클러스터 내의 검색 쿼리의 부분이 로컬 의도 임계치를 충족하는지 여부의 결정에 기초하여 소정의 쿼리 클러스터에 대한 의도 플래그를 유지하는 동작 -상기 의도 플래그를 유지하는 동작은, 하나 이상의 컴퓨터에 의해, 로컬 검색 기능을 트리거하는 소정의 쿼리 클러스터 내의 검색 쿼리의 부분이 로컬 의도 임계치를 충족할 때 소정의 클러스터가 하이 로컬 의도 클러스터임을 나타내는 값을 상기 의도 플래그에 할당하는 동작; 그리고 하나 이상의 컴퓨터에 의해, 로컬 검색 기능을 트리거하는 소정의 쿼리 클러스터 내의 검색 쿼리의 부분이 로컬 의도 임계치를 충족하지 못할 때 소정의 클러스터가 로우 로컬 의도 클러스터임을 나타내는 값을 상기 의도 플래그에 할당하는 동작을 포함하며-; 하나 이상의 컴퓨터에 의해, 클라이언트 장치에 의해 제출된 검색 쿼리 및 검색 쿼리가 포함된 복수의 클러스터 중 하나의 표시를 수신하는 동작; 하나 이상의 컴퓨터에 의해, 검색 쿼리가 하이 로컬 의도 클러스터 또는 로우 로컬 의도 클러스터에 포함되는지를 결정하기 위해 복수의 클러스터 중 하나와 연관된 의도 플래그에 액세스하는 동작; 그리고 검색 쿼리에 응답하는 동작을 포함하며, 상기 검색 쿼리에 응답하는 동작은, 하나 이상의 컴퓨터에 의해, 검색 쿼리가 하이 로컬 의도 클러스터에 포함되는 것으로 결정될 때 콘텐츠 아이템에 로컬 콘텐츠 특징을 추가하는 것을 포함하여, 검색 쿼리에 응답하여 클라이언트 장치에 배포된 콘텐츠 아이템을 수정하는 동작; 그리고 하나 이상의 컴퓨터에 의해, 검색 쿼리가 로우 로컬 의도 클러스터에 포함된 것으로 결정될 때 로컬 콘텐츠 특징을 추가하지 않고 검색 쿼리에 응답하여 클라이언트 장치에 배포된 콘텐츠 아이템을 배포하는 동작을 포함한다.
본 명세서에 설명된 요지의 특정 실시 예는 다음의 이점 중 하나 이상을 실현하기 위해 구현될 수 있다. 본 명세서에서 설명된 기술은 컴퓨터 시스템이 쿼리의 의도(intent)를 추론할 수 있게 하는데, 여기서 그 의도는 직접 표현되지 않고 그 의도를 활용하여 확장(예를 들어, 특정 조건의 발생시에만 트리거 및/또는 표시되는 기능)을 트리거한다. 의도를 추론하고 사용자 입력 자체(예, 검색 쿼리)에서 직접 관찰할 수 없는 의도를 기반으로 시스템에서 수행한 액션을 수정하는 이 기능을 통해 컴퓨터 시스템은 단순히 사용자 입력에 응답하는 것이 아니라 추론된 의도에 따라 다르게 반응할 수 있다. 본 명세서에서 설명된 기술은 또한 컴퓨터 시스템이 다른 기술을 사용하여 수행될 수 있는 것보다 더 빠르게 사용자 제출 쿼리에 대한 이러한 의도 기반 응답을 수행할 수 있게 한다. 예를 들어, 본 명세서 전체에서 설명된 기술을 통해 시스템은 검색 쿼리에 대한 검색 시스템 응답을 기반으로 의도를 결정한 다음 해당 정보를 활용하여 검색 쿼리에 대한 의도 결정을 알릴 수 있다. 또한 의도 추론은 모두 관련된 많은 쿼리의 클러스터에서 수행되며, 추론은 클러스터의 모든 쿼리가 검색 쿼리의 클러스터에 대한 집계 검색 시스템 응답을 기반으로 동일한 의도(예: 로컬 의도 또는 비-로컬 의도)를 갖는 것으로 결정되도록, 클러스터의 쿼리에 대한 집계 응답을 기반으로 한다. 이렇게 하면 검색 시스템에서 단일 쿼리를 분리하여 처리하는 것이 아니라 검색 시스템이 클러스터의 모든 관련 쿼리를 처리함으로써 이점을 얻는 보다 정확하고 강력한 의도 분류 프로세스를 제공한다. 이렇게 하면 단일 쿼리와 관련된 다른 쿼리의 컨텍스트에서 고려할 때 단일 쿼리의 특정 특성(예: 다른 의도와 관련된 특정 기능)이 해당 단일 쿼리의 보다 일반적인 의도를 재정의(overriding)하는 것을 방지한다.
일부 검색 동작에서, 높은 위치 의도를 갖는 검색 쿼리가 제출될 때 디지털 콘텐츠에 로컬 콘텐츠 특징(features)을 제공하고, 검색 쿼리가 낮은 위치 의도를 가질 때 디지털 콘텐츠에 로컬 콘텐츠 특징을 제공하지 않는 것이 바람직한다. 본 명세서에서 설명된 기술은 수신된 검색 쿼리가 하이 로컬 의도 쿼리 클러스터의 일부인 것으로 간주될 때 로컬 콘텐츠 특징의 프리젠테이션을 트리거하는 것을 용이하게 할 수 있으며, 수신된 검색 쿼리가 낮은 로컬 의도 쿼리 클러스터(또는 하이 로컬 의도 쿼리 클러스터로 간주되지 않은 쿼리 클러스터)의 일부로 간주될 때 로컬 콘텐츠 특징의 프레젠테이션을 트리거하지 않는다. 일부 상황에서, 로컬 콘텐츠 특징(피처)의 트리거링은 콘텐츠의 특정 부분을 수정하여 로컬 의도 콘텐츠(또는 추가 액션을 트리거하는 사용자 인터페이스 컨트롤과 같은 다른 로컬 의도 특징(피처))를 포함한다.
특정 사용자 세트 또는 서브세트에 제공된 콘텐츠를 수정하면 대역폭 및 컴퓨팅 리소스를 보다 효율적으로 활용할 수 있다. 예를 들면, 위치 의도가 높은 검색 쿼리를 입력하는 사용자에게 제공되는 콘텐츠(예: 로컬 콘텐츠 특징)의 양(또는 크기)은 위치 의도가 낮은 검색 쿼리를 입력하는 사용자에게 제공되는 콘텐츠의 양(또는 크기)보다 많을 수 있다. 한편, 로컬 콘텐츠 특징은, 사용자가 웹 페이지와 같은 디지털 콘텐츠 소스로 보다 쉽게 탐색할 수 있도록 돕거나 사용자가 디지털 콘텐츠 소스로 이동할 필요가 없도록 디지털 콘텐츠 소스에 대한 로컬 정보를 사용자에게 직접 제공하며, 따라서 사용자가 관심있는 콘텐츠에 도달하는 데 필요한 시간과 데이터 전송을 줄일 수 있다. 예를 들면, 로컬 콘텐츠 특징 포맷(형식)은 주소 정보, 통화 버튼, 방향 버튼(사용 가능한 경우) 등을 포함할 수 있다. 따라서, 다운로드에 오랜 시간이 걸리지 않는 로컬 콘텐츠 특징(예: 텍스트 콘텐츠)은 사용자 장치가 디지털 콘텐츠에서 즉시 액세스 정보를 시작할 수 있도록 한다. 이러한 방식으로 사용자가 현재 로컬 콘텐츠 특징에서 제공되는 위치 또는 통화 정보에 액세스하기 위해 사용자 장치에서 다른 애플리케이션을 사용하거나 디지털 콘텐츠 웹 사이트에 먼저 액세스해야 하는 것을 바이패스할 수 있다면 더 적은 대역폭이 활용된다.
또한, 집계된 검색 쿼리의 클러스터를 둘 이상의 서브세트로 분할하면(예: 검색 쿼리의 위치 의도에 따라) 검색 쿼리의 인구의 자동 분할을 위한 예측 모델을 개선할 수 있다. 콘텐츠 공급자는 검색 쿼리 클러스터의 세분화(segmentation)를 활용하여 특정 제출된 쿼리에 대한 응답으로 해당 콘텐츠와 함께 로컬 콘텐츠 특징을 제공해야 하는 클러스터의 로컬 의도 비율을 지정할 수 있다. 예를 들어, 소정의 콘텐츠 제공자는 제출된 검색 쿼리가 로컬 의도 임계치(예: 60% 또는 기타 적절한 양) 이상으로 결정된 클러스터에 속하는 경우, 디지털 콘텐츠 결과와 함께 로컬 콘텐츠 특징을 제공해야 한다고 지정할 수 있다. 또한, 쿼리를 클러스터로 이미 그룹화하고 쿼리 클러스터가 하이 로컬 의도 쿼리 클러스터 또는 로우 로컬 의도 쿼리 클러스터임을 나타내는 값을 의도 플래그에 할당하면 컴퓨팅 리소스를보다 효율적으로 사용할 수 있고, 콘텐츠 특징 제공 실패 또는 지연으로 인해 발생할 수 있는 오류(예: 웹 페이지 내의 레이아웃 오류)를 줄인다. 예를 들면, 쿼리가 제출된 후, 디지털 콘텐츠 제공자는 로컬 의도 데이터베이스에 신속하게 액세스하여 쿼리가(예: 임계 값 기반으로) 하이 로컬 의도인지 로우 로컬 의도인지를 결정할 수 있으며, 다른 데이터베이스에 액세스하거나 추가 네트워크 데이터 트랜잭션을 시작할 필요없이 로컬 콘텐츠 특징을 제공할지 여부를 결정할 수 있다. 따라서, 로컬 콘텐츠 특징을 제공할지 여부에 대한 결정은, 검색 시스템이 해당 정보를 제공하는 데 사용되거나 디지털 콘텐츠 시스템이 별도의 프로세스로 결정하는 경우보다 더 적은 메모리/스토리지(저장소) 액세스 및 네트워크 트랜잭션으로 더 빠르게 이루어질 수 있다. 또한, 하나 이상의 실시 예에 따르면, 쿼리의 위치 의도를 결정함으로써 분석 도구(analytic tools)는 이전에는 사용할 수 없었던 정보로 더욱 향상될 수 있다. 예를 들면, 향상된 데이터는 콘텐츠와 관련된 다양한 결과를 예측하는 정확도를 향상시킬 수 있으며, 결과적으로 콘텐츠 제공 업체와 콘텐츠 배포자가 검색 쿼리의 위치 의도에 따라 사용자에게 콘텐츠 배포를 최적화하는 데 사용하는 현재 시스템을 개선할 수 있다. 현재 시스템에 대한 이러한 개선은 사용자가 자신의 관심사에 더 부합하는 콘텐츠를 수신하는 동시에 해당 사용자가 받는 관련성이 낮은 콘텐츠의 양을 줄인다. 따라서, 본 명세서에 설명된 개선 사항은 예를 들어 쿼리의 위치 의도를 기반으로 지정된 사용자에게 제공되는 콘텐츠를 필터링함으로써 보다 개인화되고 보다 효율적인(예: 대역폭 사용 측면에서) 온라인 브라우징 경험으로 이어질 수 있다.
본 명세서에 기술된 요지의 하나 이상의 실시 예의 세부 사항은 첨부된 도면 및 이하의 설명에서 설명된다. 요지의 다른 특징, 측면 및 이점은 설명, 도면 및 청구 범위로부터 명백해질 것이다.
도 1a 및 1b는 콘텐츠를 배포하기 위한 예시적인 환경의 블록 다이어그램이다.
도 2는 쿼리 데이터를 분석하기 위한 예시적인 로컬 의도 시스템의 시스템 흐름도이다.
도 3a 및 3b는 쿼리의 로컬 의도에 기초하여 쿼리 결과를 설명하는 디스플레이 데이터를 제공하는 모바일 장치의 예시적인 스크린 샷이다.
도 4a 및 4b는 디지털 콘텐츠의 예시적인 다이어그램이다.
도 5는 로컬 의도 시스템을 사용하기 위한 예시적인 프로세스의 흐름도이다.
도 6은 디지털 컴포넌트 배포 시스템을 사용하기 위한 예시적인 프로세스의 흐름도이다.
도 7은 본 개시에 설명된 방법, 시스템 및 프로세스를 구현하는 데 사용될 수 있는 예시적인 컴퓨터 시스템의 블록도이다.
다양한 도면에서 유사한 참조 번호 및 지정은 유사한 요소를 나타낸다.
도 2는 쿼리 데이터를 분석하기 위한 예시적인 로컬 의도 시스템의 시스템 흐름도이다.
도 3a 및 3b는 쿼리의 로컬 의도에 기초하여 쿼리 결과를 설명하는 디스플레이 데이터를 제공하는 모바일 장치의 예시적인 스크린 샷이다.
도 4a 및 4b는 디지털 콘텐츠의 예시적인 다이어그램이다.
도 5는 로컬 의도 시스템을 사용하기 위한 예시적인 프로세스의 흐름도이다.
도 6은 디지털 컴포넌트 배포 시스템을 사용하기 위한 예시적인 프로세스의 흐름도이다.
도 7은 본 개시에 설명된 방법, 시스템 및 프로세스를 구현하는 데 사용될 수 있는 예시적인 컴퓨터 시스템의 블록도이다.
다양한 도면에서 유사한 참조 번호 및 지정은 유사한 요소를 나타낸다.
제출된 검색 쿼리의 결정된 로컬 의도를 기반으로 콘텐츠를 수정하고 및/또는 사용자에게 콘텐츠를 배포하는 시스템, 방법 및 컴퓨터 프로그램 제품이 설명된다. 예를 들면, 본 명세서는 쿼리의 로컬 의도가 임계치를 초과하는 것으로 결정될 때 쿼리의 로컬 의도를 결정하고 디지털 컴포넌트에 대한 로컬 확장(예: 전화 번호, 주소, 지도)을 포함하는 것과 같은 디지털 컴포넌트의 수정을 트리거하는 방법에 대해 설명한다. 로컬 확장은 디지털 컴포넌트에 적용할 수 있는 서식(formatting) 옵션이다. 로컬 확장의 몇 가지 예로는 주소 정보, 통화 버튼, 방향 버튼(사용 가능한 경우) 등이 있다. 로컬 확장(본 명세서에서 로컬 콘텐츠 특징이라고도 함)은 사용자가 디지털 컴포넌트 소스를 보다 쉽게 탐색하거나 디지털 컴포넌트 소스와 관련된 정보를 얻을 수 있도록 도와준다.
아래에서 자세히 설명하는 것처럼, 기존 클러스터링 알고리즘에 의해 제공되는 기존 쿼리 클러스터를 분석하여 로컬 의도 쿼리 클러스터 데이터를 결정하고 각 클러스터의 로컬 의도를 결정한다. 어떤 상황에서, 각 소정의 클러스터의 로컬 의도는 검색 시스템 내에서 로컬 검색 기능을 트리거하는 해당 클러스터 내의 쿼리의 일부(부분)(예: 백분율)를 기반으로 결정된다. 예를 들어, 각 클러스터의 로컬 의도는 해당 클러스터의 쿼리 중 해당 쿼리를 사용하여 생성된 검색 결과의 지식 패널(knowledge panel) 내에서 로컬 기능을 트리거하는 비율을 기반으로 결정할 수 있다. 쿼리 클러스터의 로컬 의도가 결정되면 수신된 쿼리가 충분한 로컬 의도가 있는 것으로 간주되는 클러스터에 속할 때 수신된 쿼리가 로컬 의도 쿼리임을 나타내는 값을 의도 플래그에 할당할 수 있다. 로컬 의도 쿼리를 위한 디지털 콘텐츠는 쿼리에 대한 응답으로 제공되기 전에 로컬 콘텐츠 특징, 예를 들어 로컬 확장을 포함하도록 수정될 수 있다. 디지털 콘텐츠 컴포넌트를 갖는 로컬 콘텐츠 특징을 예시하는 예시적인 다이어그램이 도 4b3에 도시되어있다.
이러한 기능과 추가 기능은 아래에 자세히 설명되어 있다. 간결하게 하기 위해 다음 설명은 웹 페이지 및 웹 사이트 간의 사용자 탐색을 나타내지만 설명은 기본 애플리케이션 및/또는 다른 인터넷 연결 리소스의 조합에 대해서도 적용할 수 있다.
도 1a 및 1b는 전자 문서와 함께 클라이언트 장치에 표시하기 위해 디지털 컴포넌트가 배포되는 예시적인 환경(100A 및 100B)의 블록도이다. 예시적인 환경(100A)은 근거리 통신망(LAN), 광역 통신망(WAN), 인터넷 또는 이들의 조합과 같은 네트워크(102)를 포함한다. 네트워크(102)는 전자 문서 서버(104), 클라이언트 장치(106), 디지털 컴포넌트 서버(108), 디지털 컴포넌트 배포 시스템(110)(컴포넌트 배포 시스템 또는 DCDS라고도 함), 클러스터링 시스템(130), 로컬 의도 시스템(140) 및 검색 시스템(160)을 연결한다. 예시적인 환경(100)은 많은 상이한 전자 문서 서버(104), 클라이언트 장치(106) 및 디지털 컴포넌트 서버(108)를 포함할 수 있다.
클라이언트 장치(106)는 네트워크(102)를 통해 자원(리소스)을 요청하고 수신할 수 있는 전자 장치이다. 예시적인 클라이언트 장치(106)는 개인용 컴퓨터, 모바일 통신 장치(예를 들어, 스마트 폰) 및 네트워크(102)를 통해 데이터를 송수신할 수 있는 다른 장치(예를 들어, 태블릿 장치 또는 웨어러블 컴퓨팅 장치)를 포함한다. 클라이언트 장치(106)는 일반적으로 네트워크(102)를 통한 데이터의 송수신을 용이하게 하기 위해 웹 브라우저와 같은 사용자 애플리케이션을 포함한다. 그러나 클라이언트 장치(106)에 의해 실행되는 네이티브 애플리케이션은 또한 네트워크(102)를 통한 데이터의 송수신을 용이하게 할 수 있다.
또 다른 예에서, 전자 문서 서버(104)는 클라이언트 장치(106)가 앱을 다운로드할 수 있는 앱 서버를 포함할 수 있다. 이 예에서, 클라이언트 장치(106)는 클라이언트 장치(106)에 앱을 설치하는 데 필요한 파일을 다운로드한 다음 다운로드 된 앱을 로컬에서 실행할 수 있다.
전자 문서는 클라이언트 장치(106)에서 콘텐츠 세트를 제공하는 데이터이다. 전자 문서의 예로는 웹 페이지, 워드 프로세싱 문서, PDF(Portable Document Format) 문서, 이미지, 비디오, 검색 결과 페이지 및 피드 소스가 있다. 모바일, 태블릿 또는 데스크톱 컴퓨팅 장치에 설치된 애플리케이션과 같은 기본(네이티브) 애플리케이션(예: "앱(apps)")도 전자 문서의 예이다. 전자 문서는 전자 문서 서버(104)("전자 문서 서버")에 의해 클라이언트 장치(106)에 제공될 수 있다. 예를 들면, 전자 문서 서버(104)는 발행자(publisher) 웹사이트를 호스팅하는 서버를 포함할 수 있다. 이 예에서, 클라이언트 장치(106)는 소정의 발행자 웹 페이지에 대한 요청을 개시할 수 있고, 소정의 발행자 웹 페이지를 호스팅하는 전자 문서 서버(104)는 클라이언트 장치(106)에서 소정의 웹 페이지의 표시를 개시하는 기계 실행 가능 명령어를 전송함으로써 요청에 응답할 수 있다.
전자 문서에는 다양한 콘텐츠가 포함될 수 있다. 예를 들어, 전자 문서는 전자 문서 자체 내에 있거나 시간이 지나도 변경되지 않는 정적 콘텐츠(예: 텍스트 또는 기타 지정된 콘텐츠)를 포함할 수 있다. 전자 문서에는 시간이 지남에 따라 또는 요청별로 변경될 수 있는 동적 콘텐츠도 포함될 수 있다. 예를 들어, 특정 전자 문서의 발행자는 전자 문서의 부분을 채우는 데 사용되는 데이터 소스를 유지할 수 있다. 이 예에서, 소정의 전자 문서는 소정의 전자 문서가 클라이언트 장치(106)에 의해 처리(예를 들어, 렌더링 또는 실행)될 때 클라이언트 장치(106)가 데이터 소스로부터 콘텐츠를 요청하게 하는 하나 이상의 태그 또는 스크립트를 포함할 수 있다. 클라이언트 장치(106)는 데이터 소스로부터 획득된 콘텐츠를 포함하는 복합 전자 문서를 생성하기 위해 데이터 소스로부터 획득된 콘텐츠를 소정의 전자 문서에 통합한다. 전자 문서(간결성을 위해 단순히 문서라고도 함)가 반드시 파일에 해당하는 것은 아니다. 문서는 다른 문서를 보관하는 파일의 일부, 해당 문서 전용 단일 파일 또는 여러 개의 조정된 파일에 저장될 수 있다. 전자 문서는 웹 페이지, 네이티브 애플리케이션 사용자 인터페이스 또는 다른 적절한 전자 형식(포맷)의 형태일 수 있다.
본 명세서서 전체에서 사용되는 "디지털 컴포넌트"라는 용어는 디지털 콘텐츠 또는 디지털 정보의 개별 단위(예: 비디오 클립, 오디오 클립, 멀티미디어 클립, 이미지, 텍스트 또는 다른 콘텐츠 단위)를 의미한다. 디지털 컴포넌트는 물리적 메모리 장치에 단일 파일 또는 파일 모음으로 전자적으로 저장될 수 있으며 디지털 컴포넌트는 비디오 파일, 오디오 파일, 멀티미디어 파일, 이미지 파일 또는 텍스트 파일의 형태를 취할 수 있으며 광고 정보를 포함할 수 있으며, 광고는 디지털 컴포넌트의 한 유형이다.
일부 상황에서, 소정의 전자 문서는 디지털 컴포넌트 배포 시스템(110)을 참조하는 하나 이상의 디지털 컴포넌트 태그 또는 디지털 컴포넌트 스크립트를 포함할 수 있다. 이러한 상황에서, 디지털 컴포넌트 태그 또는 디지털 컴포넌트 스크립트는 소정의 전자 문서가 클라이언트 장치(106)에 의해 처리될 때 클라이언트 장치(106)에 의해 실행된다. 디지털 컴포넌트 태그 또는 디지털 컴포넌트 스크립트의 실행은 하나 이상의 디지털 컴포넌트(112)에 대한 요청("컴포넌트 요청"이라고 함)을 생성하도록 클라이언트 장치(106)를 구성하고, 이는 네트워크(102)를 통해 하나 이상의 디지털 컴포넌트 서버를 포함하는 디지털 컴포넌트 배포 시스템(110)으로 전송된다. 예를 들면, 디지털 컴포넌트 태그 또는 디지털 컴포넌트 스크립트는 클라이언트 장치(106)가 헤더 및 페이로드 데이터를 포함하는 패킷화된 데이터 요청을 생성하도록 할 수 있다. 컴포넌트 요청(112)은, 디지털 컴포넌트가 요청되는 서버의 이름(또는 네트워크 위치)과 같은 특징을 지정하는 이벤트 데이터, 요청 장치(예를 들어, 클라이언트 장치(106))의 이름(또는 네트워크 위치) 및/또는 디지털 컴포넌트 배포 시스템(110)이 요청에 응답하여 제공된 하나 이상의 디지털 컴포넌트를 선택하기 위해 사용할 수 있는 정보를 포함할 수 있다. 컴포넌트 요청(112)은 클라이언트 장치(106)에 의해 네트워크(102)(예를 들어, 통신 네트워크)를 통해 디지털 컴포넌트 배포 시스템(110)의 서버로 전송된다.
컴포넌트 요청(112)은 요청되는 전자 문서 및 디지털 컴포넌트가 제시될 수 있는 전자 문서의 위치의 특성과 같은 다른 이벤트 특징을 지정하는 이벤트 데이터를 포함할 수 있다. 예를 들면, 디지털 컴포넌트가 표시될 전자 문서(예: 웹 페이지)에 대한 참조(예: URL)를 지정하는 이벤트 데이터, 디지털 컴포넌트를 표시하는 데 사용 가능한 전자 문서의 사용 가능한 위치, 사용 가능한 위치의 크기 및/또는 위치에서 제시하기에 적합한 미디어 유형이 디지털 컴포넌트 배포 시스템(110)에 제공될 수 있다. 유사하게, 전자 문서에 의해 참조되는 전자 문서( "문서 키워드") 또는 엔티티(예: 사람, 장소 또는 사물)와 관련된 키워드를 지정하는 이벤트 데이터는 또한 컴포넌트 요청(112)(예: 페이로드 데이터)에 포함될 수 있고, 전자 문서와 함께 제시하기에 적합한 디지털 컴포넌트의 식별을 용이하게 하기 위해 디지털 컴포넌트 배포 시스템(110)에 제공될 수 있다. 이벤트 데이터는 또한 검색 결과 페이지를 얻기 위해 클라이언트 장치(106)로부터 제출된 검색 쿼리 및/또는 검색 결과 및/또는 검색 결과에 포함된 텍스트, 청각적 또는 다른 시각적 콘텐츠를 지정하는 데이터를 포함할 수 있다. 본 명세서 전체에서 사용되는 용어 검색 쿼리 및 쿼리는 검색 시스템(160)과 같은 전통적인 검색 엔진을 통해 제출되는 전통적인 검색 쿼리 이상의 쿼리를 포함하는 것으로 해석되어야한다. 예를 들어, 이러한 용어는 인공 지능 어시스턴트가 수신하는 음성 쿼리, 음성 명령 또는 음성 명령어뿐만 아니라 인공 지능 어시스턴트와의 기타 상호 작용과 같은 다른 유형의 쿼리를 다루기 위한 것이다.
인공 지능 어시스턴트는 휴대폰, 태블릿 장치, 데스크톱 컴퓨팅 장치, 텔레비전, 가전 제품 또는 전용 어시스턴트 장치와 같은 다양한 장치에서 구현될 수 있다. 인공 지능 어시스턴트가 포함된 기기에는 일반적으로 사용자(예: 명령 및/또는 검색 쿼리)의 음성 입력을 수신하는 마이크로폰과 사용자의 음성 입력에 대해 가청 응답을 제공하는 스피커가 포함된다. 이러한 장치는 또한 시각적 피드백을 제공할 수 있고 및/또는 다른 장치(예를 들어, 텔레비전 또는 다른 디스플레이 또는 다른 스피커)에 통신적으로 연결되어 사용자에게 오디오 및/또는 시각적 정보를 제공할 수 있는 디스플레이를 포함할 수 있다.
컴포넌트 요청(112)은 또한 클라이언트 장치의 사용자가 제공한 정보, 컴포넌트 요청이 제출된 주(state) 또는 지역을 나타내는 지리 정보, 또는 디지털 컴포넌트가 표시되는 환경에 대한 컨텍스트를 제공하는 기타 정보(예: 컴포넌트 요청 시간, 컴포넌트 요청 요일, 디지털 컴포넌트가 표시될 장치 유형(예: 데스크톱 장치, 모바일 장치 또는 태블릿 장치))와 같은 다른 정보와 관련된 이벤트 데이터를 포함할 수 있다. 컴포넌트 요청(112)은 예를 들어 패킷화된 네트워크를 통해 전송될 수 있고, 컴포넌트 요청(112) 자체는 헤더 및 페이로드 데이터를 갖는 패킷화된 데이터로서 포맷될 수 있다. 헤더는 패킷의 대상을 지정할 수 있으며 페이로드 데이터는 위에서 설명한 정보를 포함할 수 있다.
컴포넌트 배포 시스템(110)은 컴포넌트 요청(112) 수신 및/또는 컴포넌트 요청(112)에 포함된 정보를 사용하는 것에 응답하여 소정의 전자 문서와 함께 제공될 디지털 컴포넌트를 선택한다. 일부 구현에서, 디지털 컴포넌트의 지연된 선택에 의해 야기될 수 있는 오류를 피하기 위해 1 초 이내에 디지털 컴포넌트가 선택된다. 예를 들면, 컴포넌트 요청(112)에 응답하여 디지털 컴포넌트를 제공하는 데 있어 지연은 클라이언트 장치(106)에서 페이지로드 오류를 발생시키거나 전자 문서의 다른 부분이 클라이언트 장치(106)에 제시된 후에도 전자 문서의 일부가 채워지지 않게(unpopulated) 할 수 있다. 또한, 클라이언트 장치(106)에 디지털 컴포넌트를 제공하는 지연이 증가함에 따라, 디지털 컴포넌트가 클라이언트 장치(106)에 전달될 때 전자 문서가 더 이상 클라이언트 장치(106)에 제공되지 않을 가능성이 더 높으며, 따라서 전자 문서에 대한 사용자의 경험에 부정적인 영향을 미친다. 또한, 디지털 컴포넌트 제공의 지연은 예를 들어, 디지털 컴포넌트가 제공될 때 전자 문서가 더 이상 클라이언트 장치(106)에 제시되지 않는 경우 디지털 컴포넌트의 전달 실패를 초래할 수 있다.
일부 구현에서, 디지털 컴포넌트 배포 시스템(110)은 컴포넌트 요청을 처리하고 이를 수행하기 위한 제한된 시간(예를 들어, 1초 미만) 내에 요청에 응답하는 하나 이상의 디지털 컴포넌트를 제공하기 위해 분산(배포) 컴퓨팅 시스템에서 구현된다. 분산 컴퓨팅 시스템은 예를 들어, 상호 연결되고 요청(112)에 응답하여 디지털 컴포넌트를 식별 및 배포(분배)하는 다수의 컴퓨팅 장치(114) 세트 및 서버를 포함한다. 다수의 컴퓨팅 장치(114) 세트는 함께 작동하여, 수백만 개의 이용 가능한 디지털 컴포넌트(DC1-x)로부터 전자 문서에 제시될 수 있는 디지털 컴포넌트 세트(및 이용 가능한 경우 해당 로컬 콘텐츠 특징)를 식별한다. 수백만 개의 이용 가능한 디지털 컴포넌트는 예를 들어 디지털 컴포넌트 데이터베이스(115)에서 인덱싱 될 수 있다. 각각의 디지털 컴포넌트(사용 가능한 경우)에 대한 관련 로컬 콘텐츠 특징은 예를 들어 로컬 콘텐츠 특징 데이터베이스(116)에서 인덱싱될 수 있으며, 여기서 각 디지털 컴포넌트 인덱스 엔트리는 대응하는 로컬 콘텐츠 특징(LCF1-LCFx)을 참조할 수 있다. 디지털 컴포넌트 데이터베이스(115)의 각 디지털 컴포넌트 인덱스 엔트리는 대응하는 디지털 컴포넌트를 참조할 수 있고 및/또는 대응하는 디지털 컴포넌트의 분산(배포)/전송에 기여하는(예를 들어, 조건 또는 제한) 배포 파라미터(DP1-DPx)를 포함할 수 있다. 예를 들면, 배포 파라미터는 컴포넌트 요청이 디지털 컴포넌트의 배포 파라미터 중 하나와 일치하는(예를 들어, 정확히 또는 미리 지정된 유사성 수준과 함께) 적어도 하나의 기준을 포함하도록 요구함으로써 디지털 컴포넌트의 전송에 기여할 수 있다. 또한, 배포(distribution) 파라미터는 쿼리가 하이 로컬 의도 클러스터로 결정된 쿼리의 클러스터에 매칭된 컴포넌트 요청으로부터 결정될 때 디지털 컴포넌트의 전송에 포함될 로컬 콘텐츠 특징을 요청함으로써 디지털 컴포넌트의 전송에 기여할 수 있다. 디지털 컴포넌트의 전송과 함께 로컬 콘텐츠 특징을 포함하는 것은 도 3b, 4b에 도시되어있다.
일부 구현에서, 특정 디지털 컴포넌트에 대한 배포 파라미터는 디지털 컴포넌트가 프레젠테이션에 적합하도록 일치해야 하는 배포 키워드(예: 전자 문서, 문서 키워드, 검색 쿼리 또는 컴포넌트 요청(112)에 지정된 용어)를 포함할 수 있다. 다시 말해, 배포(분배) 파라미터는 네트워크(102)를 통해 디지털 컴포넌트의 분배(배포)(예를 들어, 전송) 및 하이 로컬 의도 쿼리를 위한 대응하는 로컬 콘텐츠 특징을 트리거하는 데 사용된다. 배포 파라미터는 또한 컴포넌트 요청(112)이 특정 지리적 영역(예: 국가 또는 주)을 지정하는 정보 및/또는 컴포넌트 요청(112)이 특정 유형의 클라이언트 장치(예: 데스크톱 기기, 휴대 기기 또는 태블릿 기기)에서 발생했음을 지정하는 정보를 포함하도록 요구할 수 있는데, 이는 디지털 컴포넌트가 프리젠테이션에 적합하도록 하기 위해서이다. 배포 파라미터는 (예: 다른 사용 가능한 디지털 컴포넌트 중에서) 배포(분배)/전송을 위한 디지털 컴포넌트의 적격성을 평가하는 데 사용되는 적격성 값(예: 순위 점수, 입찰가 또는 기타 지정된 값)을 지정할 수도 있다.
적격한 디지털 컴포넌트의 식별은 세트(114) 내의 컴퓨팅 장치(예를 들어, 114, 114b 및 114c) 사이에 (예: 서버에 의해) 할당되는 다중 태스크(Task)(117a-117c)로 (예: 서버에 의해) 분할될 수 있다. 예를 들면, 세트(114) 내의 상이한 컴퓨팅 장치(디바이스)는 컴포넌트 요청(112)에 포함된 정보와 일치하는 배포 파라미터를 갖는 다양한 디지털 컴포넌트를 식별하기 위해 디지털 컴포넌트 데이터베이스(115)의 상이한 부분을 각각 분석할 수 있다. 또한, 세트(114) 내의 상이한 컴퓨팅 장치는 쿼리가 컴포넌트 요청(112)으로부터 결정되는 경우 각각의 디지털 컴포넌트와 연관된 각각의 로컬 콘텐츠 특징을 식별하기 위해 로컬 콘텐츠 특징(116)의 상이한 부분을 각각 분석할 수 있다.
일부 구현에서, 세트(114) 내의 각각의 소정의 컴퓨팅 장치는 상이한 데이터 차원(또는 차원 세트)을 분석하고, 분석 결과(Res1-Res3)(118A-118C)를 디지털 컴포넌트 배포 시스템(110)으로 다시 전달할(예를 들어, 전송)할 수 있다. 예를 들면, 세트(114) 내의 컴퓨팅 장치 각각에 의해 제공된 결과(118A-118C)는 컴포넌트 요청(112) 및/또는 특정 배포 파라미터를 갖는 디지털 컴포넌트의 서브세트에 응답하여 분배(배포)에 적합한 디지털 컴포넌트의 서브세트를 식별할 수 있다. 디지털 컴포넌트의 서브세트의 식별은 예를 들어 이벤트 데이터를 배포 파라미터와 비교하고, 이벤트 데이터의 적어도 일부 특징과 일치하는 배포 파라미터를 갖는 디지털 컴포넌트의 서브세트를 식별하는 것을 포함할 수 있다.
일부 구현에서, 세트(114) 내의 각각의 소정의 컴퓨팅 장치로부터의 분석 결과(Res1-Res3)(118A-118C)는 수정된 결과로서 디지털 컴포넌트 배포 시스템(110)으로 전송되는 동일한 전송에서 LCF1-LCF3(119A-119C)를 포함한다. 예를 들면, 세트(114)의 각각의 컴퓨팅 장치에 의해 제공된 결과(118A-118C) 및 로컬 콘텐츠 특징(119A-119C)은 아래에서 설명되는 바와 같이 로컬 의도 분석에 기초하여 컴포넌트 요청(112)에 응답하여 배포에 적합한(적격한) 디지털 컴포넌트 및 로컬 콘텐츠 특징의 서브세트를 식별할 수 있다.
디지털 컴포넌트 배포 시스템(110)은 다수의 컴퓨팅 장치(114) 세트로부터 수신된 결과(118A-118C)를 집계하고, 집계된 결과와 연관된 정보를 사용하여 요청(112)에 응답하여 제공될 하나 이상의 디지털 컴포넌트를 선택한다. 디지털 컴포넌트 배포 시스템(110)은 아래에서 설명되는 바와 같이 로컬 콘텐츠 특징이 로컬 의도 분석에 기초하여 요청되지 않는다고 결정될 때 결과(118A-118C)를 수정되지 않은 집계 결과로서 집계(aggregate)한다. 또는, 디지털 컴포넌트 배포 시스템(110)은 로컬 의도 분석에 기초하여 로컬 콘텐츠 특징이 요청된 것으로 결정될 때 수정된 집계 결과로서 결과(118A-118C) 및 로컬 콘텐츠 특징(119A-199C)을 집계한다. 예를 들면, 디지털 컴포넌트 배포 시스템(110)은 하나 이상의 컴포넌트 평가 프로세스의 결과에 기초하여 디지털 컴포넌트 세트(하나 이상의 디지털 컴포넌트)를 선택할 수 있다. 차례로, 디지털 컴포넌트 배포 시스템(110)은 클라이언트 장치(106)가 디지털 컴포넌트 세트 및 해당하는 경우 해당 로컬 콘텐츠 특징을 소정의 전자 문서에 통합할 수 있게 하는 응답 데이터(120)(예: 응답을 나타내는 디지털 데이터)를 네트워크(102)를 통해 생성 및 전송할 수 있으며, 이는 (예를 들어, 로컬 콘텐츠 특징이 없는 도 3a 및 로컬 콘텐츠 특징이 있는 도 3b에 도시된 바와 같이) 디지털 컴포넌트 세트 및 전자 문서의 콘텐츠가 클라이언트 장치(106)의 디스플레이에 함께 제공되도록 한다.
일부 구현에서, 클라이언트 장치(106)는 응답 데이터(120)에 포함된 명령어를 실행하는데, 이는 클라이언트 장치(106)가 하나 이상의 디지털 컴포넌트 서버(108)로부터 디지털 컴포넌트 세트 및 해당하는 경우 해당 로컬 콘텐츠 특징을 획득하도록 구성된다. 예를 들면, 응답 데이터(120)의 명령어는 클라이언트 장치(106)가 디지털 컴포넌트 서버(108)로부터 소정의 디지털 컴포넌트를 획득하기 위해 서버 요청(SR)(121)을 디지털 컴포넌트 서버(108)로 전송하게 하는 스크립트 및 네트워크 위치(예: URL (Uniform Resource Locator))를 포함할 수 있다. 요청에 대한 응답으로, 디지털 컴포넌트 서버(108)는 (예: 여러 디지털 컴포넌트를 저장하는 데이터베이스 내) 서버 요청(121)에 지정된 소정의 디지털 컴포넌트를 식별하고, 클라이언트 장치(106)에서 전자 문서의 소정의 디지털 컴포넌트를 제시하는 디지털 컴포넌트 데이터(DC 데이터)(122)를 클라이언트 장치(106)로 전송할 것이다.
전자 문서 검색을 용이하게 하기 위해, 환경(100)은 전자 문서를 크롤링(crawling) 및 인덱싱함으로써(예를 들어, 전자 문서의 크롤링된 콘텐츠에 기초하여 인덱싱됨) 전자 문서를 식별하는 검색 시스템(160)을 포함할 수 있다. 전자 문서에 대한 데이터는 데이터가 연결된 전자 문서를 기반으로 인덱싱될 수 있다. 전자 문서의 인덱싱되고 선택적으로 캐시된 카피(copies)는 검색 인덱스(예를 들어, 하드웨어 메모리 장치(들))에 저장된다. 전자 문서와 관련된 데이터는 전자 문서에 포함된 콘텐츠 및/또는 전자 문서에 대한 메타 데이터를 나타내는 데이터이다.
검색 시스템(160)은 이력(히스토리) 쿼리 로그를 생성하고 유지할 수 있다. 검색 시스템(160)에 의해 이전에 처리된 다수(예를 들어, 수백만)의 검색 쿼리 각각에 대해, 이력 쿼리 로그는, (i) 이전 검색 쿼리, (ii) 이전 검색 쿼리에 대한 응답으로 검색 시스템(160)에 의해 제공된 검색 결과, (iii) 검색 쿼리 및/또는 검색 결과가 로컬 지식 패널 특징을 생성하는 것을 트리거하는 데이터, (iv) 이전 검색 쿼리를 전송한 클라이언트 장치의 사용자가 선택한 검색 결과 중 하나 이상을 지정하는 사용자 선택 데이터를 지정하는 데이터를 유지하여 이전 검색 쿼리를 인덱싱한다.
검색 인덱스 및 이력 쿼리 로그는 검색 시스템(160)에 의해 액세스될 수 있고 또한 아래에서 설명되는 클러스터링 시스템(130) 및 로컬 의도 시스템(140)에 의해 액세스될 수 있는 쿼리 데이터 저장소(162) 내에 저장된다. 일부 구현에서 검색 인덱스와 이력 쿼리 로그는 별도의 데이터베이스이다.
클라이언트 장치(106)는 네트워크(102)를 통해 검색 시스템(160)에 검색 쿼리를 제출할 수 있다. 이에 응답하여, 검색 시스템(160)은 검색 쿼리와 관련된 전자 문서를 식별하기 위해 쿼리 데이터 저장소(162)의 검색 인덱스에 액세스한다. 검색 시스템(160)은 검색 결과의 형태로 전자 문서를 식별하고 검색 결과 페이지에서 검색 결과를 클라이언트 장치(106)로 리턴한다. 검색 결과는 특정 검색 쿼리에 응답하는(예를 들어, 관련성있는) 전자 문서를 식별하는 검색 시스템(160)에 의해 생성된 데이터이며, 검색 결과와의 사용자 상호 작용에 대한 응답으로 클라이언트 장치가 지정된 네트워크 위치(예: URL)에서 데이터를 요청하도록 하는 활성 링크(예: 하이퍼텍스트 링크)를 포함한다. 검색 결과의 예에는 웹 페이지 제목, 텍스트 스니펫(snippet) 또는 웹 페이지에서 추출된 이미지의 일부 및 웹 페이지의 URL이 포함될 수 있다. 다른 전자 문서와 마찬가지로 검색 결과 페이지에는 디지털 컴포넌트를 표시 할 수 있는 하나 이상의 슬롯이 포함될 수 있다.
클라이언트 장치(106)에 의해 제출된 검색 쿼리는 검색 결과 페이지와 함께 제공되는 하나 이상의 디지털 컴포넌트를 식별하는 데 사용될 수 있다. 예를 들면, 디지털 컴포넌트 배포 시스템(110)은 검색 쿼리와 일치(매칭)(예: 복수형, 스텁, 동의어 및 충분히 유사한 기타 변형을 포함하여 구문 일치 또는 확장된 일치에서 한정하는 것과 같이, 지정된 유사성 수준에서 동일하거나 일치)하는 배포 파라미터를 갖는 디지털 컴포넌트를 식별하기 위해 검색 쿼리를 사용할 수 있다. 검색 쿼리를 사용하는 하나 이상의 디지털 컴포넌트의 식별은 위에서 설명된 것과 유사한 방식으로 수행될 수 있다.
또 다른 예시 검색 결과에는 다운로드 가능한 애플리케이션의 제목, 다운로드 가능한 애플리케이션을 설명하는 텍스트 스니펫, 다운로드 가능한 애플리케이션의 사용자 인터페이스를 묘사하는 이미지, 및/또는 애플리케이션을 클라이언트 장치(106)에 다운로드할 수 있는 위치의 URL이 포함될 수 있다. 어떤 상황에서, 검색 시스템(160)은 제출된 검색 쿼리와 관련된 다운로드 가능한 애플리케이션에 대한 정보를 제공하기 위해, 클라이언트 장치(106)에 설치하기 위해 애플리케이션이 다운로드될 수 있는 애플리케이션 스토어(또는 온라인 포털)의 일부이거나 그와 상호 작용할 수 있다.
일부 구현에서, 검색 시스템(160)은 지식 패널을 생성하고 검색 결과(또는 다른 페이지)와 함께 지식 패널을 제공하여 검색 쿼리와 관련된 것으로 식별된 특정 엔티티에 관한 데이터를 제공한다. 지식 패널은
사람, 장소, 국가, 랜드마크, 동물, 역사적 사건, 조직, 비즈니스, 스포츠 팀, 스포츠 경기, 영화, 노래, 앨범, 게임, 예술 작품 또는 기타 엔티티 등 검색 쿼리에서 참조하는 특정 엔티티와 관련된 정보 또는 기타 콘텐츠를 제공하는 사용자 인터페이스 요소(element)이다. 지식 패널은 본 명세서에서 로컬 지식 패널 특징(피쳐)이라고도 하는 로컬 특징(피쳐)을 포함할 수 있다. 예를 들어 로컬 지식 패널 특징에는 식별된 엔티티의 위치에 대한 지도 등이 포함될 수 있다.
지식 패널에 검색 결과를 제공하면 사용자가 검색하는 사실적인 정보를 얻기 위해 사용자가 방문해야하는 웹 페이지 수를 줄인다. 따라서 사용자가 정보 요구 사항을 충족하는 정보를 찾는 데 필요한 시간을 줄일 수 있다. 특정 유형의 엔티티를 위해 개발된 지식 패널 템플릿을 사용하면 엔티티와 관련된 콘텐츠를 사용자에게 표시할 수 있다. 일부 구현에서, 지식 패널은 여러 다른 콘텐츠 소스에서 수집된 엔티티에 대한 정보 요약을 제공하는 반면 검색 결과는 일반적으로 단일 콘텐츠 소스를 참조한다. 예를 들면, 가수에 대한 지식 패널에는 가수의 이름, 가수의 이미지, 가수에 대한 설명, 가수에 대한 하나 이상의 사실, 가수가 녹음한 노래 및 앨범을 식별하는 콘텐츠가 포함될 수 있다. 다른 유형의 정보와 콘텐츠도 지식 패널에 표시될 수 있다.
일부 구현에서, 지식 패널을 트리거하기 위해, 검색 쿼리가 수신되면, 검색 시스템(160)은 검색 쿼리에 대한 검색 결과를 지식 패널에 제공할지 여부 및 로컬 지식 패널 특징을 제공할지 여부를 결정할 수 있다. 이 결정은, 부분적으로, 수신된 쿼리가 알려진 엔티티를 참조하는 것으로 결정되는지에 기초할 수 있다. 일부 구현에서, 시스템은 수신된 쿼리 또는 수신된 쿼리의 용어를 알려진 엔티티와 해당 별칭을 식별하는 엔티티 인덱스와 비교하여 알려진 엔티티를 참조하는지 여부를 결정한다. 비교 결과 일치(매칭)가 존재하는 것으로 결정되면, 수신된 쿼리는 알려진 엔티티를 참조하는 것으로 결정되고, 시스템은 일치하는 엔티티에 대한 지식 패널을 제공할 수 있다. 식별된 엔터티가 알려진 로컬 지식 패널 특징에 연결된 경우 지식 패널에는 지도와 같은 로컬 지식 패널 특징이 포함될 수 있다.
일부 구현에서, 지식 패널 장치는 식별된 지식 패널 템플릿에 콘텐츠 아이템을 채워 지식 패널을 생성하고, 생성된 지식 패널을 검색 시스템(160)에 제공할 수 있다. 차례로, 검색 시스템(160)은 식별된 검색 결과 및 지식 패널을 프리젠테이션을 위해 클라이언트 장치(106)에 제공할 수 있다. 지식 패널 장치는 수신된 검색 쿼리에 의해 참조되는 엔티티의 유형을 결정하고, 엔티티와 연관된 임의의 로컬 지식 패널 특징을 포함하여 엔티티에 대한 적절한 지식 패널 템플릿을 검색할 수 있다. 예를 들어, 콘텐츠 아이템의 인덱스는 인덱싱된 각 엔티티에 대한 엔티티의 유형을 식별하는 데이터를 포함할 수 있다. 다른 예에서, 콘텐츠 아이템의 인덱스는 각 엔티티에 대한 적절한 지식 패널 템플릿을 식별하는 데이터를 포함할 수 있다. 지식 패널 장치는 로컬 지식 패널 특징을 포함할 수 있는 수신된 검색 쿼리에 의해 참조된 엔티티에 대한 적절한 템플릿을 식별하기 위해 인덱스(색인)에 액세스할 수 있다. 예를 들면, 지식 패널 템플릿은
하나 이상의 "사람" 템플릿, "장소" 템플릿, "랜드마크" 템플릿, "영화" 템플릿, "비즈니스" 템플릿, "게임" 템플릿, "스포츠 팀" 템플릿, "스포츠 이벤트" 템플릿 및/또는 "동음이의어(disambiguation)" 템플릿을 포함할 수 있다. 특정 유형의 엔티티에 대한 지식 패널 템플릿에는 다른 유형의 엔티티에 대한 지식 패널 템플릿과 다른 콘텐츠 아이템 유형에 대한 플레이스홀더(placeholders)가 있을 수 있다. 예를 들면, 국가에 대한 지식 패널 템플릿은 국가의 도시 이미지 세트에 대한 플레이스홀더를 포함할 수 있는 반면, 랜드마크에 대한 지식 패널 템플릿에는 다른 랜드마크의 이미지 세트에 대한 플레이스홀더가 포함될 수 있다.
지식 패널의 콘텐츠에는 여러 웹 페이지와 같은 여러 리소스에서 게시되거나 제공되는 콘텐츠가 포함될 수 있다. 예를 들어, 랜드마크에 대한 지식 패널에는 제1 게시자가 호스팅하는 제1 웹 페이지에 게시된 랜드마크의 이미지가 포함될 수 있다. 지식 패널은 또한 제1 게시자와 다른 제2 게시자가 게시한 제2 웹 페이지에 게시된 랜드마크에 대한 일련의 사실(팩트)(facts)을 포함할 수 있다.
지식 패널은 수신된 쿼리에 대한 다른 검색 결과에 인라인 또는 인접하거나 다른 검색 결과 대신 표시될 수 있다. 예를 들어, 검색 쿼리에 응답하는 것으로 간주되는 리소스에 대해 링크를 제공하는 표준 검색 결과는 검색 결과 페이지의 한쪽에 표시되고, 지식 패널은 검색 결과 페이지의 다른쪽에 표시될 수 있다.
클러스터링 시스템(130)은 하나 이상의 매칭 쿼리 특징에 기초하여 동일한 쿼리 클러스터에 포함된 검색 쿼리의 세트와 같은 쿼리 클러스터를 식별하는 데 사용된다. 클러스터링 시스템(130)은 각각 별도의 엔진 또는 서버로 도시된 쿼리 분석기(132) 및 클러스터 엔진(134)을 포함한다. 쿼리 분석기(132) 및 클러스터 엔진(134)은 아래에서 설명되는 시스템, 컴포넌트 및 기술이 구현되는 하나 이상의 위치에 있는 하나 이상의 컴퓨터에서 컴퓨터 프로그램으로 구현된 엔진의 각각의 예이다. 대안적으로, 쿼리 분석기(132) 및 클러스터 엔진(134)은 각각 동일한 서버 내에 상주할 수 있다.
쿼리 분석기(132)는 쿼리 데이터 저장소(162)로부터 쿼리 데이터를 처리하여 각 쿼리에 대한 하나 이상의 쿼리 특징를 식별한다. 클러스터 엔진(134)은 쿼리 분석기(132)로부터의 데이터를 처리(프로세싱)하여 하나 이상의 쿼리 특징 사이의 유사성 및 일치(매칭)를 결정하고, 쿼리 클러스터-1(135A), 쿼리 클러스터-2(135B), 쿼리 클러스터-N(135N) 등과 같은 쿼리 클러스터의 인덱스를 생성하고, 쿼리 클러스터의 인덱스를 클러스터 인덱스(136)로 보낸다. 예를 들면, 생성된 쿼리 클러스터는 쿼리 세트로 그룹화되고, 동일한 토픽(topic)과 관련된 것으로 분류될 수 있다. 추가로 또는 대안으로, 생성된 쿼리 클러스터는 쿼리 세트로 그룹화되고, 유사한 검색 결과를 제공하는 것으로 분류될 수 있다. 클러스터링 기술은 시스템이 로컬 의도를 결정하는 방식에서 중요하지 않으며, 이는 로컬 의도 시스템(140)과 그 내부의 프로세스는 아래에서 설명하는 바와 같이 시스템에 제공된 임의의 클러스터 세트에서 수행될 수 있기 때문이다.
로컬 의도 시스템(140)은 각각 별도의 엔진 또는 서버로 도시된 쿼리 분석기(142) 및 로컬 의도 엔진(144)을 포함한다. 쿼리 분석기(142) 및 로컬 의도 엔진(144)은 아래에서 설명되는 시스템, 컴포넌트 및 기술이 구현되는 하나 이상의 위치에서의 하나 이상의 컴퓨터에서 컴퓨터 프로그램으로 구현된 엔진의 각각의 예이다. 대안적으로, 쿼리 분석기(142) 및 로컬 의도 엔진(144)은 각각 동일한 서버 내에 상주할 수 있다.
쿼리 분석기(142)는 쿼리 데이터 저장소(162)로부터 쿼리 데이터를 수신하여 어느 쿼리가 지식 패널의 로컬 특징과 같은 로컬 검색 기능을 트리거하는지를 결정하고 그 결과를 로컬 의도 엔진(144)으로 전송한다. 로컬 의도 엔진(144)은 각각의 개별 쿼리 클러스터(135A, 135B, 135N 등)를 분석하기 위해 클러스터 인덱스(136)로부터 클러스터 인덱스 데이터를 수신한다. 로컬 의도 엔진(144)은 각 쿼리 클러스터의 로컬 의도를 나타내는 값을 분석하여 각 쿼리 클러스터에 대한 각 의도 플래그에 할당하고, 그 결과를 로컬 의도 인덱스(150)로 전송한다. 그 다음, 로컬 의도 인덱스(150)는 로컬 의도 엔진(144)으로부터의 분석 결과에 따라 각각의 분석 된 클러스터를 하이 로컬 의도 쿼리 클러스터 또는 로우 로컬 의도 쿼리 클러스터로 식별하는 정보를 저장한다. 일부 구현에서, 하이 로컬 의도(high local intent) 쿼리 클러스터 및/또는 쿼리를 식별하는 정보가 하이 로컬 의도 인덱스(152)에 저장될 수 있도록 별도의 인덱스가 생성될 수 있는 반면, 로우 로컬 의도(low local intent) 쿼리 클러스터 및/또는 쿼리를 식별하는 정보는 로우 로컬 의도 인덱스(154)에 저장될 수 있도록 별도의 인덱스가 생성될 수 있다. 이러한 구현에서, 사용자 제출 쿼리가 하이 로컬 의도 쿼리로 향했는지 여부를 결정하는 것은 사용자 제출 쿼리를 포함하는 쿼리 클러스터를 식별하고 그 쿼리 클러스터가 하이 로컬 의도 인덱스(154)에서 식별되는지 여부를 결정함으로써 수행될 수 있다. 이는 쿼리 시간에 필요한 처리량을 줄여서 로컬 의도 및 해당 결정을 기반으로 수행된 동작의 결정이 덜 효율적인 절차를 사용하여 가능한 것보다 더 빠르게 수행될 수 있도록 한다. 각 쿼리 클러스터가 하이 로컬 의도 클러스터인지 로우 로컬 클러스터인지를 나타내기 위한 값을 의도 플래그에 할당하기 위한 로컬 의도 시스템(140)에 대한 예시적인 데이터 흐름이 도 2에 도시된다.
도 2는 각각의 쿼리 클러스터가 하이 로컬 의도 쿼리 클러스터 또는 로우 로컬 의도 쿼리 클러스터임을 나타내기 위한 값을 쿼리 클러스터에 대한 의도 플래그에 할당하기 위한 예시적인 로컬 의도 시스템(140)의 시스템 흐름도이다. 로컬 의도 시스템(140)은 아래에서 설명되는 시스템, 컴포넌트 및 기술이 구현되는 하나 이상의 위치에서의 하나 이상의 컴퓨터에서 컴퓨터 프로그램으로 구현된 시스템의 예이다. 도 1a를 참조하여 설명된 바와 같이, 로컬 의도 시스템(140)은 각 클러스터가 하이 로컬 의도 클러스터인지 또는 로우 로컬 의도 클러스터인지를 나타내는 각 클러스터에 대한 의도 플래그를 유지하기 위해 쿼리 클러스터 데이터를 처리할 수 있다. 예를 들면, 쿼리 클러스터-1(135A)은 클러스터 인덱스(136)에 저장되고 쿼리 데이터-1(210A)로서 로컬 의도 시스템(140)에 전송된다. 로컬 의도 시스템(140)은 쿼리 데이터-1(210A)를 분석하여 그 클러스터 내의 쿼리의 어느 부분(예를 들어, 백분율)이 로컬 지식 패널 특징과 같은 로컬 검색 기능을 트리거하는지 결정한다. 로컬 검색 기능을 트리거하는 쿼리를 트리거 쿼리라고 할 수 있다. 그 다음, 로컬 의도 시스템(140)은 특정 클러스터가 (i) 트리거 쿼리의 일부(부분)가 로컬 의도 임계치(예: 임계치 X % 이상)를 충족하는 경우 로우 로컬 의도 또는 (ii) 트리거 쿼리의 일부가 로컬 의도 임계치(예: 임계치 X % 이상)를 충족하지 않는 경우 로우 로컬 의도 중 하나임을 나타내기 위해 특정 클러스터에 대한 의도 플래그에 값을 할당하도록 로컬 의도 임계치(예: X %)에 대해 트리거 쿼리인 해당 클러스터 내의 쿼리의 부분을 비교한다. 로컬 의도 임계치는 로컬 의도 시스템 공급자, 디지털 컴포넌트 배포 공급자 또는 로컬 의도 임계치 지정을 담당하는 다른 엔티티에 의해 지정될 수 있다.
로컬 의도 시스템(140)이 쿼리 클러스터-1(135A)의 트리거 쿼리의 부분을 로컬 의도 임계치 X %와 비교하여 특정 클러스터가 임계치 X %를 충족하는 것으로 결정한 후, 로컬 의도 시스템(140)은 로컬 의도 데이터-1(212A)을 생성하고 이를 하이 로컬 의도 인덱스(152)로 전송한다. 유사하게, 도 2에 도시한 바와 같이, 로컬 의도 시스템(140)은 쿼리 클러스터-2(135B)로부터의 쿼리 데이터-2(210B) 및 쿼리 클러스터-3(135C)로부터의 쿼리 데이터-3(210C)가 로컬 의도 임계치를 충족하지 않는다고 결정하고, 따라서 로컬 의도 데이터-2(212B) 및 로컬 의도 데이터-3(212C)를 로우 로컬 의도 인덱스(154)로 전송한다. 이 프로세스는 각각의 쿼리 클러스터-N(135N)으로부터 각각 수신된 쿼리 데이터-N (210N)에 대해 계속되어, 모든 쿼리 클러스터(135)는 그에 따라 의도 플래그 및 쿼리 클러스터(135)를 식별하는 정보에 값을 할당할 수 있고 및/또는 각각의 개별 쿼리는 검색 시스템(160) 또는 디지털 컴포넌트 배포 시스템(110)에 의해 액세스될 로컬 의도 인덱스(150)에 저장될 수 있다.
일부 구현에서, 쿼리 클러스터는 로컬 의도 시스템(140)이 사용하는 임계치 또는 레벨의 수에 따라 3개 이상의 쿼리 클러스터 그룹을 나타내는 의도 플래그에 값을 할당할 수 있다. 예를 들면, 디지털 컴포넌트 배포 공급자는 로컬 검색 기능을 트리거하는 것으로 클러스터(즉, 중간 로컬 의도 클러스터)에서 쿼리의 60%로만 결정된 쿼리보다 90% 이상(즉, 매우 높은 로컬 의도 클러스터)으로 결정된 쿼리에 대해 더 많은 로컬 콘텐츠 특징 데이터를 제공하기를 원할 수 있다. 중간 로컬 의도 클러스터로 결정된 쿼리 클러스터는 여전히 초기 로컬 의도 임계치를 충족할 수 있지만, 매우 높은 로컬 의도 클러스터로 결정된 클러스터만큼 해당 로컬 콘텐츠 특징에 많은 데이터를 제공하는 것은 바람직하지 않다. 예를 들어, 매우 높은 로컬 의도 클러스터는 로컬 콘텐츠 특징에 통화 버튼, 방향 버튼 및 웹 사이트 링크를 포함할 수 있지만 중간 로컬 의도 클러스터는 전화 번호만 포함할 수 있다.
디지털 컴포넌트와 함께 로컬 콘텐츠 특징을 소정의 사용자에게 배포할지 여부는 제출된 검색 쿼리의 위치 의도에 대한 정보를 통해 알 수 있다. 예를 들어 특정 사용자가 검색 쿼리를 제출하면, 시스템은 제출된 사용자 쿼리의 높은(하이) 로컬 의도가 결정될 때 각 디지털 컴포넌트와 함께 로컬 콘텐츠 특징을 소정의 사용자에게 배포하도록 결정할 수 있다. 대조적으로, 시스템은 제출된 사용자 쿼리의 낮은(로우) 로컬 의도가 결정될 때 디지털 컴포넌트와 함께 배포될 로컬 콘텐츠 특징이 없는 것으로 결정할 수 있다.
디지털 컴포넌트 배포 시스템(110)을 사용하여 쿼리의 결정된 위치 의도에 기초하여 사용자에게 콘텐츠의 배포를 수정하기 위한 프로세스 및 예가 도 3 내지도 6을 참조하여 설명된다.
도 3a 및 3b는 쿼리의 로컬 의도에 기초하여 쿼리 결과를 설명하는 디스플레이 데이터를 제공하는 모바일 장치의 예시적인 스크린 샷이다.
도 3a는 로컬 의도 인덱스(150)가 주어진 검색 쿼리가 낮은(로우) 로컬 의도 쿼리임을 나타내는 값을 의도 플래그에 할당한 검색 쿼리를 사용자가 입력한 후의 예시적인 스크린 샷이며, 따라서 디지털 콘텐츠 결과에는 로컬 콘텐츠 특징이 포함되지 않는다. 도 3a는
검색 쿼리로부터 검색 결과 출력 요소(314A, 314B, 314C, 314N 등) 등 및 디지털 컴포넌트 결과(118A, 118B, 118N) 등을 갖는 로우 로컬 의도 쿼리 결과(312)를 제시하는 예시적인 사용자 인터페이스(310)의 스크린 샷(300A)을 도시한다. 예시 스크린 샷 300A에서, 사용자가 검색 애플리케이션에서 검색 동작을 수행한 후, 사용자 장치(106)의 사용자 인터페이스(310)는 사용자가 검색 결과 출력 요소(314) 또는 디지털 컴포넌트 결과(118) 중 임의의 것을 선택할 수 있게 한다.
도 3b는 소정의 검색 쿼리가 하이 로컬 의도 쿼리임을 나타내는 값을 로컬 의도 인덱스(150)가 의도 플래그에 할당한 검색 쿼리를 사용자가 입력한 후의 예시적인 스크린 샷이며, 따라서 디지털 콘텐츠 결과에는 로컬 콘텐츠 특징이 포함된다. 도 3b는 검색 결과 출력 요소(324A, 324B, 324C, 324N 등) 및 디지털 컴포넌트 결과(118A, 118B, 118N) 등을 갖는 하이 로컬 의도 쿼리 결과(322)를 검색 쿼리로부터 제시하는 예시적인 사용자 인터페이스(320)의 스크린 샷(300B)을 도시한다. 디지털 컴포넌트 결과(118A, 118B, 118N)는 각각의 디지털 컴포넌트 결과(118) 상에 그래픽 오버레이로서 디스플레이되는 해당 로컬 콘텐츠 특징(119A, 119B, 119N)을 각각 갖는 것으로 도시된다. 모든 디지털 컴포넌트 결과(118)가 해당 로컬 콘텐츠 특성(119)을 갖는 것이 요구되는 것은 아니며, 이는 로컬 콘텐츠 특징(119)은 모든 디지털 컴포넌트 결과(118)보다 적은 수(예를 들어, 118A에서만)에서 트리거될 수 있기 때문이다. 예시 스크린 샷(300B)에서, 사용자가 검색 애플리케이션에서 검색 동작을 수행한 후, 사용자 장치(106)의 사용자 인터페이스(320)는 사용자가 검색 결과 출력 요소(314), 디지털 컴포넌트 결과(118) 또는 로컬 콘텐츠 특징(119) 중 임의의 것을 선택할 수 있게 한다. 예를 들면, 로컬 콘텐츠 특징(119A)은 해당 디지털 컴포넌트 결과(119A)의 엔티티 또는 주제(subject matter)에 대응하는 방향/지도 기능 버튼 및 호출 버튼 모두를 포함할 수 있다. 방향/지도 기능 버튼 및 통화 버튼은 각각 사용자에 의해 개별적으로 선택될 수 있으며, 선택후에 클라이언트 장치(106)는 선택 버튼에 대한 해당 애플리케이션을 개시할 것이다.
도 4a 및 4b는 디지털 콘텐츠의 예시적인 다이어그램이다. 특히, 도 4a는 로컬 콘텐츠 특징이 없이, 도 3a로부터의 디지털 컴포넌트 결과(118A)와 같은 커피 하우스 "Acme Coffee"의 예시적인 디지털 컴포넌트 결과(402)를 도시한다. 도 4b는 또한 도3b의 디지털 컴포넌트 결과(118A)와 같은 커피 하우스 "Acme Coffee"의 예시적인 디지털 컴포넌트 결과(404)를 도시한다. 그러나, 도 4b는 디지털 컴포넌트 결과(404)상의 그래픽 오버레이로서 로컬 콘텐츠 특징(410)을 포함한다. 도 4b에 도시된 바와 같이, 로컬 콘텐츠 특징(410)은 주소, 전화 번호 및 웹 사이트를 포함한다. 추가로, 로컬 콘텐츠 특징(410)은 대화형 사용자 인터페이스 객체(412, 414 및 416)를 포함한다. 예를 들면, 대화형 사용자 인터페이스 객체(412)는 주소에 대응하고, 선택될 때(예를 들어, 클릭되거나 탭됨), 클라이언트 장치(106)상의 내비게이션 애플리케이션 또는 사용자를 내비게이션 웹 사이트로 안내하는 웹 브라우저 애플리케이션을 시작한다. 대화형 사용자 인터페이스 객체(414)는 전화 번호에 대응하고, 선택될 때(예를 들어, 클릭되거나 탭됨), 클라이언트 장치(106)에서 전화 애플리케이션을 시작할 것이다. 대화형 사용자 인터페이스 객체(416)는 엔티티의 웹 사이트에 대한 웹 사이트 URL에 대응하고, 선택될 때 사용자를 엔티티의 웹 사이트(www.example.com)로 안내하는 웹 브라우저 애플리케이션을 시작한다. 로컬 콘텐츠 특징(410)은 대화형 사용자 인터페이스 객체(412, 414 및 416)의 임의의 조합을 포함할 수 있다. 추가로 또는 대안으로, 로컬 콘텐츠 특징(410)은 디지털 컴포넌트(404) 및/또는 디지털 컴포넌트(404), "Acme Coffee"에 묘사 된 엔티티와 연관된 로컬 특징을 제공하는 상이한 특징을 포함할 수 있다. 어떤 상황에서, 로컬 콘텐츠 특징(410)은 어떠한 대화형 사용자 인터페이스 객체도 포함할 필요가 없고 일반적인 위치 정보(예: 단지 텍스트)일 뿐이다.
도 5는 로컬 의도 시스템을 사용하기 위한 예시적인 프로세스(500)의 흐름도이다. 프로세스(500)는 예를 들어 도 1a 및 도 2의 로컬 의도 시스템(140)에 의해 구현될 수 있다. 프로세스(500)의 동작은 또한 비-일시적 컴퓨터 판독 가능 매체에 저장된 명령어로서 구현될 수 있으며, 명령의 실행은 하나 이상의 데이터 처리 장치로 하여금 프로세스(500)의 동작을 수행하게 할 수 있다.
프로세스(500)는 복수의 쿼리 클러스터를 포함하는 클러스터 데이터를 획득하고, 여기서 각 쿼리 클러스터는 하나 이상의 매칭 쿼리 특징을 기반으로 동일한 쿼리 클러스터에 포함된 검색 쿼리의 세트이다(502). 예를 들면, 도 1a는 각각의 개별 쿼리 클러스터(135A, 135B, 135N 등)를 분석하기 위해 클러스터 인덱스(136)로부터 클러스터 인덱스 데이터를 수신하는 로컬 의도 시스템(140)의 로컬 의도 엔진(144)을 예시한다.
클러스터 데이터를 획득한 후, 프로세스(500)는 복수의 쿼리 클러스터 중에서 각각의 소정의 쿼리 클러스터에 대해 단계 504-510으로 진행한다. 프로세스(500)는 검색 시스템에 입력될 때 로컬 검색 기능을 트리거하는 소정의 쿼리 클러스터 내의 검색 쿼리의 부분을 결정한다(504). 예를 들면, 도 1a는 지식 패널의 로컬 기능과 같은 로컬 검색 기능을 트리거하는 쿼리를 결정하도록 쿼리 데이터 저장소(162)로부터 쿼리 데이터를 수신하고, 결과를 로컬 의도 엔진(144)으로 전송하는 로컬 의도 시스템(140)의 쿼리 분석기(142)를 도시한다. 식별된 엔터티가 알려진 로컬 지식 패널 특징에 연결된 경우 지식 패널에는 지도와 같은 로컬 지식 패널 특징이 포함될 수 있다. 예시적인 로컬 지식 패널 특징은 또한 도 4b에 대해 본 명세서에서 설명된 바와 같이 하나 이상의 대화형 사용자 인터페이스 객체(412, 414 또는 416)를 포함할 수 있으며, 이는 각각 지도 버튼(예를 들어, 위치에 대한 내비게이션 방향), 통화 버튼 또는 웹 사이트와 관련되어있다.
프로세스(500)는 로컬 검색 기능을 트리거하는 소정의 쿼리 클러스터 내의 검색 쿼리의 일부가 로컬 의도 임계치를 충족하는지 여부를 결정합니다(506). 예를 들면, 도 2에 대해 본 명세서에서 설명된 바와 같은 로컬 의도 시스템(140)은 소정의 쿼리 클러스터 내에서 검색 쿼리의 어느 부분(예: 백분율)이 로컬 검색 기능을 트리거하는지 계산하고, 해당 부분을 지정된 로컬 의도 임계치(예: X %)와 비교할 수 있다. 예를 들면, 각 클러스터의 로컬 의도는 해당 클러스터의 쿼리 중 해당 쿼리를 사용하여 생성된 검색 결과의 지식 패널 내에서 로컬 기능을 트리거하는 비율을 기반으로 결정할 수 있다.
프로세스(500)는 로컬 검색 기능을 트리거하는 소정의 쿼리 클러스터 내의 검색 쿼리의 일부가 로컬 의도 임계치를 충족할 때 소정의 클러스터가 하이 로컬 의도 클러스터라는 값을 의도 플래그에 할당한다(508). 예를 들면, 도 2는 클러스터 인덱스(136)에 저장된 쿼리 클러스터-1(135A)이 로컬 의도 시스템(140)에 쿼리 데이터-1(210A)로서 전송되는 것을 예시한다. 그 다음, 로컬 의도 시스템(140)은 쿼리를 트리거하는 쿼리 데이터-1(210A)에서 해당 클러스터의 쿼리의 부분을 로컬 의도 임계치와 비교하여, 트리거 쿼리의 일부(부분)가 로컬 의도 임계치를 충족하기 때문에 특정 클러스터가 하이 로컬 의도임을 나타내도록 하는 값을 의도 플래그에 할당하고, 따라서 로컬 의도 데이터-1(212A)을 하이 로컬 의도 인덱스(152)로 전송한다.
프로세스(500)는 로컬 검색 기능을 트리거하는 소정의 쿼리 클러스터 내의 검색 쿼리의 일부가 로컬 의도 임계치를 충족하지 못할 때 지정된 클러스터가 로우 로컬 의도 클러스터라는 값을 의도 플래그에 할당한다(510). 예를 들면, 도 2는 클러스터 인덱스(136)에 저장된 쿼리 클러스터-2(135B)가 로컬 의도 시스템(140)에 쿼리 데이터-2(210B)로서 전송되는 것을 예시한다. 그 다음, 로컬 의도 시스템(140)은 트리거 쿼리인 쿼리 데이터-2 (210B)로부터 그 클러스터 내의 쿼리의 부분을 로컬 의도 임계치(예를 들어, X %)과 비교하여, 트리거 쿼리의 일부가 로컬 의도 임계치를 충족하지 않기 때문에 특정 클러스터가 로우 로컬 의도(인텐트)임을 나타내도록 하는 값을 의도 플래그에 할당하고, 따라서 로컬 의도 데이터-2 (212B)를 로우 로컬 의도 인덱스(154)로 전송한다.
일부 상황에서, 로컬 의도 시스템(140)은 어느 쿼리가 로컬 지식 패널의 프리젠테이션을 트리거하는지 식별하기 위해 각 클러스터 내의 각 쿼리를 분석할 수 있다. 이러한 상황에서, 검색 시스템에 입력할 때 로컬 검색 기능을 트리거하는 소정의 쿼리 클러스터 내에서 검색 쿼리의 부분을 결정하는 프로세스는, 소정의 쿼리 클러스터 내에서 지정된 각 검색 쿼리에 대해, 소정의 검색 쿼리가 해당 검색 쿼리를 사용하여 검색 시스템에 의해 생성된 검색 결과 페이지에서 로컬 지식 패널의 표시를 트리거하는지 여부를 결정하고, 로컬 지식 패널의 표시를 트리거하는 소정의 검색 쿼리의 총 수를 결정하고, 소정의 쿼리 클러스터에 있는 검색 쿼리 수와 관련하여 로컬 지식 패널의 표시를 트리거하는 소정의 검색 쿼리의 총 수의 비율을 기반으로 검색 쿼리의 부분을 결정하는 것을 포함한다.
예를 들면, 도 1a는 쿼리 데이터 저장소(162)로부터 쿼리 데이터를 수신하는 로컬 의도 시스템(140)의 쿼리 분석기(142)를 도시한다. 쿼리 분석기(142)는 각 쿼리가 소정의 검색 쿼리를 사용하여 검색 시스템에 의해 생성된 검색 결과 페이지에서 로컬 지식 패널의 표시를 트리거하는지 여부를 결정하고, 그 결과를 로컬 의도 엔진(144)으로 전송한다. 식별된 엔터티가 알려진 로컬 지식 패널 특징에 연결된 경우 지식 패널에는 지도와 같은 로컬 지식 패널 특징이 포함될 수 있다. 예시적인 로컬 지식 패널 특징은 또한 본 명세서에 설명되고 도 4b에 도시된 바와 같이 하나 이상의 대화형 사용자 인터페이스 객체(412, 414, 또는 416)를 포함할 수 있으며, 이는 각각 지도 버튼(예를 들어, 위치에 대한 내비게이션 방향), 통화 버튼 또는 웹 사이트와 관련되어있다. 쿼리 분석기(142)로부터 쿼리가 검색 결과 페이지에서 로컬 지식 패널의 프레젠테이션을 트리거했는지 여부에 대한 결과를 로컬 의도 엔진(144)이 수신한 후, 로컬 의도 엔진(144)은 로컬 지식 패널의 표시를 트리거하는 소정의 검색 쿼리의 총 수를 결정한다. 그 다음, 로컬 의도 엔진(144)은 소정의 쿼리 클러스터에 얼마나 많은 검색 쿼리가 있는지에 대한 로컬 지식 패널의 표시를 트리거하는 소정의 검색 쿼리의 총 수의 비율에 기초하여 검색 쿼리의 부분을 결정한다.
어떤 상황에서, 로컬 의도 시스템(140)은 검색 결과 페이지에서 하나 이상의 로컬 요소의 프리젠테이션을 트리거하는 쿼리를 식별하기 위해 각 쿼리 클러스터 내의 각 쿼리의 로컬 속성을 분석할 수 있다. 이러한 상황에서, 검색 시스템에 입력할 때 로컬 검색 기능을 트리거하는 소정의 쿼리 클러스터 내에서 검색 쿼리의 부분을 결정하는 프로세스는, 소정의 쿼리 클러스터 내에서 지정된 각 검색 쿼리에 대해, 소정의 쿼리가 소정의 검색 쿼리를 사용하여 검색 시스템에 의해 생성된 검색 결과 페이지에서 하나 이상의 로컬 요소의 프리젠테이션을 트리거하는 로컬 속성을 포함하는지 여부를 결정하고, 하나 이상의 로컬 요소의 프리젠테이션을 트리거하는 소정의 검색 쿼리의 총 수를 결정하고, 소정의 쿼리 클러스터에 있는 검색 쿼리의 수에 대한 하나 이상의 로컬 요소의 프리젠테이션을 트리거하는 소정의 검색 쿼리의 총 수의 비율에 기초하여 검색 쿼리의 부분을 결정하는 것을 포함할 수 있다. 예를 들면, 도 1a는 쿼리 데이터 저장소(162)로부터 쿼리 데이터를 수신하는 로컬 의도 시스템(140)의 쿼리 분석기(142)를 도시한다. 쿼리 분석기(142)는 소정의 쿼리가 소정의 검색 쿼리를 사용하여 검색 시스템에 의해 생성된 검색 결과 페이지에서 하나 이상의 로컬 요소의 프리젠테이션을 트리거하는 로컬 속성을 포함하는지 여부를 결정하고, 그 결과를 로컬 의도 엔진(144)에 전송한다. 로컬 속성은 검색 시스템(160)과 같은 검색 시스템에 의해 사용되어 검색 결과 내의 특정 엔티티에 대한 속성을 사용하고 제공한다. 로컬 요소는 엔터티에 고유할 수 있으며 검색 엔진 공급자 또는 특정 엔터티에 의해 결정된다. 본 명세서에서 설명된 바와 같은 예시적인 로컬 요소는 엔티티의 주소와 연관된 맵 특징(map feature)이다. 그러나 로컬 요소에는 엔터티 유형에 따라 여러 다른 로컬 요소가 포함될 수 있다. 예를 들면, 레스토랑은 예약을 수락하거나 글루텐 프리(gluten free) 옵션을 제공하고, 호텔은 반려견 환영 여부를 지정할 수 있고 식료품 점에서는 제공하는 유기농 제품을 강조할 수 있다. 로컬 의도 엔진(144)이 쿼리 분석기(142)로부터 하나 이상의 로컬 요소가 검색 결과 페이지에 표시되었는지 여부에 대한 결과를 수신한 후, 그 다음, 로컬 의도 엔진(144)은 하나 이상의 로컬 요소의 프리젠테이션을 트리거하는 소정의 검색 쿼리의 총 수를 결정한다. 그 다음, 로컬 의도 엔진(144)은 소정의 쿼리 클러스터에 얼마나 많은 검색 쿼리가 있는지에 대한 하나 이상의 로컬 요소의 프리젠테이션을 트리거하는 소정의 검색 쿼리의 총 수의 비율에 기초하여 검색 쿼리의 부분을 결정한다.
도 6은 디지털 컴포넌트 배포 시스템을 사용하기 위한 예시적인 프로세스(600)의 흐름도이다. 프로세스(600)는 예를 들어 도 1a 및 도 1b의 디지털 컴포넌트 배포 시스템(110)에 의해 구현될 수 있다. 프로세스(600)의 동작은 또한 비-일시적 컴퓨터 판독 가능 매체에 저장된 명령어로서 구현될 수 있으며, 명령어의 실행은 하나 이상의 데이터 처리 장치로 하여금 프로세스(600)의 동작을 수행하게 할 수 있다.
프로세스(600)는 클라이언트 장치에 의해 제출된 검색 쿼리 및 검색 쿼리가 포함된 복수의 클러스터 중 하나의 표시를 수신한다(602). 예를 들면, 도 1b는 클라이언트 장치(106)로부터 네트워크(102)를 통해 전송된 컴포넌트 요청(112)을 수신하는 디지털 컴포넌트 배포 시스템(110)을 예시한다.
프로세스(600)는 검색 쿼리가 하이 로컬 의도 클러스터 또는 로우 로컬 의도 클러스터에 포함되는지를 결정하기 위해 복수의 클러스터 중 하나와 연관된 의도 플래그에 액세스한다(604). 예를 들면, 도 1a는 네트워크(102)를 통해 하이 로컬 의도 쿼리 클러스터 및/또는 높은 로컬 의도 인덱스(152)에 저장된 쿼리를 나타내는 의도 플래그를 식별하는 정보, 그리고 로우 로컬 의도 인덱스(154)에 저장된 쿼리 및/또는 로우 로컬 의도 쿼리 클러스터를 나타내는 의도 플래그를 식별하는 정보를 액세스하는 디지털 컴포넌트 배포 시스템(110)을 도시한다.
프로세스(600)가 검색 쿼리가 하이 로컬 의도 쿼리 클러스터에 포함되어 있다고 결정하면, 프로세스(600)는 콘텐츠 아이템에 로컬 콘텐츠 특징을 추가하는 것을 포함하여, 검색 쿼리에 응답하여 클라이언트 장치에 배포된 콘텐츠 아이템을 수정한다(606). 예를 들면, 도 3b는 검색 결과 출력 요소(324A-324N) 및 디지털 컴포넌트 결과(118A-118N)를 각각의 연관된 로컬 콘텐츠 특징(119A-119N)과 함께 디스플레이하는 것과 같은 하이 로컬 의도 쿼리 결과를 도시한다.
프로세스(600)가 검색 쿼리가 로우 로컬 의도 쿼리 클러스터에 포함되어 있다고 결정하면, 프로세스(600)는 로컬 콘텐츠 특징을 추가하지 않고 검색 쿼리에 응답하여 클라이언트 장치에 배포된 콘텐츠 아이템(항목)을 배포한다(608). 예를 들면, 도 3a는 로컬 콘텐츠 특징없이 검색 결과 출력 요소(314A-314N) 및 디지털 컴포넌트(DC) 결과(118A-118N)를 디스플레이하는 것과 같은 로우 로컬 의도 쿼리 결과를 도시한다.
어떤 상황에서, 디지털 컴포넌트 배포 시스템(110)은 다수의 상이한 쿼리 클러스터에 액세스하고 검색할 수 있다. 이러한 상황에서, 검색 쿼리가 하이 로컬 의도 클러스터에 포함되는지 또는 로우 로컬 의도 클러스터에 포함되는지를 결정하는 프로세스는, 검색 쿼리를 사용하여 여러 다른 쿼리 클러스터를 검색하고, 검색에 기초하여 검색 쿼리를 포함하는 것으로 결정된 소정의 쿼리 클러스터가 하이 로컬 의도 클러스터 또는 로우 로컬 의도 클러스터를 나타내는 값이 의도 플래그에 할당되었는지 여부를 결정하고, 및 검색 쿼리를 포함하는 소정의 쿼리 클러스터의 의도 플래그에 결정된 할당 된 값에 기초하여 검색 쿼리가 하이 로컬 의도 쿼리 또는 로우 로컬 의도 쿼리임을 나타내는 값을 의도 플래그에 할당하는 것을 포함한다. 예를 들면, 디지털 컴포넌트 배포 시스템(110)은 검색 쿼리 요청(112)을 수신하고, 클러스터 인덱스(136)에 액세스하여 검색 쿼리가 그룹화되는 쿼리 클러스터를 결정하고, 의도 플래그에 할당된 값이 검색 쿼리를 특정 쿼리 클러스터에 대한 하이 로컬 의도 쿼리 또는 로우 로컬 의도 쿼리로 나타내는지 여부를 결정하기 위해 로컬 의도 인덱스(150)에 액세스한다.
어떤 상황에서, 디지털 컴포넌트 배포 시스템(110)은 검색 쿼리 데이터베이스에서 소정의 쿼리에 대한 로컬 의도 플래그를 식별할 수 있다. 이러한 상황에서, 검색 쿼리가 하이 로컬 의도 클러스터에 포함되는지 또는 로우 로컬 의도 클러스터에 포함되는지를 결정하는 프로세스는, 검색 쿼리 데이터베이스에서 검색 쿼리를 식별하고, 데이터베이스의 검색 쿼리에 대해 하이 로컬 의도 플래그 또는 로우 로컬 의도 플래그가 설정되었는지를 결정하고, 하이 로컬 의도 플래그 또는 로우 로컬 의도 플래그가 데이터베이스의 검색 쿼리에 대해 설정되었는지 여부의 결정에 기초하여 검색 쿼리가 하이 로컬 의도 쿼리 또는 로우 로컬 의도 쿼리임을 나타내는 값을 로컬 의도 플래그에 할당하는 것을 포함할 수 있다. 예를 들면, 디지털 컴포넌트 배포 시스템(110)은 검색 쿼리 요청(112)을 수신하고, 소정의 쿼리에 대해 설정된 로컬 의도 플래그를 결정하기 위해 각 쿼리에 대한 로컬 의도 플래그(예: 쿼리 데이터 저장소 162)를 포함하는 검색 쿼리 데이터베이스에 액세스하고, 소정의 쿼리가 로컬 의도 플래그에 해당하는 하이 로컬 의도 또는 로우 로컬 의도임을 나타내는 값을 로컬 의도 플래그에 할당한다.
일부 구현에서, 수정된 콘텐츠 아이템의 추가된 로컬 콘텐츠 특징에는 하나 이상의 대화형 사용자 인터페이스 객체가 포함된다. 방법은 하나 이상의 대화형 사용자 인터페이스 객체 중 하나와의 상호 작용을 지정하는 정보를 수신하고, 추가 콘텐츠가 제시되도록 하는 데이터를 제공하는 단계를 더 포함하며, 추가 콘텐츠는 상호 작용에 기초하여 선택된다. 예를 들어, 도 4b는 3개의 대화형 사용자 인터페이스 객체(412, 414 및 416)를 도시한다. 사용자가 대화형 사용자 인터페이스 객체 중 하나를 선택하면, 클라이언트 장치는 클라이언트 장치(106)에서 해당 애플리케이션을 개시하거나, 사용자를 각각의 선택된 대화형 사용자 인터페이스 객체(412, 414 또는 416)에 대한 해당 웹 사이트로 안내하는 웹 브라우저 애플리케이션을 제공할 수 있다.
일부 구현에서, 시스템은 위치 의도 모델을 사용하여 쿼리를 처리하여 특정 쿼리에 대한 높고 낮은 로컬 의도 라벨을 생성할 수 있다. 예를 들면, 위치 의도 모델은 위치 의도 검출 신경망을 포함하는 위치 의도 신경망 시스템일 수 있다. 이 예에서, 위치 의도 검출 신경망은 쿼리의 텍스트로부터 해석된 위치 의도를 반영 할 수 있는 쿼리의 부분을 정의하는 데이터를 포함하는 쿼리 데이터를 생성하기 위해 쿼리를 처리하도록 구성될 수 있다. 예를 들면, 검색 시스템은 많은 쿼리(예: 수백만)를 샘플링하고 대규모 인간 평가를 수행하여 이러한 쿼리에 대한 로컬 의도에 레이블을 지정하고 이 레이블, 즉 쿼리에 위치 의도가 있을 가능성을 예측하는 기계 학습 모델을 구축할 수 있다.
일부 구현에서, 쿼리의 로컬 의도를 결정하는 것은 디지털 컴포넌트의 배포를 트리거하는 키워드의 로컬 의도 분류를 기반으로한다. 예를 들면, 콘텐츠 제공자에 의해 지정된 키워드는 여기서 설명된 것과 유사한 기술을 사용하여 하이(높은) 로컬 의도 또는 로우(낮은) 로컬 의도를 갖는 것으로 분류될 수 있다. 디지털 컴포넌트의 배포를 유발하는 키워드(예: 검색 쿼리와 일치)가 로컬 의도가 높은 경우, 디지털 컴포넌트의 로컬 확장이 트리거될 수 있으며 디지털 컴포넌트의 배포를 트리거하는 키워드가 로컬 의도가 낮은 경우 로컬 확장이 트리거되지 않는다.
도 7은 클라이언트 또는 서버 또는 복수의 서버로서 본 명세서에 설명된 시스템 및 방법을 구현하는 데 사용될 수 있는 예시적인 컴퓨팅 장치(700, 750)의 블록도이다. 컴퓨팅 장치(700)는 랩톱, 데스크톱, 워크 스테이션, 개인용 디지털 보조 장치, 서버, 블레이드 서버, 메인 프레임 및 기타 적절한 컴퓨터와 같은 다양한 형태의 디지털 컴퓨터를 나타내도록 의도된다. 컴퓨팅 장치(700)는 또한 하나 이상의 프로세서가 내장되거나 부착된 텔레비전 또는 다른 전자 장치와 같은 임의의 다른 일반적으로 비-모바일 장치를 나타내도록 의도된다. 컴퓨팅 장치(750)는 개인 휴대 정보 단말기, 셀룰러 전화, 스마트 폰 및 기타 컴퓨팅 장치와 같은 다양한 형태의 모바일 장치를 나타내도록 의도된다. 여기에 표시된 컴포넌트들, 이들의 연결 및 관계 및 기능은 단지 예일 뿐이며, 본 명세서에서 설명 및/또는 청구된 발명의 구현을 제한하려는 것은 아니다.
컴퓨팅 장치(700)는 프로세서(702), 메모리(704), 저장 장치(706), 메모리(704) 및 고속 확장 포트(710)에 연결되는 고속 컨트롤러(708), 및 저속 버스(714) 및 저장 장치에 연결되는 저속 컨트롤러(712)를 포함한다. 컴포넌트(702, 704, 706, 708, 710, 712) 각각은 다양한 버스를 사용하여 상호 연결되며, 공통 마더 보드에 또는 적절한 다른 방식으로 장착될 수 있다. 프로세서(702)는 메모리(704) 또는 저장 장치(706)에 저장된 명령어를 포함하는 컴퓨팅 장치(700) 내에서 실행하기 위한 명령어를 처리하여 고속 컨트롤러(제어기)(708)에 연결된 디스플레이(716)와 같은 외부 입력/출력 장치에 GUI에 대한 그래픽 정보를 디스플레이 할 수있다. 다른 구현에서, 다중 프로세서 및/또는 다중 버스가 다중 메모리 및 메모리 유형과 함께 적절하게 사용될 수 있다. 또한, 다수의 컴퓨팅 장치(700)는 필요한 동작의 부분을 제공하는 각 장치와 연결될 수 있다(예를 들어, 서버 뱅크, 블레이드 서버 그룹, 또는 다중 프로세서 시스템).
메모리(704)는 컴퓨팅 장치(700) 내에 정보를 저장한다. 일 구현에서, 메모리(704)는 컴퓨터 판독 가능 매체이다. 일 구현에서, 메모리(704)는 휘발성 메모리 유닛 또는 유닛들이다. 다른 구현에서, 메모리(704)는 비 휘발성 메모리 유닛 또는 유닛들이다.
저장 장치(706)는 컴퓨팅 장치(700)에 대용량 저장 장치를 제공할 수 있다. 일 구현에서, 저장 장치(706)는 컴퓨터 판독 가능 매체이다. 다양한 구현에서, 저장 장치(706)는 플로피 디스크 장치, 하드 디스크 장치, 광 디스크 장치 또는 테이프 장치, 플래시 메모리 또는 기타 유사한 솔리드 스테이트 메모리 장치 또는 장치의 어레이일 수 있다. 일 구현에서, 컴퓨터 프로그램 제품은 정보 매체에 유형적으로 구현된다. 컴퓨터 프로그램 제품에는 실행시 위에서 설명한 것과 같은 하나 이상의 방법을 수행하는 명령어가 포함되어 있다. 정보 캐리어는 메모리(704), 저장 장치(706) 또는 프로세서(702)상의 메모리와 같은 컴퓨터 또는 기계 판독 가능 매체이다.
고속 컨트롤러(708)는 컴퓨팅 장치(700)에 대한 대역폭 집약적 동작을 관리하는 반면, 저속 컨트롤러(712)는 낮은 대역폭 집약적 동작을 관리한다. 이러한 업무 할당은 예일뿐이다. 일 구현에서, 고속 컨트롤러(708)는 메모리(704), 디스플레이(716)(예를 들어, 그래픽 프로세서 또는 가속기를 통해) 및 다양한 확장 카드(도시되지 않음)를 수용할 수 있는 고속 확장 포트(710)에 결합된다. 일 구현에서, 저속 컨트롤러(712)는 저장 장치(706) 및 저속 버스(714)에 결합된다. 다양한 통신 포트(예: USB, Bluetooth®, 이더넷, 무선 이더넷)를 포함할 수 있는 저속 버스(714)(예: 저속 확장 포트)는, 예를 들어 네트워크 어댑터를 통해 키보드, 포인팅 장치, 스캐너 또는 스위치 또는 라우터와 같은 네트워킹 장치와 같은 하나 이상의 입력/출력 장치에 연결될 수 있다.
컴퓨팅 장치(700)는 도면에 도시된 바와 같이 다수의 상이한 형태로 구현될 수 있다. 예를 들어, 표준 서버(720)로 구현되거나 이러한 서버 그룹에서 여러 번 구현될 수 있다. 또한 랙 서버 시스템(724)의 일부로 구현될 수 있다. 또한, 랩탑 컴퓨터(722)와 같은 개인용 컴퓨터에서 구현될 수 있다. 또는, 컴퓨팅 장치(700)로부터의 컴포넌트는 컴퓨팅 장치(750)와 같은 모바일 장치(미도시)의 다른 컴포넌트와 결합될 수 있다. 그러한 장치들 각각은 하나 이상의 컴퓨팅 장치(700, 750)를 포함할 수 있고, 전체 시스템은 서로 통신하는 다수의 컴퓨팅 장치(700, 750)로 구성될 수 있다.
컴퓨팅 장치(750)는 프로세서(752), 메모리(764), 디스플레이(754)와 같은 입력/출력 장치, 통신 인터페이스(766) 및 트랜시버(768)를 포함한다. 컴퓨팅 장치(디바이스)(750)는 또한 추가 스토리지(저장소)를 제공하기 위해 마이크로 드라이브 또는 다른 디바이스와 같은 저장 장치와 함께 제공될 수 있다. 각 컴포넌트(750, 752, 764, 754, 766, 768)는 다양한 버스를 사용하여 상호 연결되며, 여러 컴포넌트는 공통 마더 보드에 또는 적절한 다른 방식으로 장착될 수 있다.
프로세서(752)는 메모리(764)에 저장된 명령어를 포함하는, 컴퓨팅 장치(750) 내에서 실행하기 위한 명령어를 처리할 수 있다. 프로세서에는 별도의 아날로그 및 디지털 프로세서가 포함될 수도 있다. 프로세서는 예를 들어, 사용자 인터페이스의 제어, 컴퓨팅 장치(750)에 의해 실행되는 애플리케이션, 및 컴퓨팅 장치(750)에 의한 무선 통신과 같은 컴퓨팅 장치(750)의 다른 컴포넌트의 조정(coordination)을 제공할 수 있다.
프로세서(752)는 디스플레이(754)에 연결된 제어 인터페이스(758) 및 디스플레이 인터페이스(756)를 통해 사용자와 통신할 수 있다. 디스플레이(754)는 예를 들어 TFT LCD 디스플레이 또는 OLED 디스플레이, 또는 다른 적절한 디스플레이 기술일 수 있다. 디스플레이 인터페이스(756)는 그래픽 및 다른 정보를 사용자에게 제공하기 위해 디스플레이(754)를 구동하기 위한 적절한 회로를 포함할 수 있다. 제어 인터페이스(758)는 사용자로부터 명령을 수신하고 이를 프로세서(752)에 제출하기 위해 변환할 수 있다. 또한, 외부 인터페이스(762)는 다른 장치와 컴퓨팅 장치(750)의 근거리 통신을 가능하게 하기 위해 프로세서(752)와 통신하여 제공될 수 있다. 외부 인터페이스(762)는 예를 들어 유선 통신(예를 들어, 도킹 절차를 통해) 또는 무선 통신(예를 들어, Bluetooth® 또는 다른 그러한 기술을 통해)을 제공할 수 있다.
메모리(764)는 컴퓨팅 장치(750) 내에 정보를 저장한다. 일 구현에서, 메모리(764)는 컴퓨터 판독 가능 매체이다. 일 구현에서, 메모리(764)는 휘발성 메모리 유닛(들)이다. 다른 구현에서, 메모리(764)는 비-휘발성 메모리 유닛 또는 유닛들이다. 확장 메모리(774)는 또한 예를 들어 가입자 식별 모듈(SIM) 카드 인터페이스를 포함할 수 있는 확장 인터페이스(772)를 통해 컴퓨팅 장치(750)에 제공되고 연결될 수 있다. 이러한 확장 메모리(774)는 컴퓨팅 장치(750)를 위한 추가 저장 공간을 제공할 수 있거나, 컴퓨팅 장치(750)를 위한 애플리케이션 또는 다른 정보를 저장할 수도 있다. 구체적으로, 확장 메모리(774)는 전술한 프로세스를 수행하거나 보충하기 위한 명령(명령어)을 포함할 수 있고, 보안 정보도 포함할 수 있다. 따라서, 예를 들어, 확장 메모리(774)는 컴퓨팅 장치(750)를 위한 보안 모듈로서 제공될 수 있으며, 컴퓨팅 장치(750)의 안전한 사용을 허용하는 명령으로 프로그래밍 될 수 있다. 또한, 해킹 불가능한 방식으로 SIM 카드에 식별 정보를 배치하는 것과 같은 추가 정보와 함께 SIM 카드를 통해 보안 애플리케이션이 제공될 수 있다.
메모리는 예를 들어 아래에서 설명되는 바와 같이 플래시 메모리 및/또는 MRAM 메모리를 포함할 수 있다. 일 구현에서, 컴퓨터 프로그램 제품은 정보 매체에 유형적으로 구현된다. 컴퓨터 프로그램 제품에는 실행시 위에서 설명한 것과 같은 하나 이상의 방법을 수행하는 명령어가 포함되어 있다. 정보 캐리어는 메모리(764), 확장 메모리(774) 또는 프로세서(752)상의 메모리와 같은 컴퓨터 또는 기계 판독 가능 매체이다.
컴퓨팅 장치(750)는 필요한 경우 디지털 신호 처리 회로를 포함할 수 있는 통신 인터페이스(766)를 통해 무선으로 통신할 수 있다. 통신 인터페이스(766)는 특히 GSM 음성 호출, SMS, EMS 또는 MMS 메시징, CDMA, TDMA, PDC, WCDMA, CDMA2000 또는 GPRS와 같은 다양한 모드 또는 프로토콜 하에서 통신을 제공할 수 있다. 이러한 통신은 예를 들어 트랜시버(송수신기)(768)(예를 들어, 무선 주파수 송수신기)를 통해 발생할 수 있다. 또한, Bluetooth®, WiFi 또는 기타 이러한 트랜시버(표시되지 않음)를 사용하는 등의 단거리 통신이 발생할 수 있다. 또한, GPS 수신기 모듈(770)은 컴퓨팅 장치(750)에서 실행되는 애플리케이션에 의해 적절하게 사용될 수 있는 추가적인 무선 데이터를 컴퓨팅 장치(750)에 제공할 수 있다.
컴퓨팅 장치(750)는 또한 사용자로부터 음성 정보를 수신하고 이를 사용 가능한 디지털 정보로 변환할 수 있는 오디오 코덱(760)을 사용하여 청각적으로 통신 할 수 있다. 오디오 코덱(760)은 마찬가지로 예를 들어 컴퓨팅 장치(750)의 핸드셋에서 스피커를 통해 사용자를 위해 가청 사운드를 생성할 수 있다. 이러한 사운드에는 음성 전화 통화의 사운드가 포함될 수 있으며 녹음된 사운드(예: 음성 메시지, 음악 파일 등)가 포함될 수 있다. 또한 컴퓨팅 장치(750)에서 동작하는 애플리케이션에 의해 생성된 사운드를 포함할 수 있다.
컴퓨팅 장치(750)는 도면에 도시된 바와 같이 다수의 상이한 형태로 구현될 수 있다. 예를 들어, 휴대폰(780)으로 구현될 수 있다. 또한 스마트 폰(782), 개인용 디지털 어시스턴트, 또는 다른 모바일 장치의 일부로 구현될 수 있다.
여기서 설명된 시스템이 사용자에 대한 개인 정보를 수집하거나 개인 정보를 사용할 수 있는 상황에서, 사용자에게는 애플리케이션 또는 기능이 사용자 정보(예: 사용자의 소셜 네트워크, 소셜 활동 또는 활동, 직업, 사용자의 선호도 또는 사용자의 현재 위치에 대한 정보)를 수집하는지 여부를 제어하거나 사용자와 더 관련이 있을 수 있는 콘텐츠를 수신할지 여부 및/또는 방법을 제어할 수 있는 기회가 제공될 수 있다. 또한, 특정 데이터는 저장 또는 사용되기 전에 하나 이상의 방법으로 처리될 수 있으므로 개인 식별 정보가 제거된다. 예를 들면, 사용자에 대해 개인 식별 정보를 확인할 수 없도록 사용자의 신원을 처리할 수 있다. 사용자의 지리적 위치는 위치 정보(예: 도시, 우편 번호 또는 주 수준)가 얻어지는 곳에서 일반화되어 사용자의 특정 위치를 확인할 수 없다. 따라서 사용자는 사용자에 대한 정보를 수집하고 콘텐츠 서버에서 사용하는 방법을 제어할 수 있다.
본 명세서에서 설명된 요지 및 동작은 본 명세서 및 그 구조적 균등물에 개시된 구조 또는 이들 중 하나 이상의 조합을 포함하는 디지털 전자 회로, 또는 컴퓨터 소프트웨어, 펌웨어 또는 하드웨어로 구현될 수 있다. 본 명세서에서 설명된 요지는 하나 이상의 컴퓨터 프로그램, 예컨대 데이터 처리 장치에 의한 실행 또는 데이터 처리 장치의 동작을 제어하기 위해 컴퓨터 저장 매체상에 인코딩된 컴퓨터 프로그램 명령어의 하나 이상의 모듈로서 구현될 수 있다.
컴퓨터 저장 매체는 컴퓨터 판독 가능 저장 장치, 컴퓨터 판독 가능 저장 기판, 랜덤 또는 직렬 액세스 메모리 어레이 또는 장치, 또는 이들 중 하나 이상의 조합일 수 있거나 포함될 수 있다. 컴퓨터 저장 매체가 전파 신호가 아니지만, 컴퓨터 저장 매체는 인위적으로 생성된 전파 신호로 인코딩된 컴퓨터 프로그램 명령어의 소스 또는 목적지일 수 있다. 또한, 컴퓨터 저장 매체는 하나 이상의 개별 물리적 컴포넌트 또는 매체 (예를 들어, 복수의 CD, 디스크 또는 다른 저장 장치)일 수 있거나 포함될 수 있다.
본 명세서에서 설명된 동작은 하나 이상의 컴퓨터 판독 가능 저장 장치에 저장된 데이터 또는 다른 소스로부터 수신된 데이터에 대해 데이터 처리 장치에 의해 수행되는 동작으로서 구현될 수 있다.
"데이터 처리 장치"라는 용어는 예를 들어, 프로그램 가능한 프로세서, 컴퓨터, 칩 상의 시스템, 또는 다수의 것들, 또는 이들의 조합들을 포함하는, 데이터를 프로세싱하기 위한 다양한 장치들, 디바이스들 및 기계들을 포함한다. 상기 장치는 특수 목적 논리 회로, 예를 들어 FPGA(field programmable gate array) 또는 ASIC(application specific integrated circuit)을 포함할 수 있다. 상기 장치는, 하드웨어 이외에, 해당 컴퓨터 프로그램을 위한 실행 환경을 제작하는 코드, 예를 들어 프로세서 펌웨어, 프로토콜 스택, 데이터베이스 관리 시스템, 운영 체제, 크로스-플랫폼 런타임(cross-platform runtime) 환경, 가상 기계, 또는 그들 중 하나 이상의 조합을 구성하는 코드를 또한 포함할 수 있다. 상기 장치 및 실행 환경은 웹 서비스, 분산 컴퓨팅 및 그리드 컴퓨팅 기반구조들과 같은, 다양한 상이한 컴퓨팅 모델 기반구조들을 실현할 수 있다.
컴퓨터 프로그램 (프로그램, 소프트웨어, 소프트웨어 애플리케이션, 앱, 스크립트, 또는 코드로 또한 알려짐)은 컴파일된 또는 해석된 언어들, 선언적 또는 절차적 언어들을 포함하는 임의의 형태의 프로그래밍 언어로 작성될 수 있으며, 독립형 프로그램을 또는 모듈, 컴포넌트, 서브루틴, 객체, 또는 컴퓨팅 환경에서의 사용을 위해 적합한 다른 유닛을 포함하는 임의의 형태로 배포될 수 있다. 컴퓨터 프로그램은 파일 시스템의 파일에 해당할 수도 있지만 그렇지 않을 수도 있다. 컴퓨터 프로그램은 다른 프로그램들 또는 데이터 (예를 들어, 마크업 언어 문서에 저장된 하나 이상의 스크립트들), 해당 프로그램 전용의 단일 파일, 또는 다수의 조정된 파일들 (예를 들어, 하나 이상의 모듈들, 서브 프로그램들, 또는 코드의 일부들을 저장하는 파일들)을 보유하는 파일의 일부에 저장될 수 있다. 컴퓨터 프로그램은, 하나의 컴퓨터 또는 한 자리에 위치되거나 또는 복수의 자리들에 분산되고 그리고 통신 네트워크에 의해 상호연결된 복수의 컴퓨터들 상에도 실행되도록 배포될 수 있다.
본 명세서에 기술된 프로세스들 및 논리 흐름들은 입력 데이터를 동작시키고 출력을 생성함으로써 액션들을 수행하기 위해 하나 이상의 컴퓨터 프로그램을 실행하는 하나 이상의 프로그램 가능한 프로세서들에 의해 수행될 수 있다. 프로세스들 및 논리 흐름들은 특수 목적 논리 회로, 예를 들어, FPGA (field programmable gate array) or an ASIC (application specific integrated circuit)에 의해 또한 수행될 수 있으며, 장치들 또한 특수 목적 논리회로에 의해 구현될 수 있다.
컴퓨터 프로그램의 실행에 적절한 프로세서들은 예를 들어, 범용 및 특수 목적 마이크로프로세서들 둘 모두 및 임의의 종류의 디지털 컴퓨터의 임의의 하나 이상의 프로세서들을 포함한다. 일반적으로, 프로세서는 판독 전용 메모리 또는 랜덤 액세스 메모리 또는 둘 모두로부터 명령어들 및 데이터를 수신할 것이다. 컴퓨터의 필수 엘리먼트들은 명령어들과 명령어들 및 데이터를 저장하기 위한 하나 이상의 메모리 디바이스들에 따라 액션들을 수행하기 위한 프로세서이다. 일반적으로, 컴퓨터는 또한 데이터를 저장하기 위한 하나 이상의 대용량 저장 디바이스들 (예를 들어, 자기, 광 자기 디스크들 또는 광학 디스크들)로부터 데이터를 수신하거나 저장 디바이스들로 데이터를 전송하기 위해 저장 디바이스들에 동작 가능하게 결합되거나 저장 디바이스들을 포함할 것이다. 그러나 컴퓨터에는 그러한 디바이스들이 필요 없다. 또한, 컴퓨터는 다른 디바이스, 예를 들어, 모바일 폰, 개인 휴대 정보 단말기(PDA), 모바일 오디오 또는 비디오 플레이어, 게임 콘솔, GPS 수신기 또는 휴대용 저장 디바이스(예를 들어, 범용 직렬 버스(USB) 플래시 드라이브)에 내장될 수 있다. 컴퓨터 프로그램 명령어들 및 데이터를 저장하기에 적절한 디바이스들은 모든 형태의 비-휘발성 메모리, 매체, 메모리 디바이스들을 포함하며, 상기 메모리 디바이스들은 반도체 메모리 디바이스들 예를 들어, EPROM, EEPROM, 및 플래시 메모리 디바이스들; 자기 디스크들, 예를 들어, 내부 하드 디스크들 또는 분리성 디스크들; 광 자기 디스크들; 및 CD ROM 및 DVD-ROM 디스크들이다. 프로세서 및 메모리는 특수 목적 논리 회로에 의해 보충되거나 그 안에 포함될 수 있다.
사용자와의 인터랙션을 제공하기 위해, 본 명세서에서 기술된 발명의 구현예들은 정보를 사용자에게 디스플레이하기 위한 디스플레이 디바이스 예를 들어, 음극선관(CRT), 플라즈마 또는 액정 디스플레이(LCD), OLED(organic light emitting diode), TFT(thin-film transistor), 플라즈마, 및 사용자가 컴퓨터에 입력을 제공할 수 있는 터치스크린, 터치 패드, 키보드 및 포인팅 디바이스, 예를 들어, 마우스 또는 트랙볼 등을 갖는 컴퓨터상에서 구현될 수 있다. 다른 종류의 디바이스들이 사용자와의 인터랙션을 제공하는데 사용될 수 있으며; 예를 들어, 사용자에게 제공되는 피드백은 시각적 피드백, 청각 피드백 또는 촉각 피드백과 같은 임의의 형태의 감각 피드백을 포함할 수 있고; 그리고 사용자로부터의 입력은 음향, 음성 또는 촉각 입력을 포함하는 임의의 형태로 수신될 수 있다. 추가로, 예를 들어, 웹브라우저로부터 수신된 요청들에 응답하여 사용자의 클라이언트 디바이스 상의 웹 브라우저에 웹 페이지들을 송신함으로써, 컴퓨터는 사용자에 의해 사용되는 디바이스로 문서들을 보내고 그로부터 문서들을 수신하여 사용자와 인터랙팅할 수 있다.
본 명세서에 기술된 발명은 컴퓨팅 시스템 내에서 구현될 수 있으며, 상기 컴퓨팅 시스템은 백 엔드 컴포넌트(예를 들어 데이터 서버)를 포함하거나 미들웨어 컴포넌트(예를 들어 애플리케이션 서버)를 포함하거나 프론트 엔드 컴포넌트(예를 들어 그래픽 사용자 인터페이스를 갖는 클라이언트 컴퓨터 또는 사용자가 본 명세서에 기술된 발명의 구현과 인터랙팅할 수 있는 웹 브라우저)를 포함하거나 또는 하나 이상의 그러한 백 엔드, 미들웨어, 프론트 엔드 컴포넌트들의 조합을 포함할 수 있다. 시스템의 컴포넌트들은 디지털 데이터 통신 예를 들어, 통신 네트워크, 의 임의의 형태 또는 매체에 의해 상호연결 될 수 있다. 통신 네트워크들의 예시들은 근거리 통신망( "LAN") 및 광역 통신망("WAN"), 인터-네트워크 (예를 들어, 인터넷) 및 피어-투-피어 네트워크들 (예를 들어, 애드 혹 피어-투-피어 네트워크들)을 포함할 수 있다.
컴퓨팅 시스템에는 사용자와 서버가 포함될 수 있다. 사용자와 서버는 일반적으로 서로 떨어져 있으며 일반적으로 통신 네트워크를 통해 상호 작용한다. 사용자와 서버의 관계는 각 컴퓨터에서 실행되고, 서로 사용자-서버 관계를 갖는 컴퓨터 프로그램에 의해 발생한다. 일부 실시 예에서, 서버는 (예를 들어, 클라이언트 장치와 상호 작용하는 사용자에게 데이터를 표시하고 사용자로부터 사용자 입력을 수신하기 위해) 데이터(예를 들어, HTML 페이지)를 클라이언트 장치로 전송한다. 클라이언트 장치에서 생성된 데이터(예: 사용자 상호 작용의 결과)는 서버의 클라이언트 장치로부터 수신될 수 있다.
본 명세서는 많은 특정 구현예 세부 사항들을 포함하지만, 이들이 발명들의 범위 또는 청구될 수 있는 범위의 제한들로 해석되어서는 안되며, 오히려 본 명세서에 기술된 시스템들 및 방법들의 특정한 구현예들에 특정적인 구성들의 설명들로 해석되어야한다. 별도 구현예들의 컨텍스트에서 본 명세서에 기술된 일정 구성들은 단일 구현으로 조합하여 또한 구현될 수 있다. 반대로, 단일 구현의 컨텍스트에서 기술된 다양한 구성들은 다수의 구현 구현예들에서 개별적으로 또는 임의의 적절한 하위조합으로 또한 구현될 수 있다. 또한, 구성들이 일정 조합들로 작용하는 것으로 기술되고 그렇게 초기에 청구될 수 있지만, 일부 경우들에서 청구된 조합으로부터의 하나 이상의 구성들은 조합으로부터 제거될 수 있고, 청구된 조합은 하위조합 또는 하위조합의 변형으로 유도될 수 있다.
유사하게, 동작들이 특정 순서로 도면들에 도시되어 있지만, 이는 바람직한 동작을 달성하기 위해 이러한 동작이 도시된 순서 또는 순차적인 순서로 수행되거나 도시된 모든 동작이 수행될 것을 요구하는 것으로 이해되어서는 안된다. 특정 상황에서 멀티태스킹 및 병렬 처리가 유리할 수 있다. 또한, 상술한 구현 예에서 다양한 시스템 컴포넌트의 분리는 모든 구현 예에서 그러한 분리를 필요로 하는 것으로 이해되어서는 안되며, 서술된 프로그램 컴포넌트들 및 시스템들은 일반적으로 단일 소프트웨어 제품 내에 함께 통합되거나 다중 소프트웨어 제품들로 패키징될 수 있다는 것을 이해해야 한다.
따라서, 본 발명의 특정 구현 예가 설명되었다. 다른 구현 예들은 다음의 청구항들의 범위 내에 있다. 경우에 따라 청구 범위에 나열된 동작을 다른 순서로 수행할 수 있으며 여전히 바람직한 결과를 얻을 수 있다. 또한, 첨부된 도면에 도시된 프로세스는 바람직한 결과를 얻기 위해 도시된 특정 순서 또는 순차적 순서를 반드시 필요로 하지는 않는다. 특정 구현 예에서, 멀티태스킹 또는 병렬 처리가 유리할 수 있다.
Claims (20)
- 방법으로서,
하나 이상의 컴퓨터에 의해, 복수의 쿼리 클러스터를 포함하는 클러스터 데이터를 획득하는 단계 -각각의 쿼리 클러스터는 하나 이상의 매칭 쿼리 특징에 기초하여 동일한 쿼리 클러스터에 포함된 검색 쿼리의 세트임-;
복수의 쿼리 클러스터 중에서 소정의 각 쿼리 클러스터에 대해:
하나 이상의 컴퓨터에 의해, 검색 시스템에 입력될 때 로컬 검색 기능을 트리거하는 소정의 쿼리 클러스터 내의 검색 쿼리의 부분을 결정하는 단계;
로컬 검색 기능을 트리거하는 소정의 쿼리 클러스터 내의 검색 쿼리의 부분이 로컬 의도 임계치를 충족하는지 여부를 결정하는 단계;
하나 이상의 컴퓨터에 액세스할 수 있는 메모리에서, 로컬 검색 기능을 트리거하는 소정의 쿼리 클러스터 내의 검색 쿼리의 부분이 로컬 의도 임계치를 충족하는지 여부의 결정에 기초하여 소정의 쿼리 클러스터에 대한 의도 플래그를 유지하는 단계 -상기 의도 플래그를 유지하는 단계는,
하나 이상의 컴퓨터에 의해, 로컬 검색 기능을 트리거하는 소정의 쿼리 클러스터 내의 검색 쿼리의 부분이 로컬 의도 임계치를 충족할 때 소정의 클러스터가 하이 로컬 의도 클러스터임을 나타내는 값을 상기 의도 플래그에 할당하는 단계; 그리고
하나 이상의 컴퓨터에 의해, 로컬 검색 기능을 트리거하는 소정의 쿼리 클러스터 내의 검색 쿼리의 부분이 로컬 의도 임계치를 충족하지 못할 때 소정의 클러스터가 로우 로컬 의도 클러스터임을 나타내는 값을 상기 의도 플래그에 할당하는 단계를 포함하며-;
하나 이상의 컴퓨터에 의해, 클라이언트 장치에 의해 제출된 검색 쿼리 및 검색 쿼리가 포함된 복수의 클러스터 중 하나의 표시를 수신하는 단계;
하나 이상의 컴퓨터에 의해, 검색 쿼리가 하이 로컬 의도 클러스터 또는 로우 로컬 의도 클러스터에 포함되는지를 결정하기 위해 복수의 클러스터 중 하나와 연관된 의도 플래그에 액세스하는 단계; 그리고
검색 쿼리에 응답하는 단계를 포함하며, 상기 검색 쿼리에 응답하는 단계는,
하나 이상의 컴퓨터에 의해, 검색 쿼리가 하이 로컬 의도 클러스터에 포함되는 것으로 결정될 때 콘텐츠 아이템에 로컬 콘텐츠 특징을 추가하는 것을 포함하여, 검색 쿼리에 응답하여 클라이언트 장치에 배포된 콘텐츠 아이템을 수정하는 단계; 그리고
하나 이상의 컴퓨터에 의해, 검색 쿼리가 로우 로컬 의도 클러스터에 포함된 것으로 결정되는 경우 로컬 콘텐츠 특징을 추가하지 않고 검색 쿼리에 응답하여 클라이언트 장치에 배포된 콘텐츠 아이템을 배포하는 단계를 포함하는 것을 특징으로 하는 방법. - 제1항에 있어서,
검색 시스템에 입력될 때 로컬 검색 기능을 트리거하는 소정의 쿼리 클러스터 내의 검색 쿼리의 부분을 결정하는 단계는,
소정의 쿼리 클러스터 내의 각 소정의 검색 쿼리에 대해,
소정의 쿼리가 소정의 검색 쿼리를 사용하여 검색 시스템에 의해 생성된 검색 결과 페이지에서 로컬 지식 패널의 프리젠테이션을 트리거하는지 여부를 결정하는 단계;
로컬 지식 패널의 프리젠테이션을 트리거하는 소정의 검색 쿼리의 총 수를 결정하는 단계; 그리고
소정의 쿼리 클러스터에 있는 검색 쿼리의 수와 관련하여 로컬 지식 패널의 프리젠테이션을 트리거하는 소정의 검색 쿼리의 총 수의 비율을 기반으로 검색 쿼리의 부분을 결정하는 단계를 포함하는 것을 특징으로 하는 방법. - 제1항 또는 제2항에 있어서, 검색 시스템에 입력될 때 로컬 검색 기능을 트리거하는 소정의 쿼리 클러스터 내에서 검색 쿼리의 부분을 결정하는 단계는,
소정의 쿼리 클러스터 내에서 소정의 각 검색 쿼리에 대해,
소정의 쿼리가 소정의 검색 쿼리를 사용하여 검색 시스템에 의해 생성된 검색 결과 페이지에서 하나 이상의 로컬 요소의 프리젠테이션을 트리거하는 로컬 속성을 포함하는지 여부를 결정하는 단계;
하나 이상의 로컬 요소의 프리젠테이션을 트리거하는 소정의 검색 쿼리의 총 수를 결정하는 단계; 그리고
소정의 쿼리 클러스터에 있는 검색 쿼리의 수에 대한 하나 이상의 로컬 요소의 프리젠테이션을 트리거하는 소정의 검색 쿼리의 총 수의 비율에 기초하여 검색 쿼리의 부분을 결정하는 단계를 포함하는 것을 특징으로 하는 방법. - 선행하는 청구항 중 어느 한 항에 있어서, 상기 검색 쿼리가 하이 로컬 의도 클러스터 또는 로우 로컬 의도 클러스터에 포함되는지 여부를 결정하는 단계는,
검색 쿼리를 사용하여 다수의 다른 쿼리 클러스터를 검색하는 단계;
검색에 기초하여 검색 쿼리를 포함하는 것으로 결정된 소정의 쿼리 클러스터가 하이 로컬 의도 클러스터 또는 로우 로컬 의도 클러스터로 나타내는 값이 의도 플래그에 할당되었는지 여부를 결정하는 단계; 그리고
검색 쿼리를 포함하는 소정의 쿼리 클러스터의 의도 플래그에 상기 결정된 할당된 값에 기초하여 검색 쿼리가 하이 로컬 의도 쿼리 또는 로우 로컬 의도 쿼리임을 나타내는 값을 의도 플래그에 할당하는 단계를 포함하는 것을 특징으로 하는 방법. - 선행하는 청구항 중 어느 한 항에 있어서, 상기 검색 쿼리가 하이 로컬 의도 클러스터 또는 로우 로컬 의도 클러스터에 포함되는지를 결정하는 단계는,
검색 쿼리의 데이터베이스에서 검색 쿼리를 식별하는 단계;
데이터베이스에서 검색 쿼리에 대해 하이 로컬 의도 플래그 또는 로우 로컬 의도 플래그가 설정되었는지 여부를 결정하는 단계; 그리고
하이 로컬 의도 플래그 또는 로우 로컬 의도 플래그가 데이터베이스의 검색 쿼리에 대해 설정되었는지 여부의 결정을 기반으로 검색 쿼리가 하이 로컬 의도 쿼리 또는 로우 로컬 의도 쿼리임을 나타내는 값을 의도 플래그에 할당하는 단계를 포함하는 것을 특징으로 하는 방법. - 선행하는 청구항 중 어느 한 항에 있어서, 상기 수정된 콘텐츠 아이템의 추가된 로컬 콘텐츠 특징은 대화형 사용자 인터페이스 객체를 포함하고, 상기 방법은,
대화형 사용자 인터페이스 객체와의 상호 작용을 지정하는 정보를 수신하는 단계; 그리고
추가 콘텐츠가 표시되도록 하는 데이터를 제공하는 단계를 포함하며, 추가 콘텐츠는 상호 작용을 기반으로 선택되는 것을 특징으로 하는 방법. - 선행하는 청구항 중 어느 한 항에 있어서, 상기 검색 쿼리가 상기 하이 로컬 의도 클러스터에 포함되는 것으로 결정될 때 상기 로컬 콘텐츠 특징을 상기 콘텐츠 아이템에 추가하는 단계는 상기 콘텐츠 아이템에 그래픽 오버레이로서 상기 로컬 콘텐츠 특징을 추가하는 단계를 포함하는 것을 특징으로 하는 방법.
- 시스템으로서,
데이터 처리 장치; 그리고
데이터 처리 장치와 데이터 통신하고, 데이터 처리 장치에 의해 실행될 때 데이터 처리 장치로 하여금 동작들을 수행하게 하는 명령어를 저장하는 비-일시적 컴퓨터 판독 가능 저장 매체를 포함하며, 상기 동작들은,
하나 이상의 컴퓨터에 의해, 복수의 쿼리 클러스터를 포함하는 클러스터 데이터를 획득하는 동작 -각각의 쿼리 클러스터는 하나 이상의 매칭 쿼리 특징에 기초하여 동일한 쿼리 클러스터에 포함된 검색 쿼리의 세트임-;
복수의 쿼리 클러스터 중에서 소정의 각 쿼리 클러스터에 대해:
하나 이상의 컴퓨터에 의해, 검색 시스템에 입력될 때 로컬 검색 기능을 트리거하는 소정의 쿼리 클러스터 내의 검색 쿼리의 부분을 결정하는 동작;
로컬 검색 기능을 트리거하는 소정의 쿼리 클러스터 내의 검색 쿼리의 부분이 로컬 의도 임계치를 충족하는지 여부를 결정하는 동작;
하나 이상의 컴퓨터에 액세스할 수 있는 메모리에서, 로컬 검색 기능을 트리거하는 소정의 쿼리 클러스터 내의 검색 쿼리의 부분이 로컬 의도 임계치를 충족하는지 여부의 결정에 기초하여 소정의 쿼리 클러스터에 대한 의도 플래그를 유지하는 동작 -상기 의도 플래그를 유지하는 동작은,
하나 이상의 컴퓨터에 의해, 로컬 검색 기능을 트리거하는 소정의 쿼리 클러스터 내의 검색 쿼리의 부분이 로컬 의도 임계치를 충족할 때 소정의 클러스터가 하이 로컬 의도 클러스터임을 나타내는 값을 상기 의도 플래그에 할당하는 동작; 그리고
하나 이상의 컴퓨터에 의해, 로컬 검색 기능을 트리거하는 소정의 쿼리 클러스터 내의 검색 쿼리의 부분이 로컬 의도 임계치를 충족하지 못할 때 소정의 클러스터가 로우 로컬 의도 클러스터임을 나타내는 값을 상기 의도 플래그에 할당하는 동작을 포함하며-;
하나 이상의 컴퓨터에 의해, 클라이언트 장치에 의해 제출된 검색 쿼리 및 검색 쿼리가 포함된 복수의 클러스터 중 하나의 표시를 수신하는 동작;
하나 이상의 컴퓨터에 의해, 검색 쿼리가 하이 로컬 의도 클러스터 또는 로우 로컬 의도 클러스터에 포함되는지를 결정하기 위해 복수의 클러스터 중 하나와 연관된 의도 플래그에 액세스하는 동작; 그리고
검색 쿼리에 응답하는 동작을 포함하며, 상기 검색 쿼리에 응답하는 동작은,
하나 이상의 컴퓨터에 의해, 검색 쿼리가 하이 로컬 의도 클러스터에 포함되는 것으로 결정될 때 콘텐츠 아이템에 로컬 콘텐츠 특징을 추가하는 것을 포함하여, 검색 쿼리에 응답하여 클라이언트 장치에 배포된 콘텐츠 아이템을 수정하는 동작; 그리고
하나 이상의 컴퓨터에 의해, 검색 쿼리가 로우 로컬 의도 클러스터에 포함된 것으로 결정될 때 로컬 콘텐츠 특징을 추가하지 않고 검색 쿼리에 응답하여 클라이언트 장치에 배포된 콘텐츠 아이템을 배포하는 동작을 포함하는 것을 특징으로 하는 시스템. - 제8항에 있어서, 검색 시스템에 입력될 때 로컬 검색 기능을 트리거하는 소정의 쿼리 클러스터 내의 검색 쿼리의 부분을 결정하는 동작은,
소정의 쿼리 클러스터 내의 각 소정의 검색 쿼리에 대해,
소정의 쿼리가 소정의 검색 쿼리를 사용하여 검색 시스템에 의해 생성된 검색 결과 페이지에서 로컬 지식 패널의 프리젠테이션을 트리거하는지 여부를 결정하는 동작;
로컬 지식 패널의 프리젠테이션을 트리거하는 소정의 검색 쿼리의 총 수를 결정하는 동작; 그리고
소정의 쿼리 클러스터에 있는 검색 쿼리의 수와 관련하여 로컬 지식 패널의 프리젠테이션을 트리거하는 소정의 검색 쿼리의 총 수의 비율을 기반으로 검색 쿼리의 부분을 결정하는 동작을 포함하는 것을 특징으로 하는 시스템. - 제8항 또는 제9항에 있어서, 검색 시스템에 입력될 때 로컬 검색 기능을 트리거하는 소정의 쿼리 클러스터 내에서 검색 쿼리의 부분을 결정하는 동작은,
소정의 쿼리 클러스터 내에서 소정의 각 검색 쿼리에 대해,
소정의 쿼리가 소정의 검색 쿼리를 사용하여 검색 시스템에 의해 생성된 검색 결과 페이지에서 하나 이상의 로컬 요소의 프리젠테이션을 트리거하는 로컬 속성을 포함하는지 여부를 결정하는 동작;
하나 이상의 로컬 요소의 프리젠테이션을 트리거하는 소정의 검색 쿼리의 총 수를 결정하는 동작; 그리고
소정의 쿼리 클러스터에 있는 검색 쿼리의 수에 대한 하나 이상의 로컬 요소의 프리젠테이션을 트리거하는 소정의 검색 쿼리의 총 수의 비율에 기초하여 검색 쿼리의 부분을 결정하는 동작을 포함하는 것을 특징으로 하는 시스템. - 선행하는 청구항 중 어느 한 항에 있어서, 상기 검색 쿼리가 하이 로컬 의도 클러스터 또는 로우 로컬 의도 클러스터에 포함되는지 여부를 결정하는 동작은,
검색 쿼리를 사용하여 다수의 다른 쿼리 클러스터를 검색하는 동작;
검색에 기초하여 검색 쿼리를 포함하는 것으로 결정된 소정의 쿼리 클러스터가 하이 로컬 의도 클러스터 또는 로우 로컬 의도 클러스터로 나타내는 값이 의도 플래그에 할당되었는지 여부를 결정하는 동작; 그리고
검색 쿼리를 포함하는 소정의 쿼리 클러스터의 의도 플래그에 상기 결정된 할당된 값에 기초하여 검색 쿼리가 하이 로컬 의도 쿼리 또는 로우 로컬 의도 쿼리임을 나타내는 값을 의도 플래그에 할당하는 동작을 포함하는 것을 특징으로 하는 시스템. - 선행하는 청구항 중 어느 한 항에 있어서, 상기 검색 쿼리가 하이 로컬 의도 클러스터 또는 로우 로컬 의도 클러스터에 포함되는지를 결정하는 동작은,
검색 쿼리의 데이터베이스에서 검색 쿼리를 식별하는 동작;
데이터베이스에서 검색 쿼리에 대해 하이 로컬 의도 플래그 또는 로우 로컬 의도 플래그가 설정되었는지 여부를 결정하는 동작; 그리고
하이 로컬 의도 플래그 또는 로우 로컬 의도 플래그가 데이터베이스의 검색 쿼리에 대해 설정되었는지 여부의 결정을 기반으로 검색 쿼리가 하이 로컬 의도 쿼리 또는 로우 로컬 의도 쿼리임을 나타내는 값을 의도 플래그에 할당하는 동작을 포함하는 것을 특징으로 하는 시스템. - 선행하는 청구항 중 어느 한 항에 있어서, 상기 수정된 콘텐츠 아이템의 추가된 로컬 콘텐츠 특징은 대화형 사용자 인터페이스 객체를 포함하고, 상기 방법은,
대화형 사용자 인터페이스 객체와의 상호 작용을 지정하는 정보를 수신하는 단계; 그리고
추가 콘텐츠가 표시되도록 하는 데이터를 제공하는 단계를 포함하며, 추가 콘텐츠는 상호 작용을 기반으로 선택되는 것을 특징으로 하는 시스템. - 선행하는 청구항 중 어느 한 항에 있어서, 상기 검색 쿼리가 상기 하이 로컬 의도 클러스터에 포함되는 것으로 결정될 때 상기 로컬 콘텐츠 특징을 상기 콘텐츠 아이템에 추가하는 동작은 상기 콘텐츠 아이템에 그래픽 오버레이로서 상기 로컬 콘텐츠 특징을 추가하는 동작을 포함하는 것을 특징으로 하는 시스템.
- 컴퓨터 프로그램으로 인코딩된 비-일시적 컴퓨터 저장 매체로서, 상기 컴퓨터 프로그램은 데이터 처리 장치에 의해 실행될 때 데이터 처리 장치로 하여금 동작들을 수행하게 하는 명령어를 포함하며, 상기 동작들은,
하나 이상의 컴퓨터에 의해, 복수의 쿼리 클러스터를 포함하는 클러스터 데이터를 획득하는 동작 -각각의 쿼리 클러스터는 하나 이상의 매칭 쿼리 특징에 기초하여 동일한 쿼리 클러스터에 포함된 검색 쿼리의 세트임-;
복수의 쿼리 클러스터 중에서 소정의 각 쿼리 클러스터에 대해:
하나 이상의 컴퓨터에 의해, 검색 시스템에 입력될 때 로컬 검색 기능을 트리거하는 소정의 쿼리 클러스터 내의 검색 쿼리의 부분을 결정하는 동작;
로컬 검색 기능을 트리거하는 소정의 쿼리 클러스터 내의 검색 쿼리의 부분이 로컬 의도 임계치를 충족하는지 여부를 결정하는 동작;
하나 이상의 컴퓨터에 액세스할 수 있는 메모리에서, 로컬 검색 기능을 트리거하는 소정의 쿼리 클러스터 내의 검색 쿼리의 부분이 로컬 의도 임계치를 충족하는지 여부의 결정에 기초하여 소정의 쿼리 클러스터에 대한 의도 플래그를 유지하는 동작 -상기 의도 플래그를 유지하는 동작은,
하나 이상의 컴퓨터에 의해, 로컬 검색 기능을 트리거하는 소정의 쿼리 클러스터 내의 검색 쿼리의 부분이 로컬 의도 임계치를 충족할 때 소정의 클러스터가 하이 로컬 의도 클러스터임을 나타내는 값을 상기 의도 플래그에 할당하는 동작; 그리고
하나 이상의 컴퓨터에 의해, 로컬 검색 기능을 트리거하는 소정의 쿼리 클러스터 내의 검색 쿼리의 부분이 로컬 의도 임계치를 충족하지 못할 때 소정의 클러스터가 로우 로컬 의도 클러스터임을 나타내는 값을 상기 의도 플래그에 할당하는 동작을 포함하며-;
하나 이상의 컴퓨터에 의해, 클라이언트 장치에 의해 제출된 검색 쿼리 및 검색 쿼리가 포함된 복수의 클러스터 중 하나의 표시를 수신하는 동작;
하나 이상의 컴퓨터에 의해, 검색 쿼리가 하이 로컬 의도 클러스터 또는 로우 로컬 의도 클러스터에 포함되는지를 결정하기 위해 복수의 클러스터 중 하나와 연관된 의도 플래그에 액세스하는 동작; 그리고
검색 쿼리에 응답하는 동작을 포함하며, 상기 검색 쿼리에 응답하는 동작은,
하나 이상의 컴퓨터에 의해, 검색 쿼리가 하이 로컬 의도 클러스터에 포함되는 것으로 결정될 때 콘텐츠 아이템에 로컬 콘텐츠 특징을 추가하는 것을 포함하여, 검색 쿼리에 응답하여 클라이언트 장치에 배포된 콘텐츠 아이템을 수정하는 동작; 그리고
하나 이상의 컴퓨터에 의해, 검색 쿼리가 로우 로컬 의도 클러스터에 포함된 것으로 결정될 때 로컬 콘텐츠 특징을 추가하지 않고 검색 쿼리에 응답하여 클라이언트 장치에 배포된 콘텐츠 아이템을 배포하는 동작을 포함하는 것을 특징으로 하는 비-일시적 컴퓨터 저장 매체. - 제15항에 있어서, 검색 시스템에 입력될 때 로컬 검색 기능을 트리거하는 소정의 쿼리 클러스터 내의 검색 쿼리의 부분을 결정하는 동작은,
소정의 쿼리 클러스터 내의 각 소정의 검색 쿼리에 대해,
소정의 쿼리가 소정의 검색 쿼리를 사용하여 검색 시스템에 의해 생성된 검색 결과 페이지에서 로컬 지식 패널의 프리젠테이션을 트리거하는지 여부를 결정하는 동작;
로컬 지식 패널의 프리젠테이션을 트리거하는 소정의 검색 쿼리의 총 수를 결정하는 동작; 그리고
소정의 쿼리 클러스터에 있는 검색 쿼리의 수와 관련하여 로컬 지식 패널의 프리젠테이션을 트리거하는 소정의 검색 쿼리의 총 수의 비율을 기반으로 검색 쿼리의 부분을 결정하는 동작을 포함하는 것을 특징으로 하는 비-일시적 컴퓨터 저장 매체. - 제15항 또는 제16항에 있어서, 검색 시스템에 입력될 때 로컬 검색 기능을 트리거하는 소정의 쿼리 클러스터 내에서 검색 쿼리의 부분을 결정하는 동작은,
소정의 쿼리 클러스터 내에서 소정의 각 검색 쿼리에 대해,
소정의 쿼리가 소정의 검색 쿼리를 사용하여 검색 시스템에 의해 생성된 검색 결과 페이지에서 하나 이상의 로컬 요소의 프리젠테이션을 트리거하는 로컬 속성을 포함하는지 여부를 결정하는 동작;
하나 이상의 로컬 요소의 프리젠테이션을 트리거하는 소정의 검색 쿼리의 총 수를 결정하는 동작; 그리고
소정의 쿼리 클러스터에 있는 검색 쿼리의 수에 대한 하나 이상의 로컬 요소의 프리젠테이션을 트리거하는 소정의 검색 쿼리의 총 수의 비율에 기초하여 검색 쿼리의 부분을 결정하는 동작을 포함하는 것을 특징으로 하는 비-일시적 컴퓨터 저장 매체. - 선행하는 청구항 중 어느 한 항에 있어서, 상기 검색 쿼리가 하이 로컬 의도 클러스터 또는 로우 로컬 의도 클러스터에 포함되는지 여부를 결정하는 동작은,
검색 쿼리를 사용하여 다수의 다른 쿼리 클러스터를 검색하는 동작;
검색에 기초하여 검색 쿼리를 포함하는 것으로 결정된 소정의 쿼리 클러스터가 하이 로컬 의도 클러스터 또는 로우 로컬 의도 클러스터로 나타내는 값이 의도 플래그에 할당되었는지 여부를 결정하는 동작; 그리고
검색 쿼리를 포함하는 소정의 쿼리 클러스터의 의도 플래그에 상기 결정된 할당된 값에 기초하여 검색 쿼리가 하이 로컬 의도 쿼리 또는 로우 로컬 의도 쿼리임을 나타내는 값을 의도 플래그에 할당하는 동작을 포함하는 것을 특징으로 하는 비-일시적 컴퓨터 저장 매체. - 선행하는 청구항 중 어느 한 항에 있어서, 상기 검색 쿼리가 하이 로컬 의도 클러스터 또는 로우 로컬 의도 클러스터에 포함되는지를 결정하는 동작은,
검색 쿼리의 데이터베이스에서 검색 쿼리를 식별하는 동작;
데이터베이스에서 검색 쿼리에 대해 하이 로컬 의도 플래그 또는 로우 로컬 의도 플래그가 설정되었는지 여부를 결정하는 동작; 그리고
하이 로컬 의도 플래그 또는 로우 로컬 의도 플래그가 데이터베이스의 검색 쿼리에 대해 설정되었는지 여부의 결정을 기반으로 검색 쿼리가 하이 로컬 의도 쿼리 또는 로우 로컬 의도 쿼리임을 나타내는 값을 의도 플래그에 할당하는 동작을 포함하는 것을 특징으로 하는 비-일시적 컴퓨터 저장 매체. - 선행하는 청구항 중 어느 한 항에 있어서, 상기 수정된 콘텐츠 아이템의 추가된 로컬 콘텐츠 특징은 대화형 사용자 인터페이스 객체를 포함하고, 상기 방법은,
대화형 사용자 인터페이스 객체와의 상호 작용을 지정하는 정보를 수신하는 단계; 그리고
추가 콘텐츠가 표시되도록 하는 데이터를 제공하는 단계를 포함하며, 추가 콘텐츠는 상호 작용을 기반으로 선택되는 것을 특징으로 하는 비-일시적 컴퓨터 저장 매체.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/US2019/030866 WO2020226615A1 (en) | 2019-05-06 | 2019-05-06 | Triggering local extensions based on inferred intent |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20200130319A true KR20200130319A (ko) | 2020-11-18 |
KR102352654B1 KR102352654B1 (ko) | 2022-01-18 |
Family
ID=66625285
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020207026913A KR102352654B1 (ko) | 2019-05-06 | 2019-05-06 | 추론된 의도에 기반한 로컬 확장 트리거 |
Country Status (6)
Country | Link |
---|---|
US (1) | US11397737B2 (ko) |
EP (2) | EP3759622B1 (ko) |
JP (1) | JP7233435B2 (ko) |
KR (1) | KR102352654B1 (ko) |
CN (2) | CN112219201B (ko) |
WO (1) | WO2020226615A1 (ko) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120151479A1 (en) | 2010-12-10 | 2012-06-14 | Salesforce.Com, Inc. | Horizontal splitting of tasks within a homogenous pool of virtual machines |
US11455361B2 (en) * | 2019-08-09 | 2022-09-27 | Microsoft Technology Licensing, Llc | Query entity-experience classification |
CN113515662B (zh) * | 2021-07-09 | 2024-07-02 | 北京百度网讯科技有限公司 | 一种相似歌曲检索方法、装置、设备以及存储介质 |
CN114547421A (zh) * | 2021-12-24 | 2022-05-27 | 北京达佳互联信息技术有限公司 | 一种搜索处理方法、装置、电子设备及存储介质 |
CN115757461B (zh) * | 2022-11-09 | 2023-06-23 | 北京新数科技有限公司 | 一种银行数据库应用系统结果聚类方法 |
CN116383454B (zh) * | 2023-04-10 | 2024-01-30 | 星环信息科技(上海)股份有限公司 | 图数据库的数据查询方法、电子设备及存储介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110184981A1 (en) * | 2010-01-27 | 2011-07-28 | Yahoo! Inc. | Personalize Search Results for Search Queries with General Implicit Local Intent |
Family Cites Families (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7747601B2 (en) * | 2006-08-14 | 2010-06-29 | Inquira, Inc. | Method and apparatus for identifying and classifying query intent |
US20060085392A1 (en) * | 2004-09-30 | 2006-04-20 | Microsoft Corporation | System and method for automatic generation of search results based on local intention |
US20070100801A1 (en) * | 2005-10-31 | 2007-05-03 | Celik Aytek E | System for selecting categories in accordance with advertising |
US7860886B2 (en) | 2006-09-29 | 2010-12-28 | A9.Com, Inc. | Strategy for providing query results based on analysis of user intent |
US20080222119A1 (en) | 2007-03-08 | 2008-09-11 | Microsoft Corporation | Detecting a user's location, local intent and travel intent from search queries |
US7805450B2 (en) | 2007-03-28 | 2010-09-28 | Yahoo, Inc. | System for determining the geographic range of local intent in a search query |
US20090043749A1 (en) * | 2007-08-06 | 2009-02-12 | Garg Priyank S | Extracting query intent from query logs |
US20100306211A1 (en) * | 2009-05-26 | 2010-12-02 | Nokia Corporation | Method and apparatus for automatic geo-location search learning |
US8626768B2 (en) * | 2010-01-06 | 2014-01-07 | Microsoft Corporation | Automated discovery aggregation and organization of subject area discussions |
US20110208715A1 (en) * | 2010-02-23 | 2011-08-25 | Microsoft Corporation | Automatically mining intents of a group of queries |
US20120059838A1 (en) | 2010-09-07 | 2012-03-08 | Microsoft Corporation | Providing entity-specific content in response to a search query |
US9025888B1 (en) * | 2012-02-17 | 2015-05-05 | Google Inc. | Interface to facilitate browsing of items of visual content |
US9959348B2 (en) * | 2012-06-04 | 2018-05-01 | Google Llc | Applying social annotations to search results |
US20160261541A1 (en) * | 2013-06-07 | 2016-09-08 | Hewlett-Packard Development Company, L.P. | Prioritizing log messages |
US20150193447A1 (en) * | 2014-01-03 | 2015-07-09 | Microsoft Corporation | Synthetic local type-ahead suggestions for search |
US20150278355A1 (en) * | 2014-03-28 | 2015-10-01 | Microsoft Corporation | Temporal context aware query entity intent |
US9613145B2 (en) | 2014-06-18 | 2017-04-04 | Google Inc. | Generating contextual search presentations |
US20160034951A1 (en) * | 2014-07-30 | 2016-02-04 | Microsoft Corporation | Allocating prominent display space for query answers |
US10326768B2 (en) | 2015-05-28 | 2019-06-18 | Google Llc | Access control for enterprise knowledge |
US10970646B2 (en) * | 2015-10-01 | 2021-04-06 | Google Llc | Action suggestions for user-selected content |
US20170147710A1 (en) * | 2015-11-20 | 2017-05-25 | Google Inc. | Multi-format search results in dialer application |
US9953185B2 (en) * | 2015-11-24 | 2018-04-24 | Google Llc | Identifying query patterns and associated aggregate statistics among search queries |
US20170220573A1 (en) * | 2016-01-05 | 2017-08-03 | William McMichael | Systems and methods of performing searches within a text input application |
US10318562B2 (en) * | 2016-07-27 | 2019-06-11 | Google Llc | Triggering application information |
CN106844680A (zh) * | 2017-01-25 | 2017-06-13 | 百度在线网络技术(北京)有限公司 | 推荐信息的展示方法和装置 |
-
2019
- 2019-05-06 CN CN201980020444.2A patent/CN112219201B/zh active Active
- 2019-05-06 CN CN202410472323.4A patent/CN118503511A/zh active Pending
- 2019-05-06 WO PCT/US2019/030866 patent/WO2020226615A1/en unknown
- 2019-05-06 EP EP19725476.6A patent/EP3759622B1/en active Active
- 2019-05-06 KR KR1020207026913A patent/KR102352654B1/ko active IP Right Grant
- 2019-05-06 JP JP2020550138A patent/JP7233435B2/ja active Active
- 2019-05-06 EP EP24159505.7A patent/EP4372583A3/en active Pending
- 2019-10-30 US US16/669,030 patent/US11397737B2/en active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110184981A1 (en) * | 2010-01-27 | 2011-07-28 | Yahoo! Inc. | Personalize Search Results for Search Queries with General Implicit Local Intent |
Also Published As
Publication number | Publication date |
---|---|
EP4372583A2 (en) | 2024-05-22 |
CN112219201A (zh) | 2021-01-12 |
CN118503511A (zh) | 2024-08-16 |
US20220327130A1 (en) | 2022-10-13 |
US11397737B2 (en) | 2022-07-26 |
JP7233435B2 (ja) | 2023-03-06 |
JP2021526245A (ja) | 2021-09-30 |
EP3759622A1 (en) | 2021-01-06 |
KR102352654B1 (ko) | 2022-01-18 |
EP4372583A3 (en) | 2024-07-10 |
EP3759622B1 (en) | 2024-07-03 |
WO2020226615A1 (en) | 2020-11-12 |
US20200356569A1 (en) | 2020-11-12 |
CN112219201B (zh) | 2024-04-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102352654B1 (ko) | 추론된 의도에 기반한 로컬 확장 트리거 | |
US10339172B2 (en) | System and methods thereof for enhancing a user's search experience | |
US20190179827A1 (en) | Native application search result adjustment based on user specific affinity | |
EP3529714B1 (en) | Animated snippets for search results | |
KR20210010653A (ko) | 네이티브 어플리케이션의 어플리케이션 페이지 인덱싱 | |
JP6733037B2 (ja) | アプリケーション情報をトリガすること | |
US20120226676A1 (en) | System and methods thereof for adaptation of a free text query to a customized query set | |
US20240086479A1 (en) | Identification and Issuance of Repeatable Queries | |
US9576077B2 (en) | Generating and displaying media content search results on a computing device | |
US9558233B1 (en) | Determining a quality measure for a resource | |
US12124457B2 (en) | Triggering local extensions based on inferred intent | |
US20210406333A1 (en) | Causal selection preferences | |
US20230259815A1 (en) | Machine learning techniques for user group based content distribution | |
WO2011156732A2 (en) | A system and methods thereof for adaptation of a free text query to a customized query set |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |