static void Main(string[] args) { Case[] cases = Utilities.ReadCSV(Path.Combine(@"C:\Users\Julius Jacobsohn\OneDrive\Dokumente\MNIST", "mnist_train_small.csv")); Layer[] layers = new Layer[4]; ConvolutionalLayer layer1 = new ConvolutionalLayer(1, 5, 8, cases[0].Data.Size); ReluLayer layer2 = new ReluLayer(layer1.Out.Size); PoolLayer layer3 = new PoolLayer(2, 2, layer2.Out.Size); FullyConnectedLayer layer4 = new FullyConnectedLayer(10, layer3.Out.Size); layers[0] = layer1; layers[1] = layer2; layers[2] = layer3; layers[3] = layer4; float amse = 0; int ic = 0; for (int ep = 0; ep < 100000;) { foreach (Case c in cases) { float xError = Train(layers, c.Data, c.Out); amse += xError; ep++; ic++; //Console.WriteLine("Case " + ep + " err=" + amse / ic); } } }