Changeset 5942 for trunk/sources/HeuristicLab.Problems.DataAnalysis/3.4/OnlineEvaluators/OnlineAccuracyCalculator.cs
- Timestamp:
- 04/04/11 15:38:16 (13 years ago)
- File:
-
- 1 moved
Legend:
- Unmodified
- Added
- Removed
-
trunk/sources/HeuristicLab.Problems.DataAnalysis/3.4/OnlineEvaluators/OnlineAccuracyCalculator.cs
r5941 r5942 21 21 22 22 using System; 23 using System.Collections.Generic; 23 24 using HeuristicLab.Common; 24 using System.Collections.Generic;25 25 26 26 namespace HeuristicLab.Problems.DataAnalysis { 27 public class OnlineAccuracy Evaluator : IOnlineEvaluator {27 public class OnlineAccuracyCalculator : IOnlineCalculator { 28 28 29 29 private int correctlyClassified; … … 35 35 } 36 36 37 public OnlineAccuracy Evaluator() {37 public OnlineAccuracyCalculator() { 38 38 Reset(); 39 39 } 40 40 41 #region IOnline Evaluator Members42 private Online EvaluatorError errorState;43 public Online EvaluatorError ErrorState {41 #region IOnlineCalculator Members 42 private OnlineCalculatorError errorState; 43 public OnlineCalculatorError ErrorState { 44 44 get { return errorState; } 45 45 } … … 50 50 n = 0; 51 51 correctlyClassified = 0; 52 errorState = Online EvaluatorError.InsufficientElementsAdded;52 errorState = OnlineCalculatorError.InsufficientElementsAdded; 53 53 } 54 54 … … 63 63 correctlyClassified++; 64 64 } 65 errorState = Online EvaluatorError.None; // number of (non-NaN) samples >= 165 errorState = OnlineCalculatorError.None; // number of (non-NaN) samples >= 1 66 66 } 67 67 } 68 68 #endregion 69 69 70 public static double Calculate(IEnumerable<double> first, IEnumerable<double> second, out Online EvaluatorError errorState) {70 public static double Calculate(IEnumerable<double> first, IEnumerable<double> second, out OnlineCalculatorError errorState) { 71 71 IEnumerator<double> firstEnumerator = first.GetEnumerator(); 72 72 IEnumerator<double> secondEnumerator = second.GetEnumerator(); 73 OnlineAccuracy Evaluator accuracyEvaluator = new OnlineAccuracyEvaluator();73 OnlineAccuracyCalculator accuracyCalculator = new OnlineAccuracyCalculator(); 74 74 75 75 // always move forward both enumerators (do not use short-circuit evaluation!) … … 77 77 double estimated = secondEnumerator.Current; 78 78 double original = firstEnumerator.Current; 79 accuracy Evaluator.Add(original, estimated);79 accuracyCalculator.Add(original, estimated); 80 80 } 81 81 … … 84 84 throw new ArgumentException("Number of elements in first and second enumeration doesn't match."); 85 85 } else { 86 errorState = accuracy Evaluator.ErrorState;87 return accuracy Evaluator.Accuracy;86 errorState = accuracyCalculator.ErrorState; 87 return accuracyCalculator.Accuracy; 88 88 } 89 89 }
Note: See TracChangeset
for help on using the changeset viewer.