Multilinear multiplication

From testwiki
Revision as of 22:02, 5 May 2020 by imported>Citation bot (Add: isbn, publisher, year, series. Removed URL that duplicated unique identifier. | You can use this bot yourself. Report bugs here. | Activated by Headbomb | via #UCB_webform)
(diff) โ† Older revision | Latest revision (diff) | Newer revision โ†’ (diff)
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 ๐’œV1V2Vd be an order-d simple tensor, i.e., there exist some vectors ๐ฏkVk such that ๐’œ=๐ฏ1๐ฏ2๐ฏd. If we are given a collection of linear maps Ak:VkWk, 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

A1A2Ad:V1V2VdW1W2Wd,๐ฏ1๐ฏ2๐ฏdA1(๐ฏ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 ๐’œV1V2Vd, the multilinear multiplication is

โ„ฌ:=(A1A2Ad)(๐’œ)=(A1A2Ad)(i=1r๐ši1๐ši2๐šid)=i=1rA1(๐ši1)A2(๐ši2)Ad(๐šid)

where ๐’œ=i=1r๐ši1๐ši2๐šid with ๐šikVk 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)๐’œ:=(A1A2Ad)(๐’œ)andAkk๐’œ:=(IdV1,,IdVk1,Ak,IdVk+1,,IdVd)๐’œ,where IdVk:VkVk 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=1mkj=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 {ej11ej22ejdd}j1,j2,,jd, the abstract tensor๐’œ=j1=1n1j2=1n2jd=1ndaj1,j2,,jdej11ej22ejddis represented by the multidimensional array ๐’œ^=[aj1,j2,,jd]Fn1×n2××nd . Observe that ๐’œ^=j1=1n1j2=1n2jd=1ndaj1,j2,,jd๐žj11๐žj22๐žjdd,

where ๐žjkFnk 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=1n1j2=1n2jd=1ndaj1,j2,,jd๐žj11๐žj22๐žjdd=j1=1n1j2=1n2jd=1ndaj1,j2,,jd(M^1,M^2,,M^d)(๐žj11๐žj22๐žjdd)=j1=1n1j2=1n2jd=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=1n1j2=1n2jd=1ndbj1,j2,,jd๐žj11๐žj22๐žjdd,where bj1,j2,,jdF are the coefficients. Then it follows from the above formulae that

((๐ži11)T,(๐ži22)T,,(๐židd)T)โ„ฌ^=j1=1n1j2=1n2jd=1ndbj1,j2,,jd((๐ži11)T๐žj11)((๐ži22)T๐žj22)((๐židd)T๐žjdd)=j1=1n1j2=1n2jd=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=1n1j2=1n2jd=1ndaj1,j2,,jd๐žj11๐žj22๐žjdd=j1=1n1j2=1n2jd=1ndaj1,j2,,jd((๐ži11)TM^1๐žj11)((๐ži22)TM^2๐žj22)((๐židd)TM^d๐žjdd)=j1=1n1j2=1n2jd=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 ๐’œV1V2Vd 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]

A1Ak1(αAk+βB)Ak+1Ad=αA1Ad+βA1Ak1BAk+1Ad

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)๐’œ)=(M1K1,M2K2,,MdKd)๐’œ,

where Mk:UkWk and Kk:VkUk are linear maps.

Observe specifically that multilinear multiplications in different factors commute,

Mkk(M๐’œ)=M(Mkk๐’œ)=MkkM๐’œ,

if k.

Computation

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

Mkk๐’œ=Mkkj1=1n1j2=1n2jd=1ndaj1,j2,,jd๐žj11๐žj22๐žjdd=j1=1n1jk1=1nk1jk+1=1nk+1jd=1nd๐žj11๐žjk1k1Mk(jk=1nkaj1,j2,,jd๐žjkk)๐žjk+1k+1๐žjdd.

Next, since

Fn1Fn2FndFnk(Fn1Fnk1Fnk+1Fnd)FnkFn1nk1nk+1nd,

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

(Mkk๐’œ)(k):=j1=1n1jk1=1nk1jk+1=1nk+1jd=1ndMk(jk=1nkaj1,j2,,jd๐žjkk)๐žμk(j1,,jk1,jk+1,,jd):=Mk๐’œ(k),

where ๐žjis the jth standard basis vector of FNk, Nk=n1nk1nk+1nd, and ๐’œ(k)FnkFNkFnk×Nk is the factor-k flattening matrix of ๐’œ whose columns are the factor-k vectors [aj1,,jk1,i,jk+1,,jd]i=1nk in some order, determined by the particular choice of the bijective map

μk:[1,n1]××[1,nk1]×[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 UkFnk×nk are orthogonal matrices and ๐’ฎFn1×n2××nd.

Further reading