IP Library › Granted Patent US 11,593,406
Granted Patent B2
US 11,593,406 · App. 17/201,562 · Granted Feb 28, 2023

Dynamic search parameter modification

Inventors: Vivek Ranga Rao (McLean, VA); Shenpei Wu (McLean, VA); Aparna Keshavamurthy (McLean, VA); Madhu Sai Saranya Kachireddy (McLean, VA); Coty Kurtz (McLean, VA); Shailesh Kurdekar (McLean, VA); Krishnakumar Ramamurthy (McLean, VA); Prathyusha Ganta (McLean, VA); Indulekha Ghandikota (McLean, VA); Vishalvikrant Singh (McLean, VA); Jesse Gutierrez (McLean, VA); Alexandra Loucks (McLean, VA)
Assignee: Capital One Services, LLC
G06F16/285G06F9/547G06F16/2358G06F16/2379G06N3/0445G06N3/0454G06N3/08
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,593,406
App. No.
17/201,562
Granted
Feb 28, 2023
Kind
B2
Abstract

In some embodiments, a number of inputs for a machine learning model may be dynamically scaled based on a record update. In some embodiments, an account record may be obtained based on an obtained record update, and a first model may determine a category value based on the account record. A graph that includes a node mapping to the account record may be obtained. In some embodiments, a threshold may be selected based on the category value, and the graph may be traversed via a set of paths to select nodes of the graph, such that the paths are based on the threshold. Record values associated with the set of nodes may be provided to a second model to determine whether the record update satisfies a set of criteria. If so, the record update may be stored in an aggregated set of record updates.

Claims (93)

1. A system for dynamically scaling the number of inputs for a machine learning model comprising one or more memory devices storing instructions and one or more processors configured to execute the instructions that, when executed, cause operations comprising:

detecting a record update related to an account;

obtaining, based on a record update, an account record that identifies the account, wherein the record update indicates the account record and at least one other account record;

providing an update history stored in the account record to a first machine learning model to assign a category value of a plurality of categories to the account record;

obtaining a records graph comprising a node mapping to the account record, wherein a graph edge associating adjacent nodes of the records graph indicates a set of updates identifying the adjacent nodes or a shared identifier between the adjacent nodes;

selecting a first path distance threshold of a plurality of path distance thresholds based on the category value, wherein the first path distance threshold is less than a second path distance threshold of the plurality of path distance thresholds;

traversing the records graph via a set of paths to select a set of nodes of the records graph, such that 1) each respective path of the set of paths begins at the node mapping to the account record and 2) a maximum path distance of the set of paths is less than or equal to the first path distance threshold;

determining a set of record values associated with the set of nodes, wherein each respective value of the set of record values is stored in a respective record identified by a respective node of the set of nodes;

providing the set of record values to a second machine learning model to determine whether the record update satisfies a set of criteria; and

storing the record update in an aggregated set of record updates in response to a determination that the record update satisfies the set of criteria.

2. The system of claim 1 , wherein the category value is a first category value, and wherein the record update is a first record update, and wherein the update history is a first update history, and wherein the account record is a first account record, and wherein the node mapping to the account record is a first node, and wherein the set of nodes is a first set of node, and wherein the set of record values is a first set of record values, and wherein the set of paths is a first set of paths, the operations further comprising:

detecting a second record update to a second user;

obtaining, based on the second record update, a second account record that identifies the second user;

providing a second update history stored in the second account record to the first machine learning model to assign a second category value of the plurality of categories to the second account record, wherein the second category value is different from the first category value;

selecting the second path distance threshold of the plurality of path distance thresholds based on the second category value;

traversing the records graph via a second set of paths to select a second set of nodes, such that 1) each respective path of the second set of paths begins at a second node mapping to the second account record, 2) a maximum path distance of the second set of paths is less than or equal to the second path distance threshold, and 3) a path distance between at least one node of the second set of nodes and the second node is greater than any path distance between any node of the first set of nodes and the first node;

determining a second set of record values associated with the second set of nodes; and

providing the second set of record values to the second machine learning model to determine whether the second record update satisfies the set of criteria.

3. The system of claim 1 , wherein the set of record values is a first set of record values, and wherein providing the set of record values to the second machine learning model comprises:

selecting a neural network model of a plurality of neural network models based on the category value, wherein the neural network model comprises a graph convolutional network and a recurrent neural network;

obtaining a subgraph, wherein the subgraph comprises identifiers of the set of nodes and a set of graph edges connecting the set of nodes;

obtaining an earlier set of record values associated with the set of nodes, wherein the earlier set of record values does not include a record value of the first set of record values; and

providing the subgraph, the first set of record values and the earlier set of record values to the neural network model to determine whether the record update satisfies the set of criteria.

4. The system of claim 2 , wherein determining the second category value comprises:

determining whether the second record update identifies a record already labeled with the second category value;

based on a determination that the second record update identifies the record already labeled with the second category value, providing the first machine learning model with an input value indicating that the second record update identifies the record already labeled with the second category value; and

assigning the second category value to the second account record.

5. A non-transitory, machine-readable medium storing instructions that, when executed by one or more processors, performs operations comprising:

detecting a record update;

retrieving a record associated with the record update;

determining a category value of a plurality of categories based on the record using a machine learning model, wherein the machine learning model comprises a feed forward neural network;

selecting a distance threshold of a plurality of distance thresholds based on the category value;

obtaining a data structure comprising a first set of records, wherein the first set of records comprises the record, wherein the record is a first record;

selecting a second set of records of the first set of records based on the record and the distance threshold by using associations encoded in the data structure, wherein each respective record of the second set of records is bounded by the distance threshold from the record, and wherein selecting the second set of records comprises:

selecting a second record that is indicated by an indicator as being associated with the first record, wherein the second record is indicated to have been updated with a score-changing record update that identifies the first record;

incrementing a counter by one; and

determining whether the counter satisfies the distance threshold;

determining a set of values associated with the second set of records, wherein each respective value of the set of values is associated with a respective record of the second set of records;

providing the set of values to a decision model to determine whether the record update satisfies a set of criteria; and

storing an indication that the record update satisfies the set of criteria based on a determination that the record update satisfies a set of criteria.

6. The non-transitory, machine-readable medium of claim 5 , wherein the record is a first record, the operations further comprising:

determining a distance between a second record and the first record in a feature space of the first record and the second record;

determining whether the distance satisfies the distance threshold; and

including the second record to the second set of records based on a determination the distance satisfies the distance threshold.

7. The non-transitory, machine-readable medium of claim 5 , wherein determining that the record update satisfies the set of criteria comprises:

determining a sum of at least some values of the set of values; and

determining whether the sum is less than a sum threshold, wherein satisfying the set of criteria comprises determining that the sum is less than the sum threshold.

8. The non-transitory, machine-readable medium of claim 5 , wherein the distance threshold is a first distance threshold, and wherein the record update is a first record update, and wherein the category value is a first category value, the operations further comprising:

retrieving a second record associated with a second record update;

determining a second category value of the plurality of categories based on data associated with the second record, and wherein the second category value is different form the first category value; selecting a second distance threshold of the plurality of distance thresholds based on the second category value;

selecting a third set of records of the first set of records based on the second record and the distance threshold, wherein each respective distance between the second record and a respective record of the third set of records is within the distance threshold;

determining a second set of values associated with the third set of records, wherein each respective value of the second set of values is associated with a respective record of the third set of records; and

providing the second set of values to the decision model to determine whether the second record update satisfies the set of criteria.

9. The non-transitory, machine-readable medium of claim 5 , wherein providing the set of values to the decision model comprises:

providing the set of values to a neural network of the decision model to determine a neural network result;

determining whether the neural network result satisfies a neural network result threshold; and

generating an alert based on a determination that the neural network result satisfies the neural network result threshold.

10. The non-transitory, machine-readable medium of claim 5 , wherein determining the category value comprises:

determining whether the record is flagged by any indicator of a set of indicators; and

determining that the category value based on a determination that the record is not flagged by any indicator of the set of indicators.

11. The non-transitory, machine-readable medium of claim 5 , the operations further comprising:

generating a message comprising the indication that the record update satisfies the set of criteria;

encrypting the message; and

sending the message to an application program interface (API) of a server.

12. The non-transitory, machine-readable medium of claim 7 , wherein, for each respective value of the set of values:

the respective value is associated with a respective record update;

the respective value indicates an increase in a score associated with the record in response to the respective record update; and

the operations comprise:

determining whether the respective record update has occurred after a time threshold; and

including the respective value in the set of values based on a determination that the respective record update has occurred after the time threshold.

13. The non-transitory, machine-readable medium of claim 8 , wherein:

determining the second category value comprises determining that a first user identified by the second record has had at least one record update identifying a second user;

the second user is identified by a third record;

the second user is indicated to have been update with a plurality of record updates that also identify a third user within a duration threshold; and

a count of the plurality of record updates is greater than a count threshold.

14. A method comprising:

detecting a record update associated with a first record;

obtaining a first set of records that are associated with each other in a data structure, wherein the first set of records comprises the first record;

determining a distance threshold based on record values stored in association with the first record using a machine learning model, wherein determining the distance threshold comprises:

determining whether a first value of the record values satisfies a second set of criteria; and

based on a determination that the first value satisfies the second set of criteria, modify the distance threshold from an initial value to a different value;

selecting a second set of records of the first set of records based on the first record and the distance threshold, wherein each respective record of the second set of records is within the distance threshold from the first record;

determining a set of values associated with the second set of records, wherein each respective value of the set of values is associated with a respective record of the second set of records;

providing the set of values to a decision model to determining whether the record update satisfies a set of criteria; and

storing an indication that the record update satisfies the set of criteria.

15. The method of claim 14 , wherein each respective record of the first set of records represents a respective record update, and wherein each respective record is associated with a set of identifiers corresponding with accounts participating in the respective record update.

16. The method of claim 14 , further comprising:

in response to a determination that the record update satisfies the set of criteria, updating a profile score associated with the first record; and

determining whether the profile score satisfies a score threshold after updating the profile score.

17. The method of claim 14 , further comprising:

accessing a first application program interface (API) of a first database to retrieve an aggregation record;

updating the aggregation record based on the record update; and

sending the aggregation record to a second API after updating the aggregation record.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 15, 2021
From: RAO, VIVEK RANGA; WU, SHENPEI; KESHAVAMURTHY, APARNA; KACHIREDDY, MADHU SAI SARANYA; KURTZ, COTY; KURDEKAR, SHAILESH; RAMAMURTHY, KRISHNAKUMAR; GANTA, PRATHYUSHA; GHANDIKOTA, INDULEKHA; SINGH, VISHALVIKRANT; GUTIERREZ, JESSE; LOUCKS, ALEXANDRA
To: CAPITAL ONE SERVICES, LLC
Reel/Frame 055593/0345 →
Continuity (1)
Related Publication 20220292117A1 · Sep 15, 2022
Cited By (1)
US 12,505,357