Ejemplo n.º 1
0
        public void Test__NormalizeDataForInOut()
        {
            /*
             -1 -1  1;
             -1  1 -1;
              1 -1 -1;
              1  1  1
             */
            Input i = new Input(4,3);
            i[0, 0] = -1;
            i[0, 1] = -1;
            i[0, 2] = 1;

            i[1, 0] = -1;
            i[1, 1] = 1;
            i[1, 2] = -1;

            i[2, 0] = 1;
            i[2, 1] = -1;
            i[2, 2] = -1;

            i[3, 0] = 1;
            i[3, 1] = 1;
            i[3, 2] = 1;

            var input = i.CopyColumns(i.Cols - 2).ToInput();
            Assert.AreEqual(2, input.Cols);
            Assert.AreEqual(4, input.Rows);
            input.Normalize();
            /*
            -1    -1
            -1     1
             1    -1
             1     1
             */
            Assert.AreEqual(-1, input[0, 0]); Assert.AreEqual(-1, input[0, 1]);
            Assert.AreEqual(-1, input[1, 0]); Assert.AreEqual(1, input[1, 1]);
            Assert.AreEqual(1, input[2, 0]); Assert.AreEqual(-1, input[2, 1]);
            Assert.AreEqual(1, input[3, 0]); Assert.AreEqual(1, input[3, 1]);

            var output = i.LastColumn.ToOutput();
            Assert.AreEqual(1, output.Cols);
            Assert.AreEqual(4, output.Rows);
            output.Normalize();

            Assert.AreEqual(1, output[0, 0]);
            Assert.AreEqual(0, output[1, 0]);
            Assert.AreEqual(0, output[2, 0]);
            Assert.AreEqual(1, output[3, 0]);
            /*
             1
             0
             0
             1
             */
        }