You can not select more than 25 topics Topics must start with a chinese character,a letter or number, can include dashes ('-') and can be up to 35 characters long.

Layers.Reshaping.Test.cs 1.6 kB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. using Microsoft.VisualStudio.TestTools.UnitTesting;
  2. using Tensorflow.NumPy;
  3. using static Tensorflow.Binding;
  4. using static Tensorflow.KerasApi;
  5. namespace Tensorflow.Keras.UnitTest.Layers
  6. {
  7. [TestClass]
  8. public class LayersReshapingTest : EagerModeTestBase
  9. {
  10. [TestMethod]
  11. public void ZeroPadding2D()
  12. {
  13. Shape input_shape = (1, 1, 2, 2);
  14. var x = np.arange(input_shape.size).reshape(input_shape);
  15. var zero_padding_2d = keras.layers.ZeroPadding2D(new[,] { { 1, 0 }, { 1, 0 } });
  16. var y = zero_padding_2d.Apply(x);
  17. Assert.AreEqual((1, 2, 3, 2), y.shape);
  18. }
  19. [TestMethod]
  20. public void UpSampling2D()
  21. {
  22. Shape input_shape = (2, 2, 1, 3);
  23. var x = np.arange(input_shape.size).reshape(input_shape);
  24. var y = keras.layers.UpSampling2D(size: (1, 2)).Apply(x);
  25. Assert.AreEqual((2, 2, 2, 3), y.shape);
  26. }
  27. [TestMethod]
  28. public void Reshape()
  29. {
  30. var inputs = tf.zeros((10, 5, 20));
  31. var outputs = keras.layers.LeakyReLU().Apply(inputs);
  32. outputs = keras.layers.Reshape((20, 5)).Apply(outputs);
  33. Assert.AreEqual((10, 20, 5), outputs.shape);
  34. }
  35. [TestMethod]
  36. public void Permute()
  37. {
  38. var inputs = tf.zeros((2, 3, 4, 5));
  39. var outputs = keras.layers.Permute(new int[] { 3, 2, 1 }).Apply(inputs);
  40. Assert.AreEqual((2, 5, 4, 3), outputs.shape);
  41. }
  42. }
  43. }