Systems and methods for obtaining customized search results by way of user-specific search indices
AssigneeRovi Guides, Inc.
InventorsBenjamin H. Maughan, Paul Stathacopoulos
Life of this patent
Estimating the term…
Abstract
Systems and methods are described herein for efficiently providing personalized search results to a user. Personalized search allows a user to receive search results that are most relevant to that user. For example, when a user with a strong interest in rap searches for “50 cent” they may be presented with top search results corresponding to 50 Cent's rap albums. Conversely, when a coin collector searches for “50 cent” they may be presented with top search results containing antique coins.
Claims20
A method for providing search results to a user, the method comprising:
- receiving a user input comprising a symbol;
- retrieving a user profile associated with the user;
- identifying a database profile of a plurality of database profiles that, with respect to each database profile of the plurality of database profiles, best matches data of the user profile, wherein the database profile identifies a first index and a second index;
- in response to identifying the database profile, searching for data corresponding to the first index that matches the symbol while refraining from searching data corresponding to the second index;
- when search results are found based on the searching for data corresponding to the first index:
- providing the search results to the user;
- and
- associating a first entry of the first index that yielded a search result of the search results with a timestamp;
- subsequent to searching for data corresponding to the first index that matches the symbol, searching for data corresponding to the second index that matches the symbol;
- periodically comparing the timestamp against a threshold timestamp;
- and
- in response to determining, based on the comparing, that the timestamp is older than the threshold timestamp:
- updating the second index to include a second entry matching the first entry;
- and
- deleting the first entry from the first index.
A system for providing search results to a user, the system comprising:
- user input circuitry;
- communications circuitry;
- and
- control circuitry configured to:
- receive, using the user input circuitry, a user input comprising a symbol;
- retrieve, using the communications circuitry, a user profile associated with the user;
- identify a database profile of a plurality of database profiles that, with respect to each database profile of the plurality of database profiles, best matches data of the user profile, wherein the database profile identifies a first index and a second index;
- in response to identifying the database profile, search for data corresponding to the first index that matches the symbol while refraining from searching data corresponding to the second index;
- when search results are found based on the search for data corresponding to the first index:
- provide the search results to the user;
- and
- associate a first entry of the first index that yielded a search result of the search results with a timestamp;
- subsequent to searching for data corresponding to the first index that matches the symbol, search for data corresponding to the second index that matches the symbol;
- periodically compare the timestamp against a threshold timestamp;
- and
- in response to determining, based on the comparing, that the timestamp is older than the threshold timestamp:
- update the second index to include a second entry matching the first entry;
- and
- delete the first entry from the first index.
A method for providing search results to a user, the method comprising:
- receiving a user input comprising a symbol;
- retrieving a user profile associated with the user;
- identifying a database profile of a plurality of database profiles that, with respect to each database profile of the plurality of database profiles, best matches data of the user profile, wherein the database profile identifies a first index and a second index;
- in response to identifying the database profile, searching for data corresponding to the first index that matches the symbol while refraining from searching data corresponding to the second index;
- when search results are found based on the searching for data corresponding to the first index, providing the search results to the user;
- subsequent to searching for data corresponding to the first index that matches the symbol, searching for data corresponding to the second index that matches the symbol;
- comparing attributes associated with data that has not yet been placed in the first index or the second index to attributes associated with the database profile, and
- in response to determining that the attributes associated with the data match the attributes associated with the database profile by at least a first threshold value:
- updating the first index to contain the data;
- and
- in response to determining that the attributes associated with the data match the attributes associated with the database profile by at least a second threshold value, wherein the second threshold value is less than the first threshold value:
- updating the second index to contain the data.
A system for providing search results to a user, the system comprising:
- user input circuitry;
- communications circuitry;
- and
- control circuitry configured to:
- receive, using the user input circuitry, a user input comprising a symbol;
- retrieve, using the communications circuitry, a user profile associated with the user;
- identify a database profile of a plurality of database profiles that, with respect to each database profile of the plurality of database profiles, best matches data of the user profile, wherein the database profile identifies a first index and a second index;
- in response to identifying the database profile, search for data corresponding to the first index that matches the symbol while refraining from searching data corresponding to the second index;
- when search results are found based on the search for data corresponding to the first index, provide the search results to the user;
- subsequent to searching for data corresponding to the first index that matches the symbol, search for data corresponding to the second index that matches the symbol;
- compare attributes associated with data that has not yet been placed in the first index or the second index to attributes associated with the database profile, and
- in response to determining that the attributes associated with the data match the attributes associated with the database profile by at least a first threshold value:
- update the first index to contain the data;
- and
- in response to determining that the attributes associated with the data match the attributes associated with the database profile by at least a second threshold value, wherein the second threshold value is less than the first threshold value:
- update the second index to contain the data.
Dependencies are inferred from the claim text.