NormalizingEstimator Klasa
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
public sealed class NormalizingEstimator : Microsoft.ML.IEstimator<Microsoft.ML.Transforms.NormalizingTransformer>
type NormalizingEstimator = class
interface IEstimator<NormalizingTransformer>
Public NotInheritable Class NormalizingEstimator
Implements IEstimator(Of NormalizingTransformer)
- Dziedziczenie
-
NormalizingEstimator
- Implementuje
Uwagi
Charakterystyka narzędzia do szacowania
Czy ten narzędzie do szacowania musi przyjrzeć się danym, aby wytrenować jego parametry? | Tak |
Typ danych kolumny wejściowej | Single lub Double znany wektor tego typu. |
Typ danych kolumny wyjściowej | Ten sam typ danych co kolumna wejściowa |
Eksportowanie do pliku ONNX | Tak |
Wynikowa normalizacjaEstimator będzie normalizować dane na jeden z następujących sposobów na podstawie sposobu jego utworzenia:
- Minimalna wartość maksymalna — skala liniowa, która jest oparta na minimalnych i maksymalnych wartościach dla każdego wiersza.
- Średnia wariancja — przeskaluj każdy wiersz do wariancji jednostkowej i opcjonalnie zero średniej.
- Log Mean Variance — przeskaluj każdy wiersz do wariancji jednostkowej, opcjonalnie, zero średniej na podstawie obliczeń w skali dzienników.
- Binning — bucketizuje dane w każdym wierszu i wykonuje skalowanie liniowe na podstawie obliczonych pojemników.
- Nadzorowane kwantowanie — zasobnikowanie danych w każdym wierszu i wykonywanie liniowej zmiany skali na podstawie obliczonych pojemników. Obliczenie pojemnika jest oparte na korelacji kolumny Etykieta.
- Niezawodne skalowanie — opcjonalnie wyśrodkuje dane i skaluje się na podstawie zakresu danych oraz podanych wartości minimalnych i maksymalnych. Ta metoda jest bardziej niezawodna dla wartości odstających.
Szczegóły narzędzia do szacowania
Interwał znormalizowanych danych zależy od tego, czy wartość fixZero jest określona, czy nie. fixZero domyślnie ma wartość true. Gdy fixZero ma wartość false, znormalizowany interwał wynosi $[0,1]$, a rozkład znormalizowanych wartości zależy od trybu normalizacji. Na przykład w przypadku wartości Min Max wartości minimalne i maksymalne są mapowane odpowiednio na 0 i 1, a pozostałe wartości spadną między. Po ustawieniu fixZero znormalizowany interwał wynosi $[-1,1]$ z rozkładem znormalizowanych wartości w zależności od trybu normalizacji, ale zachowanie jest inne. W przypadku wartości Min Max rozkład zależy od tego, jak daleko liczba wynosi od 0, co powoduje, że liczba z największą odległością jest mapowana na 1, jeśli jest to liczba dodatnia lub -1, jeśli jest to liczba ujemna. Odległość od 0 wpłynie na rozkład z większością liczb, które są bliżej normalizacji w kierunku 0. Niezawodne skalowanie nie używa fixZero, a jego wartości nie są ograniczone do $[0,1]$ lub $[-1,1]$. Jego skalowanie jest oparte na zakresie danych i podanej wartości kwantylu min i maksymalnej.
Równanie dla danych wyjściowych $y$ zastosowania zarówno średniej wariancji, jak i średniej wariancji dziennika na wejściu $x$ bez użycia opcji CDF jest: $y = (x - \text{offset}) \text{scale}$. Gdzie podczas trenowania są obliczane przesunięcia i skalowania.
Przy użyciu opcji CDF jest to: $y = 0,5 * (1 + \text{ERF}((x - \text{mean}) / (\text{odchylenie standardowe} * sqrt(2)))$. Gdzie ERF to funkcja błędu używana do przybliżonia cdF zmiennej losowej zakładanej do normalnego rozkładu. Średnia i odchylenie standardowe są obliczane podczas trenowania.
Aby utworzyć ten narzędzie do szacowania, użyj jednego z następujących elementów:
- [NormalizeMinMax] (xref:Microsoft.ML.NormalizationCatalog.NormalizeMinMax(Microsoft.ML.TransformsCatalog, System.String, System.Int64, System.Boolean))
- NormalizeMeanVariance
- NormalizeLogMeanVariance
- NormalizeBinning
- NormalizeSupervisedBinning
- NormalizeRobustScaling
Zapoznaj się z powyższymi linkami, aby zapoznać się z przykładami użycia.
Metody
Fit(IDataView) |
Trenuje i zwraca wartość NormalizingTransformer. |
GetOutputSchema(SchemaShape) |
SchemaShape Zwraca schemat, który zostanie wygenerowany przez transformator. Służy do propagacji schematu i weryfikacji w potoku. |
Metody rozszerzania
AppendCacheCheckpoint<TTrans>(IEstimator<TTrans>, IHostEnvironment) |
Dołącz punkt kontrolny buforowania do łańcucha narzędzia do szacowania. Zapewni to, że narzędzia do szacowania podrzędnego zostaną wytrenowane względem buforowanych danych. Warto mieć punkt kontrolny buforowania, zanim trenerzy przejmą wiele danych. |
WithOnFitDelegate<TTransformer>(IEstimator<TTransformer>, Action<TTransformer>) |
Biorąc pod uwagę narzędzie do szacowania, zwróć obiekt opakowujący, który wywoła delegata po Fit(IDataView) wywołaniu. Często ważne jest, aby narzędzie do szacowania zwracało informacje o tym, co było odpowiednie, dlatego Fit(IDataView) metoda zwraca specjalnie wpisany obiekt, a nie tylko ogólną ITransformerwartość . Jednak w tym samym czasie IEstimator<TTransformer> często są tworzone w potoki z wieloma obiektami, więc może być konieczne utworzenie łańcucha narzędzi do szacowania za pośrednictwem EstimatorChain<TLastTransformer> miejsca, w którym narzędzie do szacowania, dla którego chcemy uzyskać transformator jest pochowany gdzieś w tym łańcuchu. W tym scenariuszu możemy za pomocą tej metody dołączyć delegata, który zostanie wywołany po wywołaniu dopasowania. |