예제 #1
0
        public static TrainingAlgorithm CreateAlgoRithm(TrainingAlgorithmType type)
        {
            TrainingAlgorithm algorithm;

            switch (type)
            {
            case (TrainingAlgorithmType.Normal):
                algorithm = new TrainingAlgorithmNormal();
                break;

            case (TrainingAlgorithmType.HoldBest):
                algorithm = new TrainingAlgorithmHoldBest();
                break;

            case (TrainingAlgorithmType.HoldBestNarrowLearning):
                algorithm = new TrainingAlgorithmHoldBestNarrowLearning();
                break;

            case (TrainingAlgorithmType.HoldBestInvestigate):
                algorithm = new TrainingAlgorithmHoldBestInvestigate();
                break;

            case (TrainingAlgorithmType.HoldBestCullOutliersInvestigate):
                algorithm = new TrainingAlgorithmHoldBestCullOutliersInvestigate();
                break;

            default:
                algorithm = new TrainingAlgorithmNormal();
                break;
            }
            return(algorithm);
        }
예제 #2
0
        private void StartUnsafeTraining(TrainingAlgorithmType trainingAlgorithm)
        {
            switch (trainingAlgorithm)
            {
            case TrainingAlgorithmType.RProp:
                TrainingRProp();
                break;

            case TrainingAlgorithmType.ParallelRProp:
                ParallelTrainingRProp();
                break;

            case TrainingAlgorithmType.GeneticAlg:
                TrainingGeneticAlg(true);
                break;

            case TrainingAlgorithmType.BProp:
            default:
                UnsafeTrainingBProp();
                break;
            }
        }