1. ホーム
  2. python

[解決済み] Pythonの平均二乗誤差

2022-02-01 12:52:44

質問内容

sklearnなどの実装を使わずに、y(真の値)とy_pred(予測値)から平均二乗誤差を計算する関数を作ろうとしています。

次にやってみます。

def mserror(y, y_pred):
    i=0
    for i in range (len(y)):
        i+=1
        mse = ((y - y_pred) ** 2).mean(y)   
        return mse

私の計算のどこが間違っているのか、またそれを修正する方法を教えてください。

解決方法は?

意味もなくインデックスを変更している。forループは、とにかくインデックスを増加させます。また、インデックスを使用していない、例えば、任意の y[i] - y_pred[i] 従って、ループは全く必要ありません。

配列を使用する

mse = np.mean((y - y_pred)**2)