Featureselectie vs. feature-extractie

Dimensionality Reduction in R

Matt Pickard

Owner, Pickard Predictives, LLC

Aanpakken voor dimensionaliteitsreductie

Moestuin

  • Featureselectie is als onkruid wieden
  • Feature-extractie is als een salade maken
1 Beeldbron: Daderot, CC0, via Wikimedia Commons
Dimensionality Reduction in R

Featureselectie

Een set van zes features met kleurcodering

Dimensionality Reduction in R

Featureselectie

Een set van zes features waarbij features met weinig informatie gefilterd zijn

Dimensionality Reduction in R

Featureselectie

Een gefilterde set van vier features

Dimensionality Reduction in R

Voorbeeld: kredietdata

credit_df %>% head(n=5)
  annual_income num_bank_accounts num_credit_card outstanding_debt credit_history_months
          <dbl>             <dbl>           <dbl>            <dbl>                 <dbl>
1        87630.                 2               5             526.                   286
2        16574.                 2               5              NA                    122
3        24931.                 2               5              NA                    351
4       136680.                 2               5              NA                    216
5        76850.                 2               5            1112.                   272
Dimensionality Reduction in R

Maak een nul-variantiefilter

na_filter <- credit_df %>% 
  summarize(across(everything(), ~ var(., na.rm = TRUE))) %>%

pivot_longer(everything(), names_to = "feature", values_to = "variance") %>%
filter(variance == 0) %>%
pull(feature)
na_filter
"num_bank_accounts" "num_credit_card"
Dimensionality Reduction in R

Maak een filter voor missende waarden

na_filter <- credit_df %>%  
  summarize(across(everything(), ~ sum(is.na(.)))) %>%

pivot_longer(everything(), names_to = "feature", values_to = "num_missing_values") %>%
filter(num_missing_values > 0) %>%
pull(feature)
na_filter
"outstanding_debt"
Dimensionality Reduction in R

Het gecombineerde filter toepassen

combined_filter <- 
  c(low_var_filter, na_filter)

credit_df %>% 
  select(-all_of(combined_filter)) %>% 
  head(3)
  annual_income credit_history_months
          <dbl>                 <dbl>
1        87630.                   286
2        16574.                   122
3        24931.                   351
Dimensionality Reduction in R

Feature-extractie

Een set van zes features met kleurcodering

Dimensionality Reduction in R

Feature-extractie

Sommige features gecombineerd tot vier features

Dimensionality Reduction in R

Feature-extractie en mutual information

Venn-diagram met overlap

Dimensionality Reduction in R

Feature-extractie: Exclusieve info combineren

Gecombineerde features met gedeelde en exclusieve informatie

Dimensionality Reduction in R

Feature-extractie: Exclusieve info combineren

Gecombineerde features met gedeelde informatie verwijderd

Dimensionality Reduction in R

Voor- en nadelen van feature-extractie

Voordelen
  • kan info combineren tot nieuwe features
Nadelen
  • implementatie is complexer
  • nieuwe features zijn lastig te interpreteren

Hoofcomponentenanalyse van BMI, lengte en gewicht

Dimensionality Reduction in R

Laten we oefenen!

Dimensionality Reduction in R

Preparing Video For Download...