開始使用免費開始

擴展到多筆資料點

你已經看過,不同的權重在單一預測上會有不同的準確度。不過,通常你會想在很多資料點上衡量模型的準確度。接下來,你要撰寫程式碼,比較兩組不同權重(已儲存為 weights_0weights_1)的模型準確度。

input_data 是一個陣列的清單。清單中的每個項目都包含用來做單次預測的資料。 target_actuals 是一個數字清單。清單中的每個項目都是我們要預測的實際值。

在這個練習中,你會使用 sklearn.metrics 裡的 mean_squared_error() 函式。它需要將真實值與預測值作為引數。

你也會使用預先載入的 predict_with_network() 函式,它把資料陣列作為第一個引數、權重作為第二個引數。

本練習屬於課程

Python 深度學習入門

檢視課程

練習說明

  • sklearn.metrics 匯入 mean_squared_error
  • 使用 for 迴圈逐一走訪 input_data 的每一列:
    • 使用 predict_with_network() 函式與 weights_0 為每一列做預測,並將結果加入 model_output_0
    • weights_1 做相同操作,將預測結果加入 model_output_1
  • 使用 mean_squared_error() 分別計算 model_output_0model_output_1 的均方誤差。第一個引數應為實際值(target_actuals),第二個引數為預測值(model_output_0model_output_1)。

動手互動練習

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

from sklearn.metrics import mean_squared_error

# Create model_output_0 
model_output_0 = []
# Create model_output_1
model_output_1 = []

# Loop over input_data
for row in input_data:
    # Append prediction to model_output_0
    model_output_0.append(____)
    
    # Append prediction to model_output_1
    model_output_1.append(____)

# Calculate the mean squared error for model_output_0: mse_0
mse_0 = ____

# Calculate the mean squared error for model_output_1: mse_1
mse_1 = ____

# Print mse_0 and mse_1
print("Mean squared error with weights_0: %f" %mse_0)
print("Mean squared error with weights_1: %f" %mse_1)
編輯並執行程式碼