- Timestamp:
- 03/31/11 18:23:02 (14 years ago)
- Location:
- trunk/sources
- Files:
-
- 16 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/sources/HeuristicLab.Algorithms.DataAnalysis/3.4/SupportVectorMachine/SupportVectorClassification.cs
r5809 r5914 142 142 var model = new SupportVectorMachineModel(SVM.Training.Train(scaledProblem, parameter), rangeTransform, targetVariable, allowedInputVariables, problemData.ClassValues); 143 143 144 return new SupportVectorClassificationSolution(model, problemData);144 return new SupportVectorClassificationSolution(model, (IClassificationProblemData)problemData.Clone()); 145 145 } 146 146 #endregion -
trunk/sources/HeuristicLab.Algorithms.DataAnalysis/3.4/SupportVectorMachine/SupportVectorRegression.cs
r5809 r5914 150 150 SVM.Problem scaledProblem = SVM.Scaling.Scale(rangeTransform, problem); 151 151 var model = new SupportVectorMachineModel(SVM.Training.Train(scaledProblem, parameter), rangeTransform, targetVariable, allowedInputVariables); 152 return new SupportVectorRegressionSolution(model, problemData);152 return new SupportVectorRegressionSolution(model, (IRegressionProblemData)problemData.Clone()); 153 153 } 154 154 #endregion -
trunk/sources/HeuristicLab.Algorithms.DataAnalysis/3.4/kMeans/KMeansClustering.cs
r5809 r5914 95 95 if (info != 1) throw new ArgumentException("Error in calculation of k-Means clustering solution"); 96 96 97 KMeansClusteringSolution solution = new KMeansClusteringSolution(new KMeansClusteringModel(centers, allowedInputVariables), problemData);97 KMeansClusteringSolution solution = new KMeansClusteringSolution(new KMeansClusteringModel(centers, allowedInputVariables), (IClusteringProblemData)problemData.Clone()); 98 98 return solution; 99 99 } -
trunk/sources/HeuristicLab.Problems.DataAnalysis.Symbolic.Classification/3.4/MultiObjective/SymbolicClassificationMultiObjectiveTrainingBestSolutionAnalyzer.cs
r5818 r5914 76 76 77 77 protected override ISymbolicClassificationSolution CreateSolution(ISymbolicExpressionTree bestTree, double[] bestQuality) { 78 var model = new SymbolicDiscriminantFunctionClassificationModel( bestTree, SymbolicDataAnalysisTreeInterpreterParameter.ActualValue, EstimationLimitsParameter.ActualValue.Lower, EstimationLimitsParameter.ActualValue.Upper);78 var model = new SymbolicDiscriminantFunctionClassificationModel((ISymbolicExpressionTree)bestTree.Clone(), SymbolicDataAnalysisTreeInterpreterParameter.ActualValue, EstimationLimitsParameter.ActualValue.Lower, EstimationLimitsParameter.ActualValue.Upper); 79 79 if (ApplyLinearScaling.Value) { 80 80 SymbolicDiscriminantFunctionClassificationModel.Scale(model, ProblemDataParameter.ActualValue); 81 81 } 82 return new SymbolicDiscriminantFunctionClassificationSolution(model, ProblemDataParameter.ActualValue);82 return new SymbolicDiscriminantFunctionClassificationSolution(model, (IClassificationProblemData)ProblemDataParameter.ActualValue.Clone()); 83 83 } 84 84 } -
trunk/sources/HeuristicLab.Problems.DataAnalysis.Symbolic.Classification/3.4/MultiObjective/SymbolicClassificationMultiObjectiveValidationBestSolutionAnalyzer.cs
r5818 r5914 65 65 66 66 protected override ISymbolicClassificationSolution CreateSolution(ISymbolicExpressionTree bestTree, double[] bestQualities) { 67 var model = new SymbolicDiscriminantFunctionClassificationModel( bestTree, SymbolicDataAnalysisTreeInterpreterParameter.ActualValue, EstimationLimitsParameter.ActualValue.Lower, EstimationLimitsParameter.ActualValue.Upper);67 var model = new SymbolicDiscriminantFunctionClassificationModel((ISymbolicExpressionTree)bestTree.Clone(), SymbolicDataAnalysisTreeInterpreterParameter.ActualValue, EstimationLimitsParameter.ActualValue.Lower, EstimationLimitsParameter.ActualValue.Upper); 68 68 if (ApplyLinearScaling.Value) { 69 69 SymbolicDiscriminantFunctionClassificationModel.Scale(model, ProblemDataParameter.ActualValue); 70 70 } 71 return new SymbolicDiscriminantFunctionClassificationSolution(model, ProblemDataParameter.ActualValue);71 return new SymbolicDiscriminantFunctionClassificationSolution(model, (IClassificationProblemData)ProblemDataParameter.ActualValue.Clone()); 72 72 } 73 73 } -
trunk/sources/HeuristicLab.Problems.DataAnalysis.Symbolic.Classification/3.4/SingleObjective/SymbolicClassificationSingleObjectiveTrainingBestSolutionAnalyzer.cs
r5818 r5914 74 74 75 75 protected override ISymbolicClassificationSolution CreateSolution(ISymbolicExpressionTree bestTree, double bestQuality) { 76 var model = new SymbolicDiscriminantFunctionClassificationModel( bestTree, SymbolicDataAnalysisTreeInterpreterParameter.ActualValue, EstimationLimitsParameter.ActualValue.Lower, EstimationLimitsParameter.ActualValue.Upper);76 var model = new SymbolicDiscriminantFunctionClassificationModel((ISymbolicExpressionTree)bestTree.Clone(), SymbolicDataAnalysisTreeInterpreterParameter.ActualValue, EstimationLimitsParameter.ActualValue.Lower, EstimationLimitsParameter.ActualValue.Upper); 77 77 if (ApplyLinearScaling.Value) { 78 78 SymbolicDiscriminantFunctionClassificationModel.Scale(model, ProblemDataParameter.ActualValue); 79 79 } 80 return new SymbolicDiscriminantFunctionClassificationSolution(model, ProblemDataParameter.ActualValue);80 return new SymbolicDiscriminantFunctionClassificationSolution(model, (IClassificationProblemData)ProblemDataParameter.ActualValue.Clone()); 81 81 } 82 82 } -
trunk/sources/HeuristicLab.Problems.DataAnalysis.Symbolic.Classification/3.4/SingleObjective/SymbolicClassificationSingleObjectiveValidationBestSolutionAnalyzer.cs
r5818 r5914 65 65 66 66 protected override ISymbolicClassificationSolution CreateSolution(ISymbolicExpressionTree bestTree, double bestQuality) { 67 var model = new SymbolicDiscriminantFunctionClassificationModel( bestTree, SymbolicDataAnalysisTreeInterpreterParameter.ActualValue, EstimationLimitsParameter.ActualValue.Lower, EstimationLimitsParameter.ActualValue.Upper);67 var model = new SymbolicDiscriminantFunctionClassificationModel((ISymbolicExpressionTree)bestTree.Clone(), SymbolicDataAnalysisTreeInterpreterParameter.ActualValue, EstimationLimitsParameter.ActualValue.Lower, EstimationLimitsParameter.ActualValue.Upper); 68 68 if (ApplyLinearScaling.Value) { 69 69 SymbolicDiscriminantFunctionClassificationModel.Scale(model, ProblemDataParameter.ActualValue); 70 70 } 71 return new SymbolicDiscriminantFunctionClassificationSolution(model, ProblemDataParameter.ActualValue);71 return new SymbolicDiscriminantFunctionClassificationSolution(model, (IClassificationProblemData)ProblemDataParameter.ActualValue.Clone()); 72 72 } 73 73 } -
trunk/sources/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression/3.4/MultiObjective/SymbolicRegressionMultiObjectiveTrainingBestSolutionAnalyzer.cs
r5818 r5914 76 76 77 77 protected override ISymbolicRegressionSolution CreateSolution(ISymbolicExpressionTree bestTree, double[] bestQuality) { 78 var model = new SymbolicRegressionModel( bestTree, SymbolicDataAnalysisTreeInterpreterParameter.ActualValue, EstimationLimitsParameter.ActualValue.Lower, EstimationLimitsParameter.ActualValue.Upper);78 var model = new SymbolicRegressionModel((ISymbolicExpressionTree)bestTree.Clone(), SymbolicDataAnalysisTreeInterpreterParameter.ActualValue, EstimationLimitsParameter.ActualValue.Lower, EstimationLimitsParameter.ActualValue.Upper); 79 79 if (ApplyLinearScaling.Value) 80 80 SymbolicRegressionModel.Scale(model, ProblemDataParameter.ActualValue); 81 return new SymbolicRegressionSolution(model, ProblemDataParameter.ActualValue);81 return new SymbolicRegressionSolution(model, (IRegressionProblemData)ProblemDataParameter.ActualValue.Clone()); 82 82 } 83 83 } -
trunk/sources/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression/3.4/MultiObjective/SymbolicRegressionMultiObjectiveValidationBestSolutionAnalyzer.cs
r5818 r5914 65 65 66 66 protected override ISymbolicRegressionSolution CreateSolution(ISymbolicExpressionTree bestTree, double[] bestQuality) { 67 var model = new SymbolicRegressionModel( bestTree, SymbolicDataAnalysisTreeInterpreterParameter.ActualValue, EstimationLimitsParameter.ActualValue.Lower, EstimationLimitsParameter.ActualValue.Upper);67 var model = new SymbolicRegressionModel((ISymbolicExpressionTree)bestTree.Clone(), SymbolicDataAnalysisTreeInterpreterParameter.ActualValue, EstimationLimitsParameter.ActualValue.Lower, EstimationLimitsParameter.ActualValue.Upper); 68 68 if (ApplyLinearScaling.Value) 69 69 SymbolicRegressionModel.Scale(model, ProblemDataParameter.ActualValue); 70 return new SymbolicRegressionSolution(model, ProblemDataParameter.ActualValue);70 return new SymbolicRegressionSolution(model, (IRegressionProblemData)ProblemDataParameter.ActualValue.Clone()); 71 71 } 72 72 } -
trunk/sources/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression/3.4/SingleObjective/SymbolicRegressionSingleObjectiveTrainingBestSolutionAnalyzer.cs
r5818 r5914 75 75 76 76 protected override ISymbolicRegressionSolution CreateSolution(ISymbolicExpressionTree bestTree, double bestQuality) { 77 var model = new SymbolicRegressionModel( bestTree, SymbolicDataAnalysisTreeInterpreterParameter.ActualValue, EstimationLimitsParameter.ActualValue.Lower, EstimationLimitsParameter.ActualValue.Upper);77 var model = new SymbolicRegressionModel((ISymbolicExpressionTree)bestTree.Clone(), SymbolicDataAnalysisTreeInterpreterParameter.ActualValue, EstimationLimitsParameter.ActualValue.Lower, EstimationLimitsParameter.ActualValue.Upper); 78 78 if (ApplyLinearScaling.Value) 79 79 SymbolicRegressionModel.Scale(model, ProblemDataParameter.ActualValue); 80 return new SymbolicRegressionSolution(model, ProblemDataParameter.ActualValue);80 return new SymbolicRegressionSolution(model, (IRegressionProblemData)ProblemDataParameter.ActualValue.Clone()); 81 81 } 82 82 } -
trunk/sources/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression/3.4/SingleObjective/SymbolicRegressionSingleObjectiveValidationBestSolutionAnalyzer.cs
r5818 r5914 67 67 68 68 protected override ISymbolicRegressionSolution CreateSolution(ISymbolicExpressionTree bestTree, double bestQuality) { 69 var model = new SymbolicRegressionModel( bestTree, SymbolicDataAnalysisTreeInterpreterParameter.ActualValue, EstimationLimitsParameter.ActualValue.Lower, EstimationLimitsParameter.ActualValue.Upper);69 var model = new SymbolicRegressionModel((ISymbolicExpressionTree)bestTree.Clone(), SymbolicDataAnalysisTreeInterpreterParameter.ActualValue, EstimationLimitsParameter.ActualValue.Lower, EstimationLimitsParameter.ActualValue.Upper); 70 70 if (ApplyLinearScaling.Value) 71 71 SymbolicRegressionModel.Scale(model, ProblemDataParameter.ActualValue); 72 return new SymbolicRegressionSolution(model, ProblemDataParameter.ActualValue);72 return new SymbolicRegressionSolution(model, (IRegressionProblemData)ProblemDataParameter.ActualValue.Clone()); 73 73 } 74 74 } -
trunk/sources/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression/3.4/SymbolicRegressionModel.cs
r5894 r5914 21 21 22 22 using System.Collections.Generic; 23 using System.Linq;24 23 using HeuristicLab.Common; 25 24 using HeuristicLab.Core; 26 using HeuristicLab.Data;27 25 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding; 28 using HeuristicLab.Operators;29 using HeuristicLab.Parameters;30 26 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable; 31 using HeuristicLab.Optimization;32 using System;33 27 34 28 namespace HeuristicLab.Problems.DataAnalysis.Symbolic.Regression { -
trunk/sources/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression/3.4/SymbolicRegressionSolution.cs
r5818 r5914 20 20 #endregion 21 21 22 using System.Collections.Generic; 23 using System.Linq; 22 using System; 24 23 using HeuristicLab.Common; 25 24 using HeuristicLab.Core; 26 25 using HeuristicLab.Data; 27 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding; 28 using HeuristicLab.Operators; 29 using HeuristicLab.Parameters; 26 using HeuristicLab.Optimization; 30 27 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable; 31 using HeuristicLab.Optimization;32 using System;33 28 34 29 namespace HeuristicLab.Problems.DataAnalysis.Symbolic.Regression { -
trunk/sources/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/Evaluators/SymbolicDataAnalysisEvaluator.cs
r5906 r5914 90 90 91 91 protected IEnumerable<int> GenerateRowsToEvaluate() { 92 int seed = RandomParameter.ActualValue.Next(); 92 return GenerateRowsToEvaluate(RelativeNumberOfEvaluatedSamplesParameter.ActualValue.Value); 93 } 94 95 protected IEnumerable<int> GenerateRowsToEvaluate(double percentageOfRows) { 96 97 98 IEnumerable<int> rows; 93 99 int samplesStart = EvaluationPartitionParameter.ActualValue.Start; 94 100 int samplesEnd = EvaluationPartitionParameter.ActualValue.End; … … 97 103 98 104 if (samplesEnd < samplesStart) throw new ArgumentException("Start value is larger than end value."); 99 int count = (int)((samplesEnd - samplesStart) * RelativeNumberOfEvaluatedSamplesParameter.ActualValue.Value); 100 if (count == 0) count = 1; 101 return RandomEnumerable.SampleRandomNumbers(seed, samplesStart, samplesEnd, count) 102 .Where(i => i < testPartitionStart || testPartitionEnd <= i); 105 106 if (percentageOfRows.IsAlmost(1.0)) 107 rows = Enumerable.Range(samplesStart, samplesEnd - samplesStart); 108 else { 109 int seed = RandomParameter.ActualValue.Next(); 110 int count = (int)((samplesEnd - samplesStart) * percentageOfRows); 111 if (count == 0) count = 1; 112 rows = RandomEnumerable.SampleRandomNumbers(seed, samplesStart, samplesEnd, count); 113 } 114 115 return rows.Where(i => i < testPartitionStart || testPartitionEnd <= i); 103 116 } 104 117 } -
trunk/sources/HeuristicLab.Problems.DataAnalysis.Symbolic/3.4/SymbolicDataAnalysisModel.cs
r5809 r5914 20 20 #endregion 21 21 22 using System.Collections.Generic; 23 using System.Linq; 22 using System.Drawing; 24 23 using HeuristicLab.Common; 25 24 using HeuristicLab.Core; 26 using HeuristicLab.Data;27 25 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding; 28 using HeuristicLab.Operators;29 using HeuristicLab.Parameters;30 26 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable; 31 using HeuristicLab.Optimization;32 using System;33 using System.Drawing;34 27 35 28 namespace HeuristicLab.Problems.DataAnalysis.Symbolic { -
trunk/sources/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/DataAnalysisSolution.cs
r5909 r5914 80 80 name = ItemName; 81 81 description = ItemDescription; 82 IDataAnalysisModel modelClone = (IDataAnalysisModel)model.Clone(); 83 IDataAnalysisProblemData problemDataClone = (IDataAnalysisProblemData)problemData.Clone(); 84 Add(new Result(ModelResultName, "The symbolic data analysis model.", modelClone)); 85 Add(new Result(ProblemDataResultName, "The symbolic data analysis problem data.", problemDataClone)); 82 Add(new Result(ModelResultName, "The symbolic data analysis model.", model)); 83 Add(new Result(ProblemDataResultName, "The symbolic data analysis problem data.", problemData)); 86 84 87 problemData Clone.Changed += new EventHandler(ProblemData_Changed);85 problemData.Changed += new EventHandler(ProblemData_Changed); 88 86 } 89 87
Note: See TracChangeset
for help on using the changeset viewer.