Найти тему

Статистики в Машинном обучении простыми словами

Фото: @jeremybishop
Фото: @jeremybishop
  1. Определение Википедии:
Отрасль знаний, наука, в которой излагаются общие вопросы сбора, измерения, мониторинга, анализа массовых статистических (количественных или качественных) данных и их сравнение; изучение количественной стороны массовых общественных явлений в числовой форме.

2. Статистическая метрика. Пример использования: "У нас есть 50 независимых значений, и мы хотим вычислить одну-единственную статистику – среднее значение".

Чтобы получить первое представление о том, какое место занимает современная статистика в Машинном обучении (ML), рассмотрим следующий пример: мы предсказываем количество клиентов сервиса аренды велосипедов на основании исторических данных компании.

Для начала установим специальную библиотеку pandas-profiling:

Затем импортируем несколько вспомогательных библиотек:

Импортируем данные и посмотрим, c каким многообразием бесшовно работает метод describe().

Обратите внимание: столбцы состоят из целых чисел (например: season), вещественных чисел (temp), бинарной категориальной переменной (workingday) и из Временных рядов (Time Series – dteday).

-2

Вычислим основные показатели описательной статистики с помощью этого метода. Мы получим классический набор статистик Выборки (Sample) – количество уникальных значений (count), среднее (mean), стандартное отклонение (std), минимум (min), квантили .25 (25%), .5 (50%), .75 (75%), максимум (max).

-3

Запустим профайлер Pandas, передав Датасет (Dataset) в качестве аргумента функции ProfileReport(). Вручную запрашивать такие данные, как объем выборки, количество признаков (Number of variables), пропусков (Missing cells) и проч. теперь нет необходимости, и Ваши драгоценные умственные ресурсы теперь можно направить на Разведочный анализ данных (EDA).

-4

В разделе "Предупреждения" ('Warnings') Вы найдете переменные с высокой корреляцией (некоторые из них можно в дальнейшем исключить при обучении модели), Мощностью (Cardinality) и проч. Во вкладке "Репродукция" ('Reproduction') – сводку профайлинга (дата начала и окончания, длительность, версию pandas-profiling).

Профайлер пробегается и по каждой переменной: к примеру, для temp (Нормализованная температура в градусах Цельсия) мы проверяем:

  • Нормальность распределения с помощью графика слева. Это необходимо, чтобы в дальнейшем использовать параметрический алгоритм при обучении модели.
  • Индикация пропусков (Missing) – важный шаг при подготовке датасета: обнаружив и правильно заполнив пустующие ячейки, Вы "спасете" ценные неполные данные от удаления и в конечном итоге улучшите предсказательную способность модели.
  • Вероятно, параметр "Бесконечность" ('Infinite'), рассчитываемый только для вещественных чисел, отыскивает сильно выделяющиеся значения, которыми в некоторых источниках принято обозначать пропуски.
  • Среднее значение (Mean)
  • Минимум (Minimum)
  • Максимум (Maximum)
  • Количество нулей (Zeros). Нулями также порой обозначают пропуски.
  • Размер памяти (Memory size). Для больших датасетов метрика учитывается, поскольку влияет на скорость обучения модели.
-5

Следующий интересный раздел – "Корреляции" ('Correlations'). В Машинном обучении принято использовать пять ее типов – r (коэффициент корреляции Пирсона), p (к. к. Спирмана), τ ("тау", к. к. Кендалла), φk ("фи-ка", к. фи-корреляции), φc ("фи-Крамер", к. к. Крамера). Чем ярче (краснее / синее) ячейка, тем сильнее выражена корреляция. Диагональные ячейки игнорируются, поскольку являются результатом расчета коэффициента между переменной и ее копией.

-6

Эти и многие другие статистики Вы с легкостью можете получить с помощью замечательной библиотеки pandas-profiling. Теперь Вы знаете, в чем разница между "статистикой" и "статистиками".

Ноутбук с кодом, не требующим дополнительной настройки, можно скачать по ссылке.

Понравилась статья? Поддержите нас, поделившись статьей в социальных сетях и подписавшись на канал. И попробуйте наши курсы по Машинному обучению на Udemy.