調整 contamination
最後,該來調整惡名昭彰的 contamination 參數了。影片中的 evaluate_outlier_classifier 與 evaluate_regressor 函式已為你載入。你可以在下方查看。
def evaluate_outlier_classifier(model, data):
# Get labels
labels = model.fit_predict(data)
# Return inliers
return data[labels == 0]
def evaluate_regressor(inliers):
X = inliers.drop("price", axis=1)
y = inliers[['price']]
X_train, X_test, y_train, y_test = train_test_split(X, y, random_state=10)
lr = LinearRegression()
lr.fit(X_train, y_train)
preds = lr.predict(X_test)
rmse = root_mean_squared_error(y_test, preds)
return round(rmse, 3)
你將使用 US Airbnb Listings 資料集的其中一個樣本,並已載入為 airbnb_df。
本練習屬於課程
Python 中的異常偵測
動手互動練習
試著完成這個範例程式碼,體驗一下這個練習。
# Create a list of contaminations and an empty dictionary
contaminations = ____
scores = ____