Regresja z cechami kategorycznymi
Masz już gotowy zbiór music_dummies z binarnymi cechami dla każdego gatunku muzycznego – czas zbudować model regresji grzbietowej (ridge regression) do przewidywania popularności piosenek.
Zbiór music_dummies został wstępnie załadowany razem z Ridge, cross_val_score, numpy jako np oraz obiektem KFold zapisanym jako kf.
Model zostanie oceniony na podstawie średniego RMSE. Najpierw musisz przekształcić wyniki dla każdego podziału na wartości dodatnie i wyciągnąć z nich pierwiastek kwadratowy. Ta metryka pokazuje średni błąd prognoz modelu, dzięki czemu można ją porównać z odchyleniem standardowym zmiennej docelowej—"popularity".
To ćwiczenie jest częścią kursu
Nadzorowane uczenie maszynowe z scikit-learn
Instrukcje do ćwiczenia
- Utwórz
Xzawierające wszystkie cechy ze zbiorumusic_dummiesorazyodpowiadające kolumnie"popularity". - Zainicjuj model regresji grzbietowej, ustawiając
alphana 0.2. - Przeprowadź walidację krzyżową na
Xiyz użyciem modelu ridge, ustawiająccvnakfi stosując ujemny błąd średniokwadratowy jako metrykę oceny. - Wyświetl wartości RMSE, zamieniając ujemne
scoresna dodatnie i wyciągając z nich pierwiastek kwadratowy.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Create X and y
X = ____
y = ____
# Instantiate a ridge model
ridge = ____
# Perform cross-validation
scores = ____(____, ____, ____, cv=____, scoring="____")
# Calculate RMSE
rmse = np.____(____)
print("Average RMSE: {}".format(np.mean(rmse)))
print("Standard Deviation of the target array: {}".format(np.std(y)))