public static double Predict(Diabetes patientTest) { Keras.Keras.DisablePySysConsoleLog = true; var tests = new List <Diabetes> { patientTest }; NDArray testData = tests.Select(x => new [] { x.Pregnancies, x.Glucose, x.BloodPressure, x.SkinThickness, x.Insulin, x.BMI, x.DiabetesPedigreeFunction, x.Age }).ToArray(); NDarray testDataNew = testData.ToNumpyNET(); var test = Utilities.Cache.Model.Predict(testDataNew); var value = test?[0][0].ToString(); return(Convert.ToDouble(value, CultureInfo.InvariantCulture)); }
private double ClassifyData(int pregnancies, int glucose, int bloodPressure, int skinThickness, int insulin, double bmi, double diabetesPedigreeFunction, int age) { var test = new Diabetes() { Pregnancies = pregnancies, Glucose = glucose, BloodPressure = bloodPressure, SkinThickness = skinThickness, Insulin = insulin, BMI = bmi, DiabetesPedigreeFunction = diabetesPedigreeFunction, Age = age }; return(Neural.Network.Predict(test)); }
public static void RunNonBagging(string trainingSetPath, string testingSetPath, int maxTreeDepth) { Trace.TraceInformation("Starting Bias-Variance for NonBagging"); Trace.TraceInformation("TrainingSetPath: {0}", trainingSetPath); Trace.TraceInformation("TestingSetPath: {0}", testingSetPath); Trace.TraceInformation("Max Tree Depth: {0}", maxTreeDepth); // Train Instances trainingInstances = Diabetes.LoadData(trainingSetPath, Mode.Train); Bagging.Bagging bagging = new Bagging.Bagging(); bagging.Train(trainingInstances, 0, null, maxTreeDepth); // Predict Instances testingInstances = Diabetes.LoadData(testingSetPath, Mode.Test); List <int> predictions = bagging.TestNonBagging(testingInstances); // Calculate Bias and Variance // Get the class for each test example int targetAttribute = testingInstances.numAttributes() - 1; List <int> classes = new List <int>(); for (int i = 0; i < testingInstances.numInstances(); i++) { classes.Add((int)testingInstances.instance(i).value(targetAttribute)); } // Get the prediction for every test example, for every set of instanes List <List <int> > allPredictions = new List <List <int> >(); for (int j = 0; j < 1; j++) { for (int i = 0; i < testingInstances.numInstances(); i++) { if (j == 0) { allPredictions.Add(new List <int>()); } allPredictions[i].Add(predictions[i]); } } BiasVariance.biasvar(classes, allPredictions, testingInstances.numInstances(), 1); }
public static void RunBagging(string trainingSetPath, string testingSetPath, int numberOfModels, int bootstrapSamples, int?randomSeed, int maxTreeDepth) { Trace.TraceInformation("Starting Bias-Variance for Bagging"); Trace.TraceInformation("TrainingSetPath: {0}", trainingSetPath); Trace.TraceInformation("TestingSetPath: {0}", testingSetPath); Trace.TraceInformation("Models: {0}", numberOfModels); Trace.TraceInformation("Bootstrap Samples: {0}", bootstrapSamples); Trace.TraceInformation("Random Seed: {0}", randomSeed.ToString()); Trace.TraceInformation("Max Tree Depth: {0}", maxTreeDepth); Instances trainingInstances = Diabetes.LoadData(trainingSetPath, Mode.Train); Instances testingInstances = Diabetes.LoadData(testingSetPath, Mode.Test); // Stores the predictions for every training set List <List <int> > allPredictions = new List <List <int> >(); for (int i = 0; i < bootstrapSamples; i++) { Bagging.Bagging bagging = new Bagging.Bagging(); bagging.Train(trainingInstances, numberOfModels, randomSeed, maxTreeDepth); List <int> predictions = bagging.Test(testingInstances); for (int k = 0; k < testingInstances.numInstances(); k++) { if (i == 0) { allPredictions.Add(new List <int>()); } allPredictions[k].Add(predictions[k]); } } // Calculate Bias and Variance // Get the class for each test example int targetAttribute = testingInstances.numAttributes() - 1; List <int> classes = new List <int>(); for (int i = 0; i < testingInstances.numInstances(); i++) { classes.Add((int)testingInstances.instance(i).value(targetAttribute)); } BiasVariance.biasvar(classes, allPredictions, testingInstances.numInstances(), bootstrapSamples); }
public void CreateDiabetesTest() { var diabetes = new Diabetes { Age = 54, Glucose = 125, Insulin = 0, Outcome = 1, Pregnancies = 8, BloodPressure = 96, SkinThickness = 0, BMI = 0, DiabetesPedigreeFunction = 0.232 }; diabetes.Should().BeOfType <Diabetes>(); }
static void Main(string[] args) { Influenza influenza = Influenza.Instance("Influenza", "Cough, Cold"); Diabetes diabetes = Diabetes.Instance("Diabetes", "Weight loss, Hunger, Fatigue"); Malaria malaria = Malaria.Instance("Malaria", "Chills, Fever, Fatigue"); Ethnicity1 ethnicity1 = Ethnicity1.Instance("Ethnicity1", new List <IDisease> { influenza, malaria }); Ethnicity2 ethnicity2 = Ethnicity2.Instance("Ethnicity2", new List <IDisease> { diabetes, malaria }); Ethnicity3 ethnicity3 = Ethnicity3.Instance("Ethnicity3", new List <IDisease> { influenza, diabetes }); Person mikeSmith = new Person("Mike Smith", ethnicity1); Person johnSmith = new Person("John Smith", ethnicity2); Person jackSmith = new Person("Jack Smith", ethnicity2); Person nickSmith = new Person("Nick Smith", ethnicity3); Person rickSmith = new Person("Rick Smith", ethnicity1); Console.WriteLine("Name: {0}, Ethnicity {1}, Probable Diseases {2}, Possible symptoms {3}", mikeSmith.Name, mikeSmith.Ethnicity.Name(), mikeSmith.GetDiseases(), mikeSmith.GetSymptoms()); Console.WriteLine("Name: {0}, Ethnicity {1}, Probable Diseases {2}, Possible symptoms {3}", johnSmith.Name, johnSmith.Ethnicity.Name(), johnSmith.GetDiseases(), johnSmith.GetSymptoms()); Console.WriteLine("Name: {0}, Ethnicity {1}, Probable Diseases {2}, Possible symptoms {3}", jackSmith.Name, jackSmith.Ethnicity.Name(), jackSmith.GetDiseases(), jackSmith.GetSymptoms()); Console.WriteLine("Name: {0}, Ethnicity {1}, Probable Diseases {2}, Possible symptoms {3}", nickSmith.Name, nickSmith.Ethnicity.Name(), nickSmith.GetDiseases(), nickSmith.GetSymptoms()); Console.WriteLine("Name: {0}, Ethnicity {1}, Probable Diseases {2}, Possible symptoms {3}", rickSmith.Name, rickSmith.Ethnicity.Name(), rickSmith.GetDiseases(), rickSmith.GetSymptoms()); Console.ReadKey(); }
public IActionResult Report() { string OPDNO = HttpContext.Session.GetString("Diabetes_OPDNO"); if (OPDNO != null && OPDNO != String.Empty) { Diabetes data = new Diabetes { UserData = _db.UserDatas.Where(c => c.OPDNo == OPDNO).FirstOrDefault(), DiabetesClinicalSymptom = _gmidb.DiabetesClinicalSymptoms.Where(c => c.OPDNO == OPDNO).FirstOrDefault(), DiabetesComorbidity = _gmidb.DiabetesComorbidities.Where(c => c.OPDNO == OPDNO).FirstOrDefault(), DiabetesPersonalHabit = _gmidb.DiabetesPersonalHabits.Where(c => c.OPDNO == OPDNO).FirstOrDefault(), DiabetesGeneralExamination = _gmidb.DiabetesGeneralExaminations.Where(c => c.OPDNO == OPDNO).FirstOrDefault(), DiabetesCNS = _gmidb.DiabetesCNSs.Where(c => c.OPDNO == OPDNO).FirstOrDefault(), DiabetesRespSystem = _gmidb.DiabetesRespSystems.Where(c => c.OPDNO == OPDNO).FirstOrDefault(), DiabetesAbdExam = _gmidb.DiabetesAbdExams.Where(c => c.OPDNO == OPDNO).FirstOrDefault(), DiabetesCVS = _gmidb.DiabetesCVSs.Where(c => c.OPDNO == OPDNO).FirstOrDefault(), DiabetesInvestigation = _gmidb.DiabetesInvestigations.Where(c => c.OPDNO == OPDNO).FirstOrDefault(), DiabetesOther = _gmidb.DiabetesOthers.Where(c => c.OPDNO == OPDNO).FirstOrDefault() }; return(View(data)); } return(RedirectToAction("Index", new { res = "First enter OPDNO" })); }