Frage:
Modellbewertung und Vergleich zur Auswahl des besten Modells
Gago-Silva
2012-02-15 23:11:29 UTC
view on stackexchange narkive permalink

Worauf sollte ich beim Vergleich der mit verschiedenen Modellen in R erzielten Ergebnisse achten, um das beste auszuwählen?

Wenn ich beispielsweise die folgenden 4 Modelle verwende, die auf dieselbe An- / Abwesenheitsprobe angewendet wurden, aus der entnommen wurde ein Arten-Datensatz mit denselben Variablen:

  • Verallgemeinertes lineares Modell

  • Verallgemeinerte additive Modelle Klassifizierung

  • Regressionsbaum

  • Künstliche Neuronale Netze

Soll ich alle Methoden von AIC, Kappa, vergleichen? oder Kreuzvalidierung?

Werde ich jemals sicher sein, das beste Modell auszuwählen?

Was passiert, wenn ich die Vorhersage dieser 4 Modelle mit einem Bayes-Faktor vergleiche? Kann ich sie vergleichen?

Drei antworten:
gung - Reinstate Monica
2012-02-16 00:19:34 UTC
view on stackexchange narkive permalink

Sie verwenden eine Vielzahl verschiedener Modelltypen , was dies zu einer interessanten Situation macht. Wenn Leute sagen, dass sie mit der Modellauswahl beschäftigt sind, bedeuten sie normalerweise, dass sie einen Modelltyp mit unterschiedlichen Sätzen von Prädiktoren haben (zum Beispiel ein multiples Regressionsmodell mit den Variablen A, B, C & D gegen A, B & A * B usw.). Beachten Sie, dass wir zur Bestimmung des besten Modells angeben müssen, was "am besten" bedeutet. Da Sie sich auf Data Mining-Ansätze konzentrieren, gehe ich davon aus, dass Sie die Vorhersagegenauigkeit maximieren möchten. Lassen Sie mich ein paar Dinge sagen:

  1. Können / sollten Sie sie mit einem Bayes-Faktor vergleichen? Ich vermute, dass dies möglich ist, aber ich habe dort wenig Fachwissen, daher sollte ich einen anderen Lebenslauf-Verfasser dies ansprechen lassen. Es gibt viele hier, die in diesem Thema ziemlich stark sind.
  2. Soll ich alle Methoden von AIC vergleichen? Ich würde den AIC in Ihrer Situation nicht verwenden. Im Allgemeinen schätze ich den AIC sehr, aber er ist nicht für jede Aufgabe geeignet. Es gibt verschiedene Versionen des AIC, aber im Wesentlichen funktionieren sie gleich: Der AIC passt ein Maß für die Anpassungsgüte an die Fähigkeit eines Modells an, Anpassungsgüte zu erzeugen. Dazu wird das Modell für die Anzahl der Parameter bestraft. Dies setzt also voraus, dass jeder Parameter gleichermaßen zur Fähigkeit eines Modells beiträgt, Daten anzupassen. Beim Vergleich eines multiplen Regressionsmodells mit einem anderen multiplen Regressionsmodell ist dies richtig. Es ist jedoch überhaupt nicht klar, dass das Hinzufügen eines anderen Parameters zu einem multiplen Regressionsmodell gleichermaßen die Fähigkeit des Modells erhöht, Daten anzupassen, wie das Hinzufügen eines weiteren Parameters zu einem ganz anderen Typ des Modells (z , ein neuronales Netzwerkmodell oder ein Klassifizierungsbaum).
  3. Soll ich alle Methoden von Kappa vergleichen? Ich weiß auch etwas weniger über die Verwendung von Kappa für dieses Ziel, aber hier ist eine Ressource mit einigen guten allgemeinen Informationen darüber, und hier ist ein Artikel, über den ich gestolpert bin > Verwendet es auf diese Weise und kann für Sie hilfreich sein (nb, ich habe es nicht gelesen).
  4. Soll ich alle Methoden durch Kreuzvalidierung vergleichen? Dies ist wahrscheinlich die beste Wahl. Das ausgewählte Modell minimiert den Vorhersagefehler bei einem Holdout-Satz.
  5. "Werde ich jemals sicher sein, das beste Modell auszuwählen?" Nee. Wir spielen hier ein probabilistisches Spiel, und das ist leider auch so. Ein Ansatz, der sich wahrscheinlich lohnt, besteht darin, Ihre Daten zu booten und den Modellauswahlansatz Ihrer Wahl auf jedes Boot-Beispiel anzuwenden. Dies gibt Ihnen eine Vorstellung davon, wie deutlich ein Modell gegenüber den anderen bevorzugt wird. Dies wird rechenintensiv sein (gelinde gesagt), aber eine kleine Anzahl von Iterationen sollte für Ihre Zwecke ausreichen, ich sollte denken, 100 wären genug.
  6. ol>
[Optimale Klassifikatorauswahl und negative Verzerrung bei der Fehlerratenschätzung: Eine empirische Studie zur hochdimensionalen Vorhersage] (http://bit.ly/wbGHSf) ist ein interessantes Papier, in dem überoptimistische Vorhersagefehler bei der Auswahl eines „besten“ Modells diskutiert werden mehrere, einschließlich derjenigen, über die in der Abschlussarbeit nicht berichtet wurde, von [AL Boulesteix] (http://bit.ly/wgsewg). (Beim Überprüfen der Referenz bin ich auf diesen internen Bericht gestoßen, den ich nicht lesen konnte: [Korrigieren der optimal ausgewählten Resampling-basierten Fehlerrate: Eine reibungslose analytische Alternative zur verschachtelten Kreuzvalidierung] (http://bit.ly) / wNTueQ).)
@gung Würden Sie dann empfehlen: 1) Zeichnen Sie zuerst 100 Bootstrap-Beispiele aus dem Datensatz, 2) Finden Sie einen optimalen Satz von Prädiktoren für jedes der 4 Modelle für jedes Bootstrap-Beispiel, 3) Finden Sie das am besten passende Modell für jeden Bootstrap, 4) Abschließend auf dem besten Modell der vier (was möglicherweise nicht so einfach ist wie die Auswahl eines Modells, das die meisten Steckplätze Nr. 1 in den 100 Bootstrap-Beispielen belegt).
@RobertF, so etwas könnte der richtige Weg sein. Allerdings würde ich mich wahrscheinlich nicht darin mischen, den "optimalen Satz von Prädiktoren" mit dem Rest zu finden. Erstens führt dies zu einer * enormen * zusätzlichen Komplexität des Problems, und die meisten Ansätze dazu führen wahrscheinlich zu schlechteren Modellen als nur zur Anpassung des vollständigen Modells (vgl. Meine Antwort hier: [Algorithmen für die automatische Modellauswahl] (http://stats.stackexchange.com/questions/20836//20856#20856)). Mit anderen Worten, Sie müssten Kreuzvalidierungen mit Ihren Kreuzvalidierungen durchführen, die zu einer kombinatorischen Explosion führen.
Kullback Liebler Diskrepanzmaße, von denen der AIC eine schöne Form ist, sind ein leistungsfähiges und starkes parametrisches Maß.Das wäre unsere beste Wahl gewesen, wenn die Wahrscheinlichkeiten vergleichbar wären.Die Informationstheorie hat eine sogenannte normalisierte Wahrscheinlichkeit.Mit der Verwendung normalisierter Wahrscheinlichkeiten können wir AIC möglicherweise über Modellklassen hinweg verwenden.Ich arbeite derzeit an diesem Thema.
Mike Lawrence
2012-02-16 00:13:57 UTC
view on stackexchange narkive permalink

In meinen Augen ist die Kreuzvalidierung ein ziemlich solider Goldstandard für Vergleiche, die sich auf die Fähigkeit der Modelle konzentrieren, neue Daten vorherzusagen. Zumindest für den GLM-Fall wurde jedoch gezeigt, dass AIC (Stone, 1977) asymptotisch der Kreuzvalidierung entspricht. Wenn Sie also mit einer asymptotischen Annahme einverstanden sind, können Sie sich etwas sparen Berechnen Sie die Zeit, indem Sie mit AIC arbeiten, anstatt die vollständige Kreuzvalidierung zu berechnen.

Andrew Dempsey
2012-02-15 23:13:14 UTC
view on stackexchange narkive permalink

Angenommen, Sie verwenden Klassifizierungsfehler oder ähnliches wie Ihr Leistungsmaß. Warum versuchen Sie dann nicht, alle Modelle gegenseitig zu validieren?

Teilen Sie Ihre Daten beispielsweise in 10 Blöcke auf und tun Sie dies dann 10 Runden bauen und testen, wobei einer dieser Brocken als Testsatz und die anderen neun als Training verwendet werden (dh Runde 1: Zug 2-10, Test 1. Runde 2: Zug 1 + 3-10, Test 2. Runde 3: Zug 1-2 + 4-10, Test 3).

Mit diesem Ansatz können Sie herausfinden, welcher Algorithmus (und welche Parameter für diese Modelle) die beste Leistung erbringen.

Eines der Dinge Anfangs hatte ich Probleme damit, dass nicht so sehr das eigentliche Modell, das erstellt wird, von Bedeutung ist, sondern vielmehr die Funktion, die Sie aufrufen, und die Parameter, die Sie dafür bereitstellen.

Es gibt Bücher zu diesem Thema. Die, die ich benutze, ist Harrells "Regressionsmodellierungsstrategien". Er kritisiert die N-fache Kreuzvalidierung als ineffiziente Verwendung von Daten und schlägt vor (und bietet die zu implementierende Software an), Bootstrap-Methoden zu verwenden.


Diese Fragen und Antworten wurden automatisch aus der englischen Sprache übersetzt.Der ursprüngliche Inhalt ist auf stackexchange verfügbar. Wir danken ihm für die cc by-sa 3.0-Lizenz, unter der er vertrieben wird.
Loading...