Exemplo n.º 1
0
        public virtual double[] Perzertron_forward_softmax(double[] x)
        {
            double[] y = new double[x.Length];
            double[] z;

            for (int i = 0; i < x.Length; i++)
            {
                for (int j = 0; j < x.Length; j++)
                {
                    y[i] = y[i] + (x[i] * weight_2[j, i]);
                }
            }
            for (int i = 0; i < x.Length; i++)
            {
                y[i] = y[i] + bias1[i];
            }

            z = Activation_Func.Softmax(y);

            /*     for (int i = 0; i < x.Length; i++)
             *   {
             *
             *       y[i] = sigmoid(y[i]);
             *   }*/

            return(z);
        }
        /// <summary>
        /// Шаг вперен по второму слою
        /// </summary>
        /// <param name="x"> массив внутреннего слоя</param>
        /// <returns></returns>
        public override double[] Perzertron_forward_softmax(double[] x)
        {
            double[] y = new double[x.Length];


            for (int i = 0; i < x.Length; i++)
            {
                for (int j = 0; j < x.Length; j++)
                {
                    y[i] = y[i] + (x[i] * weight_2[j, i]);
                }
            }
            for (int i = 0; i < x.Length; i++)
            {
                y[i] = y[i] + bias1[i];
            }

            // z = activation_Func.Softmax(y);

            for (int i = 0; i < x.Length; i++)
            {
                y[i] = Activation_Func.Sigmoid(y[i]);
            }

            // return z;
            return(y);
        }
Exemplo n.º 3
0
        public virtual double[] Perzertron_forward(double[] x)
        {
            double[] y = new double[x.Length];

            for (int i = 0; i < x.Length; i++)
            {
                for (int j = 0; j < x.Length; j++)
                {
                    y[i] = y[i] + (x[i] * weight_1[j, i]);
                }
            }

            for (int i = 0; i < x.Length; i++)
            {
                y[i] = y[i] + bias0[i];
            }

            for (int i = 0; i < x.Length; i++)
            {
                y[i] = Activation_Func.Sigmoid(y[i]);
            }
            return(y);
        }