Save() public method

Save the script to a file.
public Save ( FileInfo file ) : void
file System.IO.FileInfo The file to save to.
return void
コード例 #1
0
        public void TestWizard()
        {
            FileInfo rawFile = TEMP_DIR.CreateFile("iris_raw.csv");

            FileUtil.CopyResource("Encog.Resources.iris.csv", rawFile);

            FileInfo analystFile = TEMP_DIR.CreateFile("iris.ega");

            EncogAnalyst  encog = new EncogAnalyst();
            AnalystWizard wiz   = new AnalystWizard(encog);

            wiz.Goal = AnalystGoal.Classification;
            wiz.Wizard(rawFile, true, AnalystFileFormat.DecpntComma);


            encog.ExecuteTask("task-full");

            encog.Save(analystFile);
            encog.Load(analystFile);

            AnalystReport report = new AnalystReport(encog);

            report.ProduceReport(TEMP_DIR.CreateFile("report.html"));

            Assert.AreEqual(5, encog.Script.Normalize.NormalizedFields.Count);
            Assert.AreEqual(4.3, encog.Script.Fields[0].Min, 0.001);
            Assert.AreEqual(7.9, encog.Script.Fields[0].Max, 0.001);
            Assert.AreEqual(5.84333, encog.Script.Fields[0].Mean, 0.001);
            Assert.AreEqual(encog.Script.Fields[0].Class, false);
            Assert.AreEqual(encog.Script.Fields[0].Real, true);
            Assert.AreEqual(encog.Script.Fields[0].Integer, false);
            Assert.AreEqual(encog.Script.Fields[0].Complete, true);
            Assert.AreEqual(-3.38833, encog.Script.Normalize.NormalizedFields[0].Normalize(0.001), 0.001);
        }
コード例 #2
0
        public void TestWizard()
        {
            FileInfo rawFile = TEMP_DIR.CreateFile("iris_raw.csv");
            FileUtil.CopyResource("Encog.Resources.iris.csv", rawFile);

            FileInfo analystFile = TEMP_DIR.CreateFile("iris.ega");

            EncogAnalyst encog = new EncogAnalyst();
            AnalystWizard wiz = new AnalystWizard(encog);
            wiz.Goal = AnalystGoal.Classification;
            wiz.Wizard(rawFile, true, AnalystFileFormat.DecpntComma);


            encog.ExecuteTask("task-full");

            encog.Save(analystFile);
            encog.Load(analystFile);

            AnalystReport report = new AnalystReport(encog);
            report.ProduceReport(TEMP_DIR.CreateFile("report.html"));

            Assert.AreEqual(5, encog.Script.Normalize.NormalizedFields.Count);
            Assert.AreEqual(4.3, encog.Script.Fields[0].Min, 0.001);
            Assert.AreEqual(7.9, encog.Script.Fields[0].Max, 0.001);
            Assert.AreEqual(5.8483221477, encog.Script.Fields[0].Mean, 0.001);
            Assert.AreEqual(encog.Script.Fields[0].Class, false);
            Assert.AreEqual(encog.Script.Fields[0].Real, true);
            Assert.AreEqual(encog.Script.Fields[0].Integer, false);
            Assert.AreEqual(encog.Script.Fields[0].Complete, true);
            Assert.AreEqual(-3.38833, encog.Script.Normalize.NormalizedFields[0].Normalize(0.001), 0.001);
        }
コード例 #3
0
        public void Wizard(AnalystGoal goal, WizardMethodType methodType, bool headers)
        {
            EncogAnalyst.MaxIteration = MaxIterations;
            var wiz = new AnalystWizard(EncogAnalyst)
            {
                Goal = goal, MethodType = methodType, EvidenceSegements = 3
            };

            wiz.Wizard(_rawFile, headers, FileFormat);

            EncogAnalyst.Save(_analystFile);
            EncogAnalyst.Load(_analystFile);
        }
コード例 #4
0
        private void dataNormalization(string f1, string f2)
        {
            var sourceFile = new FileInfo(f1);
            var targetFile = new FileInfo(f2);
            var analyst = new EncogAnalyst();
            var wizard = new AnalystWizard(analyst);
            wizard.Wizard(sourceFile, true, AnalystFileFormat.DecpntComma);
            var norm = new AnalystNormalizeCSV();
            norm.Analyze(sourceFile, true, CSVFormat.English, analyst);

            norm.ProduceOutputHeaders = true;
            norm.Normalize(targetFile);

            analyst.Save(new FileInfo("stats.ega"));
            analyst.Load(new FileInfo("stats.ega"));
        }
コード例 #5
0
        public void IrisExample(FileInfo dir)
        {
            Console.WriteLine("Starting Iris dataset example.");
            Uri url = new Uri(IRIS_SOURCE);
            FileInfo analystFile = FileUtil.CombinePath(dir, "iris.ega");
            FileInfo rawFile = FileUtil.CombinePath(dir, "iris_raw.csv");

            EncogAnalyst encog = new EncogAnalyst();
            encog.AddAnalystListener(new ConsoleAnalystListener());
            AnalystWizard wiz = new AnalystWizard(encog);
            //wiz.TaskRandomize = false;
            wiz.Wizard(url, analystFile, rawFile, false, AnalystFileFormat.DecpntComma);
            encog.Save(analystFile);

            encog.ExecuteTask("task-full");

            

            AnalystReport report = new AnalystReport(encog);
            report.ProduceReport(FileUtil.CombinePath(dir, "report.html"));
        }
コード例 #6
0
        /// <summary>
        /// Program entry point.
        /// </summary>
        /// <param name="app">Holds arguments and other info.</param>
        public void Execute(IExampleInterface app)
        {
            Console.WriteLine("Running wizard...");
            var analyst = new EncogAnalyst();

            var wizard = new AnalystWizard(analyst);
            wizard.TargetFieldName = "field:1";
            wizard.Wizard(sourceCSV,
                false, AnalystFileFormat.DecpntComma);
            

            // customer id
            analyst.Script.Normalize.NormalizedFields[0].Action = Encog.Util.Arrayutil.NormalizationAction.PassThrough;

            var norm = new AnalystNormalizeCSV();
            norm.Report = new ConsoleStatusReportable();
            Console.WriteLine("Analyze for normalize...");
            norm.Analyze(sourceCSV, false, CSVFormat.English, analyst);
            norm.ProduceOutputHeaders = true;
            Console.WriteLine("Normalize...");
            norm.Normalize(targetCSV);
            analyst.Save(scriptEGA);
        }
コード例 #7
0
 public void ForestExample(FileInfo dir)
 {
     Console.WriteLine("Starting forest cover dataset example.");
     var url = new Uri(FOREST_SOURCE);
     FileInfo analystFile = FileUtil.CombinePath(dir, "forest.ega");
     FileInfo rawFile = FileUtil.CombinePath(dir, "forest_raw.csv");
     var encog = new EncogAnalyst();
     encog.AddAnalystListener(new ConsoleAnalystListener());
     var wiz = new AnalystWizard(encog);
     wiz.TaskBalance = true;
     wiz.Wizard(url, analystFile, rawFile, false, AnalystFileFormat.DecpntComma);
     encog.MaxIteration = 300;
     encog.ExecuteTask("task-full");
     encog.Save(analystFile);
     var report = new AnalystReport(encog);
     report.ProduceReport(FileUtil.CombinePath(dir, "report.html"));
 }
        /// <summary>
        /// Metodo responsavel por normalizar as informacoes para adequar a execucao da rede neural
        /// </summary>
        private static void Normalization()
        {
            var analyst = new EncogAnalyst();

            var wizard = new AnalystWizard(analyst);
            wizard.Wizard(Config.ClassificationFile, true, AnalystFileFormat.DecpntComma);

            var norm = new AnalystNormalizeCSV();
            norm.Analyze(Config.TrainingClassificationFile, true, CSVFormat.English, analyst);
            norm.ProduceOutputHeaders = true;
            norm.Normalize(Config.NormalizedTrainingClassificationFile);

            norm.Analyze(Config.EvaluateClassificationFile, true, CSVFormat.English, analyst);
            norm.Normalize(Config.NormalizedEvaluateClassificationFile);

            analyst.Save(Config.AnalystClassificationFile);
        }
コード例 #9
0
        public static void Normalise(FileOps fileOps)
        {
            var analyst = new EncogAnalyst();

            var wizard = new AnalystWizard(analyst);
            wizard.Wizard(fileOps.BaseFile,true,AnalystFileFormat.DecpntComma);

            var norm = new AnalystNormalizeCSV{ProduceOutputHeaders = true};
            norm.Analyze(fileOps.TrainingFile, true, CSVFormat.English, analyst);
            norm.Normalize(fileOps.NormalisedTrainingFile);
            norm.Analyze(fileOps.EvaluationFile, true, CSVFormat.English, analyst);
            norm.Normalize(fileOps.NormalisedEvaluationFile);

            analyst.Save(fileOps.AnalystFile);
        }
コード例 #10
0
        /// <summary>
        /// Metodo responsavel por normalizar as informacoes para adequar a execucao da rede neural
        /// </summary>
        private static void Normalization()
        {
            var analyst = new EncogAnalyst();

            //Wizard
            var wizard = new AnalystWizard(analyst);
            wizard.Wizard(Config.RegressionFile, true, AnalystFileFormat.DecpntComma);

            //Cilindros
            analyst.Script.Normalize.NormalizedFields[0].Action = Encog.Util.Arrayutil.NormalizationAction.Equilateral;
            //displacement
            analyst.Script.Normalize.NormalizedFields[1].Action = Encog.Util.Arrayutil.NormalizationAction.Normalize;
            //HorsePower
            analyst.Script.Normalize.NormalizedFields[2].Action = Encog.Util.Arrayutil.NormalizationAction.Normalize;
            //Peso
            analyst.Script.Normalize.NormalizedFields[3].Action = Encog.Util.Arrayutil.NormalizationAction.Normalize;
            //Aceleração
            analyst.Script.Normalize.NormalizedFields[4].Action = Encog.Util.Arrayutil.NormalizationAction.Normalize;
            //Ano
            analyst.Script.Normalize.NormalizedFields[5].Action = Encog.Util.Arrayutil.NormalizationAction.Equilateral;
            //Origem
            analyst.Script.Normalize.NormalizedFields[6].Action = Encog.Util.Arrayutil.NormalizationAction.Equilateral;
            //Nome
            analyst.Script.Normalize.NormalizedFields[7].Action = Encog.Util.Arrayutil.NormalizationAction.Ignore;
            //MPG
            analyst.Script.Normalize.NormalizedFields[8].Action = Encog.Util.Arrayutil.NormalizationAction.Normalize;

            var norm = new AnalystNormalizeCSV();
            norm.ProduceOutputHeaders = true;

            norm.Analyze(Config.TrainingRegressionFile, true, CSVFormat.English, analyst);
            norm.Normalize(Config.NormalizedTrainingRegressionFile);

            //Norm of evaluation
            norm.Analyze(Config.EvaluateRegressionFile, true, CSVFormat.English, analyst);
            norm.Normalize(Config.NormalizedEvaluateRegressionFile);

            //save the analyst file
            analyst.Save(Config.AnalystRegressionFile);
        }
コード例 #11
0
ファイル: EncogCmd.cs プロジェクト: JDFagan/encog-dotnet-core
        private void WizardCommand()
        {
            String targetCSVFile = _cmd.Args[0];

            String egaFile = FileUtil.ForceExtension(targetCSVFile, "ega");

            var analyst = new EncogAnalyst();
            var wizard = new AnalystWizard(analyst);
            bool headers = _cmd.PromptBoolean("headers", true);

            AnalystFileFormat format =
                ConvertStringConst.String2AnalystFileFormat(_cmd.PromptString("format", "decpnt|comma"));

            String goal = _cmd.PromptString("goal", "c").ToLower().Trim();
            if (goal.Equals("c"))
            {
                wizard.Goal = AnalystGoal.Classification;
            }
            else if (goal.Equals("r"))
            {
                wizard.Goal = AnalystGoal.Regression;
            }
            else
            {
                Console.WriteLine(@"Invalid goal: " + goal);
                return;
            }

            wizard.TargetField = _cmd.PromptString("targetField", "");

            String m = _cmd.PromptString("method", "ff").ToLower();

            if (m.Equals("ff"))
            {
                wizard.MethodType = WizardMethodType.FeedForward;
            }
            else if (m.Equals("neat"))
            {
                wizard.MethodType = WizardMethodType.NEAT;
            }
            else if (m.Equals("pnn"))
            {
                wizard.MethodType = WizardMethodType.PNN;
            }
            else if (m.Equals("rbf"))
            {
                wizard.MethodType = WizardMethodType.RBF;
            }
            else if (m.Equals("som"))
            {
                wizard.MethodType = WizardMethodType.SOM;
            }
            else if (m.Equals("svm"))
            {
                wizard.MethodType = WizardMethodType.SVM;
            }
            else
            {
                Console.WriteLine(@"Invalid method: " + m);
                return;
            }

            String r = _cmd.PromptString("range", "-1t1").Trim().ToLower();
            if (r.Equals("-1t1"))
            {
                wizard.Range = NormalizeRange.NegOne2One;
            }
            else if (r.Equals("0t1"))
            {
                wizard.Range = NormalizeRange.Zero2One;
            }

            wizard.Missing = TranslateMissing(_cmd.PromptString("missing", "DiscardMissing"));

            wizard.LagWindowSize = _cmd.PromptInteger("lagWindow", 0);
            wizard.LeadWindowSize = _cmd.PromptInteger("leadWindow", 0);
            wizard.IncludeTargetField = _cmd.PromptBoolean("includeTarget", false);
            wizard.TaskNormalize = _cmd.PromptBoolean("normalize", true);
            wizard.TaskRandomize = _cmd.PromptBoolean("randomize", true);
            wizard.TaskSegregate = _cmd.PromptBoolean("segregate", true);
            wizard.TaskBalance = _cmd.PromptBoolean("balance", false);
            wizard.TaskCluster = _cmd.PromptBoolean("cluster", false);

            _sw.Start();
            Console.WriteLine(@"Analyzing data");
            wizard.Wizard(new FileInfo(targetCSVFile), headers, format);
            Console.WriteLine(@"Saving analyst file");
            analyst.Save(egaFile);
        }