derivative of log(det(A)) wrt x, where A is matrix that depends on x

746 Views Asked by At

I have two large sparse matrices B and C, and I need to calculate

$\frac{\rm{d}}{\rm{d}(\log({\lambda}) }\log( \det(B+\lambda C))$.

Because B and C are very large I can't directly evaluate the determinant.

The paper I'm following implies that the above is equivalent to :

$\rm{trace}((B+\lambda C)^{-1}C)$.

Although I don't know how the authors got to it and the expression isn't much help, since calculating the inverse is also prohibitively expensive.

My question is: Are there any identities that can make either of these calculations computationally tractable, given B and C are large and sparse?

1

There are 1 best solutions below

0
On BEST ANSWER

I've now solved this problem using Cholesky decomposition.

Using the identity:

$\log(\det(A)) = 2 \sum_i \log(F_{ii})$,

where F is the Cholesky root of A.

I've then done the differentiation numerically, by computing $\log(\det(A))$ for two slightly different values of $\lambda$. It turns out that Cholesky decomposition is possible and very fast for my sparse matrices.