- Timestamp:
- 06/28/16 13:33:17 (8 years ago)
- Location:
- trunk/sources/HeuristicLab.Algorithms.DataAnalysis/3.4/GaussianProcess
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/sources/HeuristicLab.Algorithms.DataAnalysis/3.4/GaussianProcess/GaussianProcessModel.cs
r13922 r13941 34 34 [StorableClass] 35 35 [Item("GaussianProcessModel", "Represents a Gaussian process posterior.")] 36 public sealed class GaussianProcessModel : NamedItem, IGaussianProcessModel {37 public IEnumerable<string> VariablesUsedForPrediction {36 public sealed class GaussianProcessModel : RegressionModel, IGaussianProcessModel { 37 public override IEnumerable<string> VariablesUsedForPrediction { 38 38 get { return allowedInputVariables; } 39 39 } … … 65 65 get { return meanFunction; } 66 66 } 67 [Storable] 68 private string targetVariable; 69 public string TargetVariable { 70 get { return targetVariable; } 71 } 67 72 68 [Storable] 73 69 private string[] allowedInputVariables; … … 132 128 this.trainingDataset = cloner.Clone(original.trainingDataset); 133 129 this.negativeLogLikelihood = original.negativeLogLikelihood; 134 this.targetVariable = original.targetVariable;135 130 this.sqrSigmaNoise = original.sqrSigmaNoise; 136 131 if (original.meanParameter != null) { … … 151 146 IEnumerable<double> hyp, IMeanFunction meanFunction, ICovarianceFunction covarianceFunction, 152 147 bool scaleInputs = true) 153 : base( ) {148 : base(targetVariable) { 154 149 this.name = ItemName; 155 150 this.description = ItemDescription; 156 151 this.meanFunction = (IMeanFunction)meanFunction.Clone(); 157 152 this.covarianceFunction = (ICovarianceFunction)covarianceFunction.Clone(); 158 this.targetVariable = targetVariable;159 153 this.allowedInputVariables = allowedInputVariables.ToArray(); 160 154 … … 186 180 187 181 IEnumerable<double> y; 188 y = ds.GetDoubleValues( targetVariable, rows);182 y = ds.GetDoubleValues(TargetVariable, rows); 189 183 190 184 int n = x.GetLength(0); … … 305 299 306 300 #region IRegressionModel Members 307 public IEnumerable<double> GetEstimatedValues(IDataset dataset, IEnumerable<int> rows) {301 public override IEnumerable<double> GetEstimatedValues(IDataset dataset, IEnumerable<int> rows) { 308 302 return GetEstimatedValuesHelper(dataset, rows); 309 303 } 310 public GaussianProcessRegressionSolution CreateRegressionSolution(IRegressionProblemData problemData) {304 public override IRegressionSolution CreateRegressionSolution(IRegressionProblemData problemData) { 311 305 return new GaussianProcessRegressionSolution(this, new RegressionProblemData(problemData)); 312 }313 IRegressionSolution IRegressionModel.CreateRegressionSolution(IRegressionProblemData problemData) {314 return CreateRegressionSolution(problemData);315 306 } 316 307 #endregion -
trunk/sources/HeuristicLab.Algorithms.DataAnalysis/3.4/GaussianProcess/StudentTProcessModel.cs
r13921 r13941 34 34 [StorableClass] 35 35 [Item("StudentTProcessModel", "Represents a Student-t process posterior.")] 36 public sealed class StudentTProcessModel : NamedItem, IGaussianProcessModel {37 public IEnumerable<string> VariablesUsedForPrediction {36 public sealed class StudentTProcessModel : RegressionModel, IGaussianProcessModel { 37 public override IEnumerable<string> VariablesUsedForPrediction { 38 38 get { return allowedInputVariables; } 39 39 } … … 65 65 get { return meanFunction; } 66 66 } 67 [Storable] 68 private string targetVariable; 69 public string TargetVariable { 70 get { return targetVariable; } 71 } 67 72 68 [Storable] 73 69 private string[] allowedInputVariables; … … 135 131 this.trainingDataset = cloner.Clone(original.trainingDataset); 136 132 this.negativeLogLikelihood = original.negativeLogLikelihood; 137 this.targetVariable = original.targetVariable;138 133 if (original.meanParameter != null) { 139 134 this.meanParameter = (double[])original.meanParameter.Clone(); … … 155 150 IEnumerable<double> hyp, IMeanFunction meanFunction, ICovarianceFunction covarianceFunction, 156 151 bool scaleInputs = true) 157 : base( ) {152 : base(targetVariable) { 158 153 this.name = ItemName; 159 154 this.description = ItemDescription; 160 155 this.meanFunction = (IMeanFunction)meanFunction.Clone(); 161 156 this.covarianceFunction = (ICovarianceFunction)covarianceFunction.Clone(); 162 this.targetVariable = targetVariable;163 157 this.allowedInputVariables = allowedInputVariables.ToArray(); 164 158 … … 190 184 191 185 IEnumerable<double> y; 192 y = ds.GetDoubleValues( targetVariable, rows);186 y = ds.GetDoubleValues(TargetVariable, rows); 193 187 194 188 int n = x.GetLength(0); … … 322 316 323 317 #region IRegressionModel Members 324 public IEnumerable<double> GetEstimatedValues(IDataset dataset, IEnumerable<int> rows) {318 public override IEnumerable<double> GetEstimatedValues(IDataset dataset, IEnumerable<int> rows) { 325 319 return GetEstimatedValuesHelper(dataset, rows); 326 320 } 327 public GaussianProcessRegressionSolution CreateRegressionSolution(IRegressionProblemData problemData) {321 public override IRegressionSolution CreateRegressionSolution(IRegressionProblemData problemData) { 328 322 return new GaussianProcessRegressionSolution(this, new RegressionProblemData(problemData)); 329 }330 IRegressionSolution IRegressionModel.CreateRegressionSolution(IRegressionProblemData problemData) {331 return CreateRegressionSolution(problemData);332 323 } 333 324 #endregion
Note: See TracChangeset
for help on using the changeset viewer.