適合度

Pythonで学ぶ線形モデリング入門

Jason Vestuto

Data Scientist

3つのR

モデルの構築:

  • RSS

モデルの評価:

  • RMSE
  • R二乗
Pythonで学ぶ線形モデリング入門

RMSE

residuals = y_model - y_data
RSS = np.sum( np.square(residuals) )
mean_squared_residuals = np.sum( np.square(residuals) ) / len(residuals)
MSE = np.mean( np.square(residuals) )
RMSE = np.sqrt(np.mean( np.square(residuals)))
RMSE = np.std(residuals)
Pythonで学ぶ線形モデリング入門

コードによるR二乗

偏差:

deviations = np.mean(y_data) - y_data
VAR = np.sum(np.square(deviations))

残差:

residuals = y_model - y_data
RSS = np.sum(np.square(residuals))

R二乗:

r_squared = 1 - (RSS / VAR)
r = correlation(y_data, y_model)
Pythonで学ぶ線形モデリング入門

データにおけるR二乗

高度と距離の散布図。赤いモデル直線がデータ点を通り、傾きゼロの水平線

Pythonで学ぶ線形モデリング入門

データにおけるR二乗

高度と距離の散布図。赤いモデル直線がデータ点を通り、わずかな傾きを持つ

Pythonで学ぶ線形モデリング入門

データにおけるR二乗

高度と距離の散布図。赤いモデル直線がデータ点を通り、中程度の傾きを持つ

Pythonで学ぶ線形モデリング入門

データにおけるR二乗

高度と距離の散布図。赤いモデル直線がデータ点を通り、急な傾きを持つ

Pythonで学ぶ線形モデリング入門

RMSEとR二乗の比較

  • RMSE:残差によるばらつきの大きさ
  • R二乗:線形で説明できるばらつきの割合
Pythonで学ぶ線形モデリング入門

練習しましょう!

Pythonで学ぶ線形モデリング入門

Preparing Video For Download...