Ich mache eine Datenvorverarbeitung und werde danach ein Convonets auf meinen Daten erstellen.
Meine Frage lautet: Angenommen, ich habe einen Gesamtdatensatz mit 100 Bildern. Ich habe den Mittelwert für jedes der 100 Bilder berechnet und ihn dann von jedem der Bilder subtrahiert, dann in Zug- und Validierungssatz aufgeteilt und das Gleiche getan Schritte zur Verarbeitung eines bestimmten Testsatzes, aber es scheint, dass dies nicht der richtige Weg ist, dies gemäß diesem Link zu tun: http://cs231n.github.io/neural-networks-2/#datapre
" Häufige Gefahr . Ein wichtiger Punkt bei der Vorverarbeitung ist, dass Vorverarbeitungsstatistiken (z. B. der Datenmittelwert) nur für die Trainingsdaten berechnet und dann auf die Validierungs- / Testdaten angewendet werden müssen. ZB Berechnung des Mittelwerts und Subtrahieren von Jedes Bild über den gesamten Datensatz und das Aufteilen der Daten in Zug- / Wert- / Testaufteilungen wäre ein Fehler. Stattdessen muss der Mittelwert nur über die Trainingsdaten berechnet und dann gleichmäßig von allen Teilungen (Zug / Wert / Test) abgezogen werden. ""
Ich vermute, was der Autor sagt, ist, dass Sie nicht den Mittelwert berechnen und innerhalb jedes Bildes subtrahieren, sondern den Mittelwert des gesamten Bildsatzes (dh (Bild1 + ... + Bild100) / 100) berechnen und den Mittelwert subtrahieren jedes der Bilder.
Ich verstehe nicht ganz, kann jemand erklären? und möglicherweise auch erklären, warum das, was ich getan habe, falsch ist (wenn es tatsächlich falsch ist).
Antworten:
Nehmen wir an, Sie haben insgesamt 100 Bilder. 90 sind Trainingsdaten und 10 sind Testdaten.
Die Autoren behaupten zu Recht, dass die Verwendung des gesamten 100-Bild-Beispiels zur Berechnung des Stichprobenmittelwerts falsch ist. Dies liegt daran, dass in diesem Fall Informationen verloren gehen. Informationen aus Ihren "Out-of-Sample" -Elementen werden in Ihr Trainingsset verschoben. Insbesondere für die Schätzung von , wenn Sie 100 anstelle von 90 Bildern verwenden, lassen Sie zu, dass Ihr Trainingssatz einen besser informierten Mittelwert hat, als er auch haben sollte. Infolgedessen wäre Ihr Trainingsfehler möglicherweise geringer als er sein sollte.μ^ μ^
Das geschätzte ist während des gesamten Trainings- / Validierungs- / Testverfahrens üblich. Das gleiche soll verwendet werden, um alle Ihre Daten zu zentrieren. (Ich erwähne dies später, weil ich den leichten Eindruck habe, dass Sie den Mittelwert jedes einzelnen Bildes verwenden, um dieses Bild zu zentrieren.)μ^ μ^
quelle
A
Leistung des Modells verschlechtern, wennA
es nicht gut auf verschiedene Altersgruppen verallgemeinert wird. Wenn wir das Durchschnittsalter im gesamten Datensatz berechnen, erhalten wir ein repräsentativeres Durchschnittsalter. Wenn wir jetzt dieses unvoreingenommene Durchschnittsalter im Modell verwenden, werdenA
wir wahrscheinlich eine bessere Leistung als zuvor erzielen, obwohl wirA
nicht gut auf verschiedene Altersgruppen verallgemeinern.)