How to restore tensor after applied the PARAFAC model?

4 vues (au cours des 30 derniers jours)
PaulLe
PaulLe le 23 Avr 2020
Commenté : PaulLe le 24 Avr 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.

Réponse acceptée

Christine Tobler
Christine Tobler le 23 Avr 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).
  1 commentaire
PaulLe
PaulLe le 24 Avr 2020
Dear Tobler,
Thank you for your help.

Connectez-vous pour commenter.

Plus de réponses (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by