def test_ShannonEntropy_pytorch(self): """.""" loss = losses.ShannonEntropy() inputs = torch.tensor([[0.7, 0.3], [0.9, 0.1]]) result = loss._create_pytorch_loss()(inputs).numpy() expected = [ -np.mean([0.7 * np.log(0.7), 0.3 * np.log(0.3)]), -np.mean([0.9 * np.log(0.9), 0.1 * np.log(0.1)]) ] assert np.allclose(expected, result)
def test_ShannonEntropy_tf(self): """.""" loss = losses.ShannonEntropy() inputs = tf.constant([[0.7, 0.3], [0.9, 0.1]]) result = loss._compute_tf_loss(inputs).numpy() expected = [ -np.mean([0.7 * np.log(0.7), 0.3 * np.log(0.3)]), -np.mean([0.9 * np.log(0.9), 0.1 * np.log(0.1)]) ] assert np.allclose(expected, result)