From f790fff59ae5230eda2bd1fc081fdbb5b723bbe4 Mon Sep 17 00:00:00 2001 From: Ivan Yashchuk Date: Tue, 5 Feb 2019 14:36:28 +0200 Subject: [PATCH] Use other definition for grad(det(A)). --- src/tracker/lib/array.jl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/tracker/lib/array.jl b/src/tracker/lib/array.jl index 023f5fa2..e8239aad 100644 --- a/src/tracker/lib/array.jl +++ b/src/tracker/lib/array.jl @@ -125,7 +125,7 @@ Base.adjoint(xs::TrackedArray) = track(adjoint, xs) @grad adjoint(xs) = data(xs)', Δ -> (trim(xs, Δ'),) det(xs::TrackedArray) = track(det, xs) -@grad det(xs) = det(data(xs)), Δ -> (Δ * transpose(adjoint(xs)),) +@grad det(xs) = det(data(xs)), Δ -> (Δ * det(xs) * transpose(inv(xs)),) Base.repeat(xs::TrackedArray; kw...) = track(repeat, xs; kw...)