Flux.jl/src/Tracker/lib.jl

11 lines
308 B
Julia
Raw Normal View History

2017-08-19 09:14:50 +00:00
import Base: *
a::MatrixVar * b::Union{MatrixVar,AbstractMatrix} = Var(Call(*, a, b))
a::Union{MatrixVar,AbstractMatrix} * b::MatrixVar = Var(Call(*, a, b))
function back!(::typeof(*), Δ, a::AbstractArray, b::AbstractArray)
back!(a, A_mul_Bt(Δ, data(b)))
back!(b, At_mul_B(data(a), Δ))
return
end