我正在尝试在EmguCV中加载TrainData,并且对于数字数据,一切都很好,而无需指定varType参数。
我想加载 TrainData,以便所有输入都是数字,所有标签都是分类的。要将数据类型指定为数字或分类 Emgucv,请使用 Enum EmguCV.ML.MlEnum.varType.Numeric 或 .在目前情况下我无法使用的分类。
using (TrainData td = new TrainData(trainData, Emgu.CV.ML.MlEnum.DataLayoutType.RowSample,trainClasses,null,null,null,?))
{
nnet.SetLayerSizes(layerSizeMat);
nnet.SetActivationFunction(ANN_MLP.AnnMlpActivationFunction.SigmoidSym, 0.6, 1);
nnet.TermCriteria = new MCvTermCriteria(430, 1.0e-8);
nnet.SetTrainMethod(ANN_MLP.AnnMlpTrainMethod.Backprop, 0.3, 0);
try
{
nnet.Train(td, (int)Emgu.CV.ML.MlEnum.AnnMlpTrainingFlag.Default);
Console.WriteLine("Training Completed Successfully....");
}
catch (Exception e)
{
Console.WriteLine("Training Error:" + e.Message);
}
}
它需要类型为 CV_8U 和 size + 的可选向量,其中包含每个输入和输出变量的类型。
有人可以解释一下上面行的含义,以及如何在EmguCv C#中创建CV_8U类型的向量。以 MNIST 数据集为例,该数据集包含 784 个输入列和 1 个输出列,其中包含 10 个分类值。
谢谢
德玛西亚99
相关分类