public void cntk_variable_test() { using (var K = new CNTKBackend()) { #region doc_variable double[,] val = new double[, ] { { 1, 2 }, { 3, 4 } }; var kvar = K.variable(array: (Array)val, name: "example_var"); var a = K.dtype(kvar); // 'float64' var b = kvar.eval(); // { { 1, 2 }, { 3, 4 } } #endregion Assert.AreEqual(DataType.Double, a); Assert.AreEqual(new double[, ] { { 1, 2 }, { 3, 4 } }, b); } }
public void cntk_random_uniform() { using (var K = new CNTKBackend()) { #region doc_random_uniform var kvar = K.random_uniform(new int?[] { 100, 2000 }, minval: -4, maxval: 2, dtype: DataType.Double, seed: 1337, name: "uni"); var a = K.dtype(kvar); // float64 (Double) var b = kvar.eval(); #endregion double[,] actual = (double[, ])b; Assert.AreEqual(100, actual.Rows()); Assert.AreEqual(2000, actual.Columns()); var u = UniformContinuousDistribution.Estimate(actual.Reshape()); Assert.AreEqual(-4, u.Minimum, 1e-3); Assert.AreEqual(+2, u.Maximum, 1e-3); Assert.AreEqual(-1, u.Mean, 1e-2); } }