Michael Abbott

Results 1143 comments of Michael Abbott

Broadcasting with complex numbers has never worked on the GPU, sadly, this hasn't changed. It should be an error but isn't. It could certainly be made to work, but someone...

The problem is that `Zygote.forwarddiff(f, x)` only tracks the effect of `x`, not `f` or any parameters closed over by it, such as `a` here. And this is what's called...

> Can functors help I don't think so, it's worse than that. If ReverseDiff-over-ForwardDiff does work, then how it works might have clues to making Zygote-over-ForwardDiff work. > but in...

The gradient of broadcasting used for CuArrays doesn't handle complex numbers. It's a bit of a nasty surprise but nobody has got around to making it at least an error,...

The error for `Zygote.hessian` looks like it's from broadcasting. Zygote's broadcasting for CuArrays has always used dual numbers... but adding a second layer of them via `hessian` gives the error...

The low-tech way to implement this is to turn it into broadcasting, as is currently done for `sum(::Function, ::CuArray)` here: https://github.com/FluxML/Zygote.jl/blob/master/src/lib/broadcast.jl#L280-L283

Looks like the bug is in the gradient of `filter`, array.jl:264, which after #785 is what `Iterators.filter` (which is what the conditional comprehension really is) calls to do the work....

These are I think independent problems with comprehensions. Typed comprehensions go their own path and don't seem to work at all: ```julia julia> gradient(xs -> sum([x^2 for x in xs]),...

In principle, yes. In reality, less reliably than first derivatives. Can you post the stack trace?

For some reason it's tripping over the non-const global `b`. If you avoid that (which you probably should anyway -- which may be why nobody saw the bug) then it...