Przewidywanie na zbiorze testowym
Masz już losowo podzielone dane na zbiór treningowy i testowy – teraz możesz użyć funkcji lm() (tak jak w pierwszym ćwiczeniu), aby dopasować model do zbioru treningowego, a nie do całego zbioru danych. Przypomnij sobie, że interfejs formuły funkcji regresji liniowej pozwala dopasować model z określoną zmienną docelową, używając wszystkich pozostałych zmiennych jako predyktorów:
mod <- lm(y ~ ., training_data)
Funkcja predict() umożliwia generowanie prognoz z tego modelu na nowych danych. Nowy zbiór danych musi zawierać wszystkie kolumny ze zbioru treningowego, choć mogą być w innej kolejności i mieć różne wartości. Zamiast ponownie przewidywać na zbiorze treningowym, możesz teraz użyć zbioru testowego, który nie brał udziału w trenowaniu modelu. Pozwoli ci to wyznaczyć błąd na danych spoza próby treningowej w kolejnym ćwiczeniu:
p <- predict(model, new_data)
To ćwiczenie jest częścią kursu
Uczenie maszynowe z caret w R
Instrukcje do ćwiczenia
- Dopasuj model
lm()o nazwiemodel, który przewidujepricena podstawie wszystkich pozostałych zmiennych jako predyktorów. Pamiętaj, żeby użyć zbioru treningowegotrain. - Wygeneruj prognozy na zbiorze testowym
testprzy użyciu funkcjipredict(). Zapisz wyniki w wektorze o nazwiep.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Fit lm model on train: model
# Predict on test: p