開始使用免費開始

定義競賽評估指標

Kaggle 會使用競賽評估指標來評估你的送出結果。此外,你也需要在本地的驗證集上衡量不同模型的表現。

現在,你的目標是手動實作幾個競賽評估指標,以防 sklearn.metrics 中沒有提供。

你將特別定義:

  • 迴歸問題的均方誤差(Mean Squared Error,MSE): $$MSE = \frac{1}{N}\sum_{i=1}^{N}{(y_i - \hat{y}_i)^2}$$

  • 二元分類問題的對數損失(Logarithmic Loss,LogLoss): $$LogLoss = -\frac{1}{N}\sum_{i=1}^{N}{(y_i\ln p_i + (1-y_i)\ln (1-p_i))}$$

本練習屬於課程

用 Python 拿下 Kaggle 競賽

檢視課程

動手互動練習

試著完成這個範例程式碼,體驗一下這個練習。

import numpy as np

# Import MSE from sklearn
from sklearn.metrics import mean_squared_error

# Define your own MSE function
def own_mse(y_true, y_pred):
  	# Raise differences to the power of 2
    squares = np.____(y_true - y_pred, 2)
    # Find mean over all observations
    err = np.____(squares)
    return err

print('Sklearn MSE: {:.5f}. '.format(mean_squared_error(y_regression_true, y_regression_pred)))
print('Your MSE: {:.5f}. '.format(own_mse(y_regression_true, y_regression_pred)))
編輯並執行程式碼