/// <summary> /// Teaches the network. /// </summary> /// <param name="network">The network.</param> public void TeachNetwork(TeachableNetwork network) { int era = 0; double errorForWholeEra = 0; int currentIterationCount = 0; do { era++; errorForWholeEra = 0; TrainingCollection.Values.Shuffle(); foreach (var trainingSet in TrainingCollection.Values) { currentIterationCount++; network.LearnSomething(trainingSet.Input, trainingSet.Response); } TrainingCollection.Values.Shuffle(); errorForWholeEra = GiveErrorForWholeEra(network); } while(!Stop(errorForWholeEra, era, currentIterationCount)); }