Tensorregression

Aus testwiki
Zur Navigation springen Zur Suche springen

Als Tensorregression bezeichnet man in der Statistik ein Regressionsmodell basierend auf Tensoren. Bei einer solchen Regression können entweder der Regressor X, der Regressand Y 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 (Vorlage:EnS) abgekürzt wird.

Tensorregression

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 {𝒳n,𝒴n}1nN gegeben, dann ist das Tensorregressionsmodell von der Form

𝒴n=f(𝒳n,)+n,

wobei

𝒴ni=1Mqi,𝒳ni=1Lpi,,ni=1Mqi

Tensoren und q1,,qM,p1,,pL natürliche Zahlen sind. Typischerweise besitzt der Koeffiziententensor einen viel höheren Rang als die anderen Tensoren.

Durch Konkatenation 𝒴Nq1qM,𝒳Np1pL,Nq1qM, lässt sich das auch kompakter als

𝒴=f(𝒳,)+

hinschreiben.[2]

Tensorapproximation

Für einen beliebigen Tensor T sucht man einen Tensor T^ mit einer niedrigen Rang-Zerlegung, welche T am besten approximiert, welches zu einem Optimierungsproblem der Form

(T)=min\limits T^TT^F

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 Vorlage:EnS genannt.

Tensorzerlegungen

CP-Zerlegung

Sei Tq1q2qD ein Tensor. Eine CP-Zerlegung für ein R ist eine Rang-R-Zerlegung von T in Elementartensoren

T=k=1Rλk𝐯k(1)𝐯k(2)𝐯k(D),

wobei die 𝐯k(1),,𝐯k(D) Vektoren der Form 𝐯k(i)=(vk,1(i),vk,2(i),,vk,qi(i))Tqi sind und λ=(λ1,,λR)TR ein Gewichtsvektor zur Normierung ist. Die minimale Zahl

rank(T)=min{R:T=k=1R𝐯k(1)𝐯k(2)𝐯k(D)}

nennt man den Rang von T und er ist invariant unter Basiswechsel. Die Berechnung des Rangs ist jedoch NP-schwer.[3]

Tucker-Zerlegung

Die Tucker-Zerlegung (oder auch HOSVD) zerlegt einen Tensor Tq1q2qD in einen Kern-Tensor GR1R2RD und D Faktor-Matrizen A1q1×R1,A2q2×R2,,ADqD×RD

T=G×A1××AD

elementweise geschrieben

T=j1=1R1j2=1R2jD=1RDgi1,i2,,iD𝐚j1(1)𝐚j2(2)𝐚jD(D)

wobei 𝐚jk(k)qk für k=1,,d und jk=1,,Rk Vektoren sind und gi1,i2,,iD. Die Parameter (R1,,RD) nennt man Tucker-Ränge.

Regressionsmodelle

Verallgemeinerte lineare Tensorregression mit CP-Zerlegung

Die von Zhou et al.[1] betrachtete Verallgemeinerung der verallgemeinerten linearen Modelle ist die Kopplungsfunktion

g(μ)=α+γT𝐳+,𝒳,

wobei der Regressor 𝒳Np1p2pL und Tensoren sind, 𝐳 ein Vektor-Regressor, der Regressand y ein Skalar und α der y-Achsenabschnitt ist. Das innere Produkt ist über die Vektorisierung ,𝒳=vec(),vec(𝒳) definiert. Sie nahmen nun an, dass für eine CP-Zerlegung mit Rang R existiert

g(μ)=α+γT𝐳+k=1R𝐛k(1)𝐛k(2)𝐛k(D),𝒳.

Das Khatri-Rao-Produkt (auch spaltenweises Kronecker-Produkt) ist für zwei Matrizen AI×K und BJ×K wie folgt definiert

AB:=[𝐚1𝐛1𝐚2𝐛2𝐚K𝐛K](IJ)×K,

wobei 𝐚1,,𝐚K,𝐛1,,𝐛K hier die Spalten der Matrizen sind und das Kronecker-Produkt genommen wird.

Mit Hilfe des Khatri-Rao-Produkt kann das Regressionsmodell nun umgeschrieben werden

g(μ)=α+γT𝐳+(BDBD1B1)1R,vec(𝒳)

wobei BDBD1B1dpd×R aus D Matrizen Bipi×R besteht, 1R=(1,,1) ein Vektor aus R Einsen ist.[1]

Literatur

Einzelnachweise