• No results found

SIMULTANEOUS GENERALIZED SCHUR DECOMPOSITION METHODS FOR COMPUTING THE CANONICAL POLYADIC DECOMPOSITION

N/A
N/A
Protected

Academic year: 2021

Share "SIMULTANEOUS GENERALIZED SCHUR DECOMPOSITION METHODS FOR COMPUTING THE CANONICAL POLYADIC DECOMPOSITION"

Copied!
28
0
0

Bezig met laden.... (Bekijk nu de volledige tekst)

Hele tekst

(1)

METHODS FOR COMPUTING THE CANONICAL POLYADIC DECOMPOSITION

MIKAEL SØRENSEN ∗§ ‡, LIEVEN DE LATHAUWER ∗§ ‡, PIERRE COMON, SYLVIE ICART †, AND LUC DENEIRE

Abstract. The aim of this paper is to compute a Canonical Polyadic Decomposition (CPD) of a tensor using a Simultaneous Generalized Schur Decomposition (SGSD). First we propose new methods to compute a CPD with triangular factor matrices. This leads to more relaxed and robust SGSD methods. Next, we propose new ways to deal with partially (Hermitian) symmetric CPDs via the SGSD approach. For the case when the CPD contains a partial Hermitian symmetry we also provide a new uniqueness result. Finally, numerical experiments are reported.

Key words. tensor, polyadic decomposition, canonical decomposition (CANDECOMP), paral-lel factor (PARAFAC), simultaneous generalized Schur decomposition, partially symmetric tensor, triangular matrices.

1. Introduction. A Simultaneous Generalized Schur Decomposition (SGSD) approach for computing a third-order Canonical Polyadic Decomposition (CPD) with a partial symmetry was proposed in [20]. It was later adapted to the general unsym-metric third-order CPD case in [5]. The SGSD method has been applied in blind separation of communication signals [20, 7], in multidimensional harmonic retrieval [11, 1] and in blind identification of underdetermined mixtures [8]. The SGSD method requires that two of the factor matrices of the CPD have full column rank. However, a CPD problem with one full column rank factor matrix can often be converted to a CPD problem with all factor matrices having full column rank [6].

The original SGSD method [20], here called SGSD1-CP, for computing a third-order CPD requires that all three of the involved factor matrices have full column rank, as will be explained in section 4. Moreover, it does not fully take the struc-ture among the involved triangular matrices into account, as will also be explained in section 4. We present new methods for computing a CPD with triangular fac-tor matrices. Based on these results we first propose a new SGSD method, called SGSD2-CP, for the computation of a third-order CPD with three full column rank factor matrices. It attempts to take the structure among the involved triangular ma-trices into account and can be understood as an improved and generalized version of the procedure for computing the parameters of a structured tensor [4]. Second, we present a more relaxed SGSD method, called SGSD3-CP, which only requires that

KU Leuven - E.E. Dept. (ESAT) - SCD-SISTA, Kasteelpark Arenberg 10, B-3001 Leuven-Heverlee, Belgium.

§Group Science, Engineering and Technology, KU Leuven Kulak, E. Sabbelaan 53, 8500 Kortrijk, Belgium, {Mikael.Sorensen, Lieven.DeLathauwer}@kuleuven-kulak.be.

GIPSA-Lab, CNRS UMR5216, Grenoble Campus, BP.46 F-38402 St Martin d’Heres Cedex, France, pierre.comon@gipsa-lab.grenoble-inp.fr

Laboratoire I3S - UMR7271 - UNS CNRS, Les Algorithmes - Euclide-B, 06903 Sophia Antipolis, France, {icart, deneire}@i3s.unice.fr.

Research supported by: (1) Research Council KU Leuven: GOA-Ambiorics, GOA-MaNet, CoE EF/05/006 Optimization in Engineering (OPTEC), CIF1, STRT1/08/23, (2) F.W.O.: (a) project G.0427.10N, (b) Research Communities ICCoS, ANMMM and MLDM, (3) the Belgian Federal Sci-ence Policy Office: IUAP P7 (DYSCO II, Dynamical systems, control and optimization, 2012-2017), (4) EU: ERNSI.

The work of Mikael Sørensen was supported by the EU by a Marie-Curie Fellowship under contract No MEST- CT-2005-021175.

(2)

two of the matrix factors of the given CPD have full column rank. The proposed SGSD2-CP and SGSD3-CP methods mainly differ from the existing methods [20, 5] in the way the involved triangular matrices are computed. A part of this work has been presented in the conference paper [18]. CPDs containing partial (Hermitian) symmetries are common in many practical problems such as blind source separation based on simultaneous matrix diagonalization [3, 15, 8]. Hence, the third contribu-tion of this paper are new SGSD methods for computing a CPD containing partial (Hermitian) symmetries. For the case when the CPD contains a partial Hermitian symmetry we also provide a new uniqueness result.

The paper is organized as follows. The rest of the introduction will present our notation followed by a quick review of the CPD and SGSD. In section 2 we discuss the relation between the SGSD and CPD. Next, in section 3 we present a generalized version of the extended QZ method for computing the SGSD. Section 4 will review the original SGSD1-CP method. Next, in sections 5 and 6 we propose the two new SGSD2-CP and SGSD3-CP methods for computing a CPD. Section 7 will discuss new SGSD approaches for the computation of a CPD containing partial (Hermitian) symmetries while section 8 presents a new uniqueness result for a CPD with a partial Hermitian symmetry. Section 9 will explain how to extend the SGSD methods to Nth-order tensors. Finally, in section 10 we conclude the paper.

1.1. Notation. Vectors, matrices and tensors are denoted by lower case bold-face, upper case boldface and upper case calligraphic letters, respectively. The symbols ⊗ and ⊙ denote the Kronecker and Khatri-Rao products, defined as

A ⊗ B ,    a11B a12B . . . a21B a22B . . . .. . ... . ..    , A ⊙ B , a1⊗ b1 a2⊗ b2 . . . ,

in which (A)mn = amn and ar and br denote the rth column vector of A and B,

respectively. Throughout the paper ar denotes the rth column vector of the matrix

A. Furthermore, the outer product of N vectors a(n)∈ CIn is denoted by a(1)◦ a(2)

· · ·◦a(N )∈ CI1×I2×···×IN and it satisfies the relation a(1)◦ a(2)◦ · · · ◦ a(N )

i1i2...iN =

a(1)i1 a(2)i2 · · · a(N )iN .

Further, (·)T, (·)∗, (·)H, (·)†, k · kF, |·|, Col (·), Null (·), (·)⊥, Re {·} and Im {·}

denote the transpose, conjugate, conjugate-transpose, Moore-Penrose pseudo-inverse, Frobenius norm, determinant, column space, null space, complementary subspace, real part and imaginary part of a matrix, respectively.

Let δij be the Dirac delta function which is zero except when the two indices are

equal, in which case δii = 1. The identity matrix and all-ones vector are denoted

by IR ∈ CR×R and 1R = [1, . . . , 1]T ∈ CR, respectively. Let 0M,N ∈ CM×N and

0M ∈ CM denote an all-zero matrix and an all-zero vector, respectively. The vector

e(R)p ∈ CR is equal to one at entry p and zero elsewhere. Matlab index notation will

be used to denote submatrices of a given matrix. For example, A(1 : k, :) denotes the submatrix of A consisting of the rows from 1 to k.

Let Blockdiag (X1, . . . ,XR) denote a block-diagonal matrix holding the matrices

{Xr} on its block-diagonal. The notation triu (·) and diag (·) is used to denote the

operator that sets the strictly lower triangular elements and off-diagonal elements of a matrix equal to zero, respectively. Let A ∈ CJ×K with J, K ≥ R and x ∈ R, then

(3)

triuR(A) ∈ CR×R and sign (x) are equal to

triuR(A) = triu (A (1 : R, 1 : R)) , sign (x) =

   1 , x > 0 0 , x = 0 −1 , x < 0 .

Moreover, let A ∈ CI×J, then Vec (A) ∈ CIJ denotes the column vector defined

by (Vec (A))i+(j−1)I = (A)ij. Let a ∈ CIJ, then the reverse operation is Unvec (a) =

A ∈ CI×J such that (a)

i+(j−1)I = (A)ij. Let A ∈ CI×I, then Vecd (A) ∈ CI

denotes the column vector defined by (Vecd (A))i = (A)ii. Let A ∈ CI×J, then

Dk(A) ∈ CJ×J denotes the diagonal matrix holding row k of A on its diagonal.

The k-rank of a matrix A is denoted by k (A). It is equal to the largest integer k(A) such that every subset of k (A) columns of A is linearly independent.

1.2. Canonical Polyadic Decomposition (CPD). A N th-order rank-1 ten-sor X ∈ CI1×···×IN is defined as the outer product of non-zero vectors a(n) ∈ CIn,

n∈ {1, . . . , N}, such that Xi1...iN =

QN n=1a

(n)

in . The rank of a tensor X is equal to

the minimal number of rank-1 tensors that yield X in a linear combination. Assume that the rank of X is R, then it can be written as

X =

R

X

r=1

a(1)r ◦ · · · ◦ a(N )r , (1.1)

where a(n)r ∈ CIn. In this paper decomposition (1.1) will be referred to as the

Canon-ical Polyadic Decomposition (CPD) of X . Let us stack the vectors {a(n)r } into the

matrices

A(n)=h a(n)1 , · · · ,a(n)R i

∈ CIn×R, n∈ {1, . . . , N} . (1.2)

The matrices A(n)in (1.2) will be referred to as the CPD factor matrices. In this paper we say that the CPD of the tensor X in (1.1) is partially symmetric if A(m) = A(n) or A(m)= A(n)∗for some m 6= n.

The CPD of X in (1.1) is said to be unique if all the N-tupletsA(1), . . . ,A(N ) satisfying (1.1) are related via A(n) = A(n)Π∆A(n), ∀n ∈ {1, . . . , N} , where Π is a

permutation matrix and {∆A(n)} are diagonal matrices satisfying

QN

n=1∆A(n)= IR.

The following three matrix representations of a CPD of a third-order tensor X ∈ CI1×I2×I3 will be used throughout the paper. Let X(i1··)∈ CI2×I3 denote the matrix

such that X(i1··) i2i3 = Xi1i2i3, then X (i1··)= A(2)D i1  A(1)A(3)T and CI1I2×I3∋ X (1) ,    X(1··) .. . X(I1··)    =      A(2)D1  A(1) .. . A(2)DI1  A(1)     A (3)T =A(1) ⊙ A(2)A(3)T.

Let the matrices X(·i2·) ∈ CI3×I1 be constructed such that X(·i2·)

i3i1 = Xi1i2i3, then X(·i2·)= A(3)D i2  A(2)A(1)T and CI2I3×I1∋ X (2) ,    X(·1·) .. . X(·I2·)    =      A(3)D1  A(2) .. . A(3)DI2  A(2)     A (1)T =A(2) ⊙ A(3)A(1)T.

(4)

Let X(··i3)∈ CI1×I2 satisfy X(··i3) i1i2 = Xi1i2i3, then X (··i3)= A(1)D i3  A(3)A(2)T and CI1I3×I2∋ X (3) ,    X(··1) .. . X(··I3)    =      A(1)D1  A(3) .. . A(1)DI3  A(3)     A (2)T =A(3) ⊙ A(1)A(2)T.

In practice, we are usually only interested in a low-rank approximation of X . Typically the least-squares cost function

fA(1),A(2),A(3)= I3 X i3=1 X(··i3) − A(1)Di3  A(3)A(2)T 2 F (1.3)

is used. Unfortunately a minimizer of (1.3) may not exist [10, 14]. That is, instead of a minimizer the cost function has an infimum and the minimization may yield diverging components [14].

1.3. Simultaneous Generalized Schur Decomposition (SGSD). Given a tensor X ∈ CI1×I2×I3 of rank R and I

1, I2≥ R, a SGSD of X is defined by

X(··i3)= QR(i3)ZT,

∀i3∈ {1, . . . , I3} , (1.4)

where Q ∈ CI1×I1 and Z ∈ CI2×I2 are unitary matrices and

R(i3)= " R(i3) 0R,I2−R 0I1−R,R 0I1−R,I2−R # ∈ CI1×I2 (1.5) in which R(i3)

∈ CR×R are upper triangular matrices. In practice, the rank of X may

be larger than R and an approximate SGSD is of interest. The unknown matrices Q, Z and {R(i3)

} will be found by minimizing the least-squares cost function

gQ, Z, {R(i3)}= I3 X i3=1 X(··i3)− QR(i3)ZT 2 F , (1.6)

where Q ∈ CI1×I1 and Z ∈ CI2×I2 are unitary matrices and R(i3)∈ CI1×I2 is of the

form (1.5).

It can be shown in a similar way as in [1], that the problem of minimizing the cost function (1.6) is equivalent to the maximization of the cost function

h(Q, Z) = I3 X i3=1 triuR  QHX(··i3)Z∗ 2 F . (1.7)

Let us stack the entries of the upper triangular part in r(i3)=hR(i3)(1, 1), R(i3)(1 : 2, 2), . . . , R(i3)(1 : R, R)i

T

∈ CR(R+1)2 .

We have r(i3)= WHVec



X(··i3)with W given by

Q =q1, . . . ,qI1  ∈ CI1×I1 Z = [z1, . . . ,zI2] ∈ C I2×I2 W = [z1⊗ q1,z2⊗ q1,z2⊗ q2, . . . ,zR⊗ q1, . . . ,zR⊗ qR] ∈ CI1I2× R(R+1) 2 .

(5)

Due to the reformulation of the SGSD problem from (1.6) into (1.7), as suggested in [1], it is clear that an optimal solution for the SGSD of X exists. Indeed, due to the continuity of the function (1.7) and the compactness of its domain one can conclude that an optimal solution to (1.7) always exists which implies that an optimal solution to (1.6) also always exists.

2. Link between SGSD and CPD. The computation of CPD via SGSD was proposed in [5, 20]. In this section we will formulate more explicitly than in [5, 20] how the two decompositions are connected. The derivation will make use of the following lemma.

Lemma 2.1. Consider A ∈ CI×Rwith k (A) ≥ 2. Then there exists a nonsingular matrix N ∈ CI×I for which A = NA is such that D

j1 A

−1

Dj2 A



exists and has distinct non-zero diagonal elements for some j1, j2∈ {1, . . . , I}.

Proof. A proof can for instance be found in [19].

In the following proposition a generalized eigenvalue is a scalar λ ∈ C which reduces the rank of a pencil, say X(··1)− λX(··2)∈ CI1×I2.

Proposition 2.2. Given a rank-R tensor X ∈ CI1×I2×I3 of which the CPD

involves the factor matrices A(n) ∈ CIn×R, n ∈ {1, 2, 3}, such that it has matrix

representations

X(··i3)= A(1)D i3



A(3)A(2)T, i3∈ {1, . . . , I3} . (2.1)

Assume that A(1) and A(2) have full column rank and kA(3) ≥ 2. If there exist unitary matrices Q ∈ CI1×I1 and Z ∈ CI2×I2 such that

R(··i3)= QHX(··i3)Z= " R(··i3) 0R,I2−R 0I1−R,R 0I1−R,I2−R # ∈ CI1×I2, i 3∈ {1, . . . , I3},(2.2)

where R(··i3)∈ CR×R are upper triangular matrices, then there exists a permutation

matrix P ∈ RR×R and a diagonal matrix D ∈ CR×R such that

A(1)P= QR, A(2)P= ZL, A(3)PD=          VecdR(··1) T VecdR(··2)T .. . VecdR(··I3) T          , (2.3) in which R=  R 0I1−R,R  ∈ CI1×R, R∈ CR×R is upper triangular, (2.4) L=  L 0I2−R,R  ∈ CI2×R, L∈ CR×R is lower triangular. (2.5)

The other way around, if A(1) admits the QR-factorization A(1)= QR and A(2) the QL-factorization A(2) = ZL, then (2.2) holds with {R(··i3)

} upper triangular. Proof. We first show the second part of the proposition. Substitution of A(1) = QR and A(2)= ZL in (2.1) immediately yields (2.2) with R(··i3)= RDi3



A(3)LT upper triangular.

(6)

We now show the first part of the proposition. From Lemma 2.1 we know that kA(3) ≥ 2 implies that there exists a nonsingular matrix N ∈ CI3×I3 for which

A(3)= NA(3) is such that Dj1  A(3) −1 Dj2 

A(3)exists and has distinct non-zero diagonal entries for some j1, j2∈ {1, . . . , I3}. We denote X(1)= X(1)NT. We have

X(··j1)= A(1)Dj1  A(3)A(2)T (2.6) X(··j2)= A(1)Dj2  A(3)A(2)T. (2.7)

The distinct diagonal entries of Dj1

 A(3)

−1

Dj2



A(3) are the generalized eigen-values of the pencil X(··j1)

− λX(··j2)

. The matrices of right and left eigenvectors are 

A(2)T† and A(1)†, respectively.

Unitary matrices Q ∈ CI1×I1 and Z ∈ CI2×I2 satisfying (2.2) yield a Generalized

Schur Decomposition of the pair (X(··j1),X(··j2)): R(··j1)= QHX(··j1)Z, R(··j1)= triu R  R(··j1) (2.8) R(··j2)= QHX(··j2)Z, R(··j2)= triu R  R(··j2), (2.9) where R(··j1) and R(··j2)

are upper triangular. The diagonal entries of the diagonal matrix diagR(··j1)

diagR(··j2)−1

also correspond to the generalized eigenvalues of the pencil X(··j1)− λX(··j2). There exists a permutation matrix P ∈ RR×R such

that PTDj1  A(3) −1 Dj2  A(3)P = diagR(··j1)diagR(··j2) −1 . The pencil of upper triangular matrices R(··j1)

− λR(··j2)

has upper triangular matrices of right and left eigenvectors, which we denote by ER ∈ CR×R and EL ∈ CR×R, respectively.

Consider ER=  ER 0I1−R,R  ∈ CI1×R, E L=  EL 0I2−R,R  ∈ CI2×R,

then ERand ELare matrices of right and left eigenvectors, respectively, of the pencil

R(··j1)− λR(··j2). Combining (2.6)–(2.7) with (2.8)–(2.9) we obtain as in (2.3) that

 PTA(2)T†= Z∗E R⇔ A(2)P = Z  E†RT = ZL , (2.10) PTA(1)†= ELQH ⇔ A(1)P = Q (EL)†= QR , (2.11) where R =  R 0I1−R,R  = (EL)†, L =  L 0I2−R,R  =E†R T

in which R and LT are upper triangular matrices. Since ER and EL have full

col-umn rank, the matrices L and R must also have full colcol-umn rank. By inserting (2.10) and (2.11) into (2.2) we get R(··i3) = RPD

i3



A(3)PTLT. Let R(··i3)

(7)

R(··i3)(1 : R, 1 : R) and D = diag Rdiag L and recall that PTD i3  A(3)P = Di3  A(3)P, then

diagR(··i3)= diagRPTDi3

 A(3)PLT = PTDi3  A(3)Pdiag Rdiag L = Di3  A(3)PD, ∀i3∈ {1, . . . , I3} .

We finally obtain DPTA(3)T =hVecdR(··1), . . . ,VecdR(··I3)i.

Recall that the factor matrices A(1), A(2) and A(3) of the (approximate) CPD of the tensor X ∈ CI1×I2×I3 are typically found by minimizing the cost function

fA(1),A(2),A(3)= I3 X i3=1 X (··i3) − A(1)Di3  A(3)A(2)T 2 F. (2.12)

Let A(1) = QR be the QR factorization of A(1) where Q ∈ CI1×I1 is a unitary

matrix and R ∈ CI1×R is a matrix of the form (2.4). Similarly, let A(2) = ZL

be the QL factorization of A(2) where Z ∈ CI2×I2 is a unitary matrix and L ∈

CI2×R is a matrix of the form (2.5). Due to Proposition 2.2 we can replace the

matrices {RDi3



A(3)LT} in (2.12) by the upper triangular matrices {R(··i3)} and

still preserve the uniqueness of the solution. This means that the SGSD method will attempt to minimize the cost function

gQ, Z, {R(··i3)}= I3 X i3=1 X(··i3)− QR(··i3)ZT 2 F. (2.13)

We know from subsection 1.3 that minimizing the cost function (2.13) is equivalent to maximizing the cost function

h(Q, Z) = I3 X i3=1 triuR  QHX(··i3)Z∗ 2 F. (2.14)

Thus, the SGSD-CP method first computes the unitary matrices Q and Z that make the matrices {X(··i3)} as upper triangular as possible by maximizing (2.14). This means that we have gone from the original non-unitary optimization problem (2.12), which may not have an optimal solution, to the unitary optimization problem (2.14) in which an optimal solution always exists.

3. Generalized version of the extended QZ method. Various methods have been proposed to numerically maximize the cost function (2.14). For instance, a two-sided Jacobi method for the case when the CPD is real valued has been proposed in [5]. Moreover, a one-sided Jacobi method has been proposed in [21] which is also valid for complex data. In [20] the extended QZ method was proposed for the case when I1= I2= R. In this section we generalize the extended QZ method to the case

I1, I2≥ R. The unitary matrices Q and Z are generated as

Q = S Y s=1 IY1−1 r=0 Q[r, s] , Z = S Y s=1 IY2−1 r=0 Z[r, s],

(8)

where S denotes the number of executed sweeps, Q[r, s]H =  Ir−1 0r−1,I1−r+1 0I1−r+1,r−1 Us  ∈ CI1×I1 Z[r, s] =   0R−r,rAs 0Ir,R−rR−r 0R−r,ICs2−R Bs 0I2−R,R−r Ds   ∈ CI2×I2,

where Us ∈ C(I1−r+1)×(I1−r+1) is unitary and As ∈ Cr×r, Bs ∈ C(I2−R)×r, Cs ∈

Cr×(I2−R) and D

s∈ C(I2−R)×(I2−R) are such that Z[r, s] is unitary. In the extended

QZ method the matrices Q and Z are updated in alternating manner. The updating rules are X(··i3) ← Q[r, s]HX(··i3), Q ← Q · Q[r, s] and X(··i3) ← X(··i3)Z[r, s],

Z ← Z · Z[r, s].

The matrix Q[r, s]H is designed to minimize the below-diagonal part of the rth

column of the matrices {X(··i3)}. Let eX(r)∈ C(I1−r+1)×I3 be defined by

e

X(r)=hX(··1)(r : I1, r), · · · , X(··I3)(r : I1, r)

i

, r∈ {1, . . . , min (R, I1− 1)} ,

and let eX(r) = UΣVH denote the compact SVD of eX(r). A unitary matrix Us that

minimizes the Frobenius norm of 

UsXe (r)

(2 : I1− r + 1, :) is Us= UH.

The matrix Z[r, s] is designed to minimize the part of the matrices {X(··i3)}

that corresponds to the vectors {X(··i3)(r, 1 : r − 1)} and {X(··i3)(r, R + 1 : I

2)}. Let b X(r)∈ CI3×(r+I2−R)be defined by b X(r) =    X(··1)(r, 1 : r) , X(··1)(r, R + 1 : I2) .. . X(··I3)(r, 1 : r) , X(··I3)(r, R + 1 : I 2)    , r∈ {2 − sign (I2− R) , . . . , R} ,

and let bX(r)= UΣVH denote the compact SVD of bX(r). A unitary matrix Z∗s=



Vs Xs

Ws Ys



that minimizes the Frobenius norm of  b X(r)  Vs Xs Ws Ys  (:, [1 : r − 1, r + 1 : r+ I2− R]) is Z∗s= [V(:, 2 : r), V(:, 1), V(:, r + 1 : r + I2− R)].

An outline of the generalized version of the extended QZ procedure is presented as Algorithm 1.

The following sections 4, 5 and 6 will discuss methods to find A(1), A(2)and A(3) once Q and Z have been found.

4. SGSD1-CP. The original SGSD1-CP method proposed in [20] will be re-viewed in this section. The working assumption is that the factor matrices A(n) ∈ CIn×R, n ∈ {1, 2, 3} have full column rank. Let X ∈ CI1×I2×I3 be a tensor of rank

Rconstructed from the full column rank factor matrices A(n)∈ CIn×R, n ∈ {1, 2, 3},

such that

X(··i3)= A(1)D i3



(9)

Algorithm 1 Outline of the extended QZ method when I1, I2≥ R.

Initialize: Q and Z Repeat until convergence for r = 1 to min (R, I1− 1) do e X(r)=hX(··1)(r : I1, r), · · · , X(··I3)(r : I1, r) i UΣVH= svd  e X(r)  X(··i3)(r : I 1,:) ← UHX(··i3)(r : I1,:) Q(:, r : I1) ← Q(:, r : I1)U end for for r = R to max (1, R − I2+ 2) do b X(r)=    X(··1)(r, 1 : r) , X(··1)(r, R + 1 : I2) .. . X(··I3)(r, 1 : r) , X(··I3)(r, R + 1 : I 2)    UΣVH= svd  b X(r)  V ← [V(:, 2 : r), V(:, 1), V(:, r + 1 : r + I2− R)] X(··i3)(:, [1 : r, R + 1 : I 2]) ← X(··i3)(:, [1 : r, R + 1 : I2])V Z(:, [1 : r, R + 1 : I2]) ← Z(:, [1 : r, R + 1 : I2])V∗ end for

Assume that Q and Z have been found and let R(··i3)

= triuR



QHX(··i3)Z∗. We

know from Proposition 2.2 that A(3) = hVecdR(··1), . . . ,VecdR(··I3)iT

up to the inherent column scaling and permutation ambiguities. Assume that A(3) has been found and compute F = X(1)



A(3)T†. In the exact case, we know that F = A(1)⊙ A(2) and therefore A(1) and A(2) follow from the R decoupled best rank-1 approximation problems min a(1)r ,a(2)r fr− a(1)r ⊗ a(1)r 2 F = mina(1)r ,a(2)r Unvec (fr) − a(2)r a(1)Tr 2 F , r∈ {1, . . . , R} .

In the presence of noise a refinement of the factor matrices {A(n)} is often necessary. The subsequent refinement step should be implemented by a method which fully takes the CPD structure of the problem into account. For optimization methods, see [17] and references therein.

5. SGSD2-CP. In this section the SGSD2-CP method for computing a third-order CPD will be presented. This method attempts to take the relations among the triangular matrices {R(··i3)

} into account when computing A(3) whereas the SGSD1-CP method only uses the diagonals of the triangular matrices {R(··i3)} when

comput-ing A(3). As in the SGSD1-CP method, the working assumption of the SGSD2-CP method is that all three factor matrices A(n)∈ CIn×R, n ∈ {1, 2, 3} have full column

rank.

(10)

column rank factor matrices A(n)∈ CIn×R, n ∈ {1, 2, 3}, such that X(··i3)= A(1)D i3  A(3)A(2)T ∈ CI1×I2, ∀i 3∈ {1, . . . , I3} .

Assume that Q and Z have been found. Construct the tensor R ∈ CR×R×I3 such

that Ri1i2i3 = R (··i3) i1i2 = triuR  QHX(··i3)Z∗ i1i2 , then R(··i3) = RD i3  A(3)LT. Moreover, let R(i1··) ∈ CR×I3 satisfy the relation R(i1··)

i2i3 = Ri1i2i3, then R (i1··) =

LDi1 R



A(3)T. Stack the matrices {R(i1··)

} into the matrix

CR2×I3 ∋ R(1)=    R(1··) .. . R(R··)    =    LD1 R  .. . LDR R     A(3)T = R ⊙ LA(3)T.

We will now present an algorithm to compute the factor matrices from Col R(1)

 . Let R(1)= UΣWHdenote the compact SVD of R(1), where U ∈ CR

2×R

and W ∈ CI3×R

are columnwise orthonormal matrices and Σ ∈ CR×R is a positive diagonal matrix.

The Khatri-Rao product of two full column rank matrices has full column rank and consequently the matrix R⊙ L has full column rank. Since the matrix A(3) has full column rank by assumption we can now conclude that there exists a nonsingular matrix M ∈ CR×R such that

W∗M−T = A(3) (5.1)

UΣM = R⊙ L ⇔ UΣmr= rr⊗ lr, r∈ {1, . . . , R} . (5.2)

Let ar= rr(1 : r) and br= lr(r : R), then (5.2) is equivalent to

UΣmr= X 1≤p≤r X r≤q≤R  e(R)p ⊗ e(R)q  (ar⊗ br) = E(r)(ar⊗ br) , r∈ {1, . . . , R} , (5.3) where E(r) = [e1⊗ er, . . . ,e1⊗ eR, . . . ,er⊗ er, . . . ,er⊗ eR] ∈ CR 2×r(R−r+1) . , (5.4) Equation (5.3) can be written as

UΣmr= E(r)(ar⊗ br) ⇔ h UΣ, −E(r)i  a mr r⊗ br  = 0R2, r∈ {1, . . . , R} . (5.5) Proposition 5.2 will show that (5.5) has a unique solution. Moreover, it will provide us with a method to solve the system (5.5). In order to prove it we need the following lemma.

Lemma 5.1. Let R ∈ CR×R be a nonsingular upper triangular matrix and let L∈ CR×R be a nonsingular lower triangular matrix. Then the matrix S = R ⊙ L ∈

CR2×R has the following property

(11)

Proof. The proof is straightforward, noting that S (t + (t − 1)R, u) = (R)tu(L)tu (5.6) and      (R)tu∈ C , u < t (R)tu6= 0 , u= t (R)tu= 0 , u > t (5.7)      (L)tu= 0 , u < t (L)tu6= 0 , u= t (L)tu∈ C , u > t (5.8)

By combining (5.6), (5.7) and (5.8) we can conclude that

S (r + (r − 1)R, :) = αre(R)Tr , αr∈ C, ∀r ∈ {1, . . . , R} .

Proposition 5.2. Let R = [r1, . . . , rR] ∈ CR×R be a nonsingular upper

triangu-lar matrix and let L = [l1, . . . , lR] ∈ CR×R be a nonsingular lower triangular matrix.

Let E(r) be of the form (5.4). If the column vectors of U ∈ CR2×R

constitute a basis for Col (R ⊙ L), then the matrix

h

U,−E(r)i∈ CR2×(R+r(R−r+1)) (5.9)

has rank R + r(R − r + 1) − 1.

Proof. Consider the basis {rm⊗ lm} for Col (R ⊙ L). On one hand, rr⊗ lr is a

linear combination of the columns of E(r). On the other hand, by Lemma 5.1, vector rn⊗ ln, with n 6= r has a non-zero at position n + (n − 1)R, while vectors rp⊗ lp,

n6= p 6= r, and the columns of E(r) are zero at that position. Hence, matrix h

R ⊙ L, −E(r)i

has rank r(R −r +1)−1. In conclusion, the matrix (5.9) has rank R+r(R−r +1)−1. Proposition 5.2 tells us that we may ignore the Kronecker product structure ar⊗

br when solving (5.5) since the matrix

h

UΣ, −E(r)i has a one-dimensional kernel. We now reduce the number of equations by projecting on the orthogonal complement of ColE(r).

Corollary 5.3. Let R = [r1, . . . , rR] ∈ CR×R and L = [l1, . . . , lR] ∈ CR×R

be a nonsingular upper and lower triangular matrix, respectively. Define the diagonal projection matrix

CR2×R2 ∋ D(r) = IR2− E(r)E(r)T, (5.10)

where E(r)∈ CR2×r(R−r+1) is of the form (5.4). If the column vectors of U ∈ CR2×R

constitute a basis for Col (R ⊙ L), then the matrix

(12)

has rank R − 1, ∀r ∈ {1, . . . , R}.

Proof. Consider the columns {rs⊗ ls} of R ⊙ L. On one hand, rr⊗ lr is a linear

combination of the columns of E(r) and is therefore set equal to zero by D(r). On the other hand, by Lemma 5.1, vector rn⊗ ln, with n 6= r has a non-zero at position

n+ (n − 1)R, while vectors rp⊗ lp, n 6= p 6= r, are zero at that position. The entries at

position n + (n − 1)R, 1 ≤ n 6= r ≤ R, are not set equal to zeros by D(r). We conclude that D(r)(R ⊙ L) has rank R − 1. Hence, any matrix U of which the columns form a basis for Col (R ⊙ L) yields a matrix D(r)U of rank R − 1.

By projecting (5.5) on the orthogonal complement of E(r) we obtain

U(r)mr= 0R2, r∈ {1, . . . , R} (5.12)

with U(r)= D(r)UΣ and D(r)defined in (5.10). According to Corollary 5.3, U(r)still has a one-dimensional kernel. In practice, we first remove the all-zero row-vectors of U(r) to obtain eU(r)∈ C(R2−r(R−r+1))×R, and we solve

e

U(r)mr= 0R2−r(R−r+1), r∈ {1, . . . , R} . (5.13)

Note that the set of R2 equations in R + r(R − r + 1) unknowns (5.5) has been

reduced to a set of R2− r(R − r + 1) homogeneous equations in R unknowns. In

the case of an approximate tensor decomposition, we set mr equal to the singular

vector associated with the smallest singular value of eU(r). Once M = [m1, . . . ,mR]

has been obtained from (5.12), then from (5.1) we get A(3) = W∗M−T. Compute F = X(1)



A(3)T† = X(1)MTWT, then as in the SGSD1-CP method, the matrices

A(1) and A(2)now follow from the R decoupled best rank-1 approximation problems min a(1)r ,a(2)r Unvec (fr) − a(2)r a(1)Tr 2 F, r∈ {1, . . . , R} .

Finally, we obtain A(3) via relation A(3)T =A(1)⊙ A(2)†X(1).

6. SGSD3-CP. In this section we present the SGSD3-CP method for computing a third-order CPD where only two of the factor matrices are required to have full column rank. This is in contrast to the SGSD1-CP and SGSD2-CP methods which both require that all three of the involved factor matrices have full column rank. In subsection 6.1 we first consider the case when kA(3)≥ 2 while in subsection 6.2 we relax this constraint to kA(3)≥ 1.

6.1. SGSD3-CP with kA(3)≥ 2. Let the third-order tensor X ∈ CI1×I2×I3

of rank R be constructed from the two full column rank factor matrices A(1)∈ CI1×R,

A(2)∈ CI2×Rand the factor matrix A(3)∈ CI3×R with k

 A(3)≥ 2 such that X(··i3)= A(1)D i3  A(3)A(2)T, i3∈ {1, . . . , I3} .

Assume that Q and Z have been found and denote R(··i3) = triu R



QHX(··i3)Z∗.

As in the SGSD1-CP method, we find A(3) from the relation A(3)T =hVecdR(··1), . . . ,Vecd (R)(··I3)i

(13)

Let the tensor R ∈ CR×R×I3 be constructed such that R i1i2i3 = R (··i3) i1i2 , then R (··i3)= RDi3 

A(3)LT. Moreover, let R(·i2·)∈ CI3×R satisfy the relation R(·i2·)

i3i1 = Ri1i2i3,

then R(·i2·)= A(3)D i2 L



RT. Stack the matrices {R(·i2·)} into the matrix

CRI3×R∋ R (2) =    R(·1·) .. . R(·R·)    =    A(3)D1 L .. . A(3)DR L     RT =L ⊙ A(3)RT.

Let R(2) = UΣVH denote the compact SVD of R(2). Since L has full column rank,

the matrix L ⊙A(3)has full column rank. This implies that there exists a nonsingular matrix M ∈ CR×R such that

UM = L⊙ A(3)⇔ Umr= lr⊗ a(3)r , r∈ {1, . . . , R} . (6.1) Let br= lr(r : R) ∈ CR−r+1 and E(r)=he(R)r ,e (R) r+1, . . . ,e (R) R i ∈ CR×(R−r+1), (6.2) then lr= E(r)br and lr⊗ a(3)r =  E(r)⊗ a(3)r  br. (6.3)

By inserting (6.3) into (6.1) we obtain Umr=  E(r)⊗ a(3)r  br⇔ h U, −E(r)⊗ a(3)r i  mr br  = 0R2, r∈ {1, . . . , R} .(6.4)

Due to the following Proposition 6.1 the linear system (6.4) has a unique solution. The least-squares solution to (6.4) is given by the right singular vector of the matrix h

U, −E(r)⊗ a(3)r

i

associated with its smallest singular value. Proposition 6.1. Given A(3) ∈ CI3×R with k



A(3)≥ 2 and let L ∈ CR×R be

a nonsingular lower triangular matrix. Let E(r) be of the form (6.2). If the column vectors of U ∈ CRI3×R constitute a basis for Col



L⊙ A(3), then the matrix h

U,−E(r)⊗ a(3)r i∈ CRI3×(2R−r+1) (6.5)

has rank 2R − r.

Proof. Consider the columns {lr⊗ a(3)r } of Col

 L ⊙ A(3), then U = [u1, . . . ,uR] = h l1⊗ a(3)1 , . . . ,lR⊗ a(3)R i =        l11a(3)1 0I3 · · · 0I3 l21a(3)1 l22a(3)2 . .. ... .. . ... . .. 0I3 lR1a(3)1 lR2a(3)2 · · · lRRa(3)R        . We also have E(r)⊗ a(3)r = h e(R)r ⊗ a(3)r , . . . ,e (R) R ⊗ a (3) r i .

(14)

Since ur= lr⊗ a(3)r = R X q=r lqre(R)q ⊗ a(3)r

the problem of determining the rank of h

U, −E(r)⊗ a(3)r

i

∈ CRI3×(2R−r+1)

reduces to finding the rank of h u1, . . . ,ur−1,ur+1, . . . ,uR,e(R)r ⊗ a(3)r ,e (R) r+1⊗ a(3)r , . . . ,e (R) R ⊗ a (3) r i ∈ CRI3×(2R−r). (6.6) By reorganizing the column vectors of (6.6) we obtain

h u1 . . . ur−1 e(R)r ⊗ a(3)r ur+1 e(R)r+1⊗ a (3) r . . . uR e(R)R ⊗ a (3) r i =                   l1,1a(3)1 0I3 0I3 0I3 0I3 0I3 0I3 .. . . .. ... ... ... ... ... ... lr−2,1a(3)1 0I3 0I3 0I3 0I3 0I3 0I3 lr−1,1a(3)1 lr−1,r−1a(3)r−1 0I3 0I3 0I3 0I3 0I3 lr,1a(3)1 lr,r−1a(3)r−1 a (3) r 0I3 0I3 0I3 0I3 lr+1,1a(3)1 lr+1,r−1a(3)r−1 0I3 lr+1,r+1a (3) r+1 a (3) r 0I3 0I3 lr+2,1a(3)1 lr+2,r−1a(3)r−1 0I3 lr+2,r+1a (3) r+1 0I3 0I3 0I3 .. . ... ... ... . .. ... ... lR,1a(3)1 lR,r−1a(3)r−1 0I3 lR,r+1a (3) r+1 0I3 lR,Ra (3) R a (3) r                   . (6.7) The matrix (6.7) is lower block-triangular. Since kA(3)≥ 2 and L is nonsingular the matrices on the block-diagonal of (6.7) have full column rank which means that the matrix (6.7) has full column rank. Hence, the matrix (6.5) has rank 2R − r. Consequently any matrix U of which the columns form a basis for ColL ⊙ A(3) yields a matrix of rank 2R − r.

After L ∈ CR×R has been computed, then via b

r in (6.4) we obtain L =

[LT,0T I2−R,R]

T ∈ CI2×R and A(2) = ZL. Finally, we compute A(1) via relation

A(1)T =A(2)⊙ A(3)†X(2).

6.2. SGSD3-CP with kA(3)= 1. Assume now that the third-order tensor X ∈ CI1×I2×I3 of rank R is constructed from the two full column rank factor matrices

A(1) ∈ CI1×R and A(2) ∈ CI2×R but the factor matrix A(3) ∈ CI3×R now only has

kA(3)= 1. In this case A(3) can be written as

A(3) =h1TL1⊗ c1, . . . ,1 T LQ⊗ cQ

i

(15)

up to a permutation and scaling of the columns of A(3) and R =PQq=1Lq. We can

write the decomposition of X as follows

X = Q X q=1  AqBTq  ◦ cq, (6.9) where A(1)= [A1, . . . ,AQ] , Aq ∈ CI1×Lq A(2)= [B1, . . . ,BQ] , Bq ∈ CI2×Lq.

The decomposition (6.9) is known as the (Lq, Lq,1)-Block Term Decomposition (BTD)

of X [9]. Since AqBTq = AqFqF−1q B T

q for any nonsingular matrix Fq ∈ CLq×Lq we

can from X in (6.9) only find A(1) and A(2)up to a column permuted block-diagonal matrix. We now explain that the SGSD3-CP method is still valid even if kA(3)= 1. It will based on generalizations of Propositions 2.2 and 6.1.

Proposition 6.2. Given a rank-R tensor X ∈ CI1×I2×I3 of which the (L

q, Lq,

1)-BTD involves the factor matrices A(n)∈ CIn×R, n ∈ {1, 2, 3}, such that it has matrix

representations

X(··i3)= A(1)D i3



A(3)A(2)T, i3∈ {1, . . . , I3} . (6.10)

Assume that A(1) and A(2) have full column rank and A(3) is of the form (6.8) with k(C) ≥ 2. If there exist unitary matrices Q ∈ CI1×I1 and Z ∈ CI2×I2 such that

R(··i3)= QHX(··i3)Z= " R(··i3) 0R,I2−R 0I1−R,R 0I1−R,I2−R # ∈ CI1×I2, i 3∈ {1, . . . , I3}, (6.11)

where R(··i3)∈ CR×R are upper triangular matrices, then there exists a permutation

matrix P ∈ RR×R, a diagonal matrix D ∈ CR×R and nonsingular matrices F q ∈ CLq×Lq such that A(1)FP= QR , A(2)F−1P= ZL , A(3)PD=          VecdR(··1) T VecdR(··2) T .. . VecdR(··I3) T          ,(6.12)

in which F = Blockdiag (F1, . . . , FQ), R ∈ CI1×R and L ∈ CI2×R are of the forms

(2.4) and (2.5), respectively. Conversely, if A(1) admits the QR-factorization A(1)= QRand A(2) the QL-factorization A(2)= ZL, then (6.11) holds with {R(··i3)} upper triangular.

Proof. The second part of the proposition is obvious. Indeed, by substitut-ing A(1) = QR and A(2) = ZL in (2.1) immediately yields (6.11) with R(··i3) = RDi3



A(3)LT upper triangular.

We now show the first part of the proposition. Since k (C) ≥ 2 we know from Lemma 2.1 that there exists a nonsingular matrix N ∈ CI3×I3 for which C = NC

(16)

is such that Dj1 C

−1

Dj2 C



exists and has distinct non-zero diagonal entries for some j1, j2∈ {1, . . . , Q}. We denote X(1)= X(1)NT. We have

X(··j1) = A(1)Dj1  A(3)A(2)T (6.13) X(··j2) = A(1)Dj2  A(3)A(2)T. (6.14)

The diagonal entry of Dj1

 A(3)

−1

Dj2



A(3)denoted by λqis the generalized

eigen-values of the pencil X(··j1)

− λqX (··j2)

with algebraic multiplicity Lq. The matrices

of right and left eigenvectors areA(2)T† and A(1)†, respectively. Since Lq ≥ 1 the

right and left eigenvectors can only be unique up to a column permuted block-diagonal matrix of the form of F = Blockdiag (F1, . . . ,FQ) in which Fq ∈ CLq×Lq.

Unitary matrices Q ∈ CI1×I1 and Z ∈ CI2×I2 satisfying (6.11) yield a Generalized

Schur Decomposition of the pair (X(··j1)

,X(··j2) ): R(··j1)= QHX(··j1)Z, R(··j1)= triu R  R(··j1) (6.15) R(··j2)= QHX(··j2)Z, R(··j2)= triu R  R(··j2) (6.16) where R(··j1) and R(··j2)

are upper triangular. The diagonal entries of the diagonal matrices diagR(··j1)

diagR(··j2)−1

also correspond to the generalized eigenvalues of the pencil X(··j1)− λX(··j2). Combining (6.13)–(6.14) with (6.15)–(6.16) we obtain the first part of the proposition in the same way as explained in Proposition 2.2.

Proposition 6.3. Given A(3)=h1TL1⊗ c1, . . . , 1 T LQ⊗ cQ i ∈ CI3×R, C= [c 1, . . . , cQ] ∈ CI3×Q (6.17)

with k (C) ≥ 2 and R =PQq=1Lq. Let L ∈ CR×R be a nonsingular lower triangular

matrix and let E(r) be of the form (6.2). Let the column vectors of U ∈ CRI3×R

constitute a basis for ColL⊙ A(3). Denote L(q)=Pqp=1Lp, then the matrix

G(r) =hU,−E(r)⊗ a(3) r

i

∈ CRI3×(2R−r+1) (6.18)

has rank 2R − r + Lq when r ∈ {L(q−1)+ 1, . . . , L(q)}. Furthermore, when r ∈

{L(q−1)+ 1, . . . , L(q)}, then the column vectors of V(r) ∈ C(2R−r+1)×(L(q)−r+1) given

by V(r)=    mL(q−1)+r bL(q−1)+r  ,   mL(q−1)+r+1 0 bL(q−1)+r+1   , · · · ,   mL(q) 0L(q)−r bL(q)     (6.19)

constitute a basis for NullG(r), where the vectors mp∈ CRensures that G(r)V(r)=

0RI3,(L(q−1)−r+1) and bp= rp(1 : p).

Proof. The proof is analogous to Proposition 6.1. Consider the columns {lr⊗a(3)r }

of L ⊙ A(3), then U = [u1, . . . ,uR] = h l1⊗ a(3)1 , . . . ,lR⊗ a(3)R i .

(17)

Since a(3)L

(q−1)+1 = a (3)

L(q−1)+2 = · · · = a (3)

L(q) we know that when r ∈ {L(q−1) +

1, . . . , L(q)} then the column vectors of



ur,ur+1, . . . ,uL(q)



can be written as lin-ear combinations of the column vectors of E(r)⊗ a(3)r . Hence, when r ∈ {L(q−1)+

1, . . . , L(q)} the problem of determining the rank of

h

U, −E(r)⊗ a(3)r

i

∈ CRI3×(2R−r+1) (6.20)

reduces to finding the rank of H(r)∈ CRI3×(2R−r+Lq)given by

H(r) =hu1, . . . ,ur−1,uL(q)+1, . . . ,uR,E (r)

⊗ a(3)r

i

. (6.21)

As observed in the proof of Proposition 6.1, the matrix (6.21) is a column permuted lower block-triangular with nonsingular matrices on its block-diagonal. Hence, the matrix (6.20) has rank 2R − r + Lq when r ∈ {L(q−1)+ 1, . . . , L(q)}. Consequently

any matrix U of which the columns form a basis for ColL ⊙ A(3)yields a matrix G(r)given by (6.18) of rank 2R − r + Lq when r ∈ {L(q−1)+ 1, . . . , L(q)}.

It is also clear from (6.21) that the column vectors of V(r) in (6.19) form a basis for NullG(r).

Due to Propositions 6.2 and 6.3 we can still compute the CPD of a tensor via the SGSD3-CP procedure up to its inherent ambiguities even if kA(3)= 1.

7. CPD with a partial symmetry. In many applications the CPD of a tensor has a partial symmetry. This is for instance the case when dealing with a tensor in which covariance matrices are stacked [3, 15, 8]. As a further motivation, let us consider the unsymmetric CPD in which one of the factor matrices, say A(3), has full column rank. For instance, let X ∈ CI1×I1×I3 of rank R be constructed from the

factor matrices A(1) ∈ CI1×R, A(2) ∈ CI2×R and full column rank A(3) ∈ CI3×R. It

has the following matrix representation CI1I2×I3 ∋ X

(1) =



A(1)⊙ A(2)A(3)T. (7.1) A mild uniqueness condition that applies in this case is stated next.

Theorem 7.1. Consider the tensor X ∈ CI1×I2×I3 with rank R and matrix

representation X(1)=  A(1)⊙ A(2)A(3)T. Define C ∈ CI12I 2 2×R(R−1)/2 by c(i

1−1)(I1I22)+(j1−1)I22+(i2−1)I2+j2,(r2−2)(r2 −1)2 +r1 =

a(1)i1,r1 a(1)i1,r2 a(1)j1,r1 a (1) j1,r2 · a(2)i2,r1 a(2)i2,r2 a(2)j2,r1 a (2) j2,r2 , where 1 ≤ i1, j1≤ I1, 1 ≤ i2, j2 ≤ I2 and 1 ≤ r1< r2 ≤ R. If A(3) and C have full

column rank, then the CPD of X is unique [6, 13]. Generically1, this is true if [6] 2R(R − 1) ≤ I1(I1− 1)I2(I2− 1) and R ≤ I3. (7.2)

Condition (7.2) is also sufficient for generic uniqueness when A(1) = A(2)∗, with A(1) generic complex. The condition R ≤ I3 is meant to ensure that A(3) has full column

rank.

1A CPD property is called generic if it holds with probability one when the entries of the factor matrices are drawn from absolutely continuous probability density functions.

(18)

Assume that the conditions stated in Theorem 7.1 are satisfied. Let X(1) =

UΣVH denote the compact SVD of X(1), then there exists a nonsingular matrix

M ∈ CR×R such that A(1)

⊙ A(2) = UΣM and A(3) = M−1V∗. It was explained in [6] that the CPD problem (7.1) can be transformed into the partially symmetric CPD problem

CR2×R∋ Y(1)= (M ⊙ M) DT, (7.3) where D ∈ CR×R, see [6] for the construction of Y

(1). Hence, the problem of

comput-ing a CPD with a partial symmetry must be considered as a core problem in numerical multilinear algebra.

In subsection 7.1 we review how a partial symmetry was dealt with in the SGSD1-CP method in [20]. Next, in subsections 7.2 and 7.3 we explain how to incorporate a partial symmetry into the SGSD2-CP and SGSD3-CP methods. We limit the discus-sion to the case where A(1)= A(2), but the results are also valid when A(1)= A(2)∗. 7.1. SGSD1-CP with a partial symmetry. Consider a tensor X ∈ CI1×I1×I3

with rank R and matrix representation CI12×I3 ∋ X

(1)=



A(1)⊙ A(2)A(3)T =A(1)⊙ A(1)A(3)T. (7.4) Assume that the factor matrices A(1) and A(3) in (7.4) have full column rank. Then in [20] the computation of a CPD with the partial symmetry A(1)= A(2) was done via the SGSD1-CP method. This was done by ignoring the relation between the factor matrices A(1) and A(2) and by just treating the problem as an unsymmetric CPD problem.

7.2. SGSD2-CP with a partial symmetry. Assume that the factor matrices A(1) and A(3) in (7.4) have full column rank. Instead of just ignoring the partial symmetry, we present a partially symmetric version of the SGSD2-CP method.

Let A(1) = QR be the QR factorization of A(1) where Q ∈ CI1×I1 is a unitary

matrix and R ∈ CI1×R is a matrix of the form (2.4). Similarly, let A(2)= ZL be the

QL factorization of A(2) where Z ∈ CI1×I1 is a unitary matrix and L ∈ CI1×R is a

matrix of the form (2.5). Since A(1) = QR = ZL = A(2) we can express L in terms of R and vice-versa:

L = WR , R = WHL , (7.5)

in which W = V(1 : R, 1 : R) and V = QHZ. We first determine Q and Z by maximizing

h(Q, Z) = I3 X i3=1 triuR  QHX(··i3)Z∗ 2 F.

Assume Q and Z have been found. Let the tensor R ∈ CR×R×I3 be constructed such

that Ri1i2i3 = R (··i3) i1i2 = triuR  QHX(··i3)Z∗ i1i2 , then R(··i3) = RD i3  A(3)LT. Moreover, let R(i1··) ∈ CR×I3 satisfy the relation R(i1··)

i2i3 = Ri1i2i3, then R (i1··) =

LDi1 R



A(3)T. Stack the matrices {R(i1··)

} into the matrix

CR2×I3 ∋ R (1)=    R(1··) .. . R(R··)    =    LD1 R .. . LDR R     A(3)T = R ⊙ LA(3)T. (7.6)

(19)

Let us first use (7.5) to express (7.6) in terms of R only. We left-multiply (7.6) by (IR⊗ W) and work with (IR⊗ W) R(1)instead of R(1). This in turn means that (7.6)

can be expressed in terms of R as follows S(1) = (IR⊗ W) R(1) = R ⊙ R

 A(3)T. We will now present an algorithm to compute the factor matrices from Col S(1)

 . Let S(1)= UΣVH denote the compact SVD of S(1), then there exists a nonsingular

matrix M ∈ CR×R such that

UM = R ⊙ R ⇔ Umr= rr⊗ rr, r∈ {1, . . . , R} . (7.7)

Let ar= rr(1 : r), then (7.7) is equivalent to

Umr= X 1≤p≤r X 1≤q≤r  e(R)p ⊗ e(R)q  (ar⊗ ar) = E(r)(ar⊗ ar) , r ∈ {1, . . . , R}, (7.8) where E(r)∈ CR2×r2 is given by E(r)=he(R)1 ⊗ e (R) 1 , . . . ,e (R) 1 ⊗ e(R)r , . . . ,e(R)r ⊗ e (R) 1 , . . . ,e(R)r ⊗ e(R)r i . (7.9) Equation (7.8) can be written as

h

UΣ, −E(r)i  amr

r⊗ ar



= 0R+r2, r∈ {1, . . . , R}. (7.10)

Proposition 7.3 tells us first that hUΣ, −E(r)i in (7.10) has an r-dimensional kernel. Second, it states that if we impose in (7.10) that an, 1 ≤ n ≤ R, are the

columns of a nonsingular upper triangular matrix, then we can determine ar in a

unique manner. In order to prove it we need the following lemma.

Lemma 7.2. Let R ∈ CR×R be a nonsingular upper triangular matrix, then the matrix S = R ⊙ R ∈ CR2×R

has the following property

S(r + (r − 1)R, 1 : r) = αre(r)Tr , αr∈ C, r ∈ {1, . . . , R} . (7.11)

Proof. The proof is straightforward, noting that

S (t + (t − 1)R, u) = (R)tu(R)tu (7.12) and      (R)tu∈ C , u < t (R)tu6= 0 , u= t (R)tu= 0 , u > t (7.13)

By combining (7.12) and (7.13) we get (7.11).

Proposition 7.3. Let R = [r1, . . . , rR] ∈ CR×R be a nonsingular upper

trian-gular matrix and let E(r) ∈ CR2×r2

be of the form (7.9). If the column vectors of U∈ CR2×R

constitute a basis for Col (R ⊙ R), then the matrix G(r)=hU,−E(r)i∈ CR2×(R+r2)

(20)

has rank R + r(r − 1). Furthermore, let the column vectors of V(r) ∈ C(R+r2)×r constitute a basis for NullG(r), then W(r) = V(r) R+ (r − 1)r + 1 : R + r2,:

Cr×r has rank 1 and ColW(r)= Col (a

r), in which ar= rr(1 : r) ∈ Cr.

Proof. Let us first prove that G(r)in (7.14) has an r-dimensional kernel. Consider the columns {rn⊗ rn} of Col (R ⊙ R). On one hand, the vectors {rn⊗ rn}n≤r are

linear combinations of the columns of E(r). On the other hand, by Lemma 7.2, vector rn⊗rn, with n > r has a non-zero entry at position n+(n−1)R, while vectors rp⊗rp,

p≤ r, and the columns of E(r) are zero at that position. Furthermore, due to the property (7.11) we also know that the vectors {rp⊗ rp}p>r are linearly independent.

Consequently, the matrixhR ⊙ R, −E(r)ihas rank R+r(r −1). In conclusion, matrix (7.14) has rank R + r(r − 1).

Let us now prove that W(r) has rank 1 and ColW(r) = Col (ar), 1 ≤ r ≤

R. Note that E(r)(bp⊗ bp) = rp⊗ rp when bp =

 ap 0r−p  , and therefore xp =  mp bp⊗ bp 

∈ NullG(r), 1 ≤ p ≤ r, where the vectors mp ∈ CR are chosen

such that G(r)xp = 0R2, 1 ≤ p ≤ r. Due to Lemma 7.2 we know that the vectors

{bp⊗ bp}rp=1and hence the vectors {xp}rp=1 are linearly independent. Consequently,

{xp}rp=1 is a basis for Null



G(r). Let the column vectors of V(r) ∈ C(R+r2)×r constitute an alternative basis for NullG(r), then there exists a nonsingular matrix N ∈ Cr×r such that V(r)= [x1, . . . ,xr] N =  m1 ,· · · , mr b1⊗ b1 br⊗ br  N . (7.15) From (7.15) we observe that the column vectors of

W(r) = V(r)((r − 1) R + 1 : (r − 1) R + r, :) ∈ Cr×r

are all proportional to ar= br, i.e., the sth column vector of W(r) satisfies w (r)

s =

αsarfor some αs∈ C. Thus, we can conclude that any matrix U of which the columns

form a basis for Col (R ⊙ R) yields a rank-1 matrix W(r) of which the column space ColW(r)= Col (ar), r ∈ {1, . . . , R}.

The following Corollary 7.4 tells us that by projecting on the orthogonal comple-ment of ColE(r)we may reduce the number of equations in (7.10).

Corollary 7.4. Let R = [r1, . . . , rR] ∈ CR×Rbe a nonsingular upper triangular

matrix and define the diagonal projection matrix

CR2×R2 ∋ D(r) = IR2− E(r)E(r)T, (7.16)

where E(r) ∈ CR2×r2

is of the form (7.9). If the column vectors of U ∈ CR2×R

constitute a basis for Col (R ⊙ R), then the matrix

CR2×R∋ U(r)= D(r)U (7.17) has rank R − r, r ∈ {1, . . . , R}. Moreover, let the column vectors of V(r) ∈ CR×r

constitute a basis for NullU(r)and CR2×r

(21)

W(r)((r − 1) R + 1 : (r − 1) R + r, :) ∈ Cr×r has rank 1 and ColZ(r) = Col (r r),

r∈ {1, . . . , R}.

Proof. Let us first prove that U(r) = D(r)U has rank R − r, r ∈ {1, . . . , R}. Consider the columns {rn⊗ rn} of R ⊙ R. On one hand, the vectors in the set

{rn⊗ rn}n≤r can be written as a linear combination of the column vectors E(r). On

the other hand, by Lemma 7.2, vector rn⊗ rn, with n > r has a non-zero entry at

position n + (n − 1)R, that is not set to zero by D(r). Furthermore, due to property (7.11) we know that the vectors {rn⊗ rn}n>r are linearly independent. Hence, we

can conclude that any matrix U of which the columns form a basis for Col (R ⊙ R) yields a matrix U(r)= D(r)U of rank R − r, r ∈ {1, . . . , R}.

Let us now prove that W(r) has rank 1 and ColW(r)= Col (ar), 1 ≤ r ≤ R.

First note that U(r) = D(r)U = D(r)(R ⊙ R) F for some nonsingular matrix F ∈ CR×R. Since D(r) sets the non-zero entries of {rp⊗ rp}p≤r equal to zero while the vectors {rp⊗ rp}p>r are still linearly independent we conclude that {e(R)p }p≤r is a

basis for NullU(r). This means that

W(r)= (R ⊙ R) FE(r)N

= ([r1, . . . ,rr] ⊙ [r1, . . . ,rr]) M . (7.18)

for some nonsingular matrices M, N ∈ Cr×r, where E(r)=he(R)1 , . . . ,e (R) r

i

∈ CR×r. From (7.18) we observe that the column vectors of

Z(r)= W(r)((r − 1) R + 1 : (r − 1) R + r, :)

are all proportional to rr, that is z(r)s = αsrrfor some αs∈ C. Thus, we can conclude

that any matrix U of which the columns form a basis for Col (R ⊙ R) yields a matrix Z(r) with rank 1 and ColZ(r)= Col (rr), r ∈ {1, . . . , R}.

By projecting (7.10) on the orthogonal complement of E(r) we obtain

U(r)mr= 0R2, r∈ [1, . . . , R} (7.19)

with U(r)= D(r)UΣ and D(r)defined in (7.16). Due to Corollary 7.4, U(r)still has an r-dimensional kernel. Corollary 7.4 also tells us that we can find rrfrom Null

 U(r). We first remove the all-zero row-vectors of U(r), obtaining eU(r) ∈ C(R2−r2)×R, so that (7.19) reduces to

e

U(r)mr= 0R2−r2, r∈ [1, . . . , R} . (7.20)

Note that set (7.10) of R2 equations in R + r2 unknowns has been reduced to a set

of R2− r2 equations in R unknowns. Next, we set the column vectors of V(r) equal

to the right singular vectors associated with the r smallest singular values of eU(r). Construct W(r) = U(r)V(r) and set ar equal to the singular vector associated with

the largest singular value of Z(r)= W(r)((r − 1) R + 1 : (r − 1) R + r, :). The vector rr is now given by rr =

 aT

r,0TR−r

T

∈ CR. Once the vectors {r

r} have been found,

(22)

So far, we have been working with S(1) = R ⊙ R



A(3)T. As an alterna-tive, we may also use (7.5) to express (7.6) in terms of L only. We form T(1) =



WH⊗ IR



R(1) = L⊙ L



A(3)T and work as follows. Let T(1) = UΣVH denote

the compact SVD of T(1), then there exists a nonsingular matrix N ∈ CR×R such

that Unr= lr⊗ lr= X r≤p≤R X r≤q≤R  e(R)p ⊗ e(R)q  (br⊗ br) = E (r) (br⊗ br) , (7.21) where br= lr(r : R), and E (r) ∈ CR2×(R−r+1)2 is given by E(r)=he(R)r ⊗ e(R)r , . . . ,e(R)r ⊗ e (R) r+1, . . . ,e (R) R ⊗ e(R)r , . . . ,e (R) R ⊗ e (R) R i . (7.22) As in the upper triangular case, we first determine nrby solving a homogeneous linear

system. Let CR2×R

∋ U(r) = D(r)U in which CR2×R2

∋ D(r) = IR2 − E (r)

E(r)T. Let the column vectors of V(r) ∈ CR×(R−r+1) constitute a basis for NullU(r)

, W(r)= UV(r) and

Z(r)= W(r)(1 : (R − r + 1), :) ∈ C(R−r+1)×(R−r+1). (7.23) As in the upper triangular case, the vector br now follows from the best rank-1

approximation of Z(r) in (7.23).

We overall find a column of A(1) from the corresponding column of R (via S(1))

or L (via T(1)), depending on which has the least number of nonzero entries. This

reduces the computational complexity. Consequently, if a(1)r denotes the rth column

vector of A(1), then when r ≤ ⌊R+1

2 ⌋ we construct a (1)

r from R. On the other hand,

when r ≥ ⌊R+1

2 ⌋ + 1 we construct a (1)

r from L. Thus, we obtain

A(1)=  Q · R  :, 1 :  R+ 1 2  ,Z · L  :,  R+ 1 2  + 1 : R  .

The matrix A (3) now follows via relation A (3)T =A(1)⊙ A(1)†X(1).

7.3. SGSD3-CP with a partial symmetry. In this subsection we adapt the SGSD3-CP method to the case where a CPD has a partial symmetry. The method assumes that A(1)has full column rank and kA(3)≥ 1. This is in contrast with the previously discussed SGSD1-CP and SGSD2-CP methods for computing a CPD with a partial symmetry which require that both A(1) and A(3) have full column rank.

Consider the QR factorization A(1)= QR, where Q ∈ CI1×I1 is a unitary matrix

and R ∈ CI1×R is a matrix of the form (2.4). Consider also the QL factorization

A(1) = ZL, where Z ∈ CI1×I1 is a unitary matrix and L ∈ CI1×R is a matrix

of the form (2.5). Due to Proposition 2.2 or 6.2, the first step is to compute the unitary matrices Q and Z that make the matrices {X(··i3)} as upper triangular as

possible by maximizing f (Q, Z) = PI3 i3=1 triuR  QHX(··i3)Z∗ 2 F. Assume that

Q and Z have been found and construct the tensor R ∈ CR×R×I3 according to

Ri1i2i3 = R (··i3) i1i2 = triuR  QHX(··i3)Z∗ i1i2

(23)

partial symmetry we find A(3) from A(3)T = hVecdR(··1), . . . ,VecdR(··I3)i.

Next, we determine A(1). Let R(·i2·) ∈ CI3×R satisfy the relation R(·i2·)

i3i1 = Ri1i2i3,

then R(·i2·)= A(3)D i2 L



RT. Stack the matrices {R(·i2·)} into the matrix

CRI3×R∋ R (2) =    R(·1·) .. . R(·R·)    =    A(3)D1 L .. . A(3)DR L     RT =L ⊙ A(3)RT.

Let R(2)= UΣVH denote the compact SVD of R(2)and let M ∈ CR×R be a

nonsin-gular matrix such that

UM = L ⊙ A(3)⇔ Umr= lr⊗ a(3)r , r∈ {1, . . . , R} . (7.24)

Furthermore, let br = lr(r : R) ∈ CR−r+1, then due to Proposition 6.1 or 6.3 we

know that we can obtain L by solving the homogeneous linear systems h U, −E(r)⊗ a(3)r i  mr br  = 0I3R, r∈ {1, . . . , R} , (7.25)

where E(r)∈ CR×(R−r+1)is of the form (6.2).

Alternatively, let R(··i3) ∈ CR×R satisfy the relation R(··i3)

i1i2 = Ri1i2i3, then

R(··i3)= RD i3



A(3)LT. Stack the matrices {R(··i3)

} into the matrix

CRI3×R∋ R (3) =    R(··1) .. . R(··I3)    =      RD1  A(3) .. . RDI3  A(3)     L T =A(3)⊙ RLT.

Compute the compact SVD R(3)= SΣVHand let N ∈ CR×Rbe a nonsingular matrix

such that

SN = A(3)⊙ R ⇔ Snr= a(3)r ⊗ rr, r∈ {1, . . . , R} . (7.26)

Furthermore, let ar = rr(1 : r) ∈ Cr, then again due to Proposition 6.1 or 6.3 we

know that we can obtain R by solving the homogeneous linear systems h S, −a(3) r ⊗ F(r) i  nr ar  = 0I3R, r∈ {1, . . . , R} , (7.27) where F(r)=he(R)1 ,e (R) 2 , . . . ,e(R)r i ∈ CR×r. (7.28)

The influence of perturbation noise can be reduced by to simultaneously make use of relations (7.25) and (7.27). Recall from (7.5) that L = WR and R = WHL, in which W = V(1 : R, 1 : R) and V = QHZ. From (7.26) and relation L = WR we obtain (II3⊗ W) Snr= a (3) r ⊗ lr=  a(3)r ⊗ E(r)  br, (7.29)

(24)

where br = lr(r : R) ∈ CR−r+1 and E(r) ∈ CR×(R−r+1) is given by (6.2). By

com-bining (7.25) and (7.29) we get " U 0I3R,R −E (r) ⊗ a(3)r 0I3R,R (II3⊗ W) S −a (3) r ⊗ E(r) #   mnrr br   = 02I3R, r∈ {1, . . . , R} .(7.30)

Similarly, from (7.24) and relation R = WHL we obtain  WH⊗ II3  Umr= rr⊗ a(3)r =  F(r)⊗ a(3)r  ar, (7.31)

where ar= rr(1 : r) ∈ Cr and F(r)∈ CR×r is given by (7.28). By combining (7.27)

and (7.31) we get "  WH⊗ II3  U 0I3R,R −F (r) ⊗ a(3)r 0I3R,R S −a (3) r ⊗ F(r) #   mnrr ar   = 02I3R, r∈ {1, . . . , R}.(7.32)

We overall find a column of A(1)from the corresponding column of R (via (7.30)) or L (via (7.32)), depending on which has the least number of nonzero entries. Con-sequently, if a(1)r denotes the rth column vector of A(1), then when r ≤ ⌊R+12 ⌋ we

construct a(1)r from R. On the other hand, when r ≥ ⌊R+12 ⌋ + 1 we construct a(1)r

from L. Thus, we get A(1)=  Q · R  :, 1 :  R+ 1 2  ,Z · L  :,  R+ 1 2  + 1 : R  .

8. CPD with a partial Hermitian symmetry. In this section we consider the partial Hermitian symmetry A(2) = A(1)∗. This is for instance relevant for ap-plications involving covariance matrices of complex data [3, 8, 2]. Let us define the tensor Y ∈ CI1×I1×I3 by y

i1i2i3 = x ∗

i2i1i3 for all indices. Let us now stack X and Y

in Z ∈ CI1×I1×2I3 in such a way that Z (1) =



X(1),Y(1)

 ∈ CI2

1×2I3. In the case of

partial Hermitian symmetry, the first factor matrices of X and Y are both equal to A(1), and the second factor matrices of X and Y are both equal to A(1)∗. We have

Z(1)=



A(1)⊙ A(1)∗ hA(3),A(3)∗iT. (8.1) We may now study the uniqueness of the CPD of Z in order to obtain uniqueness results for X . We formulate as Theorem 8.3 a relaxation of Theorem 7.1 for the case with partial Hermitian symmetry. The proof makes use of Lemma 8.2 which in turn makes use of the following result.

Lemma 8.1. Given an analytic function f : Cn → C. If there exists a vector

x∈ Cn such that f (x) 6= 0, then the set { x | f (x) = 0 } is of Lebesgue measure zero.

Proof. For a proof, see for instance [12]. Lemma 8.2. Let P ∈ CI×R, then hPT, PHi

T

∈ C2I×R generically has rank

min (2I, R).

Proof. The proof is straightforward, simply notice that  P P∗  =  II √ −1 · II II −√−1 · II   Re {P} Im {P}  = T  Re {P} Im {P}  . (8.2)

(25)

If 2I ≥ R, then we let hRe {P}T,Im {P}TiT = hITR,0T2I−R,R

iT

and if 2I < R, then we let hRe {P}T,Im {P}TiT =hIT2I,0T2I,R−2I

iT

. Since T ∈ C2I×2I in (8.2) is

nonsingular we know that for this particular case the rank ofhPT,PHiT is equal to min (2I, R). By invoking Lemma 8.1 we can now conclude thathPT,PHiT generically has rank min (2I, R).

Theorem 8.3. Consider the tensor X ∈ CI1×I1×I3 with rank R and matrix

representation CI12×I3∋ X (1)=



A(1)⊙ A(1)∗A(3)T.Define C ∈ CI14×R(R−1)/2 by

c(i

1−1)I13+(j1−1)I12+(i2−1)I1+j2,(r2−2)(r2 −1)2 +r1 =

a(1)i1,r1 a(1)i1,r2 a(1)j1,r1 a(1)j1,r2 · a(1)∗i2,r1 a(1)∗i2,r2 a(1)∗j2,r1 a(1)∗j2,r2 , where 1 ≤ i1, j1, i2, j2≤ I1 and 1 ≤ r1< r2≤ R. If h A(3)T, A(3)Hi T

and C have full column rank, then the CPD of X is unique. Generically, this is true if

2R(R − 1) ≤ I12(I1− 1)2 and R≤ 2I3. (8.3)

Proof. By exploiting the partial symmetry X(··i3) = A(1)

Di3



A(3)A(1)H we can build the I3 additional matrix representations

Y(··i3)= X(··i3)H = A(1)D i3  A(3)∗A(1)H, i3∈ {1, . . . , I3} and obtain Z(1)∈ CI 2 1×2I3 given by Z(1) = h X(1),Vec  Y(··1), . . . ,VecY(··I3)i=A(1) ⊙ A(1)∗ hA(3)T,A(3)Hi. The theorem now follows directly from Theorem 7.1 and Lemma 8.2.

In the case of complex Hermitian symmetry one may also resort to Theorem 7.1. Generic bound (7.2) also applies, with I1= I2. Comparing condition (7.2) with (8.3)

it is clear that Theorem 8.3 provides a more relaxed bound. In applications such as [3, 8, 2] this means that fewer covariance matrices are needed.

Under the conditions in Theorem 8.3 we may compute the CPD of X through the CPD of Z as in [6] and briefly described in section 7. Let Z(1) = UΣVH denote the

compact SVD of Z(1)in (8.1), then there exists a nonsingular matrix M ∈ CR×R such

that A(1)⊙ A(1)∗ = UΣM andhA(3)T,A(3)HiT = M−1V∗. The CPD of X follows

from the partially symmetric CPD (7.3) also in case where A(3) is rank deficient. Once A(1) and A(1)∗ have been obtained from M, we obtain A(3) via relation

A(3)T =  A(1)⊙ A(1)∗ A(1)∗⊙ A(1) † X(1) Y∗(1)  .

Moreover, if the CPD contains the partial Hermitian symmetry A(1)= A(2)∗, then due to (8.1) we know that as long as A(1) andhA(3)T,A(3)Hi

T

have full column rank the SGSD1-CP and SGSD2-CP methods can still be used, i.e., the rank constraint on A(3) has been relaxed to a rank constraint onhA(3)T,A(3)HiT.

(26)

9. Extension to N th-order tensors. In this section we briefly explain how to extend the SGSD-CP methods to N th-order tensors. Given a tensor X ∈ CI1×···×IN

with rank R constructed from the factor matrices A(n) ∈ CIn×R, n ∈ {1, . . . , N},

such that X = R X r=1 a(1)r ◦ · · · ◦ a(N )r . (9.1)

By appropriate reshaping the tensor (9.1) has the following matrix representation

X = (A ⊙ B) CT, (9.2) where A = A(1)⊙ · · · ⊙ A(P )∈ CI×R, I= P Y n=1 In B = A(P +1)⊙ · · · ⊙ A(Q)∈ CJ×R, J = Q Y n=P +1 In C = A(Q+1)⊙ · · · ⊙ A(N )∈ CK×R, K= N Y n=Q+1 In

in which 1 ≤ P < Q ≤ N. By ignoring the structural relations among the matrices in A, B and C, then (9.2) reduces to a third-order CPD problem. Assume that A and B have full column rank and k (C) ≥ 1, then in order to compute A and B from (9.2) the discussed SGSD-CP methods can be applied. Let A = QR be the QR factorization of A, where Q ∈ CI×I is a unitary matrix and R ∈ CI×R is a matrix

of the form (2.4) and A = ZL be the QL factorization of A where Z ∈ CJ×J is a

unitary matrix and L ∈ CJ×R is a matrix of the form (2.5), then cost function (2.14)

is equal to g(Q, Z) = K X k=1 triuR  QHX(··k)Z∗ 2 F , (9.3) where X(··k)= ADk(C) BT, k∈ {1, . . . , K} .

Assume that A, B and C have been found via one of the proposed SGSD methods. The factor matrices now follow from best rank-1 tensor approximation problems. For instance, from A we obtain

min a(1)r ,..., a(P )r ar− a(1)r ⊗ · · · ⊗ a(P )r 2 F, r∈ {1, . . . , R} . (9.4)

Notice that when P = 2, then (9.4) reduces to best rank-1 matrix approximation problems which can be solved by standard numerical linear algebra methods. By sim-ilar procedure we obtain {A(n)}Qn=P +1 and {A

(n)

}N

n=Q+1 from rank-1 approximation

(27)

If A = B∗, then we work with the tensor Z = (A ⊙ A∗)  C C∗ T ∈ CI2×2K (9.5)

obtained via the procedure described in section 8.

To summarize, we can compute the CPD of an N th-order tensor by treating it as a third-order tensor. Note that a third-order tensor is usually highly overdetermined and therefore we do not expect to lose any significant accuracy by combing the modes of an N th-order tensor.

10. Conclusion. Based on a link between the SGSD and CPD it is possible to address some CPD problems as SGSD problems. We reviewed the original SGSD-CP method which was called SGSD1-CP in this paper. It was originally designed to only jointly diagonalize a set of square matrices. Hence, we first generalized the extended QZ method to the non-square case.

The SGSD1-CP method does not fully take the relations among the involved triangular matrices into account. This motivated us to propose the SGSD2-CP which attempts to take the relations among the involved triangular matrices into account. In the derivation of SGSD2-CP we showed that it is possible to deduce the involved triangular matrices from the column space of a matrix representation of the tensor. Moreover, we provided a numerical method to compute the triangular factor matrices from the knowledge of the column space of the matrix representation of the tensor of interest.

Another drawback of the original SGSD1-CP method is that it requires that all three of the involved factor matrices have full column rank. This motivated us to develop the SGSD3-CP method which only requires that two of the involved factor matrix to have full column rank. This is in fact the necessary condition for the SGSD approach to the CPD problem. Again, we provided a numerical method to compute the involved triangular factor matrices.

In many practical problems the CPD has a partial (Hermitian) symmetry. We explained how to incorporate such a constraint into the SGSD2-CP and SGSD3-CP methods. For the case when the CPD having a partial Hermitian symmetry we also proved a new uniqueness result. Finally, we explained how to extend the SGSD-CP methods for computing a N th-order SGSD-CPD with possibly also partial (Hermitian) symmetries.

REFERENCES

[1] K. Abed-Meraim and Y. Hua, A Least-Squares Approach to Joint Schur Decomposition, Proc. ICASSP, May 12-15, Seattle, USA, 1998.

[2] K. Abed-Meraim and Y. Xiang and J. H. Manton and Y. Hua, Blind Source Separation Using Second-Order Cyclostationarity Statistics, IEEE Trans. Signal Processing, 49(2001), pp. 694–701.

[3] A. Belouchrani and K. Abed-Meraim and J.-F. Cardoso and E. Moulines, A Blind Source Separation Technique Using Second-Order Statistics, IEEE Trans. Signal Process-ing, 45(1997), pp. 434–444.

[4] P. Comon and M. Sørensen and E. Tsigaridas, Decomposing Tensors with Structured Matrix Factors Reduces to Rank-1 Approximations, Proc. ICASSP, March 14-19, Dallas, USA, 2010

[5] L. De Lathauwer and B. De Moor and J. Vandewalle, Computation of the Canonical Decomposition by means of a Simultaneous Generalized Schur Decomposition, SIAM J. Matrix Anal. Appl., 26(2004), pp. 295–327.

Referenties

GERELATEERDE DOCUMENTEN

Our proposed algorithm is especially accurate for higher SNRs, where it outperforms a fully structured decomposition with random initialization and matches the optimization-based

• We derive necessary and sufficient conditions for the uniqueness of a number of simultaneous matrix decompositions: (1) simultaneous diagonalization by equivalence or congruence,

We show that under mild conditions on factor matrices the CPD is unique and can be found algebraically in the following sense: the CPD can be computed by using basic operations

We find conditions that guarantee that a decomposition of a generic third-order tensor in a minimal number of rank-1 tensors (canonical polyadic decomposition (CPD)) is unique up to

De Lathauwer, Multiple Invariance ESPRIT for Nonuniform Linear Arrays: A Coupled Canonical Polyadic Decomposition Approach, ESAT-STADIUS, KU Leuven,

IV. MI-ESPRIT algorithm for NLA processing In this section we propose a MI-ESPRIT variant of the SD method for coupled CPD that is suited for shift- invariance structured

To alleviate this problem, we present a link between MHR and the coupled CPD model, leading to an improved uniqueness condition tailored for MHR and an algebraic method that can

The performance with respect to time, relative factor matrix error and number of iterations is shown for three methods to compute a rank-5 CPD of a rank-5 (20 × 20 ×