Преобразования данных используются, чтобы:
- Подготовка данных для обучения модели.
- Примените импортированную модель в формате TensorFlow или ONNX.
- После передачи данных после передачи данных после прохождения модели.
В этом руководстве рассматриваются преобразования, которые возвращают классы, реализующие интерфейс IEstimator. Преобразования данных можно соединять в цепочки. Каждое преобразование принимает и выводит данные определенных типов и форматов, которые указаны в связанной справочной документации.
Некоторым преобразованиям данных требуются данные для обучения, чтобы вычислять их параметры. Например, преобразователь NormalizeMeanVariance позволяет вычислить среднее значение и дисперсию данных для обучения при выполнении операции Fit() и использует эти параметры в операции Transform().
Другим преобразованиям данных не требуются данные для обучения. Например, преобразование ConvertToGrayscale позволяет выполнять операцию Transform() без изучения данных для обучения при выполнении операции Fit().
Сопоставление и группирование столбцов
| Преобразование |
Определение |
Экспортируемый в ONNX |
| Concatenate |
Объединение одного или нескольких входных столбцов в новый выходной столбец |
Да |
| CopyColumns |
Копирование и переименование одного или нескольких входных столбцов |
Да |
| DropColumns |
Удаление одного или нескольких входных столбцов |
Да |
| SelectColumns |
Выбор одного или нескольких столбцов для хранения входных данных |
Да |
Нормализация и масштабирование
| Преобразование |
Определение |
Экспортируемый в ONNX |
| NormalizeMeanVariance |
Вычитание среднего значения (данные для обучения) и деление на значение дисперсии (данные для обучения) |
Да |
| NormalizeLogMeanVariance |
Нормализация на основе логарифма данных для обучения |
Да |
| NormalizeLpNorm |
Масштабирование входных векторов на основе lp-norm, где p — 1, 2 или бесконечность. Значение по умолчанию — норма l2 (Евклидово расстояние) |
Да |
| NormalizeGlobalContrast |
Масштабирование каждого значения в строке путем вычитания среднего значения данных в строке и деления либо на стандартное отклонение, либо на норму l2 (данных в строке) и умножения на настраиваемый коэффициент масштабирования (значение по умолчанию — 2) |
Да |
| NormalizeBinning |
Назначение двоичного индекса в качестве входного значения и деление на число ячеек для получения значения с плавающей запятой от 0 до 1. Границы ячеек вычисляются для равномерного распределения между ними данных для обучения |
Да |
| NormalizeSupervisedBinning |
Назначьте входное значение для ячейки в зависимости от корреляции со столбцом меток |
Да |
| NormalizeMinMax |
Масштабирование входных значений на основе разницы между минимальным и максимальным значениями в данных для обучения |
Да |
| NormalizeRobustScaling |
Масштабируйте каждое значение, используя статистику, устойчивую к выбросам, которая центрирует данные вокруг 0 и масштабирует данные в соответствии с диапазоном квантилей. |
Да |
Преобразования между типами данных
| Преобразование |
Определение |
Экспортируемый в ONNX |
| ConvertType |
Преобразование типа входного столбца в новый тип |
Да |
| MapValue |
Сопоставление значений с ключами (категориями) на основе предоставленного словаря сопоставлений |
нет |
| MapValueToKey |
Сопоставление значений с ключами (категориями) путем создания сопоставлений на основе входных данных |
Да |
| MapKeyToValue |
Обратное преобразование ключей в исходное значение |
Да |
| MapKeyToVector |
Обратное преобразование ключей в векторы исходных значений |
Да |
| MapKeyToBinaryVector |
Обратное преобразование ключей в двоичный вектор исходных значений |
нет |
| Hash |
Хэширование значения во входном столбце |
Да |
Преобразования текста
| Преобразование |
Определение |
Экспортируемый в ONNX |
| FeaturizeText |
Преобразование текстового столбца в массив float счетчиков нормализованных n-грамм и символьных n-грамм |
нет |
| TokenizeIntoWords |
Разбиение одного или нескольких текстовых столбцов на отдельные слова |
Да |
| TokenizeIntoCharactersAsKeys |
Разбиение одного или нескольких текстовых столбцов на отдельные массивы float в пределах набора тем |
Да |
| NormalizeText |
Изменение регистра, удаление диакритических знаков, знаков препинания и цифр |
Да |
| ProduceNgrams |
Преобразование текстового столбца в контейнер n-грамм (ряд последовательных слов) |
Да |
| ProduceWordBags |
Преобразование текстового столбца в контейнер векторов n-грамм |
Да |
| ProduceHashedNgrams |
Преобразование текстового столбца в вектор счетчиков хэшированных n-грамм |
нет |
| ProduceHashedWordBags |
Преобразование текстового столбца в контейнер счетчиков хэшированных n-грамм |
Да |
| RemoveDefaultStopWords |
Удаление стоп-слов по умолчанию для указанного языка из входных столбцов |
Да |
| RemoveStopWords |
Удаление указанного стоп-слова из входных столбцов |
Да |
| LatentDirichletAllocation |
Преобразование документа (в виде вектора значений с плавающей запятой) в вектор значений с плавающей запятой на основе набора тем |
Да |
| ApplyWordEmbedding |
Преобразование векторов текстовых маркеров в векторы предложений с помощью предварительно обученной модели |
Да |
| Преобразование |
Определение |
Экспортируемый в ONNX |
| ConvertToGrayscale |
Преобразование изображения в оттенки серого |
нет |
| ConvertToImage |
Преобразование вектора пикселей в ImageDataViewType |
нет |
| ExtractPixels |
Преобразование пикселей из входного изображения в вектор чисел |
нет |
| LoadImages |
Загрузка изображений из папки в память |
нет |
| LoadRawImageBytes |
Загружает изображения необработанных байтов в новый столбец. |
нет |
| ResizeImages |
Изменение размеров изображений |
нет |
| DnnFeaturizeImage |
Применяет предварительно обученную модель глубокой нейронной сети (DNN) для преобразования входного изображения в вектор признаков |
нет |
| Преобразование |
Определение |
Экспортируемый в ONNX |
| OneHotEncoding |
Преобразование одного или нескольких текстовых столбцов в векторы с использованием прямой кодировки |
Да |
| OneHotHashEncoding |
Преобразование одного или нескольких текстовых столбцов в векторы с использованием прямой кодировки на основе хэша |
нет |
| Преобразование |
Определение |
Экспортируемый в ONNX |
| DetectAnomalyBySrCnn |
Обнаружение аномалий во входных данных временных рядов с помощью алгоритма спектрального остатка (SR) |
нет |
| DetectChangePointBySsa |
Обнаружение точек изменений в данных временных рядов с помощью анализа сингулярного спектра (SSA) |
нет |
| DetectIidChangePoint |
Обнаружение точек изменения в независимых и одинаково распределенных (IID) данных временных рядов с использованием адаптивных оценок плотности ядра и показателей мартингала |
нет |
| ForecastBySsa |
Прогнозирование данных временных рядов с помощью анализа сингулярного спектра (SSA) |
нет |
| DetectSpikeBySsa |
Обнаружение пиков данных временных рядов с помощью анализа сингулярного спектра (SSA) |
нет |
| DetectIidSpike |
Обнаружение пиков в независимых и одинаково распределенных (IID) данных временных рядов с использованием адаптивных оценок плотности ядра и показателей мартингала |
нет |
| DetectEntireAnomalyBySrCnn |
Обнаружение аномалий для всех входных данных с помощью алгоритма SRCNN. |
нет |
| DetectSeasonality |
Обнаружение сезонности с помощью анализа Фурье. |
нет |
| LocalizeRootCause |
Локализация основной причины на основе входных данных временных рядов с помощью алгоритма дерева принятия решений. |
нет |
| LocalizeRootCauses |
Локализация основных причин на основе входных данных рядов. |
нет |
Отсутствующие значения
| Преобразование |
Определение |
Экспортируемый в ONNX |
| IndicateMissingValues |
Создание логического выходного столбца, который будет иметь значение true, если во входном столбце не указано значение |
Да |
| ReplaceMissingValues |
Создание выходного столбца, значение которого будет задано по умолчанию, если отсутствует значение из входного столбца. В противном случае по умолчанию будет задано значение из входного столбца. |
Да |
выбор признаков;
| Преобразование |
Определение |
Экспортируемый в ONNX |
| ApproximatedKernelMap |
Сопоставление каждого входного вектора с пространством признаков нижнего измерения, где внутренние продукты приближены к функции ядра, чтобы эти признаки можно было использовать в качестве входных для линейных алгоритмов. |
нет |
| ProjectToPrincipalComponents |
Уменьшение измерений входного вектора признаков путем применения алгоритма анализа основных компонентов. |
|
| Преобразование |
Определение |
Экспортируемый в ONNX |
| CalculateFeatureContribution |
Вычисление результатов вклада для каждого элемента вектора признаков |
нет |
| Преобразование |
Определение |
Экспортируемый в ONNX |
| Platt(String, String, String) |
Преобразует необработанный показатель двоичного классификатора в вероятность класса с помощью логистической регрессии с параметрами, оцененными с помощью обучающих данных |
Да |
| Platt(Double, Double, String) |
Преобразует необработанный показатель двоичного классификатора в вероятность класса с помощью логистической регрессии с фиксированными параметрами |
Да |
| Naive |
Преобразует необработанный показатель двоичного классификатора в вероятность класса путем назначения оценки ячейкам и вычисления вероятности на основе распределения между ячейками. |
Да |
| Isotonic |
Преобразует необработанную оценку двоичного классификатора в вероятность класса путем назначения оценки ячейкам, где расположение границ и размер ячеек оцениваются с помощью обучающих данных. |
нет |
| Преобразование |
Определение |
Экспортируемый в ONNX |
| ApplyOnnxModel |
Преобразование входных данных в импортированную модель ONNX |
нет |
| LoadTensorFlowModel |
Преобразование входных данных в импортированную модель TensorFlow |
нет |
| Преобразование |
Определение |
Экспортируемый в ONNX |
| FilterByCustomPredicate |
Удаление строк, в которых указанный предикат возвращает значение true. |
нет |
| FilterByStatefulCustomPredicate |
Удаление строк, в которых указанный предикат возвращает значение true, но разрешает заданное состояние. |
нет |
| CustomMapping |
Преобразование существующих столбцов в новые с помощью пользовательского сопоставления |
нет |
| Expression |
Применение выражения для преобразования столбцов в новые. |
нет |