Package org.opencv.ml
Class ANN_MLP
java.lang.Object
org.opencv.core.Algorithm
org.opencv.ml.StatModel
org.opencv.ml.ANN_MLP
Artificial Neural Networks - Multi-Layer Perceptrons.
Unlike many other models in ML that are constructed and trained at once, in the MLP model these
steps are separated. First, a network with the specified topology is created using the non-default
constructor or the method ANN_MLP::create. All the weights are set to zeros. Then, the network is
trained using a set of input and output vectors. The training procedure can be repeated more than
once, that is, the weights can be adjusted based on the new training data.
Additional flags for StatModel::train are available: ANN_MLP::TrainFlags.
SEE: REF: ml_intro_ann
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intstatic final intFields inherited from class org.opencv.ml.StatModel
COMPRESSED_INPUT, PREPROCESSED_INPUT, RAW_OUTPUT, UPDATE_MODEL -
Method Summary
Modifier and TypeMethodDescriptionstatic ANN_MLP__fromPtr__(long addr) static ANN_MLPcreate()Creates empty model Use StatModel::train to train the model, Algorithm::load<ANN_MLP>(filename) to load the pre-trained model.doubleSEE: setAnnealCoolingRatiodoubleSEE: setAnnealFinalTdoubleSEE: setAnnealInitialTintSEE: setAnnealItePerStepdoubleSEE: setBackpropMomentumScaledoubleSEE: setBackpropWeightScaleInteger vector specifying the number of neurons in each layer including the input and output layers.doubleSEE: setRpropDW0doubleSEE: setRpropDWMaxdoubleSEE: setRpropDWMindoubleSEE: setRpropDWMinusdoubleSEE: setRpropDWPlusSEE: setTermCriteriaintReturns current training methodgetWeights(int layerIdx) static ANN_MLPLoads and creates a serialized ANN from a file Use ANN::save to serialize and store an ANN to disk.voidsetActivationFunction(int type) Initialize the activation function for each neuron.voidsetActivationFunction(int type, double param1) Initialize the activation function for each neuron.voidsetActivationFunction(int type, double param1, double param2) Initialize the activation function for each neuron.voidsetAnnealCoolingRatio(double val) getAnnealCoolingRatio SEE: getAnnealCoolingRatiovoidsetAnnealFinalT(double val) getAnnealFinalT SEE: getAnnealFinalTvoidsetAnnealInitialT(double val) getAnnealInitialT SEE: getAnnealInitialTvoidsetAnnealItePerStep(int val) getAnnealItePerStep SEE: getAnnealItePerStepvoidsetBackpropMomentumScale(double val) getBackpropMomentumScale SEE: getBackpropMomentumScalevoidsetBackpropWeightScale(double val) getBackpropWeightScale SEE: getBackpropWeightScalevoidsetLayerSizes(Mat _layer_sizes) Integer vector specifying the number of neurons in each layer including the input and output layers.voidsetRpropDW0(double val) getRpropDW0 SEE: getRpropDW0voidsetRpropDWMax(double val) getRpropDWMax SEE: getRpropDWMaxvoidsetRpropDWMin(double val) getRpropDWMin SEE: getRpropDWMinvoidsetRpropDWMinus(double val) getRpropDWMinus SEE: getRpropDWMinusvoidsetRpropDWPlus(double val) getRpropDWPlus SEE: getRpropDWPlusvoidgetTermCriteria SEE: getTermCriteriavoidsetTrainMethod(int method) Sets training method and common parameters.voidsetTrainMethod(int method, double param1) Sets training method and common parameters.voidsetTrainMethod(int method, double param1, double param2) Sets training method and common parameters.Methods inherited from class org.opencv.ml.StatModel
calcError, empty, getVarCount, isClassifier, isTrained, predict, predict, predict, train, train, trainMethods inherited from class org.opencv.core.Algorithm
clear, getDefaultName, getNativeObjAddr, save
-
Field Details
-
IDENTITY
public static final int IDENTITY- See Also:
-
SIGMOID_SYM
public static final int SIGMOID_SYM- See Also:
-
GAUSSIAN
public static final int GAUSSIAN- See Also:
-
RELU
public static final int RELU- See Also:
-
LEAKYRELU
public static final int LEAKYRELU- See Also:
-
UPDATE_WEIGHTS
public static final int UPDATE_WEIGHTS- See Also:
-
NO_INPUT_SCALE
public static final int NO_INPUT_SCALE- See Also:
-
NO_OUTPUT_SCALE
public static final int NO_OUTPUT_SCALE- See Also:
-
BACKPROP
public static final int BACKPROP- See Also:
-
RPROP
public static final int RPROP- See Also:
-
ANNEAL
public static final int ANNEAL- See Also:
-
-
Method Details
-
__fromPtr__
-
setTrainMethod
public void setTrainMethod(int method, double param1, double param2) Sets training method and common parameters.- Parameters:
method- Default value is ANN_MLP::RPROP. See ANN_MLP::TrainingMethods.param1- passed to setRpropDW0 for ANN_MLP::RPROP and to setBackpropWeightScale for ANN_MLP::BACKPROP and to initialT for ANN_MLP::ANNEAL.param2- passed to setRpropDWMin for ANN_MLP::RPROP and to setBackpropMomentumScale for ANN_MLP::BACKPROP and to finalT for ANN_MLP::ANNEAL.
-
setTrainMethod
public void setTrainMethod(int method, double param1) Sets training method and common parameters.- Parameters:
method- Default value is ANN_MLP::RPROP. See ANN_MLP::TrainingMethods.param1- passed to setRpropDW0 for ANN_MLP::RPROP and to setBackpropWeightScale for ANN_MLP::BACKPROP and to initialT for ANN_MLP::ANNEAL.
-
setTrainMethod
public void setTrainMethod(int method) Sets training method and common parameters.- Parameters:
method- Default value is ANN_MLP::RPROP. See ANN_MLP::TrainingMethods.
-
getTrainMethod
public int getTrainMethod()Returns current training method- Returns:
- automatically generated
-
setActivationFunction
public void setActivationFunction(int type, double param1, double param2) Initialize the activation function for each neuron. Currently the default and the only fully supported activation function is ANN_MLP::SIGMOID_SYM.- Parameters:
type- The type of activation function. See ANN_MLP::ActivationFunctions.param1- The first parameter of the activation function, \(\alpha\). Default value is 0.param2- The second parameter of the activation function, \(\beta\). Default value is 0.
-
setActivationFunction
public void setActivationFunction(int type, double param1) Initialize the activation function for each neuron. Currently the default and the only fully supported activation function is ANN_MLP::SIGMOID_SYM.- Parameters:
type- The type of activation function. See ANN_MLP::ActivationFunctions.param1- The first parameter of the activation function, \(\alpha\). Default value is 0.
-
setActivationFunction
public void setActivationFunction(int type) Initialize the activation function for each neuron. Currently the default and the only fully supported activation function is ANN_MLP::SIGMOID_SYM.- Parameters:
type- The type of activation function. See ANN_MLP::ActivationFunctions.
-
setLayerSizes
Integer vector specifying the number of neurons in each layer including the input and output layers. The very first element specifies the number of elements in the input layer. The last element - number of elements in the output layer. Default value is empty Mat. SEE: getLayerSizes- Parameters:
_layer_sizes- automatically generated
-
getLayerSizes
Integer vector specifying the number of neurons in each layer including the input and output layers. The very first element specifies the number of elements in the input layer. The last element - number of elements in the output layer. SEE: setLayerSizes- Returns:
- automatically generated
-
getTermCriteria
SEE: setTermCriteria- Returns:
- automatically generated
-
setTermCriteria
getTermCriteria SEE: getTermCriteria- Parameters:
val- automatically generated
-
getBackpropWeightScale
public double getBackpropWeightScale()SEE: setBackpropWeightScale- Returns:
- automatically generated
-
setBackpropWeightScale
public void setBackpropWeightScale(double val) getBackpropWeightScale SEE: getBackpropWeightScale- Parameters:
val- automatically generated
-
getBackpropMomentumScale
public double getBackpropMomentumScale()SEE: setBackpropMomentumScale- Returns:
- automatically generated
-
setBackpropMomentumScale
public void setBackpropMomentumScale(double val) getBackpropMomentumScale SEE: getBackpropMomentumScale- Parameters:
val- automatically generated
-
getRpropDW0
public double getRpropDW0()SEE: setRpropDW0- Returns:
- automatically generated
-
setRpropDW0
public void setRpropDW0(double val) getRpropDW0 SEE: getRpropDW0- Parameters:
val- automatically generated
-
getRpropDWPlus
public double getRpropDWPlus()SEE: setRpropDWPlus- Returns:
- automatically generated
-
setRpropDWPlus
public void setRpropDWPlus(double val) getRpropDWPlus SEE: getRpropDWPlus- Parameters:
val- automatically generated
-
getRpropDWMinus
public double getRpropDWMinus()SEE: setRpropDWMinus- Returns:
- automatically generated
-
setRpropDWMinus
public void setRpropDWMinus(double val) getRpropDWMinus SEE: getRpropDWMinus- Parameters:
val- automatically generated
-
getRpropDWMin
public double getRpropDWMin()SEE: setRpropDWMin- Returns:
- automatically generated
-
setRpropDWMin
public void setRpropDWMin(double val) getRpropDWMin SEE: getRpropDWMin- Parameters:
val- automatically generated
-
getRpropDWMax
public double getRpropDWMax()SEE: setRpropDWMax- Returns:
- automatically generated
-
setRpropDWMax
public void setRpropDWMax(double val) getRpropDWMax SEE: getRpropDWMax- Parameters:
val- automatically generated
-
getAnnealInitialT
public double getAnnealInitialT()SEE: setAnnealInitialT- Returns:
- automatically generated
-
setAnnealInitialT
public void setAnnealInitialT(double val) getAnnealInitialT SEE: getAnnealInitialT- Parameters:
val- automatically generated
-
getAnnealFinalT
public double getAnnealFinalT()SEE: setAnnealFinalT- Returns:
- automatically generated
-
setAnnealFinalT
public void setAnnealFinalT(double val) getAnnealFinalT SEE: getAnnealFinalT- Parameters:
val- automatically generated
-
getAnnealCoolingRatio
public double getAnnealCoolingRatio()SEE: setAnnealCoolingRatio- Returns:
- automatically generated
-
setAnnealCoolingRatio
public void setAnnealCoolingRatio(double val) getAnnealCoolingRatio SEE: getAnnealCoolingRatio- Parameters:
val- automatically generated
-
getAnnealItePerStep
public int getAnnealItePerStep()SEE: setAnnealItePerStep- Returns:
- automatically generated
-
setAnnealItePerStep
public void setAnnealItePerStep(int val) getAnnealItePerStep SEE: getAnnealItePerStep- Parameters:
val- automatically generated
-
getWeights
-
create
Creates empty model Use StatModel::train to train the model, Algorithm::load<ANN_MLP>(filename) to load the pre-trained model. Note that the train method has optional flags: ANN_MLP::TrainFlags.- Returns:
- automatically generated
-
load
Loads and creates a serialized ANN from a file Use ANN::save to serialize and store an ANN to disk. Load the ANN from this file again, by calling this function with the path to the file.- Parameters:
filepath- path to serialized ANN- Returns:
- automatically generated
-