IP Library Granted Patent US 11,860,721
Granted Patent B2
US 11,860,721 · App. 17/380,763 · Granted Jan 2, 2024

Utilizing automatic labelling, prioritizing, and root cause analysis machine learning models and dependency graphs to determine recommendations for software products

Inventors: Ravindra Kabbinale (Bangalore, IN); Sherin Varghese (Bangalore, IN); Santhosh MV (Kasaragod, IN); Bhavana V Gudi (Bengaluru, IN); Sneha S. Shekar (Bangalore, IN); Shruthi Dhivakaran (Bengaluru, IN); Rajendra Prasad Tanniru (Basking Ridge, NJ); Aditi Kulkarni (Bangalore, IN); Vijeth Srinivas Hegde (Bangalore, IN); Koushik M. Vijayaraghavan (Chennai, IN)
Assignee: Accenture Global Solutions Limited
G06F11/079G06F11/0793G06F11/3466G06F11/3604G06F18/214G06N20/00
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 11,860,721
App. No.
17/380,763
Granted
Jan 2, 2024
Kind
B2
Abstract

A device may receive software data identifying current logs and events associated with software products utilized by an entity and may process the software data, with a machine learning model, to generate error severity scores for the software products. The machine learning model may be trained based on historical software data identifying events and logs associated with software products utilized by the entity and based on a combination of historical health scores, historical sentiment scores, and historical dissimilarity scores for the software products. The device may process the error severity scores, with a prioritization model, to generate prioritized error scores and may process the error severity scores and the prioritized error scores, with a root cause analysis model, to generate root cause data identifying root causes associated with the error severity scores. The device may perform one or more actions based on the root cause data.

Claims (71)

1. A method, comprising: receiving, by a device, historical software data identifying events and logs associated with software products utilized by an entity; processing, by the device, the historical software data, with a data labelling model, to generate historical health scores, historical sentiment scores, and historical dissimilarity scores for the software products; combining, by the device, the historical health scores, the historical sentiment scores, and the historical dissimilarity scores to determine historical error severity scores for the software products; automatically training, by the device, a machine learning model, with the historical software data and the historical error severity scores, to generate a trained machine learning model, wherein the training comprises: determining, based on supervised learning of the machine learning model and based on new input, a prediction; implementing a feedback loop to train the machine learning model; and determining whether the prediction satisfies a threshold level of accuracy, and wherein new historical software data is processed with the trained machine learning model instead of the data labeling model when the prediction satisfies the threshold level of accuracy; receiving, by the device, software data identifying current logs and events associated with software products utilized by the entity; processing, by the device, the software data, with the trained machine learning model, to generate error severity scores for the software products; processing, by the device, the error severity scores, with a prioritization model, to generate prioritized error scores; processing, by the device, the error severity scores and the prioritized error scores, with a root cause analysis model, to generate root cause data identifying root causes associated with the error severity scores; performing, by the device, one or more actions based on the root cause data; receiving, by the device, feedback via the feedback loop; and retraining, by the device and based on the feedback, the trained machine learning model.

2. The method of claim 1 , wherein processing the historical software data, with the data labelling model, to generate the historical health scores, the historical sentiment scores, and the historical dissimilarity scores comprises:

generating the historical health scores based on whether the software products are operational;

preprocessing the historical software data to generate preprocessed historical software data;

performing a sentiment analysis on the preprocessed historical software data to generate the historical sentiment scores; and

generating the historical dissimilarity scores based on comparing the logs associated with the software products.

3. The method of claim 2 , wherein preprocessing the historical software data to generate the preprocessed historical software data comprises one or more of:

performing tokenization on the historical software data to generate the preprocessed historical software data;

performing stop word removal on the historical software data to generate the preprocessed historical software data;

performing lemmatization on the historical software data to generate the preprocessed historical software data;

performing lowercasing on the historical software data to generate the preprocessed historical software data; or

performing regular expression on the historical software data to generate the preprocessed historical software data.

4. The method of claim 1 , wherein combining the historical health scores, the historical sentiment scores, and the historical dissimilarity scores to determine the historical error severity scores comprises:

adding the historical health scores, the historical sentiment scores, and the historical dissimilarity scores to determine the historical error severity scores.

5. The method of claim 1 , wherein combining the historical health scores, the historical sentiment scores, and the historical dissimilarity scores to determine the historical error severity scores comprises:

assigning weights to the historical health scores, the historical sentiment scores, and the historical dissimilarity to generate weighted scores; and

combining the weighted scores to determine the historical error severity scores.

6. The method of claim 1 , wherein each of the historical error severity scores is included in one of:

a first threshold severity range;

a second threshold severity range that is greater than the first threshold severity range; or

a third threshold severity range that is greater than the second threshold severity range.

7. The method of claim 1 , wherein the feedback is associated with training with the historical software data and the historical error severity scores.

8. A device, comprising: one or more memories; and one or more processors, coupled to the one or more memories, configured to: receive historical software data identifying logs and events associated with software products utilized by an entity; process the historical software data with a data labelling model to generate historical health scores, historical sentiment scores, and historical dissimilarity scores for the software products; train a machine learning model based on the historical software data and based on a combination of the historical health scores, the historical sentiment scores, and the historical dissimilarity scores, wherein the training comprises: determining, based on supervised learning of the machine learning model and based on new input, a prediction; implementing a feedback loop to train the machine learning model; and determining whether the prediction satisfies a threshold level of accuracy, and wherein new historical software data is processed with the trained machine learning model instead of the data labeling model when the prediction satisfies the threshold level of accuracy; receive software data identifying current logs and events associated with software products utilized by the entity; process the software data with the trained machine learning model to generate error severity scores associated with the software products; process the error severity scores, with a prioritization model, to generate prioritized error scores; process the error severity scores and the prioritized error scores, with a root cause analysis model, to generate root cause data identifying root causes associated with the error severity scores; perform one or more actions based on the root cause data; receive feedback via the feedback loop; and retrain, based on the feedback, the trained machine learning model.

9. The device of claim 8 , wherein the one or more processors, to process the software data, with the machine learning model, to generate the error severity scores for the software products, are configured to:

preprocess the software data to generate preprocessed software data;

perform feature extraction on the preprocessed software data to generate values associated with error words in the preprocessed software data; and

process the values associated with the error words, with a decision tree classifier model, to generate the error severity scores for the software products.

10. The device of claim 9 , wherein the one or more processors, to preprocess the software data to generate the preprocessed software data, are configured to one or more of:

perform tokenization on the software data to generate the preprocessed software data;

perform stop word removal on the software data to generate the preprocessed software data;

perform lemmatization on the software data to generate the preprocessed software data;

perform lowercasing on the software data to generate the preprocessed software data; or

perform regular expression on the software data to generate the preprocessed software data.

11. The device of claim 8 , wherein the one or more processors, to process the error severity scores, with the prioritization model, to generate the prioritized error scores, are configured to:

generate knowledge graphs for the software products; and

determine the prioritized error scores based on the knowledge graphs.

12. The device of claim 8 , wherein the one or more processors, to process the error severity scores and the prioritized error scores, with the root cause analysis model, to generate the root cause data identifying the root causes associated with the error severity scores, are configured to:

process training data with the root cause analysis model,

wherein the training data includes a knowledge graph and metrics associated with a root cause cluster; and

generate the root cause data based on processing the training data, the error severity scores, and the prioritized error scores with the root cause analysis model.

13. The device of claim 8 , wherein each of the root causes includes one or more of:

an infrastructure error associated with one of the software products,

a dependency error associated with one of the software products, or

an internal error associated with one of the software products.

14. The device of claim 8 , wherein the one or more processors, to perform the one or more actions based on the root cause data, are configured to one or more of:

generate and provide for display one or more inferences associated with one of the software products;

generate and provide for display one or more recommendations associated with one of the software products;

modify one of the software products based on the root cause data;

cause one of the software products to be disabled based on the root cause data;

cause one or more programmers to modify one of the software products based on the root cause data; or

retrain one or more of the machine learning model, the prioritization model, or the root cause analysis model based on the root cause data.

15. The device of claim 8 , wherein the feedback is associated with training with the historical software data.

16. A non-transitory computer-readable medium storing a set of instructions, the set of instructions comprising: one or more instructions that, when executed by one or more processors of a device, cause the device to: receive historical software data identifying events and logs associated with software products utilized by an entity; process the historical software data, with a data labelling model, to generate historical health scores, historical sentiment scores, and historical dissimilarity scores for the software products; combine the historical health scores, the historical sentiment scores, and the historical dissimilarity scores to determine historical error severity scores for the software products; automatically train a machine learning model, with the historical software data and the historical error severity scores, to generate a trained machine learning model, wherein the training comprises: determining, based on supervised learning of the machine learning model and based on new input, a prediction; implementing a feedback loop to train the machine learning model; and determining whether the prediction satisfies a threshold level of accuracy, and wherein new historical software data is processed with the trained machine learning model instead of the data labeling model when the prediction satisfies the threshold level of accuracy; receive software data identifying current logs and events associated with software products utilized by the entity; process the software data, with the trained machine learning model, to generate error severity scores for the software products; process the error severity scores, with a prioritization model, to generate prioritized error scores; process the error severity scores and the prioritized error scores, with a root cause analysis model, to generate root cause data identifying root causes associated with the error severity scores; generate, based on the root cause data, one or more recommendations associated with one of the software products; and provide the one or more recommendations for display; receive feedback via the feedback loop; and retrain, based on the feedback, the trained machine learning model.

17. The non-transitory computer-readable medium of claim 16 , wherein the one or more instructions, that cause the device to process the historical software data, with the data labelling model, to generate the historical health scores, the historical sentiment scores, and the historical dissimilarity scores, cause the device to:

generate the historical health scores based on whether the software products are operational;

preprocess the historical software data to generate preprocessed historical software data;

perform a sentiment analysis on the preprocessed historical software data to generate the historical sentiment scores; and

generate the historical dissimilarity scores based on comparing the logs associated with the software products.

18. The non-transitory computer-readable medium of claim 17 , wherein the one or more instructions, that cause the device to preprocess the historical software data to generate the preprocessed historical software data, cause the device to one or more of:

perform tokenization on the historical software data to generate the preprocessed historical software data;

perform stop word removal on the historical software data to generate the preprocessed historical software data;

perform lemmatization on the historical software data to generate the preprocessed historical software data;

perform lowercasing on the historical software data to generate the preprocessed historical software data; or

perform regular expression on the historical software data to generate the preprocessed historical software data.

19. The non-transitory computer-readable medium of claim 16 , wherein the one or more instructions, that cause the device to process the software data, with the trained machine learning model, to generate the error severity scores for the software products, cause the device to:

preprocess the software data to generate preprocessed software data;

perform feature extraction on the preprocessed software data to generate values associated with error words in the preprocessed software data; and

process the values associated with the error words, with a decision tree classifier model, to generate the error severity scores for the software products.

20. The non-transitory computer-readable medium of claim 16 , wherein the one or more instructions, that cause the device to process the error severity scores, with the prioritization model, to generate the prioritized error scores, cause the device to:

generate knowledge graphs for the software products; and

determine the prioritized error scores based on the knowledge graphs.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 20, 2021
From: PRASAD TANNIRU, RAJENDRA; KULKARNI, ADITI; SRINIVAS HEGDE, VIJETH; KABBINALE, RAVINDRA; VARGHESE, SHERIN; MV, SANTHOSH; GUDI, BHAVANA V.; SHEKAR, SNEHA S.; VIJAYARAGHAVAN, KOUSHIK M.; DHIVAKARAN, SHRUTHI
To: ACCENTURE GLOBAL SOLUTIONS LIMITED
Reel/Frame 056919/0564 →
Continuity (1)
Related Publication 20230021373A1 · Jan 26, 2023
Cited By (1)
US 12,531,773