def _backward_features(self, use_gpu=False): self.init_ops() with self.test_session(use_gpu=use_gpu, force_gpu=use_gpu): actual_op = flex_convolution(self.features_op, self.position_op, self.neighborhood_op, self.theta_op, self.bias_op) graph_features_grad, num_features_grad = tf.test.compute_gradient( [self.features_op], [self.features.shape], actual_op, TPC.expected_output_shape())[0] summary(num_features_grad, graph_features_grad, 'self.features') err = tf.test.compute_gradient_error([self.features_op], [self.features.shape], actual_op, TPC.expected_output_shape()) self.assertLess(err, 1e-2)
def test_forward(self): cpu = self._forward(use_gpu=False) gpu = self._forward(use_gpu=True) summary(cpu, gpu, 'self.features') self.assertAllClose(cpu, gpu, rtol=1e-05)