KR101810279B1 - Real-time personalized recommendation of location-related entities - Google Patents
Real-time personalized recommendation of location-related entities Download PDFInfo
- Publication number
- KR101810279B1 KR101810279B1 KR1020137014146A KR20137014146A KR101810279B1 KR 101810279 B1 KR101810279 B1 KR 101810279B1 KR 1020137014146 A KR1020137014146 A KR 1020137014146A KR 20137014146 A KR20137014146 A KR 20137014146A KR 101810279 B1 KR101810279 B1 KR 101810279B1
- Authority
- KR
- South Korea
- Prior art keywords
- location
- time
- query
- user
- ranking
- 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/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
Abstract
쿼리에 응답하여, 원하는 위치 근처에 있는 위치-기반 개체들의 순위를 사용자에게 보여주는 위치-기반 개체의 순위를 매기는 기법이 기술된다. 본 기법은 주어진 위치와 주어진 시간에 모바일 장치 사용자들의 커뮤니티에 의해 수행되는 검색을 활용하여, 특정 위치 및 시간대에서 인기있는 위치-기반 개체를 추정할 수 있다. 본 기법은 또한 쿼리를 제출하는 사람의 개인적 선호도 및 그 사용자가 속한 그룹의 그룹 선호도에 기초하여 이들 위치-기반 개체들을 필터링하거나 다시 순위를 매길 수 있다. 또한 개인적 선호도는 상황(예컨대, 점심 또는 저녁 시간대에 선호하는 음식점이 다른 것)에 따라 달라질 수 있다.In response to a query, a technique is described for ranking a location-based entity to show the user the ranking of location-based entities near the desired location. The technique can estimate popular location-based entities at specific locations and time zones, utilizing searches performed by a community of mobile device users at a given location and at a given time. The technique may also filter or re-rank these location-based entities based on the personal preferences of the person submitting the query and the group preferences of the group to which the user belongs. Also, personal preferences may vary depending on the situation (e.g., different restaurants preferred at lunch or in the evening).
Description
현재, 사용자들이 검색 엔진을 사용하여 지역 업체에 대한 검색을 수행할 때, 그 검색 결과의 순위는 정적(static)이다. 즉, 검색 결과는 오로지 위치에만 의존하며, 쿼리가 제출된 시간, 쿼리를 제출한 사람 및 검색과 관련된 기타 상황에 대한 정보에 의해서는 변하지 않는다. 그러한 상황의 정보는, 예컨대, 날씨, 교통상황, 그 사업체의 인기 등을 포함할 수 있다. 예를 들어, 주어진 위치에서 쿼리 "음식점"에 대한 지역 정보 검색 결과는 그 쿼리가 언제 제출되었는지에 무관하게 변하지 않는다. 그러나, 사용자, 특히 모바일 장치로부터 쿼리를 제출하는 사용자는 아침, 점심 또는 저녁에 따라 다른 유형의 음식점을 찾는 것이 일반적이다. 게다가, 사용자의 개인적인 선호도에 따라, 하루 중의 다른 시간대에서는 다른 유형의 음식점들이 선호될 수 있다.Currently, when a user performs a search for a local company using a search engine, the ranking of the search results is static. That is, the search results depend only on location, and do not depend on the time the query was submitted, the person who submitted the query, and other information about the search. Such information of the situation may include, for example, weather, traffic conditions, popularity of the business, and the like. For example, a localized search result for a query "restaurant" at a given location does not change regardless of when the query was submitted. However, it is common for users, especially those submitting queries from mobile devices, to find other types of restaurants in the morning, at lunch or in the evening. In addition, different types of restaurants may be preferred at different times of the day, depending on the user's personal preferences.
지역 사업체 및 다른 관심지역정보들에 대한 검색, 특히 스마트 폰과 같은 모바일 컴퓨터 장치로부터 오는 검색들은, 사용자들의 "바로 여기, 바로 지금 (right here, right now)"의 관심을 반영한다. 그러나, 지역정보 검색 결과의 순위를 매기는 종래의 기법들은 이러한 시간과 상황에 따른 역동적인 측면(temporal and contextual dynamics)을 포착하는데 실패하고 있다.Searches for local businesses and other areas of interest, particularly searches from mobile computing devices such as smartphones, reflect the user's interest in "right here, right now ". However, conventional techniques for ranking local information search results fail to capture such temporal and contextual dynamics.
요약 (summary ( SummarySummary ))
본 요약부는 발명의 상세한 설명에서 후술될 선택된 개념들을 단순화된 형태로 소개하기 위해 제공된다. 본 요약부는 청구 대상의 주요 특징 또는 핵심적인 특징을 밝히기 위한 것이 아니며, 청구 대상의 범위를 한정하기 위해 사용되는 것은 더더욱 아니다.This summary is provided to introduce in simplified form selected concepts that will be described later in the description of the invention. This Summary is not intended to identify key features or key features of the claimed subject matter and is not to be used to limit the scope of the claims.
본 명세서에서 설명되는 위치-기반 개체의 순위를 매기는 기법은, 예컨대 지역 사업체, 음식점, 여흥을 즐길 수 있는 장소(entertainment venues), 이벤트 등과 같은 위치-기반 개체들의 순위를 매기기 위한 기법이다. 이를 위해서, 본 기법의 일 실시예는 위치-기반 개체의 순위를 실시간(real-time) 또는 준-실시간(near real-time)으로 순위매기기 위한 모바일 검색 로그 (모바일 컴퓨터 장치 등에서 행해진 검색의 기록)을 활용한다. 사용자가 쿼리를 제출할 때마다, 본 기법은 주변의 다른 사용자들이 동일하거나 유사한 쿼리를 제출한 뒤에 선택한 검색 결과 중에서 위치-기반 개체를 조사한다. 일 실시예에서, 본 기법은 오직 주어진 시간대에 대응하는 모바일 검색 로그의 일부분만을 포함한다. 추가적으로, 위치-기반 개체의 순위를 매기는 기법의 일 실시예에서, 검색 쿼리에 응답하여 위치-기반 개체들을 검색하는 두 가지 옵션이 있는데, 이는: 실시간 검색과 준 실시간 검색이다.The location-based entity ranking technique described herein is a technique for ranking location-based entities such as, for example, local businesses, restaurants, entertainment venues, events, and the like. To this end, one embodiment of the present technique is to provide a mobile search log (record of search performed on a mobile computer device or the like) for ranking the rank of a location-based entity in real-time or near real- . Each time a user submits a query, the technique examines a location-based object among selected search results after other nearby users submit the same or similar query. In one embodiment, the technique only includes a portion of the mobile search log corresponding to a given time period. Additionally, in one embodiment of a technique for ranking location-based entities, there are two options for searching for location-based entities in response to a search query: real-time search and semi-real-time search.
본 기법의 실시간 검색의 한 실시예에서는, 예컨대 어느 월요일의 시간 T에 제출된 주어진 쿼리에 답하기 위하여, 본 기법은 바로 그날(즉, 바로 그 월요일)의 시간 (T-X)와 T 사이에 제출된 쿼리만을 사용한다. 변수 X는 쿼리의 양에 기초하여 결정될 수 있다. 본 기법은 순위 매기기를 수행하기에 충분한 쿼리가 나오도록 X의 값을 (예컨대 1시간, 2시간, 3시간 등으로) 증가시킬 수 있다.In one embodiment of a real-time search of the technique, for example, to answer a given query submitted at a time T of a Monday, the technique uses a query submitted between the times (TX) and T on the very day Only. The variable X can be determined based on the amount of the query. The technique may increase the value of X (for example, by 1 hour, 2 hours, 3 hours, etc.) so that there are enough queries to perform the ranking.
다른 준 실시간 검색의 실시예에서, 만약 전술된 실시간 검색 옵션이 실패한다면(예를 들어, 이용가능한 쿼리의 양이 충분치 않은 경우), 유사한 시구간(예를 들어, 월요일) 및 시간대(T-X, T)에 기록된 쿼리 로그를 검색 결과를 제공하는데 사용할 수 있다.In an embodiment of another quasi-real-time search, if the aforementioned real-time search option fails (e.g., the amount of available query is insufficient), similar time periods (e.g. Monday) ) Can be used to provide search results.
검색 로그의 집합을 어떻게 식별하는지와 무관하게, 본 기법의 일 실시예에서, 쿼리 로그의 선택된 집합에 대한 검색 결과 중에서 어떤 위치-기반 개체가 많이 선택될수록, 그 위치-기반 개체의 순위 점수가 높아진다. 사용자가 그날의 다른 시간에 다른 위치-기반 개체를 선택(예컨대, 입력 장치로 클릭)함에 따라, 위치-기반 개체의 순위, 그리고 보이는 검색 결과가, 날씨, 교통상황 등과 같이 수집하기 어려운 상황에 따른 제한조건을 반영하여 바뀔 것이다. 일 실시예에서, 순위를 매기는 어떤 알고리즘이라도 위치-기반 개체의 순위를 매기기 위해 사용될 수 있다.Regardless of how to identify the set of search logs, in one embodiment of the present technique, the more the location-based objects are selected from among the search results for the selected set of query logs, the higher the ranking score of the location-based objects . As the user selects (e.g., clicks on an input device) another location-based object at another time of the day, the position-based object's ranking and the search results that are visible are displayed in a variety of contexts such as weather, traffic conditions, It will change to reflect the limitation. In one embodiment, any ranking algorithm can be used to rank the location-based entities.
위치-기반 개체의 순위를 매기는 기법은 특정한 위치 및 시간대에서 인기있는 위치-기반 개체를 추측하기 위해, 주어진 위치 및 주어진 시간에서 모바일 장치 사용자와 같은 컴퓨터 장치 사용자들의 커뮤니티에 의해 수행되는 검색을 활용할 수 있다. 그러면 본 기법은 또한 쿼리를 제출하는 사용자의 개인적 선호도에 기초하여 이들 위치-기반 개체를 필터링하거나 다시 순위를 매길 수 있다. 개인적 선호도는 또한 특유의 상황(예를 들어, 점심과 저녁 시간대에 따라 선호하는 음식점이 달라지는 것)에 따라 달라질 수 있다.
The technique of ranking a location-based entity utilizes a search performed by a community of computer device users, such as a mobile device user, at a given location and at a given time, to guess popular location-based objects in a particular location and time zone . The technique may then also filter or reorder these location-based entities based on the personal preferences of the user submitting the query. Personal preferences may also vary depending on the particular circumstances (eg, the preferences of the restaurant for lunch and dinner).
본 명세서에 개시된 특정한 특징, 양상 및 장점들은 후술할 상세한 설명, 첨부된 청구범위 및 도면을 통하여 더 잘 이해될 것이다.
도 1은 본 명세서에 기술된 위치-기반 개체의 순위를 매기는 기법의 예시적인 일 실시예를 이용하는 예시적인 아키텍쳐이다.
도 2는 위치-기반 개체의 순위를 매기는 기법의 일 실시예를 이용하는 예시적인 프로세스의 흐름도를 도시한 것이다.
도 3은 위치-기반 개체의 순위를 매기는 기법의 다른 실시예를 이용하는 다른 예시적인 프로세스의 흐름도를 도시한 것이다.
도 4는 본 명세서에 기술된 위치-기반 개체의 순위를 매기는 기법을 사용하는 예시적인 시나리오를 도시한 것이다.
도 5는 위치-기반 개체의 순위를 매기는 기법을 실시하는 데 사용될 수 있는 예시적인 컴퓨터 장치를 도시한 것이다.The particular features, aspects and advantages disclosed herein will be better understood from the following detailed description, appended claims and drawings.
FIG. 1 is an exemplary architecture that utilizes one exemplary embodiment of a ranking technique for location-based entities described herein.
Figure 2 illustrates a flow diagram of an exemplary process utilizing one embodiment of a technique for ranking a location-based entity.
3 illustrates a flow diagram of another exemplary process utilizing another embodiment of a technique for ranking a location-based entity.
4 illustrates an exemplary scenario using the ranking technique of position-based entities described herein.
Figure 5 illustrates an exemplary computer device that may be used to implement a ranking-based entity ranking technique.
위치-기반 개체의 순위를 매기는 기법에 대한 이하의 상세한 설명에서는 첨부된 도면이 참조될 수 있는데, 이 도면들은 본 명세서에 기술된 위치-기반 개체의 순위를 매기는 기법이 실시될 수 있는 실시예로서 본 발명을 도시하면서 그 일부를 형성한다. 또한 본 발명의 청구대상의 범위를 벗어나지 않으면서 다른 실시예들을 이용하거나 구조적인 변경을 할 수 있다는 점을 이해하여야 한다.
In the following detailed description of a technique for ranking a location-based entity, reference may be made to the accompanying drawings, which are incorporated in and constitute a part of the specification, in which a ranking-based entity ranking technique described herein may be practiced Illustrate the invention and form part of it. It should also be understood that other embodiments may be utilized or structural changes may be made without departing from the scope of the invention.
1.0 위치-기반 개체의 순위를 매기는 기법 (1.0 Position-based object ranking technique ( LocationLocation -- RelatedRelated EntityEntity Ranking Ranking TechniqueTechnique ))
이하의 부분에서는 위치-기반 개체의 순위를 매기는 기법에 대한 소개 및 개관과, 본 기법을 실시하기 위한 예시적인 아키텍쳐 및 예시적인 프로세스가 제공된다. 본 기법을 적용하기 위한 예시적인 시나리오도 제공된다.
In the following sections, an introduction and overview of a technique for ranking a location-based entity and an exemplary architecture and exemplary process for implementing the technique are provided. An exemplary scenario for applying this technique is also provided.
1.1 소개(1.1 Introduction IntroductionIntroduction ))
위치-기반 개체의 검색 결과, 예컨대, 지역 사업체, 음식점, 이벤트, 박물관, 공원 또는 다른 관심지역정보에 대한 쿼리의 검색 결과에 순위를 매길 때에는 상황적 정보가 중요하다. 그러나, 그러한 정보를 획득하고, 주석을 달고, 분류를 하는 것은 어려운 일이다. 사용자들 스스로가 그러한 정보의 좋은 원천이다. 본 명세서에 기술된 위치-기반 개체의 순위를 매기는 기법의 다양한 실시예는 이 점을 활용한다. 사람들의 커뮤니티의 각각의 구성원이 일정 시간대에서 검색을 수행한 뒤 어떤 것을 선택하는 지를 관찰하는 것에 의해, 본 기법은 그 시간대 동안 주어진 상황(예컨대 시간적, 개인적, 환경적)하에서 그 커뮤니티의 인기있는 선택이 무엇일지에 대한 비록 암시적이긴 하지만 확실한 예측값을 얻을 수 있다.
Contextual information is important when ranking search results of search results for location-based objects, such as queries for local businesses, restaurants, events, museums, parks or other areas of interest. However, it is difficult to obtain such information, annotate it, and classify it. Users themselves are a good source of such information. Various embodiments of the technique for ranking the location-based entities described herein utilize this point. By observing what each member of the community of people does after performing a search at a certain time of day and then choosing which one to select, the technique can be used to determine the popularity of that community under given circumstances (eg, temporal, personal, environmental) Although it is implicit, we can get a clear estimate of what it is.
1.2 본 기법의 개관 (1.2 Overview of this technique ( OverviewOverview ofof thethe TechniqueTechnique ))
본 명세서에 기술된 위치-기반 개체의 순위를 매기는 기법은 인기도에 따라 위치-기반 개체의 순위를 매긴다. 이를 위해, 일 실시예에서, 본 기법은 실시간(또는 준-실시간)으로 위치-기반 개체의 순위를 매기기 위해 모바일 장치의 검색 로그(예컨대, 모바일 장치에 행해진 검색들의 기록)를 활용한다. (비-모바일 컴퓨터 장치에 의한 검색 로그도 위치 정보가 사용가능한 경우에는 사용될 수 있음에 주목해야 한다.) 추가적으로, 검색 로그 데이터는 다른 데이터, 예컨대 전화 로그 데이터나 소셜 네트워킹 데이터에 의해 보강될 수 있다. 예를 들어, 검색 로그와 마찬가지로 어떤 위치-기반 개체에 대한 전화 통화 또는 포스트도 그 위치-기반 개체가 얼마나 자주 선택되는지를 결정할 때 사용될 수 있다. 게다가, 일 실시예에서, 순위를 매기는 중에, 전화 통화 또는 소셜 네트워킹 포스트에는 더 높은 가중치를 줄 수 있는데, 왜냐하면 검색 로그의 사용자 선택은 암시적인 사용자 선호도를 제공하는데 비해 이러한 행동들은 명시적인 사용자 선호도를 보여주기 때문이다. 사용자가 쿼리를 제출할 때마다, 본 기법은 근처의 다른 사용자들이 동일 또는 유사한 쿼리를 제출한 후에 선택(예컨대 클릭하거나, 전화하거나 이에 대해 블로그)했던 검색 결과 중의 위치-기반 개체를 조사한다. 쿼리의 유사성은, 예를 들어, 쿼리 검색어의 유사성을 비교함으로서 결정될 수 있다. 예를 들어, 본 기법은 한 사용자가동일 개체 또는 동종 개체를 선택한 경우, 그 사용자가 입력한 검색어를 다른 사용자들이 입력한 다른 검색어와 비교할 수 있다. 이들 검색어들은 분류되어 새로운 검색어가 나타났을 때 사전적 마커(lexical marker)로서 사용될 수 있다. 따라서 시간이 지나면 본 기법은 검색어 “국수”와 “스파게티”를 상당히 유사한 결과를 생성하는 검색어로 연관지을 것이다. 예를 들어, 만약 쿼리 “파스타” 및 “새우”가 모두 90%의 확률로 이탈리안 음식점을 선택하는 결과를 낳았다면, 본 기법의 일 실시예는 두 쿼리가 동종의 사업체를 가리킨다는 점에서 이들이 유사하다고 판단할 것이다. 일 실시예에서, 본 발명은 주어진 시간대에 해당하는 모바일 검색 로그의 일부분만을 포함할 수 있다.The technique of ranking the location-based entities described herein ranks the location-based entities according to their popularity. To this end, in one embodiment, the technique utilizes a search log (e.g., a record of searches done on a mobile device) of the mobile device to rank the location-based entities in real-time (or semi-real-time). (It should be noted that search logs by non-mobile computing devices may also be used if location information is available.) Additionally, search log data may be augmented with other data, such as phone log data or social networking data . For example, a phone call or post to a location-based object, like a search log, can be used to determine how often the location-based object is selected. In addition, in one embodiment, during ranking, a phone call or social networking post may be given a higher weight, since user selection of search logs provides implicit user preferences, . Each time a user submits a query, the technique examines a location-based entity in the search results that other users nearby select (e.g., click, call, or blog against) after submitting the same or similar query. The similarity of the query can be determined, for example, by comparing the similarity of the query terms. For example, if a user selects the same entity or homogeneous entity, the technique can compare the search term entered by the user with another search term input by other users. These search terms can be categorized and used as lexical markers when new search terms appear. So over time, this technique will relate the search terms "noodles" and "spaghetti" to search terms that produce quite similar results. For example, if the query "pasta" and "shrimp" all resulted in a 90% probability of choosing an Italian restaurant, then one embodiment of the technique would be similar in that two queries refer to the same type of business . In one embodiment, the invention may include only a portion of the mobile search log corresponding to a given time period.
위치-기반 개체의 순위를 매기는 본 기법의 일 실시예에서, 사용자에게 위치-기반 개체를 추천하는 시간대를 선택하는 두가지 옵션이 있다. 첫번째 옵션은 사용자의 쿼리에 응답하여 그 사용자가 관심있어 할만한 유형의 위치-기반 개체들에 대한 실시간 검색을 수반한다. 일 실시예에서, 본 기법은 위치-기반 개체의 유형을 아래와 같이 결정한다. 본 기법은 주변의 모든 위치-기반 개체들(예컨대 사업체)을 조사하고 각각의 점수를 계산한다. 점수가 높을수록, 그 위치-기반 개체가 검색 결과중 상위로 나타난다. 이 점수는 상황-제한적인 로그에 기초하여 계산된다. 예를 들어, 주어진 쿼리 “이탈리안”에 대해, 로그는 (만약 있다하더라도) 매우 적은 수의 일본 음식점에 대한 클릭수를 가질 것이다. 결과적으로, 일본 음식점들은 낮은 점수를 받을 것이고 검색 결과 목록 상단에는 나타나지 않을 것이다. 만약 본 기법이 이전에는 한번도 본 적이 없었던 쿼리에 대해 답해야 한다면, 본 기법은 결과를 전혀 보여주지 않거나 관련없는 결과를 보여주게 될 것이다. 두번째 옵션은 위치-기반 개체에 대한 준 실시간 검색을 수반한다. 이 시나리오에서, 본 기법은 쿼리가 입력된 시간과 유사한 (그러나 동일하지는 않은) 시구간에 대해 위치-기반 개체들을 검색한다.In one embodiment of this technique for ranking location-based entities, there are two options for selecting a time zone for recommending a location-based entity to a user. The first option involves a real-time search for location-based entities of a type that the user may be interested in in response to the user's query. In one embodiment, the technique determines the type of location-based entity as follows. This technique examines all the location-based entities (for example, businesses) in the vicinity and calculates each score. The higher the score, the higher the position-based entity appears in the search results. This score is calculated based on the situation-limited log. For example, for a given query "Italian", the log will have a very small number of clicks on Japanese restaurants (if any). As a result, Japanese restaurants will receive low scores and will not appear at the top of the search results list. If this technique is to answer queries that have never been seen before, then this technique will show no results at all or show irrelevant results. The second option involves a quasi-real-time search for location-based entities. In this scenario, the technique searches for location-based entities for time periods that are similar (but not identical) to the time the query was entered.
검색 로그의 집합을 어떻게 식별하느냐와 무관하게, 쿼리 로그의 선택된 집합에 대한 검색 결과 중에서 한 위치-기반 개체가 사용자에 의해 많은 선택(예컨대, 입력 장치로 클릭)을 받을수록, 그 위치-기반 개체의 순위 점수가 높아진다. 사용자가 그날의 다른 시간대에 다른 위치-기반 개체를 선택하면, 그 위치-기반 개체의 순위 그리고 보이는 검색 결과가, 날씨, 교통상황 등의 수집하기 어려운 상황적 제한조건을 반영하여 달라질 것이다. 위치-기반 개체를 순위 매기기 위해 어떤 순위 매기는 알고리즘을 사용해도 무방하다는 것에 주목해야 한다. 본 기법이 순위 매기는 알고리즘에 입력될 입력 데이터(예컨대 검색 로그)의 집합을 선택하는 방법(예를 들어, 실시간 옵션 또는 준 실시간 옵션)이 본 기법의 응용에 중요한 고려대상임에 주목해야 한다.Regardless of how to identify the set of search logs, the more a location-based object is selected by the user (e.g., clicked as an input device) from the search results for a selected set of query logs, The higher the ranking score is. If a user selects a different location-based object at different times of the day, the position of the location-based object and the search results that will be visible will vary, reflecting the cumbersome situational constraints of weather, traffic conditions, and the like. It should be noted that any ranking algorithm may be used to rank position-based entities. It should be noted that the scheme chooses a set of input data (e.g., search logs) to be input to the ranking algorithm (e.g., real-time option or quasi-real-time option) is important to the application of this technique.
일 실시예에서, 본 기법은 쿼리를 제출하는 특정 사용자의 시간에 따라 변하는 개인적 선호도를 찾아내고 이들 시간에 따라 변하는 선호도를 이용하여 모바일 검색 로그를 통해 발견된 위치-기반 개체들을 필터링하고 순위매긴다. 이들 시간에 따라 변하는 개인적 선호도를 결정하는 것은 사용자가 각각의 쿼리 이후에 선택하는 위치-기반 개체들의 유형들을 모니터링하는 것에 의해 수행될 수 있다. 그런 방법으로 본 기법은 시간이 지남에 따라 이 사용자가 관심있어하는 위치-기반 개체의 유형을 학습할 수 있다. 일 실시예에서, 본 기법은 하루 중의 다른 시간대 또는 여러 날 또는 여러 계절(예컨대 여름 대 겨울) 내의 다른 시간대에 기초하여 사용자의 선호도를 생성할 수 있다. 예를 들어, 어떤 사용자가 점심에 이탈리안 음식점을 좋아하는 것이 알려져 있다면, 그 사용자가 점심 시간에 "음식점"에 대해 검색할 때, 본 기법은 근처의 이탈리아 레스토랑에 더 놓은 순위를 매겨 표시할 수 있다. 만약 사용자가 저녁으로 간소한 식당(diner)을 선호한다면 저녁 시간 동안 그 사용자로부터의 정확히 동일한 쿼리가 이번에는 더 많은 간소한 식당인 위치-기반 개체를 포함할 것이다.In one embodiment, the technique finds personal preferences that vary with the time of a particular user submitting a query and filters and ranks the found location-based entities through the mobile search log using preferences that vary over time. Determining the personal preferences that vary over these times may be performed by monitoring the types of location-based entities the user selects after each query. In this way, the technique can learn over time the types of location-based entities that this user is interested in. In one embodiment, the technique may generate a user's preference based on different time of day or multiple days or different time periods within several seasons (e.g., summer versus winter). For example, if a user is known to like an Italian restaurant for lunch, then when the user searches for "restaurant" at lunch time, the technique may rank more in nearby Italian restaurants . If the user prefers a simple diner for the evening, the exact same query from that user during the evening will include a location-based entity, which is now a more streamlined restaurant.
일 실시예에서 본 기법은 또한 검색 결과에 대한 사용자의 개인화된 선택을 활용하여 사용자들을 그들의 배경, 선호도, 인구통계학적(demographic) 특성에 의해 암시적으로 정의되는 커뮤니티 또는 그룹들로 그룹화할 수 있다. 그 결과로서, 본 기법의 일 실시예는 다른 순위를 가진 특정 커뮤니티에 대해서는 이전에 기술된 검색 로그 분석을 수정할 수 있다. 예를 들어, 만약 저녁에 이탈리안 음식점을 선택한 사람들이 보통 점심에 피자를 선택한다고 할 때, 주어진 사용자가 정오 경에 음식점 쿼리를 발송한다면, 수정된 검색 로그 분석은 그 결과에서 근처의 피자 음식점이 높은 순위를 갖도록 표시할 것이다. 사용자의 선호도가 시간에 따라 변하기 때문에, 형성된 그룹들도 시간에 따라 달라진다. 예를 들어, 사용자는 그 쿼리를 제출한 시간에 따라 다른 그룹에 속할 수 있다.In one embodiment, the technique may also utilize a user's personalized selection of search results to group users into communities or groups that are implicitly defined by their background, preferences, demographic characteristics . As a result, one embodiment of the present technique may modify the previously described search log analysis for a particular community of different rankings. For example, if a person who chooses an Italian restaurant in the evening usually chooses a pizza for lunch, and a given user sends a restaurant query around noon, the modified search log analysis will show that the nearby pizza restaurant is high I will mark it as having a ranking. Since the user's preferences change over time, the groups formed also vary over time. For example, a user can belong to a different group depending on the time the query was submitted.
본질적으로, 일 실시예에서, 본 기법은 주어진 위치 및 시간에 모바일 장치 사용자의 커뮤니티에 의해 수행되는 검색을 활용하여 특정 위치 및 시간대에서 인기있는 위치-기반 개체를 추측한다. 그러면 본 기법은 이들 위치-기반 개체를 그 쿼리를 제출한 사용자의 개인적 선호도에 기초하여 필터링하거나 다시 순위를 매긴다. 개인적 선호도는 특유의 상황(예를 들어, 점심과 저녁 시간대에 다른 음식점을 선호하는 것)에 따른 것일 수도 있다.In essence, in one embodiment, the technique utilizes searches performed by a community of mobile device users at a given location and time to guess popular location-based entities at particular locations and time zones. The technique then filters or reorders these location-based entities based on the personal preferences of the user who submitted the query. Personal preferences may be due to specific circumstances (eg, preferring other restaurants for lunch and dinner).
위치-기반 순위를 매기는 기법의 개관이 제공되었으므로, 이하의 섹션에서는 본 기법을 실시하는 예시적인 아키텍쳐 및 예시적인 프로세스를 제공한다.
Since an overview of location-based ranking techniques has been provided, the following sections provide exemplary architectures and exemplary processes for implementing the techniques.
1.3 예시적인 아키텍쳐(1.3 Example Architecture ( ExemplaryExemplary ArchitectureArchitecture ))
도 1은 본 위치-기반 개체의 순위를 매기는 기법이 구현될 수 있는 예시적인 아키텍쳐의 다이어그램을 제공한다. 도 1에서 보이는 바와 같이, 사용자(102)가 모바일 컴퓨터 장치(500)(도 5에서 더 자세히 논의됨)를 사용하여 쿼리(104)를 제출하면, 쿼리 문자열(104)이 그 사용자의 위치(106)(또는 선택적으로 다른 관련있는 위치) 및 사용자 ID(108)와 함께 서버(110)(또는 블럭 (110)에서 보이는 것과 동일한 기능을 수행하는 하나 이상의 서버들)로 전송된다. 쿼리(104), 위치(106) 및 쿼리(104)가 제출된 시간(112)이 서버(110)에 기록된다.Figure 1 provides a diagram of an exemplary architecture in which techniques for ranking the location-based entities can be implemented. 1, when the user 102 submits the
위치(106), 시간(112) 및 쿼리(104) 그 자체에 기초하여, 검색 로그(114)(예컨대 모바일 검색 로그)의 집합의 부분이 아래에 논의될 실시간 또는 준 실시간 방법을 사용하여 식별된다. 본 위치-기반 개체의 순위를 매기는 기법의 일 실시예에서, 위치-기반 개체를 사용자에게 추천하는 데 사용될 검색 로그 데이터의 부분을 결정하는 데 두 가지 옵션이 있다. 첫번째 옵션은 사용자의 쿼리에 응답하여, 사용자가 관심있어 할만한 유형의 위치-기반 개체에 대한 실시간 검색을 수반한다. 두번째 옵션은 위치-기반 개체에 대하여 준 실시간 검색을 수반한다. 이 시나리오에서, 예를 들어, 본 기법은 쿼리가 입력된 것과 동일한 시간대에서 며칠에 걸쳐 위치-기반 개체에 대한 검색을 수행한다.Based on
예를 들어, 실시간 검색 옵션에서, 예컨대 어느 월요일의 시간 T에 제출된 주어진 쿼리에 대답하기 위해, 본 기법은, 일 실시예에서, 정확히 동일한 날(즉, 그 월요일)의 시간 T-X와 T 사이에 제출된 쿼리들만을 사용한다. 변수 X는 쿼리의 양에 따라 결정될 수 있다. 본 기법은 순위를 매기기에 충분한 수의 쿼리를 보장하도록 X의 값을 (예컨대, 1시간, 2시간, 3시간 등으로) 증가시킬 수 있다. 준 실시간 검색 옵션에서, 만약 위에서 기술된 실시간 검색 옵션이 실패하면(예를 들어, 사용가능한 쿼리의 양이 충분치 않은 경우), 주어진 요일(즉, 월요일들) 중에서 주어진 시간대(T-X, T) 안에 기록된 쿼리 로그들만이 사용된다.For example, in a real-time search option, for example, to answer a given query submitted at a time T of one Monday, the technique may, in one embodiment, calculate the time between the times TX and T on exactly the same day Only the submitted queries are used. The variable X can be determined according to the amount of the query. The technique may increase the value of X (e.g., by 1 hour, 2 hours, 3 hours, etc.) to ensure a sufficient number of queries to rank. In the semi-real-time search option, if the real-time search option described above fails (for example, the amount of available queries is insufficient), records within a given time zone (TX, T) Only the query logs are used.
식별된 검색 로그(114)의 부분이 서버(110)의 위치-기반 개체의 순위를 매기는 모듈(116) 내에서 위치-기반 개체의 순위를 매기기 위해 사용된다. 사용된 검색 로그(114)의 부분은 순위 매기기에 앞서 사용자의 그룹 멤버쉽에 기초하여 선택적으로 필터링될 수 있다. 이것은 도 3 및 도 4에서 더 구체적으로 논의될 것이다. 주어진 사용자에 대한 그룹 멤버쉽은 시구간 및 위치가 달라짐에 따라 변할 수 있다.A portion of the identified
사용자가 쿼리를 제출할 때마다, 본 기법은 근처의 다른 사용자들이 동일 또는 유사한 쿼리를 제출한 뒤에 선택한 검색 결과 내의 위치-기반 개체들을 센다. 위치-기반 개체가 검색 로그의 선택된 부분에 더 자주 나타날수록 그 순위 점수가 높아진다. 실제로는, 어떤 순위를 매기는 알고리즘이라도 이 단계에 적용될 수 있다.Each time a user submits a query, the technique counts location-based entities in the selected search results after other nearby users submit the same or similar query. The more frequently a location-based entity appears in a selected portion of the search log, the higher the rank score. In practice, any ranking algorithm can be applied to this step.
본 기법의 일 실시예에서, 사용자 ID에 기초하여, 쿼리를 제출한 사용자의 개인적 선호도가 개인화된 데이터베이스(118)에 저장될 수 있고 위치-기반 개체의 순위를 매기는 모듈(116)에서 위치-기반 개체를 필터링하거나 다시 순위를 매기는 데 더 사용될 수 있다. 이에 더하여, 개인적 선호도는 시간 정보(예를 들어, 시간, 날짜, 계절 등)에 따라 조절될 수 있다. 예를 들어 한 사람의 선호도는 그가 월요일 아침에 쿼리를 제출할 때 다를 수 있다.In one embodiment of the present technique, based on the user ID, the personal preferences of the user submitting the query may be stored in the
좀 더 구체적으로, 사용자는 개인적 선호도를 명시적으로 혹은 암시적으로 제공할 수 있다. 첫번째 경우에, 일 실시예에서, 사용자는 그의 선호도에 관한 질문(예를 들어, 그가 자신의 모바일 컴퓨터 장치에 본 기법에 대한 애플리케이션을 설치한 직후)에 답하게 된다. 이들 개인적 선호도는 시간에 따라 변할 수 있다. 사용자에 의해 제공되는 정보는 "나는 주말에는 비싼 이탈리안 또는 프랑스 음식점이 좋다", "주중에 나는 보통 패스트푸드를 파는 곳에 관심이 있다", "나는 야외 자리가 있는 장소를 선호한다" 등과 같은 형태일 수 있다. 또는, 사용자 선호도의 결정은 암시적일 수도 있다. 예를 들어, 만약 사용자가 "음식점" 쿼리를 제출한 후에 90%의 확률로 비싼 이탈리안 또는 프랑스 음식점을 선택한다면, 본 기법은 이 사용자가 비싼 이탈리안 또는 프랑스 음식점을 좋아한다고 가정할 수 있다.More specifically, the user can provide personal preferences explicitly or implicitly. In the first case, in one embodiment, the user answers a question about his preferences (e.g., immediately after he installs the application for the technique on his mobile computing device). These personal preferences can change over time. The information provided by the user may be in the form of "I like expensive Italian or French restaurants on weekends", "I am usually interested in selling fast food on weekdays", "I prefer a place with outdoor seating" . Alternatively, the determination of user preferences may be implicit. For example, if a user chooses an expensive Italian or French restaurant with a 90% probability after submitting a "restaurant" query, the technique can assume that the user likes expensive Italian or French restaurants.
위치-기반 개체의 많은 범주들이 확립될 수 있다. 예를 들어, 이 범주들에는 사업체 속성(예컨대, 분위기, 드레스 코드 등), 주어진 유형의 사업체를 방문하기 위해 사용자들이 주로 가는 장소, 그리고 사용자들이 사업체를 검색 또는 방문하는 시간대 등이 포함될 수 있다. 사용자 선호도가 구축되고 나면, 개개인의 선호도가 얼마나 유사한가에 기초하여 사용자 선호도를 함께 클러스터링하는 것에 의해 그룹 선호도가 생성될 수 있다.Many categories of location-based entities can be established. For example, these categories may include business attributes (e.g., mood, dress code, etc.), where users typically go to visit a given type of business, and the time when users search for or visit the business. Once the user preferences have been established, group preferences can be created by clustering user preferences together based on how similar the individual's preferences are.
비록 본 명세서에 기술된 위치-기반 개체의 실시간 순위 매기기가 서버(110) 상에서 수행되는 것으로 기술되었지만, 이러한 순위 매기기는 그 대신에 유사한 순위 매기기 모듈이 설치된 모바일 컴퓨터 장치(500)에서도 수행될 수 있음을 주목해야 한다. 다른 실시예에서 서버와 관련하여 본 명세서에 기술된 기능들은 컴퓨팅 클라우드에서 수행될 수도 있다.Although real-time ranking of the location-based entity described herein is described as being performed on the
쿼리(104)에 응답하여 반환된 순위가 매겨진 검색 결과(120)는 사용자(102)에게로 다시 전송된다. 사용자(102)가 반환된 검색 결과(120)로부터 위치-기반 개체를 선택한 후에, 이 데이터는 서버(110)의 데이터 로깅 모듈(124)에 기록되고, 모바일 검색 로그(114)에 새로운 엔트리가 생성되며, 그 사용자의 개인적인 선호도가 개인화된 데이터베이스(118)에 적절하게 갱신된다. 데이터 로깅 모듈은 쿼리에 응답하여 사용자 활동(예컨대 이 경우에는 사용자의 선택 또는 클릭)을 기록할 책임이 있다. 일 실시예에서, 이 정보가 최신이라는 것을 확신하기 위해 데이터로거는 모든 사용자 선택(예컨대, 클릭)을 기록한다. 예를 들어, 데이터로거는 쿼리, 사용자 ID, 장치 유형, 하루 중의 시간, 주중의 요일 등을 기록한다. 이 정보는 위치-기반 개체의 순위를 매기는 것을 수행하는 데 활용된다.The ranked ranked search results 120 returned in response to the
실시간으로 순위를 매기는 모듈(116)은 실시간으로 사용자 선호도를 반영하기 위해 주기적으로 각 커뮤니티, 시간대 및 다른 상황의 변수값(context parameter values)에 대해 지역 위치-기반 개체의 순위를 다시 매긴다. 예를 들어, 일 실시예에서, 상술한 대로, 사용자가 소정의 검색 결과를 클릭(선택)할 때마다, 검색 로그가 갱신된다. 이것이 실시간 순위가 매겨진 이후이기 때문에, 본 기법은 시간에 따라 사용자 선택(예컨대 클릭) 방식이 변경되는 것을 포착하려고 시도한다. 그렇게 하기 위해서, 본 기법은 고려되는 상황의 변수(예컨대, 시간대, 요일 등)의 모든 조합에 대해 주기적으로 지역 위치-기반 개체(예컨대 사업체)의 순위를 계산한다. 주기적으로 이를 수행함으로써, 본 기법은 실시간으로 순위를 매기는 것을 가능하게 하고 (이미 순위가 계산되어 있기 때문에) 서버로 하여금 쿼리에 재빠르게 응답할 수 있도록 한다.The real-
본 기법을 실시하는 예시적인 아키텍쳐에 대해 논의하였으므로, 이하의 섹션에서는 본 기법을 실시하는 몇몇 예시적인 프로세스를 기술한다.
Having discussed an exemplary architecture for implementing this technique, the following sections describe some exemplary processes for implementing this technique.
1.4 위치-기반 개체의 순위를 매기는 기법을 이용하는 예시적인 프로세스 (Exemplary 1.4 Exemplary process using position-based object ranking technique ProcessesProcesses forfor EmployingEmploying thethe LocationLocation -- RelatedRelated EntityEntity RankingRanking TechniqueTechnique ))
위치-기반 개체의 순위를 매기는 기법을 수행하는 한 예시적인 실시예(200)의 흐름도가 도 2에 도시된다. 도 2에서 볼 수 있듯이, 블럭(202)에서 위치-기반 개체(예컨대, 사업체, 장소, 관심지역정보)의 유형, 위치 및 주어진 시간(예를 들어, 현재시간)에 대한 쿼리가 검색 엔진에 입력된다. 그리고 나서 블럭(204)에 도시되어 있듯이, 입력 시간과 연관된 시간대의 검색 로그를 검색하여 동일 또는 유사한 쿼리에 응답하여 입력 위치 주변의 검색 로그로부터 사용자에 의해 선택된 입력된 위치-기반 개체의 유형의 위치-기반 개체를 찾아낸다. 그리고 나서, 블럭(206)에서 도시된 것처럼 사용자에 의해 선택된 위치-기반 개체는 각 위치-기반 개체가 검색 로그로부터 사용자에 의해 선택된 횟수에 따라 순위가 매겨진다. 이어서 위치-기반 개체의 순위가 매겨진 목록은 블럭(208)에 도시된 것과 같이 출력된다.A flow diagram of an
위치-기반 개체의 순위를 매기는 기법을 수행하는 다른 예시적인 실시예(300)의 흐름도가 도 3에 도시되어 있다. 도 3과 같이, 블럭(302)에서, 소정의 유형을 갖는 위치-기반 개체에 대한 쿼리가 주어진 시간과 위치에서 검색 엔진에 입력된다. 블럭(304)에서, 입력 쿼리와 연관된 몇몇 사용자로부터의 검색 로그 또한 입력된다. 이 검색 로그들은 또한 선택적으로 주어진 입력 시간 주변의 시간대만을 포함하도록 필터링될 수도 있다(또는 선택적으로 입력 시간과 유사한 시간대를 포함하도록 필터링될 수도 있다). 검색 쿼리와 연관된 검색 로그는 앞서 도 2에서 논의했던 것처럼 그룹 멤버쉽 선호도(블럭(306))에 기초하여 필터링될 수 있다.A flow diagram of another
입력 시간과 연관된 시간대의 이들 필터링된 검색 로그들을 검색하여, 동일 또는 유사한 쿼리에 응답하여 입력 위치 근처에서 필터링된 검색 로그로부터 사용자에 의해 선택된 위치-기반 개체 입력과 동일한 유형의 위치-기반 개체를 찾아낸다(블럭(308)). 사용자에 의해 선택된 위치-기반 개체들은 블럭(310)에 나타낸 것과 같이 각각의 위치-기반 개체들이 필터링된 검색 로그로부터 사용자에 의해 선택된 회수에 의해 순위가 매겨진다.Searches these filtered search logs in the time zone associated with the input time to find a location-based object of the same type as the location-based object input selected by the user from the filtered search log near the input location in response to the same or similar query (Block 308). The location-based entities selected by the user are ranked by the number of times the respective location-based entities are selected by the user from the filtered search logs, as shown in
그리고 나서 위치-기반 개체의 순위가 매겨진 목록은 블럭(312)에 도시된 것과 같이 그 쿼리를 입력한 사용자의 사용자 선호도에 기초하여 다시 순위가 매겨지고, 블럭(314)에 나타낸 것과 같이 사용자에게 출력된다. 이어서, 검색 로그 및 선호도를 갱신하기 위해서, 블럭(316)에 도시된 것과 같이, 쿼리를 입력한 사용자는 위치-기반 개체들의 순위가 매겨진 목록으로부터 위치-기반 개체를 선택하고, (블럭(318)에 나타낸 것과 같이) 사용자가 쿼리에 응답하여 그 선택된 위치-기반 개체를 선택하였음을 보여주도록 검색 로그와 사용자 선호도가 갱신된다.
The ranked list of location-based entities is then re-ranked based on the user preference of the user who entered the query, as shown in
1.5 위치-기반 개체의 순위를 매기는 기법을 사용하는 예시적인 시나리오 (Exemplary 1.5 Exemplary Scenarios Using Location-Based Object Ranking Techniques ScenarioScenario forfor UsingUsing thethe LocationLocation -- RelatedRelated EntityEntity RankingRanking TechniqueTechnique ))
도 4에서는 위치-기반 개체의 순위를 매기는 기법의 일 실시예에서 위치-기반 개체의 순위를 어떻게 매기게 되는지를 보여주는 예시적인 시나리오(400)가 제시된다. 시나리오를 단순화하기 위해, 가능한 가장 낮은 위치 해상도는 우편번호 단위이고, 사용자는 1시간의 시간대 내의 위치-기반 개체의 순위를 매기는 것에 관심이 있다고 가정하자. 실제로, 임의의 이용가능한 위치 측정 단위 및 해상도도 사용가능하며 어떤 시간대도 사용될 수 있다.In FIG. 4, an
도 4에 도시한 것처럼, 사용자(사용자 ID(402)로 나타냄)가 쿼리 "음식점"(404)을 우편번호 "98004"로 식별되는 위치(406)에서 "현지 시각 9시"의 시간(408)에 제출한다. 이런 정보 (404), (406), (408)이 서버(410)에 도달하면, 서버는 과거 시간(오후 8-9시)에 기록되고 관련된 쿼리 문자열이 "음식점"이었던 우편번호 "98004"에 해당하는 모바일 검색 로그(412) 내의 엔트리 전부를 반영하는 실시간 검색 색인들을 이용할 것이다. 만약 사용자가 알려진 프로파일을 갖는다면, 예컨대, "고급 음식점을 좋아하는 사람" 범주에 속한다면, 서버는 필터링 모듈(414)를 사용하여 그 특정 사용자 그룹(416)에 대해 구축된 검색 색인을 사용한다. 모바일 검색 엔트리(418)의 식별된 부분이 주어지면, 순위를 매기는 절차가 순위를 매기는 모듈(420)에 적용되어, 다른 유사한 사용자에 의해 선택된 위치-기반 개체를 순위 매기게 된다. 이 예에서, "Maggiano's"는 3개의 엔트리에 나타나기 때문에 3점의 점수를 얻고 "Subway"는 오직 한 개의 엔트리에 나타나기 때문에 1점의 점수를 얻는다. 위치-기반 개체의 순위를 매기는 것을 수행하는 데 사용된 검색 로그 엔트리의 전체 갯수는 순위 결과의 신뢰성을 평가하는 데 사용할 수 있다(사용된 엔트리의 갯수가 많을수록 그 순위 결과가 더 확실하다). 순위가 매겨진 위치-기반 개체는 그 쿼리를 제출한 사용자의 시간에 따라 변하는 개인적 선호도(422)를 사용하여 필터링/다시 순위매기기 모듈(424)에서 더 필터링된다.이 시나리오에서, 사용자는 쿼리 "음식점"을 제출한 뒤에 이탈리안 및 멕시코 음식점에만 관심이 있는 것으로 보인다(블럭(426)). 결과적으로, "Subway"는 특정 사용자에 대해 관계없는 사업체로서 검색 결과(428)에서 제외된다(또는 그 대신 그 사용자에 대해 낮은 순위가 매겨질 수도 있다). 동일한 사용자라도 다른 시간대 또는 날들에 대하여 복수의 개인적 선호도 테이블이 존재할 수 있음을 주목해야 한다.
As shown in Figure 4, when a user (denoted by user ID 402) is at time 408 of "local time 9 o'clock" at location 406 where query "restaurant" 404 is identified with zip code "98004" . When this
2.0 컴퓨팅 환경 (2.0 Computing Environment ( TheThe ComputingComputing EnvironmentEnvironment ))
위치-기반 개체의 순위를 매기는 기법은 소정의 컴퓨팅 환경에서 동작되도록 설계되었다. 이하의 설명은 위치-기반 개체의 순위를 매기는 기법이 구현될 수 있는 적절한 컴퓨팅 환경의 간단하고 일반적인 설명을 제공하려는 의도이다. 본 기법은 다양한 범용 목적 또는 특수 목적 컴퓨터 시스템 환경 또는 구성에서 동작 가능하다. 잘 알려진 적절한 컴퓨팅 시스템, 환경 및/또는 구성의 예에는 개인용 컴퓨터, 서버 컴퓨터, 핸드-헬드 또는 랩탑 장치(예를 들어, 미디어 플레이어, 노트북 컴퓨터, 셀룰러 폰, 개인정보단말기(personal data assistant), 음성 녹음기), 멀티프로세서 시스템, 마이크로프로세서-기반 시스템, 셋탑 박스, 프로그램가능한 소비자 가전, 네트워크 PC, 미니컴퓨터, 메인프레임 컴퓨터, 전술한 시스템 혹은 장치 중 임의의 것(들)을 포함하는 분산 컴퓨팅 환경 등이 포함되며, 이에 제한되지 않는다.The technique of ranking location-based entities is designed to operate in a given computing environment. The following description is intended to provide a brief, general description of a suitable computing environment in which a ranking-based entity ranking technique may be implemented. The techniques are operable in a variety of general purpose or special purpose computer system environments or configurations. Examples of well known and appropriate computing systems, environments and / or configurations include, but are not limited to, personal computers, server computers, hand-held or laptop devices (e.g., media players, notebook computers, cellular phones, personal data assistants, A distributed computing environment including any one or more of the above systems or devices, etc.), multiprocessor systems, microprocessor-based systems, set top boxes, programmable consumer electronics, network PCs, minicomputers, mainframe computers, , But is not limited thereto.
도 5는 적절한 컴퓨팅 시스템 환경의 예를 도시한다. 컴퓨팅 시스템 환경은단지 적절한 컴퓨팅 환경의 한 예시일 뿐이며 본 기법의 사용 또는 기능성의 범위의 제한을 제시하려고 의도된 것이 아니다. 또한 컴퓨팅 환경은 이 예시적인 동작 환경에 도시된 컴포넌트나 그 조합과 관련된 어떠한 의존성이나 요구사항을 가지는 것으로 해석되어서는 안된다. 도 5를 참조하면, 위치-기반 개체의 순위를 매기는 기법을 구현하는 예시적인 시스템은 컴퓨터 장치(500)와 같은 컴퓨터 장치를 포함한다. 가장 기초적인 구성에서, 컴퓨터 장치(500)는 전형적으로 적어도 하나의 프로세싱 유닛(502)과 메모리(504)를 포함한다. 컴퓨터 장치의 정확한 구성 및 유형에 따라, 메모리(504)는 (RAM과 같은) 휘발성, (ROM이나 플래시 메모리 등과 같은) 비휘발성 또는 이들의 조합일 수 있다. 이 가장 기초적인 구성이 도 5에서 점선(506)에 의해 도시된다. 추가적으로, 장치(500)는 또한 추가적인 특징부/기능부를 가질 수 있다. 예를 들어, 장치(500)는 자기 또는 광학 디스크나 테입과 같은 추가적인 저장장치(이동식 및/또는 고정식)를 포함할 수 있으며, 이에 제한되지 않는다. 이러한 추가적인 저장장치는 도 5에서 이동식 저장장치(508) 및 고정식 저장장치(510)에 의해 도시된다. 컴퓨터 저장장치 매체는 컴퓨터로 판독가능한 명령어, 데이터 구조, 프로그램 모듈이나 다른 데이터와 같은 정보를 저장하는 방법이나 기법이 구현된 휘발성 및 비휘발성, 이동식 및 고정식 매체를 포함한다. 메모리(504), 이동식 저장장치(508) 및 고정식 저장장치(510)는 모두 컴퓨터 저장 매체의 예시이다. 컴퓨터 저장 매체는, RAM, ROM, EEPROM, 플래시 메모리 또는 다른 메모리 기법, CD-ROM, 디지털 다기능 디스크(DVD) 또는 다른 광학 저장장치, 자기 카세트, 자기 테이프, 자기 디스크 저장장치 또는 다른 자기 저장 장치, 또는 원하는 정보를 저장하는 데 사용될 수 있고 장치(500)에 의해 접근가능한 어떠한 다른 매체라도 포함하며, 이에 제한되지 않는다. 컴퓨터로 판독가능한 매체는 일시적인 전파성 신호 및 컴퓨터(로 판독가능한) 저장 매체 모두를 포함한다. 어떤 컴퓨터 저장 매체라도 장치(500)의 한 부분이 될 수 있다.5 illustrates an example of a suitable computing system environment. The computing system environment is merely an example of a suitable computing environment and is not intended to suggest limitations on the scope of use or functionality of the techniques. Also, the computing environment should not be construed as having any dependency or requirement relating to the components or combinations thereof shown in this exemplary operating environment. Referring to FIG. 5, an exemplary system for implementing a technique for ranking a location-based entity includes a computing device, such as
장치(500)은 또한 장치가 다른 장치 또는 네트워크와 통신할 수 있게 하는 통신 접속부(들)(512)을 포함할 수 있다. 통신 접속부(들)(512)은 통신 매체의 예시이다. 통신 매체는 전형적으로 컴퓨터로 판독가능한 명령어, 데이터 구조, 프로그램 모듈 또는 반송파나 다른 전송 메커니즘과 같은 변조된 데이터 신호의 다른 데이터를 구현하며 어떤 정보 전달 매체라도 포함할 수 있다. "변조된 데이터 신호"라는 용어는 하나 이상의 특징(characteristic set)을 가지거나 신호에 정보를 인코딩하는 방식으로 변형된 신호로서, 그 신호를 수신하는 장치의 구성이나 상태를 바꾸는 것을 의미한다. 예시로서, 통신 매체는 유선 네트워크나 직접-유선 접속부와 같은 유선 매체 및 음파, RF, 적외선 또는 다른 무선 매체와 같은 무선 매체를 포함하며, 이에 제한되지 않는다. 본 명세서에서 사용되는 컴퓨터로 판독가능한 매체라는 용어는 저장 매체 및 통신 매체 모두를 포함한다.The
장치(500)는 디스플레이, 키보드, 마우스, 펜, 카메라, 터치 입력 장치 등 다양한 입력 장치(들)(514)를 포함할 수 있다. 디스플레이, 스피커, 프린터 등과 같은 출력 장치(들)(516) 역시 포함될 수 있다. 이들 장치 모두는 업계에 널리 알려져 있으며 본 명세서에서 길게 논의될 필요가 없다.The
위치-기반 개체의 순위를 매기는 기법은, 예컨대 컴퓨터 장치에 의해 실행되는 프로그램 모듈과 같은 컴퓨터로 실행가능한 명령어의 일반적 맥락에서 기술될 수 있다. 일반적으로, 프로그램 모듈은 특정한 과제를 수행하거나 특정한 유형의 추상 데이터는 구현하는 루틴, 프로그램, 객체, 컴포넌트, 데이터 구조 등을 포함한다. 위치-기반 객체의 순위를 매기는 기법은 통신 네트워크를 통해 연결된 원격 프로세싱 장치에 의해 작업이 수행되는 분산 컴퓨팅 환경에서 실시될 수 있다. 분산 컴퓨팅 환경에서, 프로그램 모듈은 메모리 저장 장치를 포함하는 로컬 및 원격 컴퓨터 저장 매체 모두에 위치할 수 있다. 게다가, 전술한 명령어들은 프로세서를 포함하거나 포함하지 않을 수 있는 하드웨어 논리 회로에 의해 일부 또는 전부가 구현될 수 있다.Techniques for ranking location-based entities can be described in the general context of computer-executable instructions, such as, for example, program modules executed by a computer device. Generally, program modules include routines, programs, objects, components, data structures, etc. that perform particular tasks or implement particular types of abstract data. The technique of ranking location-based objects may be implemented in a distributed computing environment where tasks are performed by remote processing devices connected through a communications network. In a distributed computing environment, program modules may be located in both local and remote computer storage media including memory storage devices. In addition, the above-described instructions may be implemented in whole or in part by a hardware logic circuit that may or may not include a processor.
본 명세서에 기술된 전술된 실시예들의 하나 또는 전부는 추가적인 혼성 실시예를 형성하기 위해 원하는 조합으로 사용될 수 있음이 주목되어야 한다. 비록 본 발명이 구조적 특징 및/또는 방법적 동작에 대해 특정되는 언어로 기술되었지만, 첨부된 청구항에 정의된 본 발명은 상술한 특징이나 동작에 반드시 제한되는 것은 아니다. 상술된 특징이나 동작은 청구항을 구현하는 예시적인 형태로서 개시된 것이다.It should be noted that one or all of the above-described embodiments described herein may be used in any desired combination to form additional hybrid embodiments. Although the invention has been described in language specific to structural features and / or methodical acts, the invention as defined in the appended claims is not necessarily limited to the features or acts described above. The above-described features and operations are disclosed as exemplary forms of implementing the claims.
Claims (20)
주어진 유형, 특정 지리적 영역 내에서의 위치 및 현재 시간을 갖는 지리적 위치-기반 개체에 대한 쿼리를 수신하는 단계와,
상기 수신된 쿼리와 동일하거나 유사한 쿼리에 응답하여 상기 수신된 위치 근처의 사용자들에 의해 선택된 상기 수신된 주어진 유형을 갖는 상기 특정 지리적 영역 내의 위치-기반 개체들에 대한 모바일 컴퓨팅 장치의 모바일 검색 로그를, 상기 현재 시간을 포함하는 실시간대에서(in a real time window of time) 상기 수신된 쿼리를 이용하여 검색하는 단계와,
상기 현재 시간을 포함하는 실시간대에서 상기 수신된 쿼리와 동일하거나 유사한 쿼리에 응답하여 각각의 지리적 위치-기반 개체가 상기 모바일 검색 로그로부터 사용자들에 의해 선택된 횟수에 따라 상기 모바일 검색 로그로부터 사용자들에 의해 선택된 상기 특정 지리적 영역 내의 상기 지리적 위치-기반 개체들의 순위를 매기는 단계와,
상기 현재 시간을 포함하는 실시간대에서 사용자들에 의해 가장 빈번하게 선택된 상기 특정 지리적 영역 내의 상기 지리적 위치-기반 개체들의 순위가 매겨진 목록을 사용자에게 출력하는 단계
를 포함하는 컴퓨터로 구현되는 방법.
A computer-implemented method for ranking location-related entities in a particular geographic area in response to a search query,
Receiving a query for a geographic location-based entity having a given type, a location within a particular geographic area, and a current time;
In response to a query that is the same as or similar to the received query, a mobile search log of the mobile computing device for location-based entities in the particular geographic area with the received given type selected by users near the received location Retrieving, using the received query, a real time window of time including the current time;
In response to a query that is the same as or similar to the received query in the real-time band that includes the current time, each geo-location-based entity is allowed to send to the users from the mobile search log according to the number of times selected by the users from the mobile search log Ranking the geographic location-based entities within the specific geographic area selected by the geographic location-based entities;
Outputting to the user a ranked list of the geographical location-based entities within the particular geographical area most frequently selected by users in the real-time band including the current time
≪ / RTI >
상기 위치-기반 개체들의 순위가 매겨진 목록을 출력하기 전에, 상기 쿼리를 입력한 사용자의 시간 의존적인 사용자 선호도(time-dependent user preference)에 기초하여, 상기 위치-기반 개체들의 순위가 매겨진 목록에 대해 다시 순위를 매기는 단계를 더 포함하는
컴퓨터로 구현되는 방법.
The method according to claim 1,
Based on the time-dependent user preference of the user who entered the query, before outputting a ranked list of the location-based entities, Further comprising the step of re-ranking
A computer implemented method.
상기 사용자 선호도는 상기 사용자의 위치에 따라 변하는
컴퓨터로 구현되는 방법.
3. The method of claim 2,
The user preference may vary depending on the location of the user
A computer implemented method.
시간, 위치, 쿼리 및 쿼리 결과별로 사용자들을 그룹화하는 것에 의해 시간 의존적인 그룹 멤버쉽들(time-dependent group memberships)을 결정하는 단계를 더 포함하는
컴퓨터로 구현되는 방법.
The method according to claim 1,
Determining time-dependent group memberships by grouping users by time, location, query, and query result
A computer implemented method.
상기 모바일 검색 로그를 검색하기 이전에, 시간 의존적인 그룹 멤버쉽 선호도에 기초하여 상기 모바일 검색 로그를 필터링하는 단계를 더 포함하는
컴퓨터로 구현되는 방법.
5. The method of claim 4,
Further comprising filtering the mobile search log based on time-dependent group membership preferences prior to retrieving the mobile search log
A computer implemented method.
사용자가 속하는 그룹들은 상이한 시구간들 및 위치에 따라 변할 수 있는
컴퓨터로 구현되는 방법.
6. The method of claim 5,
The groups to which the user belongs can be varied according to different time periods and locations
A computer implemented method.
상기 실시간대는 상기 쿼리가 입력된 시간에 기초하여 선택되는
컴퓨터로 구현되는 방법.
The method according to claim 1,
The real time zone is selected based on the time at which the query was entered
A computer implemented method.
상기 실시간대 동안 순위가 매겨진 목록을 생성할 만큼 모바일 검색 로그 데이터가 존재하지 않는 경우, 상기 현재 시간과 연관된 상기 실시간대는 이전 날의 상기 입력된 시간과 동일한 시구간 내에 있도록 선택되는
컴퓨터로 구현되는 방법.
8. The method of claim 7,
If the mobile search log data does not exist to generate the ranked list in real time, the real time zone associated with the current time is selected to be within the same time zone as the input time of the previous day
A computer implemented method.
상기 지리적 위치-기반 개체들의 순위를 매기는 단계는 실시간으로 일어나는
컴퓨터로 구현되는 방법.
The method according to claim 1,
The step of ranking the geographical location-based entities comprises:
A computer implemented method.
현재 시간 및 특정 지리적 영역 내의 지리적 위치에서 위치-기반 개체 유형에 대한 쿼리를 수신하는 단계와,
상기 수신된 쿼리와 연관되고, 또한 쿼리 볼륨에 기초하여 결정되며 상기 현재 시간에 인접한 시간대에 국한된 모바일 컴퓨팅 장치의 모바일 검색 로그를 수신하는 단계와,
상기 현재 시간에 인접한 시간대에서 상기 수신된 쿼리와 동일하거나 유사한 쿼리에 응답하여 입력 위치 근처에서 사용자들에 의해 상기 모바일 검색 로그로부터 선택된 상기 수신된 위치-기반 개체 유형을 갖는 상기 특정 지리적 영역 내의 위치-기반 개체들에 대한 상기 모바일 검색 로그를, 상기 현재 시간에 인접한 시간대에서 상기 수신된 쿼리를 이용하여 검색하는 단계와,
상기 현재 시간에 인접한 시간대에서 각각의 위치-기반 개체 유형이 상기 수신된 모바일 검색 로그로부터 사용자들에 의해 선택된 횟수에 따라 사용자들에 의해 선택된 상기 특정 지리적 영역 내의 상기 위치-기반 개체들의 순위를 매기는 단계와,
상기 현재 시간에 인접한 시간대에서 사용자들에 의해 가장 빈번하게 선택된 상기 특정 지리적 영역 내의 상기 위치-기반 개체들의 순위가 매겨진 목록을 출력하는 단계
를 포함하는 컴퓨터로 구현되는 방법.
A computer-implemented method for ranking location-based entities,
Receiving a query for a location-based entity type at a current time and a geographic location within a particular geographic area,
Receiving a mobile search log of a mobile computing device associated with the received query and also based on a query volume and localized to a time zone adjacent to the current time;
A location within the particular geographic area having the received location-based entity type selected from the mobile search log by users near the input location in response to a query the same or similar to the received query at a time zone adjacent to the current time, Retrieving the mobile search log for base entities using the received query at a time zone adjacent to the current time;
Wherein each location-based entity type in the time zone adjacent to the current time ranks the location-based entities in the particular geographic area selected by users according to the number of times selected by the users from the received mobile search log Step,
Outputting a ranked list of said location-based entities in said particular geographic area most frequently selected by users in the time zone adjacent to said current time
≪ / RTI >
상기 쿼리를 입력한 사용자의 시간 의존적인 사용자 선호도에 기초하여, 상기 위치-기반 개체들의 순위가 매겨진 목록에 대해 다시 순위를 매기는 단계를 더 포함하는
컴퓨터로 구현되는 방법.
11. The method of claim 10,
Further comprising ranking the ranked list of the location-based entities based on a time-dependent user preference of the user who entered the query
A computer implemented method.
상기 모바일 검색 로그를 검색하기 이전에, 쿼리를 입력한 상기 사용자가 속하는 그룹의 시간 및 위치 의존적인 그룹 선호도에 기초하여 상기 모바일 검색 로그를 필터링하는 단계를 더 포함하는
컴퓨터로 구현되는 방법.
11. The method of claim 10,
Further comprising filtering the mobile search log based on time and location-dependent group preferences of the group to which the user who entered the query belongs before searching the mobile search log
A computer implemented method.
상기 쿼리를 입력한 사용자가 상기 순위가 매겨진 목록으로부터 위치-기반 개체를 선택하는 단계와,
상기 쿼리에 응답하여 상기 사용자가 상기 선택되는 위치-기반 개체를 선택하였음을 보여주기 위해 상기 모바일 검색 로그를 업데이트하는 단계
를 더 포함하는 컴퓨터로 구현되는 방법.
11. The method of claim 10,
Selecting a location-based entity from the ranked list by a user entering the query;
Updating the mobile search log to show that the user has selected the selected location-based entity in response to the query
Lt; RTI ID = 0.0 > 1, < / RTI >
상기 쿼리를 입력한 사용자가 상기 순위가 매겨진 상기 위치-기반 개체들의 목록으로부터 위치-기반 개체를 선택하는 단계와,
상기 사용자에 의해 선택된 상기 위치-기반 개체를 반영하기 위해 상기 사용자의 시간 의존적인 사용자 선호도를 업데이트하는 단계
를 더 포함하는 컴퓨터로 구현되는 방법.11. The method of claim 10,
Selecting a location-based entity from the ranked list of ranked location-based entities by the user who entered the query;
Updating the user's time-dependent user affinity to reflect the location-based entity selected by the user
Lt; RTI ID = 0.0 > 1, < / RTI >
상기 업데이트된 시간 의존적인 사용자 선호도는
상기 사용자가 보통 방문하는 위치,
상기 사용자가 방문하는 위치의 유형, 및
상기 사용자가 소정의 위치를 방문하기 위해 이동할 용의가 있는 거리
를 포함하는 방법.
15. The method of claim 14,
The updated time-dependent user preference
A location that the user normally visits,
The type of location the user visits, and
A distance at which the user is allowed to move to visit a predetermined position
≪ / RTI >
컴퓨팅 장치와,
상기 컴퓨팅 장치에 의해 실행가능한 프로그램 모듈을 포함하는 컴퓨터 프로그램을 포함하되,
상기 컴퓨팅 장치는 상기 컴퓨터 프로그램의 프로그램 모듈에 의해,
현재 시간에서 특정 지리적 영역 내의 주어진 위치에서 지리적 위치-기반 개체의 유형에 대해 모바일 컴퓨팅 장치의 모바일 검색 로그를 검색하기 위한 쿼리를 수신하는 동작과,
상기 쿼리를 입력한 사용자의 그룹 멤버쉽에 기초하여 상기 모바일 검색 로그를 필터링하는 동작과,
상기 현재 시간에 인접한 시간대에서 상기 수신된 쿼리와 동일하거나 유사한 쿼리에 응답하여 입력 위치 근처에서 사용자들에 의해 상기 필터링된 모바일 검색 로그로부터 선택된 상기 주어진 위치에서의 지리적 위치-기반 개체의 상기 유형에 대해 상기 필터링된 모바일 검색 로그를 검색하는 동작과,
입력 쿼리와 동일하거나 유사한 쿼리에 응답하여 상기 현재 시간에 인접한 시간대에서 각각의 지리적 위치-기반 개체가 상기 필터링된 모바일 검색 로그로부터 선택된 횟수에 따라 상기 지리적 영역 내의 상기 각각의 지리적 위치-기반 개체들의 순위를 매기는 동작과,
상기 현재 시간을 포함하는 시간대에서 사용자들에 의해 가장 빈번하게 선택된 상기 지리적 영역 내의 지리적 위치-기반 개체들의 순위가 매겨진 목록을 출력하는 동작을 수행하도록 지시를 받는,
주어진 시간에서 주어진 위치 주변의 인기 있는 위치-기반 개체를 결정하는 시스템.A system for determining a popular location-based entity around a given location at a given time,
A computing device,
A computer program comprising a program module executable by the computing device,
The computing device may be programmed by a program module of the computer program,
Receiving a query for retrieving a mobile search log of a mobile computing device for a type of geographical location-based entity at a given location within a particular geographical area at a current time;
Filtering the mobile search log based on a group membership of a user who has entered the query;
For the type of geographic location-based entity at the given location selected from the filtered mobile search log by users near the input location in response to a query that is the same as or similar to the received query at a time zone adjacent to the current time Retrieving the filtered mobile search log;
Based on the number of times selected from the filtered mobile search log in a time zone adjacent to the current time in response to a query that is the same as or similar to the input query, And
Receiving, by the user, a ranked list of geo-location-based entities in the geo-area most frequently selected by users in a time zone including the current time,
A system for determining a popular location-based entity around a given location at a given time.
하루 중 시간에 따라 변하는 상기 쿼리를 입력한 사용자의 선호도에 따라 상기 순위가 매겨진 목록에 대해 다시 순위를 매기는 모듈을 더 포함하는
주어진 시간에서 주어진 위치 주변의 인기 있는 위치-기반 개체를 결정하는 시스템.17. The method of claim 16,
Further comprising a module for re-ranking the ranked list according to a preference of a user who entered the query that varies with time during the day
A system for determining a popular location-based entity around a given location at a given time.
하루 중 시간에 따라 변하는 그룹 선호도에 기초하여 상기 순위가 매겨진 목록에 대해 다시 순위를 매기는 모듈을 더 포함하는
주어진 시간에서 주어진 위치 주변의 인기 있는 위치-기반 개체를 결정하는 시스템.17. The method of claim 16,
Further comprising a module for re-ranking the ranked list based on time-of-day time-varying group preferences
A system for determining a popular location-based entity around a given location at a given time.
전화 로그 데이터를 포함하는 상기 모바일 검색 로그 데이터를 증가시키기 위해 추가의 데이터 소스를 사용하는 모듈을 더 포함하는
주어진 시간에서 주어진 위치 주변의 인기 있는 위치-기반 개체를 결정하는 시스템.17. The method of claim 16,
Further comprising a module for using an additional data source to increase said mobile search log data comprising telephone log data
A system for determining a popular location-based entity around a given location at a given time.
소셜 네트워크 데이터를 포함하는 상기 모바일 검색 로그 데이터를 증가시키기 위해 추가의 데이터 소스를 사용하는 모듈을 더 포함하는
주어진 시간에서 주어진 위치 주변의 인기 있는 위치-기반 개체를 결정하는 시스템.17. The method of claim 16,
Further comprising a module that uses an additional data source to increase the mobile search log data comprising social network data
A system for determining a popular location-based entity around a given location at a given time.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/958,320 | 2010-12-01 | ||
US12/958,320 US9152726B2 (en) | 2010-12-01 | 2010-12-01 | Real-time personalized recommendation of location-related entities |
PCT/US2011/062872 WO2012075273A2 (en) | 2010-12-01 | 2011-12-01 | Real-time personalized recommendation of location-related entities |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20130130731A KR20130130731A (en) | 2013-12-02 |
KR101810279B1 true KR101810279B1 (en) | 2018-01-18 |
Family
ID=46163211
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020137014146A KR101810279B1 (en) | 2010-12-01 | 2011-12-01 | Real-time personalized recommendation of location-related entities |
Country Status (6)
Country | Link |
---|---|
US (1) | US9152726B2 (en) |
EP (1) | EP2646973A4 (en) |
KR (1) | KR101810279B1 (en) |
CN (1) | CN102591911B (en) |
HK (1) | HK1171541A1 (en) |
WO (1) | WO2012075273A2 (en) |
Families Citing this family (70)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008043082A2 (en) * | 2006-10-05 | 2008-04-10 | Splunk Inc. | Time series search engine |
US8838621B1 (en) * | 2011-03-01 | 2014-09-16 | Google Inc. | Location query processing |
WO2012121950A1 (en) * | 2011-03-04 | 2012-09-13 | Walker Tristan | System and method for managing and redeeming offers with a location-based service |
US9015152B1 (en) * | 2011-06-01 | 2015-04-21 | Google Inc. | Managing search results |
US9026516B1 (en) * | 2011-08-09 | 2015-05-05 | Google Inc. | Interest-based keywords for prominent entity and by location |
US8713004B1 (en) * | 2011-08-26 | 2014-04-29 | Google Inc. | Method and system for prioritizing points of interest for display in a map using category score |
US10546306B2 (en) | 2011-09-07 | 2020-01-28 | Elwha Llc | Computational systems and methods for regulating information flow during interactions |
US9690853B2 (en) | 2011-09-07 | 2017-06-27 | Elwha Llc | Computational systems and methods for regulating information flow during interactions |
US10523618B2 (en) | 2011-09-07 | 2019-12-31 | Elwha Llc | Computational systems and methods for identifying a communications partner |
US9432190B2 (en) | 2011-09-07 | 2016-08-30 | Elwha Llc | Computational systems and methods for double-encrypting data for subsequent anonymous storage |
US9167099B2 (en) | 2011-09-07 | 2015-10-20 | Elwha Llc | Computational systems and methods for identifying a communications partner |
US9159055B2 (en) | 2011-09-07 | 2015-10-13 | Elwha Llc | Computational systems and methods for identifying a communications partner |
US10606989B2 (en) | 2011-09-07 | 2020-03-31 | Elwha Llc | Computational systems and methods for verifying personal information during transactions |
US9491146B2 (en) | 2011-09-07 | 2016-11-08 | Elwha Llc | Computational systems and methods for encrypting data for anonymous storage |
US10546295B2 (en) | 2011-09-07 | 2020-01-28 | Elwha Llc | Computational systems and methods for regulating information flow during interactions |
US9195848B2 (en) | 2011-09-07 | 2015-11-24 | Elwha, Llc | Computational systems and methods for anonymized storage of double-encrypted data |
US9141977B2 (en) * | 2011-09-07 | 2015-09-22 | Elwha Llc | Computational systems and methods for disambiguating search terms corresponding to network members |
US9928485B2 (en) | 2011-09-07 | 2018-03-27 | Elwha Llc | Computational systems and methods for regulating information flow during interactions |
US9747561B2 (en) | 2011-09-07 | 2017-08-29 | Elwha Llc | Computational systems and methods for linking users of devices |
US9043260B2 (en) | 2012-03-16 | 2015-05-26 | Nokia Technologies Oy | Method and apparatus for contextual content suggestion |
WO2013192586A2 (en) * | 2012-06-22 | 2013-12-27 | Google Inc. | Inferring user interests |
KR101979401B1 (en) | 2012-06-22 | 2019-05-16 | 구글 엘엘씨 | Ranking nearby destinations based on visit likelihoods and predicting future visits to places from location history |
US10977312B2 (en) | 2012-09-21 | 2021-04-13 | Google Llc | Apparatus and method for inferring an origin |
CN103838726B (en) * | 2012-11-20 | 2017-10-27 | 百度在线网络技术(北京)有限公司 | Menu based on map recommends method, system and GIS server |
US9111011B2 (en) | 2012-12-10 | 2015-08-18 | Google Inc. | Local query suggestions |
WO2014100605A1 (en) | 2012-12-21 | 2014-06-26 | Highspot, Inc. | Interest graph-powered search |
US10204170B2 (en) | 2012-12-21 | 2019-02-12 | Highspot, Inc. | News feed |
US9727618B2 (en) | 2012-12-21 | 2017-08-08 | Highspot, Inc. | Interest graph-powered feed |
CN103902604B (en) * | 2012-12-28 | 2020-11-10 | Ge医疗系统环球技术有限公司 | Method and apparatus for searching and displaying scatter log |
US9936341B1 (en) | 2013-02-15 | 2018-04-03 | United Parcel Service Of America, Inc. | Geographic representations of geographic areas |
US10055418B2 (en) | 2014-03-14 | 2018-08-21 | Highspot, Inc. | Narrowing information search results for presentation to a user |
US10346357B2 (en) | 2013-04-30 | 2019-07-09 | Splunk Inc. | Processing of performance data and structure data from an information technology environment |
US10997191B2 (en) | 2013-04-30 | 2021-05-04 | Splunk Inc. | Query-triggered processing of performance data and log data from an information technology environment |
US10353957B2 (en) | 2013-04-30 | 2019-07-16 | Splunk Inc. | Processing of performance data and raw log data from an information technology environment |
US10614132B2 (en) | 2013-04-30 | 2020-04-07 | Splunk Inc. | GUI-triggered processing of performance data and log data from an information technology environment |
US10019496B2 (en) | 2013-04-30 | 2018-07-10 | Splunk Inc. | Processing of performance data and log data from an information technology environment by using diverse data stores |
US10225136B2 (en) | 2013-04-30 | 2019-03-05 | Splunk Inc. | Processing of log data and performance data obtained via an application programming interface (API) |
US10318541B2 (en) | 2013-04-30 | 2019-06-11 | Splunk Inc. | Correlating log data with performance measurements having a specified relationship to a threshold value |
US20150032543A1 (en) * | 2013-07-25 | 2015-01-29 | Mastercard International Incorporated | Systems and methods for recommending merchants |
US9805057B2 (en) * | 2013-10-15 | 2017-10-31 | Google Inc. | Automatic generation of geographic imagery tours |
US9558242B2 (en) * | 2013-10-15 | 2017-01-31 | Google Inc. | Social where next suggestion |
US9262541B2 (en) | 2013-10-18 | 2016-02-16 | Google Inc. | Distance based search ranking demotion |
US9710434B2 (en) | 2013-12-10 | 2017-07-18 | Highspot, Inc. | Skim preview |
US9618343B2 (en) | 2013-12-12 | 2017-04-11 | Microsoft Technology Licensing, Llc | Predicted travel intent |
CN103631954B (en) * | 2013-12-13 | 2016-08-31 | 百度在线网络技术(北京)有限公司 | Personalized recommendation method and device |
US20150269152A1 (en) * | 2014-03-18 | 2015-09-24 | Microsoft Technology Licensing, Llc | Recommendation ranking based on locational relevance |
KR102216049B1 (en) * | 2014-04-21 | 2021-02-15 | 삼성전자주식회사 | System and method for semantic labeling |
US10303725B2 (en) * | 2014-05-01 | 2019-05-28 | Airbnb, Inc. | Re-ranking search results for location refining and diversity |
US10474671B2 (en) | 2014-05-12 | 2019-11-12 | Google Llc | Interpreting user queries based on nearby locations |
EP3143516A1 (en) * | 2014-05-12 | 2017-03-22 | Google, Inc. | Disambiguation of queries implicit to multiple entities |
CN104063457A (en) * | 2014-06-25 | 2014-09-24 | 北京智谷睿拓技术服务有限公司 | Information communication method, system and terminal |
US10089326B2 (en) * | 2014-07-16 | 2018-10-02 | Google Llc | Generating textual summary about physical location based on computing interactions pertaining to physical location |
WO2016028696A1 (en) * | 2014-08-20 | 2016-02-25 | Google Inc. | Interpreting user queries based on nearby locations |
CN106537381B (en) | 2014-08-20 | 2019-08-20 | 谷歌有限责任公司 | User query are explained based on device orient |
US20160063410A1 (en) * | 2014-08-28 | 2016-03-03 | Google Inc. | Systems and Methods for Task Assistance by Correlating Task Terms with Specific Entities |
US20160132903A1 (en) * | 2014-11-11 | 2016-05-12 | Tata Consultancy Services Limited | Identifying an industry specific e-maven |
KR101620779B1 (en) * | 2015-01-08 | 2016-05-17 | 네이버 주식회사 | Method and system for providing retargeting search services |
US9984310B2 (en) * | 2015-01-23 | 2018-05-29 | Highspot, Inc. | Systems and methods for identifying semantically and visually related content |
EP3062279A1 (en) | 2015-02-27 | 2016-08-31 | BBVA Data & Analytics, S.L.U. | Method and system for generation of parameters |
US10503764B2 (en) * | 2015-06-01 | 2019-12-10 | Oath Inc. | Location-awareness search assistance system and method |
CN105760466A (en) * | 2016-02-05 | 2016-07-13 | 廖炜恒 | Social platform data reading method, device and system |
CN106331145A (en) * | 2016-09-05 | 2017-01-11 | 努比亚技术有限公司 | Information recommendation method, device and system |
US10289625B2 (en) | 2016-09-15 | 2019-05-14 | Google Llc | Providing context facts |
CN108509467B (en) * | 2017-05-04 | 2021-11-26 | 宁波数联软件有限公司 | User behavior log-based maritime quotation recommendation system and method |
CN108256070B (en) * | 2018-01-17 | 2022-07-15 | 北京百度网讯科技有限公司 | Method and apparatus for generating information |
US11651151B2 (en) | 2018-12-03 | 2023-05-16 | Chaz Tanase | Automated multi-source website hybridization using streaming data |
CN110032696A (en) * | 2019-04-15 | 2019-07-19 | 拉扎斯网络科技(上海)有限公司 | Methods of exhibiting, device, electronic equipment and computer readable storage medium |
CN110058944A (en) * | 2019-04-15 | 2019-07-26 | 拉扎斯网络科技(上海)有限公司 | Data processing method, device, electronic equipment and computer readable storage medium |
CN111080339B (en) * | 2019-11-18 | 2024-01-30 | 口口相传(北京)网络技术有限公司 | Scene-based category preference data generation method and device |
CN112667895A (en) * | 2020-12-28 | 2021-04-16 | 百果园技术(新加坡)有限公司 | Method, device and equipment for determining recommended item queue and storage medium |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030200192A1 (en) | 2002-04-18 | 2003-10-23 | Bell Brian L. | Method of organizing information into topical, temporal, and location associations for organizing, selecting, and distributing information |
US20080256444A1 (en) | 2007-04-13 | 2008-10-16 | Microsoft Corporation | Internet Visualization System and Related User Interfaces |
US20100174703A1 (en) | 2009-01-07 | 2010-07-08 | Microsoft Corporation | Relevance improvements for implicit local queries |
Family Cites Families (23)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6493702B1 (en) | 1999-05-05 | 2002-12-10 | Xerox Corporation | System and method for searching and recommending documents in a collection using share bookmarks |
US7089237B2 (en) | 2001-01-26 | 2006-08-08 | Google, Inc. | Interface and system for providing persistent contextual relevance for commerce activities in a networked environment |
US7599911B2 (en) | 2002-08-05 | 2009-10-06 | Yahoo! Inc. | Method and apparatus for search ranking using human input and automated ranking |
US20040260680A1 (en) * | 2003-06-19 | 2004-12-23 | International Business Machines Corporation | Personalized indexing and searching for information in a distributed data processing system |
US7606798B2 (en) | 2003-09-22 | 2009-10-20 | Google Inc. | Methods and systems for improving a search ranking using location awareness |
US7257570B2 (en) | 2003-11-13 | 2007-08-14 | Yahoo! Inc. | Geographical location extraction |
US20050149399A1 (en) * | 2003-12-18 | 2005-07-07 | Fuji Photo Film Co., Ltd. | Service server and service method |
US20060129533A1 (en) | 2004-12-15 | 2006-06-15 | Xerox Corporation | Personalized web search method |
US8688671B2 (en) * | 2005-09-14 | 2014-04-01 | Millennial Media | Managing sponsored content based on geographic region |
US7747598B2 (en) | 2006-01-27 | 2010-06-29 | Google Inc. | Geographic coding for location search queries |
CN101025737B (en) | 2006-02-22 | 2011-08-17 | 王东 | Attention degree based same source information search engine aggregation display method |
US7984049B2 (en) | 2006-10-18 | 2011-07-19 | Google Inc. | Generic online ranking system and method suitable for syndication |
US8244585B1 (en) * | 2007-02-14 | 2012-08-14 | SuperMedia LLC | Optimized bidding for pay-per-click listings |
US20080222119A1 (en) | 2007-03-08 | 2008-09-11 | Microsoft Corporation | Detecting a user's location, local intent and travel intent from search queries |
US8195655B2 (en) | 2007-06-05 | 2012-06-05 | Microsoft Corporation | Finding related entity results for search queries |
US7945566B2 (en) * | 2007-08-10 | 2011-05-17 | Sap Ag | System and method of information filtering |
WO2009086194A2 (en) * | 2007-12-19 | 2009-07-09 | Nevins David C | Apparatus, system, and method for organizing information by time and place |
JP2009282690A (en) * | 2008-05-21 | 2009-12-03 | Toshiba Corp | Information search method and information processing apparatus |
US20100057772A1 (en) * | 2008-08-29 | 2010-03-04 | Microsoft Corporation | Automatic determination of an entity's searchable social network using role-based inferences |
US20110082880A1 (en) * | 2009-10-07 | 2011-04-07 | Verizon Patent And Licensing, Inc. | System for and method of searching content |
US8538973B1 (en) * | 2010-04-05 | 2013-09-17 | Google Inc. | Directions-based ranking of places returned by local search queries |
US8489625B2 (en) * | 2010-11-29 | 2013-07-16 | Microsoft Corporation | Mobile query suggestions with time-location awareness |
US20130046609A1 (en) * | 2011-08-19 | 2013-02-21 | Bank Of America Corporation | User-driven reverse auctions systems and methods |
-
2010
- 2010-12-01 US US12/958,320 patent/US9152726B2/en active Active
-
2011
- 2011-11-30 CN CN201110409922.4A patent/CN102591911B/en active Active
- 2011-12-01 KR KR1020137014146A patent/KR101810279B1/en active IP Right Grant
- 2011-12-01 EP EP11845372.9A patent/EP2646973A4/en not_active Ceased
- 2011-12-01 WO PCT/US2011/062872 patent/WO2012075273A2/en active Application Filing
-
2012
- 2012-11-28 HK HK12112276.6A patent/HK1171541A1/en unknown
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030200192A1 (en) | 2002-04-18 | 2003-10-23 | Bell Brian L. | Method of organizing information into topical, temporal, and location associations for organizing, selecting, and distributing information |
US20080256444A1 (en) | 2007-04-13 | 2008-10-16 | Microsoft Corporation | Internet Visualization System and Related User Interfaces |
US20100174703A1 (en) | 2009-01-07 | 2010-07-08 | Microsoft Corporation | Relevance improvements for implicit local queries |
Non-Patent Citations (1)
Title |
---|
"Detecting dominant locations from search queries", PROCEEDINGS OF THE 28TH ANNUAL INTERNATIONAL ACM SIGIR CONFERENCE, 2005. |
Also Published As
Publication number | Publication date |
---|---|
CN102591911B (en) | 2016-01-06 |
CN102591911A (en) | 2012-07-18 |
EP2646973A2 (en) | 2013-10-09 |
EP2646973A4 (en) | 2016-06-29 |
WO2012075273A3 (en) | 2012-08-02 |
HK1171541A1 (en) | 2013-03-28 |
KR20130130731A (en) | 2013-12-02 |
US20120143859A1 (en) | 2012-06-07 |
US9152726B2 (en) | 2015-10-06 |
WO2012075273A2 (en) | 2012-06-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101810279B1 (en) | Real-time personalized recommendation of location-related entities | |
US11727071B1 (en) | Selecting, ranking, and/or presenting microsite content | |
CN110476176B (en) | User objective assistance techniques | |
JP6450398B2 (en) | Power management for mobile clients using location-based services | |
US9183504B2 (en) | System and method for providing recommendations with a location-based service | |
US8886584B1 (en) | Recommendation of media content items based on geolocation and venue | |
US20130097246A1 (en) | Multilocal implicit social networking | |
Zeng et al. | A restaurant recommender system based on user preference and location in mobile environment | |
US8370062B1 (en) | Switching between location contexts | |
US9275154B2 (en) | Context-sensitive point of interest retrieval | |
US9749274B1 (en) | Associating an event attribute with a user based on a group of one or more electronic messages associated with the user | |
US20140089296A1 (en) | Methods and Systems of Aggregating Information of Social Networks Based on Changing Geographical Locations of a Computing Device Via a Network | |
US11049199B2 (en) | Contextual trip itinerary generator | |
US11490220B2 (en) | System and method for accurately and efficiently generating ambient point-of-interest recommendations | |
US20130073422A1 (en) | System and method for providing recommendations with a location-based service | |
WO2013134451A1 (en) | Methods and systems of aggregating information of social networks based on changing geographical locations of a computing device via a network | |
US20140089343A1 (en) | Methods and Systems for Monitoring and Controlling Social Network Communications Over a Network at a Secure Location | |
US9418076B2 (en) | System and method for determining interests from location data | |
EP3369007A1 (en) | Semantic location layer for user-related activity | |
US20200389757A1 (en) | Targeted content delivery | |
Waga et al. | Context aware recommendation of location-based data | |
US10506383B2 (en) | Location prediction using wireless signals on online social networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
N231 | Notification of change of applicant | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |