public override void Load(BinaryReader r) { base.Load(r); charsPerImage = r.ReadInt32(); charsSet = r.ReadString().ToCharArray().ToList().Select(c => c.ToString()).ToList(); learnRate = r.ReadDouble(); sann = SimpleNeuralNetwork.Load(r); sann.OnTrainingProgressChange += new SimpleNeuralNetwork.TrainingProgressHandler(sann_OnTrainingProgressChange); }
public override void Load(BinaryReader r) { base.Load(r); charsPerImage = r.ReadInt32(); charsSet = r.ReadString().ToCharArray().ToList().Select(c => c.ToString()).ToList(); learnRate = r.ReadDouble(); int count = r.ReadInt32(); sann = new List <SpecialNeuralNet>(); for (int i = 0; i < count; i++) { sann.Add(new SpecialNeuralNet()); sann[i].NeuralNet = SimpleNeuralNetwork.Load(r); sann[i].NeuralNet.OnTrainingProgressChange += new SimpleNeuralNetwork.TrainingProgressHandler(sann_OnTrainingProgressChange); sann[i].Solution = r.ReadString(); sann[i].LastOutput = r.ReadDouble(); } }
static void Load_and_predict(string filepath) { // train & testing data var training_data = new Dictionary <int, Tuple <float[], float[]> > { // ys xs [0] = new Tuple <float[], float[]>(new float[] { 0, 1 }, new float[] { 1 }), [1] = new Tuple <float[], float[]>(new float[] { 1, 0 }, new float[] { 1 }), [2] = new Tuple <float[], float[]>(new float[] { 0, 0 }, new float[] { 0 }), [3] = new Tuple <float[], float[]>(new float[] { 1, 1 }, new float[] { 0 }) }; var snn = SimpleNeuralNetwork.Load(filepath); Console.WriteLine("Red Neuronal cargada !!.\n"); // predict Console.WriteLine("\nPredicciones:\n"); for (int i = 0; i < 4; i++) { var res = snn.Predict(training_data[i].Item1); Console.WriteLine(string.Format("xs [ {0}, {1} ] = {2}", training_data[i].Item1[0], training_data[i].Item1[1], res[0])); } }