Multilinear multiplication

From testwiki
Jump to navigation Jump to search

In multilinear algebra, applying a map that is the tensor product of linear maps to a tensor is called a multilinear multiplication.

Abstract definition

Let F be a field of characteristic zero, such as โ„ or โ„‚. Let Vk be a finite-dimensional vector space over F, and let ๐’œโˆˆV1โŠ—V2โŠ—โ‹ฏโŠ—Vd be an order-d simple tensor, i.e., there exist some vectors ๐ฏkโˆˆVk such that ๐’œ=๐ฏ1โŠ—๐ฏ2โŠ—โ‹ฏโŠ—๐ฏd. If we are given a collection of linear maps Ak:Vkโ†’Wk, then the multilinear multiplication of ๐’œ with (A1,A2,โ€ฆ,Ad) is defined[1] as the action on ๐’œ of the tensor product of these linear maps,[2] namely

A1โŠ—A2โŠ—โ‹ฏโŠ—Ad:V1โŠ—V2โŠ—โ‹ฏโŠ—Vdโ†’W1โŠ—W2โŠ—โ‹ฏโŠ—Wd,๐ฏ1โŠ—๐ฏ2โŠ—โ‹ฏโŠ—๐ฏdโ†ฆA1(๐ฏ1)โŠ—A2(๐ฏ2)โŠ—โ‹ฏโŠ—Ad(๐ฏd)

Since the tensor product of linear maps is itself a linear map,[2] and because every tensor admits a tensor rank decomposition,[1] the above expression extends linearly to all tensors. That is, for a general tensor ๐’œโˆˆV1โŠ—V2โŠ—โ‹ฏโŠ—Vd, the multilinear multiplication is

โ„ฌ:=(A1โŠ—A2โŠ—โ‹ฏโŠ—Ad)(๐’œ)=(A1โŠ—A2โŠ—โ‹ฏโŠ—Ad)(โˆ‘i=1r๐ši1โŠ—๐ši2โŠ—โ‹ฏโŠ—๐šid)=โˆ‘i=1rA1(๐ši1)โŠ—A2(๐ši2)โŠ—โ‹ฏโŠ—Ad(๐šid)

where ๐’œ=โˆ‘i=1r๐ši1โŠ—๐ši2โŠ—โ‹ฏโŠ—๐šid with ๐šikโˆˆVk is one of ๐’œ's tensor rank decompositions. The validity of the above expression is not limited to a tensor rank decomposition; in fact, it is valid for any expression of ๐’œ as a linear combination of pure tensors, which follows from the universal property of the tensor product.

It is standard to use the following shorthand notations in the literature for multilinear multiplications:(A1,A2,โ€ฆ,Ad)โ‹…๐’œ:=(A1โŠ—A2โŠ—โ‹ฏโŠ—Ad)(๐’œ)andAkโ‹…k๐’œ:=(IdV1,โ€ฆ,IdVkโˆ’1,Ak,IdVk+1,โ€ฆ,IdVd)โ‹…๐’œ,where IdVk:Vkโ†’Vk is the identity operator.

Definition in coordinates

In computational multilinear algebra it is conventional to work in coordinates. Assume that an inner product is fixed on Vk and let Vkโˆ— denote the dual vector space of Vk. Let {e1k,โ€ฆ,enkk} be a basis for Vk, let {(e1k)โˆ—,โ€ฆ,(enkk)โˆ—} be the dual basis, and let {f1k,โ€ฆ,fmkk} be a basis for Wk. The linear map Mk=โˆ‘i=1mkโˆ‘j=1nkmi,j(k)fikโŠ—(ejk)โˆ— is then represented by the matrix M^k=[mi,j(k)]โˆˆFmkร—nk. Likewise, with respect to the standard tensor product basis {ej11โŠ—ej22โŠ—โ‹ฏโŠ—ejdd}j1,j2,โ€ฆ,jd, the abstract tensor๐’œ=โˆ‘j1=1n1โˆ‘j2=1n2โ‹ฏโˆ‘jd=1ndaj1,j2,โ€ฆ,jdej11โŠ—ej22โŠ—โ‹ฏโŠ—ejddis represented by the multidimensional array ๐’œ^=[aj1,j2,โ€ฆ,jd]โˆˆFn1ร—n2ร—โ‹ฏร—nd . Observe that ๐’œ^=โˆ‘j1=1n1โˆ‘j2=1n2โ‹ฏโˆ‘jd=1ndaj1,j2,โ€ฆ,jd๐žj11โŠ—๐žj22โŠ—โ‹ฏโŠ—๐žjdd,

where ๐žjkโˆˆFnk is the jth standard basis vector of Fnk and the tensor product of vectors is the affine Segre map โŠ—:(๐ฏ(1),๐ฏ(2),โ€ฆ,๐ฏ(d))โ†ฆ[vi1(1)vi2(2)โ‹ฏvid(d)]i1,i2,โ€ฆ,id. It follows from the above choices of bases that the multilinear multiplication โ„ฌ=(M1,M2,โ€ฆ,Md)โ‹…๐’œ becomes

โ„ฌ^=(M^1,M^2,โ€ฆ,M^d)โ‹…โˆ‘j1=1n1โˆ‘j2=1n2โ‹ฏโˆ‘jd=1ndaj1,j2,โ€ฆ,jd๐žj11โŠ—๐žj22โŠ—โ‹ฏโŠ—๐žjdd=โˆ‘j1=1n1โˆ‘j2=1n2โ‹ฏโˆ‘jd=1ndaj1,j2,โ€ฆ,jd(M^1,M^2,โ€ฆ,M^d)โ‹…(๐žj11โŠ—๐žj22โŠ—โ‹ฏโŠ—๐žjdd)=โˆ‘j1=1n1โˆ‘j2=1n2โ‹ฏโˆ‘jd=1ndaj1,j2,โ€ฆ,jd(M^1๐žj11)โŠ—(M^2๐žj22)โŠ—โ‹ฏโŠ—(M^d๐žjdd).

The resulting tensor โ„ฌ^ lives in Fm1ร—m2ร—โ‹ฏร—md.

Element-wise definition

From the above expression, an element-wise definition of the multilinear multiplication is obtained. Indeed, since โ„ฌ^ is a multidimensional array, it may be expressed as โ„ฌ^=โˆ‘j1=1n1โˆ‘j2=1n2โ‹ฏโˆ‘jd=1ndbj1,j2,โ€ฆ,jd๐žj11โŠ—๐žj22โŠ—โ‹ฏโŠ—๐žjdd,where bj1,j2,โ€ฆ,jdโˆˆF are the coefficients. Then it follows from the above formulae that

((๐ži11)T,(๐ži22)T,โ€ฆ,(๐židd)T)โ‹…โ„ฌ^=โˆ‘j1=1n1โˆ‘j2=1n2โ‹ฏโˆ‘jd=1ndbj1,j2,โ€ฆ,jd((๐ži11)T๐žj11)โŠ—((๐ži22)T๐žj22)โŠ—โ‹ฏโŠ—((๐židd)T๐žjdd)=โˆ‘j1=1n1โˆ‘j2=1n2โ‹ฏโˆ‘jd=1ndbj1,j2,โ€ฆ,jdฮดi1,j1โ‹…ฮดi2,j2โ‹ฏฮดid,jd=bi1,i2,โ€ฆ,id,

where ฮดi,j is the Kronecker delta. Hence, if โ„ฌ=(M1,M2,โ€ฆ,Md)โ‹…๐’œ, then

bi1,i2,โ€ฆ,id=((๐ži11)T,(๐ži22)T,โ€ฆ,(๐židd)T)โ‹…โ„ฌ^=((๐ži11)T,(๐ži22)T,โ€ฆ,(๐židd)T)โ‹…(M^1,M^2,โ€ฆ,M^d)โ‹…โˆ‘j1=1n1โˆ‘j2=1n2โ‹ฏโˆ‘jd=1ndaj1,j2,โ€ฆ,jd๐žj11โŠ—๐žj22โŠ—โ‹ฏโŠ—๐žjdd=โˆ‘j1=1n1โˆ‘j2=1n2โ‹ฏโˆ‘jd=1ndaj1,j2,โ€ฆ,jd((๐ži11)TM^1๐žj11)โŠ—((๐ži22)TM^2๐žj22)โŠ—โ‹ฏโŠ—((๐židd)TM^d๐žjdd)=โˆ‘j1=1n1โˆ‘j2=1n2โ‹ฏโˆ‘jd=1ndaj1,j2,โ€ฆ,jdmi1,j1(1)โ‹…mi2,j2(2)โ‹ฏmid,jd(d),

where the mi,j(k) are the elements of M^k as defined above.

Properties

Let ๐’œโˆˆV1โŠ—V2โŠ—โ‹ฏโŠ—Vd be an order-d tensor over the tensor product of F-vector spaces.

Since a multilinear multiplication is the tensor product of linear maps, we have the following multilinearity property (in the construction of the map):[1][2]

A1โŠ—โ‹ฏโŠ—Akโˆ’1โŠ—(ฮฑAk+ฮฒB)โŠ—Ak+1โŠ—โ‹ฏโŠ—Ad=ฮฑA1โŠ—โ‹ฏโŠ—Ad+ฮฒA1โŠ—โ‹ฏโŠ—Akโˆ’1โŠ—BโŠ—Ak+1โŠ—โ‹ฏโŠ—Ad

Multilinear multiplication is a linear map:[1][2] (M1,M2,โ€ฆ,Md)โ‹…(ฮฑ๐’œ+ฮฒโ„ฌ)=ฮฑ(M1,M2,โ€ฆ,Md)โ‹…๐’œ+ฮฒ(M1,M2,โ€ฆ,Md)โ‹…โ„ฌ

It follows from the definition that the composition of two multilinear multiplications is also a multilinear multiplication:[1][2]

(M1,M2,โ€ฆ,Md)โ‹…((K1,K2,โ€ฆ,Kd)โ‹…๐’œ)=(M1โˆ˜K1,M2โˆ˜K2,โ€ฆ,Mdโˆ˜Kd)โ‹…๐’œ,

where Mk:Ukโ†’Wk and Kk:Vkโ†’Uk are linear maps.

Observe specifically that multilinear multiplications in different factors commute,

Mkโ‹…k(Mโ„“โ‹…โ„“๐’œ)=Mโ„“โ‹…โ„“(Mkโ‹…k๐’œ)=Mkโ‹…kMโ„“โ‹…โ„“๐’œ,

if kโ‰ โ„“.

Computation

The factor-k multilinear multiplication Mkโ‹…k๐’œ can be computed in coordinates as follows. Observe first that

Mkโ‹…k๐’œ=Mkโ‹…kโˆ‘j1=1n1โˆ‘j2=1n2โ‹ฏโˆ‘jd=1ndaj1,j2,โ€ฆ,jd๐žj11โŠ—๐žj22โŠ—โ‹ฏโŠ—๐žjdd=โˆ‘j1=1n1โ‹ฏโˆ‘jkโˆ’1=1nkโˆ’1โˆ‘jk+1=1nk+1โ‹ฏโˆ‘jd=1nd๐žj11โŠ—โ‹ฏโŠ—๐žjkโˆ’1kโˆ’1โŠ—Mk(โˆ‘jk=1nkaj1,j2,โ€ฆ,jd๐žjkk)โŠ—๐žjk+1k+1โŠ—โ‹ฏโŠ—๐žjdd.

Next, since

Fn1โŠ—Fn2โŠ—โ‹ฏโŠ—Fndโ‰ƒFnkโŠ—(Fn1โŠ—โ‹ฏโŠ—Fnkโˆ’1โŠ—Fnk+1โŠ—โ‹ฏโŠ—Fnd)โ‰ƒFnkโŠ—Fn1โ‹ฏnkโˆ’1nk+1โ‹ฏnd,

there is a bijective map, called the factor-k standard flattening,[1] denoted by (โ‹…)(k), that identifies Mkโ‹…k๐’œ with an element from the latter space, namely

(Mkโ‹…k๐’œ)(k):=โˆ‘j1=1n1โ‹ฏโˆ‘jkโˆ’1=1nkโˆ’1โˆ‘jk+1=1nk+1โ‹ฏโˆ‘jd=1ndMk(โˆ‘jk=1nkaj1,j2,โ€ฆ,jd๐žjkk)โŠ—๐žฮผk(j1,โ€ฆ,jkโˆ’1,jk+1,โ€ฆ,jd):=Mk๐’œ(k),

where ๐žjis the jth standard basis vector of FNk, Nk=n1โ‹ฏnkโˆ’1nk+1โ‹ฏnd, and ๐’œ(k)โˆˆFnkโŠ—FNkโ‰ƒFnkร—Nk is the factor-k flattening matrix of ๐’œ whose columns are the factor-k vectors [aj1,โ€ฆ,jkโˆ’1,i,jk+1,โ€ฆ,jd]i=1nk in some order, determined by the particular choice of the bijective map

ฮผk:[1,n1]ร—โ‹ฏร—[1,nkโˆ’1]ร—[1,nk+1]ร—โ‹ฏร—[1,nd]โ†’[1,Nk].

In other words, the multilinear multiplication (M1,M2,โ€ฆ,Md)โ‹…๐’œ can be computed as a sequence of d factor-k multilinear multiplications, which themselves can be implemented efficiently as classic matrix multiplications.

Applications

The higher-order singular value decomposition (HOSVD) factorizes a tensor given in coordinates ๐’œโˆˆFn1ร—n2ร—โ‹ฏร—nd as the multilinear multiplication ๐’œ=(U1,U2,โ€ฆ,Ud)โ‹…๐’ฎ, where UkโˆˆFnkร—nk are orthogonal matrices and ๐’ฎโˆˆFn1ร—n2ร—โ‹ฏร—nd.

Further reading