Patent application number | Description | Published |
20090327256 | GRAMMAR COMPRESSION - Compression of extensive, rule-based grammars used to facilitate search queries is provided herein. Rule-based grammars includes a list of rules that each comprise a sequence of token classes. Each token class is a logical grouping of tokens, and each token is a string of characters. A grammar is parsed to identify rules and token classes. Unimportant token classes are identified and sets of unimportant token classes are merged to generated merged token classes. A compressed grammar is generated by substituting the merged token classes into the grammar for corresponding unimportant token classes used to generate the merged token classes. | 12-31-2009 |
20090327269 | PATTERN GENERATION - Generation of patterns used to facilitate search queries is provided herein. A pattern includes a sequence of token classes and new token classes. A sample query is parsed to identify tokens within the sample query that match a token associated with a referenced set of token classes. New token classes are generated for unidentified tokens within the sample query. A pattern is generated by substituting the identified tokens of the sample query with corresponding token classes and substituting the unidentified tokens of the sample query with corresponding new token classes. | 12-31-2009 |
20100082657 | GENERATING SYNONYMS BASED ON QUERY LOG DATA - An approach is described for generating synonyms to supplement at least one information item, such as, in one case, a set of related items. The approach can involve an expansion phase, a clean-up phase, and a reduction phase. In the expansion phase, the approach identifies, for each related item, a set of initial synonym candidates. In the clean-up phase, the approach removes noise from the set of initial synonym candidates (if such noise exists), to provide a set of filtered synonym candidate items. In the reduction phase, the approach ranks and applies a threshold (or thresholds) to the set of filtered synonym candidate items, to generate, for each information item, a set of selected synonyms. The approach uses query log data as at various points in its operation. The selected synonyms can be used to improve the effectiveness of user searches. | 04-01-2010 |
20100241647 | Context-Aware Query Recommendations - Described is a search-related technology in which context information regarding a user's prior search actions is used in making query recommendations for a current user action, such as a query or click. To determine whether each set or subset of context information is relevant to the user action, data obtained from a query log is evaluated. More particularly, a query transition (query-query) graph and a query click (query-URL) graph are extracted from the query log; vectors are computed for the current action and each context/sub-context and evaluated against vectors in the graphs to determine current action-to-context similarity. Also described is using similar context to provide the query recommendations, using parameters to control the similarity strictness, and/or whether more recent context information is more relevant than less recent context information, and using context information to distinguish between user sessions. | 09-23-2010 |
20100306214 | IDENTIFYING MODIFIERS IN WEB QUERIES OVER STRUCTURED DATA - Described is using modifiers in online search queries for queries that map to a database table. A modifier (e.g., an adjective or a preposition) specifies the intended meaning of a target, in which the target maps to a column in that table. The modifier thus corresponds to one or more functions that determine which rows of data in the column match the query, e.g., “cameras under $400” maps to a camera (or product) table, and “under” is the modifier that represents a function (less than) that is used to evaluate a “price” target/data column. Also described are different classes of modifiers, and generating the dictionaries for a domain (corresponding to a table) via query log mining. | 12-02-2010 |
20110047171 | ANSWERING WEB QUERIES USING STRUCTURED DATA SOURCES - Described is answering online web queries from a structured data store, such as a products database. An online web search query is modified into an evaluation expression for accessing a structured data store (e.g., a database, XML file, a flat table) to find search results. A query is matched to a pattern, which is used to generate the expression, as well as determine to which structured data store the query is routed. Tokens (e.g., words) in the query are processed against a dictionary of token classes (sets of tokens) and patterns (sets of token classes) to annotate the query to map the query to the matching pattern. A translation process generates the expression based on translation hints that correspond to the matching pattern. Also described is offline mining of query logs to generate the dictionaries. | 02-24-2011 |
20110264598 | PRODUCT SYNTHESIS FROM MULTIPLE SOURCES - Methods and systems for automatically synthesizing product information from multiple data sources into an on-line catalog are disclosed, and in particular, for automatically synthesizing the product information based on attribute-value pairs. Information for a product may be obtained, via entity extraction, feed ingestion, and other mechanisms, from a plurality of structured and unstructured data sources having different taxonomies and schemas. Product information may additionally or alternatively be obtained or derived based on popularity data. The product information may be cleansed, segmented and normalized. The product information may be clustered so closest products, attribute names and attribute values are associated. A representative value for an attribute name may be determined, and the on-line catalog may be updated so that entries are comprehensive, meaningful and useful to a catalog user. Updates from at least 500 million different data sources may be scheduled to occur as frequently as several times daily. | 10-27-2011 |
20110313993 | GRAMMAR COMPRESSION - Compression of extensive, rule-based grammars used to facilitate search queries is provided herein. Rule-based grammars include a list of rules that each comprise a sequence of token classes. Each token class is a logical grouping of tokens, and each token is a string of characters. A grammar is parsed to identify rules and token classes. Unimportant token classes are identified and sets of unimportant token classes are merged to generated merged token classes. A compressed grammar is generated by substituting the merged token classes into the grammar for corresponding unimportant token classes used to generate the merged token classes. | 12-22-2011 |
20120185507 | PROVIDING QUERY COMPLETIONS BASED ON DATA TUPLES - Data, such as product data or airline flight data, is represented using structured data tuples, tables, or as data with related metadata and tags, and stored by a search engine. Partial queries are received by the search engine from a user and are used to generate a dialog between the search engine and the user. The dialog may include suggested query completions for the partial queries that correspond to a schema associated with the data tuples. The suggested query completions may be determined using attribute combinations of attributes and attribute values, or metadata and tags associated with the data tuples, including known synonyms and misspellings. The user may interact with the query completions in the dialog, and the search engine may revise the dialog and the query completions according to the interactions. A user may query data tuples without knowing the schema used by the underlying data structures. | 07-19-2012 |
20120276992 | MOST VALUABLE PLAYER GAMER STATUS AND APPLICATIONS - A gaming environment is provided by an MVP gaming system provider in which “most valuable player” (MVP) gamers may compete. MVP gamers may be identified using achievements, gamer scores, game play during sanctioned gaming events, or other indicia of game skills. The MVP gamers may be sponsored by advertisers, and the MVP gamers' avatars may be branded based on sponsorship during gaming events. The sponsorships may be brokered by the MVP gaming system provider. Some gaming events may be sanctioned gaming events that are coordinated by the MVP gaming system provider and “televised” to allow viewers to watch the gaming events. Tutorials from MVP gamers may also be provided to gamers for viewing to assist in their game play. Further, gamers may be able to rent the avatars of MVP gamers for use during their game play. | 11-01-2012 |
20120277004 | BRINGING ACHIEVEMENTS TO AN OFFLINE WORLD - An achievement system tracks users' offline activities and awards achievements to users for participation in particular offline activities. The achievements that are awarded for particular activities and/or to particular users may be sponsored by merchants, who may compensate an achievement system provider for the opportunity to sponsor the achievements. To award users achievements, the users' offline activities are tracked. When a user participates in an offline activity for which achievements are available, the user is awarded an achievement. The achievement may be stored in an achievement profile for the user. In some embodiments, achievements earned by users may be converted into other benefits and alternative awards. | 11-01-2012 |
20120278154 | MARKETING INVENTORY BASED ON SPOILAGE - An inventory marketing system operates to identify and market inventory items that are likely to spoil. Initially, inventory items that have a particular likelihood of spoilage may be identified. Customers to target with offers for the inventory items may be identified based on the customers' current location or expected location near a spoilage time for the inventory items. Offers for the inventory items may be provided to the targeted customers, and purchases of the inventory items by customers may be facilitated. | 11-01-2012 |
20120323686 | VIRTUAL IDENTITY MANAGER - A computing system and method for managing an identity of a user are provided. A server may be configured to communicate with each of a plurality of client devices in corresponding request and response streams. An inference engine is configured to monitor the request and response streams for identifying factors that distinguish each of the plurality of client devices from other of the plurality of client devices. Upon detecting one or more of the identifying factors for each of the two or more client devices that match within a threshold probability, the inference engine makes an inference that two or more of the plurality of client devices are used by the user. Based upon the inference, the inference engine creates a virtual identity record at the server linking the two or more client devices. | 12-20-2012 |
20120323795 | ONLINE MARKETPLACE WITH DYNAMIC PRICING - Systems and methods for dynamic pricing in real-time marketplace transactions are provided. A method may include receiving a request from a bid agent associated with a location-aware user device, and an offer for goods/services from an offer agent that is associated with a merchant device. The offer may include an inventory and one or more locations of the goods/services. The method includes determining a location of the location-aware user device, and determining whether the inventory and the one or more locations of the goods/services are sufficient to satisfy the request. If so, then the method includes establishing a real-time dynamic marketplace session between the offer agent and the bid agent to facilitate a negotiation for the goods/services. Upon receiving an acceptance from the offer agent for a bid from the bid agent, the method includes processing a purchase transaction for the goods/services. | 12-20-2012 |
20120331090 | COMPUTING SYSTEM FOR MANAGING DATA - Various embodiments are described for systems and methods for managing data. The system may include a device group configured for peer-to-peer communications, the device group including a computing device and one or more peer computing devices. The system includes a cross device application programming interface (API) that is implemented as a device group API client executed on the computing device and each of the peer computing devices. Each device group API client includes a permissions module that is configured to determine whether a request satisfies a device-group-specific permission for access to data stored on any device associated with the device group. Upon authorization of the request, a file storage module is configured to retrieve and output the requested file. | 12-27-2012 |
20130006739 | ONLINE MARKETPLACE WITH SHIPPING INCENTIVES - A marketplace server and method for facilitating purchase transactions are provided. A marketplace server may include a routing engine configured to receive an order for goods from a first computing device associated with a first customer, with the order including a first delivery address of the customer. The routing engine also calculates a delivery route to the first delivery address. An offer engine is configured to create an offer for other goods. The offer includes a shipping incentive associated with a second delivery address of a second customer. The offer may be targeted to the second customer based on a proximity of the second delivery address to the delivery route. The offer engine sends the offer to a second computing device associated with the second customer. Upon receiving an acceptance of the offer from the computing device, the offer engine processes a purchase transaction for the offer. | 01-03-2013 |
20130006794 | ONLINE MARKETPLACE WITH OFFER/BID POOLING - Systems and methods for facilitating purchase transactions through real-time dynamic marketplace sessions are provided. A method may include pooling offers for goods/services to form a pooled offer, and pooling bids to form a pooled bid. The pooled offer and the pooled bid may be matched to form a pooled offer/bid pair. Methods for inducing and using predictive models for successful configuration of properties and participants with machine learning procedures that operate on data about successful and unsuccessful offers may be employed. A real-time dynamic marketplace session may be established between offer agents associated with the pooled offers and bid agents associated with the pooled bids. Upon a successful conclusion to the negotiation, a purchase transaction for the pooled offer/bid pair may be processed. | 01-03-2013 |
20130006904 | PERSONAL LONG-TERM AGENT FOR PROVIDING MULTIPLE SUPPORTIVE SERVICES - A long-term personal agent program, executable as network service and/or on one or more user computing devices and related method for identifying opportunities and making recommendations on behalf of one or more users, are disclosed herein. In one example, the personal agent program includes a monitoring engine configured to monitor and interpret a user's activities over time with a plurality of sensing and logging methodologies according to user authorization, the use of statistical methods for learning to understand a user's goals and behavioral patterns from data, and the use of procedures for computing the expected value of information guiding sensing and logging in different contexts. The personal agent further may include a recommendation methodology configured to make suggestions and to take actions on behalf of the user, in the present moment as well as for future times, based on inferences about user goals and opportunities in the world. | 01-03-2013 |
20130091159 | Product Synthesis From Multiple Sources - Methods and systems for automatically synthesizing product information from multiple data sources into an on-line catalog are disclosed, and in particular, for automatically synthesizing the product information based on attribute-value pairs. Information for a product may be obtained, via entity extraction, feed ingestion, and other mechanisms, from a plurality of structured and unstructured data sources having different taxonomies and schemas. Product information may additionally or alternatively be obtained or derived based on popularity data. The product information may be cleansed, segmented and normalized. The product information may be clustered so closest products, attribute names and attribute values are associated. A representative value for an attribute name may be determined, and the on-line catalog may be updated so that entries are comprehensive, meaningful and useful to a catalog user. Updates from at least 500 million different data sources may be scheduled to occur as frequently as several times daily. | 04-11-2013 |
20140195319 | ONLINE MARKETPLACE WITH SHIPPING INCENTIVES - A marketplace server and method for facilitating purchase transactions are provided. A marketplace server may include a routing engine configured to receive an order for goods from a first computing device associated with a first customer, with the order including a first delivery address of the customer. The routing engine also calculates a delivery route to the first delivery address. An offer engine is configured to create an offer for other goods. The offer includes a shipping incentive associated with a second delivery address of a second customer. The offer may be targeted to the second customer based on a proximity of the second delivery address to the delivery route. The offer engine sends the offer to a second computing device associated with the second customer. Upon receiving an acceptance of the offer from the computing device, the offer engine processes a purchase transaction for the offer. | 07-10-2014 |
Patent application number | Description | Published |
20110145227 | DETERMINING PREFERENCES FROM USER QUERIES - A query may be received at a computing device through a network. One or more attribute values that are preferences for a subset of the one or more terms of the query may be identified by the computing device. One or more products or services having associated attributes that have values that match a subset of the identified attribute values may be identified by the computing device, and a subset of the identified products or services may be presented by the computing device through the network. Implementations may also identify latent preferences, that is, preferences that are found for a query even where such a preference is not explicitly part of a term or token of the query. | 06-16-2011 |
20110184893 | ANNOTATING QUERIES OVER STRUCTURED DATA - A query may be received at a computing device and may include one or more terms. For each set of structured data tuples, a set of tokens may be determined from the terms of the query by the computing device based on attribute values of attributes associated with the structured data tuples in the set of structured data tuples. An annotated query may be determined from each of the sets of tokens. A probability score may be determined for each of the determined annotated queries. The annotated query having the highest determined probability score may be selected, and one or more structured data tuples may be identified from the structured data tuples that have attributes with attribute values that match one or more tokens of the selected annotated query. | 07-28-2011 |
20110184951 | PROVIDING QUERY SUGGESTIONS - Methods and computer-readable media are provided for determining suggested queries. A user enters a search website, and the user is identified based on a user identification. Suggested queries are determined based on a group associated with the user. This association is created by extracting queries from data logs, categorizing the queries into groups based on their respective subject matter, associating the user with one or more groups, and determining suggested queries for each group. The suggested queries are communicated for display. | 07-28-2011 |
20110307517 | RELAXATION FOR STRUCTURED QUERIES - A structured query may specify attribute values for attributes. An estimate of the number of items that will match the structured query if it is applied to a structured database is determined. If the estimated number of items is below a threshold, the structured query may be relaxed to form new candidate structured queries. The number of candidate queries may be determined based on a desired running time. Each of the candidate structured queries may be determined by changing one or more attribute values of the attributes of the structured query. Estimates of the number of items each of the candidate structured queries will match is determined, and the candidate structured query that has the highest matching estimation is used to query the database. The matching results may be output. | 12-15-2011 |
20120226681 | FACET DETERMINATION USING QUERY LOGS - Previously received queries from a search log are analyzed to determine a category of structured data associated with each query. For example, the categories may correspond to consumer product categories such as televisions, digital cameras, etc. For each category, the terms of the queries associated with the category are correlated with the attributes and attribute values of the structured data tuples associated with the category. The attributes may be ranked based on the correlation. When a subsequent query is received, the category of the query is determined and the ranked attributes associated with the category are used to select facets that are displayed to the user along with the search results. | 09-06-2012 |
20140101267 | SELECTING USER ACCOUNTS IN SOCIAL NETWORK TO ANSWER QUESTION - Messages generated by user accounts in a social networking application over a period of time are processed to determine the subjects and topic associated with the messages, as well as the geographical locations of the users associated with the user accounts, and the times when the users associated with the accounts are most active. The determined, subject, time, and location information is used to create a model that may be used to predict whether a user in the social networking application is willing, available, and has the knowledge or topical affinity to answer a question proposed by another user in the social networking application based on a subject, time, and/or location associated with the question. When a user enters a question, the user may be presented with a list of their friends or contacts ranked according to the probabilities generated by the model. | 04-10-2014 |