IP Library Granted Patent US 12682403
Granted Patent B2
US 12682403 · App. 17/970,294 · Granted Jul 14, 2026

Method and system for automated cost duplication detection and correction

Inventors: Gopan Sariga (Houston, TX); Jody Clement (Fulshear, TX)
Assignee: Revenew International L.L.C.
G06Q40/12G06F16/215
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 12682403
App. No.
17/970,294
Granted
Jul 14, 2026
Kind
B2
Abstract

Techniques for automated cost duplication detection and correction are described. In an example, a set of demand reports including data fields common to the set are received. A first subset of features are extracted from each demand report. A plurality of duplicate report groups are generated based on a comparison of the first subset of features extracted from each demand report. For each duplicate report group, a trained machine learning model is executed on a second subset of features extracted from the duplicate report group to generate a score representing a probability that the demand reports in the duplicate report group are valid duplicates. Depending on the score, an audit action sequence for the duplicate report group is generated.

Claims (83)

1 . A method comprising:

obtaining a plurality of validated report groups, wherein each validated report group of the plurality of validated report groups is associated with a respective classification of a plurality of classifications indicating whether or not a validated report group includes one or more duplicate demand reports;

extracting, from each validated report group of the plurality of validated report groups, a plurality of features;

selecting a subset of features from the plurality of features;

training a new machine learning model on the subset of features and the respective classification from each validated report group of the plurality of validated report groups, wherein, once trained, the new machine learning model comprises a predictive power value assigned by the new machine learning model to each feature of the subset of features;

determining that an accuracy of the new machine learning model does not meet or exceed a predefined accuracy threshold;

selecting, in response to determining that the accuracy of the new machine learning model does not meet or exceed the predefined accuracy threshold, a subsequent subset of features from the plurality of features by:

retaining first features from the subset of features that were assigned predictive power values above a predefined predictive power threshold by the new machine learning model; and

replacing second features from the subset of features that were assigned predictive power values below the predefined predictive power threshold by the new machine learning model;

training a subsequent machine learning model on the subsequent subset of features and the respective classification from each validated report group of the plurality of validated report groups;

determining that an accuracy of the subsequent machine learning model meets or exceeds the predefined accuracy threshold;

outputting, in response to determining that the accuracy of the subsequent machine learning model meets or exceeds the predefined accuracy threshold, the subsequent machine learning model as a final machine learning model;

identifying, in further response to determining that the accuracy of the subsequent machine learning model meets or exceeds the predefined accuracy threshold, the subsequent subset of features as a final subset of features;

receiving a set of demand reports, wherein each demand report of the set of demand reports includes data fields common to the set of demand reports;

extracting, from each demand report of the set of demand reports, a first subset of features from the data fields;

generating, from the set of demand reports, a plurality of duplicate report groups, wherein each duplicate report group of the plurality of duplicate report groups comprises two or more demand reports identified as being potential duplicates based on a comparison of the first subset of features extracted from the two or more demand reports; and

for each duplicate report group of the plurality of duplicate report groups;

extracting, from the two or more demand reports, a second subset of features corresponding to the final subset of features;

executing the final machine learning model on the second subset of features to generate a score representing a probability that the two or more demand reports are valid duplicates; and

generating, based on a determination that the score is greater than a predefined score threshold, an audit action sequence for the duplicate report group.

2 . The method of claim 1 , wherein the first subset of features are extracted from data fields comprising: a vendor identification data field, an invoice date data field, an invoice number data field, and an invoice amount data field.

3 . The method of claim 1 , wherein each demand report of the set of demand reports is associated with a respective vendor of a plurality of vendors, and wherein the method further comprises:

generating, for each respective vendor of the plurality of vendors, a respective vendor profile comprising a plurality of statistical features extracted from the demand reports associated with the respective vendor.

4 . The method of claim 3 , wherein each duplicate report group of the plurality of duplicate report groups is associated with a respective vendor of the plurality of vendors and the second subset of features comprises one or more deviations from the plurality of statistical features of the respective vendor profile.

5 . The method of claim 3 , wherein the plurality of statistical features comprises at least one statistical feature selected from the group consisting of: an average invoice length, an average invoice number, a prevalence of dashes in invoice numbers, and an average invoice number length.

6 . The method of claim 1 , further comprising:

training, for each iteration, the new machine learning model using a subset of the plurality of validated report groups; and

verifying, for each iteration, the accuracy of the new machine learning model using a remainder of the plurality of validated report groups and the associated plurality of classifications.

7 . A computer system including:

one or more processors; and

one or more memories storing computer-readable instructions that, upon execution by the one or more processors, configure the computer system to:

obtain a plurality of validated report groups, wherein each validated report group of the plurality of validated report groups is associated with a respective classification of a plurality of classifications indicating whether or not a validated report group includes one or more duplicate demand reports;

extract, from each validated report group of the plurality of validated report groups, a plurality of features;

select a subset of features from the plurality of features;

train a new machine learning model on the subset of features and the respective classification from each validated report group of the plurality of validated report groups, wherein, once trained, the new machine learning model comprises a predictive power value assigned by the new machine learning model to each feature of the subset of features;

determine that an accuracy of the new machine learning model does not meet or exceed a predefined accuracy threshold;

select, in response to determining that the accuracy of the new machine learning model does not meet or exceed the predefined accuracy threshold, a subsequent subset of features from the plurality of features by:

retaining first features from the subset of features that were assigned predictive power values above a predefined predictive power threshold by the new machine learning model; and

replacing second features from the subset of features that were assigned predictive power values below the predefined predictive power threshold by the new machine learning model;

train a subsequent machine learning model on the subsequent subset of features and the respective classification from each validated report group of the plurality of validated report groups;

determining that an accuracy of the subsequent machine learning model meets or exceeds the predefined accuracy threshold;

output, in response to determining that the accuracy of the subsequent machine learning model meets or exceeds the predefined accuracy threshold, the subsequent machine learning model as a final machine learning model;

identify, in further response to determining that the accuracy of the subsequent machine learning model meets or exceeds the predefined accuracy threshold, the subsequent subset of features as a final subset of features;

receive a set of demand reports, wherein each demand report of the set of demand reports includes data fields common to the set of demand reports;

extract, from each demand report of the set of demand reports, a first subset of features from the data fields;

generate, from the set of demand reports, a plurality of duplicate report groups, wherein each duplicate report group of the plurality of duplicate report groups comprises two or more demand reports identified as being potential duplicates based on a comparison of the first subset of features extracted from the two or more demand reports; and

for each duplicate report group of the plurality of duplicate report groups;

extract, from the two or more demand reports, a second subset of features corresponding to the final subset of features;

execute the final machine learning model on the second subset of features to generate a score representing a probability that the two or more demand reports are valid duplicates; and

generate, based on a determination that the score is greater than a predefined score threshold, an audit action sequence for the duplicate report group.

8 . The computer system of claim 7 , wherein the computer-readable instructions further configure the computer system to obtain the set of demand reports from one or more external computer systems.

9 . The computer system of claim 7 , wherein the audit action sequence includes one or more procedures to determine a duplicate amount represented by the duplicate report group, and the computer-readable instructions further configure the computer system to:

present, at a display communicatively coupled with the computer system, the one or more procedures to a user.

10 . The computer system of claim 7 , wherein the first subset of features are extracted from data fields comprising: a vendor identification data field, an invoice date data field, an invoice number data field, and an invoice amount data field.

11 . The computer system of claim 7 , wherein each demand report of the set of demand reports is associated with a respective vendor of a plurality of vendors, and the computer-readable instructions further configure the computer system to:

generate, for each respective vendor of the plurality of vendors, a respective vendor profile comprising a plurality of statistical features extracted from the demand reports associated with the respective vendor.

12 . The computer system of claim 11 , wherein each duplicate report group of the plurality of duplicate report groups is associated with a respective vendor of the plurality of vendors and the second subset of features comprises one or more deviations from the plurality of statistical features of the respective vendor profile.

13 . The computer system of claim 11 , wherein the plurality of statistical features comprises at least one statistical feature selected from the group consisting of: an average invoice length, an average invoice number, a prevalence of dashes in invoice numbers, and an average invoice number length.

14 . One or more non-transitory computer-readable storage media storing instructions that, upon execution on a computer system, cause the computer system to perform operations including:

obtaining a plurality of validated report groups, wherein each validated report group of the plurality of validated report groups is associated with a respective classification of a plurality of classifications indicating whether or not a validated report group includes one or more duplicate demand reports;

extracting, from each validated report group of the plurality of validated report groups, a plurality of features;

selecting a subset of features from the plurality of features;

training a new machine learning model on the subset of features and the respective classification from each validated report group of the plurality of validated report groups, wherein, once trained, the new machine learning model comprises a predictive power value assigned by the new machine learning model to each feature of the subset of features;

determining that an accuracy of the new machine learning model does not meet or exceed a predefined accuracy threshold;

selecting, in response to determining that the accuracy of the new machine learning model does not meet or exceed the predefined accuracy threshold, a subsequent subset of features from the plurality of features by:

retaining first features from the subset of features that were assigned predictive power values above a predefined predictive power threshold by the new machine learning model; and

replacing second features from the subset of features that were assigned predictive power values below the predefined predictive power threshold by the new machine learning model;

training a subsequent machine learning model on the subsequent subset of features and the respective classification from each validated report group of the plurality of validated report groups;

determining that an accuracy of the subsequent machine learning model meets or exceeds the predefined accuracy threshold;

outputting, in response to determining that the accuracy of the subsequent machine learning model meets or exceeds the predefined accuracy threshold, the subsequent machine learning model as a final machine learning model;

identifying, in further response to determining that the accuracy of the subsequent machine learning model meets or exceeds the predefined accuracy threshold, the subsequent subset of features as a final subset of features;

receiving a set of demand reports, wherein each demand report of the set of demand reports includes data fields common to the set of demand reports;

extracting, from each demand report of the set of demand reports, a first subset of features from the data fields;

generating, from the set of demand reports, a plurality of duplicate report groups, wherein each duplicate report group of the plurality of duplicate report groups comprises two or more demand reports identified as being potential duplicates based on a comparison of the first subset of features extracted from the two or more demand reports; and

for each duplicate report group of the plurality of duplicate report groups;

extracting, from the two or more demand reports, a second subset of features corresponding to the final subset of features;

executing the final machine learning model on the second subset of features to generate a score representing a probability that the two or more demand reports are valid duplicates; and

generating, based on a determination that the score is greater than a predefined score threshold, an audit action sequence for the duplicate report group.

15 . The one or more non-transitory computer-readable storage media of claim 14 , wherein the first subset of features are extracted from data fields comprising: a vendor identification data field, an invoice date data field, an invoice number data field, and an invoice amount data field.

16 . The one or more non-transitory computer-readable storage media of claim 14 , wherein each demand report of the set of demand reports is associated with a respective vendor of a plurality of vendors, and the operations further include:

generating, for each respective vendor of the plurality of vendors, a respective vendor profile comprising a plurality of statistical features extracted from the demand reports associated with the respective vendor.

17 . The one or more non-transitory computer-readable storage media of claim 16 , wherein each duplicate report group of the plurality of duplicate report groups is associated with a respective vendor of the plurality of vendors and the second subset of features comprises one or more deviations from the plurality of statistical features of the respective vendor profile.

18 . The one or more non-transitory computer-readable storage media of claim 16 , wherein the plurality of statistical features comprises at least one statistical feature selected from the group consisting of: an average invoice length, an average invoice number, a prevalence of dashes in invoice numbers, and an average invoice number length.