Введение в снижение размерности

Снижение размерности в R

Matt Pickard

Owner, Pickard Predictives, LLC

Размерности

  • Размерности — это столбцы аккуратной таблицы
  • Размерности = Столбцы = Признаки
  • # размерностей = # столбцов
df %>% ncol()
3

Аккуратная таблица с выделенными вертикальными размерностями

Снижение размерности в R

Что такое снижение размерности?

Исключение или объединение признаков с малым объёмом новой информации

Пример

Аккуратная таблица с большим числом столбцов

Снижение размерности в R

Что такое снижение размерности?

Исключение или объединение признаков с малым объёмом новой информации

Пример

Аккуратная таблица с выделенными признаками с избыточной информацией

Снижение размерности в R

Что такое снижение размерности?

Исключение или объединение признаков с малым объёмом новой информации

Пример

Аккуратная таблица с выделенным признаком, у которого все значения одинаковы

Снижение размерности в R

Снижение размерности наглядно

Проекция 3D на двумерные поверхности

Снижение размерности в R

Поиск числовых столбцов с нулевой дисперсией

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
Снижение размерности в R

Взаимная информация

Диаграмма Венна с пересечением

Снижение размерности в R

Взаимная информация

Диаграмма Венна с пересечением

Снижение размерности в R

Взаимная информация

Диаграмма Венна с пересечением

Снижение размерности в R

Взаимная информация

Диаграмма Венна с пересечением

Снижение размерности в R

Построение графика корреляций

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))
Снижение размерности в R

График корреляций

График корреляций

Снижение размерности в R

Давайте потренируемся!

Снижение размерности в R

Preparing Video For Download...