Tensor Decompositions Workshop Discussion Notes^{∗} American Institute of Mathematics (AIM) Palo Alto, CA

Carla D. Moravitz Martin ^{†}

July 19-23, 2004

∗This work was supported by AIM. †Center for Applied Mathematics, Cornell University, 657 Rhodes Hall, Ithaca, NY 14853-7510,

carlam@cam.cornell.edu

Contents

1 Introduction 5

2 Background 5

3 Notation 6 3.1 Vectorizing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 3.2 Matricizing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 3.3 n-mode Multiplication . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

4 Tensor Decompositions 7 4.1 CANDECOMP-PARAFAC Decomposition . . . . . . . . . . . . . . . . . . . . . . . 9 4.2 TUCKER Decomposition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 4.3 Diagonalization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9

5 MATLAB 10

6 Tensor Rank 10 6.1 Uniqueness . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 6.2 Why is rank and uniqueness of solutions important? . . . . . . . . . . . . . . . . . 11 6.3 Can we rely on orthogonal techniques for stability? . . . . . . . . . . . . . . . . . . 11 6.4 Computation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

7 Small Examples 12 7.1 Maximum Rank of a 2 × 2 × 2 tensor . . . . . . . . . . . . . . . . . . . . . . . . . . 12 7.2 Known Maximal Ranks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 7.3 Other Tensor Rank Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

8 Extending the Matrix SVD 15

9 Supersymmetric Tensors: Importance and Properties 15 9.1 Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 9.2 Open Questions related to Supersymmetric Tensors . . . . . . . . . . . . . . . . . . 16

10 Operations with the Khatri-Rao-Bro product and its relationship to the CP

Model 16

11 Zero-ing out elements in the core array 18

12 Efficiency in Computation of the TUCKER decomposition 18 12.1 Open Questions related to computation of TUCKER . . . . . . . . . . . . . . . . . 19

13 Alternate decompositions based on matrices rather than just vectors 19 13.1 Open Questions related to alternate decompositions . . . . . . . . . . . . . . . . . 19

14 Extending Linear Algebra Concepts and Algorithms 20 14.1 Open Questions related to extending linear algebra theory . . . . . . . . . . . . . . 20 14.2 Open Questions related to extending linear algebra algorithms . . . . . . . . . . . 22

15 Workshop Talks 23 15.1 Basics of Tensors, Carla D. Martin . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 15.2 Applications of three-mode techniques and outline of major difficulties, Pieter Kroo-

nenburg . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 15.3 Tensor Notation and a Matlab Tensor Class for Fast Algorithm Prototyping,

Tammy Kolda and Brett Bader . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 15.4 Canonical Tensor Decompositions, Pierre Comon (impromptu) . . . . . . . . . . . 24 15.5 Practical Problems and Solutions in Applied Multiway Analysis, Rasmus Bro … 24 15.6 3D SVD, Vince Fernando . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 15.7 An Introduction to Multilinear Algebra based Independent Component Analysis,

Lieven De Lathauwer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 15.8 TensorFaces, Alex Vasilescu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 15.9 Tensor Approximations and Computation of Inverse Matrices, Eugene Tyrtyshnikov 25 15.10PCA and Human Gait Patterns, Cleve Moler (impromptu) . . . . . . . . . . . . . 26 15.11Extracting Structure from Matrices and Tensors by Random Sampling, Michael

Mahoney (impromptu) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 15.12A Real Linear SVD Framework, Marko Huhtanen (impromptu) . . . . . . . . . . . 26 15.13Questions on Fast Solvers for Kronecker Decompositions, Ed D’Azevdeo (impromptu) 26 15.14What’s Possible and What’s Not Possible in Tensor Decompositions, Lek-Heng Lim

(impromptu) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 15.15Handwritten Digit Recognition by HOSVD, Berkant Savas (impromptu) . . . . . . 27 15.16Genomic Signal Processing, Orly Alter . . . . . . . . . . . . . . . . . . . . . . . . . 27 15.17Nature of Degenerate Solutions, Richard Harshman . . . . . . . . . . . . . . . . . . 27

16 Acknowledgements 27

1 Introduction

A workshop on Tensor Decompositions was held July 19-23, 2004 at the American Institute of Mathematics Research Conference Center in Palo Alto, CA. The workshop was organized by Gene Golub, Tammy Kolda, James Nagy, and Charles Van Loan. The workshop brought together researchers specializing in tensor decompositions as well as specialists in scientific computing, linear algebra, and applications. The purpose of the workshop was to collaborate in order to develop new theoretical and computational tools necessary to tackle larger problems and new applications of tensor decompositions. The workshop consisted of both pre-arranged and impromptu talks as well as break-out sessions and group discussions. The workshop also included a banquet and a hike in nearby Sam McDonald County Park.

Throughout the writeup there are many references to the talks given by participants. In most

cases, the talks can be found online at http://csmr.sandia.ca.gov/~tgkolda/tdw2004/.

2 Background

Matrix decompositions such as the singular value decomposition (SVD) are ubiquitous in numerical analysis.^{1} One way to think of the SVD is that it decomposes a matrix into a sum of rank-1 matrices. In other words, an I × J matrix A is expressed as a minimal sum of rank-1 matrices:

A = (u_{1} ∘ v_{1}) + (u_{2} ∘ v_{2}) + ⋯ + (u_{r} ∘ v_{r}),

where, u_{i} ∈ ℝ^{I} and v_{i} ∈ ℝ^{J} for all i = 1, 2, …, r. The operator “∘” denotes the outer product; thus the ij-th entry of the rank-1 matrix a ∘ b is the product of the i-th entry of a with the j-th entry of b, that is, (a ∘ b)_{ij} = a_{i}b_{j}. Such decompositions underlie fundamental concepts such as matrix rank and approximation theory and impact a range of applications including searching the world wide web, signal processing, medical imaging, and principal component analysis. The decompositions are well-understood mathematically, numerically, and computationally.

If we have data in three or more dimensions, then we are dealing with a higher-order tensor. Higher-order tensor (also known as multidimensional, multiway, or n-way array) decompositions are used in many applications and also have theoretical interest. A matrix is a tensor of order two. Extending matrix decompositions such as the SVD to higher-order tensors has proven to be quite difficult. Familiar matrix concepts such as rank become ambiguous and more complicated. One goal of a tensor decomposition is the same as for a matrix decomposition: to rewrite the tensor as a sum of rank-1 tensors. Consider, for example, an I × J × K tensor A. We would like to express A as the sum of rank-1 third-order tensors; i.e.,

A = (u_{1} ∘ v_{1} ∘ w_{1}) + (u_{2} ∘ v_{2} ∘ w_{2}) + ⋯ + (u_{r} ∘ v_{r} ∘ w_{r}),

where, u_{i} ∈ ℝ^{I}, v_{i} ∈ ℝ^{J}, and w_{i} ∈ ℝ^{K} for i = 1, 2, …, r. Note that if a, b, c are vectors, then (a ∘ b ∘ c)_{ijk} = a_{i}b_{j}c_{k}.

1Wording in this section was taken from the workshop proposal written by the workshop organizers.

3 Notation

Although there was much discussion regarding notation, a consensus emerged towards the end of the workshop. ^{2}

Indices are denoted by lowercase letters and span the range from 1 to the uppercase letter of the index, e.g., n = 1, 2, …, N. Vectors are denoted by lowercase boldface letters, e.g., u. Matrices by uppercase boldface letters, e.g., U. Tensors by calligraphic letters, e.g., A.

If A is an I_{1} × I_{2} × ⋯ × I_{N} tensor, then the order of A is N. The n-th mode, way, or dimension of A is of size I_{n}.

3.1 Vectorizing

In some expressions that follow, we make use of representing matrices and tensors as vectors. We define this notation here.

Let B ∈ ℝ^{I×J}. Then vec(B) is defined as

vec(B) = [B(:, 1) ; ⋮ ; B(:, J)] ∈ ℝ^{IJ}

Let b ∈ ℝ^{IJ}. Then reshape(b, I, J) is defined as

reshape(b, I, J) = [ b(1 : I) | b(I + 1 : 2I) | … | b((J − 1)I + 1 : IJ) ] ∈ ℝ^{I×J}.

In other words, reshape(b, I, J) creates an I × J matrix from b. The operators vec and reshape are related. Note that b = vec(reshape(b, I, J)) and also that

vec(B) = reshape(B, IJ, 1).

Now we use the vec operators on tensors. Let B ∈ ℝ^{I×J×K}. Then vec(B) is defined as

vec(B) = [ vec(B(:,:, 1)) ; ⋮ ; vec(B(:,:, K)) ] ∈ ℝ^{IJK}.

3.2 Matricizing

It is convenient to be able to represent tensors as matrices. Typically, all the columns along a certain mode are rearranged to form a matrix. Turning a tensor into a matrix in this way is called flattening or matricizing. There are multiple ways to order the columns, but we use the notation presented in L. De Lathauwer, B. De Moor, and J. Vandewalle, A multilinear singular value decomposition. SIAM Journal of Matrix Analysis and Applications, 21 (2000) 1253-1278.

2Wording and notation in this section is from the presentation and report by participants, T. Kolda and B.

Bader.

For a third-order tensor, there are three possible flattening matrices. The 2 × 2 × 2 case presented in figure 1 makes this clear.

3.3 n-mode Multiplication

To multiply a tensor times a matrix, we need to specify which mode of the tensor is multiplied by the columns of the matrix. If A is an I_{1} × I_{2} × ⋯ × I_{N} tensor and U is J_{n} × I_{n}, then the n-mode product is of size I_{1} × ⋯ × I_{n−1} × J_{n} × I_{n+1} × ⋯ × I_{N} and is denoted by

A ×_{n} U.

The formula for n-mode multiplication can be found in the paper by De Lathauwer, De Moor, and Vandewalle referenced above. The n-mode product exactly relates to multiplying U by the appropriate flattening of A. See table 1 for an example of n-mode multiplication when A is order three.

4 Tensor Decompositions

There are two types of decompositions used most in applications. The first decomposition was independently proposed in the following two papers:

J.D. Carroll and J. Chang, Analysis of individual differences in multidimensional scaling via an N-way generalization of “Eckart-Young” decomposition. Psychometrika, 35 (1970) 283-319.

R.A. Harshman, Foundations of the PARAFAC procedure: Model and conditions for an ’explanatory’ multi-mode factor analysis. UCLA Working Papers in phonetics, 16 (1970) 1-84.

Carroll and Chang named the model the CANDECOMP (CANonical DECOMPosition) and Harshman named the model PARAFAC (PARAlell FACtors). Thus, the model is currently known as the CANDECOMP-PARAFAC (CP) model.

The second decomposition is called the TUCKER model and was proposed in

L.R. Tucker, Some mathematical notes of three-mode factor analysis. Psychometrika, 31 (1966) 279-311.

The CP and TUCKER models extend to arbitrary ordered tensors. For clarity, we present them for tensors of order three.

Figure 1: Illustration of matricizing a third-order tensor

n-mode product equivalence with flattenings vectorized version
B_{1} ∈ ℝ^{L×I}  A ×_{1} B_{1}  B_{1} · A_{(1)}  (I ⊗ B_{1}) · vec(A_{(1)})
(L × J × K)
B_{2} ∈ ℝ^{L×J}  A ×_{2} B_{2}  B_{2} · A_{(2)}  (I ⊗ B_{2}) · vec(A_{(2)})
(I × L × K)
B_{3} ∈ ℝ^{L×K}  A ×_{3} B_{3}  B_{3} · A_{(3)}  (I ⊗ B_{3}) · vec(A_{(3)})
(I × J × L)

Table 1: n-mode Multiplication in Terms of Flattening Matrices on an I × J × K tensor, A

4.1 CANDECOMP-PARAFAC Decomposition

Given an I × J × K tensor, A, the CP model is a decomposition of the form

A = ∑_{i=1}^{R} u_{i} ∘ v_{i} ∘ w_{i}

where u_{i} ∈ ℝ^{I}, v_{i} ∈ ℝ^{J}, and w_{i} ∈ ℝ^{K} for i = 1, …, R. For the time being, the vectors are assumed to be real. However, the model is also valid for for complex-valued vectors. Note that there are no constraints (such as orthogonality) on the vectors u_{i}, v_{i}, w_{i}. However, one can impose constraints such as orthogonality, nonnegativity, or unimodality when needed.^{3}

Note that a CP decomposition always exists (take R to be the product of the sizes of each mode and take outer products of scaled standard basis vectors). Ideally, R is chosen to be the minimal number of terms needed to sum to A. When R is minimal, then R is known as the tensor rank and is discussed in §6.

4.2 TUCKER Decomposition

Given an I × J × K tensor, A, the TUCKER model is a decomposition of the form

A = ∑_{i=1}^{R_{1}} ∑_{j=1}^{R_{2}} ∑_{k=1}^{R_{3}} σ_{ijk}(u_{i} ∘ v_{j} ∘ w_{k})

where R_{1} ≤ I, R_{2} ≤ J, R_{3} ≤ K, u_{i} ∈ ℝ^{R_{1}}, v_{j} ∈ ℝ^{R_{2}}, and w_{k} ∈ ℝ^{R_{3}} for all i, j, k. The tensor, S = (σ_{ijk}), is called the core tensor. Note that the core tensor does not always need to have the same dimensions as A. The CP decomposition is a special case of the TUCKER decomposition.

There are no constraints on the vectors u_{i}, v_{j}, w_{k} in the TUCKER decomposition. However, one may impose constraints when needed. If the u_{i}, v_{j}, w_{k} are columns from orthogonal matrices U, V, W, then the TUCKER model is referred to as the Higher-Order Singular Value Decomposition, or HOSVD. The HOSVD can also be written in terms of n-mode products:

A = S ×_{1} U ×_{2} V ×_{3} W

where A, S ∈ ℝ^{I×J×K}, U ∈ ℝ^{I×I}, V ∈ ℝ^{J×J}, and W ∈ ℝ^{K×K}. The HOSVD always exists (it can be computed by taking the SVD of each of the flattening matrices). However, the HOSVD does not reveal the tensor rank unless the core is diagonal (see next section).

4.3 Diagonalization

We say that a tensor is diagonalizeable if the HOSVD yields a diagonal core tensor (i.e., σ_{ijk} = 0 unless i = j = k). Note that if the core is diagonal, we can write the HOSVD as a PARAFAC with orthogonality contraints. In general a tensor cannot be diagonalized. It is also not clear under what conditions permit a diagonalizeable core.

3See talk by R. Bro on the conference website.

5 MATLAB

We can store tensors in Matlab as multiway arrays. For example, a random 4 × 5 × 6 array can be initialized by

>> A=rand(4,5,6);

We can extract slices using the colon operator. Therefore the second slice of the tensor A can be referenced using A(:,:,2). Flattening matrices can be computed by permuting the indices. If A is 2 × 2 × 2, then the flattening matrices in figure 1 can be computed by

>> A1=reshape(permute(A,[1 3 2]),2,4);
>> A2=reshape(permute(A,[2 1 3]),2,4);
>> A3=reshape(permute(A,[3 2 1]),2,4);

We mention that there are other ways to flatten a tensor in Matlab. Note than n-mode multiplication can then be performed using table 1.

For the workshop, Tammy Kolda and Brett Bader created three Matlab classes for manipulating tensors.^{4} The classes allow for n-mode multiplication, flattening, and representing tensors in terms of the CP and TUCKER models that were described in §4. The documentation is given in

B.W. Bader and T.G. Kolda, A Preliminary Report on the development of Matlab Tensor Classes for Fast Algorithm Prototyping, Technical Report SAND2004-3487, Sandia National Laboratories, Livermore, CA, July 2004.

It is important to note that the Matlab classes do not contain algorithms, but rather should be used as a tool to quickly develop algorithms. Andersson and Bro have created an N-way Matlab toolbox to compute the CP and TUCKER decompositions.^{5}

6 Tensor Rank

The first group discussion dealt with important questions regarding tensor rank. Recall that when R is minimal and a tensor A can be written as

A = ∑_{i=1}^{R} u_{i} ∘ v_{i} ∘ w_{i}

then the tensor rank is R (we continue to use third-order examples for clarity).

The discussion centered around the importance of rank, uniqueness, and orthogonal decompositions.

4The associated m-files can be found at http://csmr.sandia.gov/~tgkolda/.

5The toolbox is available for download at http://www.models.kvl.dk/source/nwaytoolbox/.

6.1 Uniqueness

The advantage of the CP representation is its uniqueness under certain conditions. Specifically, for a matrix U, let K_{U} be the maximum number of randomly chosen columns having full rank. In other words, every set of K_{U} columns is linearly independent. For example, if U is a matrix with two identical columns, then K_{U} = 2. Given the CP decomposition,

A = ∑_{i=1}^{R} u_{i} ∘ v_{i} ∘ w_{i},

then the decomposition is unique if

K_{U} + K_{V} + K_{W} ≥ 2R + 2.

This fact was discussed in the talk by R. Bro and proved in

J.B. Kruskal. Rank, Decomposition, and Uniqueness for 3-Way and N-Way Arrays. In R. Coppi and S. Bolasco (editors), Multiway Data Analysis, 7-18. Amsterdam: Elsevier, 1989.

6.2 Why is rank and uniqueness of solutions important?

In some applications (e.g., chemometrics and psychometrics), the decomposition of a tensor into rank-1 tensors has empirical meaning. For example, in chemometrics uniqueness is required when analyzing fluorescence data to exactly determine the underlying factors. This is because the spectral decompositions reflect the true spectra of what is measured. The rank in this case is assumed to be known a priori.

6.3 Can we rely on orthogonal techniques for stability?

The answer to this question depends on the application. Some participants argued that uniqueness of solutions is not meaningful if the stability properties of the algorithm are unknown. On the other hand, in some applications (e.g., chemometrics), uniqueness is necessary and orthogonal decompositions do not have a good interpretation. The disadvantage of nonorthogonal decompositions is that sometimes they lead to degenerate solutions.^{6}

6.4 Computation

There is no known method to compute tensor rank in general (see §15.14). A paper on the computation of tensor rank brought to the attention of participants by L.-H. Lim is

J. Håstad, “Tensor rank is NP-complete,” J. Algorithms, 11 (4), December 1990, pp. 644–654.

6See talk by R. Harshman on the conference website.

7 Small Examples

In numerous discussions, participants cited various examples of tensors that had interesting properties. These examples were usually discussed within the context of comparing matrix rank to tensor rank and the complexity of understanding tensor rank. It was suggested to compile a list of these small examples, some of which are given below.

7.1 Maximum Rank of a 2 × 2 × 2 tensor

The maximum rank of a tensor depends on the field of scalars. The following illustrative examples are taken from

J.B. Kruskal. Rank, Decomposition, and Uniqueness for 3-Way and N-Way Arrays. In R. Coppi and S. Bolasco (editors), Multiway Data Analysis, 7-18. Amsterdam: Elsevier, 1989.

Example 7.1.1 Let the field of scalars be ℝ, and suppose that

A =  =

Then rank(A) = 2:

A = \frac{1}{2} [ \begin{matrix}1 \\ 1 \end{matrix} ] ∘ [ \begin{matrix}1 \\ 1 \end{matrix} ] ∘ [ \begin{matrix}1 \\ 1 \end{matrix} ] + \frac{1}{2} [ \begin{matrix}1 \\ −1 \end{matrix} ] ∘ [ \begin{matrix}1 \\ −1 \end{matrix} ] ∘ [ \begin{matrix}1 \\ −1 \end{matrix} ] .

Example 7.1.2 Let the field of scalars be ℝ, and suppose that

A =  =

Then rank(A) = 3:

A = \frac{1}{2} [ \begin{matrix}1 \\ 1 \end{matrix} ] ∘ [ \begin{matrix}1 \\ 1 \end{matrix} ] ∘ [ \begin{matrix}1 \\ 1 \end{matrix} ] + \frac{1}{2} [ \begin{matrix}1 \\ −1 \end{matrix} ] ∘ [ \begin{matrix}1 \\ −1 \end{matrix} ] ∘ [ \begin{matrix}1 \\ −1 \end{matrix} ] − 2 [ \begin{matrix}1 \\ 0 \end{matrix} ] ∘ [ \begin{matrix}1 \\ 0 \end{matrix} ] ∘ [ \begin{matrix}1 \\ 0 \end{matrix} ] .

Example 7.1.3 Let the field of scalars be ℂ, and suppose that

A =  =

Then rank(A) = 2:

A = \frac{1}{2} [ \begin{matrix}−i \\ 1 \end{matrix} ] ∘ [ \begin{matrix}−i \\ 1 \end{matrix} ] ∘ [ \begin{matrix}1 \\ i \end{matrix} ] + \frac{1}{2} [ \begin{matrix}i \\ 1 \end{matrix} ] ∘ [ \begin{matrix}i \\ 1 \end{matrix} ] ∘ [ \begin{matrix}1 \\ −i \end{matrix} ]

Examples 7.1.2 and 7.1.3 illustrate that the rank depends on the field of scalars. In general, the maximum rank of a 2 × 2 × 2 tensor over ℝ is 3 but the maximum rank over ℂ is 2.

Kruskal performed a Monte-Carlo simulation which showed that the set of rank-2, 2 × 2 × 2 real tensors fill about 79% of the 8-dimensional space, whereas rank-3 tensors fill about 21% of the space. The surprising result is that rank-deficient tensors have positive volume, as opposed to the matrix case.

During the discussion of this surprising rank result, C. Van Loan presented a follow up for the group to verify. In particular, assume that A is 2 × 2 × 2 and rank(A) = 2. Then

A = u_{1} ∘ v_{1} ∘ w_{1} + u_{2} ∘ v_{2} ∘ w_{2}

This implies that

A(:,:, 1) = w_{11}u_{1}v_{1}^{T} + w_{12}u_{2}v_{2}^{T}
= U [ \begin{matrix}w_{11} & 0 \\ 0 & w_{12} \end{matrix} ] V^{T}
A(:,:, 2) = w_{21}u_{1}v_{1}^{T} + w_{22}u_{2}v_{2}^{T}
= U [ \begin{matrix}w_{21} & 0 \\ 0 & w_{22} \end{matrix} ] V^{T} ,

which means that two matrices can be simultaneously diagonalized 79% of the time. The group offered a partial explanation by working backwards. Let A_{1} = A(:,:, 1) and A_{2} = A(:,:, 2) and form the matrices A_{1}A_{2}^{−1} and A_{2}^{−1}A_{1}. We know that a tensor will be rank-2 if we can diagonalizing these matrices to get

A_{1}A_{2}^{−1} = X [ \begin{matrix}\frac{w_{11}}{w_{21}} & 0 \\ 0 & \frac{w_{12}}{w_{22}} \end{matrix} ] X^{−1}
A_{2}^{−1}A_{1} = Y [ \begin{matrix}\frac{w_{11}}{w_{21}} & 0 \\ 0 & \frac{w_{12}}{w_{22}} \end{matrix} ] Y^{−1}

(1)

R. Bro ran a Matlab simulation that showed that 21% of the time (1) resulted in getting complex eigenvalues. Note that if the eigenvalues are complex, then the steps cannot be reversed.

7.2 Known Maximal Ranks

If the field of scalars is ℝ, then

• The maximum rank of a 2 × 2 × 2 tensor is 3.

• The maximum rank of a 3 × 3 × 3 tensor is 5.

• The maximum rank of an 8 × 8 × 8 tensor is 11.

The first two items above are shown in J.B. Kruskal. Rank, Decomposition, and Uniqueness for 3-Way and N-Way Arrays. In R. Coppi and S. Bolasco (editors), Multiway Data Analysis, 7-18. Amsterdam: Elsevier, 1989.

The third item was brought up in group discussion by R. Harshman.

7.3 Other Tensor Rank Properties

• The minimal tensor decomposition is not always orthogonal. That is, if R is minimal in

A = ∑_{i=1}^{R} u_{i} ∘ v_{i} ∘ w_{i}

then the {u_{i}}, {v_{i}}, {w_{i}} do not necessarily form sets of orthonormal vectors. Let

A =  =

Then rank(A) = 2:

A = [ \begin{matrix}1 \\ 1 \end{matrix} ] ∘ [ \begin{matrix}1 \\ 1 \end{matrix} ] ∘ [ \begin{matrix}1 \\ 1 \end{matrix} ] + [ \begin{matrix}1 \\ 0 \end{matrix} ] ∘ [ \begin{matrix}1 \\ 0 \end{matrix} ] ∘ [ \begin{matrix}1 \\ 0 \end{matrix} ]

However, it is impossible to write A as the sum of two orthogonal tensors (i.e., u_{1} ⊥ u_{2}, v_{1} ⊥ v_{2}, and w_{1} ⊥ w_{2}). The proof of this can be found in

J.B. Denis and T. Dhorne. Orthogonal tensor decomposition of 3-way tables. In R .Coppi and S. Bolasco (editors), Multiway Data Analysis, 31-37. Amsterdam: Elsevier, 1989.

• Uniqueness of the CP solution depends on factors other than just the order and dimension (see §6.1). If a 6×6×6 tensor has a CP decomposition with 8 components, then the solution is unique.^{7}

• A 7×7×7×7 supersymmetric tensor (see §9) will yield a unique solution if it is decomposed into 30 terms, but other fourth-order tensors of lower dimensions will not. This is explained in

P. Comon. Tensor Decompositions. In J.G. McWhirter and I.K. Proudler (editors), Mathematics in Signal Processing V, 1-24. Clarendon Press, Oxford, 2002.

7See talk by R. Bro on the conference website.

8 Extending the Matrix SVD

Another discussion group centered around the “ideal” extension of the matrix SVD. Participants listed important properties of the SVD with the idea of trying to extend those to higher-order tensors. The following properties of the matrix SVD were identified as starting points in this regard.

1. The SVD has a geometric interpretation, i.e., the singular values of a matrix are the lengths of the semi-axes of the hyperellipse defined by its image.

2. The SVD gives us information about optimal low-rank approximations since the singular values tell us how close the matrix is to one of lower rank.

3. The SVD always exists for any m×n matrix and the singular values are uniquely determined.

4. Successive best rank-1 approximations give the best rank-k approximation. If the rank of a matrix is R, then R successive rank-1 approximations yield the SVD.

5. The computation is stable with respect to perturbations.

6. The SVD is readily computable and algorithms have been analyzed for efficiency and stability.

7. Methods to compute the SVD do not involve alternating least squares (ALS) methods.

8. All compact operators have a singular value expansion (SVE). There is a nice connection between the SVE of the continuous operator and the SVD of the discretized operator.

9. There is a nice relationship between the SVD of a matrix, A, and the eigendecompositions of A^{T} A and AA^{T} (namely the singular values of A are the square roots of the eigenvalues of A^{T} A and AA^{T}).

10. The SVD has a proven usefulness and strong pedigree.

9 Supersymmetric Tensors: Importance and Properties

A supersymmetric tensor is a tensor whose entries are invariant under any permutation of the indices. For example, a third-order supersymmetric tensor has

a_{ijk} = a_{ikj} = a_{jik} = a_{jki} = a_{kij} = a_{kji}.

9.1 Applications

Supersymmetric tensors arise naturally in higher-order statistics and blind source separation. In addition, Pierre Comon has shown a nice relationship between supersymmetric tensors and polynomials. A tensor element, a_{ijk}, can be associated with a monomial, a_{ijk}x_{i}x_{j}x_{k}. The space of supersymmetric tensors can then be associated with the space of homogeneous polynomials. See P. Comon. Tensor Decompositions. In J.G. McWhirter and I.K. Proudler (editors), Mathematics in Signal Processing V, 1-24. Clarendon Press, Oxford, 2002.

9.2 Open Questions related to Supersymmetric Tensors

9.2.1 Can we find the nearest supersymmetric approximation to a tensor?

9.2.2 Can we decompose a tensor into a sum of a supersymmetric tensor and a nonsupersymmetric tensor?

We can write a matrix A as a sum of a symmetric matrix and a skew-symmetric matrix:

A = \frac{A + A^{T}}{2} + \frac{A − A^{T}}{2} .

Is there a tensor equivalent?

9.2.3 Can we embed a non-supersymmetric tensor into a supersymmetric tensor? Does this simplify computation?

The idea of embedding a tensor into a supersymmetric tensor is an extension of the matrix case. Indeed, if A is a matrix, then

B = [ \begin{matrix}0 & A^{T} \\ A & 0 \end{matrix} ]

is symmetric. Since there is a relationship between the singular values of A and the eigenvalues of B, we can use eigenvalue algorithms for symmetric matrices to determine the singular values of A.

Let A be 2×2×2. It turns out there are multiple ways to embed A into a supersymmetric tensor. One way results in a 2 × 2 × 2 tensor embedded into a supersymmetric 6 × 6 × 6 tensor.

Most importantly, we should determine what properties of the supersymmetric tensor relate back to the original embedded tensor. In addition, we need to determine when it is “worth the effort”, computationally, to write tensors in terms of symmetric tensors. Is the gain in symmetry more important than the computational aspects that go along with the increase in size?

10 Operations with the Khatri-Rao-Bro product and its relationship to the CP Model

Let matrices A and B be represented in terms of their columns:

A = [ a_{1} a_{2} … a_{n} ] and B = [ b_{1} b_{2} … b_{n} ]

Then the Khatri-Rao-Bro product, ⊙, of A and B is defined as

A ⊙ B = [ a_{1} ⊗ b_{1} a_{2} ⊗ b_{2} … a_{n} ⊗ b_{n} ]

where “⊗” denotes the Kronecker product. Recall that the Kronecker product of two vectors c ∈ ℝ^{ℓ}, d ∈ ℝ^{m} is

c ⊗ d = [c_{1}d ; c_{2}d ; ⋮ ; c_{ℓ}d] ∈ ℝ^{ℓm}

Note that

A ⊗ B = [ a_{1} ⊗ b_{1} a_{1} ⊗ b_{2} … a_{1} ⊗ b_{n} … a_{n} ⊗ b_{1} a_{n} ⊗ b_{2} … a_{n} ⊗ b_{n} ]

We can relate the Khatri-Rao-Bro product and Kronecker product using Matlab notation. If C = A ⊗ B, then

A ⊙ B = C( : , 1 : n + 1 : n^{2}).

The Kronecker product relates directly to the TUCKER model since it involves all combinations of the columns of A and B. However, the Khatri-Rao-Bro product relates directly to the CP model and is used to speed up the algorithm.^{8} Recall the three-way CP model:

A = ∑_{i=1}^{R} u_{i} ∘ v_{i} ∘ w_{i}.

Rewriting this in terms of flattening matrices, gives

A_{(1)} = U(V ⊙ W)^{T} ,

whereas the Kronecker product version is

A_{(1)} = UĨ(V ⊗ W)^{T}

where Ĩ is an appropriate flattening of the tensor identity (ones on the super-diagonal and zeros elsewhere). For example, if A is 3 × 3 × 3 and U, V, W are 3 × 3 matrices, then A_{(1)} is 3 × 9 and

Ĩ = [ 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 1 ] .

8See talk by R. Bro on the conference website.

11 Zero-ing out elements in the core array

Using the HOSVD, we can introduce zeros into the core array of the TUCKER decomposition. In particular, the orthogonal matrices can be strategically chosen to zero out certain elements. For an order-p N × N × ⋯ × N array, we can introduce \frac{pN(N−1)}{2} zeros since each of the p rotations have \frac{N(N−1)}{2} degrees of freedom. There are multiple places to introduce zeros. One idea was shown in the talk by Vince Fernando. Zeros were introduced along each edge of each subcube. Another idea is to introduce zeros everywhere but the super-diagonal (when possible) or to create a diagonally positioned matrix in the middle. See figure 2.

Figure 2: Diagonal third-order tensor (left); and diagonally positioned matrix in a third-order tensor (right)

In the higher-order Hessenburg, \frac{p(N−2)(N−1)}{2} zeros are introduced (L. De Lathauwer).

12 Efficiency in Computation of the TUCKER decomposition

In certain applications, we may not want to compute the entire decomposition. For example, in the matrix case we can compute only a few singular values or vectors without computing the entire decomposition. Here are a few open questions that involve something less than a full decomposition.

12.1 Open Questions related to computation of TUCKER

12.1.1 How can we compute only a few specified core elements without computing others?

12.1.2 Can we compute the TUCKER decomposition with some sparsity or other structure, such as “upper triangular”?

12.1.3 Do iterative methods exist for tensors? That is can we devise a subspace method that is an extension of Lanzcos iteration?

12.1.4 Do we ever have deflation in the TUCKER computation?

12.1.5 We may have different decompositions based on different topologies. Thus far, we have been thinking of N-way arrays in terms of hypercubes. There may be other decompositions based on other types of representations. What are they?

12.1.6 Do structured tensors arise in applications such as N-way Toeplitz arrays? Are there displacement based fast algorithms?

13 Alternate decompositions based on matrices rather than just vectors

13.1 Open Questions related to alternate decompositions

This section contains questions regarding decompositions in other forms rather than the traditional outer product decomposition.

13.1.1 Does representing a tensor A in terms of blocks lead to another type of decomposition?

If A is a block matrix we can compute its Kronecker product SVD (KPSVD) to represent A as a Kronecker product of matrices rather than an outer product of vectors. For example, let A be a 2 × 2 block matrix with m × n blocks:

A = [ \begin{matrix}A_{11} & A_{12} \\ A_{21} & A_{22} \end{matrix} ] .

Also suppose

Ã = [ \begin{matrix}vec(A_{11})^{T} \\ vec(A_{21})^{T} \\ vec(A_{12})^{T} \\ vec(A_{22})^{T} \end{matrix} ] ,

where vec(A_{ij}) = reshape(A_{ij}, mn, 1).

If the SVD of Ã is given by Ã = UΣV^{T} then

A = ∑_{i=1}^{R̃} σ_{i}(U_{i} ⊗ V_{i}),

where vec(U_{i}), vec(V_{i}) are the i-th columns of U and V, respectively and R̃ = rank(Ã).

Beginning to extending this idea to tensors, we can matricize a tensor A in terms of recursive blocking. Indeed, one way to represent a n_{1} × n_{2} × n_{3} × n_{4} tensor is to write it as a n_{1} × n_{2} block matrix with block size n_{3} × n_{4}. For example, if A is 3 × 4 × 5 × 6, then we can write A as the 3 × 4 block matrix,

[ \begin{matrix}A_{11} & A_{12} & A_{13} & A_{14} \\ A_{21} & A_{22} & A_{23} & A_{24} \\ A_{31} & A_{32} & A_{33} & A_{34} \end{matrix} ] ,

where each A_{ij} is 5 × 6.

As the order increases we get block matrices whose entries are also block matrices. This can be thought of as a recursive block representation. The recursive blocking idea is not restricted to p being even. If A is 3 × 4 × 5 × 6 × 7 then we can write A as a 3 × 4 block matrix where each block, A_{ij} is a 5 × 6 × 7 tensor, which could be matricized if desireable.

In addition, a sixth-order tensor can be represented as a third-order tensor. If A is n_{1} × n_{2} × n_{3} × n_{4} × n_{5} × n_{6} then we can represent A as a n_{1} × n_{2} × n_{3} block tensor where each block is size n_{4} × n_{5} × n_{6}.

13.1.2 Can we decompose a tensor into second-order or higher objects?

Related to the KPSVD idea for matrices, it may be possible to decompose a tensor into a secondorder to higher objects rather than just outer products of vectors. If so, what would be the algorithm to compute such a decomposition?

14 Extending Linear Algebra Concepts and Algorithms

This section contains open problems that stemmed from participant discussions and individual questions. Some were discussed in small groups and others were proposed to the entire group. Attempts at answering or references cited are stated where applicable.

14.1 Open Questions related to extending linear algebra theory

The open questions in this section relate to linear algebra theory.

14.1.1 The SVD has a nice geometric interpretation in terms of the singular values. What would be the geometric interpretation for tensor decompositions?

14.1.2 What exactly are the objects that are operated on by tensors? What are the singular values or eigenvalues? Could they be vectors rather than scalars?

14.1.3 A typical linear algebra problem is to solve Ax = b. Are there analogous problems for tensors? Where do they come from? How are they solved?

• There is a fast Poisson Solver that is written as a tensor product of matrices (G. Golub). See the following paper:

R.E. Lynch, J.R. Rice, D.H. Thomas, Tensor product analysis of partial differential equations, Bull. Amer. Math. Soc., 70 (1964), pp. 378-384.

In addition one may want to see how FFTs can be used to solve this problem in (G. Golub):

R. Bellman, Introduction to Matrix Analysis (2nd ed.), Society for Industrial and Applied Mathematics, Philadelphia, PA, 1997.

• In chemistry, multiway regression and rank-reduced regression is used (R. Bro)

• The below paper was cited as another example:

V. Pereyra and G. Scherer, Efficient Computer Manipulation of Tensor Products with Applications to Multidimensional Approximation, Mathematics of Computation, 27(123):595-605, July 1973

• The first reference on tensor GMRES is

R.B. Schnabel and P.D. Frank, Tensor methods for nonlinear equations. SIAM J. Num. Anal., 21 (1984), pp. 815843.

L.-H. Lim also cited the following paper on tensor GMRES

D. Feng and T.H. Pulliam, “Tensor-GMRES method for large systems of nonlinear equations,” SIAM J. Optim., 7 (3), August 1997, pp. 757–779.

14.1.4 Is there an analogue to a symmetric positive definite (SPD) matrix for tensors? Does this say anything about the HOSVD?

Yes. Every tensor can be thought of as a multilinear map (L.-H. Lim). The group defined the SPD equivalent for (say) fourth-order tensors as

A ×_{1} y ×_{2} y ×_{3} y ×_{4} y ≥ 0

for all y of appropriate dimension. L.-H. Lim points out that the above definition only works for tensors of even order (replace y by −y and that forces A to be the zero tensor in odd-ordered tensors).

With the recursive flattening approach, we could get blocks of SPD matrices. Is there an SPD diagonal dominance connection?

14.1.5 Are there analogies to other decompositions, such as LU and QR? What about other rank revealing decompositions such as CUR (see §15.11)

• There is an algorithm for structured tensors which is an extension of the Schur algorithm (P.Comon). The reference is:

V. S. Grigorascu and P. A. Regalia, “Tensor displacement structures and polyspectral matching”, Fast Reliable Algorithms for Structured Matrices, T. Kailath and A. H. Sayed, eds., SIAM Publications, Philadelphia, PA, 1999

• In general, LU and QR are not possible if they are direct extensions of the matrix case. This can be seen by counting degrees of freedom: n^{3} − n^{2} for LU and n^{3} − \frac{n(n−1)}{2} for QR (L.-H. Lim). However, there may be other ways of thinking about LU.

• If the tensor is supersymmetric then LU corresponds to Groebner bases and could be related to different types of rank. The LU algorithm is an elimination-type procedure (P. Comon)

• A third-order “Toeplitz” tensor would have equal components for values of (i − j),(j − k) or some other permutation of indices

• Generalization of Vandermonde and Hankel would work similarly. Generalizations of these appear in the reference by Grigorascu and Regalia cited above.

14.1.6 Is there an analog to Jordan Canonical Form for tensors?

No (C. Moler). This is transforming from same space to same space which is not happening here.

14.2 Open Questions related to extending linear algebra algorithms

The open questions in this section are algorithmic-based.

14.2.1 Given an arbitrary tensor A, is there an operation that reduces the tensor rank by one?

14.2.2 How does principal component analysis (PCA) generalize to N-way?

14.2.3 It seems that by matricizing tensors we lose information since we are lessening the dimension. What information are we really losing?

14.2.4 For matrices, there exists a notion of Krylov subspace. What’s the analogy for tensors? Do such subspaces arise in tensor SVD methods?

There exists a GMRES-type method for tensors (see question 14.1.3). There is also PLS related to Lanczos, but the connection to the multilinear case is unclear (R. Bro).

14.2.5 How do you perform tensor computations without flattening? For example, can you directly map a three-way array into a three dimensional parallel computing topology? If so, what does tensor multiplication look like now?

It is probably possible to perform operations without flattening, but we would need to define the multiplication. We need to be careful to work mode-wise in order not to destroy the tensor structure (R. Bro).

14.2.6 We have the HOSVD. What improvements do we hope to achieve by developing something better than the HOSVD? That is, why do we need something else?

PARAFAC gives us information about rank and in some applications is more informative than the HOSVD. In addition, a rank-revealing decomposition would tell us about correlations in our data. Unfortunately, to the best of our knowledge there is no connection between the tensor rank and the number of significant terms in the HOSVD. However, one could compute the HOSVD and use orthogonal transformations to make the core as diagonal as possible to gain information about rank (L. De Lathauwer).

14.2.7 When is n-mode multiplication of tensors invertible? If you perform a set of n-mode multiplications (fixed n) with a standard set of tensors, would it be possible to invert the result?

It should be possible if each face (n-mode wise) is invertible.

15 Workshop Talks

This section briefly summarizes each workshop talk. In most cases, slides to the talks can be

found at http://csmr.ca.sandia.gov/~tgkolda/tdw2004/ or by contacting the presenter.

15.1 Basics of Tensors, Carla D. Martin

There are many ways to represent tensors. This talk gave an introduction of some of the options including vectorizing and matricizing in order to facilitate use of linear algebra tools. Most examples used the third-order case for illustration. The tensor rank problem was introduced as well as other notions of rank such as n-rank, strong orthogonal rank, orthogonal rank, and combinatorial rank. When possible, differences and similaries with the matrix case were emphasized. An overview of the algorithms to compute the CP and TUCKER decompositions was presented as were algorithms that compute the best rank-1 approximation to a tensor. The best rank-1 approximation problem is to solve

min_{u,v,w} ||A − u ∘ v ∘ w||.

15.2 Applications of three-mode techniques and outline of major difficulties, Pieter Kroonenburg

Three-mode analysis is used in the social and behavioral sciences, chemometrics, signal processing, agriculture, tensor faces, and more. This talk began with an introduction to three-way data which included visualization, notation, and terminology. Modes, slices, and fibers were defined as elements of a three-way data array. The mode defines the direction of the array (or index); slices refer to holding one index constant and varying the others (in other words slices are matrices); and fibers are the column vectors of the slices. Several examples of three-way models were presented and analysis of the data was explained in terms of correlation among factors. An brief explanation of the various models used in applications was given (PCA, TUCKER2, TUCKER3, and CANDECOMP-PARAFAC). The talk concluded with a list of technical areas of interest and interpretational issues. Most interesting is how to get others to use these methods and how to explain the results to a group unfamiliar with these methods.

15.3 Tensor Notation and a Matlab Tensor Class for Fast Algorithm Prototyping, Tammy Kolda and Brett Bader

An introduction to the notation of order-N tensors was presented as well as the possible ways to matricize a tensor. Examples of n-mode multiplication of a tensor and a matrix or vector were also described. Three Matlab classes for manipulating tensors were developed for the workshop and distributed during the talk. The classes were described using examples and preexisting algorithms. The tensor class allows for tensor multiplication and matricizing; whereas the other classes are for representing tensors in terms of the CP model and TUCKER model. The Matlab classes were developed to aid in algorithm creation. The associated m-files can be found

at http://csmr.sandia.gov/~tgkolda/Tensor.zip.

15.4 Canonical Tensor Decompositions, Pierre Comon (impromptu)

This talk explored the intricities of tensor rank and the computation of the CANDECOMP-PARAFAC model. Although one cannot find the tensor rank for an arbitrary tensor, certain properties are known about tensor rank. If R is the tensor rank, then R could be smaller or larger than each mode size. In addition, the product of the two highest mode sizes is an upper bound for the maximum possible rank for a tensor (e.g., if A is 2 × 3 × 4, then the maximum rank is 12). The tensor rank also depends on the field of scalars (see Section 7.1) and structure of the decomposition (e.g,. symmetry). Generic rank of a tensor was defined. There was also a discussion of uniquess of the CP model.

15.5 Practical Problems and Solutions in Applied Multiway Analysis, Rasmus Bro

Monitoring pollution from water samples, fluorescence spectroscopy, and monitoring food quality were just some of the applications mentioned that use the CANDECOMP-PARAFAC (CP) model. The advantages of using the CP model were shown by using the data from the water pollution and fluorescence examples. In particular, the uniqueness conditions on the CP model enable researchers to exactly determine the underlying factors (true spectra) of what is being measured. The current state-of-the-art alternating least squares algorithm to compute the CP decomposition was explained. The current algorithm is more efficient than the one originally proposed because it makes use of the Khatri-Rao-Bro product, rather than the Kronecker product in computations. Problems and possible solutions with convergence and speed of the algorithm were also addressed.

15.6 3D SVD, Vince Fernando

An SVD for order-three tensors was proposed which has many similarities to the matrix SVD. In order to explain the 3D SVD, a new norm for third-order tensors based on the matrix spectral norm was defined. Since the matrix spectral norm is the largest singular value of a matrix, the 3D spectral norm can be used to define singular values of third-order tensors. Using this definition of singular value, an algorithm involving SVDs of the flattening matrices to compute the largest singular value of a third-order tensor was presented. Repeated application leads to computation of the second, third, etc.- largest singular value of the tensor. The resulting core tensor has these singular values along the super-diagonal and the corresponding edges of each subcube are zeros.

15.7 An Introduction to Multilinear Algebra based Independent Component Analysis, Lieven De Lathauwer

Starting with an introduction to higher-order statistics, it was shown that when the sources are independent, tensor decompositions can be used for ICA. In particular, the CANDECOMP-PARAFAC model is used for ICA since the fourth-order cumulant, represented as a tensor, is super-diagonal. In addition an explanation of prewhitening-based algorithms and higher-order schemes was givnen.

15.8 TensorFaces, Alex Vasilescu

This work uses the HOSVD for computer facial recognition. Starting with a database of facial images of different people photographed with different expressions, head poses, lighting conditions, and viewpoint, the HOSVD is used for facial recognition of an unknown facial image. This representation is called Tensorfaces. It was shown that Tensorfaces has a higher recognition rate than facial recognition using PCA.

15.9 Tensor Approximations and Computation of Inverse Matrices, Eugene Tyrtyshnikov

Matrices arising in solving integral equations are often quite large. Due to memory constraints, these matrices must be represented implicitly. It was shown how matrices are represented using tensor approximations. Specifically, the approximation involves decomposing a tensor as a sum of Kronecker products of matrices as in the KPSVD (see §13.1.1). Conditions under which the KPSVD representation may be advantageous were described. Using the KPSVD, the ϵ-rank was defined as the minimal representation in this format. Again, due to memory constraints, a matrix inverse also needs to be computed efficiently. A modified Newton’s method algorithm to compute the nearest inverse to a matrix was also described.

15.10 PCA and Human Gait Patterns, Cleve Moler (impromptu)

Examples of Matlab algorithms using PCA were presented. In particular, a Matlab demonstration of gender-specific differences in walking style was shown. This was work of Nikolaus Troje at Ruhr-University, Bochum, Germany (http://www.biomotionlab.ca/).

15.11 Extracting Structure from Matrices and Tensors by Random Sampling, Michael Mahoney (impromptu)

Developing fast Monte-Carlo algorithms for matrix computations is useful in order to deal with very large matrices in practice (too large to store in RAM). Such computations include matrix multiplication and the SVD. The idea involves making a sketch of the matrix and storing the sketch in RAM for computations. The sketch, A′, to a matrix A is made using a CUR decomposition; i.e., A′ = CUR where C and R are random samples of the \underline{c}olumns and \underline{r}ows of A. Current work presented involves extending the CUR decomposition to tensors.

15.12 A Real Linear SVD Framework, Marko Huhtanen (impromptu)

Small rank approximations to a matrix are used in data compression and in solving ill-conditioned problems. This talk was about extending SVD ideas to real linear operators. First, real linear operators were introduced that generalize rank-1 matrices. The SVD was then extended in the language of these real linear operators, including a generalization of the singular values.

15.13 Questions on Fast Solvers for Kronecker Decompositions, Ed D’Azevdeo (impromptu)

A fast solver of a sum of two Kronecker products, the QZ decomposition, nearest Kronecker product (NKP) problem, and a complex product were described. Specific questions regarding each of the above ideas were posed to the group.

15.14 What’s Possible and What’s Not Possible in Tensor Decompositions, Lek-Heng Lim (impromptu)

Importants results were presented regarding the extension of the Eckart-Young theorem for matrices. Specifically, it is well known that successive rank-1 approximations to a matrix yield the best rank-k approximation to that matrix. It was shown in the talk that such an extension for tensors is impossible. That is, for some tensors there is no best rank-K approximation (K < R) regardless of the norm that is chosen. An example of a rank-3 tensor with no best rank-2 approximation was shown as well as other similar examples. These results hold whether or not orthogonality constraints are imposed on the vectors in the decomposition. In addition, imposing such constraints is often counter-productive if one is interested only in a low-rank approximation, as the minimal representation may be nonorthogonal (see section 7.3). It was also pointed out that orthogonality constraints can only be imposed if there is a natural inner product on the tensor product space (e.g., it does not make sense to impose constraints when dealing with 1-norm or ∞-norm). Important to the theme of the workshop, it was shown that it is not possible to develop globally convergent algorithms to determine tensor rank, regardless of whether orthogonality constraints are imposed.

15.15 Handwritten Digit Recognition by HOSVD, Berkant Savas (impromptu)

This talk was based on work from Savas’ masters thesis. Specifically, the HOSVD was used to classify unknown handwritten digits. The algorithm works by constructing an orthogonal basis matrix for each digit using the HOSVD. The second step is to solve a least squares problem to actually compute the unknown digit. Two datasets were used for testing the algorithsm; U.S. Postal Service handwritten digits and the Modified National Institute of Standards and Technology (MNIST) database of handwritten digits. Results of the algorithm and error rates were also presented.

15.16 Genomic Signal Processing, Orly Alter

This talk explained how the SVD and GSVD are used to compare and contrast the yeast and human cell-cycles. In particular, expression datasets containing molecular data of each of the cell cycles were used. The GSVD helped to find biological similarity and dissimiliarity between each cell cycle.

15.17 Nature of Degenerate Solutions, Richard Harshman

This talk explained the problem of degeneracy that sometimes occurs in the CP model. Degenerate solutions are when two or more factors are highly negatively correlated. This can occur when the CP model is applied to data that is better explained using the TUCKER model. An example of such solutions was shown using a dataset of TV show ratings. In some cases one can prevent degeneracy by imposing orthogonality constraints on the factors in one mode. A theorem was presented that explains why some of the degeneracies occur.

16 Acknowledgements

I would like to thank Pierre Comon, Lieven De Lathauwer, and Lek-Heng Lim for their help in clarifying sections of these notes. I would also like to thank Misha Kilmer for her thorough review and insightful comments about many points raised during the workshop. Finally, I would like to thank Tammy Kolda and Charles Van Loan for their comments and suggested revisions on the entire document.