22
$\begingroup$

How to calculate the gradient with respect to $X$ of: $$ \log \mathrm{det}\, X^{-1} $$ here $X$ is a positive definite matrix, and det is the determinant of a matrix.

How to calculate this? Or what's the result? Thanks!

$\endgroup$
  • 2
    $\begingroup$ Note that $\log\det\mathbf X^{-1}=\log\frac1{\det\mathbf X}=-\log\det\mathbf X$... $\endgroup$ – J. M. is a poor mathematician May 12 '11 at 14:48
  • 4
    $\begingroup$ And note that $\log \det X =\text{tr} \log X$... $\endgroup$ – Fabian May 12 '11 at 14:50
  • $\begingroup$ Somehow I wonder if what you actually need is the Gâteaux or the Fréchet derivative... where did you encounter this, and what are you actually doing? $\endgroup$ – J. M. is a poor mathematician May 12 '11 at 15:00
  • $\begingroup$ I encounter this when deriving a lower bound of D-optimal experimental design using dual theory (an exercise of Convex Optimization). I want to find the optimal of a function which involves $\log\mathrm{det}\,(X^{-1})$. $\endgroup$ – pluskid May 12 '11 at 15:25
  • $\begingroup$ A closely related question and answer, worth a cross-reference: How to calculate the derivative of log det matrix? but the question is framed in the context of Matrix Calculus $\endgroup$ – Sohail Si Oct 30 '17 at 15:14
32
$\begingroup$

I assume that you are asking for the derivative with respect to the elements of the matrix. In this cases first notice that

$$\log \det X^{-1} = \log (\det X)^{-1} = -\log \det X$$

and thus

$$\frac{\partial}{\partial X_{ij}} \log \det X^{-1} = -\frac{\partial}{\partial X_{ij}} \log \det X = - \frac{1}{\det X} \frac{\partial \det X}{\partial X_{ij}} = - \frac{1}{\det X} \mathrm{adj}(X)_{ji} = - (X^{-1})_{ji}$$

since $\mathrm{adj}(X) = \det(X) X^{-1}$ for invertible matrices (where $\mathrm{adj}(X)$ is the adjugate of $X$, see http://en.wikipedia.org/wiki/Adjugate).

$\endgroup$
  • $\begingroup$ Thank you very much! This solved my problem! $\endgroup$ – pluskid May 12 '11 at 15:26
  • 1
    $\begingroup$ The $\frac{\partial \det X}{\partial X_{ij}} = \mathrm{adj}(X)_{ji}$ was very non-obvious to me, but can be worked out using the Jacobi formula. $\endgroup$ – ntc2 Jan 5 '17 at 3:58
9
$\begingroup$

Or you can check section A.4.1 of the book Stephen Boyd, Lieven Vandenberghe, Convex Optimization for an alternative solution, where they compute the gradient without using the adjugate.

$\endgroup$
6
$\begingroup$

The simplest is probably to observe that $$-\log\det (X+tH) = -\log\det X -\log\det(I+tX^{-1}H) \\= -\log\det X - t \textrm{Tr}(X^{-1}H) + o(t),$$

where is used the "obvious" fact that $\det(I+A) = 1+\textrm{Tr}(A)+o(|A|)$ (all the other terms are quadratic expressions of the coefficients of $A$).

Notice that $\textrm{Tr}(X^{-1}H)=(X^{-T},H)$ in the Frobenius scalar product, hence $\nabla [-\log\det(X)] = -X^{-T}$ in this scalar product. (This gives another proof that $\nabla\det (X) = cof(X)$.)

Of course if $X$ is symmetric positive definite then $-X^{-1}$ is also a valid expression. Moreover, one has in this case, for $X,Y$ positive definite, $(-X^{-1}+Y^{-1},X-Y)\ge 0$.

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.