Více metod předzpracování

Machine Learning s balíčkem caret v R

Zach Mayer

Data Scientist at DataRobot and co-author of caret

Svět možností funkce preProcess

  • Možnosti nejsou omezeny jen na mediánovou nebo knn imputaci!
  • Lze řetězit více kroků předzpracování
  • Obvyklý „recept" pro lineární modely (pořadí záleží!)
    • Mediánová imputace ⇒ centrování ⇒ škálování ⇒ fit glm
  • Viz ?preProcess pro více podrobností
Machine Learning s balíčkem caret v R

Příklad: předzpracování mtcars

# Generate some data with missing values
data(mtcars)
set.seed(42)
mtcars[sample(1:nrow(mtcars), 10), "hp"] <- NA
Y <- mtcars$mpg
X <- mtcars[,2:4] # <- Missing at random
# Use linear model "recipe"
set.seed(42)
model <- train(
  X, Y, method = "glm",
  preProcess = c("center", "scale", "medianImpute")
)
print(min(model$results$RMSE))
3.612713
Machine Learning s balíčkem caret v R

Příklad: předzpracování mtcars

# PCA before modeling
set.seed(42)
model <- train(
  X, Y, method = "glm",
  preProcess = c("center", "scale", "medianImpute", "pca")
)
min(model$results$RMSE)
3.402557
Machine Learning s balíčkem caret v R

Příklad: předzpracování mtcars

# Spatial sign transform
set.seed(42)
model <- train(
  X, Y, method = "glm",
  preProcess = c("center", "scale", "medianImpute", "spatialSign")
)
min(model$results$RMSE)
4.284904
Machine Learning s balíčkem caret v R

Přehled předzpracování

  • Začněte mediánovou imputací
  • Použijte KNN imputaci, pokud chybějící data nejsou zcela náhodná
  • Pro lineární modely ...
    • Centrování a škálování
    • Vyzkoušejte PCA a prostorové znaménko
  • Stromové modely předzpracování příliš nevyžadují
Machine Learning s balíčkem caret v R

Pojďme si procvičit!

Machine Learning s balíčkem caret v R

Preparing Video For Download...