Changeset 14029 for branches/crossvalidation-2434/HeuristicLab.Algorithms.DataAnalysis/3.4/GradientBoostedTrees/GradientBoostedTreesAlgorithm.cs
- Timestamp:
- 07/08/16 14:40:02 (8 years ago)
- Location:
- branches/crossvalidation-2434
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
branches/crossvalidation-2434
- Property svn:mergeinfo changed
-
branches/crossvalidation-2434/HeuristicLab.Algorithms.DataAnalysis
- Property svn:mergeinfo changed
-
branches/crossvalidation-2434/HeuristicLab.Algorithms.DataAnalysis/3.4/GradientBoostedTrees/GradientBoostedTreesAlgorithm.cs
r12874 r14029 35 35 36 36 namespace HeuristicLab.Algorithms.DataAnalysis { 37 [Item("Gradient Boosted Trees ", "Gradient boosted trees algorithm. Friedman, J. \"Greedy Function Approximation: A Gradient Boosting Machine\", IMS 1999 Reitz Lecture.")]37 [Item("Gradient Boosted Trees (GBT)", "Gradient boosted trees algorithm. Specific implementation of gradient boosting for regression trees. Friedman, J. \"Greedy Function Approximation: A Gradient Boosting Machine\", IMS 1999 Reitz Lecture.")] 38 38 [StorableClass] 39 39 [Creatable(CreatableAttribute.Categories.DataAnalysisRegression, Priority = 125)] … … 255 255 // produce solution 256 256 if (CreateSolution) { 257 var surrogateModel = new GradientBoostedTreesModelSurrogate(problemData, (uint)Seed, lossFunction, 258 Iterations, MaxSize, R, M, Nu, state.GetModel()); 257 var model = state.GetModel(); 259 258 260 259 // for logistic regression we produce a classification solution 261 260 if (lossFunction is LogisticRegressionLoss) { 262 var model = new DiscriminantFunctionClassificationModel(surrogateModel,261 var classificationModel = new DiscriminantFunctionClassificationModel(model, 263 262 new AccuracyMaximizationThresholdCalculator()); 264 263 var classificationProblemData = new ClassificationProblemData(problemData.Dataset, 265 264 problemData.AllowedInputVariables, problemData.TargetVariable, problemData.Transformations); 266 model.RecalculateModelParameters(classificationProblemData, classificationProblemData.TrainingIndices);267 268 var classificationSolution = new DiscriminantFunctionClassificationSolution( model, classificationProblemData);265 classificationModel.RecalculateModelParameters(classificationProblemData, classificationProblemData.TrainingIndices); 266 267 var classificationSolution = new DiscriminantFunctionClassificationSolution(classificationModel, classificationProblemData); 269 268 Results.Add(new Result("Solution", classificationSolution)); 270 269 } else { 271 270 // otherwise we produce a regression solution 272 Results.Add(new Result("Solution", new RegressionSolution( surrogateModel, problemData)));271 Results.Add(new Result("Solution", new RegressionSolution(model, problemData))); 273 272 } 274 273 }
Note: See TracChangeset
for help on using the changeset viewer.