IP Library Granted Patent US 12664577
Granted Patent B2
US 12664577 · App. 18/405,623 · Granted Jun 23, 2026

Generating recommendations based on descriptors in a multi-dimensional search space

Inventors: Kate Key (Powhatan, VA); Vincent Pham (Seattle, WA); Jeremy Goodsitt (Champaign, IL); Austin Walters (Savoy, IL); Galen Rafferty (Mahomet, IL); Anh Truong (Champaign, IL)
Assignee: Capital One Services, LLC
G06Q30/0625
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 12664577
App. No.
18/405,623
Filed
Jan 5, 2024
Granted
Jun 23, 2026
Kind
B2
Art Unit
3689
USPC
705/26.62
Abstract

Aspects described herein may relate to methods, systems, and apparatuses that provide new capabilities for recommending purchases to a user based on a new descriptor referred to as “purchase embeddings.” The purchase embedding may include a tuple in a new multi-dimensional search space for describing and tracking purchases of goods and services. Recommendations may be based on a distance between tuples in the search space, which provides a measure of similarity between items represented by the tuples.

Claims (106)

1 . A method comprising:

retrieving, from one or more databases, a training set comprising a plurality of known tuples each paired with associated parameters;

applying a machine learning algorithm to the training set to generate a classifier model by automatically discovering non-linear relationships in high-dimensional parameter space through iterative optimization algorithms;

storing the classifier model in the one or more databases;

receiving a search query from a computing device associated with a user;

generating a search tuple based on the search query;

performing real-time vector similarity computations by calculating, based on the classifier model, distances between the search tuple and a plurality of tuples stored in the one or more databases using distance metrics, wherein the plurality of tuples comprises millions of tuples, wherein the plurality of tuples respectively represent a plurality of items, and wherein a measure of similarity between any two items of the plurality of items is indicated by a distance in a multi-dimensional search space between two tuples of the plurality of tuples respectively representing the two items;

receiving a geographic location of the computing device;

identifying, based on the calculated distances and the geographic location, a subset of tuples of the plurality of tuples within a predetermined distance to the search tuple;

deriving, from the subset of tuples, vendor locations where items represented by the subset of tuples are available;

generating a search result based on the subset of tuples, wherein the search result includes the vendor locations; and

transmitting the search result to the computing device.

2 . The method of claim 1 , wherein each of the calculated distances is:

an inner product,

a Euclidean distance,

a squared Euclidean distance,

a Manhattan distance,

a Minkowski distance,

a Chebyshev distance,

an edit distance, or

a Levenshtein distance.

3 . The method of claim 1 , wherein the vendor locations are within a geographic region that includes the geographic location.

4 . The method of claim 1 , further comprising:

determining, from the plurality of items, a first subset of items associated with the user;

determining, from the first subset of items, a user preference; and

generating the search query based on the user preference.

5 . The method of claim 1 , further comprising:

receiving purchase history parameters associated with the computing device;

filtering, based on the purchase history parameters, a set of tuples stored in the one or more databases; and

selecting, based on the filtering, the plurality of tuples from amongst the set of tuples for calculating the distances.

6 . The method for claim 1 , further comprising:

acquiring transaction records from remote computing devices, wherein the transaction records identify purchases of the plurality of items;

extracting, from the transaction records, purchase parameters characterizing the purchases of the plurality of items, wherein the purchase parameters are variables of a classifier model;

generating, using the classifier model and based on the purchase parameters, the plurality of tuples respectively representing the plurality of items;

compiling item records, each including a different one of the plurality of tuples; and

storing the item records in one or more databases.

7 . The method of claim 6 , further comprising:

retrieving, from the one or more databases, a training set comprising a plurality of known tuples each paired with associated parameters;

applying a machine learning algorithm to the training set to generate the classifier model; and

storing the classifier model in the one or more databases.

8 . The method of claim 6 , wherein compiling the item records comprises:

identifying, from the purchase parameters, a subset of the purchase parameters characterizing purchasers respectively of the items;

associating, with each of the plurality of tuples, one purchase parameter of the subset of the purchase parameters; and

including, in each of the item records, the one purchase parameter of the subset of the purchase parameters respectively associated with the tuple of the plurality of tuples in that item record.

9 . The method of claim 6 , further comprising:

including, in one of the item records, one of the purchase parameters that indicates:

a geographic region where an item represented by the tuple in the one of the item records is available for purchase, or

a purchaser preference related to the item represented by the tuple in the one of the item records.

10 . The method of claim 6 , wherein the transaction records comprise:

a purchase receipt acquired from a purchaser computing device,

a vendor sales record from a vendor computing device, or

a payment record from a payment service computing device.

11 . The method of claim 6 , wherein the purchase parameters comprise:

a parameter characterizing one of the items, or

characterizing transaction information for one of the purchases.

12 . The method of claim 6 , further comprising:

identifying, from the purchase parameters, information associated with a purchaser of one of the items;

querying, based on the information associated with the purchaser, the one or more databases for an auxiliary record;

receiving, based on querying, the auxiliary record, wherein the auxiliary record comprises one or more auxiliary parameters characterizing the purchaser; and

including one of the one or more auxiliary parameters in one of the item records comprising the tuple of the plurality of tuples representing the one of the items.

13 . A method comprising:

retrieving, from one or more databases, a training set comprising a plurality of known tuples each paired with associated parameters;

applying a machine learning algorithm to the training set to generate a classifier model,

generating, by the machine learning algorithm, embeddings by automatically discovering non-linear relationships in high-dimensional parameter space through iterative optimization algorithms;

storing the classifier model in the one or more databases;

identifying, based on the classifier model, a first tuple of a plurality of tuples stored in one or more databases, wherein each tuple of the plurality of tuples represents a respective item of a plurality of items in a multi-dimensional search space, wherein a distance between any two tuples in the multi-dimensional search space provides a measure of similarity between two items respectively represented by the two tuples, and wherein the first tuple is associated with a user;

receiving a location of a computing device associated with the user;

performing real-time vector similarity computations to identify, based on the location, a second tuple of the plurality of tuples within a predefined distance to the first tuple in the multi-dimensional search space using distance metrics, wherein the plurality of tuples comprises millions of tuples;

deriving, from the second tuple, one or more vendor locations where the respective item represented by the second tuple is available;

generating a recommendation to purchase the respective item represented by the second tuple, wherein the recommendation includes the one or more vendor locations; and

transmitting the recommendation to the computing device.

14 . The method of claim 13 , further comprising:

determining a vector relationship in the multi-dimensional search space between the first tuple and the second tuple; and

identifying the second tuple based on the vector relationship and the predefined distance.

15 . The method of claim 13 , further comprising:

acquiring, via a computer network, a plurality of purchase receipts from one or more computing devices associated with one or more purchasers, wherein the plurality of purchase receipts respectively identify a plurality of purchases from a plurality of vendors, each of the plurality of purchases being of one of the plurality of items;

extracting, from the plurality of purchase receipts, a plurality of parameters characterizing the plurality of purchases;

determining, based on the parameters, the plurality of tuples; and

storing the plurality of tuples in the one or more databases.

16 . The method of claim 15 , further comprising:

retrieving, from the one or more databases, a classifier model;

determining a subset of the plurality of parameters that are variables of the classifier model; and

calculating, using the classifier model and based on the subset of the parameters, the plurality of tuples.

17 . The method of claim 16 , further comprising:

retrieving, from the one or more databases, a training set comprising a plurality of known tuples each paired with associated parameters;

applying a machine learning algorithm to the training set to generate a classifier model; and

storing the classifier model in the one or more databases.

18 . A server comprising:

at least one computer processor; and

computer memory comprising computer-executable instructions that when executed by the at least one computer processor, cause the server to:

retrieve, from one or more databases, a training set comprising a plurality of known tuples each paired with associated parameters;

apply a machine learning algorithm to the training set to generate a classifier model that generates embeddings by automatically discovering non-linear relationships in high-dimensional parameter space through iterative optimization algorithms;

store the classifier model in the one or more databases;

receive a search query from a computing device associated with a user;

generate a search tuple based on the search query;

perform real-time vector similarity computations by calculating, based on the classifier model, distances between the search tuple and a plurality of tuples stored in the one or more databases using distance metrics, wherein the plurality of tuples respectively represent a plurality of items, and wherein a measure of similarity between any two items of the plurality of items is indicated by a distance in a multi-dimensional search space between two tuples of the plurality of tuples respectively representing the two items;

receive a geographic location of the computing device;

identify, based on the calculated distances and the geographic location, a subset of tuples of the plurality of tuples within a predetermined distance to the search tuple;

derive, from the subset of tuples, vendor locations where items represented by the subset of tuples are available;

generate a search result based on the subset of tuples, wherein the search result includes the vendor locations; and

transmit the search result to the computing device.

19 . The server of claim 18 , wherein the computer-executable instructions, when executed by the at least one computer processor, further cause the server to:

receive purchase history parameters associated with the computing device;

filter, based on the purchase history parameters, a set of tuples stored in the one or more databases; and

select, based on the filtering, the plurality of tuples from amongst the set of tuples for calculating the distances.

20 . The server of claim 18 , wherein the vendor locations are within a geographic region that includes the geographic location.