С точки зрения разработки функций

Разработка функций — это процесс использования знаний предметной области для создания функций, улучшающих работу алгоритмов машинного обучения. Это важнейшая часть прикладного машинного обучения, которая часто определяет разницу между успешными и неудачными проектами.

С другой стороны, гистограммы известны как один из первых шагов к предварительной обработке данных. Это важный шаг для исследования данных с простыми основами: он обобщает ваши наблюдения и представляет их в сжатой форме.

Но как мы можем извлечь признаки из гистограмм?

Давайте рассмотрим пять методов, которые могут помочь нам извлечь функции, которые могут сделать наши модели более надежными и эффективными.

Измерьте расстояние между гистограммами

Мера расстояния используется для определения того, насколько похожи или различны два объекта. Это ключевой элемент во многих алгоритмах машинного обучения. Функция расстояния между вашими векторами объектов дает вам возможность оценить, похожи ли два объекта в вашем наборе данных.

Другими словами, он дает вам шкалу для оценки степени сходства между двумя функциями.

Существует множество различных способов измерения расстояний, каждый из которых имеет свои преимущества и недостатки. Наиболее распространенными мерами расстояния являются евклидово расстояние, манхэттенское расстояние и косинусное сходство.

А как насчет расстояния между гистограммами?

Снова много методов: расхождение Кульбака-Лейблера, статистика хи-квадрат, экспоненциальное расхождение, расстояние Хеллингера, расстояние Вассерштейна…

Последняя является очень естественной метрикой в ​​пространстве вероятностных мер. Это очень универсальный показатель, который измеряет объем «работы», необходимой для замены одной гистограммы на другую, и может использоваться для сравнения распределений, которые не обязательно идентичны.

Нормализация гистограмм

Важно нормализовать данные, потому что это может помочь повысить производительность алгоритмов, использующих функции. Когда данные нормализованы, это означает, что все функции в данных имеют одинаковый масштаб.

Некоторые алгоритмы чувствительны к масштабу данных, и нормализация данных может даже помочь некоторым алгоритмам быстрее сходиться к решению.

Но есть и другие причины для нормализации гистограмм:

  1. Чтобы данные распределялись равномерно.
  2. Чтобы все данные были видны.
  3. Для упрощения сравнения наборов данных.

Изменить схему биннинга

Для алгоритмов машинного обучения, которые чувствительны к многомерным векторам признаков, мы можем уменьшить количество измерений, просто используя меньшее количество ячеек или меньший диапазон значений.

Существует два основных типа биннинговых схем:

  • Разделение по ширине: при объединении по ширине ширина каждого бина одинакова. Это самый распространенный тип биннинга.
  • Равночастотное бинирование: при равночастотном бинировании каждый бин содержит одинаковое количество точек данных.

Существуют и другие типы биннинговых схем, но эти два являются наиболее распространенными. Биннинг равной ширины является наиболее распространенным типом биннинга, потому что его проще всего реализовать и понять.

Тем не менее, равночастотное бинирование может быть более эффективным, поскольку оно гарантирует, что каждый бин содержит одинаковое количество точек данных.

Разделите гистограммы на несколько частей

Есть несколько причин, по которым может потребоваться разделить гистограмму на несколько частей. Одна из причин заключается в том, что проще сравнивать две или более гистограмм, если они разбиты на несколько частей.

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

Например, гистограмму роста населения можно разделить по географическим районам и показать, что распределение роста различается в зависимости от страны.

Объединить гистограммы

Эта последняя часть очень специфична. Поясню на примере. Допустим, у нас есть набор изображений, которые мы хотим проанализировать с помощью гистограммы ориентированного градиента, но мы также хотим разделить данные в зависимости от их цветовых составляющих.

В этом случае мы можем объединить гистограмму ориентированных градиентов с гистограммой цвета следующим образом.

  • HOG: [0,01, 0,02, ..]
  • Цветовая гистограмма: [0,02, 0,03, ..]
  • Комбинированный: [0,01, 0,02, .. ,0,02, 0,03, ..]

Мы можем объединить обе гистограммы и даже добавить вес каждой гистограмме, чтобы придать большее или меньшее значение одной гистограмме:

  • В сочетании с весами: [0,01*w1, 0,02*w1, .. ,0,02*w2, 0,03*w2, ..]

Заключение

Существует множество способов манипулирования гистограммами для лучшего понимания данных, которые они представляют. Измеряя расстояние между гистограммами, мы можем понять, насколько они похожи или различны.

Мы также можем нормализовать гистограммы, чтобы их было легче сравнивать, изменить схему биннинга, чтобы лучше визуализировать данные, или разделить гистограммы на несколько частей, чтобы лучше понять распределение данных.

В конце концов, мы можем объединить гистограммы вместе, чтобы сформировать функции, которые могут помочь нам решить очень специфические задачи машинного обучения.

Хотите узнать больше о работе и проектах Энтони? Следите за ним в Medium, LinkedIn и Twitter.

Нужен технический писатель? Отправьте запрос на https://amigocci.io.