public static IWebPostClassifier GetClassifierInstance(this WebPostClassifierType model) { switch (model) { default: case WebPostClassifierType.simpleTopScore: return(null); break; case WebPostClassifierType.kNearestNeighbors: return(new WebPostKNNClassifier()); break; case WebPostClassifierType.multiClassSVM: return(new WebPostMSVMClassifier()); break; case WebPostClassifierType.naiveBayes: return(new WebPostNaiveBayesClassifier()); break; case WebPostClassifierType.backPropagationActivationNeuralNetwork: return(new WebPostBackPropActNNClassifier()); break; } }
public WebPostClassifierSettings(WebPostClassifierType _type, String _name) { type = _type; name = _name; switch (type) { case WebPostClassifierType.backPropagationActivationNeuralNetwork: //HiddenLayerOneNeuronCount = 8; //HiddenLayerTwoNeuronCount = 8; neuralnetwork = new ClassifierNeuralNetworkSettings(); neuralnetwork.HiddenLayersNeuronCounts.Add(6); neuralnetwork.HiddenLayersNeuronCounts.Add(5); neuralnetwork.alpha = 2; neuralnetwork.learningRate = 1; neuralnetwork.momentum = 0.5; neuralnetwork.errorLowerLimit = 0.010; neuralnetwork.learningIterationsMax = 50; break; case WebPostClassifierType.kNearestNeighbors: kNN_k = 2; break; case WebPostClassifierType.multiClassSVM: lossFunctionForTraining = Loss.L2; break; case WebPostClassifierType.naiveBayes: break; case WebPostClassifierType.simpleTopScore: break; } }