IP Library › Granted Patent US 12,682,277
Granted Patent B2
US 12,682,277 · App. 17/581,346 · Granted Jul 14, 2026

Temporal drift detection

Inventors: Nandini Ramanan (San Jose, CA); Claudionor Jose Nunes Coelho Junior (Redwood City, CA)
Assignee: Palo Alto Networks, Inc.
G06N20/00H04L63/1416
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,682,277
App. No.
17/581,346
Granted
Jul 14, 2026
Kind
B2
Abstract

The present application discloses a method, system, and computer system for determining whether to train a machine learning model. The method includes analyzing a set of data for temporal drift detection, determining that a resultant stationary series has changed from training data, and in response to determining that the resultant stationary series has changed, automatically updating the machine learning model, wherein the machine learning model is trained based at least in part on a set of training data.

Claims (56)

1 . A system, comprising:

one or more processors configured to:

obtain a stream of time-series data that is used by a machine learning model to detect network traffic anomalies;

iteratively analyze a current set of data selected from the stream in connection with detecting a temporal drift by:

processing the set of data to convert the set of data to stationary data;

removing a subset of the stationary data deemed trivial;

fitting a seasonal component of the stationary data to time series data using a boosted embeddings model;

removing seasonal data from the stationary data to obtain a resultant stationary series;

determining that a resultant stationary series has changed from training data based at least in part on a predefined threshold associated with contextual factors including one or more of time of day, network load and device configurations, wherein the threshold for determining drift is dynamically adjusted based at least in part on characteristics of the current set of data; and

in response to determining that the resultant stationary series has changed, automatically updating the machine learning model to obtain an updated machine learning model, wherein the machine learning model is trained based at least in part on a set of training data, and updating the machine learning model includes retraining the machine learning model based at least in part on the current set of data, and the machine learning model is retrained at least near real-time with respect to the detection of the temporal drift; and

deploy the updated machine learning model at a security service that is configured to use the machine learning model to detect network traffic anomalies; and

a memory coupled to the one or more processors and configured to provide the one or more processors with instructions.

2 . The system of claim 1 , wherein the one or more processors are further configured to:

train the machine learning model based at least in part on a set of training data.

3 . The system of claim 1 , wherein the one or more processors are further configured to:

receive the machine learning model.

4 . The system of claim 1 , wherein the one or more processors are further configured to:

dynamically update the machine learning model based on the temporal drift.

5 . The system of claim 4 , wherein the machine learning model is dynamically updated based on the temporal drift after a first period of time since a previous training of the machine learning model.

6 . The system of claim 4 , wherein the dynamically updated machine learning model is deployed to an enterprise security device or service.

7 . The system of claim 4 , wherein the machine learning model is not dynamically updated before detection of the temporal drift detection.

8 . The system of claim 1 , wherein the machine learning model is used in connection with detecting malicious traffic.

9 . The system of claim 1 , wherein the machine learning model is used in connection with detecting malicious domains.

10 . The system of claim 1 , wherein:

analyzing the set of data in connection with detecting the temporal drift comprises obtaining a set of time series data.

11 . The system of claim 1 , wherein the determining that the resultant stationary series has changed comprises:

determining that an extent of a difference between the resultant stationary series and the training data is greater than a preset change threshold.

12 . The system of claim 11 , wherein the training data comprises a previously resultant stationary series.

13 . The system of claim 11 , wherein the preset change threshold is three standard deviations.

14 . The system of claim 1 , wherein the boosted embeddings model fits the seasonal component by leveraging embeddings to learn seasonality or unknown cycles from multiple categorical time features including one or more of hour of day, day of week, month of year, and holiday indicators, and wherein the boosted embeddings model employs gradient boosting of deep models such that previous embeddings are frozen in each iteration while new embeddings are added to solve a residual model.

15 . The system of claim 1 , wherein determining that the resultant stationary series has changed from training data comprises computing a Z-score of the resultant stationary series with respect to the training data and determining that the Z-score exceeds the predefined threshold, and wherein the threshold is dynamically adjusted based at least in part on one or more of:

(a) variance or distribution characteristics of the current set of data;

(b) time of day or day of week at which the current set is obtained;

(c) current network load measured during the current set, and

(d) device configuration parameters associated with sources of the current set of data.

16 . The system of claim 1 , wherein the machine learning model is not automatically updated for drift before the determination that the resultant stationary series has changed.

17 . A method, comprising:

obtaining a stream of time-series data that is used by a machine learning model to detect network traffic anomalies;

iteratively analyze a current set of data selected from the stream in connection with detecting a temporal drift by:

processing the set of data to convert the set of data to stationary data;

removing a subset of the stationary data deemed trivial;

fitting a seasonal component of the stationary data to time series data using a boosted embeddings model;

removing seasonal data from the stationary data to obtain a resultant stationary series;

determining that a resultant stationary series has changed from training data based at least in part on a predefined threshold associated with contextual factors including one or more of time of day, network load and device configurations, wherein the threshold for determining drift is dynamically adjusted based at least in part on characteristics of the current set of data; and

in response to determining that the resultant stationary series has changed, automatically updating the machine learning model to obtain an updated machine learning model, wherein the machine learning model is trained based at least in part on a set of training data, and updating the machine learning model includes retraining the machine learning model based at least in part on the current set of data, and the machine learning model is retrained at least near real-time with respect to the detection of the temporal drift; and

deploying the updated machine learning model at a security service that uses the machine learning model to detect network traffic anomalies.

18 . A computer program product embodied in a non-transitory computer readable medium and comprising computer instructions for:

obtaining a stream of time-series data that is used by a machine learning model to detect network traffic anomalies;

iteratively analyze a current set of data selected from the stream in connection with detecting a temporal drift by:

processing the set of data to convert the set of data to stationary data;

removing a subset of the stationary data deemed trivial;

fitting a seasonal component of the stationary data to time series data using a boosted embeddings model;

removing seasonal data from the stationary data to obtain a resultant stationary series;

determining that a resultant stationary series has changed from training data based at least in part on a predefined threshold associated with contextual factors including one or more of time of day, network load and device configurations, wherein the threshold for determining drift is dynamically adjusted based at least in part on characteristics of the current set of data; and

in response to determining that the resultant stationary series has changed, automatically updating the machine learning model to obtain an updated machine learning model, wherein the machine learning model is trained based at least in part on a set of training data, and updating the machine learning model includes retraining the machine learning model in based at least in part on the current set of data, and the machine learning model is retrained at least near real-time with respect to the detection of the temporal drift; and

deploying the updated machine learning model at a security service that uses the machine learning model to detect network traffic anomalies.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 15, 2022
From: RAMANAN, NANDINI; NUNES COELHO JUNIOR, CLAUDIONOR JOSE
To: PALO ALTO NETWORKS, INC.
Reel/Frame 059266/0523 →
Continuity (2)
Provisional Application 63252767 · Oct 6, 2021
Related Publication 20230123157A1 · Apr 20, 2023
References Cited (22)
US 10599957B2 · Walters · 2020 [cited by examiner]
US 11165800B2 · Thampy · 2021 [cited by examiner]
US 20100030544A1 · Gopalan · 2010 [cited by examiner]
US 20170279698A1 · Sartran · 2017 [cited by examiner]
US 20180324199A1 · Crotinger · 2018 [cited by examiner]
US 20220188410A1 · Allahdadian · 2022 [cited by examiner]
US 20230093130A1 · Fenoglio · 2023 [cited by examiner]
Poghosyan, Amnak, et al. “An enterprise time series forecasting system for cloud applications using transfer learning.” Sensors 21.5 (2021): 1590. (Year: 2021). [cited by examiner]
Chowdhury Tondra, Farhana. “Investigation and forecasting drift component of a gas sensor.” (2021). (Year: 2021). [cited by examiner]
Tan, Guolin, et al. “Adaptive malicious URL detection: Learning in the presence of concept drifts.” 2018 17th IEEE International Conference on Trust, Security and Privacy in Computing and Communications/12th IEEE Intern… [cited by examiner]
Baier, Lucas, et al. “Switching scheme: a novel approach for handling incremental concept drift in real-world data sets.” arXiv preprint arXiv:2011.02738 (2020). (Year: 2020). [cited by examiner]
Poghosyan, Arnak, et al. “An enterprise time series forecasting system for cloud applications using transfer learning.” Sensors 21.5 (2021): 1590. (Year: 2021). [cited by examiner]
Pritzsche, Uwe. Benchmarking of classical and machine-learning algorithms (with special emphasis on bagging and boosting approaches) for time series forecasting. Diss. 2015. (Year: 2015). [cited by examiner]
Jia, Wenxiao, et al. “Integrating multiple data sources and learning models to predict infectious diseases in China.” AMIA Summits on Translational Science Proceedings 2019 (2019): 680. (Year: 2019). [cited by examiner]
Choi, Kukjin, et al. “Deep learning for anomaly detection in time-series data: Review, analysis, and guidelines.” IEEE access 9 (2021): 120043-120065. (Year: 2021). [cited by examiner]
Bernacki, Jarosław, and Grzegorz Kołaczek. “Anomaly detection in network traffic using selected methods of time series analysis.” International Journal of Computer Network and Information Security 7.9 (2015): 10-18. (Ye… [cited by examiner]
Karingula, Sankeerth Rao, et al. “Boosted Embeddings for Time Series Forecasting.” arXiv preprint arXiv:2104.04781v2 (2021). (Year: 2021). [cited by examiner]
Breck et al. Data Validation for Machine Learning. Proceedings of the 2nd SysML Conference, Palo Alto, CA, USA, 2019. [cited by applicant]
Brynjolfsson et al. What can machine learning do? Workforce implications. sciencemag.org. vol. 358, Issue 6370. Dec. 22, 2017. [cited by applicant]
Schelter et al. On Challenges in Machine Learning Model Management. IEEE. Bulletin of the IEEE. 2015. [cited by applicant]
Vartak et al. MODELDB: A System for Machine Learning Model Management. HILDA'16, Jun. 26, 2016, San Francisco, CA, USA. DOI: http://dx.doi.org/10.1145/2939502.2939516. [cited by applicant]
Webb et al. Machine Learning for User Modeling. User Modeling and User-Adapted Interaction 11: 19-29, 2001. (c) 2001 Kluwer Academic Publishers. (in revised form May 22, 2000). [cited by applicant]