public void CreditDataRadialBasisFunctionNeuronalNetworkClassifierTest() { DataSetLoader dataSetLoader = new DataSetLoader(); Console.WriteLine(" Reading DataSet.. "); var creditData = dataSetLoader.SelectCreditData(); for (double i = 0; i < 1; i = i + 1) { OneHiddenLayerNeuronCounter oneHiddenLayerNeuronCounter = new OneHiddenLayerNeuronCounter(6, 1, 36); RadialBasisFunctionNeuronalNetwork radialBasisFunctionNeuronalNetworkClassifier = new RadialBasisFunctionNeuronalNetwork(oneHiddenLayerNeuronCounter, 5000, 0.7); radialBasisFunctionNeuronalNetworkClassifier.Train(creditData); var creditDataTest = dataSetLoader.SelectCreditData(); var trueCounter = 0; var counter = 0; foreach (var item in creditDataTest) { var outputValue = radialBasisFunctionNeuronalNetworkClassifier.Classify(item.Item1); var value = (outputValue.OutputValues[0] > 0.5) ? 1.0 : 0.0; if (value == item.Item2) { trueCounter++; } Debug.WriteLine(string.Format("Value {0} - Predicted {1} = {2}", item.Item2, Convert.ToDecimal(outputValue.OutputValues[0]), (value == item.Item2) ? "true" : "false")); counter++; } Debug.WriteLine(string.Format(" i = {0} Data {1} - True {2} Verhältnis: {3}", i, counter.ToString(), trueCounter.ToString(), (Convert.ToDouble(trueCounter) / Convert.ToDouble(counter)).ToString())); } }
public void CreditDataNaiveBayesTest() { DataSetLoader dataSetLoader = new DataSetLoader(); Console.WriteLine(" Reading DataSet.. "); var creditData = dataSetLoader.SelectCreditData(); NaiveBayesClassifier naiveBayes = new NaiveBayesClassifier(creditData); var creditDataTest = dataSetLoader.SelectCreditData(); var trueCounter = 0; var counter = 0; foreach (var item in creditDataTest) { var outputValue = naiveBayes.Classify(item.Item1); if (outputValue == item.Item2) { trueCounter++; } Debug.WriteLine(string.Format("Value {0} - Predicted {1} = {2}", item.Item2, outputValue, (outputValue == item.Item2) ? "true" : "false")); counter++; } Debug.WriteLine(string.Format("Data {0} - True {1} Verhältnis: {2}", counter.ToString(), trueCounter.ToString(), (Convert.ToDouble(trueCounter) / Convert.ToDouble(counter)).ToString())); }
public void CreditDataDecisionTreeTest() { DataSetLoader dataSetLoader = new DataSetLoader(); Console.WriteLine(" Reading DataSet.. "); var creditData = dataSetLoader.SelectCreditData(); DecisionTreeClassifier decisionTreeClassifier = new DecisionTreeClassifier(creditData, new ShannonEntropySplitter()); decisionTreeClassifier.Train(); var creditDataTest = dataSetLoader.SelectCreditData(); var trueCounter = 0; var counter = 0; foreach (var item in creditDataTest) { var outputValue = decisionTreeClassifier.Classify(item.Item1); if (outputValue == item.Item2) { trueCounter++; } Debug.WriteLine(string.Format("Value {0} - Predicted {1} = {2}", item.Item2, outputValue, (outputValue == item.Item2) ? "true" : "false")); counter++; } Debug.WriteLine(string.Format("Data {0} - True {1} Verhältnis: {2}", counter.ToString(), trueCounter.ToString(), (Convert.ToDouble(trueCounter) / Convert.ToDouble(counter)).ToString())); }
public void CreditDataRegressionTest() { DataSetLoader dataSetLoader = new DataSetLoader(); Console.WriteLine(" Reading DataSet.. "); var creditData = dataSetLoader.SelectCreditData(); Regression loggistigRegression = new Regression(creditData, new NetML.LogisticRegression.LogisticCostFunction()); loggistigRegression.Train(); var creditDataTest = dataSetLoader.SelectCreditData(); var trueCounter = 0; var counter = 0; foreach (var item in creditDataTest) { var outputValue = loggistigRegression.Classify(item.Item1); if (outputValue == item.Item2) { trueCounter++; } Debug.WriteLine(string.Format("Value {0} - Predicted {1} = {2}", item.Item2, outputValue, (outputValue == item.Item2) ? "true" : "false")); counter++; } Debug.WriteLine(string.Format("Data {0} - True {1} Verhältnis: {2}", counter.ToString(), trueCounter.ToString(), (Convert.ToDouble(trueCounter) / Convert.ToDouble(counter)).ToString())); }
public void CreditDataClassifyMethod() { DataSetLoader dataSetLoader = new DataSetLoader(); var creditData = dataSetLoader.SelectCreditData(); var data = dataSetLoader.CalculatePercent(100, creditData); DecisionTreeClassifier decisionTreeClassifier = new DecisionTreeClassifier(data.Item1, new ShannonEntropySplitter()); NaiveBayesClassifier naiveBayes = new NaiveBayesClassifier(data.Item1); var list = new List <NetML.Classification>(); Kernel kernel = new LinearKernel(); SVMClassifier SVMClassifier = new SVMClassifier(creditData, kernel, 0.001, 10.0); var neuronalCreditData = dataSetLoader.SelectNeuronalNetworksCreditData(); NeuronalNetworkClassifier neuronalNetworkClassifier = new NeuronalNetworkClassifier(neuronalCreditData, 20, 2, 20, 5000, 0.1); list.Add(decisionTreeClassifier); list.Add(naiveBayes); list.Add(SVMClassifier); //list.Add(neuronalNetworkClassifier); Classifier classifier = new Classifier(); classifier.Classify(list, creditData); }