Bei Bild- und Tabellendaten wandeln viele Personen die verzerrten Daten während der Vorverarbeitung in normalverteilte Daten um.
Was bedeutet die Normalverteilung beim maschinellen Lernen? Ist es eine wesentliche Annahme von Algorithmen für maschinelles Lernen?
Sogar bei den Bilddaten habe ich eine Quantiltransformation gesehen, die die gesamten Pixel eines Bildes transformiert, um einer normalen oder gleichmäßigen Verteilung zu folgen.
Ich kann mir einen Grund vorstellen: den Einfluss von Ausreißern zu vermeiden. Diese Transformationen verzerren jedoch die ursprüngliche Datenverteilung.
Warum ist die Normalverteilung für das maschinelle Lernen so wichtig, dass dieser Schritt in vielen Vorverarbeitungen enthalten ist?
Antworten:
Wie @ user2974951 in einem Kommentar sagt, kann es Aberglaube sein, dass eine Normalverteilung irgendwie besser ist. Vielleicht haben sie die falsche Vorstellung, dass sie, da normale Daten das Ergebnis vieler additiver Fehler sind, die resultierenden Zahlen als additive Fehler behandeln können, wenn sie ihre Daten als normal erzwingen. Oder die erste Statistik-Technik, die sie lernten, war die OLS-Regression und etwas über Normal war eine Annahme ...
Normalität ist im Allgemeinen keine Voraussetzung. Ob es hilfreich ist, hängt jedoch davon ab, was das Modell mit den Daten macht.
Beispielsweise sind Finanzdaten häufig logarithmisch normal - dh sie weisen einen multiplikativen (prozentualen) Fehler auf. Variations-Autoencoder verwenden eine Normalverteilung am Engpass, um Glätte und Einfachheit zu erzwingen. Sigmoid-Funktionen funktionieren am natürlichsten mit normalen Daten. Mischungsmodelle verwenden häufig eine Mischung aus Normalen. (Wenn Sie davon ausgehen können, dass es normal ist, benötigen Sie nur zwei Parameter, um es vollständig zu definieren, und diese Parameter sind in ihrer Bedeutung ziemlich intuitiv.)
Es könnte auch sein, dass wir eine unimodale, symmetrische Verteilung für unsere Modellierung wollen und das Normal ist das. (Und Transformationen zu „Normal“ sind oft nicht streng normal, sondern nur symmetrischer.)
Normalität kann einige Berechnungen für Sie vereinfachen und mit Ihrer Vorstellung des Prozesses zur Generierung Ihrer Daten übereinstimmen: Die meisten Ihrer Daten befinden sich in der Mitte mit relativ selteneren niedrigen oder hohen Werten, die von Interesse sind.
Aber mein Eindruck ist, dass es Frachtkult in der Natur ist
quelle
Die obige Antwort trifft es wirklich. Ich möchte nur hinzufügen, dass es sich lohnt, die Idee, "Normalität" zu wollen, von der Idee zu trennen, alle Funktionen so zu skalieren, dass sie im gleichen Bereich liegen (auch wenn sie unterschiedliche Verteilungen haben). Beide Transformationen haben ihre Vor- und Nachteile und sind manchmal erforderlich, um numerische Macken im Optimierungsschritt oder systemische Verzerrungen in diesen Algorithmen zu vermeiden.
Es hängt auch davon ab, auf welche Art von "maschinellem Lernen" Sie sich beziehen (dh SVMs, baumbasierte Modelle, neuronale Netze usw.), da sich diese alle unterschiedlich verhalten und unterschiedliche numerische Probleme haben können. Wie oben erwähnt, gibt es in bestimmten Situationen Vorteile, aber die Idee, dass das Normalisieren von verzerrten Daten zu einer besseren Leistung führt, ist keine kugelsichere Strategie. Im Allgemeinen ist die Rechtfertigung von Schritten zur "Vorverarbeitung" oder "Datenmanipulation / -transformation" eine robustere Alternative.
quelle