コード例 #1
0
ファイル: TestTorchTensor.cs プロジェクト: hxjj/TorchSharp
        public void CreateHalfTensorFromScalar()
        {
            float scalar = 333.0f;

            using (var tensor = HalfTensor.From(scalar)) {
                Assert.Equal(333.0f, tensor.ReadHalf(0));
            }
        }
コード例 #2
0
ファイル: TestTorchTensor.cs プロジェクト: hxjj/TorchSharp
        public void CreateHalfTensorFromDataCheckStrides()
        {
            var data       = new float[] { 0.2663158f, 0.1144736f, 0.1147367f, 0.1249998f, 0.1957895f, 0.1231576f, 0.1944732f, 0.111842f, 0.1065789f, 0.667881f, 0.5682123f, 0.5824502f, 0.4824504f, 0.4844371f, 0.6463582f, 0.5334439f, 0.5079474f, 0.2281452f };
            var dataTensor = HalfTensor.From(data, new long[] { 2, 9 });

            for (int r = 0; r < 2; r++)
            {
                for (int i = 0; i < 9; i++)
                {
                    var fromData   = data[(r * 9) + i];
                    var fromTensor = dataTensor.ReadHalf((r * 9) + i);
                    Assert.True(Math.Abs(fromData - fromTensor) < 0.01);
                }
            }

            var firstHalf = dataTensor[0];

            for (int i = 0; i < 9; i++)
            {
                var fromData  = data[i];
                var fromChunk = firstHalf.ReadHalf(i);
                Assert.True(Math.Abs(fromData - fromChunk) < 0.01);
            }
        }