Lineare Regression, wenn Sie nur


13

Angenommen , Xβ=Y .

Wir wissen nicht , Y genau, nur ihre Korrelation mit jedem Prädiktor, XtY .

Die gewöhnliche Lösung der kleinsten Quadrate (OLS) ist β=(XtX)1XtY und es gibt kein Problem.

Angenommen, XtX ist nahezu singulär (Multikollinearität), und Sie müssen den optimalen Kammparameter schätzen. Alle Methoden scheinen die genauen Werte von zu benötigen Y.

Gibt es eine alternative Methode, wenn nur XtY bekannt ist?


interessante Frage. Vielleicht würde eine Art EM-Algorithmus funktionieren ...
Wahrscheinlichkeitsanalyse

Ich verstehe nicht, können Sie die Kreuzvalidierung nicht zur Schätzung des optimalen Kammparameters verwenden?
Pardis

@Pardis: Da in der Frage keine Verlustfunktion angegeben ist, wissen wir nicht, was optimal ist. Können Sie die Probleme erkennen, die auftreten, wenn die Verlustfunktion die MSE ist?
Kardinal

1
@ JohnSmith: Sie spielen auf den Punkt an, an dem ich gefahren bin. Es gibt keinen Hinweis darauf, wie die "Optimalität" zu messen ist. Was Sie effektiv tun, ist die Einführung einer anderen Metrik (Distanzfunktion), um die "Qualität" der Vorhersage oder Anpassung zu messen. Wir brauchen mehr Details vom OP, um sehr weit zu kommen, vermute ich.
Kardinal

1
@Pardis: Wie Sie bemerken, ist es nicht das Problem, die Schätzungen zu finden. :) Wenn Sie sich jedoch für eine Kreuzvalidierung entscheiden, wie schätzen Sie die MSE außerhalb der Stichprobe ein, dh die nicht berücksichtigte Falte für jede Iteration? :)
Kardinal

Antworten:


8

Das ist eine interessante Frage. Überraschenderweise ist es möglich, unter bestimmten Voraussetzungen etwas zu tun, es besteht jedoch ein möglicher Informationsverlust über die Restvarianz. Es kommt darauf anX wie viel verloren geht.

Betrachten wir die folgende Singularwertzerlegung X=UDVt von X mit U an n×p Matrix mit orthonormalen Spalten, D eine Diagonalmatrix mit positiven Singularwerten d1d2...dp>0 in der Diagonale und V a p×p orthogonale Matrix. Dann sind die Spalten von U eine orthonormale Basis für den Spaltenraum von Xund

Z=UtY=D1VtVDUtY=D1VtXtY
ist der Koeffizientenvektor für die Projektion von Y auf diesen Spaltenraum, wenn in der U Spaltenbasis expandiert . Aus der Formel sehen wir, dass Z nur aus Kenntnis von X und berechenbar ist XtY.

Da der Grat Regressions Prädiktor für ein gegebenes berechnet werden als Y = X ( X T X + λ I ) - 1 X t Y = U D ( D 2 + λ I ) - 1 D U t Y = U D ( D 2 + λ I ) - 1 D Z sehen wir, dass die Koeffizienten für den Gratregressionsprädiktor in derλ

Y^=X(XtX+λI)1XtY=UD(D2+λI)1DUtY=UD(D2+λI)1DZ
-Säule Basis sind Z = D (U Nun nehmen wir die Verteilungsannahme an, dass Y das n- dimensionale Mittel ξ und die Kovarianzmatrix σ 2 I n hat . Dann hat Z das p- dimensionale Mittel U t ξ und die Kovarianzmatrix σ 2 I p . Stellen wir uns ein unabhängigesmit der gleichen Verteilung wie Y vor (alles von hier aus bedingt auf X ), so ist das entsprechende Z
Z^=D(D2+λI)1DZ.
Ynξσ2InZpUtξσ2IpYNewYX die gleiche Verteilung wieZund ist unabhängig und E | | Y New - Y | | 2ZNew=UtYNewZ Hierdie dritte Gleichung folgt durch Orthogonalität vonYNeu-UZNeuenundUZNew-U Z und den vierten durch die TatsachedassUorthonormal Spalten. Die GrößeErr0ist ein Fehler, über den wir keine Informationen erhalten können, der jedoch nicht vonλabhängt
E||YNewY^||2=E||YNewUZNew+UZNewUZ^||2=E||YNewUZNew||2+E||UZNewUZ^||2=Err0+E||ZNewZ^||2.
YNewUZNewUZNewUZ^UErr0λentweder. Um den Vorhersagefehler auf der linken Seite zu minimieren, müssen wir den zweiten Term auf der rechten Seite minimieren.

Durch eine Standardberechnung

E||ZNewZ^||2=E||ZZ^||2+2i=1pcov(Zi,Z^i)=E||ZZ^||2+2σ2i=1pdi2di2+λdf(λ).
Here df(λ) is known as the effective degrees of freedom for ridge regression with parameter λ. An unbiased estimator of E||ZZ^||2 is
err(λ)=||ZZ^||2=i=1p(1di2di2+λ)2Zi2.

We combine this with the (unbiased) estimator

err(λ)+2σ2df(λ)
of E||ZNewZ^||2 given that we know σ2, which we then need to minimize. Obviously, this can only be done if we know σ2 or have a reasonable guess at or estimator of σ2.

Estimating σ2 can be more problematic. It is possible to show that

E||ZZ^||2=σ2(pi=1pdi2di2+λ(2di2di2+λ)d(λ))+bias(λ)2.
Thus if it is possible to choose λ so small that the squared bias can be ignored we can try to estimate σ2 as
σ^2=1pd(λ)||ZZ^||2.
If this will work depends a lot on X.

For some details see Section 3.4.1 and Chapter 7 in ESL or perhaps even better Chapter 2 in GAM.


0

Define β as in the question and β(λ,K)=[(XTX)KK+λI]1(XTY)K for various parameters λ and sets K of sample labels. Then e(λ,K):=Xβ(λ,K)Y2XβY2 is computable since the unknown Y2 drops out when expanding both norms.

This leads to the following algorithm:

  • Compute the e(λ,K) for some choices of the training set K.
  • Plot the results as a function of λ.
  • Accept a value of λ where the plot is flattest.
  • Use β=[XTX+λI]1XTY as the final estimate.

1
I'm guessing "where the plot is flattest" will be at λ very small, like roughly 0 :)
jbowman

@jbowman: This will happen only if the problem is well-conditioned and needs no regularization, then λ=0 is indeed adequate. In the ill-conditioned case, the prediction of the items outside K will be poor because of overfitting, and e(λ,K) will therefore be large.
Arnold Neumaier

3
@ArnoldNeumaier: (XTY)K isn't computable. We only know the correlation with each predictor. (XTY) is in the "predictor domain", not in the "Y domain" (If N is the sample size and p the number of predictors, we only have p values, one for each predictor).
Jag

@Jag: Then there is not enough information for selecting λ. But XTY must have been collected somehow. If during its collection you partition the sample into k batches and assemble the XTY separately for each batch then one can reserve one batch each for cross validation.
Arnold Neumaier

@ArnoldNeumaier: XTY are externally given, don't collected.
Jag
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.