IP Library Granted Patent US 12,499,151
Granted Patent B2
US 12,499,151 · App. 18/798,316 · Granted Dec 16, 2025

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/583G06F16/538G06F16/587
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 12,499,151
App. No.
18/798,316
Granted
Dec 16, 2025
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 (45)

1 . A computer-implemented method, the method comprising:

receiving, by a computing system comprising one or more processors, an image search query;

generating, by the computing system, a respective pair numeric embedding for each of a plurality of image-landing page pairs, wherein each image-landing page pair comprises 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 generated by processing the image-landing page pair with a pair embedding neural network, 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, wherein the pair embedding neural network comprises a plurality of embedding subnetworks for different image-landing page feature types, wherein outputs of the plurality of embedding subnetworks are merged to generate the respective pair numeric embedding, wherein merging comprises concatenating vectors of the outputs of the plurality of embedding subnetworks;

processing, by the computing system, 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 a same embedding space, wherein the pair embedding neural network and the image search query embedding neural network were jointly trained based a training dataset comprising a plurality of training image search queries and a plurality of training image search results, wherein each of the plurality of training image search results is associated with one or more respective training images search queries of the plurality of training image search queries;

identifying, as first candidate image search results for the image search query and by the computing system, 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; and

providing, by the computing system, at least a subset of the image search results for display in a search interface.

2 . The method of claim 1 , further comprising:

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

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

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

3 . The method of claim 1 , wherein identifying, as first candidate image search results for the image search query and by the computing system, the image search results comprises:

determining a distance in an embedding space between the image search query embedding and each of the plurality of pair numeric embeddings.

4 . The method of claim 1 , wherein identifying, as first candidate image search results for the image search query and by the computing system, the image search results is determined by a retrieval engine of the computing system.

5 . The method of claim 1 , wherein the image search query embedding neural network comprises a deep neural network that comprises a number of embedding subnetworks for each feature of a plurality of query features.

6 . The method of claim 1 , further comprising:

storing, by the computing system, the image search query and the at least the subset of the image search results in an index database.

7 . The method of claim 1 , wherein the image search query embedding neural network and the pair embedding neural network are separate neural networks.

8 . The method of claim 1 , further comprising:

retrieving, using a term-based retrieval system, a set of image-page pairs based on key terms of the image search query.

9 . The method of claim 8 , further comprising:

providing, by the computing system, the set of image-page pairs based on key terms of the image search query for display merged with the at least the subset of the image search results for display in the search interface.

10 . The method of claim 1 , wherein the respective landing page comprises a web page on which the respective image is found.

11 . A computing system for performing an image search, the system comprising:

one or more processors; and

one or more non-transitory computer-readable media that collectively store instructions that, when executed by the one or more processors, cause the computing system to perform operations, the operations comprising:

receiving an image search query;

generating a respective pair numeric embedding for each of a plurality of image-landing page pairs, wherein each image-landing page pair comprises 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 generated by processing the image-landing page pair with a pair embedding neural network, 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, wherein the pair embedding neural network comprises a plurality of embedding subnetworks for different image-landing page feature types, wherein outputs of the plurality of embedding subnetworks are merged to generate the respective pair numeric embedding, wherein each of the plurality of embedding subnetworks generates embedding representations for image-landing page features of a particular type, wherein merging comprises concatenating vectors of the outputs of the plurality of embedding subnetworks;

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, wherein the pair embedding neural network and the image search query embedding neural network were jointly trained based a training dataset comprising a plurality of training image search queries and a plurality of training image search results, wherein each of the plurality of training image search results is associated with one or more respective training images search queries of the plurality of training image search queries;

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; and

providing at least a subset of the image search results for display in a search interface.

12 . The system of claim 11 , wherein the features of the image search query comprise data characterizing a location from which the image search query was submitted.

13 . The system of claim 11 , wherein the features of the image search query comprise text of the image search query.

14 . The system of claim 11 , wherein features of each image-landing page pair comprises a combination of features of the landing page and features of the image.

15 . The system of claim 11 , wherein the respective pair numeric embedding is descriptive of semantic relationships between features of a respective landing page.

16 . The system of claim 11 , further comprising:

storing the respective pair numeric embeddings for each of a plurality of image-landing page pairs in an index database, wherein the index database associates image-landing page pairs with corresponding pair numeric embeddings that have been generated for the image-landing page pairs using the pair embedding neural network.

17 . One or more non-transitory computer-readable media that collectively store instructions that, when executed by one or more computing devices, cause the one or more computing devices to perform operations, the operations comprising:

receiving an image search query;

generating a respective pair numeric embedding for each of a plurality of image-landing page pairs, wherein each image-landing page pair comprises 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 generated by processing the image-landing page pair with a pair embedding neural network, 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, wherein the pair embedding neural network comprises a plurality of embedding subnetworks for different image-landing page feature types, wherein outputs of the plurality of embedding subnetworks are merged to generate the respective pair numeric embedding, wherein merging comprises concatenating vectors of the outputs of the plurality of embedding subnetworks;

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, wherein the pair embedding neural network and the image search query embedding neural network were jointly trained based a training dataset comprising a plurality of training image search queries and a plurality of training image search results, wherein each of the plurality of training image search results is associated with one or more respective training images search queries of the plurality of training image search queries;

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; and

providing at least a subset of the image search results for display in a search interface.

18 . The one or more non-transitory computer-readable media of claim 17 , wherein the operations further comprise: adjusting one or more parameters of the pair embedding neural network based at least in part on a loss function.

19 . The one or more non-transitory computer-readable media of claim 17 , wherein the plurality of training image search results comprise one or more positive training examples and one or more negative training examples.

20 . The one or more non-transitory computer-readable media of claim 19 , wherein the one or more positive training examples are descriptive of a training image-landing page pair associated with a search result interacted with by a user after submitting a respective training image search query.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 7, 2024
From: BASU, SUDDHA KALYAN; YIN, WENYUAN; FAN, WEI; GLASNER, DANIEL; TIRUMALAREDDY, SUNDEEP; STROHMANN, THOMAS RICHARD; VERMA, SHUBHANG; PATHAK, MANAS ASHOK; KARANJKAR, SUSHRUT
To: GOOGLE LLC
Reel/Frame 068519/0729 →
Continuity (3)
Continuation 18461049 · Sep 5, 2023
Continuation 17277820
Related Publication 20240394319A1 · Nov 28, 2024
References Cited (10)
US 8995716B1 · Zomet et al. · 2015 [cited by applicant]
US 20150161120A1 · Preetham et al. · 2015 [cited by applicant]
US 20180314715A1 · Ramesh et al. · 2018 [cited by applicant]
US 20190236167A1 · Hu et al. · 2019 [cited by applicant]
US 20200380027A1 · Aggarwal et al. · 2020 [cited by applicant]
US 20210271707A1 · Lin et al. · 2021 [cited by applicant]
EP 3300002 · 2018 [cited by applicant]
International Preliminary Report on Patentability for Application No. PCT/US2020/020459, mailed Sep. 9, 2022, 8 pages. [cited by applicant]
International Search Report and Written Opinion for PCT/US2020/020459, mailed on Oct. 9, 2020, 12 pages. [cited by applicant]
Karmakar et al, “Towards Semantic Image Search”, 2016 Institute of Electrical and Electronics Engineers Tenth International Conference on Semantic Computing, Feb. 4, 2016, pp. 483-487. [cited by applicant]