Selecția vs. extracția de caracteristici

Reducerea dimensionalității în R

Matt Pickard

Owner, Pickard Predictives, LLC

Abordări ale reducerii dimensionalității

Grădină de legume

  • Selecția caracteristicilor – ca smulsul buruienilor
  • Extracția caracteristicilor – ca prepararea unei salate
1 Sursă imagine: Daderot, CC0, via Wikimedia Commons
Reducerea dimensionalității în R

Selecția caracteristicilor

Un set de șase caracteristici codificate prin culori

Reducerea dimensionalității în R

Selecția caracteristicilor

Un set de șase caracteristici cu filtrarea celor cu informație redusă

Reducerea dimensionalității în R

Selecția caracteristicilor

Un set filtrat de patru caracteristici

Reducerea dimensionalității în R

Date de credit – exemplu

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
Reducerea dimensionalității în R

Creare filtru de varianță zero

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"
Reducerea dimensionalității în R

Creare filtru pentru valori lipsă

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"
Reducerea dimensionalității în R

Aplicarea filtrului combinat

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
Reducerea dimensionalității în R

Extracția caracteristicilor

Un set de șase caracteristici codificate prin culori

Reducerea dimensionalității în R

Extracția caracteristicilor

Unele caracteristici combinate în patru caracteristici

Reducerea dimensionalității în R

Extracția caracteristicilor și informația mutuală

Diagramă Venn cu intersecție

Reducerea dimensionalității în R

Extracție: combinarea informațiilor mutual exclusive

Caracteristici combinate incluzând informații mutuale și exclusive

Reducerea dimensionalității în R

Extracție: combinarea informațiilor mutual exclusive

Caracteristici combinate cu informațiile mutuale eliminate

Reducerea dimensionalității în R

Avantaje și dezavantaje ale extracției de caracteristici

Avantaje
  • poate combina informații în caracteristici noi
Dezavantaje
  • implementarea este mai complexă
  • noile caracteristici sunt greu de interpretat

Analiza componentelor principale pentru indicele de masă corporală, înălțime și greutate

Reducerea dimensionalității în R

Să exersăm!

Reducerea dimensionalității în R

Preparing Video For Download...