def testInvalidRank(self):
        with test_util.force_cpu():
            sp_input = self._SparseTensor_2x5x6()
            new_shape = np.array([3, 7], dtype=np.int64)

            with self.assertRaises(ValueError):
                sparse_ops.sparse_reset_shape(sp_input, new_shape)
Beispiel #2
0
  def testInvalidRank(self):
    with self.test_session(use_gpu=False):
      sp_input = self._SparseTensor_2x5x6()
      new_shape = np.array([3, 7], dtype=np.int64)

      with self.assertRaises(ValueError):
        sparse_ops.sparse_reset_shape(sp_input, new_shape)
    def testInvalidDimensionSizeStatic(self):
        sp_input = self._SparseTensor_2x5x6()
        new_shape = np.array([3, 7, 5], dtype=np.int64)

        with self.assertRaisesRegexp(ValueError,
                                     "should have dimension sizes"):
            sparse_ops.sparse_reset_shape(sp_input, new_shape)
  def testInvalidRank(self):
    with self.test_session(use_gpu=False):
      sp_input = self._SparseTensor_2x5x6()
      new_shape = np.array([3, 7], dtype=np.int64)

      with self.assertRaises(ValueError):
        sparse_ops.sparse_reset_shape(sp_input, new_shape)
Beispiel #5
0
  def testInvalidRank(self):
    with test_util.force_cpu():
      sp_input = self._SparseTensor_2x5x6()
      new_shape = np.array([3, 7], dtype=np.int64)

      with self.assertRaises(ValueError):
        sparse_ops.sparse_reset_shape(sp_input, new_shape)
Beispiel #6
0
  def testInvalidDimensionSizeInputUnavailableInGraphConstruction(self):
    sp_input = array_ops.sparse_placeholder(dtype=dtypes.int32)
    with self.test_session(use_gpu=False) as sess:
      new_shape = np.array([3, 7, 5], dtype=np.int64)
      out = sparse_ops.sparse_reset_shape(sp_input, new_shape)

      with self.assertRaisesOpError("x <= y did not hold element-wise"):
        sess.run(out, feed_dict={sp_input: self._SparseTensorValue_2x5x6()})
  def testInvalidDimensionSize(self):
    with self.test_session(use_gpu=False) as sess:
      sp_input = self._SparseTensor_2x5x6()
      new_shape = np.array([3, 7, 5], dtype=np.int64)
      out = sparse_ops.sparse_reset_shape(sp_input, new_shape)

      with self.assertRaisesOpError("x <= y did not hold element-wise"):
        sess.run(out)
  def testInvalidRankNewShapeUnavailableInGraphConstruction(self):
    with self.test_session(use_gpu=False) as sess:
      new_shape = array_ops.placeholder(dtype=dtypes.int64)
      sp_input = self._SparseTensor_2x5x6()
      out = sparse_ops.sparse_reset_shape(sp_input, new_shape)

      with self.assertRaisesOpError("x == y did not hold element-wise"):
        sess.run(out, feed_dict={new_shape: np.array([3, 7], dtype=np.int64)})
    def testInvalidDimensionSizeDynamic(self):
        with self.session(use_gpu=False) as sess:
            sp_input = self._SparseTensor_2x5x6()
            new_shape = array_ops.placeholder(dtype=dtypes.int32)
            out = sparse_ops.sparse_reset_shape(sp_input, new_shape)

            with self.assertRaisesOpError("x <= y did not hold element-wise"):
                sess.run(out, feed_dict={new_shape: [3, 7, 5]})
Beispiel #10
0
  def testInvalidDimensionSizeDynamic(self):
    with self.test_session(use_gpu=False) as sess:
      sp_input = self._SparseTensor_2x5x6()
      new_shape = array_ops.placeholder(dtype=dtypes.int32)
      out = sparse_ops.sparse_reset_shape(sp_input, new_shape)

      with self.assertRaisesOpError("x <= y did not hold element-wise"):
        sess.run(out, feed_dict={new_shape: [3, 7, 5]})
Beispiel #11
0
  def testInvalidDimensionSize(self):
    with self.test_session(use_gpu=False) as sess:
      sp_input = self._SparseTensor_2x5x6()
      new_shape = np.array([3, 7, 5], dtype=np.int64)
      out = sparse_ops.sparse_reset_shape(sp_input, new_shape)

      with self.assertRaisesOpError("x <= y did not hold element-wise"):
        sess.run(out)
Beispiel #12
0
  def testInvalidRankNewShapeUnavaibleInGraphConstruction(self):
    with self.test_session(use_gpu=False) as sess:
      new_shape = array_ops.placeholder(dtype=dtypes.int64)
      sp_input = self._SparseTensor_2x5x6()
      out = sparse_ops.sparse_reset_shape(sp_input, new_shape)

      with self.assertRaisesOpError("x == y did not hold element-wise"):
        sess.run(out, feed_dict={new_shape: np.array([3, 7], dtype=np.int64)})
Beispiel #13
0
  def testInvalidDimensionSizeInputUnavailableInGraphConstruction(self):
    sp_input = array_ops.sparse_placeholder(dtype=dtypes.int32)
    with self.test_session(use_gpu=False) as sess:
      new_shape = np.array([3, 7, 5], dtype=np.int64)
      out = sparse_ops.sparse_reset_shape(sp_input, new_shape)

      with self.assertRaisesOpError("x <= y did not hold element-wise"):
        sess.run(out, feed_dict={sp_input: self._SparseTensorValue_2x5x6()})
    def testTightBoundingBox(self):
        with self.test_session(use_gpu=False) as sess:
            sp_input = self._SparseTensor_2x5x6()
            sp_output = sparse_ops.sparse_reset_shape(sp_input)

            output = sess.run(sp_output)

            self.assertAllEqual(output.indices, [[0, 0, 0], [0, 1, 0], [0, 1, 3], [1, 1, 4], [1, 3, 2], [1, 3, 3]])
            self.assertAllEqual(output.values, [0, 10, 13, 14, 32, 33])
            self.assertAllEqual(output.shape, [2, 4, 5])
    def testTightBoundingBoxEmpty(self):
        with self.test_session(use_gpu=False) as sess:
            sp_input = self._SparseTensor_2x5x6_Empty()
            sp_output = sparse_ops.sparse_reset_shape(sp_input)

            output = sess.run(sp_output)

            self.assertAllEqual(output.indices.shape, [0, 3])
            self.assertAllEqual(output.values.shape, [0])
            self.assertAllEqual(output.dense_shape, [0, 0, 0])
Beispiel #16
0
  def testTightBoundingBoxEmpty(self):
    with self.test_session(use_gpu=False) as sess:
      sp_input = self._SparseTensor_2x5x6_Empty()
      sp_output = sparse_ops.sparse_reset_shape(sp_input)

      output = sess.run(sp_output)

      self.assertAllEqual(output.indices.shape, [0, 3])
      self.assertAllEqual(output.values.shape, [0])
      self.assertAllEqual(output.dense_shape, [0, 0, 0])
    def testTightBoundingBoxEmpty(self):
        with test_util.force_cpu():
            sp_input = self._SparseTensor_2x5x6_Empty()
            sp_output = sparse_ops.sparse_reset_shape(sp_input)

            output = self.evaluate(sp_output)

            self.assertAllEqual(output.indices.shape, [0, 3])
            self.assertAllEqual(output.values.shape, [0])
            self.assertAllEqual(output.dense_shape, [0, 0, 0])
Beispiel #18
0
  def testTightBoundingBoxEmpty(self):
    with test_util.force_cpu():
      sp_input = self._SparseTensor_2x5x6_Empty()
      sp_output = sparse_ops.sparse_reset_shape(sp_input)

      output = self.evaluate(sp_output)

      self.assertAllEqual(output.indices.shape, [0, 3])
      self.assertAllEqual(output.values.shape, [0])
      self.assertAllEqual(output.dense_shape, [0, 0, 0])
  def testTightBoundingBox(self):
    with test_util.force_cpu():
      sp_input = self._SparseTensor_2x5x6()
      sp_output = sparse_ops.sparse_reset_shape(sp_input)

      output = self.evaluate(sp_output)

      self.assertAllEqual(output.indices, [[0, 0, 0], [0, 1, 0], [0, 1, 3],
                                           [1, 1, 4], [1, 3, 2], [1, 3, 3]])
      self.assertAllEqual(output.values, [0, 10, 13, 14, 32, 33])
      self.assertAllEqual(output.dense_shape, [2, 4, 5])
Beispiel #20
0
  def testTightBoundingBox(self):
    with test_util.force_cpu():
      sp_input = self._SparseTensor_2x5x6()
      sp_output = sparse_ops.sparse_reset_shape(sp_input)

      output = self.evaluate(sp_output)

      self.assertAllEqual(output.indices, [[0, 0, 0], [0, 1, 0], [0, 1, 3],
                                           [1, 1, 4], [1, 3, 2], [1, 3, 3]])
      self.assertAllEqual(output.values, [0, 10, 13, 14, 32, 33])
      self.assertAllEqual(output.dense_shape, [2, 4, 5])
    def testInputUnavaibleInGraphConstructionOk(self):
        with self.test_session(use_gpu=False) as sess:
            sp_input = array_ops.sparse_placeholder(dtype=dtypes.int32)
            new_shape = np.array([3, 6, 7], dtype=np.int64)
            sp_output = sparse_ops.sparse_reset_shape(sp_input, new_shape)

            output = sess.run(sp_output, feed_dict={sp_input: self._SparseTensorValue_2x5x6()})

            self.assertAllEqual(output.indices, [[0, 0, 0], [0, 1, 0], [0, 1, 3], [1, 1, 4], [1, 3, 2], [1, 3, 3]])
            self.assertAllEqual(output.values, [0, 10, 13, 14, 32, 33])
            self.assertAllEqual(output.shape, [3, 6, 7])
  def testTightBoundingBox(self):
    with self.test_session(use_gpu=False) as sess:
      sp_input = self._SparseTensor_2x5x6()
      sp_output = sparse_ops.sparse_reset_shape(sp_input)

      output = sess.run(sp_output)

      self.assertAllEqual(output.indices, [[0, 0, 0], [0, 1, 0], [0, 1, 3],
                                           [1, 1, 4], [1, 3, 2], [1, 3, 3]])
      self.assertAllEqual(output.values, [0, 10, 13, 14, 32, 33])
      self.assertAllEqual(output.dense_shape, [2, 4, 5])
    def testBasic(self):
        with self.test_session(use_gpu=False) as sess:
            sp_input = self._SparseTensor_2x5x6()
            new_shape = np.array([3, 6, 7], dtype=np.int64)
            sp_output = sparse_ops.sparse_reset_shape(sp_input, new_shape)

            output = sess.run(sp_output)

            self.assertAllEqual(output.indices, [[0, 0, 0], [0, 1, 0], [0, 1, 3], [1, 1, 4], [1, 3, 2], [1, 3, 3]])
            self.assertAllEqual(output.values, [0, 10, 13, 14, 32, 33])
            self.assertAllEqual(output.shape, [3, 6, 7])
Beispiel #24
0
  def testInputUnavailableInGraphConstructionOk(self):
    with test_util.force_cpu():
      sp_input = self._SparseTensorValue_2x5x6()
      new_shape = np.array([3, 6, 7], dtype=np.int64)
      sp_output = sparse_ops.sparse_reset_shape(sp_input, new_shape)

      output = self.evaluate(sp_output)

      self.assertAllEqual(output.indices, [[0, 0, 0], [0, 1, 0], [0, 1, 3],
                                           [1, 1, 4], [1, 3, 2], [1, 3, 3]])
      self.assertAllEqual(output.values, [0, 10, 13, 14, 32, 33])
      self.assertAllEqual(output.dense_shape, [3, 6, 7])
  def testInputUnavailableInGraphConstructionOk(self):
    with test_util.force_cpu():
      sp_input = self._SparseTensorValue_2x5x6()
      new_shape = np.array([3, 6, 7], dtype=np.int64)
      sp_output = sparse_ops.sparse_reset_shape(sp_input, new_shape)

      output = self.evaluate(sp_output)

      self.assertAllEqual(output.indices, [[0, 0, 0], [0, 1, 0], [0, 1, 3],
                                           [1, 1, 4], [1, 3, 2], [1, 3, 3]])
      self.assertAllEqual(output.values, [0, 10, 13, 14, 32, 33])
      self.assertAllEqual(output.dense_shape, [3, 6, 7])
  def testBasic(self):
    with self.test_session(use_gpu=False) as sess:
      sp_input = self._SparseTensor_2x5x6()
      new_shape = np.array([3, 6, 7], dtype=np.int64)
      sp_output = sparse_ops.sparse_reset_shape(sp_input, new_shape)

      output = sess.run(sp_output)

      self.assertAllEqual(output.indices, [[0, 0, 0], [0, 1, 0], [0, 1, 3],
                                           [1, 1, 4], [1, 3, 2], [1, 3, 3]])
      self.assertAllEqual(output.values, [0, 10, 13, 14, 32, 33])
      self.assertAllEqual(output.dense_shape, [3, 6, 7])
  def testFeedInputUnavailableInGraphConstructionOk(self):
    with self.session(use_gpu=False) as sess:
      sp_input = array_ops.sparse_placeholder(dtype=dtypes.int32)
      new_shape = np.array([3, 6, 7], dtype=np.int64)
      sp_output = sparse_ops.sparse_reset_shape(sp_input, new_shape)

      output = sess.run(sp_output,
                        feed_dict={sp_input: self._SparseTensorValue_2x5x6()})

      self.assertAllEqual(output.indices, [[0, 0, 0], [0, 1, 0], [0, 1, 3],
                                           [1, 1, 4], [1, 3, 2], [1, 3, 3]])
      self.assertAllEqual(output.values, [0, 10, 13, 14, 32, 33])
      self.assertAllEqual(output.dense_shape, [3, 6, 7])
Beispiel #28
0
 def pad_fn(k=k,
            t=t,
            ndims=ndims,
            num_frames=num_frames,
            new_shape=new_shape):
   """Pads the tensor."""
   if isinstance(t, sparse_tensor.SparseTensor):
     return sparse_ops.sparse_reset_shape(t, new_shape)
   else:
     # Padding is n * 2 tensor where n is the ndims or rank of the padded
     # tensor.
     paddings = array_ops.stack([[0, 0], [0, list_size - num_frames]] +
                                [[0, 0]] * (ndims - 2))
     return array_ops.pad(
         t,
         paddings,
         constant_values=array_ops.squeeze(
             example_feature_spec[k].default_value[0]))
Beispiel #29
0
 def pad_fn(k=k,
             t=t,
             ndims=ndims,
             num_frames=num_frames,
             new_shape=new_shape):
     """Pads the tensor."""
     if isinstance(t, sparse_tensor.SparseTensor):
         return sparse_ops.sparse_reset_shape(t, new_shape)
     else:
         # Padding is n * 2 tensor where n is the ndims or rank of the padded
         # tensor.
         if ndims == 2:
           paddings = array_ops.stack([[0, list_size - num_frames, ],[0, 0]])
         else:
           paddings = array_ops.stack([[0, list_size - num_frames,] ])
         default_val = tf.cast(0, tf.int64)
         if name_to_sequence_features[k].dtype == tf.string:
           default_val = ""
         return array_ops.pad(
             t,
             paddings,
             constant_values=array_ops.squeeze(default_val)
             )
 def testStaticShapeInfoPreservedWhenNewShapeIsProvidedAndStatic(self):
     sp_input = self._SparseTensor_2x5x6()
     new_shape = np.array([3, 6, 7], dtype=np.int64)
     sp_output = sparse_ops.sparse_reset_shape(sp_input, new_shape)
     self.assertAllEqual([3, 6, 7], sp_output.get_shape())
Beispiel #31
0
 def testStaticShapeInfoPreservedWhenNewShapeIsProvidedAndStatic(self):
   sp_input = self._SparseTensor_2x5x6()
   new_shape = np.array([3, 6, 7], dtype=np.int64)
   sp_output = sparse_ops.sparse_reset_shape(sp_input, new_shape)
   self.assertAllEqual([3, 6, 7], sp_output.get_shape())
Beispiel #32
0
  def testInvalidDimensionSizeStatic(self):
    sp_input = self._SparseTensor_2x5x6()
    new_shape = np.array([3, 7, 5], dtype=np.int64)

    with self.assertRaisesRegexp(ValueError, "should have dimension sizes"):
      sparse_ops.sparse_reset_shape(sp_input, new_shape)