Example #1
0
        public void SumOpBatch()
        {
            var cns = new ConvNetSharp <T>();
            var x   = cns.Const(NewVolume(new[]
            {
                1.0, 2.0, 3.0,
                4.0, 5.0, 6.0
            }, new Shape(3, 1, 1, 2)), "x");
            var op = cns.Sum(x, new Shape(1, 1, 1, 2));

            using (var session = new Session <T>())
            {
                var result = op.Evaluate(session);
                AssertNumber.AreEqual(6.0, result.Get(0));
                AssertNumber.AreEqual(15.0, result.Get(1));
            }
        }
Example #2
0
        public void Shape()
        {
            var cns = new ConvNetSharp <T>();
            var x   = cns.PlaceHolder("x");
            var op  = cns.Shape(x);

            using (var session = new Session <T>())
            {
                // Batch size = 1
                var result = session.Run(op, new Dictionary <string, Volume <T> > {
                    { "x", NewVolume(new[] { 1.0, 2.0, 3.0, 4.0 }, Volume.Shape.From(1, 1, 4, 1)) }
                });

                AssertNumber.AreEqual(1.0, result.Get(0));
                AssertNumber.AreEqual(1.0, result.Get(1));
                AssertNumber.AreEqual(4.0, result.Get(2));
                AssertNumber.AreEqual(1.0, result.Get(3));

                // Batch size = 2
                result = session.Run(op, new Dictionary <string, Volume <T> >
                {
                    {
                        "x", NewVolume(new[]
                        {
                            1.0, 2.0, 3.0, 4.0,
                            1.0, 2.0, 3.0, 4.0
                        }, Volume.Shape.From(1, 1, 4, 2))
                    }
                });

                AssertNumber.AreEqual(1.0, result.Get(0));
                AssertNumber.AreEqual(1.0, result.Get(1));
                AssertNumber.AreEqual(4.0, result.Get(2));
                AssertNumber.AreEqual(2.0, result.Get(3));
            }
        }