Closed seabbs closed 3 months ago
the downside of this is reducing visibility
NB: Zygote
only works with strict immutability so to get it to work well requires rrule
s and strictly careful attention.
or being strict about immutability? The downside is we lose track of what doesn't work but if we don't think we can support it in any reasonable term its only a small downside
I think the Julia AD community is moving towards having better support for mutability (e.g. https://github.com/compintell/Tapir.jl?tab=readme-ov-file#coverage-of-more-of-the-language ) rather than recommending immutability everywhere. This suggests that Zygote
is getting depreciated outside of core ML packages (e.g. Flux.jl, Lux.jl) where it is "easy" to maintain immutability between layers. YMMV though.
At the moment we include Zygote in our benchmarking but as per #339 support across our tools is very poor and performance is bad. To reduce the number of warnings we could remove Zygote for now and aim to fix in #339 (and then turn the benchmarks back on).