News for hackers. Stuff that matters.
Re:Show HN: Boldly go where Gradient Descent has never gone ... by sundalia on Sunday May 26, 2024 @03:44PM (#40484787)
This is very interesting. A few questions:

- Why do you think similar approaches never landed on jax? My guess is this is not that useful for the current optimizations in fashion (transformers)

- How would you convince jax to incorporate this?

Re:Show HN: Boldly go where Gradient Descent has never gone ... by frankling_ on Sunday May 26, 2024 @03:56PM (#40484863)
Well, the most common ML problems can be expressed as optimization over smooth functions (or reformulated that way manually). We might have to convince the ML world that branches do matter :) On the other hand, there are gradient-free approaches that solve problems with jumps in other ways, like many reinforcement learning algorithms, or metaheuristics such as genetic algorithms in simulation-based optimization. The jury's still out on "killer apps" where gradient descent can outperform these approaches reliably, but we're hoping to add to that body of knowledge...
Re:Show HN: Boldly go where Gradient Descent has never gone ... by YeGoblynQueenne on Monday May 27, 2024 @04:59AM (#40488987)
>> We might have to convince the ML world that branches do matter :)

Easy: tell them about automata.

Re:Show HN: Boldly go where Gradient Descent has never gone ... by radarsat1 on Monday May 27, 2024 @02:52AM (#40488332)
> Why do you think similar approaches never landed on jax?

Isn't this just adding noise to some branching conditions? What would take for a framework like Jax to "support" it, it seems like all you have to do is change

> if (x>0)

to

> if (x+n > 0)

where n is a sampled Gaussian.

Not sure this warrants any kind of changes in a framework if it's truly that trivial.

Re:Show HN: Boldly go where Gradient Descent has never gone ... by tomsmeding on Monday May 27, 2024 @02:54AM (#40488345)
Semantically it seems truly that trivial, but in practice handling expectations in AD requires some additional machinery not found in implementations that were not written for nondeterminism.