Als Tensorregression bezeichnet man in der Statistik ein Regressionsmodell basierend auf Tensoren. Bei einer solchen Regression können entweder der Regressor
, der Regressand
oder beide Tensoren sein. Tensorregressionen werden vor allem für hochdimensionale oder große Daten verwendet, da Tensoren eine natürliche Darstellung solcher Daten sind.
Ein Anwendungsbeispiel für die Tensorregression liegt im Neuroimaging, wo man zum Beispiel die Hirnaktivität einer Maus misst, welche durch ein Labyrinth rennt. Dabei werden Hunderte von Neuronen über einen längeren Zeitraum gemessen.
Bei hochdimensionalen Daten besitzt der Koeffiziententensor meistens einen viel höheren Rang als der Regressor und der Regressand, weshalb man – ähnlich wie bei der Regression mit reduziertem Rang – häufig die Annahme trifft, dass der Koeffiziententensor einen tiefen Rang basierend auf einer Tensorzerlegung besitzt. Bekannte solche Zerlegungen sind die Candecomp/Parafac-Zerlegung (CP), die Tucker-Zerlegung, die Tensor-Singulärwertzerlegung (t-SVD) und die Tensor-Train-Zerlegung (TT).
Im Artikel wird eine Tensor-Verallgemeinerung der verallgemeinerten linearen Modelle (GLM) behandelt, welche 2013 von Hua Zhou et al.[1] mit der Candecomp/Parafec-Zerlegung eingeführt wurde und manchmal als CP-GLTR (englisch generalized linear tensor regression) abgekürzt wird.
Im Artikel wird die Tensorregression auf den reellen Zahlen mit dem reellen Tensorprodukt
definiert, das Konzept lässt sich aber auch auf allgemeinen Vektorräumen respektive Moduln definieren.
In der allgemeinen Form sind Tensordaten
gegeben, dann ist das Tensorregressionsmodell von der Form
![{\displaystyle {\mathcal {Y}}_{n}=f({\mathcal {X}}_{n},{\mathcal {B}})+{\mathcal {E}}_{n},}](https://wikimedia.org/api/rest_v1/media/math/render/svg/f2993768d2d6cb1932fcedfca4a54f8bc3fdd2d0)
wobei
![{\displaystyle {\mathcal {Y}}_{n}\in \bigotimes _{i=1}^{M}\mathbb {R} ^{q_{i}},\quad {\mathcal {X}}_{n}\in \bigotimes _{i=1}^{L}\mathbb {R} ^{p_{i}},\quad {\mathcal {B}},\quad {\mathcal {E}}_{n}\in \bigotimes _{i=1}^{M}\mathbb {R} ^{q_{i}}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/992461662a2be383bcc40b2a2eefcbcce2e686e3)
Tensoren und
natürliche Zahlen sind. Typischerweise besitzt der Koeffiziententensor
einen viel höheren Rang als die anderen Tensoren.
Durch Konkatenation
, lässt sich das auch kompakter als
![{\displaystyle {\mathcal {Y}}=f({\mathcal {X}},{\mathcal {B}})+{\mathcal {E}}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/56e8b4f0206cdfc8ce70c7555e2e3e1f0f5292b8)
hinschreiben.[2]
Für einen beliebigen Tensor
sucht man einen Tensor
mit einer niedrigen Rang-Zerlegung, welche
am besten approximiert, welches zu einem Optimierungsproblem der Form
![{\displaystyle {\mathcal {L}}(T)=\min \limits _{\widehat {T}}\|T-{\widehat {T}}\|_{F}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/7f128330d4ee1adfa6fe40384deca902f7d767b8)
führt, wobei wir hier die Frobenius-Norm gewählt haben. Zwei populäre Wahlen für eine solche Zerlegung sind die Candecomp/Parafec-Zerlegung (kurz CP-Zerlegung) und die Tucker-Zerlegung. Die CP-Zerlegung ist auch unter dem Namen canonical polyadic decomposition bekannt. Die Tucker-Zerlegung ist eine Form einer höher-dimensionalen Hauptkomponentenanalyse und wird auch HOSVD für englisch higher-order singular value decomposition genannt.
Sei
ein Tensor. Eine CP-Zerlegung für ein
ist eine Rang-
-Zerlegung von
in Elementartensoren
![{\displaystyle T=\sum \limits _{k=1}^{R}\lambda _{k}\mathbf {v} _{k}^{(1)}\otimes \mathbf {v} _{k}^{(2)}\otimes \cdots \otimes \mathbf {v} _{k}^{(D)},}](https://wikimedia.org/api/rest_v1/media/math/render/svg/a2b64f5bf27ece3c9db478309cd44d4f4708c63c)
wobei die
Vektoren der Form
sind und
ein Gewichtsvektor zur Normierung ist. Die minimale Zahl
![{\displaystyle \operatorname {rank} (T)=\min \left\{R\in \mathbb {N} \colon T=\sum \limits _{k=1}^{R}\mathbf {v} _{k}^{(1)}\otimes \mathbf {v} _{k}^{(2)}\otimes \cdots \otimes \mathbf {v} _{k}^{(D)}\right\}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/15a7c21ca5851ac538fdd9443deca457cb2d961f)
nennt man den Rang von
und er ist invariant unter Basiswechsel. Die Berechnung des Rangs ist jedoch NP-schwer.[3]
Die Tucker-Zerlegung (oder auch HOSVD) zerlegt einen Tensor
in einen Kern-Tensor
und
Faktor-Matrizen
![{\displaystyle T=G\times A_{1}\times \cdots \times A_{D}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/14031cb1ea444e9adb38029a33d92c31ac40dbf5)
elementweise geschrieben
![{\displaystyle T=\sum \limits _{j_{1}=1}^{R_{1}}\sum \limits _{j_{2}=1}^{R_{2}}\cdots \sum \limits _{j_{D}=1}^{R_{D}}g_{i_{1},i_{2},\dots ,i_{D}}\mathbf {a} _{j_{1}}^{(1)}\otimes \mathbf {a} _{j_{2}}^{(2)}\otimes \cdots \otimes \mathbf {a} _{j_{D}}^{(D)}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/8aba105bcd84b8dc7b61f5da0528f06151c867f7)
wobei
für
und
Vektoren sind und
. Die Parameter
nennt man Tucker-Ränge.
Die von Zhou et al.[1] betrachtete Verallgemeinerung der verallgemeinerten linearen Modelle ist die Kopplungsfunktion
![{\displaystyle g(\mu )=\alpha +{\boldsymbol {\gamma }}^{T}\mathbf {z} +\langle {\mathcal {B}},{\mathcal {X}}\rangle ,}](https://wikimedia.org/api/rest_v1/media/math/render/svg/0409fac29811e03211920f6546a2747891c4ca70)
wobei der Regressor
und
Tensoren sind,
ein Vektor-Regressor, der Regressand
ein Skalar und
der y-Achsenabschnitt ist. Das innere Produkt ist über die Vektorisierung
definiert. Sie nahmen nun an, dass für
eine CP-Zerlegung mit Rang
existiert
![{\displaystyle g(\mu )=\alpha +{\boldsymbol {\gamma }}^{T}\mathbf {z} +\left\langle \sum \limits _{k=1}^{R}\mathbf {b} _{k}^{(1)}\otimes \mathbf {b} _{k}^{(2)}\otimes \cdots \otimes \mathbf {b} _{k}^{(D)},{\mathcal {X}}\right\rangle .}](https://wikimedia.org/api/rest_v1/media/math/render/svg/332509db6e7cbbadc9d208732244bb67c07eecc9)
Das Khatri-Rao-Produkt
(auch spaltenweises Kronecker-Produkt) ist für zwei Matrizen
und
wie folgt definiert
![{\displaystyle A\star B:={\begin{bmatrix}\mathbf {a} _{1}\otimes \mathbf {b} _{1}&\mathbf {a} _{2}\otimes \mathbf {b} _{2}&\cdots &\mathbf {a} _{K}\otimes \mathbf {b} _{K}\end{bmatrix}}\in \mathbb {R} ^{(IJ)\times K},}](https://wikimedia.org/api/rest_v1/media/math/render/svg/236525ae2cf73fcec9779e4bcbd10aeabe68c802)
wobei
hier die Spalten der Matrizen sind und das Kronecker-Produkt genommen wird.
Mit Hilfe des Khatri-Rao-Produkt kann das Regressionsmodell nun umgeschrieben werden
![{\displaystyle g(\mu )=\alpha +{\boldsymbol {\gamma }}^{T}\mathbf {z} +\left\langle (B_{D}\star B_{D-1}\star \cdots \star B_{1})1_{R},\operatorname {vec} ({\mathcal {X}})\right\rangle }](https://wikimedia.org/api/rest_v1/media/math/render/svg/422b00442524e0de98aa3b7d92281a67d7d4af2f)
wobei
aus
Matrizen
besteht,
ein Vektor aus
Einsen ist.[1]
- Yipeng Liu, Jiani Liu, Zhen Long und Ce Zhu: Tensor Regression. In: Foundations and Trends in Machine Learning. Band 14, Nr. 4, 2021, S. 379–565, doi:10.1561/2200000087.
- ↑ a b c Hua Zhou, Lexin Li und Hongtu Zhu: Tensor Regression with Applications in Neuroimaging Data Analysis. In: Journal of the American Statistical Association. Band 108, Nr. 502, 2013, S. 540–552, doi:10.1080/01621459.2013.776499.
- ↑ Liu, Yipeng and Liu, Jiani and Long, Zhen and Zhu, Ce: Tensor Regression. In: Foundations and Trends in Machine Learning. Band 14, Nr. 4, 2021, S. 379–565, doi:10.1561/2200000087.
- ↑
Tamara G. Kolda und Brett W. Bader: Tensor Decompositions and Applications. In: SIAM Review. Band 51, Nr. 3, 2009, S. 455–500, doi:10.1137/07070111X.