4 Feb 13:33 avatar

Нормализация данных

ML
Нормализация — приведение признаков к диапазону [0:1], чтобы они вносили одинаковый вклад

Пример векторизация небинарных признаков (категориальных признаков, которые принимают больше двух значений)
mlbootcamp.ru/article/tutorial/

Приведение к нулевому среднему и единичной дисперсии. (прояснить)

Типы целевых переменных

Целевые переменные определяют класс задачи и могут быть представлены одним из следующих вариантов:

Один столбец с двоичными значениями: задача двухклассовой классификации (binary classification), каждый объект принадлежит только одному классу.
Один столбец с действительными значениями: задача регрессии, прогнозируется одна величина.
Несколько столбцов с двоичными значениями: задача многоклассовой классификации (multi-class classification), каждый объект принадлежит только одному классу.
Несколько столбцов с действительными значениями: задача регрессии, прогнозируется несколько величин.
Несколько столбцов с двоичными значениями: задача классификации с пересекающимися классами (multi-label classification), один объект может принадлежать нескольким классам.

***ИНТУИТ***
Данные низкого качества, или грязные данные — это отсутствующие, неточные или бесполезные данные с точки зрения практического применения (например, представленные в неверном формате, не соответствующем стандарту). Грязные данные появились не сегодня, они возникли одновременно с системами ввода данных.

Рассмотрим традиционный процесс Data Mining. Он включает следующие этапы:

анализ предметной области;
постановка задачи;
подготовка данных;
построение моделей;
проверка и оценка моделей;
выбор модели;
применение модели;
коррекция и обновление модели.

Рассмотрим наиболее распространенные виды грязных данных:

пропущенные значения;
дубликаты данных;
шумы и выбросы.
Как мы можем поступить с пропущенными данными?

Исключить объекты с пропущенными значениями из обработки.
Рассчитать новые значения для пропущенных данных.
Игнорировать пропущенные значения в процессе анализа.
Заменить пропущенные значения на возможные значения.
Этапы очистки данных

В целом, очистка данных включает следующие этапы [93] (ниже изложено краткое описание содержание этих этапов, в этом же источнике можно найти подробное их описание).

Анализ данных.
Определение порядка и правил преобразования данных.
Подтверждение.
Преобразования.
Противоток очищенных данных.

Лекция 19: Процесс Data Mining. Очистка данных

Масштабирование (шкалирование) данных(http://helpiks.org/6-10662.html)

Входные переменные должны масштабироваться (шкалироваться), то есть приводиться к единому диапазону изменения. Необходимость масштабирования объясняется несколькими причинами. После кодирования информации входами и выходами нейронной сети могут быть разнородные величины, изменяющиеся в различных диапазонах.
Все входные переменные желательно привести к единому диапазону и нормировать (максимальное абсолютное значение входных переменных не должно превышать единицу). В противном случае ошибки, обусловленные переменными, изменяющимися в широком диапазоне, будут сильнее влиять на обучение сети, чем ошибки переменных, изменяющихся в узком диапазоне.
Обеспечив изменение каждой входной переменной в пределах одного диапазона, мы обеспечим равное влияние каждой переменной на изменение весов в процессе обучения.

mlbootcamp.ru/article/tutorial/
Узнаем размеры таблицы:
data.shape

посмотреть на несколько первых и несколько последних строк таблицы
data.head()
data.tail()

Задать полям имена А1 по А16 и псоледнее поле назвать class:
data.columns = ['A' + str(i) for i in range(1, 16)] + ['class']

К элементам таблицы можно обращаться, например, так:
data['A5'][687] // первое — столбец второе — строка
или так:
data.at[687, 'A5']

С помощью метода describe() получим некоторую сводную информацию по всей таблице. По умолчанию будет выдана информация только для количественных признаков. Это общее их количество (count), среднее значение (mean), стандартное отклонение (std), минимальное (min), макcимальное (max) значения, медиана (50%) и значения нижнего (25%) и верхнего (75%) квартилей:

data.describe()

Основные методы классов, реализующих алгоритмы машинного обучения
Метод класса Описание
fit(X, y) обучение (тренировка) модели на обучающей выборке X, y
predict(X) предсказание на данных X
set_params(**params) установка параметров алгоритма
get_params() чтение параметров алгоритма

0 комментариев

Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.