Main Content

mse

Leistungsfunktion der mittleren quadratischen Abweichung

Beschreibung

Beispiel

Tipp

Um die mittlere quadratische Abweichung (MSE) mit Deep Learning zu verwenden, verwenden Sie regressionLayer oder verwenden Sie die MSE der dlarray-Methode.

perf = mse(net,t,y,ew) nimmt ein neuronales Netz, net, eine Matrix oder ein Zellen-Array von Zielen, t, eine Matrix oder ein Zellen-Array von Ausgaben, y, und Fehlergewichte, ew, und gibt die mittlere quadratische Abweichung zurück.

Diese Funktion hat zwei optionale Parameter, die mit Netzen verbunden sind, deren net.trainFcn auf diese Funktion gesetzt ist:

  • 'regularization' kann auf einen beliebigen Wert zwischen 0 und 1 gesetzt werden. Je größer der Regularisierungswert ist, desto mehr quadrierte Gewichte und Verzerrungen werden in die Leistungsberechnung im Verhältnis zu den Fehlern einbezogen. Der Standardwert ist 0, d. h. keine Regularisierung.

  • Für 'normalization' sind folgende Einstellungen möglich: 'none' (Standard); 'standard', wodurch Fehler zwischen -2 und 2 normalisiert werden, was einer Normalisierung der Ausgänge und Ziele zwischen -1 und 1 entspricht; und 'percent', wodurch Fehler zwischen -1 und 1 normalisiert werden. Diese Funktion ist für Netze mit Mehrelementausgängen nützlich. Sie sorgt dafür, dass die relative Genauigkeit von Ausgangselementen mit unterschiedlichen Sollwertbereichen als gleich wichtig behandelt wird, anstatt die relative Genauigkeit des Ausgangselements mit dem größten Sollwertbereich zu bevorzugen.

Sie können ein Standardnetz erstellen, das mse mit feedforwardnet oder cascadeforwardnet verwendet. Zur Vorbereitung eines benutzerdefinierten Netzes für das Training mit mse setzen Sie net.performFcn auf 'mse'. Dies setzt net.performParam automatisch auf eine Struktur mit den Standardwerten der optionalen Parameter.

mse ist eine Netzleistungsfunktion. Sie misst die Leistung des Netzes anhand des Mittelwerts der quadrierten Fehler.

Beispiele

alle reduzieren

Dieses Beispiel zeigt, wie man ein neuronales Netz mit der mse-Leistungsfunktion trainiert.

Hier wird ein zweischichtiges Feed-Forward-Netz erstellt und trainiert, um den Körperfettanteil mithilfe der mse-Leistungsfunktion und einem Regularisierungswert von 0,01 zu schätzen.

[x, t] = bodyfat_dataset;
net = feedforwardnet(10);
net.performParam.regularization = 0.01;

MSE ist die Standardleistungsfunktion für feedforwardnet.

net.performFcn

Trainieren Sie das Netz und bewerten Sie die Leistung.

net = train(net, x, t);
y = net(x);
perf = perform(net, t, y)

Sie können mse aber auch direkt aufrufen.

perf = mse(net, t, y, 'regularization', 0.01)

Eingabeargumente

alle reduzieren

Neuronales Netz, angegeben als ein network-Objekt.

Beispiel: net = feedforwardnet(10);

Ziele, angegeben als Matrix oder Zellen-Array.

Ausgänge, angegeben als Matrix oder Zellen-Array.

Fehlergewichte, angegeben als Skalar.

Ausgangsargumente

alle reduzieren

Leistung des Netzes als mittlere quadratische Abweichung.

Versionsverlauf

Eingeführt vor R2006a

Siehe auch