Поделиться через


Обрезка значений

В этой статье описывается компонент конструктора Машинного обучения Azure.

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

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

Настройка обрезки значений

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

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

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

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

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

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

    • ClipPeaks: при отсечении значений по пиковым значениям указывается только верхняя граница. Значения выше этой границы заменяются.

    • ClipSubpeaks: при отсечении значений по подпиковым значениям указывается только нижняя граница. Значения ниже этой границы заменяются.

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

  4. В зависимости от выбора на предыдущем шаге можно задать следующие пороговые значения:

    • Нижнее пороговое значение: отображается только при выборе ClipSubPeaks
    • Верхнее пороговое значение: отображается только при выборе ClipPeaks
    • Пороговое значение: отображается только при выборе ClipPeaksAndSubPeaks

    Для каждого типа порогового значения выберите значение Константа или Процентиль.

  5. При выборе значения Константа введите максимальное или минимальное значение в текстовом поле. Например, предположим, что в качестве значения заполнителя было использовано значение 999. Можно выбрать значение Константа для верхнего порогового значения и ввести 999 в поле Постоянное значение верхнего порогового значения.

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

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

    Некоторые примеры использования диапазонов процентиля см. в разделе Процентили.

  7. Определите замещающее значение.

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

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

    Поддерживаются следующие замещающие значения:

    • Пороговое значение. Заменяет обрезанные значения указанным пороговым значением.

    • Среднее значение. Заменяет обрезанные значения средними значениями столбцов. Среднее значение вычисляется до обрезки значений.

    • Медиана. Заменяет обрезанные значения медианным значением столбцов. Медианное значение вычисляется до обрезки значений.

    • Значение отсутствует. Заменяет обрезанные значения на отсутствие (пустое) значения.

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

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

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

  10. Отправьте конвейер.

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

Примеры обрезки по процентилям

Чтобы понять, как работает вырезка по процентилям, рассмотрим набор данных с 10 строками, которые имеют один экземпляр каждого из значений 1-10.

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

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

  1. Для набора пороговых значений выберите ClipPeaksAndSubPeaks.

  2. Для верхнего порога выберите Процентиль и для числа процентиля введите 90.

  3. В качестве верхнего заменяющего значения выберите "Отсутствующее значение".

  4. Для нижнего порогового значения выберите Процентиль и для числа процентиля введите 10.

  5. В качестве нижней замены выберите "Отсутствующее значение".

  6. Отключите флажок перезаписи параметра и выберите параметр, добавьте столбец индикатора.

Теперь попробуйте этот же конвейер, установив значение 60 для верхнего процентильного порога, 30 для нижнего процентильного порога и использовав пороговое значение в качестве заменяющего. В следующей таблице сравниваются два результата:

  1. Замена на отсутствие значения; верхний порог = 90; нижний порог = 20

  2. Замена на пороговое значение; верхний процентиль = 60; нижний процентиль = 40

Исходные данные Замена отсутствующим Замена пороговым значением
1

2

3

4

5

6

7

8

9

10
ПРАВДА

ПРАВДА

3, FALSE

4, FALSE

5, FALSE

6, FALSE

7, FALSE

8, FALSE

9, FALSE

ПРАВДА
4, TRUE

4, TRUE

4, TRUE

4, TRUE

5, FALSE

6, FALSE

7, TRUE

7, TRUE

7, TRUE

7, TRUE

Следующие шаги

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