Regression mit gleichen Werten für abhängige Variablen?
Ich führe eine Regressionsaufgabe an einem relativ kleinen Datensatz durch (4000 Beobachtungen). Diese 4000 Beobachtungen sind so gruppiert, dass es bei Betrachtung der abhängigen Variablen nur etwa 170 verschiedene Werte gibt, was bedeutet, dass ich für ~ 20 verschiedene Sätze unabhängiger Variablen den gleichen Wert in der abhängigen Variablen haben sollte.
Mein ursprünglicher Ansatz bestand bisher darin, mich auf eine einfache lineare Regression zu stützen. Wenn ich jedoch eine Streuung für die außerhalb der Stichprobe vorhergesagten v / s-Istwerte zeichne, scheint es keine Anpassung zu geben. Andere Modelle wie das baumbasierte RandomForest- und das XGBoost-Modell zeigen ähnliche Ergebnisse.
Ich habe mehrere Ansätze ausprobiert, einschließlich der Lockerung der Hyperparameter für mein Modell und der Verwendung der k-fachen Kreuzvalidierung, um die Leistung über mehrere Sätze hinweg zu bewerten. Die Leistung der Modelle bleibt jedoch gleich.
Ich kann diesen Datensatz nicht erweitern, und es ist auch keine Option, ihn auf nur 170 Werte zu reduzieren, da das Problem strukturiert ist (wir möchten die Auswirkung der unabhängigen Variablen in jeder Beobachtung auf die abhängige Variable sehen). Welche anderen Techniken und Methoden sollte ich beachten, um die Leistung meines Modells zu verbessern?
Wenn ich mir die Vorhersagen in der Stichprobe anschaue, sehe ich auch, dass für mein XGBoost-Modell für dieselbe eindeutige abhängige Variable derselbe Wert vorhergesagt wird, obwohl die unabhängigen Variablen geringfügig voneinander abweichen. Sollte das Modell nicht auch bei der Stichprobe leicht unterschiedliche Werte pro Beobachtung vorhersagen?
Weitere Informationen zu den Daten - Die unabhängigen Variablen sind Preis und Spezifikationen von Produkten, und die abhängige Variable ist der Produktpreis eines anderen Unternehmens in derselben Kategorie wie das Produkt, dessen Merkmale als unabhängige Variablen verwendet werden.
Jetzt habe ich verschiedene Produkte, die dem von mir prognostizierten Produktpreis ähnlich sind, und hier wird davon ausgegangen, dass ich bei einem vergleichbaren Produkt sehen möchte, wie hoch der Preis für ein Produkt auf demselben Raum sein würde, der sich noch befindet freigegeben werden. Mit unterschiedlichen Vergleichswerten für jedes Produkt sollte ich idealerweise eine Preisverteilung als Ergebnis meiner Regression erhalten.
Antworten
Schreiben wir ein einfaches lineares Regressionsmodell mit einem zufälligen Effekt $\alpha$ gemeinsam für die Beobachtungen mit einer gemeinsamen Antwort (es hätte also 170 verschiedene Realisierungen.) $$ Y_i=\mu+\alpha+X_i^T\beta +\epsilon_i $$ wo $\epsilon_i$ist der Fehlerbegriff. Nein, betrachten Sie eine der Gruppen mit einer gemeinsamen Antwort. Innerhalb dieser Gruppe haben wir$$\underbrace{Y_i-\mu-\alpha}_{\text{constant!}}=X_i^T\beta+\epsilon_i $$ so die Kovariablen $X_i$ und $\epsilon_i$kann nicht unabhängig sein. Das kann die Schätzprobleme erklären, die Sie sehen! da eine solche Abhängigkeit die Konsistenzmerkmale des Schätzers der kleinsten Quadrate zerstören kann.
Wenn Sie beispielsweise eine unabhängige Berechnung (nicht basierend auf der Regressionsmodellierung) der Produktkosten haben, können Sie diese als Instrument für die IV-Schätzung (Instrumentalvariablen) verwenden. Durchsuche diese Seite. Ich habe keine Erfahrung mit solchen Methoden, nehmen Sie dies also nur als Vorschlag.
Ergänzung: Da Sie für Ihre Daten eine Kreuzvalidierung verwenden, um eine realistische Kreuzvalidierung zu erhalten, halten Sie die Gruppen mit gemeinsamer Antwort zusammen.