IP Library Granted Patent US 12,488,255
Granted Patent B1
US 12,488,255 · App. 16/918,873 · Granted Dec 2, 2025

Systems and methods for identifying complementary objects having similar styles

Inventors: Chenyi Li (San Francisco, CA); Kunlong Gu (Belmont, CA); Eric Kim (San Francisco, CA); Andrew Huan Zhai (San Mateo, CA); Charles Joseph Rosenberg (Cupertino, CA)
Assignee: Pinterest, Inc.
G06N5/04G06F16/248G06F18/2148G06F18/22G06N20/00G06V10/22G06V10/56
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,488,255
App. No.
16/918,873
Granted
Dec 2, 2025
Kind
B1
Abstract

Described are systems and methods for determining complementary and/or matching objects based on an input query object. The described systems and methods can generate an embedding representative of the provided object, which can be transformed to generate a style embedding by a trained system, such as a machine learning system. The style embedding can then be used to identify one or more complementary objects from a corpus of classified objects. Aspects of the present disclosure also relate to creation of the training dataset, as well as training the machine learning system.

Claims (87)

1 . A computer-implemented method, comprising:

obtaining a plurality of outfits represented in a plurality of content items, each of the plurality of outfits including a visual representation of a respective plurality of objects;

for each of the plurality of outfits:

isolating each object from the respective plurality of objects into a bounding box object representative of the object;

assigning a category type label for each bounding box object; and

determining a color diversity for each object;

generating a training dataset from the respective plurality of objects by removing, based at least in part on at least one of the category type label or the color diversity, at least one object from the respective plurality of objects;

training, using the training dataset to implement a triplet loss technique, a neural network that generates style embeddings and predicts complementary objects based on corresponding style embeddings that are representative of a style of the objects included in the training dataset, wherein the triplet loss technique includes:

providing a plurality of triplet inputs to the neural network;

evaluating an output generated by the neural network in response to each of the plurality of triplet inputs; and

updating the neural network based at least in part on the evaluation of the outputs;

obtaining an embedding vector representative of a query object;

in response to obtaining the embedding vector for the query object:

performing, using the neural network, a transformation of the embedding vector for the query object to a style embedding vector for the query object that represents a style of the query object, wherein the transformation includes at least one of performing a linear transformation or application of an activation function on the embedding vector to generate the style embedding vector; and

determining, using the neural network, a query object category for the query object using the embedding vector for the query object;

identifying at least one complementary object from a corpus of objects based at least in part on:

the query object category and an object category associated with a corpus of objects; and

a distance between the style embedding vector for the query object and a plurality of style embedding vectors associated with the corpus of objects in a style embedding space; and

providing, for presentation on a client device, the at least one complementary object.

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

preprocessing each of the plurality of outfits, wherein preprocessing each of the plurality of outfits includes at least one of:

determining whether each object of the respective plurality of objects is represented as a product image;

determining a color diversity associated with each outfit; or

determining whether each bounding box object includes more than one category type label.

3 . The computer-implemented method of claim 2 , wherein the product image is an image that consists of the visual representation of the object and a neutral background.

4 . The computer-implemented method of claim 1 , wherein each of the plurality of outfits includes a plurality of bounding box objects and the plurality of bounding box objects includes three or more category type labels.

5 . A computing system, comprising:

one or more processors; and

a memory storing program instructions that, when executed by the one or more processors, cause the one or more processors to at least:

generate a training dataset that includes a plurality of objects;

train, using the training dataset to implement a triplet loss technique, a neural network that generates style embeddings and predicts complementary objects based on corresponding style embeddings that are representative of a style of the plurality of objects included in the training dataset, wherein the triplet loss technique includes:

providing a plurality of triplet inputs to the neural network;

evaluating an output generated by the neural network in response to each of the plurality of triplet inputs; and

updating the neural network based at least in part on the evaluation of the outputs;

obtain an image including a visual representation of a query object;

provide the query object to the trained neural network;

determine, using the trained neural network, an embedding vector for the query object that is representative of the query object;

determine, using the trained neural network, a transformation of the embedding vector for the query object to a style embedding vector for the query object that represents a style of the query object, wherein the transformation includes performing at least one of a linear transformation or application of an activation function on the embedding vector to generate the style embedding vector;

identify, based at least in part on distances between the style embedding vector for the query object and a plurality of style embedding vectors associated with a corpus of objects, at least one complementary object from the corpus of objects; and

provide, for presentation on a client device, the at least one complementary object.

6 . The computing system of claim 5 , wherein the plurality of style embedding vectors represents a respective style of each object in the corpus of objects.

7 . The computing system of claim 6 , wherein identification of the at least one complementary object is based at least in part on a respective distance between the respective style embedding vector of the at least one complementary object and the style embedding vector of the query object.

8 . The computing system of claim 5 , wherein the program instructions that, when executed by the one or more processors, further cause the one or more processors to at least:

identify a product content item associated with the query object, wherein the product content item includes a metadata associated with the query object; and

provide the product content item to the trained neural network to identify the at least one complementary object.

9 . The computing system of claim 5 , wherein each object in the corpus of objects includes a respective category type label associated with each object, and wherein the program instructions that, when executed by the one or more processors, further cause the one or more processors to at least:

obtain a target category type label; and

identify the at least one complementary object based at least in part on the target category type label.

10 . The computing system of claim 9 , wherein the category type label includes at least one of:

a shirt;

a jacket;

a coat;

a skirt;

a pant;

a jewelry object;

a hat;

a bag;

an accessory; or

a shoe.

11 . The computing system of claim 5 , wherein the at least one complementary object includes a plurality of complementary objects that form a complementary ensemble.

12 . The computing system of claim 5 , wherein the query object includes at least one of:

a object;

a decor object;

a landscaping object; or

an event decoration object.

13 . The computing system of claim 5 , wherein the program instructions that, when executed by the one or more processors, further cause the one or more processors to at least preprocess the image to isolate the query object.

14 . The computing system of claim 5 , wherein a category type label associated with the at least one complementary object is different from a second category type label associated with the query object.

15 . A computer-implemented method, comprising:

obtaining a curated dataset presenting a plurality of outfits, each of the plurality of outfits including a respective plurality of objects;

generating a training dataset from the respective plurality of objects, wherein generating the training dataset includes removing at least one object from the respective plurality of objects based on a color diversity of the at least one object;

training, using the training dataset to implement a triplet loss technique, a neural network to learn generating style embeddings and predict complementary objects based on corresponding style embeddings that are representative of a style of the respective plurality of objects included in the training dataset, wherein:

the triplet loss technique includes providing a plurality of triplet inputs to the neural network;

evaluating an output generated by the neural network in response to each of the plurality of triplet inputs; and

updating the neural network based at least in part on the outputs;

obtaining a query object;

generating an embedding vector representative of the query object;

determining, using the neural network, a style embedding vector for the query object, wherein the determining comprises transforming the embedding vector to a style embedding vector that represents a style of the query object;

identifying at least one complementary object based at least in part on the style embedding vector of the query object and a plurality of style embedding vectors associated with a corpus of objects; and

providing, for presentation on a client device, the at least one complementary object.

16 . The computer-implemented method of claim 15 , wherein each respective outfit includes at least three objects.

17 . The computer-implemented method of claim 16 , further comprising:

for each of the plurality of outfits, isolating each object into a bounding box object representative of the object, and wherein each bounding box object is provided as the training input to the neural network.

18 . The computer-implemented method of claim 15 , wherein at least one of the plurality of outfits is represented in a set of images.

19 . The computer-implemented method of claim 1 , wherein identifying the at least one complementary object includes:

determining a plurality of style clusters based on a plurality of distances between the plurality of style embeddings; and

determining the at least one complementary to include clustered objects of a first style cluster from the plurality of style clusters.

20 . The computer-implemented method of claim 15 , wherein the transformation includes at least one of a linear transformation or application of an activation function.

Assignments (2)
SECURITY INTEREST Recorded Apr 3, 2021
From: PINTEREST, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 055814/0273 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 1, 2020
From: LI, CHENYI; GU, KUNLONG; KIM, ERIC; ZHAI, ANDREW HUAN; ROSENBERG, CHARLES JOSEPH
To: PINTEREST, INC.
Reel/Frame 053104/0364 →
References Cited (6)
US 20190318405A1 · Hu · 2019 [cited by examiner]
US 20200090039A1 · Song · 2020 [cited by examiner]
Yamaguchi et al, “Retrieving Similar Styles to Parse Clothing”, 2015, IEEE Transactions on pattern analysis and machine intelligence, vol. 37, No. 5, pp. 1028-1040. (Year: 2015). [cited by examiner]
Liu et al, “Hi, Magic Closet, Tell Me What to Wear!”, 2012, MM '12: Proceedings of the 20th ACM international conference on Multimedia, pp. 619-628. (Year: 2012). [cited by examiner]
Manandhar et al, “Tiered Deep Similarity Search for Fashion”, 2018, Proceedings of the European Conference on Computer Vision (ECCV) Workshops, pp. 1-9. (Year: 2018). [cited by examiner]
Wang, “Towards color compatibility in fashion using machine learning”, 2019, Examensarbete, Avancerad Nivå, 30 HP Stockholm, Sverige 2019, all pages. (Year: 2019). [cited by examiner]