the matrix cookbook - cornell university · the matrix cookbook kaare brandt petersen michael...
TRANSCRIPT
The Matrix Cookbook
Kaare Brandt PetersenMichael Syskind Pedersen
Version: February 16, 2006
What is this? These pages are a collection of facts (identities, approxima-tions, inequalities, relations, ...) about matrices and matters relating to them.It is collected in this form for the convenience of anyone who wants a quickdesktop reference .
Disclaimer: The identities, approximations and relations presented here wereobviously not invented but collected, borrowed and copied from a large amountof sources. These sources include similar but shorter notes found on the internetand appendices in books - see the references for a full list.
Errors: Very likely there are errors, typos, and mistakes for which we apolo-gize and would be grateful to receive corrections at [email protected].
Its ongoing: The project of keeping a large repository of relations involvingmatrices is naturally ongoing and the version will be apparent from the date inthe header.
Suggestions: Your suggestion for additional content or elaboration of sometopics is most welcome at [email protected].
Keywords: Matrix algebra, matrix relations, matrix identities, derivative ofdeterminant, derivative of inverse matrix, differentiate a matrix.
Acknowledgements: We would like to thank the following for contribu-tions and suggestions: Christian Rishøj, Douglas L. Theobald, Esben Hoegh-Rasmussen, Lars Christiansen, and Vasile Sima. We would also like thank TheOticon Foundation for funding our PhD studies.
1
CONTENTS CONTENTS
Contents
1 Basics 51.1 Trace and Determinants . . . . . . . . . . . . . . . . . . . . . . . 51.2 The Special Case 2x2 . . . . . . . . . . . . . . . . . . . . . . . . . 5
2 Derivatives 72.1 Derivatives of a Determinant . . . . . . . . . . . . . . . . . . . . 72.2 Derivatives of an Inverse . . . . . . . . . . . . . . . . . . . . . . . 82.3 Derivatives of Matrices, Vectors and Scalar Forms . . . . . . . . 92.4 Derivatives of Traces . . . . . . . . . . . . . . . . . . . . . . . . . 112.5 Derivatives of Structured Matrices . . . . . . . . . . . . . . . . . 12
3 Inverses 153.1 Basic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153.2 Exact Relations . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163.3 Implication on Inverses . . . . . . . . . . . . . . . . . . . . . . . . 173.4 Approximations . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173.5 Generalized Inverse . . . . . . . . . . . . . . . . . . . . . . . . . . 173.6 Pseudo Inverse . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
4 Complex Matrices 194.1 Complex Derivatives . . . . . . . . . . . . . . . . . . . . . . . . . 19
5 Decompositions 225.1 Eigenvalues and Eigenvectors . . . . . . . . . . . . . . . . . . . . 225.2 Singular Value Decomposition . . . . . . . . . . . . . . . . . . . . 225.3 Triangular Decomposition . . . . . . . . . . . . . . . . . . . . . . 24
6 Statistics and Probability 256.1 Definition of Moments . . . . . . . . . . . . . . . . . . . . . . . . 256.2 Expectation of Linear Combinations . . . . . . . . . . . . . . . . 266.3 Weighted Scalar Variable . . . . . . . . . . . . . . . . . . . . . . 27
7 Gaussians 287.1 Basics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 287.2 Moments . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 307.3 Miscellaneous . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 327.4 Mixture of Gaussians . . . . . . . . . . . . . . . . . . . . . . . . . 33
8 Special Matrices 348.1 Units, Permutation and Shift . . . . . . . . . . . . . . . . . . . . 348.2 The Singleentry Matrix . . . . . . . . . . . . . . . . . . . . . . . 358.3 Symmetric and Antisymmetric . . . . . . . . . . . . . . . . . . . 378.4 Vandermonde Matrices . . . . . . . . . . . . . . . . . . . . . . . . 378.5 Toeplitz Matrices . . . . . . . . . . . . . . . . . . . . . . . . . . . 388.6 The DFT Matrix . . . . . . . . . . . . . . . . . . . . . . . . . . . 39
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2006, Page 2
CONTENTS CONTENTS
8.7 Positive Definite and Semi-definite Matrices . . . . . . . . . . . . 408.8 Block matrices . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
9 Functions and Operators 439.1 Functions and Series . . . . . . . . . . . . . . . . . . . . . . . . . 439.2 Kronecker and Vec Operator . . . . . . . . . . . . . . . . . . . . 449.3 Solutions to Systems of Equations . . . . . . . . . . . . . . . . . 459.4 Matrix Norms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 479.5 Rank . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 489.6 Integral Involving Dirac Delta Functions . . . . . . . . . . . . . . 489.7 Miscellaneous . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49
A One-dimensional Results 50A.1 Gaussian . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50A.2 One Dimensional Mixture of Gaussians . . . . . . . . . . . . . . . 51
B Proofs and Details 53B.1 Misc Proofs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2006, Page 3
CONTENTS CONTENTS
Notation and Nomenclature
A MatrixAij Matrix indexed for some purposeAi Matrix indexed for some purposeAij Matrix indexed for some purposeAn Matrix indexed for some purpose or
The n.th power of a square matrixA−1 The inverse matrix of the matrix AA+ The pseudo inverse matrix of the matrix A (see Sec. 3.6)A1/2 The square root of a matrix (if unique), not elementwise(A)ij The (i, j).th entry of the matrix AAij The (i, j).th entry of the matrix A
[A]ij The ij-submatrix, i.e. A with i.th row and j.th column deleteda Vectorai Vector indexed for some purposeai The i.th element of the vector aa Scalar
<z Real part of a scalar<z Real part of a vector<Z Real part of a matrix=z Imaginary part of a scalar=z Imaginary part of a vector=Z Imaginary part of a matrix
det(A) Determinant of ATr(A) Trace of the matrix A
diag(A) Diagonal matrix of the matrix A, i.e. (diag(A))ij = δijAijvec(A) The vector-version of the matrix A (see Sec. 9.2.2)||A|| Matrix norm (subscript if any denotes what norm)AT Transposed matrixA∗ Complex conjugated matrixAH Transposed and complex conjugated matrix (Hermitian)
A ◦B Hadamard (elementwise) productA⊗B Kronecker product
0 The null matrix. Zero in all entries.I The identity matrix
Jij The single-entry matrix, 1 at (i, j) and zero elsewhereΣ A positive definite matrixΛ A diagonal matrix
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2006, Page 4
1 BASICS
1 Basics
(AB)−1 = B−1A−1
(ABC...)−1 = ...C−1B−1A−1
(AT )−1 = (A−1)T
(A + B)T = AT + BT
(AB)T = BTAT
(ABC...)T = ...CTBTAT
(AH)−1 = (A−1)H
(A + B)H = AH + BH
(AB)H = BHAH
(ABC...)H = ...CHBHAH
1.1 Trace and Determinants
Tr(A) =∑iAii
Tr(A) =∑iλi, λi = eig(A)
Tr(A) = Tr(AT )Tr(AB) = Tr(BA)
Tr(A + B) = Tr(A) + Tr(B)Tr(ABC) = Tr(BCA) = Tr(CAB)
det(A) =∏iλi λi = eig(A)
det(AB) = det(A) det(B)det(A−1) = 1/det(A)
det(I + uvT ) = 1 + uTv
1.2 The Special Case 2x2
Consider the matrix A
A =[A11 A12
A21 A22
]
Determinant and trace
det(A) = A11A22 −A12A21
Tr(A) = A11 +A22
Eigenvaluesλ2 − λ · Tr(A) + det(A) = 0
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2006, Page 5
1.2 The Special Case 2x2 1 BASICS
λ1 =Tr(A) +
√Tr(A)2 − 4 det(A)
2λ2 =
Tr(A)−√
Tr(A)2 − 4 det(A)2
λ1 + λ2 = Tr(A) λ1λ2 = det(A)
Eigenvectors
v1 ∝[
A12
λ1 −A11
]v2 ∝
[A12
λ2 −A11
]
Inverse
A−1 =1
det(A)
[A22 −A12
−A21 A11
]
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2006, Page 6
2 DERIVATIVES
2 Derivatives
This section is covering differentiation of a number of expressions with respect toa matrix X. Note that it is always assumed that X has no special structure, i.e.that the elements of X are independent (e.g. not symmetric, Toeplitz, positivedefinite). See section 2.5 for differentiation of structured matrices. The basicassumptions can be written in a formula as
∂Xkl
∂Xij= δikδlj
that is for e.g. vector forms,[∂x∂y
]
i
=∂xi∂y
[∂x
∂y
]
i
=∂x
∂yi
[∂x∂y
]
ij
=∂xi∂yj
The following rules are general and very useful when deriving the differential ofan expression ([13]):
∂A = 0 (A is a constant) (1)∂(αX) = α∂X (2)
∂(X + Y) = ∂X + ∂Y (3)∂(Tr(X)) = Tr(∂X) (4)∂(XY) = (∂X)Y + X(∂Y) (5)
∂(X ◦Y) = (∂X) ◦Y + X ◦ (∂Y) (6)∂(X⊗Y) = (∂X)⊗Y + X⊗ (∂Y) (7)∂(X−1) = −X−1(∂X)X−1 (8)
∂(det(X)) = det(X)Tr(X−1∂X) (9)∂(ln(det(X))) = Tr(X−1∂X) (10)
∂XT = (∂X)T (11)∂XH = (∂X)H (12)
2.1 Derivatives of a Determinant
2.1.1 General form
∂ det(Y)∂x
= det(Y)Tr[Y−1 ∂Y
∂x
]
2.1.2 Linear forms
∂ det(X)∂X
= det(X)(X−1)T
∂ det(AXB)∂X
= det(AXB)(X−1)T = det(AXB)(XT )−1
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2006, Page 7
2.2 Derivatives of an Inverse 2 DERIVATIVES
2.1.3 Square forms
If X is square and invertible, then
∂ det(XTAX)∂X
= 2 det(XTAX)X−T
If X is not square but A is symmetric, then
∂ det(XTAX)∂X
= 2 det(XTAX)AX(XTAX)−1
If X is not square and A is not symmetric, then
∂ det(XTAX)∂X
= det(XTAX)(AX(XTAX)−1 + ATX(XTATX)−1) (13)
2.1.4 Other nonlinear forms
Some special cases are (See [8, 7])
∂ ln det(XTX)|∂X
= 2(X+)T
∂ ln det(XTX)∂X+
= −2XT
∂ ln | det(X)|∂X
= (X−1)T = (XT )−1
∂ det(Xk)∂X
= k det(Xk)X−T
2.2 Derivatives of an Inverse
From [19] we have the basic identity
∂Y−1
∂x= −Y−1 ∂Y
∂xY−1
from which it follows
∂(X−1)kl∂Xij
= −(X−1)ki(X−1)jl
∂aTX−1b∂X
= −X−TabTX−T
∂ det(X−1)∂X
= −det(X−1)(X−1)T
∂Tr(AX−1B)∂X
= −(X−1BAX−1)T
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2006, Page 8
2.3 Derivatives of Matrices, Vectors and Scalar Forms 2 DERIVATIVES
2.3 Derivatives of Matrices, Vectors and Scalar Forms
2.3.1 First Order
∂xTa∂x
=∂aTx∂x
= a
∂aTXb∂X
= abT
∂aTXTb∂X
= baT
∂aTXa∂X
=∂aTXTa∂X
= aaT
∂X∂Xij
= Jij
∂(XA)ij∂Xmn
= δim(A)nj = (JmnA)ij
∂(XTA)ij∂Xmn
= δin(A)mj = (JnmA)ij
2.3.2 Second Order
∂
∂Xij
∑
klmn
XklXmn = 2∑
kl
Xkl
∂bTXTXc∂X
= X(bcT + cbT )
∂(Bx + b)TC(Dx + d)∂x
= BTC(Dx + d) + DTCT (Bx + b)
∂(XTBX)kl∂Xij
= δlj(XTB)ki + δkj(BX)il
∂(XTBX)∂Xij
= XTBJij + JjiBX (Jij)kl = δikδjl
See Sec 8.2 for useful properties of the Single-entry matrix Jij
∂xTBx∂x
= (B + BT )x
∂bTXTDXc∂X
= DTXbcT + DXcbT
∂
∂X(Xb + c)TD(Xb + c) = (D + DT )(Xb + c)bT
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2006, Page 9
2.3 Derivatives of Matrices, Vectors and Scalar Forms 2 DERIVATIVES
Assume W is symmetric, then
∂
∂s(x−As)TW(x−As) = −2ATW(x−As)
∂
∂s(x− s)TW(x− s) = −2W(x− s)
∂
∂x(x−As)TW(x−As) = 2W(x−As)
∂
∂A(x−As)TW(x−As) = −2W(x−As)sT
2.3.3 Higher order and non-linear
∂
∂XaTXnb =
n−1∑r=0
(Xr)TabT (Xn−1−r)T (14)
∂
∂XaT (Xn)TXnb =
n−1∑r=0
[Xn−1−rabT (Xn)TXr
+(Xr)TXnabT (Xn−1−r)T]
(15)
See B.1.1 for a proof.Assume s and r are functions of x, i.e. s = s(x), r = r(x), and that A is aconstant, then
∂
∂xsTAr =
[∂s∂x
]TAr + sTA
[∂r∂x
]
2.3.4 Gradient and Hessian
Using the above we have for the gradient and the hessian
f = xTAx + bTx
∇xf =∂f
∂x= (A + AT )x + b
∂2f
∂x∂xT= A + AT
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2006, Page 10
2.4 Derivatives of Traces 2 DERIVATIVES
2.4 Derivatives of Traces
2.4.1 First Order
∂
∂XTr(X) = I
∂
∂XTr(XA) = AT (16)
∂
∂XTr(AXB) = ATBT
∂
∂XTr(AXTB) = BA
∂
∂XTr(XTA) = A
∂
∂XTr(AXT ) = A
2.4.2 Second Order
∂
∂XTr(X2) = 2XT
∂
∂XTr(X2B) = (XB + BX)T
∂
∂XTr(XTBX) = BX + BTX
∂
∂XTr(XBXT ) = XBT + XB
∂
∂XTr(AXBX) = ATXTBT + BTXTAT
∂
∂XTr(XTX) = 2X
∂
∂XTr(BXXT ) = (B + BT )X
∂
∂XTr(BTXTCXB) = CTXBBT + CXBBT
∂
∂XTr[XTBXC
]= BXC + BTXCT
∂
∂XTr(AXBXTC) = ATCTXBT + CAXB
∂
∂XTr[(AXb + c)(AXb + c)T
]= 2AT (AXb + c)bT
See [7].
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2006, Page 11
2.5 Derivatives of Structured Matrices 2 DERIVATIVES
2.4.3 Higher Order
∂
∂XTr(Xk) = k(Xk−1)T
∂
∂XTr(AXk) =
k−1∑r=0
(XrAXk−r−1)T
∂∂XTr
[BTXTCXXTCXB
]= CXXTCXBBT
+CTXBBTXTCTX
+CXBBTXTCX
+CTXXTCTXBBT
2.4.4 Other
∂
∂XTr(AX−1B) = −(X−1BAX−1)T = −X−TATBTX−T
Assume B and C to be symmetric, then
∂
∂XTr[(XTCX)−1A
]= −(CX(XTCX)−1)(A + AT )(XTCX)−1
∂
∂XTr[(XTCX)−1(XTBX)
]= −2CX(XTCX)−1XTBX(XTCX)−1
+2BX(XTCX)−1
See [7].
2.5 Derivatives of Structured Matrices
Assume that the matrix A has some structure, i.e. symmetric, toeplitz, etc.In that case the derivatives of the previous section does not apply in general.Instead, consider the following general rule for differentiating a scalar functionf(A)
df
dAij=∑
kl
∂f
∂Akl
∂Akl∂Aij
= Tr
[[∂f
∂A
]T∂A∂Aij
]
The matrix differentiated with respect to itself is in this document referred toas the structure matrix of A and is defined simply by
∂A∂Aij
= Sij
If A has no special structure we have simply Sij = Jij , that is, the structurematrix is simply the singleentry matrix. Many structures have a representationin singleentry matrices, see Sec. 8.2.6 for more examples of structure matrices.
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2006, Page 12
2.5 Derivatives of Structured Matrices 2 DERIVATIVES
2.5.1 The Chain Rule
Sometimes the objective is to find the derivative of a matrix which is a functionof another matrix. Let U = f(X), the goal is to find the derivative of thefunction g(U) with respect to X:
∂g(U)∂X
=∂g(f(X))
∂X(17)
Then the Chain Rule can then be written the following way:
∂g(U)∂X
=∂g(U)∂xij
=M∑
k=1
N∑
l=1
∂g(U)∂ukl
∂ukl∂xij
(18)
Using matrix notation, this can be written as:
∂g(U)∂Xij
= Tr[(∂g(U)∂U
)T∂U∂Xij
]. (19)
2.5.2 Symmetric
If A is symmetric, then Sij = Jij + Jji − JijJij and therefore
df
dA=[∂f
∂A
]+[∂f
∂A
]T− diag
[∂f
∂A
]
That is, e.g., ([5], [20]):
∂Tr(AX)∂X
= A + AT − (A ◦ I), see (23) (20)
∂ det(X)∂X
= det(X)(2X−1 − (X−1 ◦ I)) (21)
∂ ln det(X)∂X
= 2X−1 − (X−1 ◦ I) (22)
2.5.3 Diagonal
If X is diagonal, then ([13]):
∂Tr(AX)∂X
= A ◦ I (23)
2.5.4 Toeplitz
Like symmetric matrices and diagonal matrices also Toeplitz matrices has aspecial structure which should be taken into account when the derivative withrespect to a matrix with Toeplitz structure.
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2006, Page 13
2.5 Derivatives of Structured Matrices 2 DERIVATIVES
∂Tr(AT)∂T
(24)
=∂Tr(TA)∂T
=
Tr(A) Tr([AT ]n1) Tr([[AT ]1n]n−1,2) · · · An1
Tr([AT ]1n)) Tr(A). . .
. . ....
Tr([[AT ]1n]2,n−1). . .
. . .. . . Tr([[AT ]1n]n−1,2)
.
.
.. . .
. . .. . . Tr([AT ]n1)
A1n · · · Tr([[AT ]1n]2,n−1) Tr([AT ]1n)) Tr(A)
≡ α(A)
As it can be seen, the derivative α(A) also has a Toeplitz structure. Each valuein the diagonal is the sum of all the diagonal valued in A, the values in thediagonals next to the main diagonal equal the sum of the diagonal next to themain diagonal in AT . This result is only valid for the unconstrained Toeplitzmatrix. If the Toeplitz matrix also is symmetric, the same derivative yields
∂Tr(AT)∂T
=∂Tr(TA)∂T
= α(A) +α(A)T −α(A) ◦ I (25)
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2006, Page 14
3 INVERSES
3 Inverses
3.1 Basic
3.1.1 Definition
The inverse A−1 of a matrix A ∈ Cn×n is defined such that
AA−1 = A−1A = I, (26)
where I is the n×n identity matrix. If A−1 exists, A is said to be nonsingular.Otherwise, A is said to be singular (see e.g. [9]).
3.1.2 Cofactors and Adjoint
The submatrix of a matrix A, denoted by [A]ij is a (n − 1) × (n − 1) matrixobtained by deleting the ith row and the jth column of A. The (i, j) cofactorof a matrix is defined as
cof(A, i, j) = (−1)i+j det([A]ij), (27)
The matrix of cofactors can be created from the cofactors
cof(A) =
cof(A, 1, 1) · · · cof(A, 1, n)
... cof(A, i, j)...
cof(A, n, 1) · · · cof(A, n, n)
(28)
The adjoint matrix is the transpose of the cofactor matrix
adj(A) = (cof(A))T , (29)
3.1.3 Determinant
The determinant of a matrix A ∈ Cn×n is defined as (see [9])
det(A) =n∑
j=1
(−1)j+1A1j det ([A]1j)
=n∑
j=1
A1jcof(A, 1, j). (30)
3.1.4 Construction
The inverse matrix can be constructed, using the adjoint matrix, by
A−1 =1
det(A)· adj(A) (31)
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2006, Page 15
3.2 Exact Relations 3 INVERSES
3.1.5 Condition number
The condition number of a matrix c(A) is the ratio between the largest and thesmallest singular value of a matrix (see Section 5.2 on singular values),
c(A) =d+
d−
The condition number can be used to measure how singular a matrix is. If thecondition number is large, it indicates that the matrix is nearly singular. Thecondition number can also be estimated from the matrix norms. Here
c(A) = ‖A‖ · ‖A−1‖, (32)
where ‖ · ‖ is a norm such as e.g the 1-norm, the 2-norm, the ∞-norm or theFrobenius norm (see Sec 9.4 for more on matrix norms).
3.2 Exact Relations
3.2.1 The Woodbury identity
(A + CBCT )−1 = A−1 −A−1C(B−1 + CTA−1C)−1CTA−1
If P,R are positive definite, then (see [22])
(P−1 + BTR−1B)−1BTR−1 = PBT (BPBT + R)−1
3.2.2 The Kailath Variant
(A + BC)−1 = A−1 −A−1B(I + CA−1B)−1CA−1
See [4] page 153.
3.2.3 The Searle Set of Identities
The following set of identities, can be found in [17], page 151,
(I + A−1)−1 = A(A + I)−1
(A + BBT )−1B = A−1B(I + BTA−1B)−1
(A−1 + B−1)−1 = A(A + B)−1B = B(A + B)−1A
A−A(A + B)−1A = B−B(A + B)−1B
A−1 + B−1 = A−1(A + B)B−1
(I + AB)−1 = I−A(I + BA)−1B
(I + AB)−1A = A(I + BA)−1
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2006, Page 16
3.3 Implication on Inverses 3 INVERSES
3.3 Implication on Inverses
(A + B)−1 = A−1 + B−1 ⇒ AB−1A = BA−1B
See [17].
3.3.1 A PosDef identity
Assume P,R to be positive definite and invertible, then
(P−1 + BTR−1B)−1BTR−1 = PBT (BPBT + R)−1
See [22].
3.4 Approximations
(I + A)−1 = I−A + A2 −A3 + ...
A−A(I + A)−1A ∼= I−A−1 if A large and symmetric
If σ2 is small then
(Q + σ2M)−1 ∼= Q−1 − σ2Q−1MQ−1
3.5 Generalized Inverse
3.5.1 Definition
A generalized inverse matrix of the matrix A is any matrix A− such that (see[18])
AA−A = A
The matrix A− is not unique.
3.6 Pseudo Inverse
3.6.1 Definition
The pseudo inverse (or Moore-Penrose inverse) of a matrix A is the matrix A+
that fulfils
I AA+A = A
II A+AA+ = A+
III AA+ symmetricIV A+A symmetric
The matrix A+ is unique and does always exist.
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2006, Page 17
3.6 Pseudo Inverse 3 INVERSES
3.6.2 Properties
Assume A+ to be the pseudo-inverse of A, then (See [3])
(A+)+ = A
(AT )+ = (A+)T
(cA)+ = (1/c)A+
(ATA)+ = A+(AT )+
(AAT )+ = (AT )+A+
Assume A to have full rank, then
(AA+)(AA+) = AA+
(A+A)(A+A) = A+A
Tr(AA+) = rank(AA+) (See [18])Tr(A+A) = rank(A+A) (See [18])
3.6.3 Construction
Assume that A has full rank, then
A n× n Square rank(A) = n ⇒ A+ = A−1
A n×m Broad rank(A) = n ⇒ A+ = AT (AAT )−1
A n×m Tall rank(A) = m ⇒ A+ = (ATA)−1AT
Assume A does not have full rank, i.e. A is n×m and rank(A) = r < min(n,m).The pseudo inverse A+ can be constructed from the singular value decomposi-tion A = UDVT , by
A+ = VD+UT
A different way is this: There does always exists two matrices C n × r and Dr ×m of rank r, such that A = CD. Using these matrices it holds that
A+ = DT (DDT )−1(CTC)−1CT
See [3].
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2006, Page 18
4 COMPLEX MATRICES
4 Complex Matrices
4.1 Complex Derivatives
In order to differentiate an expression f(z) with respect to a complex z, theCauchy-Riemann equations have to be satisfied ([7]):
df(z)dz
=∂<(f(z))∂<z + i
∂=(f(z))∂<z (33)
anddf(z)dz
= −i∂<(f(z))∂=z +
∂=(f(z))∂=z (34)
or in a more compact form:
∂f(z)∂=z = i
∂f(z)∂<z . (35)
A complex function that satisfies the Cauchy-Riemann equations for points in aregion R is said yo be analytic in this region R. In general, expressions involvingcomplex conjugate or conjugate transpose do not satisfy the Cauchy-Riemannequations. In order to avoid this problem, a more generalized definition ofcomplex derivative is used ([16], [6]):
• Generalized Complex Derivative:
df(z)dz
=12
(∂f(z)∂<z − i
∂f(z)∂=z
). (36)
• Conjugate Complex Derivative
df(z)dz∗
=12
(∂f(z)∂<z + i
∂f(z)∂=z
). (37)
The Generalized Complex Derivative equals the normal derivative, when f is ananalytic function. For a non-analytic function such as f(z) = z∗, the derivativeequals zero. The Conjugate Complex Derivative equals zero, when f is ananalytic function. The Conjugate Complex Derivative has e.g been used by [14]when deriving a complex gradient.Notice:
df(z)dz
6= ∂f(z)∂<z + i
∂f(z)∂=z . (38)
• Complex Gradient Vector: If f is a real function of a complex vector z,then the complex gradient vector is given by ([11, p. 798])
∇f(z) = 2df(z)dz∗
(39)
=∂f(z)∂<z
+ i∂f(z)∂=z
.
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2006, Page 19
4.1 Complex Derivatives 4 COMPLEX MATRICES
• Complex Gradient Matrix: If f is a real function of a complex matrix Z,then the complex gradient matrix is given by ([2])
∇f(Z) = 2df(Z)dZ∗
(40)
=∂f(Z)∂<Z
+ i∂f(Z)∂=Z
.
These expressions can be used for gradient descent algorithms.
4.1.1 The Chain Rule for complex numbers
The chain rule is a little more complicated when the function of a complexu = f(x) is non-analytic. For a non-analytic function, the following chain rulecan be applied ([7])
∂g(u)∂x
=∂g
∂u
∂u
∂x+
∂g
∂u∗∂u∗
∂x(41)
=∂g
∂u
∂u
∂x+(∂g∗∂u
)∗ ∂u∗∂x
Notice, if the function is analytic, the second term reduces to zero, and the func-tion is reduced to the normal well-known chain rule. For the matrix derivativeof a scalar function g(U), the chain rule can be written the following way:
∂g(U)∂X
=Tr((∂g(U)
∂U )T∂U)∂X
+Tr((∂g(U)
∂U∗ )T∂U∗)∂X
. (42)
4.1.2 Complex Derivatives of Traces
If the derivatives involve complex numbers, the conjugate transpose is often in-volved. The most useful way to show complex derivative is to show the derivativewith respect to the real and the imaginary part separately. An easy example is:
∂Tr(X∗)∂<X
=∂Tr(XH)∂<X
= I (43)
i∂Tr(X∗)∂=X
= i∂Tr(XH)∂=X
= I (44)
Since the two results have the same sign, the conjugate complex derivative (37)should be used.
∂Tr(X)∂<X
=∂Tr(XT )∂<X
= I (45)
i∂Tr(X)∂=X
= i∂Tr(XT )∂=X
= −I (46)
Here, the two results have different signs, the generalized complex derivative(36) should be used. Hereby, it can be seen that (16) holds even if X is a
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2006, Page 20
4.1 Complex Derivatives 4 COMPLEX MATRICES
complex number.
∂Tr(AXH)∂<X
= A (47)
i∂Tr(AXH)
∂=X= A (48)
∂Tr(AX∗)∂<X
= AT (49)
i∂Tr(AX∗)∂=X
= AT (50)
∂Tr(XXH)∂<X
=∂Tr(XHX)
∂<X= 2<X (51)
i∂Tr(XXH)
∂=X= i
∂Tr(XHX)∂=X
= i2=X (52)
By inserting (51) and (52) in (36) and (37), it can be seen that
∂Tr(XXH)∂X
= X∗ (53)
∂Tr(XXH)∂X∗
= X (54)
Since the function Tr(XXH) is a real function of the complex matrix X, thecomplex gradient matrix (40) is given by
∇Tr(XXH) = 2∂Tr(XXH)
∂X∗= 2X (55)
4.1.3 Complex Derivative Involving Determinants
Here, a calculation example is provided. The objective is to find the derivativeof det(XHAX) with respect to X ∈ Cm×n. The derivative is found with respectto the real part and the imaginary part of X, by use of (9) and (5), det(XHAX)can be calculated as (see Sec. B.1.2 for details)
∂ det(XHAX)∂X
=12
(∂ det(XHAX)∂<X
− i∂ det(XHAX)∂=X
)
= det(XHAX)((XHAX)−1XHA
)T (56)
and the complex conjugate derivative yields
∂ det(XHAX)∂X∗
=12
(∂ det(XHAX)∂<X
+ i∂ det(XHAX)
∂=X
)
= det(XHAX)AX(XHAX)−1 (57)
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2006, Page 21
5 DECOMPOSITIONS
5 Decompositions
5.1 Eigenvalues and Eigenvectors
5.1.1 Definition
The eigenvectors v and eigenvalues λ are the ones satisfying
Avi = λivi
AV = VD, (D)ij = δijλi
where the columns of V are the vectors vi
5.1.2 General Properties
eig(AB) = eig(BA)A is n×m ⇒ At most min(n,m) distinct λi
rank(A) = r ⇒ At most r non-zero λi
5.1.3 Symmetric
Assume A is symmetric, then
VVT = I (i.e. V is orthogonal)λi ∈ R (i.e. λi is real)
Tr(Ap) =∑iλpi
eig(I + cA) = 1 + cλi
eig(A− cI) = λi − ceig(A−1) = λ−1
i
For a symmetric, positive matrix A,
eig(ATA) = eig(AAT ) = eig(A) ◦ eig(A) (58)
5.2 Singular Value Decomposition
Any n×m matrix A can be written as
A = UDVT
whereU = eigenvectors of AAT n× nD =
√diag(eig(AAT )) n×m
V = eigenvectors of ATA m×m
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2006, Page 22
5.2 Singular Value Decomposition 5 DECOMPOSITIONS
5.2.1 Symmetric Square decomposed into squares
Assume A to be n× n and symmetric. Then[
A]
=[
V] [
D] [
VT]
where D is diagonal with the eigenvalues of A and V is orthogonal and theeigenvectors of A.
5.2.2 Square decomposed into squares
Assume A ∈ Rn×n. Then[
A]
=[
V] [
D] [
UT]
where D is diagonal with the square root of the eigenvalues of AAT , V is theeigenvectors of AAT and UT is the eigenvectors of ATA.
5.2.3 Square decomposed into rectangular
Assume V∗D∗UT∗ = 0 then we can expand the SVD of A into
[A]
=[
V V∗] [ D 0
0 D∗
] [UT
UT∗
]
where the SVD of A is A = VDUT .
5.2.4 Rectangular decomposition I
Assume A is n×m[
A]
=[
V] [
D] [
UT]
where D is diagonal with the square root of the eigenvalues of AAT , V is theeigenvectors of AAT and UT is the eigenvectors of ATA.
5.2.5 Rectangular decomposition II
Assume A is n×m[
A]
=[
V] D
UT
5.2.6 Rectangular decomposition III
Assume A is n×m[
A]
=[
V] [
D] UT
where D is diagonal with the square root of the eigenvalues of AAT , V is theeigenvectors of AAT and UT is the eigenvectors of ATA.
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2006, Page 23
5.3 Triangular Decomposition 5 DECOMPOSITIONS
5.3 Triangular Decomposition
5.3.1 Cholesky-decomposition
Assume A is positive definite, then
A = BTB
where B is a unique upper triangular matrix.
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2006, Page 24
6 STATISTICS AND PROBABILITY
6 Statistics and Probability
6.1 Definition of Moments
Assume x ∈ Rn×1 is a random variable
6.1.1 Mean
The vector of means, m, is defined by
(m)i = 〈xi〉
6.1.2 Covariance
The matrix of covariance M is defined by
(M)ij = 〈(xi − 〈xi〉)(xj − 〈xj〉)〉
or alternatively asM = 〈(x−m)(x−m)T 〉
6.1.3 Third moments
The matrix of third centralized moments – in some contexts referred to ascoskewness – is defined using the notation
m(3)ijk = 〈(xi − 〈xi〉)(xj − 〈xj〉)(xk − 〈xk〉)〉
asM3 =
[m
(3)::1 m
(3)::2 ...m
(3)::n
]
where ’:’ denotes all elements within the given index. M3 can alternatively beexpressed as
M3 = 〈(x−m)(x−m)T ⊗ (x−m)T 〉
6.1.4 Fourth moments
The matrix of fourth centralized moments – in some contexts referred to ascokurtosis – is defined using the notation
m(4)ijkl = 〈(xi − 〈xi〉)(xj − 〈xj〉)(xk − 〈xk〉)(xl − 〈xl〉)〉
asM4 =
[m
(4)::11m
(4)::21...m
(4)::n1|m(4)
::12m(4)::22...m
(4)::n2|...|m(4)
::1nm(4)::2n...m
(4)::nn
]
or alternatively as
M4 = 〈(x−m)(x−m)T ⊗ (x−m)T ⊗ (x−m)T 〉
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2006, Page 25
6.2 Expectation of Linear Combinations6 STATISTICS AND PROBABILITY
6.2 Expectation of Linear Combinations
6.2.1 Linear Forms
Assume X and x to be a matrix and a vector of random variables. Then (seeSee [18])
E[AXB + C] = AE[X]B + C
Var[Ax] = AVar[x]AT
Cov[Ax,By] = ACov[x,y]BT
Assume x to be a stochastic vector with mean m, then (see [7])
E[Ax + b] = Am + b
E[Ax] = Am
E[x + b] = m + b
6.2.2 Quadratic Forms
Assume A is symmetric, c = E[x] and Σ = Var[x]. Assume also that allcoordinates xi are independent, have the same central moments µ1, µ2, µ3, µ4
and denote a = diag(A). Then (See [18])
E[xTAx] = Tr(AΣ) + cTAc
Var[xTAx] = 2µ22Tr(A2) + 4µ2cTA2c + 4µ3cTAa + (µ4 − 3µ2
2)aTa
Also, assume x to be a stochastic vector with mean m, and covariance M. Then(see [7])
E[(Ax + a)(Bx + b)T ] = AMBT + (Am + a)(Bm + b)T
E[xxT ] = M + mmT
E[xaTx] = (M + mmT )aE[xTaxT ] = aT (M + mmT )
E[(Ax)(Ax)T ] = A(M + mmT )AT
E[(x + a)(x + a)T ] = M + (m + a)(m + a)T
E[(Ax + a)T (Bx + b)] = Tr(AMBT ) + (Am + a)T (Bm + b)E[xTx] = Tr(M) + mTm
E[xTAx] = Tr(AM) + mTAm
E[(Ax)T (Ax)] = Tr(AMAT ) + (Am)T (Am)E[(x + a)T (x + a)] = Tr(M) + (m + a)T (m + a)
See [7].
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2006, Page 26
6.3 Weighted Scalar Variable 6 STATISTICS AND PROBABILITY
6.2.3 Cubic Forms
Assume x to be a stochastic vector with independent coordinates, mean m,covariance M and central moments v3 = E[(x−m)3]. Then (see [7])
E[(Ax + a)(Bx + b)T (Cx + c)] = Adiag(BTC)v3
+Tr(BMCT )(Am + a)+AMCT (Bm + b)+(AMBT + (Am + a)(Bm + b)T )(Cm + c)
E[xxTx] = v3 + 2Mm + (Tr(M) + mTm)mE[(Ax + a)(Ax + a)T (Ax + a)] = Adiag(ATA)v3
+[2AMAT + (Ax + a)(Ax + a)T ](Am + a)+Tr(AMAT )(Am + a)
E[(Ax + a)bT (Cx + c)(Dx + d)T ] = (Ax + a)bT (CMDT + (Cm + c)(Dm + d)T )+(AMCT + (Am + a)(Cm + c)T )b(Dm + d)T
+bT (Cm + c)(AMDT − (Am + a)(Dm + d)T )
6.3 Weighted Scalar Variable
Assume x ∈ Rn×1 is a random variable, w ∈ Rn×1 is a vector of constants andy is the linear combination y = wTx. Assume further that m,M2,M3,M4
denotes the mean, covariance, and central third and fourth moment matrix ofthe variable x. Then it holds that
〈y〉 = wTm
〈(y − 〈y〉)2〉 = wTM2w
〈(y − 〈y〉)3〉 = wTM3w ⊗w
〈(y − 〈y〉)4〉 = wTM4w ⊗w ⊗w
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2006, Page 27
7 GAUSSIANS
7 Gaussians
7.1 Basics
7.1.1 Density and normalization
The density of x ∼ N (m,Σ) is
p(x) =1√
det(2πΣ)exp
[−1
2(x−m)TΣ−1(x−m)
]
Note that if x is d-dimensional, then det(2πΣ) = (2π)d det(Σ).Integration and normalization
∫exp
[−1
2(x−m)TΣ−1(x−m)
]dx =
√det(2πΣ)
∫exp
[−1
2xTAx + bTx
]dx =
√det(2πA−1) exp
[12bTA−1b
]
∫exp
[−1
2Tr(STAS) + Tr(BTS)
]dS =
√det(2πA−1) exp
[12
Tr(BTA−1B)]
The derivatives of the density are
∂p(x)∂x
= −p(x)Σ−1(x−m)
∂2p
∂x∂xT= p(x)
(Σ−1(x−m)(x−m)TΣ−1 −Σ−1
)
7.1.2 Marginal Distribution
Assume x ∼ Nx(µ,Σ) where
x =[
xaxb
]µ =
[µaµb
]Σ =
[Σa Σc
ΣTc Σb
]
then
p(xa) = Nxa(µa,Σa)p(xb) = Nxb(µb,Σb)
7.1.3 Conditional Distribution
Assume x ∼ Nx(µ,Σ) where
x =[
xaxb
]µ =
[µaµb
]Σ =
[Σa Σc
ΣTc Σb
]
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2006, Page 28
7.1 Basics 7 GAUSSIANS
then
p(xa|xb) = Nxa(µa, Σa){ µa = µa + ΣcΣ−1
b (xb − µb)Σa = Σa −ΣcΣ−1
b ΣTc
p(xb|xa) = Nxb(µb, Σb){ µb = µb + ΣT
c Σ−1a (xa − µa)
Σb = Σb −ΣTc Σ−1
a Σc
7.1.4 Linear combination
Assume x ∼ N (mx,Σx) and y ∼ N (my,Σy) then
Ax + By + c ∼ N (Amx + Bmy + c,AΣxAT + BΣyBT )
7.1.5 Rearranging Means
NAx[m,Σ] =
√det(2π(ATΣ−1A)−1)√
det(2πΣ)Nx[A−1m, (ATΣ−1A)−1]
7.1.6 Rearranging into squared form
If A is symmetric, then
−12xTAx + bTx = −1
2(x−A−1b)TA(x−A−1b) +
12bTA−1b
−12
Tr(XTAX)+Tr(BTX) = −12
Tr[(X−A−1B)TA(X−A−1B)]+12
Tr(BTA−1B)
7.1.7 Sum of two squared forms
In vector formulation (assuming Σ1,Σ2 are symmetric)
−12
(x−m1)TΣ−11 (x−m1)
−12
(x−m2)TΣ−12 (x−m2)
= −12
(x−mc)TΣ−1c (x−mc) + C
Σ−1c = Σ−1
1 + Σ−12
mc = (Σ−11 + Σ−1
2 )−1(Σ−11 m1 + Σ−1
2 m2)
C =12
(mT1 Σ−1
1 + mT2 Σ−1
2 )(Σ−11 + Σ−1
2 )−1(Σ−11 m1 + Σ−1
2 m2)
−12
(mT
1 Σ−11 m1 + mT
2 Σ−12 m2
)
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2006, Page 29
7.2 Moments 7 GAUSSIANS
In a trace formulation (assuming Σ1,Σ2 are symmetric)
−12
Tr((X−M1)TΣ−11 (X−M1))
−12
Tr((X−M2)TΣ−12 (X−M2))
= −12
Tr[(X−Mc)TΣ−1c (X−Mc)] + C
Σ−1c = Σ−1
1 + Σ−12
Mc = (Σ−11 + Σ−1
2 )−1(Σ−11 M1 + Σ−1
2 M2)
C =12
Tr[(Σ−1
1 M1 + Σ−12 M2)T (Σ−1
1 + Σ−12 )−1(Σ−1
1 M1 + Σ−12 M2)
]
−12
Tr(MT1 Σ−1
1 M1 + MT2 Σ−1
2 M2)
7.1.8 Product of gaussian densities
Let Nx(m,Σ) denote a density of x, then
Nx(m1,Σ1) · Nx(m2,Σ2) = ccNx(mc,Σc)
cc = Nm1(m2, (Σ1 + Σ2))
=1√
det(2π(Σ1 + Σ2))exp
[−1
2(m1 −m2)T (Σ1 + Σ2)−1(m1 −m2)
]
mc = (Σ−11 + Σ−1
2 )−1(Σ−11 m1 + Σ−1
2 m2)Σc = (Σ−1
1 + Σ−12 )−1
but note that the product is not normalized as a density of x.
7.2 Moments
7.2.1 Mean and covariance of linear forms
First and second moments. Assume x ∼ N (m,Σ)
E(x) = m
Cov(x,x) = Var(x) = Σ = E(xxT )− E(x)E(xT ) = E(xxT )−mmT
As for any other distribution is holds for gaussians that
E[Ax] = AE[x]
Var[Ax] = AVar[x]AT
Cov[Ax,By] = ACov[x,y]BT
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2006, Page 30
7.2 Moments 7 GAUSSIANS
7.2.2 Mean and variance of square forms
Mean and variance of square forms: Assume x ∼ N (m,Σ)
E(xxT ) = Σ + mmT
E[xTAx] = Tr(AΣ) + mTAm
Var(xTAx) = 2σ4Tr(A2) + 4σ2mTA2m
E[(x−m′)TA(x−m′)] = (m−m′)TA(m−m′) + Tr(AΣ)
Assume x ∼ N (0, σ2I) and A and B to be symmetric, then
Cov(xTAx,xTBx) = 2σ4Tr(AB)
7.2.3 Cubic forms
E[xbTxxT ] = mbT (M + mmT ) + (M + mmT )bmT
+bTm(M−mmT )
7.2.4 Mean of Quartic Forms
E[xxTxxT ] = 2(Σ + mmT )2 + mTm(Σ−mmT )+Tr(Σ)(Σ + mmT )
E[xxTAxxT ] = (Σ + mmT )(A + AT )(Σ + mmT )+mTAm(Σ−mmT ) + Tr[AΣ(Σ + mmT )]
E[xTxxTx] = 2Tr(Σ2) + 4mTΣm + (Tr(Σ) + mTm)2
E[xTAxxTBx] = Tr[AΣ(B + BT )Σ] + mT (A + AT )Σ(B + BT )m+(Tr(AΣ) + mTAm)(Tr(BΣ) + mTBm)
E[aTxbTxcTxdTx]= (aT (Σ + mmT )b)(cT (Σ + mmT )d)
+(aT (Σ + mmT )c)(bT (Σ + mmT )d)+(aT (Σ + mmT )d)(bT (Σ + mmT )c)− 2aTmbTmcTmdTm
E[(Ax + a)(Bx + b)T (Cx + c)(Dx + d)T ]= [AΣBT + (Am + a)(Bm + b)T ][CΣDT + (Cm + c)(Dm + d)T ]
+[AΣCT + (Am + a)(Cm + c)T ][BΣDT + (Bm + b)(Dm + d)T ]+(Bm + b)T (Cm + c)[AΣDT − (Am + a)(Dm + d)T ]+Tr(BΣCT )[AΣDT + (Am + a)(Dm + d)T ]
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2006, Page 31
7.3 Miscellaneous 7 GAUSSIANS
E[(Ax + a)T (Bx + b)(Cx + c)T (Dx + d)]= Tr[AΣ(CTD + DTC)ΣBT ]
+[(Am + a)TB + (Bm + b)TA]Σ[CT (Dm + d) + DT (Cm + c)]+[Tr(AΣBT ) + (Am + a)T (Bm + b)][Tr(CΣDT ) + (Cm + c)T (Dm + d)]
See [7].
7.2.5 Moments
E[x] =∑
k
ρkmk
Cov(x) =∑
k
∑
k′ρkρk′(Σk + mkmT
k −mkmTk′)
7.3 Miscellaneous
7.3.1 Whitening
Assume x ∼ N (m,Σ) then
z = Σ−1/2(x−m) ∼ N (0, I)
Conversely having z ∼ N (0, I) one can generate data x ∼ N (m,Σ) by setting
x = Σ1/2z + m ∼ N (m,Σ)
Note that Σ1/2 means the matrix which fulfils Σ1/2Σ1/2 = Σ, and that it existsand is unique since Σ is positive definite.
7.3.2 The Chi-Square connection
Assume x ∼ N (m,Σ) and x to be n dimensional, then
z = (x−m)TΣ−1(x−m) ∼ χ2n
where χ2n denotes the Chi square distribution with n degrees of freedom.
7.3.3 Entropy
Entropy of a D-dimensional gaussian
H(x) = −∫N (m,Σ) lnN (m,Σ)dx = ln
√det(2πΣ) +
D
2
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2006, Page 32
7.4 Mixture of Gaussians 7 GAUSSIANS
7.4 Mixture of Gaussians
7.4.1 Density
The variable x is distributed as a mixture of gaussians if it has the density
p(x) =K∑
k=1
ρk1√
det(2πΣk)exp
[−1
2(x−mk)TΣ−1
k (x−mk)]
where ρk sum to 1 and the Σk all are positive definite.
7.4.2 Derivatives
Defining p(s) =∑k ρkNs(µk,Σk) one get
∂ ln p(s)∂ρj
=ρjNs(µj ,Σj)∑k ρkNs(µk,Σk)
∂
∂ρjln[ρjNs(µj ,Σj)]
=ρjNs(µj ,Σj)∑k ρkNs(µk,Σk)
1ρj
∂ ln p(s)∂µj
=ρjNs(µj ,Σj)∑k ρkNs(µk,Σk)
∂
∂µjln[ρjNs(µj ,Σj)]
=ρjNs(µj ,Σj)∑k ρkNs(µk,Σk)
[−Σ−1k (s− µk)
]
∂ ln p(s)∂Σj
=ρjNs(µj ,Σj)∑k ρkNs(µk,Σk)
∂
∂Σjln[ρjNs(µj ,Σj)]
=ρjNs(µj ,Σj)∑k ρkNs(µk,Σk)
12[Σ−Tj + Σ−Tj (s− µj)(s− µj)TΣ−Tj
]
But ρk and Σk needs to be constrained.
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2006, Page 33
8 SPECIAL MATRICES
8 Special Matrices
8.1 Units, Permutation and Shift
8.1.1 Unit vector
Let ei ∈ Rn×1 be the ith unit vector, i.e. the vector which is zero in all entriesexcept the ith at which it is 1.
8.1.2 Rows and Columns
i.th row of A = eTi A
j.th column of A = Aej
8.1.3 Permutations
Let P be some permutation matrix, e.g.
P =
0 1 01 0 00 0 1
=
[e2 e1 e3
]=
eT2eT1eT3
For permutation matrices it holds that
PPT = I
and that
AP =[
Ae2 Ae1 Ae3
]PA =
eT2 AeT1 AeT3 A
That is, the first is a matrix which has columns of A but in permuted sequenceand the second is a matrix which has the rows of A but in the permuted se-quence.
8.1.4 Translation, Shift or Lag Operators
Let L denote the lag (or ’translation’ or ’shift’) operator defined on a 4 × 4example by
L =
0 0 0 01 0 0 00 1 0 00 0 1 0
i.e. a matrix of zeros with one on the sub-diagonal, (L)ij = δi,j+1. With somesignal xt for t = 1, ..., N , the n.th power of the lag operator shifts the indices,i.e.
(Lnx)t ={ 0 for t = 1, .., nxt−n for t = n+ 1, ..., N
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2006, Page 34
8.2 The Singleentry Matrix 8 SPECIAL MATRICES
A related but slightly different matrix is the ’recurrent shifted’ operator definedon a 4x4 example by
L =
0 0 0 11 0 0 00 1 0 00 0 1 0
i.e. a matrix defined by (L)ij = δi,j+1 + δi,1δj,dim(L). On a signal x it has theeffect
(Lnx)t = xt′ , t′ = [(t− n) mod N ] + 1
That is, L is like the shift operator L except that it ’wraps’ the signal as if itwas periodic and shifted (substituting the zeros with the rear end of the signal).Note that L is invertible and orthogonal, i.e.
L−1 = LT
8.2 The Singleentry Matrix
8.2.1 Definition
The single-entry matrix Jij ∈ Rn×n is defined as the matrix which is zeroeverywhere except in the entry (i, j) in which it is 1. In a 4 × 4 example onemight have
J23 =
0 0 0 00 0 1 00 0 0 00 0 0 0
The single-entry matrix is very useful when working with derivatives of expres-sions involving matrices.
8.2.2 Swap and Zeros
Assume A to be n×m and Jij to be m× p
AJij =[
0 0 . . . Ai . . . 0]
i.e. an n × p matrix of zeros with the i.th column of A in place of the j.thcolumn. Assume A to be n×m and Jij to be p× n
JijA =
0...0
Aj
0...0
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2006, Page 35
8.2 The Singleentry Matrix 8 SPECIAL MATRICES
i.e. an p ×m matrix of zeros with the j.th row of A in the placed of the i.throw.
8.2.3 Rewriting product of elements
AkiBjl = (AeieTj B)kl = (AJijB)kl
AikBlj = (ATeieTj BT )kl = (ATJijBT )kl
AikBjl = (AT eieTj B)kl = (ATJijB)kl
AkiBlj = (AeieTj BT )kl = (AJijBT )kl
8.2.4 Properties of the Singleentry Matrix
If i = jJijJij = Jij (Jij)T (Jij)T = Jij
Jij(Jij)T = Jij (Jij)TJij = Jij
If i 6= jJijJij = 0 (Jij)T (Jij)T = 0
Jij(Jij)T = Jii (Jij)TJij = Jjj
8.2.5 The Singleentry Matrix in Scalar Expressions
Assume A is n×m and J is m× n, then
Tr(AJij) = Tr(JijA) = (AT )ij
Assume A is n× n, J is n×m and B is m× n, then
Tr(AJijB) = (ATBT )ij
Tr(AJjiB) = (BA)ij
Tr(AJijJijB) = diag(ATBT )ij
Assume A is n× n, Jij is n×m B is m× n, then
xTAJijBx = (ATxxTBT )ij
xTAJijJijBx = diag(ATxxTBT )ij
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2006, Page 36
8.3 Symmetric and Antisymmetric 8 SPECIAL MATRICES
8.2.6 Structure Matrices
The structure matrix is defined by
∂A∂Aij
= Sij
If A has no special structure then
Sij = Jij
If A is symmetric thenSij = Jij + Jji − JijJij
8.3 Symmetric and Antisymmetric
8.3.1 Symmetric
The matrix A is said to be symmetric if
A = AT
Symmetric matrices have many important properties, e.g. that their eigenvaluesare real and eigenvalues orthogonal.
8.3.2 Antisymmetric
The antisymmetric matrix is also known as the skew symmetric matrix. It hasthe following property from which it is defined
A = −AT
Hereby, it can be seen that the antisymmetric matrices always have a zerodiagonal. The n× n antisymmetric matrices also have the following properties.
det(AT ) = det(−A) = (−1)n det(A)− det(A) = det(−A) = 0, if n is odd
8.4 Vandermonde Matrices
A Vandermonde matrix has the form [12]
V =
1 v1 v21 · · · vn−1
1
1 v2 v22 · · · vn−1
2...
......
...1 vn v2
n · · · vn−1n
. (59)
The transpose of V is also said to a Vandermonde matrix. The determinant isgiven by [21]
det V =∏
i
> j(vi − vj) (60)
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2006, Page 37
8.5 Toeplitz Matrices 8 SPECIAL MATRICES
8.5 Toeplitz Matrices
A Toeplitz matrix T is a matrix where the elements of each diagonal is thesame. In the n× n square case, it has the following structure:
T =
t11 t12 · · · t1n
t21. . . . . .
......
. . . . . . t12
tn1 · · · t21 t11
=
t0 t1 · · · tn−1
t−1. . . . . .
......
. . . . . . t1t−(n−1) · · · t−1 t0
(61)
A Toeplitz matrix is persymmetric. If a matrix is persymmetric (or orthosym-metric), it means that the matrix is symmetric about its northeast-southwestdiagonal (anti-diagonal) [9]. Persymmetric matrices is a larger class of matrices,since a persymmetric matrix not necessarily has a Toeplitz structure. There aresome special cases of Toeplitz matrices. The symmetric Toeplitz matrix is givenby:
T =
t0 t1 · · · tn−1
t1. . . . . .
......
. . . . . . t1t−(n−1) · · · t1 t0
(62)
The circular Toeplitz matrix:
TC =
t0 t1 · · · tn−1
tn. . . . . .
......
. . . . . . t1t1 · · · tn−1 t0
(63)
The upper triangular Toeplitz matrix:
TU =
t0 t1 · · · tn−1
0. . . . . .
......
. . . . . . t10 · · · 0 t0
, (64)
and the lower triangular Toeplitz matrix:
TL =
t0 0 · · · 0
t−1. . . . . .
......
. . . . . . 0t−(n−1) · · · t−1 t0
(65)
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2006, Page 38
8.6 The DFT Matrix 8 SPECIAL MATRICES
8.5.1 Properties of Toeplitz Matrices
The Toeplitz matrix has some computational advantages. The addition of twoToeplitz matrices can be done with O(n) flops, multiplication of two Toeplitzmatrices can be done in O(n lnn) flops. Toeplitz equation systems can be solvedin O(n2) flops. The inverse of a positive definite Toeplitz matrix can be foundin O(n2) flops too. The inverse of a Toeplitz matrix is persymmetric. Theproduct of two lower triangular Toeplitz matrices is a Toeplitz matrix. Moreinformation on Toeplitz matrices and circulant matrices can be found in [10, 7].
8.6 The DFT Matrix
The DFT matrix is an N ×N symmetric matrix WN , where the k, nth elementis given by
W knN = e
−j2πknN (66)
Thus the discrete Fourier transform (DFT) can be expressed as
X(k) =N−1∑n=0
x(n)W knN . (67)
Likewise the inverse discrete Fourier transform (IDFT) can be expressed as
x(n) =1N
N−1∑
k=0
X(k)W−knN . (68)
The DFT of the vector x = [x(0), x(1), · · · , x(N −1)]T can be written in matrixform as
X = WNx, (69)
where X = [X(0), X(1), · · · , x(N − 1)]T . The IDFT is similarly given as
x = W−1N X. (70)
Some properties of WN exist:
W−1N =
1N
W∗N (71)
WNW∗N = NI (72)
W∗N = WH
N (73)
If WN = e−j2πN , then [15]
Wm+N/2N = −Wm
N (74)
Notice, the DFT matrix is a Vandermonde Matrix.The following important relation between the circulant matrix and the dis-
crete Fourier transform (DFT) exists
TC = W−1N (I ◦ (WNt))WN , (75)
where t = [t0, t1, · · · , tn−1]T is the first row of TC .
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2006, Page 39
8.7 Positive Definite and Semi-definite Matrices 8 SPECIAL MATRICES
8.7 Positive Definite and Semi-definite Matrices
8.7.1 Definitions
A matrix A is positive definite if and only if
xTAx > 0, ∀x
A matrix A is positive semi-definite if and only if
xTAx ≥ 0, ∀x
Note that if A is positive definite, then A is also positive semi-definite.
8.7.2 Eigenvalues
The following holds with respect to the eigenvalues:
A pos. def. ⇔ eig(A) > 0A pos. semi-def. ⇔ eig(A) ≥ 0
8.7.3 Trace
The following holds with respect to the trace:
A pos. def. ⇒ Tr(A) > 0A pos. semi-def. ⇒ Tr(A) ≥ 0
8.7.4 Inverse
If A is positive definite, then A is invertible and A−1 is also positive definite.
8.7.5 Diagonal
If A is positive definite, then Aii > 0,∀i
8.7.6 Decomposition I
The matrix A is positive semi-definite of rank r ⇔ there exists a matrix B ofrank r such that A = BBT
The matrix A is positive definite ⇔ there exists an invertible matrix B suchthat A = BBT
8.7.7 Decomposition II
Assume A is an n× n positive semi-definite, then there exists an n× r matrixB of rank r such that BTAB = I.
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2006, Page 40
8.8 Block matrices 8 SPECIAL MATRICES
8.7.8 Equation with zeros
Assume A is positive semi-definite, then XTAX = 0 ⇒ AX = 0
8.7.9 Rank of product
Assume A is positive definite, then rank(BABT ) = rank(B)
8.7.10 Positive definite property
If A is n× n positive definite and B is r × n of rank r, then BABT is positivedefinite.
8.7.11 Outer Product
If X is n× r, where n ≤ r and rank(X) = n, then XXT is positive definite.
8.7.12 Small pertubations
If A is positive definite and B is symmetric, then A− tB is positive definite forsufficiently small t.
8.8 Block matrices
Let Aij denote the ijth block of A.
8.8.1 Multiplication
Assuming the dimensions of the blocks matches we have[
A11 A12
A21 A22
] [B11 B12
B21 B22
]=[
A11B11 + A12B21 A11B12 + A12B22
A21B11 + A22B21 A21B12 + A22B22
]
8.8.2 The Determinant
The determinant can be expressed as by the use of
C1 = A11 −A12A−122 A21
C2 = A22 −A21A−111 A12
as
det([
A11 A12
A21 A22
])= det(A22) · det(C1) = det(A11) · det(C2)
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2006, Page 41
8.8 Block matrices 8 SPECIAL MATRICES
8.8.3 The Inverse
The inverse can be expressed as by the use of
C1 = A11 −A12A−122 A21
C2 = A22 −A21A−111 A12
as [A11 A12
A21 A22
]−1
=[
C−11 −A−1
11 A12C−12
−C−12 A21A−1
11 C−12
]
=[
A−111 + A−1
11 A12C−12 A21A−1
11 −C−11 A12A−1
22
−A−122 A21C−1
1 A−122 + A−1
22 A21C−11 A12A−1
22
]
8.8.4 Block diagonal
For block diagonal matrices we have
[A11 00 A22
]−1
=[
(A11)−1 00 (A22)−1
]
det([
A11 00 A22
])= det(A11) · det(A22)
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2006, Page 42
9 FUNCTIONS AND OPERATORS
9 Functions and Operators
9.1 Functions and Series
9.1.1 Finite Series
(Xn − I)(X− I)−1 = I + X + X2 + ...+ Xn−1
9.1.2 Taylor Expansion of Scalar Function
Consider some scalar function f(x) which takes the vector x as an argument.This we can Taylor expand around x0
f(x) ∼= f(x0) + g(x0)T (x− x0) +12
(x− x0)TH(x0)(x− x0)
where
g(x0) =∂f(x)∂x
∣∣∣x0
H(x0) =∂2f(x)∂x∂xT
∣∣∣x0
9.1.3 Matrix Functions by Infinite Series
As for analytical functions in one dimension, one can define a matrix functionfor square matrices X by an infinite series
f(X) =∞∑n=0
cnXn
assuming the limit exists and is finite. If the coefficients cn fulfils∑n cnx
n <∞,then one can prove that the above series exists and is finite, see [1]. Thus forany analytical function f(x) there exists a corresponding matrix function f(x)constructed by the Taylor expansion. Using this one can prove the followingresults:1) A matrix A is a zero of its own characteristic polynomium [1]:
p(λ) = det(Iλ−A) =∑n
cnλn ⇒ p(A) = 0
2) If A is square it holds that [1]
A = UBU−1 ⇒ f(A) = Uf(B)U−1
3) A useful fact when using power series is that
An → 0forn→∞ if |A| < 1
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2006, Page 43
9.2 Kronecker and Vec Operator 9 FUNCTIONS AND OPERATORS
9.1.4 Exponential Matrix Function
In analogy to the ordinary scalar exponential function, one can define exponen-tial and logarithmic matrix functions:
eA ≡∞∑n=0
1n!
An = I + A +12A2 + ...
e−A ≡∞∑n=0
1n!
(−1)nAn = I−A +12A2 − ...
etA ≡∞∑n=0
1n!
(tA)n = I + tA +12t2A2 + ...
ln(I + A) ≡∞∑n=1
(−1)n−1
nAn = A− 1
2A2 +
13A3 − ...
Some of the properties of the exponential function are [1]
eAeB = eA+B if AB = BA
(eA)−1 = e−A
d
dtetA = AetA = etAA, t ∈ R
d
dtTr(etA) = Tr(AetA)
det(eA) = eTr(A)
9.1.5 Trigonometric Functions
sin(A) ≡∞∑n=0
(−1)nA2n+1
(2n+ 1)!= A− 1
3!A3 +
15!
A5 − ...
cos(A) ≡∞∑n=0
(−1)nA2n
(2n)!= I− 1
2!A2 +
14!
A4 − ...
9.2 Kronecker and Vec Operator
9.2.1 The Kronecker Product
The Kronecker product of an m × n matrix A and an r × q matrix B, is anmr × nq matrix, A⊗B defined as
A⊗B =
A11B A12B ... A1nBA21B A22B ... A2nB
......
Am1B Am2B ... AmnB
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2006, Page 44
9.3 Solutions to Systems of Equations 9 FUNCTIONS AND OPERATORS
The Kronecker product has the following properties (see [13])
A⊗ (B + C) = A⊗B + A⊗C
A⊗B 6= B⊗A
A⊗ (B⊗C) = (A⊗B)⊗C
(αAA⊗ αBB) = αAαB(A⊗B)(A⊗B)T = AT ⊗BT
(A⊗B)(C⊗D) = AC⊗BD
(A⊗B)−1 = A−1 ⊗B−1
rank(A⊗B) = rank(A)rank(B)Tr(A⊗B) = Tr(A)Tr(B)
det(A⊗B) = det(A)rank(B) det(B)rank(A)
9.2.2 The Vec Operator
The vec-operator applied on a matrix A stacks the columns into a vector, i.e.for a 2× 2 matrix
A =[A11 A12
A21 A22
]vec(A) =
A11
A21
A12
A22
Properties of the vec-operator include (see [13])
vec(AXB) = (BT ⊗A)vec(X)Tr(ATB) = vec(A)Tvec(B)
vec(A + B) = vec(A) + vec(B)vec(αA) = α · vec(A)
9.3 Solutions to Systems of Equations
9.3.1 Existence in Linear Systems
Assume A is n×m and consider the linear system
Ax = b
Construct the augmented matrix B = [A b] then
Condition Solutionrank(A) = rank(B) = m Unique solution xrank(A) = rank(B) < m Many solutions xrank(A) < rank(B) No solutions x
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2006, Page 45
9.3 Solutions to Systems of Equations 9 FUNCTIONS AND OPERATORS
9.3.2 Standard Square
Assume A is square and invertible, then
Ax = b ⇒ x = A−1b
9.3.3 Degenerated Square
9.3.4 Over-determined Rectangular
Assume A to be n×m, n > m (tall) and rank(A) = m, then
Ax = b ⇒ x = (ATA)−1ATb = A+b
that is if there exists a solution x at all! If there is no solution the followingcan be useful:
Ax = b ⇒ xmin = A+b
Now xmin is the vector x which minimizes ||Ax− b||2, i.e. the vector which is”least wrong”. The matrix A+ is the pseudo-inverse of A. See [3].
9.3.5 Under-determined Rectangular
Assume A is n×m and n < m (”broad”).
Ax = b ⇒ xmin = AT (AAT )−1b
The equation have many solutions x. But xmin is the solution which minimizes||Ax−b||2 and also the solution with the smallest norm ||x||2. The same holdsfor a matrix version: Assume A is n×m, X is m× n and B is n× n, then
AX = B ⇒ Xmin = A+B
The equation have many solutions X. But Xmin is the solution which minimizes||AX−B||2 and also the solution with the smallest norm ||X||2. See [3].
Similar but different: Assume A is square n × n and the matrices B0,B1
are n×N , where N > n, then if B0 has maximal rank
AB0 = B1 ⇒ Amin = B1BT0 (B0BT
0 )−1
where Amin denotes the matrix which is optimal in a least square sense. Aninterpretation is that A is the linear approximation which maps the columnsvectors of B0 into the columns vectors of B1.
9.3.6 Linear form and zeros
Ax = 0, ∀x ⇒ A = 0
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2006, Page 46
9.4 Matrix Norms 9 FUNCTIONS AND OPERATORS
9.3.7 Square form and zeros
If A is symmetric, then
xTAx = 0, ∀x ⇒ A = 0
9.3.8 The Lyapunov Equation
AX + XB = C
vec(X) = (I⊗A + BT ⊗ I)−1vec(C)
See Sec 9.2.1 and 9.2.2 for details on the Kronecker product and the vec operator.
9.3.9 Encapsulating Sum
∑nAnXBn = C
vec(X) =(∑
nBTn ⊗An
)−1vec(C)
See Sec 9.2.1 and 9.2.2 for details on the Kronecker product and the vec operator.
9.4 Matrix Norms
9.4.1 Definitions
A matrix norm is a mapping which fulfils
||A|| ≥ 0 ||A|| = 0⇔ A = 0
||cA|| = |c|||A||, c ∈ R||A + B|| ≤ ||A||+ ||B||
9.4.2 Examples
||A||1 = maxj∑i |Aij |
||A||2 =√
max eig(ATA)||A||p = (max||x||p=1 ||Ax||p)1/p
||A||∞ = maxi∑j |Aij |
||A||F =√∑
ij |Aij |2 =√
Tr(AAH) (Frobenius)
||A||max = maxij |Aij |||A||KF = ||sing(A)||1 (Ky Fan)
where sing(A) is the vector of singular values of the matrix A.
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2006, Page 47
9.5 Rank 9 FUNCTIONS AND OPERATORS
9.4.3 Inequalities
E. H. Rasmussen has in yet unpublished material derived and collected thefollowing inequalities. They are collected in a table as below, assuming A is anm× n, and d = min{m,n}
||A||max ||A||1 ||A||∞ ||A||2 ||A||F ||A||KF||A||max 1 1 1 1 1||A||1 m m
√m
√m
√m
||A||∞ n n√n
√n
√n
||A||2√mn
√n
√m 1 1
||A||F√mn
√n
√m
√d 1
||A||KF√mnd
√nd
√md d
√d
which are to be read as, e.g.
||A||2 ≤√m · ||A||∞
9.4.4 Condition Number
The 2-norm of A equals√
(max(eig(ATA))) [9, p.57]. For a symmetric, positivedefinite matrix, this reduces to max(eig(A)) The condition number based on the2-norm thus reduces to
‖A‖2‖A−1‖2 = max(eig(A)) max(eig(A−1)) =max(eig(A))min(eig(A))
. (76)
9.5 Rank
9.5.1 Sylvester’s Inequality
If A is m× n and B is n× r, then
rank(A) + rank(B)− n ≤ rank(AB) ≤ min{rank(A), rank(B)}
9.6 Integral Involving Dirac Delta Functions
Assuming A to be square, then∫p(s)δ(x−As)ds =
1det(A)
p(A−1x)
Assuming A to be ”underdetermined”, i.e. ”tall”, then
∫p(s)δ(x−As)ds =
{1√
det(ATA)p(A+x) if x = AA+x
0 elsewhere
}
See [8].
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2006, Page 48
9.7 Miscellaneous 9 FUNCTIONS AND OPERATORS
9.7 Miscellaneous
For any A it holds that
rank(A) = rank(AT ) = rank(AAT ) = rank(ATA)
It holds that
A is positive definite ⇔ ∃B invertible, such that A = BBT
9.7.1 Orthogonal matrix
If A is orthogonal, then det(A) = ±1.
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2006, Page 49
A ONE-DIMENSIONAL RESULTS
A One-dimensional Results
A.1 Gaussian
A.1.1 Density
p(x) =1√
2πσ2exp
(− (x− µ)2
2σ2
)
A.1.2 Normalization
∫e−
(s−µ)2
2σ2 ds =√
2πσ2
∫e−(ax2+bx+c)dx =
√π
aexp
[b2 − 4ac
4a
]
∫ec2x
2+c1x+c0dx =√
π
−c2 exp[c21 − 4c2c0−4c2
]
A.1.3 Derivatives
∂p(x)∂µ
= p(x)(x− µ)σ2
∂ ln p(x)∂µ
=(x− µ)σ2
∂p(x)∂σ
= p(x)1σ
[(x− µ)2
σ2− 1]
∂ ln p(x)∂σ
=1σ
[(x− µ)2
σ2− 1]
A.1.4 Completing the Squares
c2x2 + c1x+ c0 = −a(x− b)2 + w
−a = c2 b =12c1c2
w =14c21c2
+ c0
orc2x
2 + c1x+ c0 = − 12σ2
(x− µ)2 + d
µ =−c12c2
σ2 =−12c2
d = c0 − c214c2
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2006, Page 50
A.2 One Dimensional Mixture of GaussiansA ONE-DIMENSIONAL RESULTS
A.1.5 Moments
If the density is expressed by
p(x) =1√
2πσ2exp
[− (s− µ)2
2σ2
]or p(x) = C exp(c2x2 + c1x)
then the first few basic moments are
〈x〉 = µ = −c12c2
〈x2〉 = σ2 + µ2 = −12c2
+(−c12c2
)2
〈x3〉 = 3σ2µ+ µ3 = c1(2c2)2
[3− c21
2c2
]
〈x4〉 = µ4 + 6µ2σ2 + 3σ4 =(c12c2
)4
+ 6(c12c2
)2 (−12c2
)+ 3
(1
2c2
)2
and the central moments are
〈(x− µ)〉 = 0 = 0〈(x− µ)2〉 = σ2 =
[−12c2
]
〈(x− µ)3〉 = 0 = 0
〈(x− µ)4〉 = 3σ4 = 3[
12c2
]2
A kind of pseudo-moments (un-normalized integrals) can easily be derived as∫
exp(c2x2 + c1x)xndx = Z〈xn〉 =√
π
−c2 exp[c21−4c2
]〈xn〉
From the un-centralized moments one can derive other entities like
〈x2〉 − 〈x〉2 = σ2 = −12c2
〈x3〉 − 〈x2〉〈x〉 = 2σ2µ = 2c1(2c2)2
〈x4〉 − 〈x2〉2 = 2σ4 + 4µ2σ2 = 2(2c2)2
[1− 4 c21
2c2
]
A.2 One Dimensional Mixture of Gaussians
A.2.1 Density and Normalization
p(s) =K∑
k
ρk√2πσ2
k
exp[−1
2(s− µk)2
σ2k
]
A.2.2 Moments
An useful fact of MoG, is that
〈xn〉 =∑
k
ρk〈xn〉k
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2006, Page 51
A.2 One Dimensional Mixture of GaussiansA ONE-DIMENSIONAL RESULTS
where 〈·〉k denotes average with respect to the k.th component. We can calculatethe first four moments from the densities
p(x) =∑
k
ρk1√
2πσ2k
exp[−1
2(x− µk)2
σ2k
]
p(x) =∑
k
ρkCk exp[ck2x
2 + ck1x]
as
〈x〉 =∑k ρkµk =
∑k ρk
[−ck12ck2
]
〈x2〉 =∑k ρk(σ2
k + µ2k) =
∑k ρk
[−1
2ck2+(−ck12ck2
)2]
〈x3〉 =∑k ρk(3σ2
kµk + µ3k) =
∑k ρk
[ck1
(2ck2)2
[3− c2k1
2ck2
]]
〈x4〉 =∑k ρk(µ4
k + 6µ2kσ
2k + 3σ4
k) =∑k ρk
[(1
2ck2
)2[(
ck12ck2
)2
− 6 c2k12ck2
+ 3]]
If all the gaussians are centered, i.e. µk = 0 for all k, then
〈x〉 = 0 = 0〈x2〉 =
∑k ρkσ
2k =
∑k ρk
[−1
2ck2
]
〈x3〉 = 0 = 0
〈x4〉 =∑k ρk3σ4
k =∑k ρk3
[−1
2ck2
]2
From the un-centralized moments one can derive other entities like
〈x2〉 − 〈x〉2 =∑k,k′ ρkρk′
[µ2k + σ2
k − µkµk′]
〈x3〉 − 〈x2〉〈x〉 =∑k,k′ ρkρk′
[3σ2
kµk + µ3k − (σ2
k + µ2k)µk′
]〈x4〉 − 〈x2〉2 =
∑k,k′ ρkρk′
[µ4k + 6µ2
kσ2k + 3σ4
k − (σ2k + µ2
k)(σ2k′ + µ2
k′)]
A.2.3 Derivatives
Defining p(s) =∑k ρkNs(µk, σ2
k) we get for a parameter θj of the j.th compo-nent
∂ ln p(s)∂θj
=ρjNs(µj , σ2
j )∑k ρkNs(µk, σ2
k)∂ ln(ρjNs(µj , σ2
j ))∂θj
that is,
∂ ln p(s)∂ρj
=ρjNs(µj , σ2
j )∑k ρkNs(µk, σ2
k)1ρj
∂ ln p(s)∂µj
=ρjNs(µj , σ2
j )∑k ρkNs(µk, σ2
k)(s− µj)σ2j
∂ ln p(s)∂σj
=ρjNs(µj , σ2
j )∑k ρkNs(µk, σ2
k)1σj
[(s− µj)2
σ2j
− 1
]
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2006, Page 52
B PROOFS AND DETAILS
Note that ρk must be constrained to be proper ratios. Defining the ratios byρj = erj/
∑k e
rk , we obtain
∂ ln p(s)∂rj
=∑
l
∂ ln p(s)∂ρl
∂ρl∂rj
where∂ρl∂rj
= ρl(δlj − ρj)
B Proofs and Details
B.1 Misc Proofs
B.1.1 Proof of Equation 14
Essentially we need to calculate
∂(Xn)kl∂Xij
=∂
∂Xij
∑u1,...,un−1
Xk,u1Xu1,u2 ...Xun−1,l
= δk,iδu1,jXu1,u2 ...Xun−1,l
+Xk,u1δu1,iδu2,j ...Xun−1,l
...+Xk,u1Xu1,u2 ...δun−1,iδl,j
=n−1∑r=0
(Xr)ki(Xn−1−r)jl
=n−1∑r=0
(XrJijXn−1−r)kl
Using the properties of the single entry matrix found in Sec. 8.2.4, the resultfollows easily.
B.1.2 Details on Eq. 78
∂ det(XHAX) = det(XHAX)Tr[(XHAX)−1∂(XHAX)]= det(XHAX)Tr[(XHAX)−1(∂(XH)AX + XH∂(AX))]= det(XHAX)
(Tr[(XHAX)−1∂(XH)AX]
+Tr[(XHAX)−1XH∂(AX)])
= det(XHAX)(Tr[AX(XHAX)−1∂(XH)]
+Tr[(XHAX)−1XHA∂(X)])
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2006, Page 53
B.1 Misc Proofs B PROOFS AND DETAILS
First, the derivative is found with respect to the real part of X
∂ det(XHAX)∂<X
= det(XHAX)(Tr[AX(XHAX)−1∂(XH)]
∂<X
+Tr[(XHAX)−1XHA∂(X)]
∂<X
)
= det(XHAX)(AX(XHAX)−1 + ((XHAX)−1XHA)T
)
Through the calculations, (16) and (47) were used. In addition, by use of (48),the derivative is found with respect to the imaginary part of X
i∂ det(XHAX)
∂=X= idet(XHAX)
(Tr[AX(XHAX)−1∂(XH)]∂=X
+Tr[(XHAX)−1XHA∂(X)]
∂=X
)
= det(XHAX)(AX(XHAX)−1 − ((XHAX)−1XHA)T
)
Hence, derivative yields
∂ det(XHAX)∂X
=12
(∂ det(XHAX)∂<X
− i∂ det(XHAX)∂=X
)
= det(XHAX)((XHAX)−1XHA
)T
and the complex conjugate derivative yields
∂ det(XHAX)∂X∗
=12
(∂ det(XHAX)∂<X
+ i∂ det(XHAX)
∂=X
)
= det(XHAX)AX(XHAX)−1
Notice, for real X, A, the sum of (56) and (57) is reduced to (13).Similar calculations yield
∂ det(XAXH)∂X
=12
(∂ det(XAXH)∂<X
− i∂ det(XAXH)∂=X
)
= det(XAXH)(AXH(XAXH)−1
)T (77)
and
∂ det(XAXH)∂X∗
=12
(∂ det(XAXH)∂<X
+ i∂ det(XAXH)
∂=X
)
= det(XAXH)(XAXH)−1XA (78)
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2006, Page 54
REFERENCES REFERENCES
References
[1] Karl Gustav Andersson and Lars-Christer Boiers. Ordinaera differentialek-vationer. Studenterlitteratur, 1992.
[2] Jorn Anemuller, Terrence J. Sejnowski, and Scott Makeig. Complex inde-pendent component analysis of frequency-domain electroencephalographicdata. Neural Networks, 16(9):1311–1323, November 2003.
[3] S. Barnet. Matrices. Methods and Applications. Oxford Applied Mathe-matics and Computin Science Series. Clarendon Press, 1990.
[4] Christoffer Bishop. Neural Networks for Pattern Recognition. Oxford Uni-versity Press, 1995.
[5] Robert J. Boik. Lecture notes: Statistics 550. Online, April 22 2002. Notes.
[6] D. H. Brandwood. A complex gradient operator and its application inadaptive array theory. IEE Proceedings, 130(1):11–16, February 1983. PTS.F and H.
[7] M. Brookes. Matrix Reference Manual, 2004. Website May 20, 2004.
[8] Mads Dyrholm. Some matrix results, 2004. Website August 23, 2004.
[9] Gene H. Golub and Charles F. van Loan. Matrix Computations. The JohnsHopkins University Press, Baltimore, 3rd edition, 1996.
[10] Robert M. Gray. Toeplitz and circulant matrices: A review. Technicalreport, Information Systems Laboratory, Department of Electrical Engi-neering,Stanford University, Stanford, California 94305, August 2002.
[11] Simon Haykin. Adaptive Filter Theory. Prentice Hall, Upper Saddle River,NJ, 4th edition, 2002.
[12] Roger A. Horn and Charles R. Johnson. Matrix Analysis. CambridgeUniversity Press, 1985.
[13] Thomas P. Minka. Old and new matrix algebra useful for statistics, De-cember 2000. Notes.
[14] L. Parra and C. Spence. Convolutive blind separation of non-stationarysources. In IEEE Transactions Speech and Audio Processing, pages 320–327, May 2000.
[15] John G. Proakis and Dimitris G. Manolakis. Digital Signal Processing.Prentice-Hall, 1996.
[16] Laurent Schwartz. Cours d’Analyse, volume II. Hermann, Paris, 1967. Asreferenced in [11].
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2006, Page 55
REFERENCES REFERENCES
[17] Shayle R. Searle. Matrix Algebra Useful for Statistics. John Wiley andSons, 1982.
[18] G. Seber and A. Lee. Linear Regression Analysis. John Wiley and Sons,2002.
[19] S. M. Selby. Standard Mathematical Tables. CRC Press, 1974.
[20] Inna Stainvas. Matrix algebra in differential calculus. Neural ComputingResearch Group, Information Engeneering, Aston University, UK, August2002. Notes.
[21] P. P. Vaidyanathan. Multirate Systems and Filter Banks. Prentice Hall,1993.
[22] Max Welling. The Kalman Filter. Lecture Note.
Petersen & Pedersen, The Matrix Cookbook, Version: February 16, 2006, Page 56