Предварительная обработка данных — различия между версиями
м (Kirill112002 переименовал страницу Предобработка данных в Предварительная обработка данных) |
|||
| Строка 1: | Строка 1: | ||
| + | = Преобразование числа = | ||
| + | Обычно с числами довольно удобно работать и преобразовывают их достаточно редко. | ||
| + | |||
| + | '''Дискретизация''' | ||
| + | * Преобразование в порядковый признак. (берём в числах диапазоны и диапазонам сопоставляем категории) | ||
| + | * Преобразование в категориальный признак. ('''НО''' теряется информация о порядке) | ||
| + | |||
| + | = Преобразование порядкового типа = | ||
| + | [[File:Преобразование_порядкового_типа_в_k_категорий.png|250px|thumb|рис1. (A<B<C)]] | ||
| + | * Преобразование в число(берём его порядковый номер) | ||
| + | * Преобразование в k бинарных категорий(если число значений конечно и равно k): | ||
| + | |||
| + | <tex>c_i(ord) := (ord < ord_i), где </tex>{<tex>ord_1, ..., ord_k</tex>} - множество значений порядкового признака.(см. рис1) | ||
| + | |||
| + | = Преобразование категории = | ||
| + | [[File:Преобразование_небинарной_категории_в_бинарную.png|250px|thumb|рис2. (A<B<C)]] | ||
| + | |||
| + | * Бинарную категорию можно преобразовать в число: <tex>c_1 \Rightarrow 0, c_2 \Rightarrow 1</tex> или <tex>c_1 \Rightarrow -1, c_2 \Rightarrow +1</tex> | ||
| + | * Категорию из k значений {<tex>c_1, ..., c_k</tex>} можно '''бинаризовать''' получив k бинарных категорий:<tex>b_i(c) := (c = c_i)</tex>(см. рис2)('''НО''' обратное преобразование иногда невозможно(получим много true и не понятно, к какой категории относить)) | ||
| + | * One-hot encoding - преобразование категорий в числа (0, 1): one-hot<tex>_i(c) = [c = c_i]</tex> | ||
| + | |||
= Базовые методы нормализации данных = | = Базовые методы нормализации данных = | ||
Применяются независимо к столбцу X | Применяются независимо к столбцу X | ||
| Строка 18: | Строка 39: | ||
= Декорреляция = | = Декорреляция = | ||
| − | [[File:Декорреляция.png|300px|thumb| | + | [[File:Декорреляция.png|300px|thumb|рис3]] |
1. Есть матрица X. | 1. Есть матрица X. | ||
Версия 18:49, 29 июня 2022
Содержание
Преобразование числа
Обычно с числами довольно удобно работать и преобразовывают их достаточно редко.
Дискретизация
- Преобразование в порядковый признак. (берём в числах диапазоны и диапазонам сопоставляем категории)
- Преобразование в категориальный признак. (НО теряется информация о порядке)
Преобразование порядкового типа
- Преобразование в число(берём его порядковый номер)
- Преобразование в k бинарных категорий(если число значений конечно и равно k):
{} - множество значений порядкового признака.(см. рис1)
Преобразование категории
- Бинарную категорию можно преобразовать в число: или
- Категорию из k значений {} можно бинаризовать получив k бинарных категорий:(см. рис2)(НО обратное преобразование иногда невозможно(получим много true и не понятно, к какой категории относить))
- One-hot encoding - преобразование категорий в числа (0, 1): one-hot
Базовые методы нормализации данных
Применяются независимо к столбцу X
Важно в sklearn.preprocessing есть метод normalize, но это не то, что нам нужно, он рассматривает нормализацию с геометрической точки зрения (представляет объект в виде вектора), а не по столбцам
Минмакс, [0;1] масштабирование
После нормализации: и
Стандартизация, Z-масштабирование
После нормализации: и
Декорреляция
1. Есть матрица X.
2. Матрицу центрировали ().
3. Ковариация вычисляется по следующей формуле:
4. Если же матрица нормализована так, что , то из произведения мы получим не ковариационную, а корреляционную матрицу
5. Декорреляция вычисляется по формуле:
где находится из разложения Холецкого
| Утверждение: |
После декорреляции: |
|
. |