类 ANN_MLP
- java.lang.Object
-
- org.opencv.core.Algorithm
-
- org.opencv.ml.StatModel
-
- org.opencv.ml.ANN_MLP
-
public class ANN_MLP extends StatModel
人工神经网络 - 多层感知器。与 ML 中许多一次性构建和训练的模型不同,在 MLP 模型中,这些步骤是分开的。首先,使用非默认构造函数或 ANN_MLP::create 方法创建一个具有指定拓扑的网络。所有权重都设置为零。然后,使用一组输入和输出向量来训练网络。训练过程可以重复多次,即可以根据新的训练数据调整权重。StatModel::train 的附加标志可用:ANN_MLP::TrainFlags。参见:REF:ml_intro_ann
-
-
字段摘要
字段 修饰符和类型 字段 描述 static intANNEALstatic intBACKPROPstatic intGAUSSIANstatic intIDENTITYstatic intLEAKYRELUstatic intNO_INPUT_SCALEstatic intNO_OUTPUT_SCALEstatic intRELUstatic intRPROPstatic intSIGMOID_SYMstatic intUPDATE_WEIGHTS-
从类继承的字段 org.opencv.ml.StatModel
COMPRESSED_INPUT, PREPROCESSED_INPUT, RAW_OUTPUT, UPDATE_MODEL
-
-
构造函数摘要
构造函数 修饰符 构造函数 描述 保护ANN_MLP(long addr)
-
方法摘要
所有方法 静态方法 实例方法 具体方法 修饰符和类型 方法 描述 static ANN_MLP__fromPtr__(long addr)static ANN_MLPcreate()创建空模型。使用 StatModel::train 训练模型,使用 Algorithm::load<ANN_MLP>(filename) 加载预训练模型。protected voidfinalize()doublegetAnnealCoolingRatio()参见:setAnnealCoolingRatiodoublegetAnnealFinalT()参见:setAnnealFinalTdoublegetAnnealInitialT()参见:setAnnealInitialTintgetAnnealItePerStep()参见:setAnnealItePerStepdoublegetBackpropMomentumScale()参见:setBackpropMomentumScaledoublegetBackpropWeightScale()参见:setBackpropWeightScaleMatgetLayerSizes()整数向量,指定每一层中的神经元数量,包括输入层和输出层。doublegetRpropDW0()参见:setRpropDW0doublegetRpropDWMax()参见:setRpropDWMaxdoublegetRpropDWMin()参见:setRpropDWMindoublegetRpropDWMinus()参见:setRpropDWMinusdoublegetRpropDWPlus()参见:setRpropDWPlusTermCriteriagetTermCriteria()参见:setTermCriteriaintgetTrainMethod()返回当前训练方法MatgetWeights(int layerIdx)static ANN_MLPload(java.lang.String filepath)从文件加载并创建序列化的 ANN。使用 ANN::save 序列化并将 ANN 存储到磁盘。voidsetActivationFunction(int type)初始化每个神经元的激活函数。voidsetActivationFunction(int type, double param1)初始化每个神经元的激活函数。voidsetActivationFunction(int type, double param1, double param2)初始化每个神经元的激活函数。voidsetAnnealCoolingRatio(double val)getAnnealCoolingRatio 参见:getAnnealCoolingRatiovoidsetAnnealFinalT(double val)getAnnealFinalT 参见:getAnnealFinalTvoidsetAnnealInitialT(double val)getAnnealInitialT 参见:getAnnealInitialTvoidsetAnnealItePerStep(int val)getAnnealItePerStep 参见:getAnnealItePerStepvoidsetBackpropMomentumScale(double val)getBackpropMomentumScale 参见:getBackpropMomentumScalevoidsetBackpropWeightScale(double val)getBackpropWeightScale 参见:getBackpropWeightScalevoidsetLayerSizes(Mat _layer_sizes)整数向量,指定每一层中的神经元数量,包括输入层和输出层。voidsetRpropDW0(double val)getRpropDW0 参见:getRpropDW0voidsetRpropDWMax(double val)getRpropDWMax 参见:getRpropDWMaxvoidsetRpropDWMin(double val)getRpropDWMin 参见:getRpropDWMinvoidsetRpropDWMinus(double val)getRpropDWMinus 参见:getRpropDWMinusvoidsetRpropDWPlus(double val)getRpropDWPlus 参见:getRpropDWPlusvoidsetTermCriteria(TermCriteria val)getTermCriteria 参见:getTermCriteriavoidsetTrainMethod(int method)设置训练方法和通用参数。voidsetTrainMethod(int method, double param1)设置训练方法和通用参数。voidsetTrainMethod(int method, double param1, double param2)设置训练方法和通用参数。-
从类继承的方法 org.opencv.ml.StatModel
calcError, empty, getVarCount, isClassifier, isTrained, predict, predict, predict, train, train, train
-
从类继承的方法 org.opencv.core.Algorithm
clear, getDefaultName, getNativeObjAddr, save
-
-
-
-
字段详细信息
-
IDENTITY
public static final int IDENTITY
- 参见
- 常量字段值
-
SIGMOID_SYM
public static final int SIGMOID_SYM
- 参见
- 常量字段值
-
GAUSSIAN
public static final int GAUSSIAN
- 参见
- 常量字段值
-
RELU
public static final int RELU
- 参见
- 常量字段值
-
LEAKYRELU
public static final int LEAKYRELU
- 参见
- 常量字段值
-
UPDATE_WEIGHTS
public static final int UPDATE_WEIGHTS
- 参见
- 常量字段值
-
NO_INPUT_SCALE
public static final int NO_INPUT_SCALE
- 参见
- 常量字段值
-
NO_OUTPUT_SCALE
public static final int NO_OUTPUT_SCALE
- 参见
- 常量字段值
-
BACKPROP
public static final int BACKPROP
- 参见
- 常量字段值
-
RPROP
public static final int RPROP
- 参见
- 常量字段值
-
ANNEAL
public static final int ANNEAL
- 参见
- 常量字段值
-
-
方法详细信息
-
__fromPtr__
public static ANN_MLP __fromPtr__(long addr)
-
setTrainMethod
public void setTrainMethod(int method, double param1, double param2)设置训练方法和通用参数。- 参数
method- 默认值为 ANN_MLP::RPROP。参见 ANN_MLP::TrainingMethods。param1- 传递给 ANN_MLP::RPROP 的 setRpropDW0,传递给 ANN_MLP::BACKPROP 的 setBackpropWeightScale 以及传递给 ANN_MLP::ANNEAL 的 initialT。param2- 传递给 ANN_MLP::RPROP 的 setRpropDWMin,传递给 ANN_MLP::BACKPROP 的 setBackpropMomentumScale 以及传递给 ANN_MLP::ANNEAL 的 finalT。
-
setTrainMethod
public void setTrainMethod(int method, double param1)设置训练方法和通用参数。- 参数
method- 默认值为 ANN_MLP::RPROP。参见 ANN_MLP::TrainingMethods。param1- 传递给 ANN_MLP::RPROP 的 setRpropDW0,传递给 ANN_MLP::BACKPROP 的 setBackpropWeightScale 以及传递给 ANN_MLP::ANNEAL 的 initialT。
-
setTrainMethod
public void setTrainMethod(int method)
设置训练方法和通用参数。- 参数
method- 默认值为 ANN_MLP::RPROP。参见 ANN_MLP::TrainingMethods。
-
getTrainMethod
public int getTrainMethod()
返回当前训练方法- 返回
- 自动生成
-
setActivationFunction
public void setActivationFunction(int type, double param1, double param2)初始化每个神经元的激活函数。目前,默认且唯一完全支持的激活函数是 ANN_MLP::SIGMOID_SYM。- 参数
type- 激活函数的类型。参见 ANN_MLP::ActivationFunctions。param1- 激活函数的第一个参数,\(\alpha\)。默认值为 0。param2- 激活函数的第二个参数,\(\beta\)。默认值为 0。
-
setActivationFunction
public void setActivationFunction(int type, double param1)初始化每个神经元的激活函数。目前,默认且唯一完全支持的激活函数是 ANN_MLP::SIGMOID_SYM。- 参数
type- 激活函数的类型。参见 ANN_MLP::ActivationFunctions。param1- 激活函数的第一个参数,\(\alpha\)。默认值为 0。
-
setActivationFunction
public void setActivationFunction(int type)
初始化每个神经元的激活函数。目前,默认且唯一完全支持的激活函数是 ANN_MLP::SIGMOID_SYM。- 参数
type- 激活函数的类型。参见 ANN_MLP::ActivationFunctions。
-
setLayerSizes
public void setLayerSizes(Mat _layer_sizes)
整数向量,指定每一层中的神经元数量,包括输入层和输出层。第一个元素指定输入层中的元素数量。最后一个元素 - 输出层中的元素数量。默认值为空 Mat。参见:getLayerSizes- 参数
_layer_sizes- 自动生成
-
getLayerSizes
public Mat getLayerSizes()
整数向量,指定每一层中的神经元数量,包括输入层和输出层。第一个元素指定输入层中的元素数量。最后一个元素 - 输出层中的元素数量。参见:setLayerSizes- 返回
- 自动生成
-
getTermCriteria
public TermCriteria getTermCriteria()
参见:setTermCriteria- 返回
- 自动生成
-
setTermCriteria
public void setTermCriteria(TermCriteria val)
getTermCriteria 参见:getTermCriteria- 参数
val- 自动生成
-
getBackpropWeightScale
public double getBackpropWeightScale()
参见:setBackpropWeightScale- 返回
- 自动生成
-
setBackpropWeightScale
public void setBackpropWeightScale(double val)
getBackpropWeightScale 参见:getBackpropWeightScale- 参数
val- 自动生成
-
getBackpropMomentumScale
public double getBackpropMomentumScale()
参见:setBackpropMomentumScale- 返回
- 自动生成
-
setBackpropMomentumScale
public void setBackpropMomentumScale(double val)
getBackpropMomentumScale 参见:getBackpropMomentumScale- 参数
val- 自动生成
-
getRpropDW0
public double getRpropDW0()
参见:setRpropDW0- 返回
- 自动生成
-
setRpropDW0
public void setRpropDW0(double val)
getRpropDW0 参见:getRpropDW0- 参数
val- 自动生成
-
getRpropDWPlus
public double getRpropDWPlus()
参见:setRpropDWPlus- 返回
- 自动生成
-
setRpropDWPlus
public void setRpropDWPlus(double val)
getRpropDWPlus 参见:getRpropDWPlus- 参数
val- 自动生成
-
getRpropDWMinus
public double getRpropDWMinus()
参见:setRpropDWMinus- 返回
- 自动生成
-
setRpropDWMinus
public void setRpropDWMinus(double val)
getRpropDWMinus 参见:getRpropDWMinus- 参数
val- 自动生成
-
getRpropDWMin
public double getRpropDWMin()
参见:setRpropDWMin- 返回
- 自动生成
-
setRpropDWMin
public void setRpropDWMin(double val)
getRpropDWMin 参见:getRpropDWMin- 参数
val- 自动生成
-
getRpropDWMax
public double getRpropDWMax()
参见:setRpropDWMax- 返回
- 自动生成
-
setRpropDWMax
public void setRpropDWMax(double val)
getRpropDWMax 参见:getRpropDWMax- 参数
val- 自动生成
-
getAnnealInitialT
public double getAnnealInitialT()
参见:setAnnealInitialT- 返回
- 自动生成
-
setAnnealInitialT
public void setAnnealInitialT(double val)
getAnnealInitialT 参见:getAnnealInitialT- 参数
val- 自动生成
-
getAnnealFinalT
public double getAnnealFinalT()
参见:setAnnealFinalT- 返回
- 自动生成
-
setAnnealFinalT
public void setAnnealFinalT(double val)
getAnnealFinalT 参见:getAnnealFinalT- 参数
val- 自动生成
-
getAnnealCoolingRatio
public double getAnnealCoolingRatio()
参见:setAnnealCoolingRatio- 返回
- 自动生成
-
setAnnealCoolingRatio
public void setAnnealCoolingRatio(double val)
getAnnealCoolingRatio 参见:getAnnealCoolingRatio- 参数
val- 自动生成
-
getAnnealItePerStep
public int getAnnealItePerStep()
参见:setAnnealItePerStep- 返回
- 自动生成
-
setAnnealItePerStep
public void setAnnealItePerStep(int val)
getAnnealItePerStep 参见:getAnnealItePerStep- 参数
val- 自动生成
-
getWeights
public Mat getWeights(int layerIdx)
-
create
public static ANN_MLP create()
创建空模型。使用 StatModel::train 训练模型,使用 Algorithm::load<ANN_MLP>(filename) 加载预训练模型。请注意,train 方法具有可选标志:ANN_MLP::TrainFlags。- 返回
- 自动生成
-
load
public static ANN_MLP load(java.lang.String filepath)
从文件加载并创建序列化的 ANN。使用 ANN::save 序列化并将 ANN 存储到磁盘。再次从此文件加载 ANN,方法是使用文件路径调用此函数。- 参数
filepath- 序列化 ANN 的路径- 返回
- 自动生成
-
-