Ich frage mich, ob es Heuristiken in Bezug auf die Anzahl der Merkmale und die Anzahl der Beobachtungen gibt. Wenn eine Anzahl von Merkmalen gleich der Anzahl von Beobachtungen ist, wird das Modell offensichtlich überpasst. Mit sparsamen Methoden (LASSO, elastisches Netz) können wir verschiedene Merkmale entfernen, um das Modell zu verkleinern.
Meine Frage ist (theoretisch): Gibt es empirische Beobachtungen, die die optimale Anzahl von Merkmalen mit der Anzahl von Beobachtungen in Beziehung setzen, bevor wir die Modellauswahl anhand von Metriken bewerten ?
Beispiel: Gibt es für ein Binärklassifizierungsproblem mit 20 Instanzen in jeder Klasse eine Obergrenze für die Anzahl der zu verwendenden Features?
quelle
Aus eigener Erfahrung: In einem Fall habe ich mit einer sehr kleinen realen Datenbank (300 Bilder) mit vielen Klassen und schwerem Datenungleichgewicht gearbeitet und dabei 9 Funktionen verwendet: SIFT, HOG, Shape-Kontext, SSIM, GM und 4 DNN-basierte Funktionen. In einem anderen Fall habe ich mit einer sehr großen Datenbank (> 1 M Bilder) gearbeitet und letztendlich nur die HOG-Funktion verwendet. Ich denke, es gibt keinen direkten Zusammenhang zwischen der Anzahl der Instanzen und der Anzahl der Features, die erforderlich sind, um eine hohe Genauigkeit zu erzielen. ABER: Die Anzahl der Klassen, die Ähnlichkeit zwischen Klassen und die Variation innerhalb derselben Klasse (diese drei Parameter) können die Anzahl der Features beeinflussen. Wenn Sie eine größere Datenbank mit vielen Klassen und großer Ähnlichkeit zwischen Klassen sowie große Variationen innerhalb derselben Klasse haben, benötigen Sie mehr Funktionen, um eine hohe Genauigkeit zu erzielen. MERKEN:
quelle
Es kommt darauf an ... aber natürlich bringt dich diese Antwort nicht weiter.
Er ist eine Faustregel für die Komplexität des Modells: Aus Daten lernen - VC-Dimension
"Sehr grob" benötigen Sie 10 Datenpunkte für jeden Modellparameter. Die Anzahl der Modellparameter kann der Anzahl der Features ähnlich sein.
quelle
Ein bisschen zu spät zur Party, aber hier sind einige Heuristiken.
Für das Training von linearen Klassifikatoren werden 3 - 5 unabhängige Fälle pro Klasse und Merkmal empfohlen. Diese Grenze gibt Ihnen verlässlich stabile Modelle, sie garantiert kein gutes Modell (dies ist nicht möglich: Sie könnten uninformative Daten haben, bei denen kein Modell eine gute Verallgemeinerungsleistung erzielen könnte).
Bei Stichprobengrößen, die so klein wie Ihr Szenario sind, ist die Überprüfung (Validierung) und nicht die Schulung der Engpass. Die Überprüfung hängt von der absoluten Anzahl der Testfälle und nicht von der Komplexität des Modells ab: Als Faustregel benötigen Sie 100 ≈ Test Fälle im Nenner, um einen Anteil mit einem Konfidenzintervall zu schätzen, das nicht mehr als 10% Punkte breit ist.
Leider bedeutet dies auch, dass Sie die empirische Lernkurve für Ihre Anwendung im Grunde nicht erhalten können: Sie können sie nicht genau genug messen, und in der Praxis hätten Sie ohnehin große Schwierigkeiten, sie zu extrapolieren, weil Sie beim Training auf die kleine Stichprobengröße reagieren, indem Sie Ihr Modell einschränken Komplexität - und Sie würden dies mit zunehmender Stichprobengröße entspannen.
Einzelheiten finden Sie in unserem Artikel
: Beleites, C. und Neugebauer, U. und Bocklitz, T. und Krafft, C. und Popp, J .: Stichprobengrößenplanung für Klassifizierungsmodelle. Anal Chim Acta, 2013, 760, 25 & ndash; 33. DOI: 10.1016 / j.aca.2012.11.007
akzeptiertes Manuskript auf arXiv: 1211.1323
Ich hatte noch nie etwas in der Nähe dieser Empfehlungen (Spektroskopiedaten, auch für medizinische Anwendungen). Was ich dann tue, ist: Ich messe die Modellstabilität im Rahmen des Modellierungs- und Verifizierungsprozesses sehr genau.
quelle