Free cookie consent management tool by TermsFeed Policy Generator

Changeset 6603 for trunk/sources


Ignore:
Timestamp:
07/27/11 15:31:51 (13 years ago)
Author:
mkommend
Message:

#1600: Added possibility to create regression solutions from regression models.

Location:
trunk/sources
Files:
8 edited

Legend:

Unmodified
Added
Removed
  • trunk/sources/HeuristicLab.Algorithms.DataAnalysis/3.4/NearestNeighbour/NearestNeighbourModel.cs

    r6584 r6603  
    2222using System;
    2323using System.Collections.Generic;
    24 using System.IO;
    2524using System.Linq;
    26 using System.Text;
    2725using HeuristicLab.Common;
    2826using HeuristicLab.Core;
    2927using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
    3028using HeuristicLab.Problems.DataAnalysis;
    31 using SVM;
    3229
    3330namespace HeuristicLab.Algorithms.DataAnalysis {
     
    180177    }
    181178
     179    public INearestNeighbourRegressionSolution CreateRegressionSolution(IRegressionProblemData problemData) {
     180      return new NearestNeighbourRegressionSolution(problemData, this);
     181    }
     182    IRegressionSolution IRegressionModel.CreateRegressionSolution(IRegressionProblemData problemData) {
     183      return CreateRegressionSolution(problemData);
     184    }
     185
    182186    #region events
    183187    public event EventHandler Changed;
  • trunk/sources/HeuristicLab.Algorithms.DataAnalysis/3.4/NeuralNetwork/NeuralNetworkEnsembleModel.cs

    r6580 r6603  
    2222using System;
    2323using System.Collections.Generic;
    24 using System.IO;
    2524using System.Linq;
    26 using System.Text;
    2725using HeuristicLab.Common;
    2826using HeuristicLab.Core;
    2927using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
    3028using HeuristicLab.Problems.DataAnalysis;
    31 using SVM;
    3229
    3330namespace HeuristicLab.Algorithms.DataAnalysis {
     
    147144    }
    148145
     146    public INeuralNetworkEnsembleRegressionSolution CreateRegressionSolution(IRegressionProblemData problemData) {
     147      return new NeuralNetworkEnsembleRegressionSolution(problemData, this);
     148    }
     149    IRegressionSolution IRegressionModel.CreateRegressionSolution(IRegressionProblemData problemData) {
     150      return CreateRegressionSolution(problemData);
     151    }
     152
    149153    #region events
    150154    public event EventHandler Changed;
  • trunk/sources/HeuristicLab.Algorithms.DataAnalysis/3.4/NeuralNetwork/NeuralNetworkModel.cs

    r6577 r6603  
    2222using System;
    2323using System.Collections.Generic;
    24 using System.IO;
    2524using System.Linq;
    26 using System.Text;
    2725using HeuristicLab.Common;
    2826using HeuristicLab.Core;
    2927using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
    3028using HeuristicLab.Problems.DataAnalysis;
    31 using SVM;
    3229
    3330namespace HeuristicLab.Algorithms.DataAnalysis {
     
    140137    }
    141138
     139    public INeuralNetworkRegressionSolution CreateRegressionSolution(IRegressionProblemData problemData) {
     140      return new NeuralNetworkRegressionSolution(problemData, this);
     141    }
     142    IRegressionSolution IRegressionModel.CreateRegressionSolution(IRegressionProblemData problemData) {
     143      return CreateRegressionSolution(problemData);
     144    }
     145
    142146    #region events
    143147    public event EventHandler Changed;
  • trunk/sources/HeuristicLab.Algorithms.DataAnalysis/3.4/RandomForest/RandomForestModel.cs

    r6241 r6603  
    2222using System;
    2323using System.Collections.Generic;
    24 using System.IO;
    2524using System.Linq;
    26 using System.Text;
    2725using HeuristicLab.Common;
    2826using HeuristicLab.Core;
    2927using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
    3028using HeuristicLab.Problems.DataAnalysis;
    31 using SVM;
    3229
    3330namespace HeuristicLab.Algorithms.DataAnalysis {
     
    134131    }
    135132
     133    public IRandomForestRegressionSolution CreateRegressionSolution(IRegressionProblemData problemData) {
     134      return new RandomForestRegressionSolution(problemData, this);
     135    }
     136    IRegressionSolution IRegressionModel.CreateRegressionSolution(IRegressionProblemData problemData) {
     137      return CreateRegressionSolution(problemData);
     138    }
     139
    136140    #region events
    137141    public event EventHandler Changed;
  • trunk/sources/HeuristicLab.Algorithms.DataAnalysis/3.4/SupportVectorMachine/SupportVectorMachineModel.cs

    r6566 r6603  
    126126      return GetEstimatedValuesHelper(dataset, rows);
    127127    }
    128     #endregion
     128    public SupportVectorRegressionSolution CreateRegressionSolution(IRegressionProblemData problemData) {
     129      return new SupportVectorRegressionSolution(this, problemData);
     130    }
     131    IRegressionSolution IRegressionModel.CreateRegressionSolution(IRegressionProblemData problemData) {
     132      return CreateRegressionSolution(problemData);
     133    }
     134    #endregion
     135
    129136    #region IClassificationModel Members
    130137    public IEnumerable<double> GetEstimatedClassValues(Dataset dataset, IEnumerable<int> rows) {
  • trunk/sources/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression/3.4/SymbolicRegressionModel.cs

    r6555 r6603  
    5959      return Interpreter.GetSymbolicExpressionTreeValues(SymbolicExpressionTree, dataset, rows)
    6060        .LimitToRange(lowerEstimationLimit, upperEstimationLimit);
     61    }
     62
     63    public ISymbolicRegressionSolution CreateRegressionSolution(IRegressionProblemData problemData) {
     64      return new SymbolicRegressionSolution(this, problemData);
     65    }
     66    IRegressionSolution IRegressionModel.CreateRegressionSolution(IRegressionProblemData problemData) {
     67      return CreateRegressionSolution(problemData);
    6168    }
    6269
  • trunk/sources/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/Regression/RegressionEnsembleModel.cs

    r6520 r6603  
    3434  public class RegressionEnsembleModel : NamedItem, IRegressionEnsembleModel {
    3535
    36     [Storable]
    3736    private List<IRegressionModel> models;
    3837    public IEnumerable<IRegressionModel> Models {
    3938      get { return new List<IRegressionModel>(models); }
    4039    }
     40
     41    [Storable(Name = "Models")]
     42    private IEnumerable<IRegressionModel> StorableModels {
     43      get { return models; }
     44      set { models = value.ToList(); }
     45    }
     46
     47    #region backwards compatiblity 3.3.5
     48    [Storable(Name = "models", AllowOneWay = true)]
     49    private List<IRegressionModel> OldStorableModels {
     50      set { models = value; }
     51    }
     52    #endregion
     53
    4154    [StorableConstructor]
    4255    protected RegressionEnsembleModel(bool deserializing) : base(deserializing) { }
     
    8396    }
    8497
     98    public RegressionEnsembleSolution CreateRegressionSolution(IRegressionProblemData problemData) {
     99      return new RegressionEnsembleSolution(this.Models, problemData);
     100    }
     101    IRegressionSolution IRegressionModel.CreateRegressionSolution(IRegressionProblemData problemData) {
     102      return CreateRegressionSolution(problemData);
     103    }
     104
    85105    #endregion
    86106  }
  • trunk/sources/HeuristicLab.Problems.DataAnalysis/3.4/Interfaces/Regression/IRegressionModel.cs

    r5809 r6603  
    2424  public interface IRegressionModel : IDataAnalysisModel {
    2525    IEnumerable<double> GetEstimatedValues(Dataset dataset, IEnumerable<int> rows);
     26    IRegressionSolution CreateRegressionSolution(IRegressionProblemData problemData);
    2627  }
    2728}
Note: See TracChangeset for help on using the changeset viewer.