IP Library Granted Patent US 12,568,099
Granted Patent B2
US 12,568,099 · App. 18/235,213 · Granted Mar 3, 2026

Finding anomalous patterns

Inventors: Rachel Allen (Arlington, VA); Gorkem Batmaz (Cambridge, GB); Michael Demoret (Denver, CO); Ryan Kraus (Cumming, GA); Hsin Chen (San Jose, CA); Bartley Richardson (Alexandria, VA)
Assignee: NVIDIA Corporation
H04L63/1425H04L63/102H04L63/104
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,568,099
App. No.
18/235,213
Granted
Mar 3, 2026
Kind
B2
Abstract

Technologies for generating a set of models for each account, where each model is a fine-grained, unsupervised behavior model trained for each user to monitor and detect anomalous patterns are described. An unsupervised training pipeline can generate user models, each being associated with one of multiple accounts and is trained to detect an anomalous pattern using feature data associated with the one account. Each account is associated with at least one of a user, a machine, or a service. An inference pipeline can detect a first anomalous pattern in first data associated with a first account using a first user model. The inference pipeline can detect a second anomalous pattern in second data associated with a second account using a second user model.

Claims (97)

1 . A computing system for detection of anomalous patterns comprising:

one or more memory devices to store instructions of an application framework comprising a digital fingerprinting (DFP) workflow with a reference architecture comprising an unsupervised training pipeline and an inference pipeline;

one or more processing devices operatively coupled to the one or more memory devices, the one or more processing devices to execute the instructions to perform the following operations, wherein the DFP workflow further comprises a set of scripts, a set of tunable parameters to customize the DFP workflow, and a shared model store:

identify, using the set of scripts, a data source comprising data items for a plurality of accounts, each account associated with at least one of a user, a machine, or a service;

extract, by the unsupervised training pipeline from the data source, feature data according to at least one of the set of tunable parameters;

generate, by the unsupervised training pipeline, a plurality of user models, wherein each of the plurality of user models is associated with one of the plurality of accounts and is trained to detect an anomalous pattern using the extracted feature data associated with the one account, wherein the plurality of user models are stored in the shared model store, and wherein a first user model associated with a first account of the plurality of accounts is retrievable from the shared model store by the inference pipeline;

detect, by the inference pipeline, a first anomalous pattern in first data associated with the first account using the first user model; and

detect, by the inference pipeline, a second anomalous pattern in second data associated with a second account of the plurality of accounts using a second user model of the plurality of user models.

2 . The computing system of claim 1 , wherein the operations further comprise:

train, by the unsupervised training pipeline, the plurality of user models;

identify, from the data source, one or more additional data items associated with the first account of the plurality of accounts;

extract, by the inference pipeline from the data source, second feature data for each of the one or more additional data items;

retrieve, from the shared model store using the inference pipeline, the first user model associated with the first account;

generate, by the inference pipeline using the first user model, an anomaly score for each of the one or more additional data items; and

detect, by the inference pipeline, the first anomalous pattern using the anomaly score for each of the one or more additional data items.

3 . The computing system of claim 2 , wherein the operations further comprise:

identify, from the data source, one or more additional data items associated with the second account;

extract, by the inference pipeline from the data source, third feature data for each of the one or more additional data items associated with the second account;

retrieve, from the shared model store using the inference pipeline, the second user model associated with the second account;

generate, by the inference pipeline using the second user model, an anomaly score for each of the one or more additional data items associated with the second account; and

detect, by the inference pipeline, the second anomalous pattern using the anomaly score for each of the one or more additional data items associated with the second account.

4 . The computing system of claim 2 , wherein the operations further comprise:

train, by the unsupervised training pipeline, an organization model, wherein the organization model is associated with a group of accounts of the plurality of accounts and is trained using the first feature data associated with the group of accounts;

store the organization model in the shared model store;

identify, from the data source, one or more additional data items associated with a third account of the plurality of accounts;

extract, by the inference pipeline from the data source, third feature data for each of the one or more additional data items associated with the third account;

determine that the shared model store does not store a user model associated with the third account;

determine that the third account is associated with the group of accounts;

retrieve, from the shared model store using the inference pipeline, the organization model being associated with the group of accounts;

generate, by the inference pipeline using the organization model, an anomaly score for each of the one or more additional data items associated with the third account; and

detect, by the inference pipeline, an anomalous pattern using the anomaly score for each of the one or more additional data items associated with the third account.

5 . The computing system of claim 2 , wherein the operations further comprise:

train, by the unsupervised training pipeline, an enterprise model, wherein the enterprise model is associated with a group of organizations, each organization having a group of accounts of the plurality of accounts, wherein the enterprise model is trained using the feature data associated with the group of organizations;

store the enterprise model in the shared model store;

identify, from the data source, one or more additional data items associated with a third account of the plurality of accounts;

extract, from the data source by the inference pipeline, third feature data for each of the one or more additional data items associated with the third account;

determine that the shared model store does not store a user model associated with the third account;

determine that the third account is associated with the group of organizations;

retrieve, from the shared model store using the inference pipeline, the enterprise model being associated with the group of organizations;

generate, by the inference pipeline using the enterprise model, an anomaly score for each of the one or more additional data items associated with the third account; and

detect, by the inference pipeline, an anomalous pattern using the anomaly score for each of the one or more additional data items associated with the third account.

6 . The computing system of claim 2 , wherein the application framework comprises a plurality of parameters, wherein a first parameter of the plurality of parameters specifies a location of the data source, wherein a second parameter of the plurality of parameters specifies a set of one or more features comprising at least one of a categorical feature, a numerical feature, or a binary feature, and wherein a third parameter of the plurality of parameters specifies a threshold criterion for classifying an anomalous pattern.

7 . The computing system of claim 6 , wherein the categorical feature comprises at least one of an application display name, a client application type, a username, a browser type, an operating system type, a result, a status failure reason, a risk event type, an Internet Protocol (IP) address, parsed subnet feature of IP address, a location, or a phone number.

8 . The computing system of claim 6 , wherein the numerical feature comprises at least one of a log count, a location increment, an increment of unique applications accessed in a period, time of day, or failure attempts.

9 . The computing system of claim 1 , wherein the unsupervised training pipeline comprises an autoencoder with an encoder to receive an input vector and generate a latent space representation of the input vector, a decoder to receive the latent space representation and generate a reconstructed input vector, wherein the unsupervised training pipeline is to train the autoencoder to minimize a reconstruction loss between the input vector and the reconstructed input vector to obtain a trained autoencoder, and wherein the inference pipeline is to use the trained autoencoder to generate a reconstruction loss value, wherein a reconstruction loss value that satisfies a threshold criterion indicates an anomalous pattern.

10 . The computing system of claim 9 , wherein the input vector comprises at least one or more of the following features: binary, numerical, or categorical.

11 . The computing system of claim 10 , wherein the operations further comprise:

determine a categorical cross-entropy (CCE) loss associated with the categorical feature;

determine a binary cross-entropy (BCE) loss associated with the binary feature; and

determine a mean squared error (MSE) loss associated with the numerical feature.

12 . A method for detection of anomalous patterns comprising:

identify, using a set of scripts of a digital fingerprinting (DFP) workflow, a data source comprising data items for a plurality of accounts, each account associated with at least one of a user, a machine, or a service, wherein the DFP workflow is associated with a reference architecture comprising an unsupervised training pipeline and an inference pipeline;

extracting, by the unsupervised training pipeline from the data source, feature data according to at least one of a set of tunable parameters to customize the DFP workflow;

generating, by the unsupervised training pipeline, a plurality of user models, wherein each of the plurality of user models is associated with one of the plurality of accounts and is trained to detect an anomalous pattern using the extracted feature data associated with the one account, wherein the plurality of user models are stored in a shared model store of the DFP workflow, and wherein a first user model associated with a first account of the plurality of accounts is retrievable from the shared model store by the inference pipeline;

detecting, by the inference pipeline, a first anomalous pattern in first data associated with the first account using the first user model; and

detecting, by the inference pipeline, a second anomalous pattern in second data associated with a second account of the plurality of accounts using a second user model of the plurality of user models.

13 . The method of claim 12 , further comprising:

training, by the unsupervised training pipeline, the plurality of user models;

identifying, from the data source, one or more additional data items associated with the first account of the plurality of accounts;

extracting, by the inference pipeline from the data source, second feature data for each of the one or more additional data items;

retrieving, from the shared model store using the inference pipeline, the first user model associated with the first account;

generating, by the inference pipeline using the first user model, an anomaly score for each of the one or more additional data items; and

detecting, by the inference pipeline, the first anomalous pattern using the anomaly score for each of the one or more additional data items.

14 . The method of claim 12 , further comprising:

identifying, from the data source, one or more additional data items associated with the second account;

extracting, by the inference pipeline from the data source, third feature data for each of the one or more additional data items associated with the second account;

retrieving, from the shared model store using the inference pipeline, the second user model associated with the second account;

generating, by the inference pipeline using the second user model, an anomaly score for each of the one or more additional data items associated with the second account; and

detecting, by the inference pipeline, the second anomalous pattern using the anomaly score for each of the one or more additional data items associated with the second account.

15 . The method of claim 12 , further comprising:

receiving an input vector at an autoencoder of the unsupervised training pipeline;

generating a latent space representation of the input vector;

generating a reconstructed input vector based on the latent space representation; and

training the autoencoder to minimize a reconstruction loss between the input vector and the reconstructed input vector to obtain a trained autoencoder, wherein detecting the first anomalous pattern comprises:

generating, using the trained autoencoder, a reconstruction loss value; and

detecting the first anomalous pattern responsive to the reconstruction loss value satisfying a threshold criterion.

16 . The method of claim 15 , wherein the input vector comprises at least one or more of the following features: binary, numerical, or categorical.

17 . The method of claim 16 , further comprising:

determining a categorical cross-entropy (CCE) loss associated with the categorical feature;

determining a binary cross-entropy (BCE) loss associated with the binary feature; and

determining a mean squared error (MSE) loss associated with the numerical feature.

18 . A computing system for detection of anomalous patterns comprising:

a memory device; and

a processing device operatively coupled to the memory device, the processing device to:

identify, using a set of scripts of a digital fingerprinting (DFP) workflow, a data source comprising data items for a plurality of accounts, each account associated with at least one of a user, a machine, or a service, wherein the DFP workflow is associated with a reference architecture comprising an unsupervised training pipeline and an inference pipeline;

extract, by the unsupervised training pipeline from the data source, feature data according to at least one of a set of tunable parameters to customize the DFP workflow;

generate, by the unsupervised training pipeline, a plurality of user models, wherein each of the plurality of user models is associated with one of the plurality of accounts and is trained to detect an anomalous pattern using the extracted feature data associated with the one account, wherein the plurality of user models are stored in a shared model store, and wherein a first user model associated with a first account of the plurality of accounts is retrievable from the shared model store by the inference pipeline;

detect, by the inference pipeline, a first anomalous pattern in first data associated with the first account using the first user model; and

detect, by the inference pipeline, a second anomalous pattern in second data associated with a second account of the plurality of accounts using a second user model of the plurality of user models.

19 . The computing system of claim 18 , wherein the processing device is further to:

train, by the unsupervised training pipeline, the plurality of user models.

20 . The computing system of claim 18 , wherein the processing device is further to:

identify, from the data source, one or more additional data items associated with the first account of the plurality of accounts;

extract, by the inference pipeline from the data source, second feature data for each of the one or more additional data items;

retrieve, from the shared model store using the inference pipeline, the first user model associated with the first account;

generate, by the inference pipeline using the first user model, an anomaly score for each of the one or more additional data items; and

detect, by the inference pipeline, the first anomalous pattern using the anomaly score for each of the one or more additional data items.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 17, 2023
From: ALLEN, RACHEL; BATMAZ, GORKEM; DEMORET, MICHAEL; KRAUS, RYAN; CHEN, HSIN; RICHARDSON, BARTLEY
To: NVIDIA CORPORATION
Reel/Frame 064627/0288 →
Continuity (2)
Provisional Application 63407424 · Sep 16, 2022
Related Publication 20240098106A1 · Mar 21, 2024
References Cited (14)
US 6453318B1 · Shiina et al. · 2002 [cited by applicant]
US 10410135B2 · Shumpert · 2019 [cited by examiner]
US 11930039B1 · Geethakumar et al. · 2024 [cited by applicant]
US 20170063897A1 · Muddu et al. · 2017 [cited by applicant]
US 20170063902A1 · Muddu et al. · 2017 [cited by applicant]
US 20170353477A1 · Faigon et al. · 2017 [cited by applicant]
US 20180288126A1 · Smart et al. · 2018 [cited by applicant]
US 20190260785A1 · Jenkinson · 2019 [cited by examiner]
US 20210049270A1 · Urmanov et al. · 2021 [cited by applicant]
US 20210184917A1 · Bharrat et al. · 2021 [cited by applicant]
WO WO2022212215A1 · 2022 [cited by examiner]
Extended European Search Report for European Application No. 23197316.5, mailed Feb. 14, 2024, 12 Pages. [cited by applicant]
Extended European Search Report for European Application No. 23197488.2, mailed Feb. 14, 2024, 10 Pages. [cited by applicant]
Nv-morpheus / morpheus-visualizations, https://github.com/nv-morpheus/morpheus-visualizations, retrieved on Aug. 17, 2023. [cited by applicant]