Ich bin in der Normalisierung verloren, könnte mich jemand bitte führen.
Ich habe einen minimalen und einen maximalen Wert, sagen wir -23,89 bzw. 7,54990767.
Wenn ich einen Wert von 5,6878 erhalte, wie kann ich diesen Wert auf einer Skala von 0 bis 1 skalieren?
normalization
Angelo
quelle
quelle
Antworten:
Wenn Sie Ihre Daten normalisieren möchten, können Sie dies wie vorgeschlagen tun und einfach Folgendes berechnen:
Wobei und jetzt Ihre normalisierten Daten sind. Als Proof-of-Concept (obwohl Sie nicht danach gefragt haben) finden Sie hier einen Code und ein begleitendes Diagramm, um diesen Punkt zu veranschaulichen:x=(x1,...,xn) zi ith
R
quelle
illustrate the point
Ihrer (richtigen) Antwort entsprechen.Die allgemeine einzeilige Formel zum linearen Skalieren von Datenwerten, die min und max beobachtet haben, in einen neuen willkürlichen Bereich von min ' bis max' ist
quelle
a
undb
Konstanten und dann einfach anwendennewvalue = a * value + b
.a = (max'-min')/(max-min)
undb = max - a * max
b = max' - a * max
oderb = min' - (a * min)
u = -1 + 2.*(u - min(u))./(max(u) - min(u));
.Hier ist meine PHP-Implementierung zur Normalisierung:
Aber während ich meine eigenen künstlichen neuronalen Netze aufbaute, musste ich die normalisierte Ausgabe wieder in die ursprünglichen Daten umwandeln, um eine gut lesbare Ausgabe für den Graphen zu erhalten.
Bei der Denormalisierung wird die folgende Formel verwendet:
quelle
Durch Null teilen
Eine Sache zu beachten ist, dass
max - min
gleich Null sein könnte. In diesem Fall möchten Sie diese Unterteilung nicht durchführen.In diesem Fall stimmen alle Werte in der Liste, die Sie zu normalisieren versuchen, überein. Um eine solche Liste zu normalisieren, wäre jeder Punkt
1 / length
.Beispiel:
quelle
normalize([12, 20, 10])
Ausgänge[0.2, 1.0, 0.0]
, was das gleiche ist, das Sie mit bekommen würden(val - min) / (max - min)
.Die Antwort ist richtig, aber ich habe einen Vorschlag, was ist, wenn Ihre Trainingsdaten auf eine Zahl außerhalb des Bereichs treffen? Sie könnten Squashing-Technik verwenden. Es wird garantiert, dass es niemals aus der Reichweite kommt. lieber als das
Ich empfehle dies zu verwenden
mit Quetschen wie folgt in min und max Reichweite
und die Größe der erwarteten Lücke außerhalb des Bereichs ist direkt proportional zum Grad der Gewissheit, dass es Werte außerhalb des Bereichs geben wird.
Für weitere Informationen können Sie google: die außerhalb des Bereichs liegenden Zahlen quetschen und sich auf das Datenvorbereitungsbuch von "dorian pyle" beziehen.
quelle
Versuche dies. Er steht im Einklang mit der Funktion Skala
quelle