MATLAB Answers

How to restore tensor after applied the PARAFAC model?

7 views (last 30 days)
lehuydip on 23 Apr 2020
Commented: lehuydip on 24 Apr 2020
Hi everyone,
Suppose I have a tensor have the size of (128 x 128 x 3). When I apply the PARAFAC model (to fit one-component) to decomposition tensor. I get many components a1, b1, c1
My question here:
+/ a1 have size of (128 x 1)
+/ b1 have size of (128 x 1)
+/ c1 have size of (3 x 1).
How to get the result of multiplication a1.b1.c1? (restore original tensor?). Because each factor is not the same size?
Thank you for your help.


Sign in to comment.

Accepted Answer

Christine Tobler
Christine Tobler on 23 Apr 2020
The three component vectors represent the 3 different dimensions here. For the one-component case (all are vectors), you can use
a1 .* (b1.') .* (reshape(c1, 1, 1, []))
which will return an array of size length(a1) x length(b1) x length(c1).

More Answers (0)

Translated by