Package org.opencv.ml

Class ANN_MLP


  • public class ANN_MLP
    extends StatModel
    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
    • Constructor Detail

      • ANN_MLP

        protected ANN_MLP​(long addr)
    • Method Detail

      • __fromPtr__

        public static ANN_MLP __fromPtr__​(long addr)
      • 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

        public void setLayerSizes​(Mat _layer_sizes)
        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

        public Mat 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

        public TermCriteria getTermCriteria()
        SEE: setTermCriteria
        Returns:
        automatically generated
      • setTermCriteria

        public void setTermCriteria​(TermCriteria val)
        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

        public Mat getWeights​(int layerIdx)
      • create

        public 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. Note that the train method has optional flags: ANN_MLP::TrainFlags.
        Returns:
        automatically generated
      • load

        public static ANN_MLP load​(String filepath)
        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