public LeNetSnapshot(LeNetNetwork network) { Network = network; Input = new StepSnapshot(network.inputLayer); FirstConvolutions = network.FirstConvolutions.Select(step => new StepSnapshot(step)).ToArray(); FirstSubsampling = network.FirstSubsampling.Select(step => new StepSnapshot(step)).ToArray(); SecondConvolutions = network.SecondConvolutions.Select(step => new StepSnapshot(step)).ToArray(); SecondSubsampling = network.SecondSubsampling.Select(step => new StepSnapshot(step)).ToArray(); Consolidation = new StepSnapshot(network.Consolidation, 1); Output = new StepSnapshot(network.Output, LeNetConfiguration.OutputWidth); Marking = new StepSnapshot(network.Marking, network.Marking.Length); }