public void Initialize(NetworkInitializeArgs args)
        {
            if (_initialized)
            {
                return;
            }

            var inputShape = args.inputShape;

            for (int i = 0; i < _layers.Count; ++i)
            {
                var layer = _layers[i];
                layer.Initial(inputShape, this, i, args);
                inputShape = layer.outputShape;
            }

            _initialized = true;
        }
 public abstract void Initial(Shape inputShape, INeuralNetwork neuralNetwork, int layerIndex, NetworkInitializeArgs args);