/// <summary> /// /// </summary> /// <param name="problem"></param> /// <returns></returns> public static SVMProblem RemoveDuplicates(SVMProblem problem) { SVMProblem temp = new SVMProblem(); for (int i = 0; i < problem.Length; i++) { bool same = false; for (int j = i + 1; j < problem.Length; j++) { same |= SVMProblemHelper.IsEqual(problem.X[i], problem.Y[i], problem.X[j], problem.Y[j]); if (same) { break; } } if (!same) { temp.Add(problem.X[i], problem.Y[i]); } } return(temp); }
/// <summary> /// /// </summary> /// <param name="problem"></param> /// <param name="type"></param> /// <returns></returns> public static SVMProblem Normalize(SVMProblem problem, SVMNormType type) { SVMProblem temp = new SVMProblem(); for (int i = 0; i < problem.Length; i++) { SVMNode[] x = SVMProblemHelper.Normalize(problem.X[i], type); temp.Add(x, problem.Y[i]); } return(temp); }