Ejemplo n.º 1
0
        private static SupportVectorMachine <Gaussian> TrainSVMModel(IDataView trainingData)
        {
            AccordIO data = IDataViewToAccord(trainingData);

            Console.WriteLine("Creating and training Poly kernel SVM");
            var smo = new SequentialMinimalOptimization <Gaussian>();

            smo.UseKernelEstimation    = true;
            smo.UseComplexityHeuristic = true;
            smo.Epsilon   = 1.0e-3;
            smo.Tolerance = 1.0e-2;

            Console.WriteLine("Starting training");
            var svm = smo.Learn(data.inputs, data.labels);

            Console.WriteLine("Training complete");
            //double[][] sVectors = svm.SupportVectors;
            //for (int i = 0; i < sVectors.Length; ++i)
            //{
            //	for (int j = 0; j < sVectors[i].Length; ++j)
            //	{
            //		svmExporter.Write(sVectors[i][j].ToString("F1") + " ");
            //	}
            //	svmExporter.WriteLine("");
            //}

            //}AccordIO data = IDataViewToAccord(trainingData);
            //Console.WriteLine("Creating and training Poly kernel SVM");
            //var smo = new SequentialMinimalOptimization<Polynomial>();
            ////smo.UseKernelEstimation = true;
            //smo.UseComplexityHeuristic = true;
            //smo.Kernel = new Polynomial(20, 0.0);

            ////smo.Complexity = 2.0;
            //smo.Epsilon = 1.0e-3;
            //smo.Tolerance = 1.0e-2;

            //Console.WriteLine("Starting training");
            //var svm = smo.Learn(data.inputs, data.labels);
            //Console.WriteLine("Training complete");

            //Console.WriteLine("Model support vectors: ");
            //double[][] sVectors = svm.SupportVectors;
            //for (int i = 0; i < sVectors.Length; ++i)
            //{
            //	for (int j = 0; j < sVectors[i].Length; ++j)
            //	{
            //		Console.Write(sVectors[i][j].ToString("F1") + " ");
            //	}
            //	Console.WriteLine("");
            //}

            return(svm);
        }
Ejemplo n.º 2
0
        private static LogisticRegression TrainAccordModel(IDataView trainingData)
        {
            AccordIO data = IDataViewToAccord(trainingData);

            var trainer = new IterativeReweightedLeastSquares <LogisticRegression>()
            {
                MaxIterations  = 1000,
                Regularization = 1e-6
            };

            // Use the teacher algorithm to learn the regression:
            LogisticRegression lr = trainer.Learn(data.inputs, data.labels);

            return(lr);
            // Classify the samples using the model
            //bool[] answers = lr.Decide(inputs);
        }