Introductie tot dimensionality reduction

Dimensionality Reduction in R

Matt Pickard

Owner, Pickard Predictives, LLC

Dimensies

  • Dimensies zijn de verticale onderdelen van een nette tabel
  • Dimensies = Kolommen = Features
  • dimensies = # kolommen

df %>% ncol()
3

Een nette tabel met markering van de verticale dimensies

Dimensionality Reduction in R

Wat is dimensionality reduction?

Kenmerken zonder (nieuwe) informatie verwijderen of combineren

Voorbeeld

Nette tabel met meer kolommen

Dimensionality Reduction in R

Wat is dimensionality reduction?

Kenmerken zonder (nieuwe) informatie verwijderen of combineren

Voorbeeld

Nette tabel met meer kolommen met markering van features met redundante informatie

Dimensionality Reduction in R

Wat is dimensionality reduction?

Kenmerken zonder (nieuwe) informatie verwijderen of combineren

Voorbeeld

Nette tabel met meer kolommen met markering van de feature met overal dezelfde waarde

Dimensionality Reduction in R

Dimensionality reduction visueel

3D-projectie naar 2D-vlakken

Dimensionality Reduction in R

Numerieke kolommen zonder variantie vinden

df %>% 
  summarize(
    across(
      everything(), 
      ~ var(., na.rm = TRUE))) %>%

pivot_longer( everything(), "feature", "variance")
# A tibble: 7 × 2
  feature              variance
  <chr>                   <dbl>
1 sqft_living           843534.
2 sqft_above            685735.
3 sqft_basement         195873.
4 sqft_living_near15    475480.
5 sqft_lot_near15    863386815.
6 num_garages                0 
7 num_hvac_units             0
Dimensionality Reduction in R

Mutual information

Een Venn-diagram met een overlap

Dimensionality Reduction in R

Mutual information

Een Venn-diagram met een overlap

Dimensionality Reduction in R

Mutual information

Een Venn-diagram met een overlap

Dimensionality Reduction in R

Mutual information

Een Venn-diagram met een overlap

Dimensionality Reduction in R

Maak een correlatieplot

library(corrr)

house_sales_df %>% select(where(is.numeric)) %>%
correlate() %>%
shave() %>%
rplot(print_cor = TRUE) +
theme(axis.text.x = element_text(angle = 90, hjust = 1))
Dimensionality Reduction in R

Correlatieplot

Correlatieplot

Dimensionality Reduction in R

Laten we oefenen!

Dimensionality Reduction in R

Preparing Video For Download...