A folded data set allows you to "fold" the data into several equal(or nearly equal) datasets. You then have the ability to select which fold the dataset will process. This is very useful for crossvalidation. This dataset works off of an underlying dataset. By default there are no folds (fold size 1). Call the fold method to create more folds.
Inheritance: IMLDataSet
コード例 #1
0
ファイル: CrossTraining.cs プロジェクト: neismit/emds
 protected CrossTraining(IMLMethod network, FoldedDataSet training)
     : base(TrainingImplementationType.Iterative)
 {
     this._x87a7fc6a72741c2e = network;
     this.Training = training;
     this._x3952df2eab48841c = training;
 }
コード例 #2
0
 /// <summary>
 /// Construct a cross trainer.
 /// </summary>
 ///
 /// <param name="network">The network.</param>
 /// <param name="training">The training data.</param>
 protected CrossTraining(IMLMethod network, FoldedDataSet training)
     : base(TrainingImplementationType.Iterative)
 {
     _network = network;
     Training = training;
     _folded = training;
 }
コード例 #3
0
        /// <summary>
        /// Open an additional dataset.
        /// </summary>
        /// <returns>The dataset.</returns>
        public IMLDataSet OpenAdditional()
        {
            var folded = new FoldedDataSet(_underlying.OpenAdditional())
            {
                Owner = this
            };

            return(folded);
        }
コード例 #4
0
        public void TestRPROPFolded()
        {
            IMLDataSet trainingData = XOR.CreateNoisyXORDataSet(10);

            BasicNetwork network = NetworkUtil.CreateXORNetworkUntrained();

            var folded = new FoldedDataSet(trainingData);
            IMLTrain train = new ResilientPropagation(network, folded);
            var trainFolded = new CrossValidationKFold(train, 4);

            EncogUtility.TrainToError(trainFolded, 0.2);

            XOR.VerifyXOR((IMLRegression) trainFolded.Method, 0.2);
        }
コード例 #5
0
ファイル: FoldedDataSet.cs プロジェクト: neismit/emds
 /// <summary>
 /// Open an additional dataset.
 /// </summary>
 /// <returns>The dataset.</returns>
 public IMLDataSet OpenAdditional()
 {
     var folded = new FoldedDataSet(_underlying.OpenAdditional()) {Owner = this};
     return folded;
 }
コード例 #6
0
ファイル: CmdTrain.cs プロジェクト: kedrzu/encog-dotnet-core
        /// <summary>
        ///     Obtain the training set.
        /// </summary>
        /// <returns>The training set.</returns>
        private IMLDataSet ObtainTrainingSet()
        {
            String trainingID = Prop.GetPropertyString(
                ScriptProperties.MlConfigTrainingFile);

            FileInfo trainingFile = Script.ResolveFilename(trainingID);

            IMLDataSet trainingSet = EncogUtility.LoadEGB2Memory(trainingFile);

            if (_kfold > 0)
            {
                trainingSet = new FoldedDataSet(trainingSet);
            }

            return trainingSet;
        }
コード例 #7
0
 /// <summary>
 /// Construct an enumerator.
 /// </summary>
 /// <param name="owner">The owner.</param>
 public FoldedEnumerator(FoldedDataSet owner)
 {
     _owner        = owner;
     _currentIndex = -1;
 }
コード例 #8
0
ファイル: CmdTrain.cs プロジェクト: neismit/emds
 private IMLDataSet x13d6d581f93d9ea3()
 {
     IMLDataSet set;
     string propertyString = base.Prop.GetPropertyString("ML:CONFIG_trainingFile");
     FileInfo filename = base.Script.ResolveFilename(propertyString);
     if (1 != 0)
     {
         set = EncogUtility.LoadEGB2Memory(filename);
         while (this._x33d31451731666c6 > 0)
         {
             do
             {
                 set = new FoldedDataSet(set);
             }
             while (-1 == 0);
             if (-2147483648 != 0)
             {
                 return set;
             }
         }
         return set;
     }
     return set;
 }