Wann sollte die Kreuzvalidierung nicht verwendet werden?


10

Während ich die Website durchlese, schlagen die meisten Antworten vor, dass eine Kreuzvalidierung in Algorithmen für maschinelles Lernen durchgeführt werden sollte. Als ich jedoch das Buch "Maschinelles Lernen verstehen" las, sah ich, dass es eine Übung gibt, bei der es manchmal besser ist, keine Kreuzvalidierung zu verwenden. Ich bin wirklich verwirrt. Wann ist ein Trainingsalgorithmus für die gesamten Daten besser als eine Kreuzvalidierung? Kommt es in realen Datensätzen vor?

Sei k Hypothesenklassen. Angenommen , Sie gegeben werden iid Trainingsbeispiele und Sie möchten , um die Klasse lernen . Betrachten Sie zwei alternative Ansätze:H1,...,HkmH=i=1kHi

  1. Lernen Sie anhand der Beispiele anhand der ERM-RegelHm

  2. Teilen Sie die m Beispiele in einen Trainingssatz der Größe und einen Validierungssatz der Größe für einige . Wenden Sie dann den Ansatz der Modellauswahl mithilfe der Validierung an. Das heißt, trainieren Sie zuerst jede Klasse anhand der Trainingsbeispiele unter Verwendung der ERM-Regel in Bezug auf und lassen Sie die resultierenden Hypothesen sein . Zweitens wenden Sie die ERM-Regel in Bezug auf die endliche Klasse { } auf die Validierungsbeispiele an.(1α)mαmα(0,1)Hi(1α)mHih^1,,h^kh^1,,h^kαm

Beschreiben Sie Szenarien, in denen die erste Methode besser ist als die zweite und umgekehrt.

Bild der Quastion .


1
Es ist eine interessante Übung, aber ich stimme dem Label nicht zu. Ich denke, dass die Kreuzvalidierung hier perfekt funktioniert. Als Tangential wäre es wirklich vorzuziehen, wenn Sie die Übung abtippen und zitieren würden, anstatt ein Bild anzuhängen. Das Bild ist für Benutzer mit Sehbehinderung nicht zugänglich.
Matthew Drury

Ein möglicher Nachteil bei der Verwendung der Kreuzvalidierung könnte eine Überanpassung sein (wie im Fall des Weglassens einer Kreuzvalidierung). Im Wesentlichen optimieren wir mithilfe von Kreuzvalidierungstechniken die Parameter des Modells anhand des Validierungsdatensatzes (und nicht anhand des Testdatensatzes). Aber manchmal kann diese Abstimmung etwas zu viel gehen, was zu einer möglichen Überanpassung führen kann, wenn der Klassifikator am Testsatz getestet wird.
Upendra Pratap Singh

1
Was bedeutet "Parität" hier?
Shadowtalker

@ Schattentalker Ich denke, es bedeutet Summation Modulo 2.
SMA.D

Unterscheiden Sie zwischen (wiederholter) Kreuzvalidierung und Bootstrapping?
usεr11852

Antworten:


11

Nachrichten zum Mitnehmen:


Leider ändert der von Ihnen zitierte Text zwei Dinge zwischen Ansatz 1 und 2:

  • Ansatz 2 führt eine Kreuzvalidierung und eine datengesteuerte Modellauswahl / -optimierung / -optimierung durch
  • Ansatz 1 verwendet weder eine Kreuzvalidierung noch eine datengesteuerte Modellauswahl / -optimierung / -optimierung.
  • Die Kreuzvalidierung nach Ansatz 3 ohne datengesteuerte Modellauswahl / -optimierung / -optimierung ist in dem hier diskutierten Kontext durchaus machbar (und IMHO würde zu mehr Einsicht führen)
  • Ansatz 4: Keine Kreuzvalidierung, sondern auch datengesteuerte Modellauswahl / -optimierung / -optimierung ist möglich, jedoch komplexer zu konstruieren.

IMHO, Kreuzvalidierung und datengesteuerte Optimierung sind zwei völlig unterschiedliche (und weitgehend unabhängige) Entscheidungen bei der Festlegung Ihrer Modellierungsstrategie. Die einzige Verbindung besteht darin, dass Sie Kreuzvalidierungsschätzungen als Zielfunktion für Ihre Optimierung verwenden können. Es gibt jedoch auch andere Zielfunktionen, die zur Verwendung bereit sind, und es gibt andere Verwendungszwecke von Kreuzvalidierungsschätzungen (wichtig ist, dass Sie sie zur Überprüfung Ihres Modells verwenden können, auch als Validierung oder Test bezeichnet).

Leider ist die Terminologie des maschinellen Lernens meiner Meinung nach derzeit ein Chaos, das hier auf falsche Verbindungen / Ursachen / Abhängigkeiten hindeutet.

  • Wenn Sie Ansatz 3 nachschlagen (Kreuzvalidierung nicht zur Optimierung, sondern zur Messung der Modellleistung), stellen Sie fest, dass die Kreuzvalidierung "Entscheidung" im Vergleich zum Training für den gesamten Datensatz in diesem Zusammenhang eine falsche Zweiteilung darstellt: Bei Verwendung der Kreuzvalidierung Um die Leistung des Klassifikators zu messen, wird die Kreuzvalidierungszahl als Schätzung für ein Modell verwendet, das für den gesamten Datensatz trainiert wurde. Dh Ansatz 3 beinhaltet Ansatz 1.

  • Schauen wir uns nun die zweite Entscheidung an: datengesteuerte Modelloptimierung oder nicht. Dies ist meiner Meinung nach der entscheidende Punkt hier. Und ja, es gibt reale Situationen, in denen es besser ist, keine datengesteuerte Modelloptimierung durchzuführen. Datengesteuerte Modelloptimierung ist mit Kosten verbunden. Sie können sich das so vorstellen: Die Informationen in Ihrem Datensatz werden verwendet, um nicht nur das zu schätzenpParameter / Koeffizienten des Modells, aber die Optimierung schätzt weitere Parameter, die sogenannten Hyperparameter. Wenn Sie den Modellanpassungs- und Optimierungs- / Optimierungsprozess als Suche nach den Modellparametern beschreiben, bedeutet diese Hyperparameteroptimierung, dass ein erheblich größerer Suchraum berücksichtigt wird. Mit anderen Worten, in Ansatz 1 (und 3) beschränken Sie den Suchraum, indem Sie diese Hyperparameter angeben. Ihr Datensatz in der realen Welt ist möglicherweise groß genug (enthält genügend Informationen), um eine Anpassung an diesen eingeschränkten Suchraum zu ermöglichen, aber nicht groß genug, um alle Parameter im größeren Suchraum der Ansätze 2 (und 4) ausreichend gut zu fixieren.

Tatsächlich muss ich mich in meinem Bereich sehr oft mit Datensätzen befassen, die viel zu klein sind, um an eine datengesteuerte Optimierung zu denken. Was mache ich stattdessen: Ich verwende mein Domänenwissen über die Daten und Datengenerierungsprozesse, um zu entscheiden, welches Modell gut mit der physischen Natur von Daten und Anwendungen übereinstimmt. Und innerhalb dieser muss ich meine Modellkomplexität noch einschränken.


Gute Antwort. Ich habe irgendwie gehofft, dass du zu diesem Thread beigetragen hast. Offensichtlich +1
usεr11852

Vielen Dank für Ihre informative und hilfreiche Antwort. Was ich aus Ihrer Antwort gelernt habe, ist, dass wir Ansatz 2 wählen können, wenn wir kleine Datensätze haben, nicht wegen der Validierung, sondern wegen der Modellauswahl. Hab ich recht? Führt die Verwendung der Modellauswahl für kleine Datenmengen zu einer Unteranpassung?
SMA.D

Eine andere Frage ist, dass in der Übung die Größe der Hypothesenklasse für Ansatz 1 und 2 gleich ist. Wie groß ist der Suchraum in diesem Fall für Ansatz 2?
SMA.D

Nun, wenn es eine Auswahl in 2 und nicht in 1 gibt, ist der Suchraum in 2 größer. Wenn der Suchraum in 2 nicht größer ist, gibt es in Ansatz 2 wirklich nichts zu wählen. Meine Antwort und Interpretation dessen, was Ansatz 2 bedeutet, wird durch den Begriff "Modellauswahl mithilfe von Validierung" ausgelöst. Wenn der Kontext immer noch derjenige der Übung "Wann schlägt die Kreuzvalidierung fehl?" Vor der hier fraglichen ist, kann das Buch das bedeuten, was ich oben als Ansatz 3 bezeichnet habe, dh es ist keine Modellauswahl erforderlich. Aber in diesem Fall sollten die Wörter Modellauswahl wirklich nicht vorhanden sein. Ich kann nicht beurteilen, wie wahrscheinlich dies ist.
cbeleites unglücklich mit SX

... ist, da ich nicht weiß, was das Buch über die Modellauswahl sagt oder was ihre ERM-Regel ist (in meinem Wortschatz erweitert sich ERM auf das Unternehmensrisikomanagement ...). Meine Antwort gilt jedoch unabhängig vom Modellierungsalgorithmus.
cbeleites unglücklich mit SX
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.