IP Library Granted Patent US 11,782,998
Granted Patent B2
US 11,782,998 · App. 17/277,820 · Granted Oct 10, 2023

Embedding based retrieval for image search

Inventors: Suddha Kalyan Basu (San Jose, CA); Wei Fan (Sunnyvale, CA); Daniel Glasner (New York, NY); Sushrut Suresh Karanjkar (Fremont, CA); Thomas Richard Strohmann (Cupertino, CA); Shubhang Verma (Mountain View, CA); Manas Ashok Pathak (Mountain View, CA); Wenyuan Yin (Cupertino, CA); Sundeep Tirumalareddy (Mountain View, CA)
Assignee: GOOGLE LLC
G06F16/9538G06F16/538G06F16/583G06F16/587G06N3/02
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 11,782,998
App. No.
17/277,820
Granted
Oct 10, 2023
Kind
B2
Abstract

Methods, systems, and apparatus including computer programs encoded on a computer storage medium, for retrieving image search results using embedding neural network models. In one aspect, an image search query is received. A respective pair numeric embedding for each of a plurality of image-landing page pairs is determined. Each pair numeric embedding is a numeric representation in an embedding space. An image search query embedding neural network processes features of the image search query and generates a query numeric embedding. The query numeric embedding is a numeric representation of the image search query in the same embedding space. A subset of the image-landing page pairs having pair numeric embeddings that are closest to the query numeric embedding of the image search query in the embedding space are identified as first candidate image search results.

Claims (47)

1. A method comprising:

receiving an image search query;

determining a respective pair numeric embedding for each of a plurality of image-landing page pairs, each image-landing page pair including a respective image and a respective landing page for the respective image, wherein each pair numeric embedding is a numeric representation in an embedding space, wherein determining a respective pair numeric embedding for each of a plurality of image-landing page pairs comprises:

accessing an index database that associates image-landing page pairs with corresponding pair numeric embeddings that have been generated for the image-landing page pairs using a pair embedding neural network, wherein the pair embedding neural network and the image search query embedding neural network have been trained jointly to minimize a loss function that depends on a dot product between (i) a query numeric embedding for a training image search query and (ii) a pair numeric embedding for a training image-landing page pair;

processing features of the image search query using an image search query embedding neural network to generate a query numeric embedding of the image search query, and wherein the query numeric embedding is a numeric representation in the same embedding space;

identifying, as first candidate image search results for the image search query, image search results that identify a subset of the image-landing page pairs having pair numeric embeddings that are closest to the query numeric embedding of the image search query in the embedding space;

ranking a plurality of second candidate image search results that comprises at least some of the first candidate image search results;

generating an image search results presentation that displays the second candidate image search results ordered according to the ranking; and

providing the image search results presentation for presentation by a user device.

2. The method of claim 1 , wherein determining a respective pair numeric embedding for each of a plurality of image-landing page pairs comprises:

processing features of each image-landing page pair using a pair embedding neural network to generate the respective pair numeric embedding for the image-landing page pair.

3. The method of claim 1 , wherein the loss function generates a gradient; and

wherein one or more parameters of at least one of the pair embedding neural network and the image search query embedding neural network were adjusted based on the gradient, wherein adjusting the one or more parameters causes higher dot products between (i) a query numeric embedding for a training image search query and (ii) a pair numeric embedding for a training image-landing page pair when the training image search query and the training image-landing page pair have been identified as a positive training example than when the training image search query and the training image-landing page pair have been identified as a negative training example.

4. The method of claim 3 , further comprising:

identifying the training image search query and the training image-landing page pair as a positive training example when a user interacted with a search result identifying the training image-landing page pair after submitting the training image search query.

5. The method of claim 1 , wherein the pair embedding neural network and the image search query embedding neural network share at least some parameters.

6. The method of claim 5 , wherein the pair embedding neural network and the image search query embedding neural network share parameters corresponding to two features that are drawn from a same vocabulary.

7. The method of claim 1 , wherein the features of the image search query comprise data characterizing a location from which the image search query was submitted.

8. The method of claim 1 , wherein the features of the image search query comprise a text of the image search query.

9. The method of claim 1 , wherein the features of each image-landing page pair comprises a combination of features of the landing page and features of the image.

10. The method of claim 9 , wherein the features of the landing page comprise one or more of text from a title of the landing page, salient terms that appear on the landing page, text from a URL of the landing page, or data identifying a domain of the landing page.

11. The method of claim 9 , wherein the features of the image comprise one or more of pixel data of the image or an embedding of the image.

12. The method of claim 9 , wherein the features of the image comprise one or more of data identifying a domain of the image or text from a URL of the image.

13. The method of claim 1 , wherein each pair numeric embedding is generated based on one or more features of the respective image and one or more features of the respective landing page.

14. The method of claim 13 , wherein the one or more features of the respective landing page are descriptive of a date the respective landing page was updated.

15. The method of claim 13 , wherein the one or more features of the respective landing page are descriptive of a context of the respective image in the respective landing page.

16. The method of claim 15 , wherein the context is descriptive of a location of the respective image within the respective landing page.

17. A system comprising:

one or more computers; and

one or more storage devices storing instructions that when executed by the one or more computers cause the one or more computers to perform operations, the operations comprising:

receiving an image search query;

determining a respective pair numeric embedding for each of a plurality of image-landing page pairs, each image-landing page pair including a respective image and a respective landing page for the respective image, wherein each pair numeric embedding is a numeric representation in an embedding space, wherein determining a respective pair numeric embedding for each of a plurality of image-landing page pairs comprises:

accessing an index database that associates image-landing page pairs with corresponding pair numeric embeddings that have been generated for the image-landing page pairs using a pair embedding neural network, wherein the pair embedding neural network and the image search query embedding neural network have been trained jointly to minimize a loss function that depends on a dot product between (i) a query numeric embedding for a training image search query and (ii) a pair numeric embedding for a training image-landing page pair;

processing features of the image search query using an image search query embedding neural network to generate a query numeric embedding of the image search query, and wherein the query numeric embedding is a numeric representation in the same embedding space; and

identifying, as first candidate image search results for the image search query, image search results that identify a subset of the image-landing page pairs having pair numeric embeddings that are closest to the query numeric embedding of the image search query in the embedding space;

ranking a plurality of second candidate image search results that comprises at least some of the first candidate image search results;

generating an image search results presentation that displays the second candidate image search results ordered according to the ranking; and

providing the image search results presentation for presentation by a user device.

18. One or more non-transitory computer-readable storage media storing instructions that when executed by one or more computers cause the one or more computers to perform operations, the operations comprising:

receiving an image search query;

determining a respective pair numeric embedding for each of a plurality of image-landing page pairs, each image-landing page pair including a respective image and a respective landing page for the respective image, wherein each pair numeric embedding is a numeric representation in an embedding space, wherein determining a respective pair numeric embedding for each of a plurality of image-landing page pairs comprises:

accessing an index database that associates image-landing page pairs with corresponding pair numeric embeddings that have been generated for the image-landing page pairs using a pair embedding neural network, wherein the pair embedding neural network and the image search query embedding neural network have been trained jointly to minimize a loss function that depends on a dot product between (i) a query numeric embedding for a training image search query and (ii) a pair numeric embedding for a training image-landing page pair;

processing features of the image search query using an image search query embedding neural network to generate a query numeric embedding of the image search query, and wherein the query numeric embedding is a numeric representation in the same embedding space; and

identifying, as first candidate image search results for the image search query, image search results that identify a subset of the image-landing page pairs having pair numeric embeddings that are closest to the query numeric embedding of the image search query in the embedding space;

ranking a plurality of second candidate image search results that comprises at least some of the first candidate image search results;

generating an image search results presentation that displays the second candidate image search results ordered according to the ranking; and

providing the image search results presentation for presentation by a user device.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 7, 2021
From: BASU, SUDDHA KALYAN; FAN, WEI; GLASNER, DANIEL; KARANJKAR, SUSHRUT SURESH; STROHMANN, THOMAS RICHARD; VERMA, SHUBHANG; PATHAK, MANAS ASHOK; YIN, WENYUAN; TIRUMALAREDDY, SUNDEEP
To: GOOGLE LLC
Reel/Frame 055847/0352 →
Continuity (1)
Related Publication 20220012297A1 · Jan 13, 2022