OneHotEncodingEstimator クラス

定義

カテゴリ値の 1 つ以上の入力列を、1 ホット エンコードベクターの出力列の数に変換します。

public sealed class OneHotEncodingEstimator : Microsoft.ML.IEstimator<Microsoft.ML.Transforms.OneHotEncodingTransformer>
type OneHotEncodingEstimator = class
    interface IEstimator<OneHotEncodingTransformer>
Public NotInheritable Class OneHotEncodingEstimator
Implements IEstimator(Of OneHotEncodingTransformer)
継承
OneHotEncodingEstimator
実装

注釈

推定特性

このエスティメーターは、パラメーターをトレーニングするためにデータを確認する必要がありますか? はい
入力列のデータ型 数値型、ブール型、 テキスト型、 DateTime または キー 型のベクトルまたはスカラー。
出力列のデータ型 キーのスカラーまたはベクトル、または型のSingleベクトル。
ONNX にエクスポート可能 はい

入力 OneHotEncodingEstimator 列に表示される一意の値のディクショナリを作成します。 結果として得られる OneHotEncodingTransformer のは、1 つ以上の入力列を、1 ホットエンコードされたベクターの出力列の数に変換します。

OneHotEncodingEstimator くの場合、カテゴリ データを機械学習アルゴリズムに提供できる形式に変換するために使用されます。

この変換の出力は、次のように OneHotEncodingEstimator.OutputKind指定されます。

  • Indicator はインジケーター ベクトルを生成します。 このベクトル内の各スロットは辞書内のカテゴリに対応します。そのため、その長さは構築された辞書のサイズとなります。 dictioray に値が見つからない場合、出力はゼロ ベクトルです。

  • Bag は、各スロットが入力ベクトル内の対応する値の出現回数を格納する 1 つのベクトルを生成します。 このベクター内の各スロットはディクショナリ内の値に対応するため、その長さは組み込みディクショナリのサイズです。 Indicator 入力 Bag 列の個々のスロットから生成されたビットベクトルの集計方法が単純に異なります。インジケーターの場合は連結され、バッグの場合は追加されます。 ソース列がスカラーの場合、インジケーターとバッグのオプションは同じです。

  • Key は列内のキーを KeyDataViewType 生成します。 入力列がベクターの場合、出力にはベクター キー 型が含まれます。ここで、ベクターの各スロットは入力ベクターの各スロットに対応します。 カテゴリが bulit ディクショナリで見つからない場合は、値 0 が割り当てられます。

  • Binary は、入力列に存在するディクショナリ内の値を表すバイナリ エンコード ベクターを生成します。 入力列の値がディクショナリに見つからない場合、出力は 0 ベクトルです。

OneHotEncodingTransformer は、1 つ以上の列に適用できます。その場合は、その列が適用される列ごとに個別のディクショナリを作成して使用します。

使用例へのリンクについては、「参照」セクションを参照してください。

メソッド

Fit(IDataView)

をトレーニングして返します OneHotEncodingTransformer

GetOutputSchema(SchemaShape)

SchemaShapeトランスフォーマーによって生成されるスキーマの値を返します。 パイプラインでのスキーマの伝達と検証に使用されます。

拡張メソッド

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

エスティメーター チェーンに 'キャッシュ チェックポイント' を追加します。 これにより、ダウンストリームエスティメーターがキャッシュされたデータに対してトレーニングされます。 複数のデータを受け取るトレーナーが渡す前にキャッシュ チェックポイントを設定すると便利です。

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

エスティメーターを指定すると、デリゲートを 1 回 Fit(IDataView) 呼び出すラップ オブジェクトが呼び出されます。 多くの場合、エスティメーターが適合した内容に関する情報を返すことが重要です。そのため Fit(IDataView) 、メソッドは一般的 ITransformerなオブジェクトではなく、具体的に型指定されたオブジェクトを返します。 ただし、同時に、 IEstimator<TTransformer> 多くのオブジェクトを含むパイプラインに形成されることが多いため、トランスフォーマーを取得するエスティメーターがこのチェーンのどこかに埋もれる場所を介して EstimatorChain<TLastTransformer> 、推定器のチェーンを構築する必要がある場合があります。 このシナリオでは、このメソッドを使用して、fit が呼び出されると呼び出されるデリゲートをアタッチできます。

適用対象

こちらもご覧ください