Ejemplo n.º 1
0
        public void TestMultyThreadedNormalizationData()
        {
            BaseNormalizer normlize         = new MultiThreadedNormalization();
            var            mtrx             = GetDataForSingleThreadedNormalization();
            var            normalizedMatrix = normlize.Normalize(mtrx);

            Assert.Equal(normalizedMatrix[0, 0], -0.5);
            Assert.Equal(normalizedMatrix[1, 1], -0.25);
            Assert.Equal(normalizedMatrix[3, 2], 0);
            Assert.Equal(normalizedMatrix[4, 3], 0.25);
            Assert.Equal(normalizedMatrix[4, 4], 0.5);
        }
Ejemplo n.º 2
0
        public void TestLinearRegression()
        {
            double [][] inputs = new double[3][];

            inputs[0] = new double[3];
            inputs[1] = new double[3];
            inputs[2] = new double[3];

            /*
             * system of equations:
             * x1 + x2 + x3 = 35
             * x1 + x2 - x3 = -13
             * x1 - x2 + x3 = 19
             *
             * x1 should be 3, x2 should be 8, x3 should be 24
             *
             */
            inputs[0][0] = 1;
            inputs[0][1] = 1;
            inputs[0][2] = 1;

            inputs[1][0] = 1;
            inputs[1][1] = 1;
            inputs[1][2] = -1;

            inputs[2][0] = 1;
            inputs[2][1] = -1;
            inputs[2][2] = 1;

            double [] outputs = new double[3];
            outputs[0] = 35;
            outputs[1] = -13;
            outputs[2] = 19;

            var normalizer = new MultiThreadedNormalization();
            var regressor  = new LinearRegressor(normalizer, epsilon: 0.0000001);
            var matrix     = new Matrix(inputs);
            var weights    = regressor.Fit(matrix, outputs);

            var inputs2 = new double[1][];

            inputs2[0] = new double[3];

            inputs2[0][0] = 2;
            inputs2[0][1] = 2;
            inputs2[0][2] = 2;
            var inputMatrix = new Matrix(inputs2);

            var result = regressor.Predict(inputMatrix);
        }
Ejemplo n.º 3
0
        public void TestMultyThreadedNormalization()
        {
            BaseNormalizer normlize         = new MultiThreadedNormalization();
            var            mtrx             = GetDataForSingleThreadedNormalization();
            var            normalizedMatrix = normlize.Normalize(mtrx);



            BaseNormalizer normlize1         = new SingleThreadedNormalization();
            var            mtrx1             = GetDataForSingleThreadedNormalization();
            var            normalizedMatrix1 = normlize1.Normalize(mtrx1);


            for (int i = 0; i < normalizedMatrix.LinesNumber; i++)
            {
                for (int j = 0; j < normalizedMatrix.ColumnsNumber; j++)
                {
                    Assert.Equal(normalizedMatrix[i, j], normalizedMatrix1[i, j]);
                }
            }
        }