4 ms·
You're right they don't cover functions. I don't understand what about binding or sharing they don't deal with though. Could you elaborate?
by tome 7y ago
You're right they don't cover functions. I don't understand what about binding or sharing they don't deal with though. Could you elaborate?
- tiarkrompf 7y agoFor starters, what if you want to differentiate through code that traverses a collection, for example: val x = ... ys.map(y => y + x) Each loop iteration needs to contribute a gradient update to x, which is defined in an outer scope. And what if y => y + x is not given as an inline lambda, but defined elsewhere. It doesn't seem like your blog posts discusses any such cases.
- tome 7y agoCorrect, it doesn't discuss that case, indeed it doesn't treat user-defined functions at all. I just don't understand in what sense it doesn't treat binding or sharing.