Changeset 6411
- Timestamp:
- 06/14/11 14:00:19 (13 years ago)
- Location:
- trunk/sources
- Files:
-
- 10 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/sources/HeuristicLab.Problems.DataAnalysis.Symbolic.Classification.Views/3.4/InteractiveSymbolicDiscriminantFunctionClassificationSolutionSimplifierView.cs
r6256 r6411 51 51 protected override void UpdateModel(ISymbolicExpressionTree tree) { 52 52 Content.Model = new SymbolicDiscriminantFunctionClassificationModel(tree, Content.Model.Interpreter); 53 Content.SetClassDistibutionCutPointThresholds();54 53 } 55 54 -
trunk/sources/HeuristicLab.Problems.DataAnalysis.Symbolic.Classification/3.4/SymbolicClassificationSolution.cs
r5809 r6411 20 20 #endregion 21 21 22 using System.Collections.Generic;23 using System.Linq;24 22 using HeuristicLab.Common; 25 23 using HeuristicLab.Core; 26 24 using HeuristicLab.Data; 27 using HeuristicLab.Encodings.SymbolicExpressionTreeEncoding; 28 using HeuristicLab.Operators; 29 using HeuristicLab.Parameters; 25 using HeuristicLab.Optimization; 30 26 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable; 31 using HeuristicLab.Optimization;32 using System;33 27 34 28 namespace HeuristicLab.Problems.DataAnalysis.Symbolic.Classification { … … 69 63 Add(new Result(ModelLengthResultName, "Length of the symbolic classification model.", new IntValue())); 70 64 Add(new Result(ModelDepthResultName, "Depth of the symbolic classification model.", new IntValue())); 71 RecalculateResults();65 CalculateResults(); 72 66 } 73 67 … … 76 70 } 77 71 78 protected override void OnModelChanged(EventArgs e) {79 base. OnModelChanged(e);80 RecalculateResults();72 protected override void RecalculateResults() { 73 base.RecalculateResults(); 74 CalculateResults(); 81 75 } 82 76 83 private new void RecalculateResults() {77 private void CalculateResults() { 84 78 ModelLength = Model.SymbolicExpressionTree.Length; 85 79 ModelDepth = Model.SymbolicExpressionTree.Depth; -
trunk/sources/HeuristicLab.Problems.DataAnalysis.Symbolic.Classification/3.4/SymbolicDiscriminantFunctionClassificationSolution.cs
r5975 r6411 20 20 #endregion 21 21 22 using System;23 22 using HeuristicLab.Common; 24 23 using HeuristicLab.Core; … … 67 66 Add(new Result(ModelLengthResultName, "Length of the symbolic classification model.", new IntValue())); 68 67 Add(new Result(ModelDepthResultName, "Depth of the symbolic classification model.", new IntValue())); 69 RecalculateResults();68 CalculateResults(); 70 69 } 71 70 … … 74 73 } 75 74 76 protected override void OnModelChanged(EventArgs e) {77 base. OnModelChanged(e);78 RecalculateResults();75 protected override void RecalculateResults() { 76 base.RecalculateResults(); 77 CalculateResults(); 79 78 } 80 79 81 private new void RecalculateResults() {80 private void CalculateResults() { 82 81 ModelLength = Model.SymbolicExpressionTree.Length; 83 82 ModelDepth = Model.SymbolicExpressionTree.Depth; -
trunk/sources/HeuristicLab.Problems.DataAnalysis.Symbolic.Regression/3.4/SymbolicRegressionSolution.cs
r6233 r6411 20 20 #endregion 21 21 22 using System;23 22 using HeuristicLab.Common; 24 23 using HeuristicLab.Core; … … 63 62 Add(new Result(ModelLengthResultName, "Length of the symbolic regression model.", new IntValue())); 64 63 Add(new Result(ModelDepthResultName, "Depth of the symbolic regression model.", new IntValue())); 65 RecalculateResults();64 CalculateResults(); 66 65 } 67 66 … … 70 69 } 71 70 72 protected override void OnModelChanged(EventArgs e) {73 base. OnModelChanged(e);74 RecalculateResults();71 protected override void RecalculateResults() { 72 base.RecalculateResults(); 73 CalculateResults(); 75 74 } 76 75 77 private void RecalculateResults() {76 private void CalculateResults() { 78 77 ModelLength = Model.SymbolicExpressionTree.Length; 79 78 ModelDepth = Model.SymbolicExpressionTree.Depth; -
trunk/sources/HeuristicLab.Problems.DataAnalysis.Views/3.4/Classification/DiscriminantFunctionClassificationSolutionEstimatedClassValuesView.cs
r6255 r6411 86 86 StringMatrix matrix = null; 87 87 if (Content != null) { 88 string[,] values = new string[Content.ProblemData.Dataset.Rows, 5];88 string[,] values = new string[Content.ProblemData.Dataset.Rows, 4]; 89 89 90 90 double[] target = Content.ProblemData.Dataset.GetVariableValues(Content.ProblemData.TargetVariable); -
trunk/sources/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/Classification/ClassificationSolution.cs
r6184 r6411 20 20 #endregion 21 21 22 using System;23 22 using System.Collections.Generic; 24 23 using System.Linq; … … 66 65 Add(new Result(TrainingAccuracyResultName, "Accuracy of the model on the training partition (percentage of correctly classified instances).", new PercentValue())); 67 66 Add(new Result(TestAccuracyResultName, "Accuracy of the model on the test partition (percentage of correctly classified instances).", new PercentValue())); 68 RecalculateResults();67 CalculateResults(); 69 68 } 70 69 … … 73 72 } 74 73 75 protected override void OnProblemDataChanged(EventArgs e) { 76 base.OnProblemDataChanged(e); 77 RecalculateResults(); 74 protected override void RecalculateResults() { 75 CalculateResults(); 78 76 } 79 77 80 protected override void OnModelChanged(EventArgs e) { 81 base.OnModelChanged(e); 82 RecalculateResults(); 83 } 84 85 protected void RecalculateResults() { 78 private void CalculateResults() { 86 79 double[] estimatedTrainingClassValues = EstimatedTrainingClassValues.ToArray(); // cache values 87 80 IEnumerable<double> originalTrainingClassValues = ProblemData.Dataset.GetEnumeratedVariableValues(ProblemData.TargetVariable, ProblemData.TrainingIndizes); -
trunk/sources/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/Classification/DiscriminantFunctionClassificationSolution.cs
r5942 r6411 25 25 using HeuristicLab.Common; 26 26 using HeuristicLab.Core; 27 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;28 27 using HeuristicLab.Data; 29 28 using HeuristicLab.Optimization; 29 using HeuristicLab.Persistence.Default.CompositeSerializers.Storable; 30 30 31 31 namespace HeuristicLab.Problems.DataAnalysis { … … 89 89 Add(new Result(TrainingRSquaredResultName, "Squared Pearson's correlation coefficient of the model output and the actual values on the training partition", new DoubleValue())); 90 90 Add(new Result(TestRSquaredResultName, "Squared Pearson's correlation coefficient of the model output and the actual values on the test partition", new DoubleValue())); 91 SetAccuracyMaximizingThresholds(); 92 93 //mkommend: important to recalculate accuracy because during the calculation before no thresholds were present 94 base.RecalculateResults(); 95 CalculateResults(); 91 96 RegisterEventHandler(); 92 SetAccuracyMaximizingThresholds();93 RecalculateResults();94 97 } 95 98 … … 99 102 } 100 103 101 protected new void RecalculateResults() { 104 protected override void OnModelChanged(EventArgs e) { 105 DeregisterEventHandler(); 106 SetAccuracyMaximizingThresholds(); 107 RegisterEventHandler(); 108 base.OnModelChanged(e); 109 } 110 111 protected override void RecalculateResults() { 112 base.RecalculateResults(); 113 CalculateResults(); 114 } 115 116 private void CalculateResults() { 102 117 double[] estimatedTrainingValues = EstimatedTrainingValues.ToArray(); // cache values 103 118 IEnumerable<double> originalTrainingValues = ProblemData.Dataset.GetEnumeratedVariableValues(ProblemData.TargetVariable, ProblemData.TrainingIndizes); … … 119 134 private void RegisterEventHandler() { 120 135 Model.ThresholdsChanged += new EventHandler(Model_ThresholdsChanged); 136 } 137 private void DeregisterEventHandler() { 138 Model.ThresholdsChanged -= new EventHandler(Model_ThresholdsChanged); 121 139 } 122 140 private void Model_ThresholdsChanged(object sender, EventArgs e) { … … 142 160 } 143 161 144 protected override void OnModelChanged(EventArgs e) {145 base.OnModelChanged(e);146 SetAccuracyMaximizingThresholds();147 RecalculateResults();148 }149 150 protected override void OnProblemDataChanged(EventArgs e) {151 base.OnProblemDataChanged(e);152 SetAccuracyMaximizingThresholds();153 RecalculateResults();154 }155 162 protected virtual void OnModelThresholdsChanged(EventArgs e) { 156 base.OnModelChanged(e);157 163 RecalculateResults(); 158 164 } -
trunk/sources/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/Clustering/ClusteringSolution.cs
r6184 r6411 45 45 } 46 46 47 protected override void RecalculateResults() { 48 } 49 47 50 #region IClusteringSolution Members 48 51 -
trunk/sources/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/DataAnalysisSolution.cs
r5914 r6411 86 86 } 87 87 88 protected abstract void RecalculateResults(); 89 88 90 private void ProblemData_Changed(object sender, EventArgs e) { 89 91 OnProblemDataChanged(e); … … 92 94 public event EventHandler ModelChanged; 93 95 protected virtual void OnModelChanged(EventArgs e) { 96 RecalculateResults(); 94 97 var listeners = ModelChanged; 95 98 if (listeners != null) listeners(this, e); … … 98 101 public event EventHandler ProblemDataChanged; 99 102 protected virtual void OnProblemDataChanged(EventArgs e) { 103 RecalculateResults(); 100 104 var listeners = ProblemDataChanged; 101 105 if (listeners != null) listeners(this, e); -
trunk/sources/HeuristicLab.Problems.DataAnalysis/3.4/Implementation/Regression/RegressionSolution.cs
r6238 r6411 20 20 #endregion 21 21 22 using System;23 22 using System.Collections.Generic; 24 23 using System.Linq; … … 110 109 Add(new Result(TestNormalizedMeanSquaredErrorResultName, "Normalized mean of squared errors of the model on the test partition", new DoubleValue())); 111 110 112 RecalculateResults();111 CalculateResults(); 113 112 } 114 113 … … 117 116 } 118 117 119 protected override void OnProblemDataChanged(EventArgs e) { 120 base.OnProblemDataChanged(e); 121 RecalculateResults(); 122 } 123 protected override void OnModelChanged(EventArgs e) { 124 base.OnModelChanged(e); 125 RecalculateResults(); 118 protected override void RecalculateResults() { 119 CalculateResults(); 126 120 } 127 121 128 pr otected void RecalculateResults() {122 private void CalculateResults() { 129 123 double[] estimatedTrainingValues = EstimatedTrainingValues.ToArray(); // cache values 130 124 IEnumerable<double> originalTrainingValues = ProblemData.Dataset.GetEnumeratedVariableValues(ProblemData.TargetVariable, ProblemData.TrainingIndizes);
Note: See TracChangeset
for help on using the changeset viewer.