EP4639433A1 - Machine learning framework for detection of anomalies and insights for procurement system - Google Patents
Machine learning framework for detection of anomalies and insights for procurement systemInfo
- Publication number
- EP4639433A1 EP4639433A1 EP23906217.7A EP23906217A EP4639433A1 EP 4639433 A1 EP4639433 A1 EP 4639433A1 EP 23906217 A EP23906217 A EP 23906217A EP 4639433 A1 EP4639433 A1 EP 4639433A1
- Authority
- EP
- European Patent Office
- Prior art keywords
- procurement
- machine learning
- feature
- feature vector
- feature vectors
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/04—Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
- G06N20/10—Machine learning using kernel methods, e.g. support vector machines [SVM]
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
- G06N20/20—Ensemble learning
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N7/00—Computing arrangements based on specific mathematical models
- G06N7/01—Probabilistic graphical models, e.g. probabilistic networks
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/08—Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
- G06Q10/087—Inventory or stock management, e.g. order filling, procurement or balancing against orders
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/02—Marketing; Price estimation or determination; Fundraising
Definitions
- This disclosure generally relates to machine learning and, more specifically, to machine learning frameworks used to detect anomalies in procurement systems.
- this disclosure describes a machine learning (ML) framework that generates machine learning anomaly detection models for procurement.
- ML machine learning
- the framework supports a “many models” approach to machine learning anomaly detection (1) where a set of models are mapped in one-to- one correspondence to the categories of a preselected data attribute (e.g., material ID or material group ID) and (2) where each model generates predictions for the data to which it is assigned.
- Detections are delivered to a business solution that may include scoring recommendations that assist users with identifying the most critical detections and thus provide insights to the problem solution. Detections can reveal opportunities for a company such as to avoid or reduce cost.
- the terms anomaly detection and anomaly prediction are used interchangeably in this text.
- an anomaly is an abnormal feature that is either associated with an individual procurement transaction (e.g., a purchase price that deviates from the historical average) or associated with a collection of transactions (e.g., a divergent price trend relating to transactions for a specific material ID).
- Example scenarios include 1) the detection of price anomalies in procurement transactions and 2) the detection of price negotiation opportunities by comparison of transaction metrics to 3rd party indices.
- Scenarios may be drawn based on an object type to which observations are associated and for which predictions are generated by the model. For example, for transaction-level predictions, the object type may be a transaction ID. For material-level predictions, the object type may be a material ID.
- Anomalies are reviewed by users and the framework includes mechanisms for receiving feedback based on, for instance, anomalies that were incorrectly identified (false positives) or anomalies that were missed (false negatives).
- the feedback is used to retrain the machine learning model.
- the ML framework is used to assign labels to each object to mark positive and negative observations of the scenario.
- Labels are created via, for instance, one or more of rule-based algorithms, subject-matter expert review, or unsupervised learning models.
- the labels and vectors are merged to create the training data.
- a supervised learning algorithm may be trained with the training data and the resulting model deployed to the user feedback loop.
- the above ML-based framework approach offers advantages over rules-based approaches by simplifying algorithm monitoring and maintenance, enabling model revision via user feedback, and enabling more granular application of ML models (e.g., ML models as granular as by object type or by UnitedNations Standard Products and Services Code (UNSPSC)).
- ML models e.g., ML models as granular as by object type or by UnitedNations Standard Products and Services Code (UNSPSC)
- USPSC UnitedNations Standard Products and Services Code
- FIG. 1 is a workflow diagram illustrating one example approach for developing a machine learning model for detecting anomalies in a procurement system, in accordance with one or more techniques of the disclosure.
- FIG. 2 is a workflow diagram illustrating one example approach for updating the supervised machine learning model of FIG. 1, in accordance with one or more techniques of the disclosure
- FIG. 3 is a workflow diagram illustrating in greater detail one example approach for updating the supervised machine learning model of FIG. 2, in accordance with one or more techniques of the disclosure.
- FIG. 4 is a block diagram illustrating one example approach for developing a supervised manymodels machine learning model for detecting anomalies in a procurement system, in accordance with one or more techniques of the disclosure.
- FIG. 5 illustrates anomaly detection in an example of a price negotiating opportunity for a material purchased by an organization, in accordance with one or more techniques of the disclosure.
- FIG. 6 is a flowchart illustrating a method of training a machine learning model, in accordance with one or more aspects of the disclosure.
- FIGS. 7-11 show various applications of aspects of the present disclosure as it relates to price negotiation opportunities.
- FIGS. 12-18 are generally directed to various techniques related to both mle-based and machinelearning based particular price negotiation opportunities (“PNOs”) determinations.
- PNOs price negotiation opportunities
- Procurement systems are designed to apply consistent processes to product, supply, equipment and service procurement processes. Such systems often include automation of buyer processes to enable easy purchasing from suppliers, while constraining such purchases to, in some instance, customer-approved supplier lists.
- an anomaly is an abnormal feature that is either associated with an individual procurement transaction (e.g., a purchase price that deviates from the historical average) or associated with a collection of transactions (e.g., a divergent price trend relating to transactions for a specific material ID).
- a divergent price trend may indicate that the price does not reflect volume discounts, while a divergent downward trend may indicate a buying opportunity. Analysis of price vs.
- market trend may indicate that the price is lower than the market trend (providing a temporary buying opportunity) or that the price is higher than the market trend (providing an opportunity to renegotiate the price). It can be especially advantageous to detect anomalies automatically, providing quick insight into the market before the market can correct.
- detecting anomalies necessitates that a large volume of data be considered. For instance, as described in more detail below, historical data of many months (or even years) may be considered for a particular product, raw material, and the like, which may include many millions — or more — data points during the relevant time. Furthermore, and relatedly, the large amount and diverse nature of the data makes mles-based approaches cumbersome to design and challenging to maintain which can undermine the accuracy of systems implementing such approaches. For instance, machine learning (ML) based approaches can learn on multiple trends for the anomalous behavior. As a result, ML approaches provide additional advantages over more traditional rule-based anomaly detection. The ML framework described herein generates machine learning anomaly detection models for procurement.
- ML machine learning
- the framework supports a “many models” approach to machine learning anomaly detection where (1) a set of models are mapped in one-to-one correspondence to the categories of a preselected data attribute (e.g., material ID or material group ID) and (2) each model generates predictions for the data to which it is assigned. Consequently, it should be appreciated that the systems and techniques described herein are inextricably linked to the realm of computing technology generally, and ML approaches more specifically.
- a preselected data attribute e.g., material ID or material group ID
- Models created by the framework are trained to identify observations of predefined anomaly scenarios.
- Example scenarios include the detection of price anomalies in procurement transactions or the detection of price negotiation opportunities by comparison of transaction metrics to 3rd party indices. Included in the scenario definition is a description of the object type to which observations are associated and for which predictions are generated by the model (e.g., for transaction-level predictions or material-level predictions, the object type may be a transaction ID or material ID, respectively).
- a supervised machine learning model is used to detect anomalies in a procurement system.
- the process for training a model includes transforming transaction and/or index data into a feature vector for each respective object in a set of objects.
- An outcome label is created and assigned to each object to mark positive and negative observations of the scenario.
- Labels are created by one or more of the following methods: labeling by rule-based algorithms, manual labeling by subject-matter experts, or labeling by unsupervised learning models.
- the labels and vectors are merged to create the training data.
- a supervised learning algorithm is trained with the training data and the resulting model is deployed to the user feedback loop.
- the model creates a prediction during the user feedback loop for each applicable object in the dataset based on a feature vector that is calculated for the object. (In some example approaches, predictions are not generated for objects with insufficient or missing data.) [0023] Users review the predictions and respond with feedback. User-identified false anomalies (i.e., false positive identifications of anomalies) are then added to the model training data, and the model is retrained on the updated dataset. The updated model is then deployed to the feedback loop and replaces the existing model.
- false anomalies i.e., false positive identifications of anomalies
- FIG. 1 is a workflow diagram illustrating one example approach for developing a machine learning model for detecting anomalies in a procurement system, in accordance with one or more techniques of the disclosure.
- the workflow diagram shows a workflow for developing a supervised machine learning model for procurement anomaly detection.
- an initial ML model may be trained and deployed to generate predictions for every applicable object in the dataset.
- the initial ML model may be refined using one or more feedback loops, such as the feedback loop described in reference to FIG. 2.
- At 100 assign outcome labels to positive and negative observations of the anomaly scenario being modeled.
- the observations and labels are associated with objects within the dataset (e.g., a scenario for transaction anomaly detection would have transaction IDs as objects, and each object would be either a positive or negative observation of the scenario).
- Labels are derived from transactions and/or indices 105 (current implementation is using external indices) using one or more of the following methods: rule-based algorithms, subject-matter experts, and unsupervised machine learning detection.
- the related historical data is transformed into a feature vector with components that are designed to be predictive of the anomaly scenario.
- the components of each feature vector are transformed into the range of [0,1] by using a method of normalization (such as normalization described in more detail below).
- the normalization parameters that are calculated in this step are saved and used to normalize features that are extracted in the user feedback loop.
- the labels and corresponding feature vectors are then combined to create a labeled dataset for supervised learning.
- the labeled dataset is split, and one portion is used to train/configure the model to map input features to the correct labels.
- Model validation and testing is performed against the remaining labeled data.
- the model is then retrained on the larger labeled dataset. More testing is performed on the retrained model.
- the model is deployed to the user feedback loop where it makes anomaly predictions and learns from user-provided feedback.
- training the machine learning model includes identifying the importance of each feature in the feature vector to a specific decision (e.g., identifying the features that correlate most closely with positive detections). Such features may then be, for example, emphasized in the model.
- FIG. 2 is a workflow diagram illustrating one example approach for updating the supervised machine learning model of FIG. 1, in accordance with one or more techniques of the disclosure.
- purchasing transactions for materials in storage 205 may be used to derive a training set that can be used to train a machine learning model.
- a machine learning system extracts a feature vector for each object of a certain object type that is stored in storage 205 (200).
- a feature vector calculated for each object that received a label in step 100 is used to create the training data (102), in the example shown in FIG.
- the machine learning model has been deployed and requires a feature vector for each object in the dataset to generate predictions across the data for a given model.
- the normalization parameters calculated in 101 are used in 200 to normalize each feature vector.
- the model then processes the feature vectors to detect the positive observations of the scenario (201). Information about these observations is displayed in the business solution to provide users insights to potential opportunities for the company and, in some cases, to receive feedback when a user determines the result shown is a false negative or a false positive.
- the labels of feature vectors associated with false positives or negatives are modified (203) and the relabeled feature vectors are used in a revised training set to train a machine learning model to identify such anomalies (204).
- the trained machine learning model is updated (201) and again reviewed by one or more users (202), who identify false positives and false negatives.
- the vectors identified as false positives or false negatives are again labeled to reflect the correct identification, fed back into the training set (203) and used to deploy a revised supervised machine learning model based on the updated training set (204).
- FIG. 3 is a workflow diagram illustrating in greater detail one example approach for updating the supervised machine learning model of FIG. 2, in accordance with one or more techniques of the disclosure.
- the machine learning model is deployed in such a manner that it can be used to detect opportunities in the current and/or updated data.
- feature vectors 302 are extracted from the application data in storage 301 and are applied to the machine learning model 304 to detect opportunities in the data (e.g., anomalies that may represent opportunities for advantageous procurement arrangements). These opportunities are presented to the users (306).
- the users provide feedback on the opportunities, identifying, for instance, false positive indicators of opportunities (308).
- the indicated false positives are added to the training data and the revised training data is used to train a new supervised machine learning model (310).
- a procurement management system includes memory, a feature extraction module connected to the memory, a feature vector labeler connected to the memory, a machine learning modeler connected to the feature extraction module and to the feature vector labeler and a user interface connected to the machine learning modeler.
- the memory includes a first set of data, the data associated with procurements.
- the feature extraction module extracts a first set of procurement feature vectors from the first set of procurement data, each feature vector identifying one of the procurements and including features associated with the procurement.
- the feature vector labeler associates a label with each feature vector in the first set of feature vectors, the labels identifying procurement opportunities in the first set of feature vectors.
- the machine learning modeler includes a model trained with the first set of feature vectors while the user interface is configured to display, to a user, procurement opportunities identified in feature vectors by the model and of receiving, from the user, indications when a feature vector is miscategorized.
- the machine learning modeler then forms a retraining set of feature vectors based on the first set of feature vectors and the mischaracterized feature vectors and retrains the model.
- the procurement data is transaction data.
- the procurement data is based on an index of items.
- the feature vector labeler labels feature vectors based on one or more of pre-defined rules, review by subject matter experts, and unsupervised machine learning detection.
- the anomaly is a procurement opportunity.
- the procurement opportunity is a price divergence.
- the procurement opportunity is a price change.
- a many -models solution may be deployed to the user feedback loop.
- copies of the initial model are mapped in one-to-one correspondence to distinct categories of a preselected data attribute.
- the models may be mapped to distinct material IDs or to higher levels of a material classification hierarchy.
- the hierarchy may be, for instance, material, material group, sub-category, and category.
- the UNSPSC United Nations Standard Products and Services Code
- an industry-standardized classification is used for material group classification, while the categories and sub-categories are not part of a standardized taxonomy.
- the sub-categories include sub-categories such as Acrylic Film, Adhesives, Foams and Legal Services, while the categories include categories such as Chemicals, Packaging, Polymers, R&D, and Finance.
- Each model is deployed separately to the user feedback loop and generates predictions only for the ID to which it is mapped.
- FIG. 4 is a block diagram illustrating one example approach for developing a supervised manymodels machine learning model for detecting anomalies in a procurement system, in accordance with one or more techniques of the disclosure.
- the procurement system 402 includes an initial model 402.
- the initial model 402 is mapped in one-to-one correspondence to machine learning feedback loops 404 by distinct categories, sub-categories or other levels of aggregation.
- the models may be mapped to distinct material IDs or to higher levels of a material classification hierarchy.
- Model retraining occurs separately for each individual feedback loop 404, with training data consisting of the previous training data plus any user-identified false anomalies associated with the given model.
- one or more machine learning feedback loops 404 are assigned to distinct materials 404A, 404J, and 404N.
- one or more machine learning feedback loops 404 are assigned to distinct material groups 404A, 404J, and 404N consisting of distinct sets of materials.
- Other examples include deploying machine learning feedback loops for distinct sub-categories or categories also consisting of distinct sets of materials.
- Each feedback loop 404 is modified based on feedback (e.g., false anomalies) provided by users for its appropriate material or its appropriate materials that make up the material group, sub-category or category as appropriate for the specific approach.
- FIG. 5 illustrates anomaly detection in an example of a price negotiating opportunity for a material purchased by an organization.
- the lines 502, 504, and 506 are the monthly average unit price for the material, the six- month rolling average of the monthly quantity totals of the material, and a related external index, respectively.
- the region 508 on the chart denotes future months and contains the forecasted values of the external index.
- the monthly average unit price (as reflected by line 502) is trending up, and the external index (as reflected by line 506) is on a downtrend in the most recent months. The divergence between the price and index creates an opportunity for the company to negotiate a price reduction for this material and take advantage of the deflating market.
- training the machine learning model includes identifying the importance of each feature in the feature vector to a specific decision (e.g., identifying the features that correlate most closely with positive detections).
- FIG. 6 is a flowchart illustrating a method of training a machine learning model, in accordance with one or more aspects of the disclosure.
- a first set of procurement feature vectors is extracted from a first set of procurement transactions or indices, each feature vector identifying one or more of the procurement transactions and including features associated with the one or more procurement transactions (602).
- Each feature vector is labeled with a label indicating if the feature vector is a procurement anomaly (604).
- a machine learning model is then trained with the labeled feature vectors to identify procurement anomalies (606).
- a second set of procurement feature vectors is obtained from the second set of procurement transactions or indices.
- the second set of feature vectors is then applied to the trained machine learning model, wherein applying includes identifying procurement anomalies in the second set of second set of procurement feature vectors extracted from a second set of procurement transactions.
- the procurement anomalies identified are presented to a user and feedback from the user indicates whether any of the identifications are in error (610).
- the machine learning model is then retrained based on the feedback from the user (612).
- FIG. 6 does not show an iterative approach, such as the feedback loop discussed in the context of FIG. 2 above, it should be appreciated that systems configured to perform the method shown in FIG. 6 can do so in a manner that accommodates the feedback loop describe above and shown in other FIGS.
- systems configured to perform the method shown in FIG. 6 can do so in a manner that accommodates the feedback loop describe above and shown in other FIGS.
- FIGS. 7-11 show various applications of aspects of the present disclosure as it relates to a particular price negotiation opportunities (“PNOs”) example.
- PNOs price negotiation opportunities
- the machine learning approaches of the present disclosure provide a number of advantages, including simplifying algorithm monitoring and maintenance, enabling model self-correct through a user feedback loop, generating specialized models to different levels of data aggregation (e.g., UNSPSC), and initiating new models for additional insight scenarios.
- UNSPSC data aggregation
- the dynamic nature of the machine learning approaches results in improved accuracy for systems configured as described herein as the machine learning approaches, e.g., self-correct or initiate new models.
- FIG. 1 Turning now to FIG.
- a technique 700 is shown that can be performed by a computing system to transform the material purchasing transactions and external index data for a PNO candidate into the input features for the machine learning model.
- a PNO candidate can be defined by its combination of material ID (also known as a stock keeping unit (SKU)) and unit of measure (UoM).
- SKU stock keeping unit
- UoM unit of measure
- the types of features that are extracted include trend and correlation estimates. For instance, in the depicted example, external index data (702) and purchasing transactions (704) are accessed. Then, the external index data can be filtered and cleansed (706) while the purchasing transactions can be filtered, aggregated, and cleansed (708).
- filtering and cleansing the external index data may involve extracting indices associated with a SKU, whereas filtering, aggregating and cleansing the purchasing transactions may involve aggregating to an index time interval.
- the data processed in steps 806 and 808 can then be combined (710), and that combine data can be used to extract one or more features (712). For instance, at step 712 trends, counts, and correlations can be extracted from the combined data.
- FIG. 8 illustrates multiple techniques 700 being performed.
- systems can be configured to perform technique 800 across multiple SKUs and PNO candidates.
- the systems and techniques disclosed herein provide scalability and allow multiple techniques 700 to be performed at the same or substantially similar time.
- FIG. 9 illustrates a PNO machine learning pipeline 900 that takes advantage of the scalability illustrated in FIG. 8.
- there are six techniques 900a-900n depicted (although many more can be processed at the same or substantially similar time).
- the results of any one of technique 700 can be labeled with positive or negative PNO label based on one or more of pre-defined rules, review by subject matter experts, or unsupervised machine learning detection.
- techniques 900a and 900(n-l) are identified as having positive PNO labels while the results of techniques 900b, 900c, 900(n-2) and 900n are identified as having negative PNO labels.
- both the identified labels and the extracted features of respective techniques 900a-900n for each associated SKU are assembled into a training data set (902).
- Data normalization is then performed on training data set (904), resulting in the training data have ranges between 0 and 1.
- the normalized data is then provided to a ML model for training (906).
- the ML can process the data during training, and the trained ML generates predictions.
- the output is a ML model that predicts price negotiation opportunities based on PNO candidate features.
- the ML model is trained with supervised learning using the labeled training dataset.
- FIG. 10 depicts an example technique 1000 that can leverage trained ML models described above to further specialize the ML model for a particular type of data or portions of data.
- the output of FIG. 9 is the aggregate model that is trained on the full training dataset and is the seed that is distributed to the targets of specialization.
- the diagram shows specialization to UNSPSC. That is, the ML model can be produced for a specified UNSPSC.
- the ML model can be tailored to one or more specific segments, families, classes, or commodities within the UNSPSC taxonomy. As depicted, the ML can be generated for any number of particular UNSPSC uses (1002a-1002n).
- feature extraction and normalization can be performed for the specific specialization (1004a-1004n).
- the specialized ML models for the respective UNSPSC specializations can then be used to make predictions (1006a-1006n). Positive predictions can be presented in a user interface, any feedback pertaining to the positive predictions can be used to retrain or otherwise improve the ML model (1008a-1008n).
- FIG. 11 depicts an example use case 1100 utilizing aspects of the present disclosure.
- a new price negotiation opportunity scenario e.g., scenario X 1102
- scenario X 1102 a new price negotiation opportunity scenario
- both positive cases 1104a-l 104n and negative cases 1106a-l 106n can be identified.
- the labels of cases 1104a-l 104n and 1106a-1106n are then combined with features calculated for each SKU, and a machine learning model is trained on that data (1108).
- Model predictions generated by the initially trained ML model are brought to the quality assurance (QA) environment for testing (1110).
- QA quality assurance
- the model can be retrained and adjusted, yielding an improved ML model.
- the predictions of the updated model are then deployed to the production environment, where the ML may continue to learn based on the user feedback loop(s) (1112), such as the feedback loops described elsewhere in this specification.
- FIGS. 12-18 are generally directed to various techniques related to both rule-based and machinelearning based PNO determinations.
- a rules-based approach is first discussed, and then specifics of an ML implementation are described.
- FIGS. 12-14 demonstrate a rules-based approach
- FIGS. 15-18 describe various ML based approaches.
- the price negotiation opportunity detection algorithm uses rule-based pattern recognition to identify company-sourced materials for which the vendor pricing is (1) divergent to deflating market trends and/or (2) divergent to increasing quantity trends presenting opportunities for a company to negotiate price reductions for these materials.
- Detections are made at the level of Material ID and Unit of Measurement and are based on data features derived from multiple underlying data streams including: (a) material purchase price history, (b) material purchase quantity history, and (c) 3rd party indices that are associated with the material.
- PNO computes time series linear trends within the time frame defined as the recent past and computes the correlation coefficients between price and each index within a time frame preceding the recent past.
- PNO also computes a weighted opportunity score based upon the feature values and applies thresholding logic to determine the classification of the material. Feature weights and thresholds are manually tuned to configure the algorithm to detect the distinctive data patterns corresponding to different insight scenarios.
- Price/Quantity PNO occurs when the recent unit price trend is non-negative and the quantity trend is positive for a Material-UoM (e.g., Material ID + Unit of Measurement combination).
- a Material-UoM e.g., Material ID + Unit of Measurement combination
- units of measurement a given material can be bought in a range of different units of measurement (packs, eaches, kilograms, pounds, etc.) with each unit corresponding to a different price scale.
- the PNO algorithm operates on data grouped by Material ID and Unit of Measurement to ensure that the underlying transactions have a common price scale.
- the user interface may present a graph 1202 or other visual representation that presents transaction-based data for a material purchased by the company.
- the line 1204 of graph 1202 represents the average monthly unit price
- the bars are the total monthly purchased quantities for the material. This material was flagged by Price/Quantity PNO detection because the monthly quantity totals increased substantially relative to the historical level without a corresponding decrease in unit price presenting an opportunity for the company to negotiate a price reduction with the vendor.
- FIG. 13 illustrates depicts a technique 1300 that can be used to process external index data, which can be used for price/index based PNOs but is not necessarily required in other PNO implementations, such as price/quantity PNOs, which is described in more detail below.
- technique 1300 utilizes technique 700 and data normalization 1301 to generate one or more feature vectors 1302.
- the feature vector 1302 can be used to determine a PNO opportunity score 1304.
- FIG. 14 shows a technique 1400 for a rules-based approach for price/quantity PNO.
- a system implementing technique 1400 leverages certain steps already described. For instance, extracting purchasing transaction for materials (1402) and grouping data by a Material ID and UoM (1404) are one example of filtering, aggregating, and cleansing (708), described above. Stated differently, purchasing transactions can be extracted from the database and grouped on Material ID and UoM. Each resulting group of transactions is then processed by rest of technique 1400.
- a system implementing technique 1400 can perform feature extraction (712) described above. For instance, a system implementing technique 1400 can compute price trend and data duration for each Material ID-UoM group (1406). Thereafter a system implementing technique 1400 can apply preliminary filters to each Material ID-UoM group (1408).
- step 1406 can include one or more of recording the date stamp of the oldest transaction for each Material-ID UoM group, calculate an average monthly unit price time series for each Material-ID UoM group, compute 18-month price trend for each Material-ID UoM group using linear regression.
- step 1408 can include excluding one or more Material-ID UoM groups if there are fewer than three months of purchasing in said group during the previous 18 months, excluding one or more Material-ID UoM groups if the oldest transition is less than 18 months old, and excluding one or more Material-ID UoM groups if the trendline has a negative slope.
- a system implementing technique 1400 can calculate quantity feature vectors for each Material ID-UoM group (1410).
- the last step of feature extraction (712) is to calculate a quality feature vector for each remaining Material-ID UoM group (1410). For instance, according to particular implementations, a feature vector — comprising measurable characteristics about the PNO pattern — is calculated for each remaining Material-UoM. An input to the feature vector calculation is the 6-month rolling average of the monthly quantity totals, which smooths the month-to-month quantity fluctuations and is used for calculating quantity trends.
- recency of the Material-ID UoM spend (Material-ID UoMs with current month data receive the max score and Material-ID UoMs with older data receive lower scores); percentage change of the linear 6-month quantity trend (trend calculated on the rolling 6-month quantity average); percentage change of the linear 18-month quantity trend (trend calculated on the rolling 6-month quantity average); percentage change of max rolling quantity in the previous 6 months to the max from the prior period; number of months with increasing rolling quantity in the previous 18 months; and year-over-year quantity.
- a system implementing technique 1400 can perform data normalization for each feature vector (e.g., as describe above in connection with step 1301). For instance, according to particular implementations, at step 1412, each extracted feature vector can be normalized using Min-Max scaling. In one approach, a global minimum and maximum is determined for each feature vector component generated in step 1410 where global refers to the available materials in the dataset.
- a min-max scalar formula such as (V k i - V min4 )/ V ma x 4 ⁇ Vmin.i), where V k i is the / th component of the A J
- the feature vector can be normalized to the range of [0, 1] using the min- max scalar. For instance, a feature vector component with value 50 where the component’s global minimum and maximum are 0 and 100 would be normalized to a value of 0.5.
- Filters can then be applied to each Material-UoM feature vector using various filter thresholds (1414).
- Material-UoMs that do not satisfy one or more of the filters are excluded as their measurable characteristics do not indicate price negotiation opportunities.
- the filters are chosen in a process that may involve subjectmatter expert reviews of example data where the experts evaluate how algorithm outcomes change depending on different threshold values. Other implementations may use machine learning to define the threshold values. For instance, according to particular implementations, a filter value of Ti, where Ti could be the fdter for the first component of the feature vector such as the recency of the Material-UoM spend.
- fdter values for components of the feature are also possible (e.g., T 2 through T N ), and may correspond to changes in trends over a 6- or 18-month period and a maximum change, to name a few examples. These threshold values may be used as part of determining an opportunity score in step 1304, described above.
- computing an opportunity score for each remaining Material-UoM group can be done using pre-selected weights.
- a system implementing technique 1400 can identify and/or flag an opportunity with a score greater than a threshold value. For instance, according to one implementation, each Material-UoM group with an opportunity score over .6 can be flagged as a PNO opportunity (1416).
- model parameters such as feature weights and thresholds
- model training is “learned” (as described in more detail below) during model training, thus removing dependence on the SME for parameter tuning.
- outcome labeling i.e., user/SME feedback
- model accuracy can surpass rule-based accuracy as the model learns from SME feedback how to associate outcome labels with the input features.
- the model will react to a changing SME viewpoint on what constitutes a PNO by adjusting its parameters during training, whereas a rule-based algorithm is a static solution.
- the feature set can be larger and cover more characteristics about the data as the solution is no longer dependent on manual parameter tuning, which is time consuming and error prone.
- the model uses data to learn the input-to-output associations, which for certain problems would be difficult for a human to replicate.
- separate models can be trained to do PNO prediction for separate sets of Material-UoMs. The models can develop unique characteristics such as if the PNO signature varies between the Material-UoMs.
- the training data for the model can be generated using the one or more techniques described in more detail below.
- the data is first extracted for materials with PNO classifications/labels and processed by the feature extraction pipeline to create the feature vectors.
- the training dataset is then created by matching these feature vectors to the corresponding PNO labels, and the data are then provided to a ML algorithm for model training - a process in which the model learns to associate feature values to the correct outcome label.
- FIG. 15 shows an example workflow 1500 that creates the ML training data for price/quantity PNO detection.
- one or more feature vectors for one or more Material- UoM groups 1502a-1502n can be processed to extract time series features. Then, one or more features are provided to a machine learning approach to map input feature vectors to outcome labels (1504). In general, it is easier to use a large set of input features for a ML solution compared to a rule-based algorithm because the machine learning will determine the importance of each feature whereas with a rule-based algorithm the feature weights are manually determined.
- FIG. 16 depicts an example technique for ML training for price/quantity PNO detection.
- the training dataset created in FIG. 15 is used as an input to an ML algorithm (e.g., random forest as depicted in 1600) to train a machine learning model with parameter values estimated for price/quantity PNO detection.
- an ML algorithm e.g., random forest as depicted in 1600
- these certain ML algorithms can generate feature importance scores. These feature important scores measure how useful each feature is for model prediction.
- FIG. 17 depicts an example feedback loop 1700a-1700d that allows a user to provide feedback, which can be used to improve the underlying ML model.
- Box 1700a illustrates a process for generating ML predictions about the PNO-status of company-purchased materials.
- Inbox 1700b materials that are predicted to have PNO are displayed in an application with charting and tabular data.
- Box 1700c shows how users can review individual predictions using a rendered user interface. Using the user interface, a user can identify one or more false detections. Data pertaining to the user-identified false detections are appended to the model’s training dataset.
- the model is then retrained on the updated training dataset to allow the model to make self-corrections and learn from the user feedback. The newly retrained model is then deployed to app and replaces the previous version.
- the feedback loop 1700a-1700d can then repeat with the next iteration of the use of the ML model.
- the ML model can be used to identify PNO opportunities using a variety of metrics.
- spend recency can be used.
- spend recency is a metric that scores the age of the most recent spend for a material. Unit price history for a company -purchased material can be analyzed for each transaction for that material.
- Ij represents the indicator function for timeframe j (where the timeframe can be a month) and equals 1 if transactions are present or equals 0 if no transactions are present in the subscripted timeframe.
- the weight Wj for a timeframe j, increases in value from w ⁇ to w n . As such, the formula returns the maximum score if transactions are present in the current month, n, and lower scores whenever the latest transaction is from a previous month.
- the PNO algorithm may use linear regression to estimate trend on the 6-month moving average of the monthly quantity totals.
- FIG. 18 shows the monthly quantity totals for a material. The algorithm first transforms these bars into a 6- month moving average time series. The algorithm then fits two linear trendlines to the moving average time series - the first trend is fitted to the previous 6 months of the moving average, and the second is fitted to the previous 18 months of the moving average. The percentage changes across both trendlines are computed and saved as features, such as the percentage change of the linear 6-month quantity trend and the percentage change of the linear 18-month quantity trend. That said, it should be appreciated that systems and techniques disclosed herein may utilize different moving averages instead of the 6- and 18-month averages as described. By evaluating the ratio of the maximum of the quantity rolling average in the previous 6 months (or other designated period) to the maximum from the preceding months to assess the significance of the current quantity level relative to the historical levels that can be further used for PNO detection.
- processors including one or more microprocessors, digital signal processors (DSPs), application specific integrated circuits (ASICs), field programmable gate arrays (FPGAs), or any other equivalent integrated or discrete logic circuitry, as well as any combinations of such components.
- DSPs digital signal processors
- ASICs application specific integrated circuits
- FPGAs field programmable gate arrays
- processors may generally refer to any of the foregoing logic circuitry, alone or in combination with other logic circuitry, or any other equivalent circuitry.
- a control unit comprising hardware may also perform one or more of the techniques of this disclosure.
- Such hardware, software, and firmware may be implemented within the same device or within separate devices to support the various operations and functions described in this disclosure.
- any of the described units, modules or components may be implemented together or separately as discrete but interoperable logic devices. Depiction of different features as modules or units is intended to highlight different functional aspects and does not necessarily imply that such modules or units must be realized by separate hardware or software components. Rather, functionality associated with one or more modules or units may be performed by separate hardware or software components, or integrated within common or separate hardware or software components.
- Computer readable storage media may include random access memory (RAM), read only memory (ROM), programmable read only memory (PROM), erasable programmable read only memory (EPROM), electronically erasable programmable read only memory (EEPROM), flash memory, a hard disk, a CD-ROM, a floppy disk, a cassette, magnetic media, optical media, or other computer readable media.
- RAM random access memory
- ROM read only memory
- PROM programmable read only memory
- EPROM erasable programmable read only memory
- EEPROM electronically erasable programmable read only memory
- flash memory a hard disk, a CD-ROM, a floppy disk, a cassette, magnetic media, optical media, or other computer readable media.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Business, Economics & Management (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Strategic Management (AREA)
- Economics (AREA)
- Data Mining & Analysis (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Evolutionary Computation (AREA)
- Development Economics (AREA)
- Artificial Intelligence (AREA)
- Medical Informatics (AREA)
- Marketing (AREA)
- General Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- Finance (AREA)
- Accounting & Taxation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Entrepreneurship & Innovation (AREA)
- Game Theory and Decision Science (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Optimization (AREA)
- Mathematical Analysis (AREA)
- Computational Mathematics (AREA)
- Algebra (AREA)
- Probability & Statistics with Applications (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
Description
Claims
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US202263476287P | 2022-12-20 | 2022-12-20 | |
| PCT/IB2023/062901 WO2024134471A1 (en) | 2022-12-20 | 2023-12-19 | Machine learning framework for detection of anomalies and insights for procurement system |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| EP4639433A1 true EP4639433A1 (en) | 2025-10-29 |
Family
ID=91587806
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| EP23906217.7A Pending EP4639433A1 (en) | 2022-12-20 | 2023-12-19 | Machine learning framework for detection of anomalies and insights for procurement system |
Country Status (3)
| Country | Link |
|---|---|
| EP (1) | EP4639433A1 (en) |
| CN (1) | CN120344982A (en) |
| WO (1) | WO2024134471A1 (en) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN120746618A (en) * | 2025-06-30 | 2025-10-03 | 亿威盛半导体科技(上海)有限公司 | Automatic purchasing system and method based on artificial intelligence |
Family Cites Families (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| AU2012203348B2 (en) * | 2011-06-08 | 2013-11-07 | Accenture Global Services Limited | High-risk procurement analytics and scoring system |
| US20150242856A1 (en) * | 2014-02-21 | 2015-08-27 | International Business Machines Corporation | System and Method for Identifying Procurement Fraud/Risk |
| US11354671B2 (en) * | 2019-11-27 | 2022-06-07 | EMC IP Holding Company LLC | Fraud mitigation using one or more enhanced spatial features |
| US11734558B2 (en) * | 2020-06-12 | 2023-08-22 | Paypal, Inc. | Machine learning module training using input reconstruction techniques and unlabeled transactions |
| CN113590819B (en) * | 2021-06-30 | 2024-01-02 | 中山大学 | A large-scale category-level text classification method |
-
2023
- 2023-12-19 CN CN202380085189.6A patent/CN120344982A/en active Pending
- 2023-12-19 WO PCT/IB2023/062901 patent/WO2024134471A1/en not_active Ceased
- 2023-12-19 EP EP23906217.7A patent/EP4639433A1/en active Pending
Also Published As
| Publication number | Publication date |
|---|---|
| WO2024134471A1 (en) | 2024-06-27 |
| CN120344982A (en) | 2025-07-18 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US11720962B2 (en) | Systems and methods for generating gradient-boosted models with improved fairness | |
| US11250513B2 (en) | Computer implemented system for generating assurance related planning process and documents for an entity and method thereof | |
| US11037080B2 (en) | Operational process anomaly detection | |
| US10346926B2 (en) | Context search system | |
| US20190236497A1 (en) | System and method for automated model selection for key performance indicator forecasting | |
| Berthold et al. | Guide to intelligent data science | |
| JP7704444B2 (en) | Accelerated Intelligent Enterprise with Timely Vendor Spend Analysis | |
| US20150088606A1 (en) | Computer Implemented Tool and Method for Automating the Forecasting Process | |
| US20100169252A1 (en) | System and method for scalable cost-sensitive learning | |
| US20240144050A1 (en) | Stacked machine learning models for transaction categorization | |
| CN107133862A (en) | Dynamic produces the method and system of the detailed transaction payment experience of enhancing credit evaluation | |
| CN112950344A (en) | Data evaluation method and device, electronic equipment and storage medium | |
| Lee et al. | Extraction and visualization of industrial service portfolios by text mining of 10-K annual reports | |
| EP4639433A1 (en) | Machine learning framework for detection of anomalies and insights for procurement system | |
| CN118475919B (en) | Model verification based on sub-model performance | |
| US20250390477A1 (en) | Detecting data anomalies using artificial intelligence | |
| Yadav et al. | Managing and Assessing the Risk Management of Supply Chain Using the A-BiGRU-CNN Approach | |
| CN114049032A (en) | Method and device for evaluating data commodity, electronic equipment and computer readable storage medium | |
| CN118069912A (en) | Enterprise and policy information matching method, device, equipment and storage medium | |
| Viaene et al. | Cost‐sensitive learning and decision making for massachusetts pip claim fraud data | |
| Laitinen et al. | Why does an auditor not issue a going concern opinion for a failing company? Impact of financial risk, time to bankruptcy, and cognitive style | |
| Olson et al. | Data Mining Processes | |
| Hönel et al. | Activity-Based Detection of (Anti-) Patterns: An Embedded Case Study of the Fire Drill | |
| Hoggas et al. | AI-driven quality control techniques in manufacturing processes to enhance Six Sigma approach | |
| Shah | Logistic Regression: Definition, Use Cases, Implementation |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: THE INTERNATIONAL PUBLICATION HAS BEEN MADE |
|
| PUAI | Public reference made under article 153(3) epc to a published international application that has entered the european phase |
Free format text: ORIGINAL CODE: 0009012 |
|
| STAA | Information on the status of an ep patent application or granted ep patent |
Free format text: STATUS: REQUEST FOR EXAMINATION WAS MADE |
|
| 17P | Request for examination filed |
Effective date: 20250605 |
|
| AK | Designated contracting states |
Kind code of ref document: A1 Designated state(s): AL AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HR HU IE IS IT LI LT LU LV MC ME MK MT NL NO PL PT RO RS SE SI SK SM TR |
|
| DAV | Request for validation of the european patent (deleted) | ||
| DAX | Request for extension of the european patent (deleted) | ||
| REG | Reference to a national code |
Ref country code: DE Ref legal event code: R079 Free format text: PREVIOUS MAIN CLASS: G06N0020000000 Ipc: G06Q0010040000 |