ChainRules.jl
ChainRules.jl copied to clipboard
forward and reverse mode automatic differentiation primitives for Julia Base + StdLibs
Based on discussion at https://github.com/google/jax/issues/669#issuecomment-800805598, this PR implements a simple fix for matrices with exactly repeating eigenvalues (which are rare). The PR still needs tests. While it's not too hard...
Trying this out to see if it makes it easier to distinguish the different jobs
Closes https://github.com/FluxML/Zygote.jl/issues/837 Also needed to add a special case for not inplacing as one is broken ttps://github.com/JuliaLang/julia/issues/38772 Also the CoVector one deems to not work. But I ran into issues....
Implement the pullback for the QR decomposition, following: Walter and Lehmann, 2018, Algorithmic Differentiation of Linear Algebra Functions with Application in Optimum Experimental Design
Closes JuliaLang/julia#250 Its pretty cute I am not 100% sure this is correct, but CI will tell me Also stops thunking `∂B` since we want to use that for `∂A`...
This is split off ove #240 @willtebbutt said here https://github.com/JuliaDiff/ChainRules.jl/pull/240#issuecomment-710493909 > This broadly LGTM. It would be good to add some tests involving arrays with an element type that's not...
Many scalar rules defined on arguments of `Number` type assume the scalar commutes under multiplication, which fails for non-commutative numbers like quaternions. This PR restricts the type of such rules...
This matches to https://github.com/FluxML/Zygote.jl/pull/794 Fixing this in chainrules won't actually fix it in Zygote becuase Zygote defines `sum(::AbstractArray)` with a better definition than what ChainRules has right now, that will...
This PR implements the rrule for eigen decomposition following the paper referenced in #144. I have tested the implementation locally, but have yet to write tests for this PR as...
It appears there are adjoint rules for `FFT` in Zygote here: https://github.com/FluxML/Zygote.jl/pull/215