Changeset 3666


Ignore:
Timestamp:
05/06/10 10:33:19 (12 years ago)
Author:
gkronber
Message:

Implemented operators to analyze and track training/test mse/R²/rel. Error over time for symbolic regression problems. #999

Location:
trunk/sources
Files:
1 added
5 edited

Legend:

Unmodified
Added
Removed
  • trunk/sources/HeuristicLab.Problems.DataAnalysis.Regression/3.3/HeuristicLab.Problems.DataAnalysis.Regression-3.3.csproj

    r3652 r3666  
    8686    <Compile Include="HeuristicLabProblemsDataAnalysisRegressionPlugin.cs" />
    8787    <Compile Include="Properties\AssemblyInfo.cs" />
     88    <Compile Include="Symbolic\Analyzers\SymbolicRegressionModelQualityCalculator.cs" />
    8889    <Compile Include="Symbolic\Analyzers\PopulationSymbolicRegressionModelQualityAnalyzer.cs" />
    8990    <Compile Include="Symbolic\Analyzers\PopulationSymbolicRegressionVariableFrequencyAnalyzer.cs" />
     
    142143      <Name>HeuristicLab.Operators-3.3</Name>
    143144    </ProjectReference>
     145    <ProjectReference Include="..\..\HeuristicLab.Optimization.Operators\3.3\HeuristicLab.Optimization.Operators-3.3.csproj">
     146      <Project>{25087811-F74C-4128-BC86-8324271DA13E}</Project>
     147      <Name>HeuristicLab.Optimization.Operators-3.3</Name>
     148    </ProjectReference>
    144149    <ProjectReference Include="..\..\HeuristicLab.Optimization\3.3\HeuristicLab.Optimization-3.3.csproj">
    145150      <Project>{14AB8D24-25BC-400C-A846-4627AA945192}</Project>
  • trunk/sources/HeuristicLab.Problems.DataAnalysis.Regression/3.3/HeuristicLabProblemsDataAnalysisRegressionPlugin.cs.frame

    r3651 r3666  
    3737  [PluginDependency("HeuristicLab.Operators", "3.3.0.0")]
    3838  [PluginDependency("HeuristicLab.Optimization", "3.3.0.0")]
     39  [PluginDependency("HeuristicLab.Optimization.Operators", "3.3.0.0")]
    3940  [PluginDependency("HeuristicLab.Parameters", "3.3.0.0")]
    4041  [PluginDependency("HeuristicLab.Persistence", "3.3.0.0")]
  • trunk/sources/HeuristicLab.Problems.DataAnalysis.Regression/3.3/Symbolic/Analyzers/PopulationSymbolicRegressionModelQualityAnalyzer.cs

    r3662 r3666  
    3636using HeuristicLab.Analysis;
    3737using HeuristicLab.Problems.DataAnalysis.Evaluators;
     38using HeuristicLab.Optimization.Operators;
    3839
    3940namespace HeuristicLab.Problems.DataAnalysis.Regression.Symbolic.Analyzers {
     
    4849    private const string ProblemDataParameterName = "ProblemData";
    4950    private const string ResultsParameterName = "Results";
    50     private const string TrainingValuesParameterName = "TrainingValues";
    51     private const string TrainingRSQuaredParameterName = "TrainingRSquared";
    52     private const string MinRSQuaredParameterName = "MinRSquared";
    53     private const string AvgRSQuaredParameterName = "AvgRSquared";
    54     private const string MaxRSQuaredParameterName = "MaxRSquared";
    55     private const string TrainingRSquaredValuesParameterName = "TrainingRSquaredValues";
    56     private const string SamplesStartParameterName = "SamplesStart";
    57     private const string SamplesEndParameterName = "SamplesEnd";
     51
     52    private const string TrainingMeanSquaredErrorQualityParameterName = "TrainingMeanSquaredError";
     53    private const string MinTrainingMeanSquaredErrorQualityParameterName = "MinTrainingMeanSquaredError";
     54    private const string MaxTrainingMeanSquaredErrorQualityParameterName = "MaxTrainingMeanSquaredError";
     55    private const string AverageTrainingMeanSquaredErrorQualityParameterName = "AverageTrainingMeanSquaredError";
     56
     57    private const string TrainingAverageRelativeErrorQualityParameterName = "TrainingAverageRelativeError";
     58    private const string MinTrainingAverageRelativeErrorQualityParameterName = "MinTrainingAverageRelativeError";
     59    private const string MaxTrainingAverageRelativeErrorQualityParameterName = "MaxTrainingAverageRelativeError";
     60    private const string AverageTrainingAverageRelativeErrorQualityParameterName = "AverageTrainingAverageRelativeError";
     61
     62    private const string TrainingRSquaredQualityParameterName = "TrainingRSquared";
     63    private const string MinTrainingRSquaredQualityParameterName = "MinTrainingRSquared";
     64    private const string MaxTrainingRSquaredQualityParameterName = "MaxTrainingRSquared";
     65    private const string AverageTrainingRSquaredQualityParameterName = "AverageTrainingRSquared";
     66
     67    private const string TestMeanSquaredErrorQualityParameterName = "TestMeanSquaredError";
     68    private const string MinTestMeanSquaredErrorQualityParameterName = "MinTestMeanSquaredError";
     69    private const string MaxTestMeanSquaredErrorQualityParameterName = "MaxTestMeanSquaredError";
     70    private const string AverageTestMeanSquaredErrorQualityParameterName = "AverageTestMeanSquaredError";
     71
     72    private const string TestAverageRelativeErrorQualityParameterName = "TestAverageRelativeError";
     73    private const string MinTestAverageRelativeErrorQualityParameterName = "MinTestAverageRelativeError";
     74    private const string MaxTestAverageRelativeErrorQualityParameterName = "MaxTestAverageRelativeError";
     75    private const string AverageTestAverageRelativeErrorQualityParameterName = "AverageTestAverageRelativeError";
     76
     77    private const string TestRSquaredQualityParameterName = "TestRSquared";
     78    private const string MinTestRSquaredQualityParameterName = "MinTestRSquared";
     79    private const string MaxTestRSquaredQualityParameterName = "MaxTestRSquared";
     80    private const string AverageTestRSquaredQualityParameterName = "AverageTestRSquared";
     81
     82    private const string RSquaredValuesParameterName = "R-squared Values";
     83    private const string MeanSquaredErrorValuesParameterName = "Mean Squared Error Values";
     84    private const string RelativeErrorValuesParameterName = "Average Relative Error Values";
     85
     86    private const string TrainingSamplesStartParameterName = "TrainingSamplesStart";
     87    private const string TrainingSamplesEndParameterName = "TrainingSamplesEnd";
     88    private const string TestSamplesStartParameterName = "TestSamplesStart";
     89    private const string TestSamplesEndParameterName = "TestSamplesEnd";
    5890    private const string UpperEstimationLimitParameterName = "UpperEstimationLimit";
    5991    private const string LowerEstimationLimitParameterName = "LowerEstimationLimit";
     
    72104      get { return (ILookupParameter<ResultCollection>)Parameters[ResultsParameterName]; }
    73105    }
    74     public IValueLookupParameter<IntValue> SamplesStartParameter {
    75       get { return (IValueLookupParameter<IntValue>)Parameters[SamplesStartParameterName]; }
    76     }
    77     public IValueLookupParameter<IntValue> SamplesEndParameter {
    78       get { return (IValueLookupParameter<IntValue>)Parameters[SamplesEndParameterName]; }
     106    public IValueLookupParameter<IntValue> TrainingSamplesStartParameter {
     107      get { return (IValueLookupParameter<IntValue>)Parameters[TrainingSamplesStartParameterName]; }
     108    }
     109    public IValueLookupParameter<IntValue> TrainingSamplesEndParameter {
     110      get { return (IValueLookupParameter<IntValue>)Parameters[TrainingSamplesEndParameterName]; }
     111    }
     112    public IValueLookupParameter<IntValue> TestSamplesStartParameter {
     113      get { return (IValueLookupParameter<IntValue>)Parameters[TestSamplesStartParameterName]; }
     114    }
     115    public IValueLookupParameter<IntValue> TestSamplesEndParameter {
     116      get { return (IValueLookupParameter<IntValue>)Parameters[TestSamplesEndParameterName]; }
    79117    }
    80118    public IValueLookupParameter<DoubleValue> UpperEstimationLimitParameter {
     
    92130      Parameters.Add(new LookupParameter<DataAnalysisProblemData>(ProblemDataParameterName, "The problem data containing the input varaibles for the symbolic regression problem."));
    93131      Parameters.Add(new LookupParameter<ResultCollection>(ResultsParameterName, "The result collection where the best symbolic regression solution should be stored."));
    94       Parameters.Add(new ValueLookupParameter<IntValue>(SamplesStartParameterName, "The first index of the data set partition on which the model quality values should be calculated."));
    95       Parameters.Add(new ValueLookupParameter<IntValue>(SamplesEndParameterName, "The first index of the data set partition on which the model quality values should be calculated."));
     132      Parameters.Add(new ValueLookupParameter<IntValue>(TrainingSamplesStartParameterName, "The first index of the training data set partition on which the model quality values should be calculated."));
     133      Parameters.Add(new ValueLookupParameter<IntValue>(TrainingSamplesEndParameterName, "The last index of the training data set partition on which the model quality values should be calculated."));
     134      Parameters.Add(new ValueLookupParameter<IntValue>(TestSamplesStartParameterName, "The first index of the test data set partition on which the model quality values should be calculated."));
     135      Parameters.Add(new ValueLookupParameter<IntValue>(TestSamplesEndParameterName, "The last index of the test data set partition on which the model quality values should be calculated."));
    96136      Parameters.Add(new ValueLookupParameter<DoubleValue>(UpperEstimationLimitParameterName, "The upper limit that should be used as cut off value for the output values of symbolic expression trees."));
    97137      Parameters.Add(new ValueLookupParameter<DoubleValue>(LowerEstimationLimitParameterName, "The lower limit that should be used as cut off value for the output values of symbolic expression trees."));
     138      Parameters.Add(new LookupParameter<DataTable>(MeanSquaredErrorValuesParameterName, "The data table to collect mean squared error values."));
     139      Parameters.Add(new LookupParameter<DataTable>(RSquaredValuesParameterName, "The data table to collect R² correlation coefficient values."));
     140      Parameters.Add(new LookupParameter<DataTable>(RelativeErrorValuesParameterName, "The data table to collect relative error values."));
    98141
    99142      #region operator initialization
    100143      // should be extended to calculate MSE, rel. Error and R² on the training (validation) and test set
    101144      UniformSubScopesProcessor subScopesProcessor = new UniformSubScopesProcessor();
    102       SimpleSymbolicRegressionEvaluator simpleEvaluator = new SimpleSymbolicRegressionEvaluator();
    103       SimpleRSquaredEvaluator simpleR2Evalator = new SimpleRSquaredEvaluator();
    104       MinAverageMaxValueAnalyzer minAvgMaxAnalyzer = new MinAverageMaxValueAnalyzer();
     145      SymbolicRegressionModelQualityCalculator trainingQualityCalculator = new SymbolicRegressionModelQualityCalculator();
     146      SymbolicRegressionModelQualityCalculator testQualityCalculator = new SymbolicRegressionModelQualityCalculator();
     147      MinAverageMaxValueCalculator minAvgMaxTrainingMseCalculator = new MinAverageMaxValueCalculator();
     148      MinAverageMaxValueCalculator minAvgMaxTestMseCalculator = new MinAverageMaxValueCalculator();
     149      MinAverageMaxValueCalculator minAvgMaxTrainingR2Calculator = new MinAverageMaxValueCalculator();
     150      MinAverageMaxValueCalculator minAvgMaxTestR2Calculator = new MinAverageMaxValueCalculator();
     151      MinAverageMaxValueCalculator minAvgMaxTrainingRelErrorCalculator = new MinAverageMaxValueCalculator();
     152      MinAverageMaxValueCalculator minAvgMaxTestRelErrorCalculator = new MinAverageMaxValueCalculator();
     153      DataTableValuesCollector mseDataTableValuesCollector = new DataTableValuesCollector();
     154      DataTableValuesCollector r2DataTableValuesCollector = new DataTableValuesCollector();
     155      DataTableValuesCollector relErrorDataTableValuesCollector = new DataTableValuesCollector();
     156      ResultsCollector resultsCollector = new ResultsCollector();
    105157      #endregion
    106158
    107159      #region parameter wiring
    108       simpleEvaluator.SymbolicExpressionTreeParameter.ActualName = SymbolicExpressionTreeParameter.Name;
    109       simpleEvaluator.RegressionProblemDataParameter.ActualName = ProblemDataParameter.Name;
    110       simpleEvaluator.SamplesStartParameter.ActualName = SamplesStartParameter.Name;
    111       simpleEvaluator.SamplesEndParameter.ActualName = SamplesEndParameter.Name;
    112       simpleEvaluator.LowerEstimationLimitParameter.ActualName = LowerEstimationLimitParameter.Name;
    113       simpleEvaluator.UpperEstimationLimitParameter.ActualName = UpperEstimationLimitParameter.Name;
    114       simpleEvaluator.SymbolicExpressionTreeInterpreterParameter.ActualName = SymbolicExpressionTreeInterpreterParameter.Name;
    115       simpleEvaluator.ValuesParameter.ActualName = TrainingValuesParameterName;
    116       simpleR2Evalator.ValuesParameter.ActualName = TrainingValuesParameterName;
    117       simpleR2Evalator.RSquaredParameter.ActualName = TrainingRSQuaredParameterName;
    118       minAvgMaxAnalyzer.ValueParameter.ActualName = TrainingRSQuaredParameterName;
    119       minAvgMaxAnalyzer.AverageValueParameter.ActualName = AvgRSQuaredParameterName;
    120       minAvgMaxAnalyzer.MaxValueParameter.ActualName = MaxRSQuaredParameterName;
    121       minAvgMaxAnalyzer.MinValueParameter.ActualName = MinRSQuaredParameterName;
    122       minAvgMaxAnalyzer.ResultsParameter.ActualName = ResultsParameter.Name;
    123       minAvgMaxAnalyzer.ValuesParameter.ActualName = TrainingRSquaredValuesParameterName;
     160      trainingQualityCalculator.LowerEstimationLimitParameter.ActualName = LowerEstimationLimitParameter.ActualName;
     161      trainingQualityCalculator.ProblemDataParameter.ActualName = ProblemDataParameter.ActualName;
     162      trainingQualityCalculator.SamplesStartParameter.ActualName = TrainingSamplesStartParameter.ActualName;
     163      trainingQualityCalculator.SamplesEndParameter.ActualName = TrainingSamplesEndParameter.ActualName;
     164      trainingQualityCalculator.SymbolicExpressionTreeInterpreterParameter.ActualName = SymbolicExpressionTreeInterpreterParameter.ActualName;
     165      trainingQualityCalculator.SymbolicExpressionTreeParameter.ActualName = SymbolicExpressionTreeParameter.ActualName;
     166      trainingQualityCalculator.UpperEstimationLimitParameter.ActualName = UpperEstimationLimitParameter.ActualName;
     167      trainingQualityCalculator.AverageRelativeErrorQualityParameter.ActualName = TrainingAverageRelativeErrorQualityParameterName;
     168      trainingQualityCalculator.MeanSquaredErrorQualityParameter.ActualName = TrainingMeanSquaredErrorQualityParameterName;
     169      trainingQualityCalculator.RSquaredQualityParameter.ActualName = TrainingRSquaredQualityParameterName;
     170
     171      testQualityCalculator.LowerEstimationLimitParameter.ActualName = LowerEstimationLimitParameter.ActualName;
     172      testQualityCalculator.ProblemDataParameter.ActualName = ProblemDataParameter.ActualName;
     173      testQualityCalculator.SamplesStartParameter.ActualName = TestSamplesStartParameter.ActualName;
     174      testQualityCalculator.SamplesEndParameter.ActualName = TestSamplesEndParameter.ActualName;
     175      testQualityCalculator.SymbolicExpressionTreeInterpreterParameter.ActualName = SymbolicExpressionTreeInterpreterParameter.ActualName;
     176      testQualityCalculator.SymbolicExpressionTreeParameter.ActualName = SymbolicExpressionTreeParameter.ActualName;
     177      testQualityCalculator.UpperEstimationLimitParameter.ActualName = UpperEstimationLimitParameter.ActualName;
     178      testQualityCalculator.AverageRelativeErrorQualityParameter.ActualName = TestAverageRelativeErrorQualityParameterName;
     179      testQualityCalculator.MeanSquaredErrorQualityParameter.ActualName = TestMeanSquaredErrorQualityParameterName;
     180      testQualityCalculator.RSquaredQualityParameter.ActualName = TestRSquaredQualityParameterName;
     181
     182      #region training min/avg/max
     183      minAvgMaxTrainingMseCalculator.AverageValueParameter.ActualName = AverageTrainingMeanSquaredErrorQualityParameterName;
     184      minAvgMaxTrainingMseCalculator.MaxValueParameter.ActualName = MaxTrainingMeanSquaredErrorQualityParameterName;
     185      minAvgMaxTrainingMseCalculator.MinValueParameter.ActualName = MinTrainingMeanSquaredErrorQualityParameterName;
     186      minAvgMaxTrainingMseCalculator.ValueParameter.ActualName = TrainingMeanSquaredErrorQualityParameterName;
     187
     188      minAvgMaxTrainingR2Calculator.AverageValueParameter.ActualName = AverageTrainingRSquaredQualityParameterName;
     189      minAvgMaxTrainingR2Calculator.MaxValueParameter.ActualName = MaxTrainingRSquaredQualityParameterName;
     190      minAvgMaxTrainingR2Calculator.MinValueParameter.ActualName = MinTrainingRSquaredQualityParameterName;
     191      minAvgMaxTrainingR2Calculator.ValueParameter.ActualName = TrainingRSquaredQualityParameterName;
     192
     193      minAvgMaxTrainingRelErrorCalculator.AverageValueParameter.ActualName = AverageTrainingAverageRelativeErrorQualityParameterName;
     194      minAvgMaxTrainingRelErrorCalculator.MaxValueParameter.ActualName = MaxTrainingAverageRelativeErrorQualityParameterName;
     195      minAvgMaxTrainingRelErrorCalculator.MinValueParameter.ActualName = MinTrainingAverageRelativeErrorQualityParameterName;
     196      minAvgMaxTrainingRelErrorCalculator.ValueParameter.ActualName = TrainingAverageRelativeErrorQualityParameterName;
     197      #endregion
     198
     199      #region test min/avg/max
     200      minAvgMaxTestMseCalculator.AverageValueParameter.ActualName = AverageTestMeanSquaredErrorQualityParameterName;
     201      minAvgMaxTestMseCalculator.MaxValueParameter.ActualName = MaxTestMeanSquaredErrorQualityParameterName;
     202      minAvgMaxTestMseCalculator.MinValueParameter.ActualName = MinTestMeanSquaredErrorQualityParameterName;
     203      minAvgMaxTestMseCalculator.ValueParameter.ActualName = TestMeanSquaredErrorQualityParameterName;
     204
     205      minAvgMaxTestR2Calculator.AverageValueParameter.ActualName = AverageTestRSquaredQualityParameterName;
     206      minAvgMaxTestR2Calculator.MaxValueParameter.ActualName = MaxTestRSquaredQualityParameterName;
     207      minAvgMaxTestR2Calculator.MinValueParameter.ActualName = MinTestRSquaredQualityParameterName;
     208      minAvgMaxTestR2Calculator.ValueParameter.ActualName = TestRSquaredQualityParameterName;
     209
     210      minAvgMaxTestRelErrorCalculator.AverageValueParameter.ActualName = AverageTestAverageRelativeErrorQualityParameterName;
     211      minAvgMaxTestRelErrorCalculator.MaxValueParameter.ActualName = MaxTestAverageRelativeErrorQualityParameterName;
     212      minAvgMaxTestRelErrorCalculator.MinValueParameter.ActualName = MinTestAverageRelativeErrorQualityParameterName;
     213      minAvgMaxTestRelErrorCalculator.ValueParameter.ActualName = TestAverageRelativeErrorQualityParameterName;
     214      #endregion
     215
     216      mseDataTableValuesCollector.CollectedValues.Add(new LookupParameter<DoubleValue>(AverageTrainingMeanSquaredErrorQualityParameterName, null, AverageTrainingMeanSquaredErrorQualityParameterName));
     217      mseDataTableValuesCollector.CollectedValues.Add(new LookupParameter<DoubleValue>(MaxTrainingMeanSquaredErrorQualityParameterName, null, MaxTrainingMeanSquaredErrorQualityParameterName));
     218      mseDataTableValuesCollector.CollectedValues.Add(new LookupParameter<DoubleValue>(MinTrainingMeanSquaredErrorQualityParameterName, null, MinTrainingMeanSquaredErrorQualityParameterName));
     219      mseDataTableValuesCollector.CollectedValues.Add(new LookupParameter<DoubleValue>(AverageTestMeanSquaredErrorQualityParameterName, null, AverageTestMeanSquaredErrorQualityParameterName));
     220      mseDataTableValuesCollector.CollectedValues.Add(new LookupParameter<DoubleValue>(MaxTestMeanSquaredErrorQualityParameterName, null, MaxTestMeanSquaredErrorQualityParameterName));
     221      mseDataTableValuesCollector.CollectedValues.Add(new LookupParameter<DoubleValue>(MinTestMeanSquaredErrorQualityParameterName, null, MinTestMeanSquaredErrorQualityParameterName));
     222      mseDataTableValuesCollector.DataTableParameter.ActualName = MeanSquaredErrorValuesParameterName;
     223
     224      r2DataTableValuesCollector.CollectedValues.Add(new LookupParameter<DoubleValue>(AverageTrainingRSquaredQualityParameterName, null, AverageTrainingRSquaredQualityParameterName));
     225      r2DataTableValuesCollector.CollectedValues.Add(new LookupParameter<DoubleValue>(MaxTrainingRSquaredQualityParameterName, null, MaxTrainingRSquaredQualityParameterName));
     226      r2DataTableValuesCollector.CollectedValues.Add(new LookupParameter<DoubleValue>(MinTrainingRSquaredQualityParameterName, null, MinTrainingRSquaredQualityParameterName));
     227      r2DataTableValuesCollector.CollectedValues.Add(new LookupParameter<DoubleValue>(AverageTestRSquaredQualityParameterName, null, AverageTestRSquaredQualityParameterName));
     228      r2DataTableValuesCollector.CollectedValues.Add(new LookupParameter<DoubleValue>(MaxTestRSquaredQualityParameterName, null, MaxTestRSquaredQualityParameterName));
     229      r2DataTableValuesCollector.CollectedValues.Add(new LookupParameter<DoubleValue>(MinTestRSquaredQualityParameterName, null, MinTestRSquaredQualityParameterName));
     230      r2DataTableValuesCollector.DataTableParameter.ActualName = RSquaredValuesParameterName;
     231
     232      relErrorDataTableValuesCollector.CollectedValues.Add(new LookupParameter<DoubleValue>(AverageTrainingAverageRelativeErrorQualityParameterName, null, AverageTrainingAverageRelativeErrorQualityParameterName));
     233      relErrorDataTableValuesCollector.CollectedValues.Add(new LookupParameter<DoubleValue>(MaxTrainingAverageRelativeErrorQualityParameterName, null, MaxTrainingAverageRelativeErrorQualityParameterName));
     234      relErrorDataTableValuesCollector.CollectedValues.Add(new LookupParameter<DoubleValue>(MinTrainingAverageRelativeErrorQualityParameterName, null, MinTrainingAverageRelativeErrorQualityParameterName));
     235      relErrorDataTableValuesCollector.CollectedValues.Add(new LookupParameter<DoubleValue>(AverageTestAverageRelativeErrorQualityParameterName, null, AverageTestAverageRelativeErrorQualityParameterName));
     236      relErrorDataTableValuesCollector.CollectedValues.Add(new LookupParameter<DoubleValue>(MaxTestAverageRelativeErrorQualityParameterName, null, MaxTestAverageRelativeErrorQualityParameterName));
     237      relErrorDataTableValuesCollector.CollectedValues.Add(new LookupParameter<DoubleValue>(MinTestAverageRelativeErrorQualityParameterName, null, MinTestAverageRelativeErrorQualityParameterName));
     238      relErrorDataTableValuesCollector.DataTableParameter.ActualName = RelativeErrorValuesParameterName;
     239
     240      resultsCollector.CollectedValues.Add(new LookupParameter<DataTable>(MeanSquaredErrorValuesParameterName));
     241      resultsCollector.CollectedValues.Add(new LookupParameter<DataTable>(RSquaredValuesParameterName));
     242      resultsCollector.CollectedValues.Add(new LookupParameter<DataTable>(RelativeErrorValuesParameterName));
     243      resultsCollector.ResultsParameter.ActualName = ResultsParameter.Name;
     244
    124245      #endregion
    125246
    126247      #region operator graph
    127248      OperatorGraph.InitialOperator = subScopesProcessor;
    128       subScopesProcessor.Operator = simpleEvaluator;
    129       simpleEvaluator.Successor = simpleR2Evalator;
    130       simpleR2Evalator.Successor = null;
    131       subScopesProcessor.Successor = minAvgMaxAnalyzer;
    132       minAvgMaxAnalyzer.Successor = null;
     249      subScopesProcessor.Operator = trainingQualityCalculator;
     250      trainingQualityCalculator.Successor = testQualityCalculator;
     251      testQualityCalculator.Successor = null;
     252      subScopesProcessor.Successor = minAvgMaxTrainingMseCalculator;
     253      minAvgMaxTrainingMseCalculator.Successor = minAvgMaxTestMseCalculator;
     254      minAvgMaxTestMseCalculator.Successor = minAvgMaxTrainingR2Calculator;
     255      minAvgMaxTrainingR2Calculator.Successor = minAvgMaxTestR2Calculator;
     256      minAvgMaxTestR2Calculator.Successor = minAvgMaxTrainingRelErrorCalculator;
     257      minAvgMaxTrainingRelErrorCalculator.Successor = minAvgMaxTestRelErrorCalculator;
     258      minAvgMaxTestRelErrorCalculator.Successor = mseDataTableValuesCollector;
     259      mseDataTableValuesCollector.Successor = r2DataTableValuesCollector;
     260      r2DataTableValuesCollector.Successor = relErrorDataTableValuesCollector;
     261      relErrorDataTableValuesCollector.Successor = resultsCollector;
    133262      #endregion
    134263
  • trunk/sources/HeuristicLab.Problems.DataAnalysis.Regression/3.3/Symbolic/SymbolicRegressionProblem.cs

    r3652 r3666  
    176176    public IntValue ValidationSamplesEnd {
    177177      get { return new IntValue(DataAnalysisProblemData.TrainingSamplesEnd.Value); }
     178    }
     179    public IntValue TestSamplesStart {
     180      get { return DataAnalysisProblemData.TestSamplesStart; }
     181    }
     182    public IntValue TestSamplesEnd {
     183      get { return DataAnalysisProblemData.TestSamplesEnd; }
    178184    }
    179185    #endregion
     
    397403          modelQualityAnalyzer.LowerEstimationLimitParameter.ActualName = LowerEstimationLimitParameter.Name;
    398404          modelQualityAnalyzer.SymbolicExpressionTreeInterpreterParameter.ActualName = SymbolicExpressionTreeInterpreterParameter.Name;
    399           modelQualityAnalyzer.SamplesStartParameter.Value = TrainingSamplesStart;
    400           modelQualityAnalyzer.SamplesEndParameter.Value = ValidationSamplesEnd;
     405          modelQualityAnalyzer.TrainingSamplesStartParameter.Value = TrainingSamplesStart;
     406          modelQualityAnalyzer.TrainingSamplesEndParameter.Value = ValidationSamplesEnd;
     407          modelQualityAnalyzer.TestSamplesStartParameter.Value = TestSamplesStart;
     408          modelQualityAnalyzer.TestSamplesEndParameter.Value = TestSamplesEnd;
    401409        }
    402410      }
  • trunk/sources/HeuristicLab.Problems.DataAnalysis/3.3/Evaluators/SimpleEvaluator.cs

    r3452 r3666  
    4646      DoubleMatrix values = ValuesParameter.ActualValue;
    4747      Apply(values);
    48       return null;
     48      return base.Apply();
    4949    }
    5050
Note: See TracChangeset for help on using the changeset viewer.