Prescriptive Analytics
Synopsis
Given a model and a desired output, this operator automatically finds the optimal inputs.
Description
In predictive modeling, a model is used to predict an outcome, given an input. This operator reverses that procedure, starting with a model and a desired output, and prescribing an optimized input to achieve the desired outcome.
The operator uses an evolutionary optimization method, based on the model, with one of the following targets:
- minimize confidence for a class
- maximize confidence for a class
- get as close as possible to a certain confidence for a class
- minimize regression prediction
- maximize regression prediction
- get as close as possible to a certain regression prediction
The training data can be used to to constrain the optimization, so that all numerical values satisfy one or more of the following conditions:
- stay close to the average, within 1 / 2 / 3 times the standard deviation
- stay above the minimum
- stay below the maximum
- stay above a certain value
- stay below a certain value
Moreover, the user may assign constant values to any of the attributes, overriding the above conditions.
Input
model
This port expects a model, whose optimal inputs should be identified.
training data
This port expects an ExampleSet, the same ExampleSet that was used to create the model.
Output
optimal data
The optimal data which, when used as an input to the model, delivers the desired result.
Parameters
Classification
Indicates if the model is a classification model or a regression model.
Class name
The class for which the confidence should be optimized.
优化方向
The optimization strategy: minimize, maximize, or specify a value. A specific value can be useful for regression / forecasting problems.
Value to reach
Specify a confidence or regression value which should be reached. Only available if the value for "optimization direction" is "specific value".
Stay around average (numerical)
Indicates if numerical values should stay in a specified range around the average value which helps to prevent extreme values which might be not feasible as inputs.
Standard deviations around average
Defines the number of standard deviations the values can move away from the numerical average.
Stay above global minimum (numerical)
Indicates if numerical values should stay above the minimum value of the corresponding attribute.
Stay below global maximum (numerical)
Indicates if numerical values should stay below the maximum value of the corresponding attribute.
Stay above value (numerical)
Indicates if numerical values should stay above a specified value.
Minimum value
Attribute values during optimization should stay above this value.
Stay below value (numerical)
Indicates if numerical values should stay below a specified value.
Maximum value
Attribute values during optimization should stay below this value.
Constant attribute values
A list of attributes which should be kept at constant values. You can specify name-value pairs with the attribute name on the left and the desired constant value on the right.
Limit type
Defines when the optimization ends. No limit uses a heuristic to detect the optimum. Time limit stops after specified time. Generations stops after the specified number of generations is reached.
Maximum generations
The maximum number of generations for the evolutionary optimization algorithm. Only available if the limit is "generations and population size".
Population size
The number of individuals in the population of the evolutionary optimization algorithm. Only available if the limit is "generations and population size".
Time limit (in seconds)
The maximum number of seconds the optimization will run. Only available if the limit is "time limit".