IP Library Granted Patent US 12,468,738
Granted Patent B2
US 12,468,738 · App. 18/754,570 · Granted Nov 11, 2025

Multiple machine learning model anomaly detection framework

Inventors: Paul O'Hara (Dublin, IE); Ying Wu (Maynooth, IE); Malte Christian Kaufmann (Dublin, IE)
Assignee: BUSINESS OBJECTS SOFTWARE LTD
G06F16/285G06F16/2365
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,468,738
App. No.
18/754,570
Granted
Nov 11, 2025
Kind
B2
Abstract

Anomalies may be detected using a multiple machine learning model anomaly detection framework. A clustering model is trained using an unsupervised machine learning algorithm on a historical anomaly dataset. A plurality of clusters of records are determined by applying the historical anomaly dataset to the clustering model. Then it is determined whether each cluster of the plurality of clusters is an anomaly-type cluster or a normal-type cluster. The plurality of labels for the plurality of records are updated based on the particular record's cluster classification. Non-pure clusters are determined from among the plurality of clusters based on a purity threshold. A supervised machine learning model is trained for each of the non-pure clusters using the records in the given cluster and the labels for each of those records. Then, predictions of an anomaly are made using the clustering model and the supervised machine learning models.

Claims (69)

1 . A computer system, comprising:

one or more processors;

one or more machine-readable medium coupled to the one or more processors and storing computer program code comprising sets of instructions executable by the one or more processors to:

determine a plurality of clusters of records by applying a historical anomaly dataset to a trained clustering model for determining whether a particular record is normal or an anomaly;

determine whether each cluster of the plurality of clusters is an anomaly-type cluster or a normal-type cluster, the determination of the anomaly-type based on a number of anomaly records in a given cluster, the determination of the normal-type based on the number of normal records in the given cluster;

update a plurality of labels for each of a plurality of records based on a particular record's cluster classification being the anomaly-type or the normal-type;

determine one or more non-pure clusters from among the plurality of clusters based on comparing the plurality of labels in a particular cluster to a predetermined purity threshold;

obtain a new dataset comprising one or more new records;

identify the particular cluster of the plurality of clusters that each of the new records belongs to by applying the new dataset to the trained clustering model; and

predict whether the new records belonging to non-pure clusters are an anomaly by applying the new records to a trained supervised machine learning model for the corresponding non-pure cluster that they belong to.

2 . The computer system of claim 1 , wherein the computer program code further comprises sets of instructions executable by the one or more processors to:

reduce a dimensionality of the historical anomaly dataset using a feature projection algorithm to obtain a reduced dimensionality historical anomaly dataset, wherein a training of the trained clustering model used the reduced dimensionality historical anomaly dataset.

3 . The computer system of claim 1 , wherein the computer program code further comprises sets of instructions executable by the one or more processors to:

predict that the new records belonging to pure clusters are an anomaly if they belong to an anomaly-type cluster.

4 . The computer system of claim 1 , wherein the trained clustering model is trained using a labeled historical anomaly dataset comprising categorical data, and wherein the computer program code further comprises sets of instructions executable by the one or more processors to:

identify one or more categorical features in the categorical data;

build a categorical data encoder for each of the one or more categorical features; and

transform values of the categorical data into numerical values using the categorical data encoders.

5 . The computer system of claim 1 , wherein the trained clustering model is trained using a labeled historical anomaly dataset comprising numerical data, and wherein the computer program code further comprises sets of instructions executable by the one or more processors to:

identify one or more numerical features in the numerical data;

build a data standardizer for each of the one or more numerical features; and

transform values of the numerical data for each of numerical features to have a mean of zero and a variance of one.

6 . The computer system of claim 1 , wherein the computer program code further comprises sets of instructions executable by the one or more processors to:

derive engineered features for each of the one or more non-pure clusters.

7 . The computer system of claim 1 , wherein the trained clustering model is trained using a gaussian mixture modeling algorithm.

8 . A non-transitory computer-readable medium storing computer program code comprising sets of instructions to:

determine a plurality of clusters of records by applying a historical anomaly dataset to a trained clustering model for determining whether a particular record is normal or an anomaly;

determine whether each cluster of the plurality of clusters is an anomaly-type cluster or a normal-type cluster, the determination of the anomaly-type based on a number of anomaly records in a given cluster, the determination of the normal-type based on the number of normal records in the given cluster;

update a plurality of labels for each of a plurality of records based on a particular record's cluster classification being the anomaly-type or the normal-type;

determine one or more non-pure clusters from among the plurality of clusters based on comparing the plurality of labels in a particular cluster a predetermined purity threshold;

obtain a new dataset comprising one or more new records;

identify the particular cluster of the plurality of clusters that each of the new records belongs to by applying the new dataset to the trained clustering model; and

predict whether the new records belonging to non-pure clusters are an anomaly by applying the new records to a trained supervised machine learning model for the corresponding non-pure cluster that they belong to.

9 . The non-transitory computer-readable medium of claim 8 , wherein the computer program code further comprises sets of instructions to:

reduce a dimensionality of the historical anomaly dataset using a feature projection algorithm to obtain a reduced dimensionality historical anomaly dataset, wherein a training of the trained clustering model used the reduced dimensionality historical anomaly dataset.

10 . The non-transitory computer-readable medium of claim 8 , wherein the computer program code further comprises sets of instructions to:

predict that the new records belonging to pure clusters are an anomaly if they belong to an anomaly-type cluster.

11 . The non-transitory computer-readable medium of claim 8 , wherein the trained clustering model is trained using a labeled historical anomaly dataset comprising categorical data, and wherein the computer program code further comprises sets of instructions to:

identify one or more categorical features in the categorical data;

build a categorical data encoder for each of the one or more categorical features; and

transform values of the categorical data into numerical values using the categorical data encoders.

12 . The non-transitory computer-readable medium of claim 8 , wherein the trained clustering model is trained using a labeled historical anomaly dataset comprising numerical data, and wherein the computer program code further comprises sets of instructions to:

identify one or more numerical features in the numerical data;

build a data standardizer for each of the one or more numerical features; and

transform values of the numerical data for each of numerical features to have a mean of zero and a variance of one.

13 . The non-transitory computer-readable medium of claim 8 , wherein the computer program code further comprises sets of instructions to:

derive engineered features for each of the one or more non-pure clusters.

14 . The non-transitory computer-readable medium of claim 8 , wherein the trained clustering model is trained using a gaussian mixture modeling algorithm.

15 . A computer-implemented method, comprising:

determining a plurality of clusters of records by applying a historical anomaly dataset to a trained clustering model for determining whether a particular record is normal or an anomaly;

determining whether each cluster of the plurality of clusters is an anomaly-type cluster or a normal-type cluster, the determination of the anomaly-type based on a number of anomaly records in a given cluster, the determination of the normal-type based on the number of normal records in the given cluster;

updating a plurality of labels for each of a plurality of records based on a particular record's cluster classification being the anomaly-type or the normal-type;

determining one or more non-pure clusters from among the plurality of clusters based on comparing the plurality of labels in a particular cluster to a predetermined purity threshold;

obtaining a new dataset comprising one or more new records;

identifying the particular cluster of the plurality of clusters that each of the new records belongs to by applying the new dataset to the trained clustering model; and

predicting whether the new records belonging to non-pure clusters are an anomaly by applying the new records to a trained supervised machine learning model for the corresponding non-pure cluster that they belong to.

16 . The computer-implemented method of claim 15 , further comprising:

reducing a dimensionality of the historical anomaly dataset using a feature projection algorithm to obtain a reduced dimensionality historical anomaly dataset, wherein a training of the clustering model used the reduced dimensionality historical anomaly dataset.

17 . The computer-implemented method of claim 15 , further comprising:

predicting that the new records belonging to pure clusters are an anomaly if they belong to an anomaly-type cluster.

18 . The computer-implemented method of claim 15 , wherein the trained clustering model is trained using a labeled historical anomaly dataset comprising categorical data, the method further comprising:

identifying one or more categorical features in the categorical data;

building a categorical data encoder for each of the one or more categorical features; and

transforming values of the categorical data into numerical values using the categorical data encoders.

19 . The computer-implemented method of claim 15 , wherein the trained clustering model is trained using a labeled historical anomaly dataset comprising numerical data, the method further comprising:

identifying one or more numerical features in the numerical data;

building a data standardizer for each of the one or more numerical features; and

transforming values of the numerical data for each of numerical features to have a mean of zero and a variance of one.

20 . The computer-implemented method of claim 15 , wherein the trained clustering model is trained using a gaussian mixture modeling algorithm.

Assignments (2)
CHANGE OF NAME Recorded Jan 26, 2026
From: BUSINESS OBJECTS SOFTWARE LIMITED
To: SAP IRELAND LIMITED
Reel/Frame 074510/0354 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 2, 2024
From: O'HARA, PAUL; WU, YING; KAUFMANN, MALTE CHRISTIAN
To: BUSINESS OBJECTS SOFTWARE LTD
Reel/Frame 067895/0560 →
Continuity (2)
Continuation 18348143 · Jul 6, 2023
Related Publication 20250013668A1 · Jan 9, 2025
References Cited (22)
US 10742482B2 · Tellado · 2020 [cited by examiner]
US 11194691B2 · Dherange et al. · 2021 [cited by applicant]
US 12206691B2 · Kaul · 2025 [cited by examiner]
US 20140074796A1 · Akoglu · 2014 [cited by examiner]
US 20200210647A1 · Panuganty · 2020 [cited by examiner]
US 20210264306A1 · Baran Pouyan et al. · 2021 [cited by applicant]
US 20220036137A1 · Muselli · 2022 [cited by examiner]
US 20220253699A1 · Hoshen · 2022 [cited by examiner]
US 20220368696A1 · Karpovsky et al. · 2022 [cited by applicant]
US 20230195715A1 · Johannes et al. · 2023 [cited by applicant]
US 20230205193A1 · Lavrentyev et al. · 2023 [cited by applicant]
US 20230419402A1 · Ghelichi et al. · 2023 [cited by applicant]
US 20240152798A1 · Karpovsky · 2024 [cited by examiner]
WO 20200060544A1 · 2020 [cited by applicant]
Pu, Guo, et al., “A Hybrid Unsupervised Clustering-Based Anomaly Detection Method”, Tsinghua Science and Technology, vol. 6, No. 2, Apr. 2021, pp. 146-153. [cited by examiner]
Murphree, Jerry, “Machine Learning Anomaly Detection in Large Systems”, Autest 2016, Anaheim, CA, Sep. 12-15, 2016, 9 pages. [cited by examiner]
Yao, Haipeng, et al., “Chapter 3: Intelligent Network Awareness”, Developing Networks using Artificial Intelligence, Springer Nature Switzerland AG © 2019, pp. 31-83. [cited by examiner]
Ju, Hyunjun, et al., “PUMAD: Pu Metric learning for anomaly detection”, Information Sciences, vol. 523, Jun. 2020, pp. 167-183. [cited by examiner]
Ding, Xueying, et al., “From Explanation to Action: An End-to-End Human-in-the-Loop Framework for Anomaly Reasoning and Management”, arXiv, Cornell University Archive, document: arXiv:2304.03368v1 [cs.LG], Apr. 6, 2023,… [cited by examiner]
Macha, Meghanath, et al., “Explaining anomalies in groups characterizing subspace rules”, Data Mining and Knowledge Discovery, vol. 32, Springer Nature Link, Aug. 2018, pp. 1440-1480. [cited by examiner]
Omar, Salima, et al., “Machine Learning Techniques for Anomaly Detection: An Overview”, International Journal of Computer Applications, vol. 79, No. 2, Oct. 2013, pp. 33-41. [cited by applicant]
Baek, Sunhee, et al., “Clustering-based label estimation for network anomaly detection”, Digital Communications and Networks, vol. 7, Issue 1, Feb. 2021, pp. 37-44. [cited by applicant]