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.7 kB

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