fix unflatten vjp (#1708)

This commit is contained in:
Awni Hannun
2024-12-16 18:37:57 -08:00
committed by GitHub
parent a82996e9fb
commit d03c01dfbc
2 changed files with 16 additions and 1 deletions

View File

@@ -605,6 +605,21 @@ class TestAutograd(mlx_tests.MLXTestCase):
dfdx = mx.grad(fun)(x)
self.assertTrue(mx.allclose(dfdx, -2j * mx.ones_like(x)))
def test_flatten_unflatten_vjps(self):
def fun(x):
y = mx.unflatten(x, 0, (2, 2))
return y.sum()
x = mx.zeros((4, 8))
self.assertEqual(mx.grad(fun)(x).shape, (4, 8))
def fun(x):
y = mx.flatten(x, 0, 2)
return y.sum()
x = mx.zeros((2, 4, 8))
self.assertEqual(mx.grad(fun)(x).shape, (2, 4, 8))
if __name__ == "__main__":
unittest.main()