Die LASSO-Regression verringert die Koeffizienten auf Null und bietet so eine effektive Modellauswahl. Ich glaube, dass es in meinen Daten bedeutsame Wechselwirkungen zwischen nominalen und kontinuierlichen Kovariaten gibt. Nicht unbedingt sind jedoch die "Haupteffekte" des wahren Modells aussagekräftig (nicht Null). Natürlich weiß ich das nicht, da das wahre Modell unbekannt ist. Mein Ziel ist es, das wahre Modell zu finden und das Ergebnis so genau wie möglich vorherzusagen.
Ich habe gelernt, dass der klassische Ansatz des Modellbaus immer einen Haupteffekt beinhaltet, bevor eine Interaktion einbezogen wird. Somit kann es nicht ein Modell ohne Haupteffekt von zwei Kovarianten sein , und Z , wenn es eine Wechselwirkung des Kovarianten ist X * Z in dem gleichen Modell. Die Funktion wählt folglich sorgfältig Modellbegriffe (z. B. basierend auf Rückwärts- oder Vorwärts-AIC) aus, die dieser Regel entsprechen.step
R
LASSO scheint anders zu arbeiten. Da alle Parameter benachteiligt sind, kann es ohne Zweifel vorkommen, dass ein Haupteffekt auf Null geschrumpft ist, während die Interaktion des besten (z. B. kreuzvalidierten) Modells ungleich Null ist. Dies finde ich insbesondere für meine Daten bei der Nutzung R
des glmnet
Pakets.
Ich habe Kritik aufgrund der oben genannten ersten Regel erhalten, dh mein endgültiges kreuzvalidiertes Lasso-Modell enthält nicht die entsprechenden Haupteffektterme einer Nicht-Null-Wechselwirkung. Diese Regel erscheint in diesem Zusammenhang jedoch etwas seltsam. Worauf es ankommt, ist die Frage, ob der Parameter im wahren Modell Null ist. Nehmen wir an, es ist eine Wechselwirkung ungleich Null, dann wird LASSO dies möglicherweise identifizieren und auf diese Weise das richtige Modell finden. Tatsächlich scheinen Vorhersagen aus diesem Modell präziser zu sein, da das Modell nicht den Haupteffekt wahr-null enthält, der effektiv eine Rauschvariable ist.
Darf ich die Kritik aus diesem Grund zurückweisen oder sollte ich irgendwie vorsorgen, dass LASSO den Haupteffekt vor dem Interaktionsbegriff beinhaltet?
Antworten:
Eine Schwierigkeit bei der Beantwortung dieser Frage besteht darin, dass es schwierig ist, LASSO mit der Idee eines "wahren" Modells in den meisten realen Anwendungen in Einklang zu bringen, die typischerweise nicht vernachlässigbare Korrelationen zwischen Prädiktorvariablen aufweisen. In diesem Fall hängen, wie bei jeder variablen Auswahltechnik, die von LASSO mit Koeffizienten ungleich Null zurückgegebenen bestimmten Prädiktoren von den Schwankungen der Stichprobenentnahme aus der zugrunde liegenden Grundgesamtheit ab. Sie können dies überprüfen, indem Sie LASSO für mehrere Bootstrap-Beispiele aus demselben Datensatz ausführen und die Sätze der zurückgegebenen Prädiktorvariablen vergleichen.
Darüber hinaus bedeutet, wie @AndrewM in einem Kommentar feststellte, die Verzerrung der von LASSO bereitgestellten Schätzungen, dass Sie die Ergebnisse nicht "so genau wie möglich" vorhersagen werden. Sie prognostizieren vielmehr Ergebnisse, die auf einer bestimmten Auswahl des unvermeidbaren Kompromisses zwischen Bias und Varianz basieren.
Angesichts dieser Schwierigkeiten würde ich hoffen, dass Sie die Größen der Haupteffekte der Variablen, die zur Interaktion beitragen, nicht nur für einen Kritiker selbst herausfinden möchten. Es gibt ein Paket in R, glinternet , das genau das tut, was Sie brauchen (obwohl ich keine Erfahrung damit habe):
Wenn Sie nicht über zu viele Prädiktoren verfügen, können Sie stattdessen auch eine Gratregression in Betracht ziehen, die Koeffizienten für alle Variablen zurückgibt, die möglicherweise weniger von den Schwankungen Ihrer bestimmten Datenstichprobe abhängig sind.
quelle
Ich bin spät dran für eine Party, aber hier sind einige meiner Gedanken zu deinem Problem.
Lasso wählt aus, was informativ ist. Betrachten wir Lasso als Methode, um die höchste Vorhersageleistung mit der geringsten Anzahl von Merkmalen zu erzielen. Es ist völlig in Ordnung, dass Lasso in einigen Fällen die Interaktion und nicht die Haupteffekte auswählt. Es bedeutet nur, dass die Haupteffekte nicht informativ sind, sondern Wechselwirkungen.
Sie berichten nur, was Sie herausgefunden haben. Sie haben eine Methode angewendet und einige Ergebnisse erzielt. Sie melden es auf transparente Weise, die Reproduzierbarkeit ermöglicht. Meiner Meinung nach ist Ihre Arbeit erledigt. Die Ergebnisse sind objektiv, Sie haben gefunden, was Sie gefunden haben, und es ist nicht Ihre Aufgabe, zu rechtfertigen, warum Sie nichts anderes gefunden haben.
Alle Einheiten sind beliebig. Interaktionen sind nur Einheiten. Nehmen wir an, Sie studieren Farben. Farben können in Ihrem Modell als Wellenlänge oder logarithmische Wellenlänge oder als 3 RGB-Variablen oder als Wechselwirkung von Farbton und Tönung usw. enthalten sein. Es gibt keine inhärent korrekte oder inkorrekte Darstellung von Farben. Sie wählen diejenige aus, die für Ihr Problem am sinnvollsten ist. Interaktionen sind auch nur Einheiten, die Sie beliebig verwenden können. Ist der Bereich eines Fensters nur das Zusammenspiel von Höhe und Breite, sollten Sie Höhe und Breite eines Fensters in Ihr Modell aufnehmen? Geschwindigkeit ist nur ein Zusammenspiel von Masse und Geschwindigkeit. Und Geschwindigkeit ist nur ein Zusammenspiel von Zeit und Entfernung. Mannstunden sind nur das Zusammenspiel von Zeit und Anzahl der Beschäftigten. Mathematisch entspricht die Behandlungsdosis * Alter der Höhe * Breite. Das Sprichwort "Sie müssen immer die Haupteffekte einbeziehen" wird überbewertet.
Lasso approximiert kein reales Modell, ist nicht für Inferenz gedacht und ausgewählte Variablen sind instabil. Wenn Sie informative Prädiktoren korreliert haben, wählt Lasso tendenziell einen aus und schiebt die anderen auf 0, sodass in Ihrem Modell ein erheblicher Anteil informativer Variablen weggelassen wird. Wie in den Kommentaren ausgeführt, wählt Lasso, wenn Sie das beste Lambda für die Kreuzvalidierung finden, mehr Variablen als ein reales Modell. Ein weiteres Problem ist, dass die Auswahl von Lasso instabil ist. Wenn Sie also Lasso erneut mit einer anderen Stichprobe als einer Grundgesamtheit ausführen, werden Sie mit einem anderen Satz ausgewählter Variablen enden. Legen Sie daher nicht viel Wert darauf, welche Variablen ausgewählt werden. Außerdem sind die Betas voreingenommen und können daher nicht für einen klassischen parametrischen Hypothesentest verwendet werden. Es gibt jedoch Möglichkeiten, dies zu umgehen (nächster Punkt)
Inferenz mit Lasso. Lasso kann verwendet werden, um Rückschlüsse auf Prädiktoren zu ziehen. Am einfachsten ist es, sie zu booten und zu zählen, wie oft jede Variable ausgewählt wurde, durch die Anzahl der Resamples zu dividieren und Ihre p-Werte zu erhalten. P ist in diesem Fall die Wahrscheinlichkeit, dass eine Variable durch Lasso ausgewählt wird. Es kann immer noch zu signifikanten Interaktionseffekten und unbedeutenden Haupteffekten kommen, aber das ist kein Problem, sondern kann auch bei normalen Hypothesentests auftreten. Eine großartige Behandlung dieses Themas findet sich in Hastie et. al. kostenloses Buch: Statistisches Lernen mit Sparsity, Kapitel 6 http://web.stanford.edu/~hastie/StatLearnSparsity/Der Bootstrap kann für einen ganzen Bereich von Lambda-Werten durchgeführt werden, was zu einem Stabilitätspfad für alle Variablen führt. Dies kann mit einem Stabilitätsauswahlansatz erweitert werden, um eine Reihe signifikanter Variablen zu finden, die für familienbezogene Fehler korrigiert sind. http://onlinelibrary.wiley.com/doi/10.1111/j.1467-9868.2010.00740.x/abstract Es gibt auch einige andere Methoden, um auf Lasso zu schließen, die nützlich sein könnten. Nämlich adaptives Lasso oder desparsifiziertes Lasso. Eine Übersicht mit der R-Implementierung finden Sie hier. DOI: 10.1214 / 15-STS527 oder IMO: leicht verständlichere Erklärung im Buhlmanm, van de Geer-Buch: Statistik für hochdimensionale Daten http://www.springer.com/la/book/9783642201912
Andere lassobezogene Dinge sollten beachtet werden. Ridge oder elastisches Netz übertreffen meines Wissens eher das Lasso. Wenn es ein Domänenwissen über Variablen gibt, kann Gruppen-Lasso oder spärliches Gruppen-Lasso verwendet werden, um Lasso zu zwingen, die gesamte Gruppe von Prädiktoren entweder beizubehalten oder zu verwerfen, anstatt sie einzeln zu behandeln (z. B. Genpfade, Dummy-codierte Faktorvariable). Für räumliche oder geordnete Daten kann fusioniertes Lasso verwendet werden. Randomisiertes Lasso, das in dem oben erwähnten Stabilitätsauswahlpapier eingeführt wurde, führt tendenziell zu sparsameren Modellen mit der gleichen Leistung wie ein Standard-Lasso.
quelle
Ich habe eine Anwendung, bei der speziell eine kleine Anzahl von Haupteffekten nicht bestraft werden soll. Sei Y = X.Main Beta + X.Inter Beta.Inter + Eps
a) fit.Y = OLS (X.main, Y). Sei tilde.Y = Y - prognostizieren (fit.Y, X.main) b) fit [, j] = OLS (X.main, X.inter [, j]) für j = 1 ... k. Lassen Sie tilde.X.inter [, j] = X.inter [, j] - vorhersagen (fit.j, X.main) c) fit = Lasso (tilde.X.inter, tilde.y). Der Koeffizient für den Haupteffekt entspricht fit.Y - coef (fit) * fit [, 1: dim (X.inter) [2]]. Der Wechselwirkungskoeffizient ist gleich coef (fit)
In den Schritten a und b muss keine Probenteilung durchgeführt werden. Das ist für mich in Ordnung!
quelle