Секционирование и выборка

Важно!

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

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

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

Создание нескольких секций набора данных на основе выборки

Категория: Преобразование данных/выборка и разбиение

Примечание

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

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

Обзор модуля

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

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

  • Разделение данных на несколько подразделов одинакового размера.

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

  • Разделение данных на группы и последующая обработка данных из определенной группы.

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

  • Выборка.

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

  • Создание набора данных меньшего размера для тестирования.

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

Настройка раздела и образца

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

  • Получение наибольшего количества строк

Получить ПЕРВЫЕ N строк из набора данных

Используйте этот режим, чтобы получить только первые n строк. Этот параметр полезен, если вы хотите протестировать эксперимент по небольшому количеству строк, и не требуется, чтобы данные были сбалансированы или выборке каким-либо образом.

  1. Добавьте модуль Partition и Sample в эксперимент в студии (классическая модель) и подключите набор данных.

  2. Режим секционирования или выборки: установите для этого параметра значение Head.

  3. Число строк для выбора: введите число возвращаемых строк.

    Указанное число строк должно быть неотрицательным целым числом. Если количество выбранных строк превышает количество строк в наборе данных, возвращается весь набор данных.

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

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

Создание образца данных

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

  1. Добавьте модуль Partition и Sample в эксперимент в студии (классическая модель) и подключите набор данных.

  2. Раздел или режим выборки: задайте для этого параметра значение выборка.

  3. Частота выборки: введите значение от 0 до 1. Это значение определяет процент строк из исходного набора данных, которые должны быть включены в выходной набор.

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

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

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

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

  5. Разделение стратифицированной для выборки. Выберите этот параметр, если важно, чтобы строки в наборе данных были равномерно распределены по определенному ключевому столбцу перед выборкой.

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

    1. Все входные строки группируются (стратифицируются) по значениям в столбце стратификации.

    2. строки перемешиваются внутри каждой группы;

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

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

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

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

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

Разделение данных на секции

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

  1. Добавьте модуль Partition и Sample в эксперимент в студии (классическая модель) и подключите набор данных.

  2. Для параметра Режим секционирования или выборки выберите Назначение по сверткам.

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

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

  4. Случайное разбиение: выберите этот параметр, чтобы строки были назначены для свертывания случайным образом.

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

  5. Случайное начальноезначение. при необходимости введите целое число, которое будет использоваться в качестве начального значения. Этот параметр важен, если нужно, чтобы строки были распределены одинаково каждый раз. В противном случае используется значение по умолчанию (0), а это означает, что начальное значение будет случайным.

  6. Укажите метод секционирования: Укажите способ распределения данных по каждой секции, используя следующие параметры:

    • Равномерное секционирование: используйте этот параметр, чтобы разместить одинаковое количество строк в каждой секции. Чтобы указать число секций выходных данных, введите целое число в поле Укажите число сверток для равномерного разбиения на текст.

    • Разделение с настроенными пропорциями: используйте этот параметр, чтобы указать размер каждой секции в виде списка с разделителями-запятыми.

      Например, если необходимо создать три секции с первой секцией, содержащей 50% данных, и оставшиеся две секции, содержащие 25% данных, щелкните список пропорций, разделенных запятыми , и введите следующие значения: .5, .25, .25

      Сумма всех размеров секций должна быть равна 1.

      • Если ввести числа, сумма которых меньше 1, создается дополнительная секция для хранения оставшихся строк. Например, если ввести значения 2 и 3, создается третья секция, которая содержит оставшиеся 50 процентов всех строк.

      • Если ввести числа, которые доводят до 1, при запуске эксперимента возникает ошибка.

  7. Стратифицированное разделение: выберите этот параметр, если нужно, чтобы строки были стратифицированы при разбиении, а затем выберите столбец стратификации.

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

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

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

Использование данных из предопределенной секции

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

  1. Добавьте модуль Partition и Sample в эксперимент в студии (классическая модель).

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

  3. Режим секционирования или выборки: выберите параметр Выбрать свертку.

  4. Укажите, из какого сгибаследует выделять выборку. Выберите секцию для использования, введя ее индекс. Индексы секций начинаются с 1. Например, если набор данных делится на три части, то для секций будут существовать индексы 1, 2 и 3.

    При вводе недопустимого значения индекса возникает ошибка времени разработки: "ошибка 0018: набор данных содержит недопустимые данные".

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

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

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

    Совет

    Этот прием демонстрируется в примере эксперимента, разбиении на секции и образце.

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

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

Примечание

Вы не можете просматривать макеты «сгиб» напрямую; они представлены только в метаданных.

Примеры

Примеры использования этого модуля см. в Коллекция решений ии Azure:

  • Перекрестная проверка для двоичной классификации: для создания меньшего набора данных с меньшим количеством случайных выборок применяется частота 20%. Исходный набор данных переписи содержал более 30 000 строк; Пример набора данных составляет около 6500.

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

  • Разбиение секций и выборки. демонстрирует несколько способов использования секционирования и выборки. Во-первых, параметр Assign To Parallelisms используется для присвоения строк в наборе данных одной из трех групп с равными размерами. Затем с помощью режима сгиба выборки добавляются еще три экземпляра Partition и Sample , чтобы применить операции к поднаборам данных.

    • В первом выгнути (индекс 1) строки разбиваются случайным образом.
    • Во втором выгнути (индекс 2) строки разбиваются по образованию.
    • В третьем выгнутом (индексе 3) строки разбиваются по возрасту.

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

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

  • Указанный столбец Strata не может содержать непрерывные данные: то есть числовые данные с плавающей запятой в каждой ячейке. В противном случае модуль не сможет обработать данные и вернет ошибку.

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

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

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

Дополнительные сведения о стратифицированной выборки

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

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

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

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

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

Имя Тип Описание
Dataset Таблица данных Разбиваемый набор данных

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

Имя Диапазон Тип По умолчанию Описание
Режим секционирования или выборки Список Методы выборки Выборка Выберите режим секционирования или выборки
Использование замены в секционировании Любой Логическое значение Неверно Укажите, должны ли выставляться непересекающиеся (по умолчанию — без замены) или перекрывающиеся (истина — использовать замену).
Случайное разбиение Любой Логическое значение True Укажите, выполняется ли разбиение в случайной последовательности.
Случайное начальное значение Любой Целое число 0 Укажите начальное значение для генератора случайных чисел
Укажите метод секционирования Список Методы секционирования Равномерное секционирование Выберите секционирование равномерно , чтобы разделить на части равного размера, или раздел с настроенными пропорциями , чтобы секционировать в фрагменты настроенного размера.
Укажите число сверток для равномерного разбиения >= 1 Целочисленный тип 5 Выберите число секций для разделения
Стратифицированное разбиение Список Тип True/False Неверно Укажите, является ли разбиение стратифицированным.
Ключевой столбец стратификации Любой Выбор столбцов Содержит ключ стратификации.
Список пропорций, разделенный запятыми Любой Строка Перечислить пропорции, разделенные запятыми
Стратифицированное разбиения для настраиваемого назначения сверток Любой Тип True/False Неверно Укажите, является ли разбиение стратифицированным для настраиваемых назначений сверток.
Ключевой столбец стратификации для настраиваемых назначений сверткам Любой Выбор столбцов Содержит ключ стратификации для настраиваемых назначений сверткам.
Укажите свертку для выборки >= 1 Целое число 1 Содержит индекс сгиба, который будет выдаваться в выборку
Выбор дополнения указанной свертки Любой Логическое значение Неверно Выберите дополнение указанного сгиба
Частота выборки Любой Float 0,01 Выберите частоту выборки.
Начальное значение случайной последовательности для выборки Любой Целое число 0 Указывает начальное значение для генератора случайных чисел при выборке.
Стратифицированное разбиение для выборки Любой Истина/ложь False Указывает, является ли разбиение для выборки стратифицированным.
Ключевой столбец стратификации для выборки Любой Выбор столбцов Содержит ключ стратификации для выборки.
Количество выбираемых строк >=0 Целое число 10 Выбор максимального числа записей, которые могут быть переданы в следующий модуль

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

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

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

Выборка и разбиение
Split Data (Разделение данных);
Изменение метаданных
Группирование данных в ячейки