Fix SEW-D implementation differences (#14191)

* Fix SEW-D

* Update tests

* isort
This commit is contained in:
Anton Lozhkov
2021-10-28 16:22:18 +03:00
committed by GitHub
parent 78b6a2ecbd
commit 1251072f46
5 changed files with 22 additions and 16 deletions

View File

@@ -21,7 +21,7 @@ from transformers.testing_utils import require_torch
if is_torch_available():
import torch
from transformers.activations import _gelu_python, gelu_new, get_activation
from transformers.activations import gelu_new, gelu_python, get_activation
@require_torch
@@ -29,8 +29,8 @@ class TestActivations(unittest.TestCase):
def test_gelu_versions(self):
x = torch.tensor([-100, -1, -0.1, 0, 0.1, 1.0, 100])
torch_builtin = get_activation("gelu")
self.assertTrue(torch.allclose(_gelu_python(x), torch_builtin(x)))
self.assertFalse(torch.allclose(_gelu_python(x), gelu_new(x)))
self.assertTrue(torch.allclose(gelu_python(x), torch_builtin(x)))
self.assertFalse(torch.allclose(gelu_python(x), gelu_new(x)))
def test_get_activation(self):
get_activation("swish")
@@ -39,6 +39,7 @@ class TestActivations(unittest.TestCase):
get_activation("tanh")
get_activation("gelu_new")
get_activation("gelu_fast")
get_activation("gelu_python")
with self.assertRaises(KeyError):
get_activation("bogus")
with self.assertRaises(KeyError):

View File

@@ -540,9 +540,9 @@ class SEWDModelIntegrationTest(unittest.TestCase):
)
expected_output_sum = 54201.0469
self.assertTrue(torch.allclose(outputs[:, :4, :4], expected_outputs_first, atol=5e-3))
self.assertTrue(torch.allclose(outputs[:, -4:, -4:], expected_outputs_last, atol=5e-3))
self.assertTrue(abs(outputs.sum() - expected_output_sum) < 5)
self.assertTrue(torch.allclose(outputs[:, :4, :4], expected_outputs_first, atol=1e-3))
self.assertTrue(torch.allclose(outputs[:, -4:, -4:], expected_outputs_last, atol=1e-3))
self.assertTrue(abs(outputs.sum() - expected_output_sum) < 1)
def test_inference_ctc_batched(self):
model = SEWDForCTC.from_pretrained("asapp/sew-d-tiny-100k-ft-ls100h").to(torch_device)