IP Library Granted Patent US 10,891,673
Granted Patent B1
US 10,891,673 · App. 15/388,943 · Granted Jan 12, 2021

Semantic modeling for search

Inventor: Hassan Sawaf (Los Gatos, CA)
Assignee: A9.com, Inc.
G06Q30/0625G06F16/248G06F16/2455G06N3/08G06Q30/0643
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,891,673
App. No.
15/388,943
Granted
Jan 12, 2021
Kind
B1
Abstract

A semantic analysis can be performed to determine an intent of a received query. The intent can relate to a primary object of the query, which can be identified through the semantic analysis. Other attributes can be determined from the query that help to focus the object of the intent. A query vector is generated, based on the intent and primary object, and used to search a multi-dimensional semantic space including semantic representations of possible matches. The attributes are used to adjust the query vector in the semantic space. Objects having vectors ending proximate the query vector are identified as potential search results, with the distance from the query vector being used as a ranking mechanism. If refinement is needed, a dialog is used to obtain additional information from the user. Once results are obtained with sufficient confidence, results can be returned as search results for the query.

Claims (91)

1. A computer-implemented method, comprising:

receiving a search query including a plurality of keywords;

analyzing the search query using semantic analysis to identify an intent of the search query, the semantic analysis further identifying a primary object and at least one attribute corresponding to the primary object;

generating a semantic vector corresponding to the intent and the primary object;

generating an adjusted semantic vector based at least in part on the at least one attribute corresponding to the primary object and a temporal aspect associated with the search query;

performing a lookup by projecting the adjusted semantic vector in a multi-dimensional semantic space, the multi-dimensional semantic space including vector representations of a plurality of products offered for consumption through an electronic marketplace, the vector representations learned through training of a neural network using at least a catalog of product data for the electronic marketplace, at least a subset of dimensions of the multi-dimensional semantic space corresponding to attributes learned for the plurality of products;

identifying a set of the products with vector representations proximate the adjusted semantic vector in the multi-dimensional semantic space;

returning, as search results, information for at least a subset of the set of the products;

determining that the identified set of products fails to satisfy at least one selection criterion, based on a determination that less than a predetermined number of results have been identified within a confidence threshold;

in response to the determination that the identified set of products fails to satisfy the at least one selection criterion:

prompting a user to provide additional information for the at least one attribute;

adjusting the adjusted semantic vector according to the additional information; and

determining a second subset of the set of products based at least in part upon the adjusted semantic vector after the adjusting of the adjusted semantic vector.

2. The computer-implemented method of claim 1 , further

comprising:

determining the at least one attribute based upon a plurality of attributes corresponding to the set of products with representations proximate the adjusted semantic vector.

3. The computer-implemented method of claim 1 ,

further comprising:

training the neural network using three sets of input data, the three sets of input data including a first set with only text data, a second set with only image data, and a third set with both text and image data; and

generating the vector representations for the plurality of products in the semantic space using the trained neural network.

4. The computer-implemented method of claim 1 , further

comprising:

determining a respective distance in the semantic space between an endpoint of the adjusted semantic vector and the respective endpoints of the vector representations for the set of products;

ranking the set of products based at least in part upon the respective distance; and

selecting the subset of the set of products based at least in part upon the ranking.

5. A computer-implemented method, comprising:

receiving a query;

determining an object and a temporal component of the query;

generating a semantic vector corresponding to both the object and the temporal component of the query, the semantic vector being language agnostic;

projecting the semantic vector in a multi-dimensional semantic space, the multi-dimensional semantic space including vector representations of a plurality of items as learned through training of at least one neural network;

returning information for a subset of the items based upon a proximity of the vector representations for the subset of items to an endpoint of the semantic vector;

determining that the plurality of items fails to satisfy at least one selection criterion, based on a determination that less than a predetermined number of results have been identified within a confidence threshold;

in response to the determination that the plurality of items fails to satisfy the at least one selection criterion:

prompting an input for additional information for the semantic vector;

adjusting the semantic vector according to the additional information; and

determining a second subset of the items based at least in part upon the semantic vector after the adjusting.

6. The computer-implemented method of claim 5 , further

comprising:

determining at least one attribute for the for the object of the query; and

generating the semantic vector based further in part upon the at least one attribute.

7. The computer-implemented method of claim 5 , wherein the

attribute is received with the query or a subsequent transmission, and further

comprising:

iteratively requesting additional attribute information to refine the semantic vector.

8. The computer-implemented method of claim 5 , further

comprising:

training the at least one neural network using at least one of text data or image data from a repository of item information, wherein the query is able to contain at least one of an image or a keyword;

analyzing the information to determine concepts having similar semantic meaning; and

grouping the concepts into a set of semantic units of the similar semantic meaning, wherein the semantic space includes vector representations corresponding to the set of semantic units.

9. The computer-implemented method of claim 5 , further

comprising:

determining a subset of the items having a temporal component; and

generating a set of vector representations for the subset based at least in part upon the temporal component.

10. The computer-implemented method of claim 5 , wherein the

plurality of items correspond to products offered for consumption through an electronic marketplace, and wherein the information for the items includes historical performance data for the items.

11. The computer-implemented method of claim 5 , further

comprising:

analyzing the query using semantic analysis to further determine an intent of the query with respect to the at least one object, wherein the semantic vector is generated further based upon the intent, and wherein the intent is explicitly identified in the query or implicit based at least in part upon a content of the query.

12. The computer-implemented method of claim 11 , further

comprising:

determining an objective function corresponding to the intent, wherein at least one selection criterion for determining the subset of the items determines a distance threshold for the proximity of the vector representations for the subset of items to an endpoint of the semantic vector.

13. The computer-implemented method of claim 6 , further

comprising:

determining the at least one attribute based upon a plurality of attributes corresponding to the plurality of the items with representations proximate the modified semantic vector.

14. The computer-implemented method of claim 5 , further

comprising:

determining a respective distance in the semantic space between an endpoint of the semantic vector and respective endpoints of the vector representations for the plurality of items;

ranking the set of items based at least in part upon the respective distances; and

selecting the subset of items based at least in part upon the ranking.

15. A system, comprising:

at least one processor; and

memory storing instructions that, when executed by the at least one processor, cause the system to:

receive a query;

determine an object and a temporal component of the query;

generate a semantic vector corresponding to both the object and the temporal component of the query, the semantic vector being language agnostic;

project the semantic vector in a multi-dimensional semantic space, the multi-dimensional semantic space including vector representations of a plurality of items as learned through training of at least one neural network;

return information for a subset of the items based upon a proximity of the vector representations for the subset of items to an endpoint of the semantic vector;

determine that the plurality of items fails to satisfy at least one selection criterion, based on a determination that less than a predetermined number of results have been identified within a confidence threshold;

in response to the determination that the plurality of items fails to satisfy the at least one selection criterion:

prompt an input for additional information for the semantic vector;

adjust the semantic vector according to the additional information; and

determine a second subset of the items based at least in part upon the semantic vector after the adjusting.

16. The system of claim 15 , wherein the instructions when executed

further cause the system to:

train the at least one neural network using at least one of text data or image data from a repository of item information;

analyze the information to determine concepts having similar semantic meaning; and

group the concepts into a set of semantic units of the similar semantic meaning, wherein the semantic space includes vector representations corresponding to the set of semantic units.

17. The system of claim 15 , wherein the instructions when executed

further cause the system to:

analyze the query using semantic analysis to further determine an intent of the query with respect to the at least one object, wherein the semantic vector is generated further based upon the intent; and

determine an objective function corresponding to the intent, wherein at least one selection criterion for determining the subset of the items determines a distance threshold for the proximity of the vector representations for the subset of items to an endpoint of the semantic vector.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 13, 2024
From: A9.COM, INC.
To: AMAZON TECHNOLOGIES, INC.
Reel/Frame 069167/0493 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 16, 2017
From: SAWAF, HASSAN
To: A9.COM, INC.
Reel/Frame 043872/0666 →
Cited By (8)
US 12,282,829 US 12,289,481 US 12,314,676 US 12,373,478 US 12,411,862 US 12,524,686 US 12,586,112 US 12,718,086