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


OneHotHashEncodingEstimator Класс

Определение

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

public sealed class OneHotHashEncodingEstimator : Microsoft.ML.IEstimator<Microsoft.ML.Transforms.OneHotHashEncodingTransformer>
type OneHotHashEncodingEstimator = class
    interface IEstimator<OneHotHashEncodingTransformer>
Public NotInheritable Class OneHotHashEncodingEstimator
Implements IEstimator(Of OneHotHashEncodingTransformer)
Наследование
OneHotHashEncodingEstimator
Реализации

Комментарии

Характеристики оценщика

Нужно ли этому оценщику просмотреть данные для обучения параметров? Да
Тип данных входного столбца Скалярный или вектор числовых, логических, текстовых или ключевых типов.
Тип данных выходного столбца Скалярный или вектор ключа или вектор Single типа.
Экспортируемый в ONNX Нет

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

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

Выходные данные этого преобразования задаются в следующих значениях OneHotEncodingEstimator.OutputKind:

  • Indicator создает вектор индикатора. Каждый слот в этом векторе соответствует категории в словаре, поэтому его длина равна размеру созданного словаря. Если значение не найдено в словаре, выходные данные являются нулевым вектором.

  • Bag создает один вектор таким образом, чтобы каждый слот сохранял количество вхождений соответствующего значения во входном векторе. Каждый слот в этом векторе соответствует значению в словаре, поэтому его длина — это размер встроенного словаря. Indicator и Bag отличаются просто тем, как битовые векторы, созданные из отдельных слотов во входном столбце, агрегируются: для индикатора они объединяются и добавляются в контейнер. Если исходный столбец является скалярным, параметры индикатора и контейнера идентичны.

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

  • Binary создает двоичный вектор в кодировке для представления значений, найденных в словаре, которые присутствуют в входном столбце. Если значение во входном столбце не найдено в словаре, выходные данные являются нулевым вектором.

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

Ознакомьтесь с разделом "См. также" ссылки на примеры использования.

Методы

Fit(IDataView)

Поезда и возвращается OneHotHashEncodingTransformer.

GetOutputSchema(SchemaShape)

Возвращает схему SchemaShape , которая будет производиться преобразователем. Используется для распространения и проверки схемы в конвейере.

Методы расширения

AppendCacheCheckpoint<TTrans>(IEstimator<TTrans>, IHostEnvironment)

Добавьте "контрольную точку кэширования" в цепочку оценщика. Это обеспечит обучение подчиненных оценщиков на основе кэшированных данных. Рекомендуется создать контрольную точку кэширования перед обучением, которые принимают несколько передач данных.

WithOnFitDelegate<TTransformer>(IEstimator<TTransformer>, Action<TTransformer>)

Учитывая оценщик, возвращает объект-оболочку, который будет вызывать делегат один раз Fit(IDataView) . Часто важно, чтобы оценщик возвращал сведения о том, что было в форме, поэтому Fit(IDataView) метод возвращает специально типизированный объект, а не просто общий ITransformer. Однако, в то же время, IEstimator<TTransformer> часто формируются в конвейеры со многими объектами, поэтому нам может потребоваться построить цепочку оценщиков, где EstimatorChain<TLastTransformer> оценщик, для которого мы хотим получить преобразователь, похоронен где-то в этой цепочке. В этом сценарии мы можем подключить делегат, который будет вызываться после вызова соответствия.

Применяется к

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