Free cookie consent management tool by TermsFeed Policy Generator

Ignore:
Timestamp:
10/29/09 16:07:55 (15 years ago)
Author:
gkronber
Message:

Implemented NodeBasedVariableImpactCalculator. #793

Location:
trunk/sources/HeuristicLab.SupportVectorMachines/3.2
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/sources/HeuristicLab.SupportVectorMachines/3.2/SupportVectorClassification.cs

    r2356 r2454  
    5454
    5555
    56     protected override IAnalyzerModel CreateSVMModel(IScope bestModelScope) {
    57       IAnalyzerModel model = new AnalyzerModel();
    58       model.SetMetaData("Cost", bestModelScope.GetVariableValue<DoubleData>("Cost", false).Data);
    59       model.SetMetaData("Nu", bestModelScope.GetVariableValue<DoubleData>("Nu", false).Data);
     56    protected override void CreateSpecificSVMModel(IScope bestModelScope, IAnalyzerModel model) {
    6057      DefaultClassificationOperators.PopulateAnalyzerModel(bestModelScope, model);
    61       return model;
    6258    }
    6359  }
  • trunk/sources/HeuristicLab.SupportVectorMachines/3.2/SupportVectorRegression.cs

    r2440 r2454  
    453453      seqProc.AddSubOperator(CreateEvaluator("Training"));
    454454      seqProc.AddSubOperator(predictorBuilder);
     455
     456      #region variable impacts
     457      VariableQualityImpactCalculator qualityImpactCalculator = new VariableQualityImpactCalculator();
     458      qualityImpactCalculator.GetVariableInfo("SamplesStart").ActualName = "ValidationSamplesStart";
     459      qualityImpactCalculator.GetVariableInfo("SamplesEnd").ActualName = "ValidationSamplesEnd";
     460
     461      seqProc.AddSubOperator(qualityImpactCalculator);
     462      #endregion
     463
     464
    455465      seqProc.AddSubOperator(CreateModelAnalyzerOperator());
    456466
     
    470480      model.SetMetaData("Cost", bestModelScope.GetVariableValue<DoubleData>("Cost", false).Data);
    471481      model.SetMetaData("Nu", bestModelScope.GetVariableValue<DoubleData>("Nu", false).Data);
     482      #region variable impacts
     483      ItemList qualityImpacts = bestModelScope.GetVariableValue<ItemList>(ModelingResult.VariableQualityImpact.ToString(), false);
     484      foreach (ItemList row in qualityImpacts) {
     485        string variableName = ((StringData)row[0]).Data;
     486        double impact = ((DoubleData)row[1]).Data;
     487        model.SetVariableResult(ModelingResult.VariableQualityImpact, variableName, impact);
     488        model.AddInputVariable(variableName);
     489      }
     490      #endregion
     491
     492      CreateSpecificSVMModel(bestModelScope, model);
     493
     494      return model;
     495    }
     496
     497    protected virtual void CreateSpecificSVMModel(IScope bestModelScope, IAnalyzerModel model) {
    472498      DefaultRegressionOperators.PopulateAnalyzerModel(bestModelScope, model);
    473 
    474       return model;
    475499    }
    476500
     
    498522    #region persistence
    499523    public override object Clone(IDictionary<Guid, object> clonedObjects) {
    500       SupportVectorRegression clone = (SupportVectorRegression) base.Clone(clonedObjects);
     524      SupportVectorRegression clone = (SupportVectorRegression)base.Clone(clonedObjects);
    501525      clone.engine = (IEngine)Auxiliary.Clone(Engine, clonedObjects);
    502526      return clone;
  • trunk/sources/HeuristicLab.SupportVectorMachines/3.2/SupportVectorTimeSeriesPrognosis.cs

    r2361 r2454  
    7272    }
    7373
    74     protected override IAnalyzerModel CreateSVMModel(IScope bestModelScope) {
    75       var model = new AnalyzerModel();
    76       model.SetMetaData("Cost", bestModelScope.GetVariableValue<DoubleData>("Cost", false).Data);
    77       model.SetMetaData("Nu", bestModelScope.GetVariableValue<DoubleData>("Nu", false).Data);
     74    protected override void CreateSpecificSVMModel(IScope bestModelScope, IAnalyzerModel model) {
    7875      DefaultTimeSeriesOperators.PopulateAnalyzerModel(bestModelScope, model);
    79       return model;
    8076    }
    8177  }
Note: See TracChangeset for help on using the changeset viewer.