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 int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
static final int
Fields inherited from class org.opencv.ml.StatModel
COMPRESSED_INPUT, PREPROCESSED_INPUT, RAW_OUTPUT, UPDATE_MODEL
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic ANN_MLP
__fromPtr__
(long addr) static ANN_MLP
create()
Creates empty model Use StatModel::train to train the model, Algorithm::load<ANN_MLP>(filename) to load the pre-trained model.protected void
finalize()
double
SEE: setAnnealCoolingRatiodouble
SEE: setAnnealFinalTdouble
SEE: setAnnealInitialTint
SEE: setAnnealItePerStepdouble
SEE: setBackpropMomentumScaledouble
SEE: setBackpropWeightScaleInteger vector specifying the number of neurons in each layer including the input and output layers.double
SEE: setRpropDW0double
SEE: setRpropDWMaxdouble
SEE: setRpropDWMindouble
SEE: setRpropDWMinusdouble
SEE: setRpropDWPlusSEE: setTermCriteriaint
Returns current training methodgetWeights
(int layerIdx) static ANN_MLP
Loads and creates a serialized ANN from a file Use ANN::save to serialize and store an ANN to disk.void
setActivationFunction
(int type) Initialize the activation function for each neuron.void
setActivationFunction
(int type, double param1) Initialize the activation function for each neuron.void
setActivationFunction
(int type, double param1, double param2) Initialize the activation function for each neuron.void
setAnnealCoolingRatio
(double val) getAnnealCoolingRatio SEE: getAnnealCoolingRatiovoid
setAnnealFinalT
(double val) getAnnealFinalT SEE: getAnnealFinalTvoid
setAnnealInitialT
(double val) getAnnealInitialT SEE: getAnnealInitialTvoid
setAnnealItePerStep
(int val) getAnnealItePerStep SEE: getAnnealItePerStepvoid
setBackpropMomentumScale
(double val) getBackpropMomentumScale SEE: getBackpropMomentumScalevoid
setBackpropWeightScale
(double val) getBackpropWeightScale SEE: getBackpropWeightScalevoid
setLayerSizes
(Mat _layer_sizes) Integer vector specifying the number of neurons in each layer including the input and output layers.void
setRpropDW0
(double val) getRpropDW0 SEE: getRpropDW0void
setRpropDWMax
(double val) getRpropDWMax SEE: getRpropDWMaxvoid
setRpropDWMin
(double val) getRpropDWMin SEE: getRpropDWMinvoid
setRpropDWMinus
(double val) getRpropDWMinus SEE: getRpropDWMinusvoid
setRpropDWPlus
(double val) getRpropDWPlus SEE: getRpropDWPlusvoid
getTermCriteria SEE: getTermCriteriavoid
setTrainMethod
(int method) Sets training method and common parameters.void
setTrainMethod
(int method, double param1) Sets training method and common parameters.void
setTrainMethod
(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, train
Methods 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:
-
-
Constructor Details
-
ANN_MLP
protected ANN_MLP(long addr)
-
-
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
-
finalize
-