Пример #1
0
        public void SeluTest()
        {
            var Alpha = 1.6732632423543772848170429916717;

            var a = new Matrix(2, 2);

            a.InRandomize();
            var b = a.Duplicate();

            a = new SeluKernel().Forward(a);
            b.InMap((x) => x > 0 ? x : Alpha * (Math.Exp(x) - 1));
            Assert.IsTrue(a == b, "SeLU Activation successful");
        }
Пример #2
0
        public void SeluPrimeTest()
        {
            var Alpha  = 1.6732632423543772848170429916717;
            var Lambda = 1.0507009873554804934193349852946;

            var a = new Matrix(2, 2);

            a.InRandomize();
            var b = a.Duplicate();

            a = new SeluKernel().Backward(a);
            b.InMap((x) => x > 0 ? Lambda : Lambda * Alpha * Math.Exp(x));
            Assert.IsTrue(a == b, "SeLU Derivative successful");
        }