public static void EvaluateSingleTestPrediction(SomatotypeInputData input) { PredictionEngine <SomatotypeInputData, SomatotypeOutputData> prediction_engine = null; prediction_engine = Data.Context .Model .CreatePredictionEngine <SomatotypeInputData, SomatotypeOutputData>(Data.Transformer); SomatotypeOutputData prediction = prediction_engine.Predict(input); Console.WriteLine($"**********************************************************************"); Console.WriteLine($"Predicted Endomorphic: {prediction.EndomorphicComponent:0.####}, actual fare: XXXXXXXXXX"); Console.WriteLine($"**********************************************************************"); return; }
private static void CallMachineLearningDotNet() { sample_ml = new SomatotypeInputData() { Height = 191.7, Mass = 82.0, BreadthHumerus = 7.3, BreadthFemur = 10.1, GirthArmUpper = 33.2, GirthCalfStanding = 36, SkinfoldTriceps = 7, SkinfoldSubscapular = 6, SkinfoldMedialCalf = 4, SkinfoldSupraspinale = 9 }; mlContext = new MLContext(seed: 0); // Train/learn model = TrainLearnMLdotnet(mlContext, _trainDataPath); EvaluateTestMLdotnet(mlContext, model); EvaluateTestSinglePredictionMLdotnet(mlContext, model); }
public static void LocalDeterministic() { System.IO.TextReader reader = new System.IO.StreamReader(Data.File); string s = reader.ReadToEnd(); string[] rows = s.Split ( '\n' //System.Environment.NewLine ); System.Collections.Generic.List <string[]> records = new System.Collections.Generic.List <string[]>(); foreach (string row in rows) { string[] columns = row.Split(new char[] { ',' }); records.Add(columns); } loop_data = new System.Collections.Generic.List <SomatotypeInputData>(); records.RemoveAt(0); foreach (string[] record in records) { SomatotypeInputData stid = new SomatotypeInputData() { Id = int.Parse(record[3]), Height = double.Parse(record[4]), Mass = double.Parse(record[5]), BreadthHumerus = double.Parse(record[6]), BreadthFemur = double.Parse(record[7]), GirthArmUpper = double.Parse(record[8]), GirthCalfStanding = double.Parse(record[9]), SkinfoldSubscapular = double.Parse(record[10]), SkinfoldTriceps = double.Parse(record[11]), SkinfoldSupraspinale = double.Parse(record[12]), SkinfoldMedialCalf = double.Parse(record[13]), }; loop_data.Add(stid); } HeathCarterMisigojDurakovic(); string content = null; //string header = null; StringBuilder sb = new StringBuilder(); //header = // "Endomorphic,Mesomorphic,EctoMorphic" // + "," + // "Id,Height,Mass" // + "," + // "SkinfoldTriceps,SkinfoldSubscapular,SkinfoldSupraspinale,SkinfoldMedialCalf" // + "," + // "BreadthFemur,BreadthHumerus" // + "," + // "GirthArmUpper,GirthCalfStanding" // ; sb.Clear(); System.IO.TextWriter writer = new System.IO.StreamWriter(Data.File.Replace(".csv", ".results.csv")); foreach (SomatotypeOutputtData stod1 in results) { sb.Append($"{stod1.Endomorphic},"); sb.Append($"{stod1.Mesomorphic},"); sb.Append($"{stod1.EctoMorphic},"); sb.Append($"{stod1.Id},"); sb.Append($"{stod1.Height},"); sb.Append($"{stod1.Mass},"); sb.Append($"{stod1.SkinfoldTriceps},"); sb.Append($"{stod1.SkinfoldSubscapular},"); sb.Append($"{stod1.SkinfoldSupraspinale},"); sb.Append($"{stod1.SkinfoldMedialCalf},"); sb.Append($"{stod1.BreadthFemur},"); sb.Append($"{stod1.BreadthHumerus},"); sb.Append($"{stod1.GirthArmUpper},"); sb.Append($"{stod1.GirthCalfStanding}"); sb.AppendLine(); } writer.WriteLine(content + Environment.NewLine + sb.ToString()); writer.Flush(); sb.Clear(); System.IO.TextWriter writer_1 = new System.IO.StreamWriter(Data.File.Replace(".csv", ".results_ectomorph_range_error.csv")); foreach (SomatotypeOutputtData stod1 in results_ectomorph_range_error) { sb.Append($"{stod1.Endomorphic},"); sb.Append($"{stod1.Mesomorphic},"); sb.Append($"{stod1.EctoMorphic},"); sb.Append($"{stod1.Id},"); sb.Append($"{stod1.Height},"); sb.Append($"{stod1.Mass},"); sb.Append($"{stod1.SkinfoldTriceps},"); sb.Append($"{stod1.SkinfoldSubscapular},"); sb.Append($"{stod1.SkinfoldSupraspinale},"); sb.Append($"{stod1.SkinfoldMedialCalf},"); sb.Append($"{stod1.BreadthFemur},"); sb.Append($"{stod1.BreadthHumerus},"); sb.Append($"{stod1.GirthArmUpper},"); sb.Append($"{stod1.GirthCalfStanding}"); sb.AppendLine(); } writer_1.WriteLine(content + Environment.NewLine + sb.ToString()); writer_1.Flush(); System.IO.TextWriter writer_2 = new System.IO.StreamWriter(Data.File.Replace(".csv", ".results_ectomorph_extreme.csv")); foreach (SomatotypeOutputtData stod1 in results_ectomorph_extreme) { sb.Append($"{stod1.Endomorphic},"); sb.Append($"{stod1.Mesomorphic},"); sb.Append($"{stod1.EctoMorphic},"); sb.Append($"{stod1.Id},"); sb.Append($"{stod1.Height},"); sb.Append($"{stod1.Mass},"); sb.Append($"{stod1.SkinfoldTriceps},"); sb.Append($"{stod1.SkinfoldSubscapular},"); sb.Append($"{stod1.SkinfoldSupraspinale},"); sb.Append($"{stod1.SkinfoldMedialCalf},"); sb.Append($"{stod1.BreadthFemur},"); sb.Append($"{stod1.BreadthHumerus},"); sb.Append($"{stod1.GirthArmUpper},"); sb.Append($"{stod1.GirthCalfStanding}"); sb.AppendLine(); } writer_2.WriteLine(content + Environment.NewLine + sb.ToString()); writer_2.Flush(); return; }