public static NetworkSnapshot Take(Network network) { var snapshot = new NetworkSnapshot(); snapshot.initializeData(network); return snapshot; }
internal NetworkInfo(NetworkSnapshot snapshot) { this.snapshot = snapshot; var layerSizes = new int[snapshot.Weights.Length + 1]; // +1 for input layer layerSizes[0] = snapshot.InputLayerSize; for (int i = layerSizes.Length - 1; i > 0; --i) layerSizes[i] = snapshot.Weights[i - 1].Length; // - bias this.LayerSizes = Array.AsReadOnly(layerSizes); }