Группировка категориальных значений

Важно!

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

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

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

Группирует данные нескольких категорий в новую категорию

Категория: Преобразование или управление данными

Примечание

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

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

Обзор модуля

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

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

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

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

Примечание

Можно создать не более 20 новых уровней, включая уровень по умолчанию. Если вам нужны дополнительные значения или необходимо определить сопоставления динамически, рекомендуется использовать пользовательский скрипт R в модуле выполнить сценарий r . или используйте инструкции SQL в модуле преобразования Apply SQL .

Использование значений групповых категорий

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

  1. Добавьте в эксперимент модуль группы категорий значений . Модуль можно найти в разделе Преобразование данных, Обработка.

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

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

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

    • Столбец должен иметь категориальный тип данных. Если это не так, добавьте параметр изменить метаданные и измените тип столбца.

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

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

    По умолчанию ресултонлиотображает только новые значения. Параметр "заменить" заменяет существующие значения столбцов новыми уровнями.

  5. В поле имя уровня по умолчаниювведите строковое значение, которое будет использоваться в качестве замены для всех значений, которые не были явно сопоставлены. Вы можете использовать нечто вроде "Unknown" или "default".

    Примечание

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

  6. Для нового числа уровнейвведите число, указывающее общее число новых категорий (уровней), включая уровень по умолчанию для несопоставленных значений.

  7. В качестве имени нового уровня 1укажите новое имя группы для первой категории.

  8. В текстовом поле, которое следует сразу за списком старых уровней с разделителями-запятыми, сопоставляемых с новым уровнем 1, введите или вставьте полный список всех значений, чтобы сопоставлено с новым уровнем. Подстановочные знаки и регулярные выражения не допускаются.

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

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

    Однако при редактировании ранее сохраненного модуля можно вернуться к исходным параметрам.

  10. Запустите эксперимент.

Результаты

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

Примеры

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

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

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

  • Большие модули: шесть цилиндров или больше
  • Небольшие модули: два или четыре цилиндра
  • Другое: все остальное
  1. Добавьте модуль Выбор столбцов в наборе данных и выберите только num-of-cylinders столбец.
  2. Добавьте модуль изменить метаданные и измените num-of-cylinders столбец на Категория.
  3. Добавьте модуль " значения групповых категорий " и подключите измененный набор данных.
  4. В качестве имени уровня по умолчаниювведите other . Вам не нужно указывать значения для этого уровня.
  5. В качестве имени нового уровня 1введите big . В списке старых уровней, сопоставляемых с уровнем 1, вставьте six, eight, twelve .
  6. В качестве имени нового уровня 2введите small . Для сопоставленных значений вставьте в two, four .
  7. Запустите эксперимент.
  8. При визуализации результатов вы осознаете, что исходный набор данных имеет некоторые нечетные размеры модулей, для которых вы не задали учет, например five и three . Все такие элементы сопоставлены с other уровнем.

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

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

  • Может появиться сообщение об ошибке "столбец с именем < ColumnName > " не входит в допустимую категорию ".

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

Ожидаемые входные данные

Имя Тип Описание
Dataset Таблица данных Данные для группировки

Параметры модуля

Имя Диапазон Тип По умолчанию Описание
Выбранные столбцы any Выбор столбцов CategoricalAll Выберите столбцы, которые будут сгруппированы.
Режим вывода any OutputTo ResultOnly Укажите, как должны выводиться метки категорий.
Имя уровня по умолчанию any Строка Указывает уровень по умолчанию при отсутствии сопоставления.
Новое количество уровней Список Количество групп Укажите количество уровней после группировки значений, включая уровень по умолчанию.

Выходные данные

Имя Тип Описание
Набор данных результатов Таблица данных Сгруппированные данные

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

Оперирование
Преобразование данных
Список модулей в алфавитном порядке