protected override OptimizationAlgorithm ConstructOptimizationAlgorithm(IChannel ch)
        {
            OptimizationAlgorithm optimizationAlgorithm = base.ConstructOptimizationAlgorithm(ch);

            if (Args.UseLineSearch)
            {
                var lossCalculator = new BinaryClassificationTest(optimizationAlgorithm.TrainingScores, _trainSetLabels, _sigmoidParameter);
                // REVIEW: we should makeloss indices an enum in BinaryClassificationTest
                optimizationAlgorithm.AdjustTreeOutputsOverride = new LineSearch(lossCalculator, Args.UnbalancedSets ? 3 /*Unbalanced  sets  loss*/ : 1 /*normal loss*/, Args.NumPostBracketSteps, Args.MinStepSize);
            }
            return(optimizationAlgorithm);
        }
        protected override OptimizationAlgorithm ConstructOptimizationAlgorithm(IChannel ch)
        {
            OptimizationAlgorithm optimizationAlgorithm = base.ConstructOptimizationAlgorithm(ch);

            if (Args.UseLineSearch)
            {
                var lossCalculator = new RegressionTest(optimizationAlgorithm.TrainingScores);
                // REVIEW: We should make loss indices an enum in BinaryClassificationTest.
                optimizationAlgorithm.AdjustTreeOutputsOverride = new LineSearch(lossCalculator, 1 /*L2 error*/, Args.NumPostBracketSteps, Args.MinStepSize);
            }

            return(optimizationAlgorithm);
        }
Esempio n. 3
0
        protected override Task Context()
        {
            _parameterIdentificationRunModeMapper = A.Fake <ParameterIdentificationRunModeMapper>();
            _algorithmMapper = A.Fake <ParameterIdentificationAlgorithmMapper>();
            sut = new ParameterIdentificationConfigurationMapper(_parameterIdentificationRunModeMapper, _algorithmMapper);

            _snapshotRunMode                      = new ParameterIdentificationRunMode();
            _snapshotAlgorithmProperties          = new OptimizationAlgorithm();
            _parameterIdentificationConfiguration = new ParameterIdentificationConfiguration
            {
                CalculateJacobian   = true,
                LLOQMode            = LLOQModes.OnlyObservedData,
                RemoveLLOQMode      = RemoveLLOQModes.NoTrailing,
                RunMode             = new StandardParameterIdentificationRunMode(),
                AlgorithmProperties = new OptimizationAlgorithmProperties("HELLO")
            };

            A.CallTo(() => _parameterIdentificationRunModeMapper.MapToSnapshot(_parameterIdentificationConfiguration.RunMode)).Returns(_snapshotRunMode);
            A.CallTo(() => _algorithmMapper.MapToSnapshot(_parameterIdentificationConfiguration.AlgorithmProperties)).Returns(_snapshotAlgorithmProperties);
            return(_completed);
        }