Closed fred3m closed 5 years ago
Ignore request, this should be an independent PR.
While the other approach would be more transparent there are a few things that we need to consider:
autograd
doesn't like inline updates, but I'm also not sure how it would respond to rewriting the entire array it is using for the gradient. This makes me think that we should add a few more tests to scarlet to make sure that proximal operators and autograd
are compatible (which they likely aren't in their current or proposed state).
All changes are OK. However, I wonder if we still need to inline change, which is at least somewhat unexpected. We introduced that to allow on-the-fly resizing without interrupting the algorithms in this package, and we're not using this feature any more. The more transparent approach would be to return the modified variable but leave the original intact. Plus, if we actually want to differentiate through those proxes, we couldn't do inline updates either.
So the question here is, should we use this PR to make that change?