public void SetClassificationPenalty(double correctClassValue, double estimatedClassValue, double penalty) { int correctClassIndex = ClassValuesCache.IndexOf(correctClassValue); int estimatedClassIndex = ClassValuesCache.IndexOf(estimatedClassValue); ClassificationPenaltiesParameter.Value[correctClassIndex, estimatedClassIndex] = penalty; }
public double GetClassificationPenalty(double correctClassValue, double estimatedClassValue) { int correctClassIndex = ClassValuesCache.IndexOf(correctClassValue); int estimatedClassIndex = ClassValuesCache.IndexOf(estimatedClassValue); return(ClassificationPenaltiesParameter.Value[correctClassIndex, estimatedClassIndex]); }
public string GetClassName(double classValue) { if (!ClassValuesCache.Contains(classValue)) { throw new ArgumentException(); } int index = ClassValuesCache.IndexOf(classValue); return(ClassNamesCache[index]); }
public void SetClassName(double classValue, string className) { if (!ClassValuesCache.Contains(classValue)) { throw new ArgumentException(); } int index = ClassValuesCache.IndexOf(classValue); ClassNamesParameter.Value[index, 0] = className; // updating of class names cache is not necessary here as the parameter value fires a changed event which updates the cache }