rmse medio interpretacion error cuadratico python arrays numpy mean mean-square-error

python - interpretacion - Error cuadrático medio en Numpy?



error cuadratico medio python (4)

¿Hay algún método en numpy para calcular el error cuadrado medio entre dos matrices?

Intenté buscar pero no encontré ninguno. ¿Tiene otro nombre?

Si no hay, ¿cómo superar esto? ¿Lo escribes tú mismo o usas una lib diferente?


Aún más numpy

np.square(np.subtract(A, B)).mean()


Esto no es parte de numpy , pero funcionará con los objetos numpy.ndarray . Una numpy.matrix se puede convertir en numpy.ndarray y numpy.ndarray se puede convertir en numpy.matrix .

from sklearn.metrics import mean_squared_error mse = mean_squared_error(A, B)

Consulte Scikit Learn mean_squared_error para obtener documentación sobre cómo controlar el eje.


Otra alternativa a la respuesta aceptada que evita cualquier problema con la multiplicación de la matriz:

def MSE(Y, YH): return np.square(Y - YH).mean()

De los documentos para np.square : "Devuelve el cuadrado de entrada de elemento".


Según lo sugerido por @larsmans, puedes usar:

mse = ((A - B) ** 2).mean(axis=ax)

  • con ax=0 el promedio se realiza a lo largo de la fila, para cada columna, devolviendo una matriz
  • con ax=1 el promedio se realiza a lo largo de la columna, para cada fila, devolviendo una matriz
  • con ax=None el promedio se realiza a nivel de elemento a lo largo de la matriz, devolviendo un valor único