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 Listings 데이터셋의 샘플을 사용합니다.
이 연습은 강의의 일부입니다
Python으로 배우는 이상치 탐지
실습형 인터랙티브 연습
이 예제를 이 샘플 코드를 완성하여 풀어보세요.
# Create a list of contaminations and an empty dictionary
contaminations = ____
scores = ____