public Connection(Node upstreamNode, Node downstreamNode)
 {
     UpstreamNode   = upstreamNode;
     DownstreamNode = downstreamNode;
     Weight         = BasicMath.RandomFromRange(-0.1, 0.1);
     Gradient       = 0;
 }
        public virtual void CalculateOutput()
        {
            double TmpOutput = 0;

            foreach (Connection item in UpstreamConnectionList)
            {
                TmpOutput += item.Weight * item.UpstreamNode.Output;
            }
            Output = BasicMath.Sigmoid(TmpOutput);
        }