Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
学ぶ 評価指標 | 最適なモデルの選択
Pythonによる線形回帰

評価指標

メニューを表示するにはスワイプしてください

モデルを構築する際には、データへの適合度を測定する指標が必要です。**指標(メトリック)**は、モデルの性能を数値で表します。本章では、最も一般的な指標に注目します。

以下の記法を使用します。

記法

すでに一つの指標、SSRSum of Squared Residuals、残差平方和)については理解しています。これは最適なパラメータを特定するために最小化しました。 私たちの記法を用いると、SSRの式は次のように表せます。

SSRformula

または同様に:

SSRsum

この指標は、モデルが同じ数のデータポイントを使用した場合にのみ機能。モデルの実際の性能を正確に示さない。異なるサイズのデータセットで訓練された2つのモデルを想定。

SSRCompare

最初のモデルは視覚的にはより良くフィットしていますが、データポイントが多いためSSRが高くなります。これは、平均残差が小さくても合計が増加するためです。二乗残差の平均を使用することでこの問題が解決されます。これが**平均二乗誤差(MSE)**です。

MSE

MSEformula

または同様に:

MSEsum

NumPy を使用した MSE の計算:

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

または Scikit-learn:

from sklearn.metrics import mean_squared_error
mse = mean_squared_error(y_true, y_pred)

MSE は二乗値であり、解釈が難しくなる場合がある。たとえば、MSE が 49 dollars² の場合、誤差を dollars で表したい。平方根を取ることで 7 となり、これが Root Mean Squared Error (RMSE) である。

RMSE(平方平均二乗誤差)

RMSEsum

RMSEの計算方法:

rmse = np.sqrt(np.mean((y_true - y_pred)**2))

またはScikit-learnを使用:

rmse = mean_squared_error(y_true, y_pred, squared=False)

MAE

残差を二乗する代わりに、その絶対値を取る方法 — これが平均絶対誤差(MAE)

MAEformula

または同様に

MAEsum

MAEはMSEと同様に動作するが、大きな誤差に対してより穏やかに扱う。絶対値を使用するため外れ値に対して頑健であり、極端な値がデータセットを歪める場合に有用。

MAEの計算方法:

mae = np.mean(np.fabs(y_true - y_pred))

または:

from sklearn.metrics import mean_absolute_error
mae = mean_absolute_error(y_true, y_pred)

SSRは正規方程式の導出に役立ちましたが、モデルを比較する際には任意の指標を使用できます。

Note
注記

SSR、MSE、RMSEは常に同じ順序でモデルを評価しますが、MAEは大きな誤差に対するペナルティが小さいため、異なるモデルを好む場合があります。指標は事前に選択し、それに特化して最適化する必要があります。

モデル比較

これで、すべての指標が低いため、2番目のモデルの方が優れていることは確かにわかります。しかし、指標が低いからといって、必ずしもモデルが優れているとは限りません。

すべて明確でしたか?

どのように改善できますか?

フィードバックありがとうございます!

セクション 4.  1

AIに質問する

expand

AIに質問する

ChatGPT

何でも質問するか、提案された質問の1つを試してチャットを始めてください

セクション 4.  1
some-alt