Sdílet prostřednictvím


OneHotEncodingEstimator Třída

Definice

Převede jeden nebo více vstupních sloupců kategorických hodnot na tolik výstupních sloupců vektorů s kódováním 1-hot.

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)
Dědičnost
OneHotEncodingEstimator
Implementuje

Poznámky

Charakteristiky estimátoru

Potřebuje tento estimátor podívat se na data, aby vytrénovala jeho parametry? Yes
Datový typ vstupního sloupce Vektor nebo skalár číselného, logického, DateTimetextového nebo klíčového typu
Datový typ výstupního sloupce Skalární nebo vektor klíče nebo vektor typu Single .
Exportovatelné do ONNX Yes

Vytvoří OneHotEncodingEstimator slovník jedinečných hodnot zobrazených ve vstupním sloupci. Výsledek OneHotEncodingTransformer převede jeden nebo více vstupních sloupců na tolik výstupních sloupců s jedním zakódovanými vektory.

Často OneHotEncodingEstimator se používá k převodu kategorických dat do formuláře, který lze poskytnout algoritmu strojového učení.

Výstup této transformace je určen:OneHotEncodingEstimator.OutputKind

  • Indicator vytvoří vektor ukazatele. Každý slot v tomto vektoru odpovídá kategorii ve slovníku, takže jeho délka je velikost sestaveného slovníku. Pokud se v diktiorě nenajde hodnota, je výstup nulový vektor.

  • Bag vytvoří jeden vektor, který každý slot ukládá počet výskytů odpovídající hodnoty ve vstupním vektoru. Každý slot v tomto vektoru odpovídá hodnotě ve slovníku, takže jeho délka je velikost vytvořeného slovníku. Indicator a Bag liší se jednoduše v tom, jak jsou bitové vektory generované z jednotlivých slotů ve vstupním sloupci agregované: pro indikátor, které jsou zřetězeny a pro bag se přidávají. Pokud je zdrojovým sloupcem skalár, možnosti Indikátor a Taška jsou identické.

  • Key vytvoří klíče ve sloupci KeyDataViewType . Pokud je vstupní sloupec vektor, výstup obsahuje typ vektorového klíče , kde každý slot vektoru odpovídá příslušnému slotu vstupního vektoru. Pokud se kategorie ve slovníku bulit nenajde, přiřadí se mu nula.

  • Binary vytvoří binární zakódovaný vektor, který představuje hodnoty nalezené ve slovníku, které jsou přítomné ve vstupním sloupci. Pokud ve slovníku není nalezena hodnota ve vstupním sloupci, je výstup nulový vektor.

OneHotEncodingTransformer lze použít na jeden nebo více sloupců, v takovém případě sestaví a použije samostatný slovník pro každý sloupec, na který se použije.

Odkazy na příklady použití najdete v části Viz také.

Metody

Fit(IDataView)

Vlaky a vrací hodnotu OneHotEncodingTransformer.

GetOutputSchema(SchemaShape)

SchemaShape Vrátí schéma, které bude vytvořen transformátorem. Používá se pro šíření a ověřování schématu v kanálu.

Metody rozšíření

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

Připojte k řetězci estimátoru kontrolní bod ukládání do mezipaměti. Tím zajistíte, aby podřízené estimátory byly vytrénovány proti datům uloženým v mezipaměti. Před průchodem více dat je užitečné mít kontrolní bod ukládání do mezipaměti.

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

Vzhledem k estimátoru vraťte zalamovací objekt, který zavolá delegáta jednou Fit(IDataView) . Často je důležité, aby odhadovač vrátil informace o tom, co bylo vhodné, což je důvod, proč Fit(IDataView) metoda vrací konkrétně typ objekt, nikoli jen obecné ITransformer. Ve stejnou dobu se však často vytvářejí do kanálů s mnoha objekty, takže možná budeme muset vytvořit řetězec estimátorů, kde EstimatorChain<TLastTransformer> je odhadovač, IEstimator<TTransformer> pro který chceme získat transformátor, zakopán někde v tomto řetězci. Pro tento scénář můžeme prostřednictvím této metody připojit delegáta, který bude volána po zavolání fit.

Platí pro

Viz také