Changeset 8915 for branches/HeuristicLab.TreeSimplifier/HeuristicLab.Problems.DataAnalysis.Symbolic.Classification/3.4/SymbolicClassificationModel.cs
- Timestamp:
- 11/15/12 16:47:25 (11 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/HeuristicLab.TreeSimplifier/HeuristicLab.Problems.DataAnalysis.Symbolic.Classification/3.4/SymbolicClassificationModel.cs
r7259 r8915 32 32 [StorableClass] 33 33 [Item(Name = "SymbolicClassificationModel", Description = "Represents a symbolic classification model.")] 34 public class SymbolicClassificationModel : SymbolicDataAnalysisModel, ISymbolicClassificationModel { 34 public abstract class 35 SymbolicClassificationModel : SymbolicDataAnalysisModel, ISymbolicClassificationModel { 36 [Storable] 37 private double lowerEstimationLimit; 38 public double LowerEstimationLimit { get { return lowerEstimationLimit; } } 39 [Storable] 40 private double upperEstimationLimit; 41 public double UpperEstimationLimit { get { return upperEstimationLimit; } } 42 35 43 [StorableConstructor] 36 44 protected SymbolicClassificationModel(bool deserializing) : base(deserializing) { } 37 45 protected SymbolicClassificationModel(SymbolicClassificationModel original, Cloner cloner) 38 46 : base(original, cloner) { 47 lowerEstimationLimit = original.lowerEstimationLimit; 48 upperEstimationLimit = original.upperEstimationLimit; 39 49 } 40 p ublic SymbolicClassificationModel(ISymbolicExpressionTree tree, ISymbolicDataAnalysisExpressionTreeInterpreter interpreter)50 protected SymbolicClassificationModel(ISymbolicExpressionTree tree, ISymbolicDataAnalysisExpressionTreeInterpreter interpreter, double lowerEstimationLimit = double.MinValue, double upperEstimationLimit = double.MaxValue) 41 51 : base(tree, interpreter) { 52 this.lowerEstimationLimit = lowerEstimationLimit; 53 this.upperEstimationLimit = upperEstimationLimit; 42 54 } 43 55 44 public override IDeepCloneable Clone(Cloner cloner) { 45 return new SymbolicClassificationModel(this, cloner); 46 } 56 public abstract IEnumerable<double> GetEstimatedClassValues(Dataset dataset, IEnumerable<int> rows); 57 public abstract void RecalculateModelParameters(IClassificationProblemData problemData, IEnumerable<int> rows); 47 58 48 public IEnumerable<double> GetEstimatedClassValues(Dataset dataset, IEnumerable<int> rows) { 49 return Interpreter.GetSymbolicExpressionTreeValues(SymbolicExpressionTree, dataset, rows); 50 } 59 public abstract ISymbolicClassificationSolution CreateClassificationSolution(IClassificationProblemData problemData); 51 60 52 public ISymbolicClassificationSolution CreateClassificationSolution(IClassificationProblemData problemData) {53 return new SymbolicClassificationSolution(this, problemData);54 }55 61 IClassificationSolution IClassificationModel.CreateClassificationSolution(IClassificationProblemData problemData) { 56 62 return CreateClassificationSolution(problemData); 57 63 } 58 59 60 64 } 61 65 }
Note: See TracChangeset
for help on using the changeset viewer.