Close() 공개 메소드

Close the dataset.
public Close ( ) : void
리턴 void
예제 #1
0
        /// <summary>
        /// Evaluate disk.
        /// </summary>
        private void EvalBinary()
        {
            FileInfo file = FileUtil.CombinePath( new FileInfo(Path.GetTempPath()), "temp.egb" );

            BasicMLDataSet training = RandomTrainingFactory.Generate(
                1000, 10000, 10, 10, -1, 1);

            // create the binary file

            if (file.Exists)
            {
                file.Delete();
            }

            var training2 = new BufferedMLDataSet(file.ToString());
            training2.Load(training);

            const long stop = (10*Evaluate.Milis);
            int record = 0;

            IMLDataPair pair;

            var watch = new Stopwatch();
            watch.Start();

            int iterations = 0;
            while(true)
            {
                iterations++;
                pair = training[record++];
                if(record >= training.Count)
                    record = 0;

                if((iterations & 0xff) == 0 && watch.ElapsedMilliseconds >= stop)
                    break;
            }

            training2.Close();

            iterations /= 100000;

            _report.Report(Steps, Step3,
                          "Disk(binary) dataset, result: "
                          + Format.FormatInteger(iterations));

            if (file.Exists)
            {
                file.Delete();
            }
            _binaryScore = iterations;
        }
예제 #2
0
 /// <summary>
 /// Load an EGB file to memory.
 /// </summary>
 /// <param name="filename">The file to load.</param>
 /// <returns>A memory data set.</returns>
 public static IMLDataSet LoadEGB2Memory(FileInfo filename)
 {
     var buffer = new BufferedMLDataSet(filename.ToString());
     var result = buffer.LoadToMemory();
     buffer.Close();
     return result;
 }
        /// <summary>
        /// Called to generate the training file.
        /// </summary>
        public void Generate()
        {
            string[] list = Directory.GetFiles(_path);

            _trainingFile.Delete();
            var output = new BufferedMLDataSet(_trainingFile.ToString());
            output.BeginLoad(Config.InputWindow, 1);

            foreach (string file in list)
            {
                var fn = new FileInfo(file);
                if (fn.Name.StartsWith("collected") && fn.Name.EndsWith(".csv"))
                {
                    ProcessFile(file, output);
                }
            }

            output.EndLoad();
            output.Close();
        }
예제 #4
0
        /// <summary>
        /// Convert a CSV file to binary.
        /// </summary>
        /// <param name="csvFile">The CSV file to convert.</param>
        /// <param name="format">The format.</param>
        /// <param name="binFile">The binary file.</param>
        /// <param name="input">The input.</param>
        /// <param name="ideal">The ideal.</param>
        /// <param name="headers">True, if headers are present.</param>
        public static void ConvertCSV2Binary(FileInfo csvFile, CSVFormat format,
            FileInfo binFile, int[] input, int[] ideal, bool headers)
        {
            binFile.Delete();
            var csv = new ReadCSV(csvFile.ToString(), headers, format);

            var buffer = new BufferedMLDataSet(binFile.ToString());
            buffer.BeginLoad(input.Length, ideal.Length);
            while (csv.Next())
            {
                var inputData = new BasicMLData(input.Length);
                var idealData = new BasicMLData(ideal.Length);

                // handle input data
                for (int i = 0; i < input.Length; i++)
                {
                    inputData[i] = csv.GetDouble(input[i]);
                }

                // handle input data
                for (int i = 0; i < ideal.Length; i++)
                {
                    idealData[i] = csv.GetDouble(ideal[i]);
                }

                // add to dataset

                buffer.Add(inputData, idealData);
            }
            buffer.EndLoad();
            buffer.Close();
            csv.Close();
        }