преобразование данных — Обучение с подсчетами

Важно!

Поддержка Студии машинного обучения (классической) будет прекращена 31 августа 2024 г. До этой даты рекомендуется перейти на Машинное обучение Azure.

Начиная с 1 декабря 2021 года вы не сможете создавать новые ресурсы Студии машинного обучения (классической). Существующие ресурсы Студии машинного обучения (классическая версия) можно будет использовать до 31 августа 2024 г.

Поддержка документации по ML Studio (классической) прекращается, а сама документация может не обновляться в будущем.

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

Примечание

применимо к: только Машинное обучение Studio (классическая модель)

Подобные модули перетаскивания доступны в конструкторе машинного обучения Azure.

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

Сведения о Добавление признаков на основе счетчиков

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

Imagine, что выполняется проверка транзакции кредитной карты. Важной частью информации является то, откуда поступила эта транзакция. Одной из наиболее распространенных кодировок источника транзакции является почтовый индекс. Однако в таком случае придется учитывать целых 40 000 почтовых индексов и географических кодов. Достаточно ли у вашей модели емкости для изучения 40 000 дополнительных параметров? Если вы решите, что у вас есть достаточно данных для обучения, чтобы не допустить его перегонки?

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

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

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

Как создаются функции на основе количества

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

Столбец метки Входное значение
0 Объект
0 А
1 Объект
0 B
1 B
1 B
1 B

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

  1. Для определенного набора значений найдите все остальные варианты в этом наборе данных, имеющие одно и то же значение. В этом случае существует три экземпляра и четыре экземпляра B.
  2. Подсчитайте, что членство в классе каждого значения является самой функцией. В этом случае вы получаете маленькую матрицу: существует два случая, где A = 0; один случай, когда A = 1; один случай, когда B = 0; и три варианта, где B = 1.
  3. На основе этой матрицы вы получаете разнообразные функции, основанные на подсчетах. Они включают Вычисление коэффициента, соотношения с журналами, и количества для каждого целевого класса. В таблице в следующем разделе отображаются данные.

Пример таблицы функций на основе счетчиков

Метка 0_0_Class000_Count 0_0_Class001_Count 0_0_Class000_LogOdds 0_0_IsBackoff
0 2 1 0,510826 0
0 2 1 0,510826 0
1 2 1 0,510826 0
0 1 3 — 0,8473 0
1 1 3 — 0,8473 0
1 1 3 — 0,8473 0
1 1 3 — 0,8473 0

Примеры

при использовании Машинное обучение для создания моделей прогнозирования с дополнительной информациейгруппа разработчиков Microsoft Машинное обучение предоставляет подробное пошаговое руководство по использованию счетчиков в машинном обучении. В этой статье сравнивается эффективность моделирования на основе количества с другими методами.

Технические примечания

В этом разделе содержатся сведения и советы относительно реализации, а также ответы на часто задаваемые вопросы.

Как вычисляется значение потери журнала

Значение потери журнала не является обычным журналом. В этом случае используется прежнее распределение, чтобы сгладить вычисления с незначительным объемом журнала.

Предположим, что у вас есть набор данных, используемый для двоичной классификации. В этом наборе данных для класса 0 была p_0 указана ранее частота, а для класса 1 указана более p_1 = 1 – p_0 ранней частотой. Для конкретной функции примера обучения количество для класса 0 равно x_0 , а число для класса 1 — x_1 .

В рамках этих предположений, вероятность того, что журнал имеет значение, будет вычисляться как LogOdds = Log(x0 + c * p0) – Log (x1 + c\p1) , где c — это прежний коэффициент, который может быть установлен пользователем. Функция log использует естественную базу.

Иными словами, для каждого класса i :

Log_odds[i] = Log( (count[i] + prior_coefficient * prior_frequency[i]) / (sum_of_counts - count[i]) + prior_coefficient \* (1 - prior_frequency[i]))

Если прежний коэффициент положительный, то вероятность того, что журнал может отличаться Log(count[i] / (sum_of_counts – count[i])) .

Почему журнал не рассчитан для некоторых элементов

По умолчанию все элементы с числом меньше 10 собираются в одном контейнере, называемом "мусорная корзина". Это значение можно изменить с помощью параметра « пороговое значение мусора » в модуле « изменение параметров таблицы счетчиков ».

Список модулей

категория Обучение с подсчетами включает следующие модули:

  • Преобразование подсчета сборок: создает таблицу счетчиков и функции на основе количества из набора данных, а затем сохраняет таблицу и компоненты как преобразование.
  • Экспорт таблицы счетчиков: экспортирует таблицу счетчиков из преобразования подсчета. Этот модуль поддерживает обратную совместимость с экспериментами, которые создают функции на основе счетчиков с помощью таблицы счетчиков сборок (не рекомендуется) и count Характеризатора (устарело).
  • Таблица счетчиков импорта: импортирует существующую таблицу счетчиков. Этот модуль поддерживает обратную совместимость с экспериментами, которые создают функции на основе счетчиков с помощью таблицы счетчиков сборок (не рекомендуется) и count Характеризатора (устарело). Модуль поддерживает преобразование таблиц счетчиков для преобразования количества преобразований.
  • Преобразование "подсчет числа слияний": объединяет два набора функций на основе количества.
  • Изменение параметров таблицы счетчиков: изменяет функции на основе числа, которые являются производными от существующей таблицы счетчиков.

См. также раздел