IniziaInizia gratis

Ottimizzare contamination

Finalmente, è il momento di ottimizzare il famigerato parametro contamination. Le funzioni evaluate_outlier_classifier ed evaluate_regressor viste nel video sono già caricate per te. Puoi ispezionarle qui sotto.

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)

Userai un campione del dataset US Airbnb Listings, già caricato come airbnb_df.

Questo esercizio fa parte del corso

Rilevamento delle anomalie in Python

Visualizza il corso

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

# Create a list of contaminations and an empty dictionary
contaminations = ____
scores = ____
Modifica ed esegui il codice