Gibt es in numpy eine Methode zur Berechnung des mittleren quadratischen Fehlers zwischen zwei Matrizen?
Ich habe versucht zu suchen, aber keine gefunden. Ist es unter einem anderen Namen?
Wenn nicht, wie überwinden Sie das? Schreiben Sie es selbst oder verwenden Sie eine andere Bibliothek?
((A - B) ** 2).mean(axis=ax)
, woax=0
pro Spalte ist,ax=1
ist pro Zeile undax=None
gibt eine Gesamtsumme.Antworten:
Sie können verwenden:
mse = ((A - B)**2).mean(axis=ax)
Oder
ax=0
dem Durchschnitt wird entlang der Zeile für jede Spalte ein Array zurückgegebenax=1
dem Durchschnitt wird entlang der Spalte für jede Zeile ein Array zurückgegebenax=None
dem Durchschnitt wird elementweise entlang des Arrays ausgeführt, wobei ein Skalarwert zurückgegeben wirdquelle
np.ndarray
Willen eine elementweise Multiplikation füra**2
, aber mit einemnp.matrixlib.defmatrix.matrix
Willen eine Matrixmultiplikation füra**2
...Acmp = np.array(A, dtype=int)
)np.nanmean(((A - B) ** 2))
wenn Werte fehlenDies ist nicht Teil von
numpy
, aber es wird mitnumpy.ndarray
Objekten funktionieren . Anumpy.matrix
kann in a konvertiert werdennumpy.ndarray
und anumpy.ndarray
kann in a konvertiert werdennumpy.matrix
.from sklearn.metrics import mean_squared_error mse = mean_squared_error(A, B)
Siehe Scikit Lernen mean_squared_error für die Dokumentation, wie man Steuerachse.
quelle
Noch numpy
quelle
Eine weitere Alternative zur akzeptierten Antwort, die Probleme mit der Matrixmultiplikation vermeidet:
def MSE(Y, YH): return np.square(Y - YH).mean()
Aus den Dokumenten für np.square : " Geben Sie das elementweise Quadrat der Eingabe zurück."
quelle
Nur zum Spaß
mse = (np.linalg.norm (AB) ** 2) / len (A)
quelle
Die Standard-Numpy-Methoden zur Berechnung des mittleren quadratischen Fehlers (Varianz) und seiner Quadratwurzel (Standardabweichung) sind
numpy.var()
undnumpy.std()
, siehe hier und hier . Sie gelten für Matrizen und haben dieselbe Syntax wienumpy.mean()
.Ich nehme an, dass die Frage und die vorhergehenden Antworten möglicherweise veröffentlicht wurden, bevor diese Funktionen verfügbar wurden.
quelle