Insight Mining Using Machine Learning
A metric predictor model for predicting values of a data metric is selected. The metric predictor model is trained using historical data related to the data metric. A predicted value of the data metric is obtained using the metric predictor model. A current value of the data metric is obtained using data other than the historical data. A difference between the predicted value and the current value is determined to meet a reporting criterion. In response to determining that the difference meets the reporting criterion, a notification descriptive of the difference is output.
1 . A method, comprising:
selecting a metric predictor model for predicting values of a data metric, the metric predictor model trained using historical data related to the data metric;
obtaining a predicted value of the data metric using the metric predictor model;
obtaining a current value of the data metric using data other than the historical data;
determining that a difference between the predicted value and the current value meets a reporting criterion; and
in response to determining that the difference meets the reporting criterion, outputting a notification descriptive of the difference.
2 . The method of claim 1 , wherein the metric predictor model is trained using the historical data related to the data metric by steps comprising:
generating time series data of the data metric using the historical data; and
obtaining the metric predictor model using the time series data.
3 . The method of claim 1 , wherein the data metric is a first data metric, further comprising:
receiving a second data metric;
training at least a subset of one or more models using historical data related to the second data metric;
determining that none of the trained at least the subset of the one or more models provides an expected prediction of the second data metric; and
outputting a notification indicating that predicting the second data metric using future data related to the second data metric will not be performed.
4 . The method of claim 1 , wherein the data metric is a first data metric, further comprising:
receiving a second data metric, wherein the second data metric comprises a dimension;
determining that the dimension is invalid as a candidate contributor dimension; and
outputting a notification indicating that the second data metric cannot be predicted based determining that the dimension is invalid.
5 . The method of claim 4 , wherein the dimension is determined to be invalid based on a cardinality of the dimension.
6 . The method of claim 4 , wherein the dimension is determined to be invalid based on a skewness of data that include the dimension.
7 . The method of claim 1 , further comprising:
determining that at least one prediction value of the data metric obtained using the metric predictor model deviates from at least one corresponding current value of the data metric; and
re-training the metric predictor model using at least the data other than the historical data.
8 . The method of claim 1 , further comprising:
determining a number of notifications descriptive of differences to be output by the metric predictor model using training data.
9 . The method of claim 8 , further comprising:
receiving, from a user, an indication of whether to use the metric predictor model to predict the data metric.
10 . A device, comprising:
a memory; and
a processor, the processor configured to execute instructions stored in the memory to:
select a metric predictor model for predicting values of a data metric, the metric predictor model trained using historical data related to the data metric;
obtain a predicted value of the data metric using the metric predictor model;
obtain a current value of the data metric using data other than the historical data;
determine that a difference between the predicted value and the current value meets a reporting criterion; and
in response to determining that the difference meets the reporting criterion, output a notification descriptive of the difference.
11 . The device of claim 10 , wherein the metric predictor model is trained using the historical data related to the data metric by instructions comprising instructions to:
generate time series data of the data metric using the historical data; and
obtain the metric predictor model using the time series data.
12 . The device of claim 10 , wherein the data metric is a first data metric, the processor further configured to execute instructions to:
receive a second data metric;
train at least a subset of one or more models using historical data related to the second data metric;
determine that none of the trained at least the subset of the one or more models provides an expected prediction of the second data metric; and
output a notification indicating that predicting the second data metric using future data related to the second data metric will not be performed.
13 . The device of claim 10 , wherein the data metric is a first data metric, the processor further configured to execute instructions to:
receive a second data metric, wherein the second data metric comprises a dimension;
determine that the dimension is invalid as a candidate contributor dimension; and
output a notification indicating that the second data metric cannot be predicted based determining that the dimension is invalid.
14 . The device of claim 13 , wherein the dimension is determined to be invalid based on a cardinality of the dimension.
15 . The device of claim 13 , wherein the dimension is determined to be invalid based on a skewness of data that include the dimension.
16 . The device of claim 10 , wherein the processor is further configured to execute instructions to:
determine that at least one prediction value of the data metric obtained using the metric predictor model deviates from at least one corresponding current value of the data metric; and
re-train the metric predictor model using at least the data other than the historical data.
17 . The device of claim 10 , wherein the processor is further configured to execute instructions to:
determine a number of notifications descriptive of differences to be output by the metric predictor model using training data.
18 . The device of claim 17 , wherein the processor is further configured to execute instructions to:
receive, from a user, an indication of whether to use the metric predictor model to predict the data metric.
19 . A non-transitory computer readable medium storing instructions operable to cause one or more processors to perform operations comprising:
selecting a metric predictor model for predicting values of a data metric, the metric predictor model trained using historical data related to the data metric;
obtaining a predicted value of the data metric using the metric predictor model;
obtaining a current value of the data metric using data other than the historical data;
determining that a difference between the predicted value and the current value meets a reporting criterion; and
in response to determining that the difference meets the reporting criterion, outputting a notification descriptive of the difference.
20 . The non-transitory computer readable medium of claim 19 , wherein the data metric is a first data metric, the operations further comprise:
receiving a second data metric, wherein the second data metric comprises a dimension;
determining that the dimension is invalid as a candidate contributor dimension; and
outputting a notification indicating that the second data metric cannot be predicted based determining that the dimension is invalid.