Changeset 5169


Ignore:
Timestamp:
12/23/10 11:37:29 (10 years ago)
Author:
mkommend
Message:

Added check for ExecutionContext in scaled evaluators (ticket #1352).

Location:
trunk/sources/HeuristicLab.Problems.DataAnalysis.Regression/3.3/Symbolic/Evaluators
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/sources/HeuristicLab.Problems.DataAnalysis.Regression/3.3/Symbolic/Evaluators/SymbolicRegressionScaledMeanAndVarianceSquaredErrorEvaluator.cs

    r4722 r5169  
    115115      double bias, variance, covariance;
    116116      double mse;
    117       if (ApplyScaling.Value) {
    118         mse = Calculate(interpreter, solution, LowerEstimationLimit.Value, UpperEstimationLimit.Value, dataset, targetVariable, rows, out beta, out alpha, out meanSE, out varianceSE, out count, out bias, out variance, out covariance);
    119         Alpha = new DoubleValue(alpha);
    120         Beta = new DoubleValue(beta);
     117      if (ExecutionContext != null) {
     118        if (ApplyScaling.Value) {
     119          mse = Calculate(interpreter, solution, lowerEstimationLimit, upperEstimationLimit, dataset, targetVariable, rows, out beta, out alpha, out meanSE, out varianceSE, out count, out bias, out variance, out covariance);
     120          Alpha = new DoubleValue(alpha);
     121          Beta = new DoubleValue(beta);
     122        } else {
     123          mse = CalculateWithScaling(interpreter, solution,lowerEstimationLimit, upperEstimationLimit, dataset, targetVariable, rows, 1, 0, out meanSE, out varianceSE, out count, out bias, out variance, out covariance);
     124        }
     125        QualityVariance = new DoubleValue(varianceSE);
     126        QualitySamples = new IntValue(count);
     127        DecompositionBiasParameter.ActualValue = new DoubleValue(bias / meanSE);
     128        DecompositionVarianceParameter.ActualValue = new DoubleValue(variance / meanSE);
     129        DecompositionCovarianceParameter.ActualValue = new DoubleValue(covariance / meanSE);
    121130      } else {
    122         mse = CalculateWithScaling(interpreter, solution, LowerEstimationLimit.Value, UpperEstimationLimit.Value, dataset, targetVariable, rows, 1, 0, out meanSE, out varianceSE, out count, out bias, out variance, out covariance);
    123       }
    124       QualityVariance = new DoubleValue(varianceSE);
    125       QualitySamples = new IntValue(count);
    126       DecompositionBiasParameter.ActualValue = new DoubleValue(bias / meanSE);
    127       DecompositionVarianceParameter.ActualValue = new DoubleValue(variance / meanSE);
    128       DecompositionCovarianceParameter.ActualValue = new DoubleValue(covariance / meanSE);
     131        if (ApplyScalingParameter.Value != null && ApplyScalingParameter.Value.Value)
     132          mse = Calculate(interpreter, solution, lowerEstimationLimit, upperEstimationLimit, dataset, targetVariable, rows, out beta, out alpha, out meanSE, out varianceSE, out count, out bias, out variance, out covariance);
     133        else
     134          mse = CalculateWithScaling(interpreter, solution, lowerEstimationLimit, upperEstimationLimit, dataset, targetVariable, rows, 1, 0, out meanSE, out varianceSE, out count, out bias, out variance, out covariance);
     135      }
     136
    129137      return mse;
    130138    }
  • trunk/sources/HeuristicLab.Problems.DataAnalysis.Regression/3.3/Symbolic/Evaluators/SymbolicRegressionScaledMeanSquaredErrorEvaluator.cs

    r4722 r5169  
    7070      double alpha, beta;
    7171      double mse = Calculate(interpreter, solution, lowerEstimationLimit, upperEstimationLimit, dataset, targetVariable, rows, out beta, out alpha);
    72       AlphaParameter.ActualValue = new DoubleValue(alpha);
    73       BetaParameter.ActualValue = new DoubleValue(beta);
     72      if (ExecutionContext != null) {
     73        AlphaParameter.ActualValue = new DoubleValue(alpha);
     74        BetaParameter.ActualValue = new DoubleValue(beta);
     75      }
    7476      return mse;
    7577    }
Note: See TracChangeset for help on using the changeset viewer.