调参: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)
您将使用已加载为 airbnb_df 的美国 Airbnb 房源数据集样本。
本练习是课程的一部分
Python 中的异常检测
交互式实操练习
通过完成这段示例代码来试试这个练习。
# Create a list of contaminations and an empty dictionary
contaminations = ____
scores = ____