IP Library › Granted Patent US 12,333,176
Granted Patent B2
US 12,333,176 · App. 18/352,720 · Granted Jun 17, 2025

Systems and methods for supporting always-on applications featuring artificial intelligence models by populating parallel data domains

Inventors: Trijeet Sethi (McLean, VA); Muralikumar Venkatasubramaniam (Plano, TX)
Assignee: Capital One Services, LLC
G06F3/065G06F3/0626G06F3/067
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,333,176
App. No.
18/352,720
Granted
Jun 17, 2025
Kind
B2
Abstract

Systems and methods for a novel architecture to support always-on applications and/or models suffering drift in their results. The system may comprise one or more servers that are configured to track the historical behavior of incoming request data for a model and/or redirect the request as needed using parallel data domains. The one or more servers may maintain and update a catalog of potential data domains that partitions the historically received data. One partition may comprise data output from a current model. Another partition may comprise detected outliers in the data. In the case of drift, outliers, and/or anomalies in the incoming data, the system may return an error signal that causes data to be duplicated into a new data domain.

Claims (76)

1. A system for supporting always-on applications featuring artificial intelligence models by populating parallel data domains, the system comprising:

one or more processors; and

one or more non-transitory, computer-readable media comprising instructions recorded thereon that when executed on the one or more processors causes operations comprising:

receiving, from a first data stream, a first data input;

processing the first data input in a first model to generate a first data output;

determining, based on statistical analysis, whether the first data output corresponds to a first data domain or a second data domain;

in response to determining that the first data output corresponds to the first data domain, generating a second data output by duplicating the first data output;

adding the second data output to the first data domain;

determining, based on adding the second data output, a first size of the first data domain;

comparing the first size to a first threshold size to determine whether the first size corresponds to the first threshold size;

in response to determining that the first size corresponds to the first threshold size, retrieving a second model, wherein the second model is trained on a dataset from the first data domain; and

redirecting data from the first data stream to the second model.

2. A method for supporting always-on applications featuring artificial intelligence models by populating parallel data domains, the method comprising:

receiving a first data output from a first model;

determining, based on statistical analysis, whether the first data output corresponds to a first data domain or a second data domain;

in response to determining that the first data output corresponds to the first data domain, generating a second data output by duplicating the first data output;

adding the second data output to the first data domain;

determining, based on adding the second data output, a first size of the first data domain;

comparing the first size to a first threshold size to determine whether the first size corresponds to the first threshold size; and

in response to determining that the first size corresponds to the first threshold size, determining to deploy a second model by redirecting data from a first data stream to the second model.

3. The method of claim 2 , wherein determining whether the first data output corresponds to the first data domain or the second data domain further comprises:

determining a mean for a dataset output by the first model;

determining a number of standard deviations of the first data output from the mean; and

comparing the number of standard deviations to a threshold number of standard deviation to determine whether the first data output corresponds to the first data domain.

4. The method of claim 2 , wherein determining whether the first data output corresponds to the first data domain or the second data domain further comprises:

determining a median for a dataset output by the first model;

determining a median absolute deviation of the first data output; and

comparing the median absolute deviation to a threshold median absolute deviation to determine whether the first data output corresponds to the first data domain.

5. The method of claim 2 , wherein determining whether the first data output corresponds to the first data domain or the second data domain further comprises:

determining a distance of the first data output from a nearest neighboring data in a dataset output by the first model; and

comparing the distance to a threshold distance to determine whether the first data output corresponds to the first data domain.

6. The method of claim 2 , wherein determining whether the first data output corresponds to the first data domain or the second data domain further comprises:

determining a region for the first data output in a dataset output by the first model;

determining a data point density of the region; and

comparing the data point density to a threshold data point density to determine whether the first data output corresponds to the first data domain.

7. The method of claim 2 , wherein generating the second data output by duplicating the first data output further comprises:

receiving a write operation from a first server to generate the second data output; and

logging, by the first server, the write operation.

8. The method of claim 2 , wherein adding the second data output to the first data domain further comprises:

determining a first table in the first data domain; and

storing the second data output in the first table.

9. The method of claim 2 , wherein adding the second data output to the first data domain further comprises:

determining a first pointer location for the first data domain; and

storing the second data output based on the first pointer location.

10. The method of claim 2 , wherein determining the first size of the first data domain further comprises:

determining floating-point data corresponding to the second data output; and

determining the first size based on the floating-point data.

11. The method of claim 2 , wherein comparing the first size to the first threshold size to determine whether the first size corresponds to the first threshold size further comprises:

determining a model type of the first model; and

determining the first threshold size based on the model type.

12. The method of claim 2 , wherein comparing the first size to the first threshold size to determine whether the first size corresponds to the first threshold size further comprises:

determining an application using outputs from the first model; and

determining the first threshold size based on the application.

13. The method of claim 2 , wherein comparing the first size to the first threshold size to determine whether the first size corresponds to the first threshold size further comprises:

determining a time period for use of the first model; and

determining the first threshold size based on the time period.

14. The method of claim 2 , wherein determining to deploy the second model further comprises:

retrieving a dataset from the first data domain; and

retraining the first model using the dataset.

15. The method of claim 2 , wherein determining to deploy the second model further comprises:

retrieving the second model; and

validating the second model.

16. The method of claim 2 , wherein determining to deploy the second model further comprises:

determining that the first data stream provided a first data input, wherein the first data input is processed by the first model to generate the first data output.

17. The method of claim 2 , wherein generating the second data output by duplicating the first data output further comprises:

receiving a read operation from a first server to generate the second data output; and

logging, by the first server, the read operation.

18. The method of claim 2 , wherein determining whether the first data output corresponds to the first data domain or the second data domain further comprises:

determining a value based on a dataset output by the first model; and

determining whether the value corresponds to the first data domain.

19. The method of claim 2 , wherein determining whether the first data output corresponds to the first data domain or the second data domain further comprises:

retrieving a first value for the first data domain and a second value for the second data domain; and

comparing the first value and the second value to the first data output.

20. The method of claim 2 , wherein determining the first size of the first data domain further comprises:

determining data corresponding to the second data output; and

determining the first size based on the data.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 14, 2023
From: SETHI, TRIJEET; VENKATASUBRAMANIAM, MURALIKUMAR
To: CAPITAL ONE SERVICES, LLC
Reel/Frame 064262/0025 →
Continuity (1)
Related Publication 20250021257A1 · Jan 16, 2025
References Cited (4)
US 11977816B1 · Sepasi Ahoei · 2024 [cited by examiner]
US 20200261803A1 · Anderson · 2020 [cited by examiner]
US 20220301542A1 · Sung · 2022 [cited by examiner]
US 20230206898A1 · Stanton · 2023 [cited by examiner]