Udostępnij za pośrednictwem


RandomizedPcaTrainer Klasa

Definicja

Element IEstimator<TTransformer> do trenowania przybliżonego pcA przy użyciu algorytmu RANDOMIZED SVD.

public sealed class RandomizedPcaTrainer : Microsoft.ML.Trainers.TrainerEstimatorBase<Microsoft.ML.Data.AnomalyPredictionTransformer<Microsoft.ML.Trainers.PcaModelParameters>,Microsoft.ML.Trainers.PcaModelParameters>
type RandomizedPcaTrainer = class
    inherit TrainerEstimatorBase<AnomalyPredictionTransformer<PcaModelParameters>, PcaModelParameters>
Public NotInheritable Class RandomizedPcaTrainer
Inherits TrainerEstimatorBase(Of AnomalyPredictionTransformer(Of PcaModelParameters), PcaModelParameters)
Dziedziczenie

Uwagi

Aby utworzyć ten trener, użyj metody RandomizedPca lub RandomizedPca(Options).

Kolumny wejściowe i wyjściowe

Dane wejściowe funkcji kolumny muszą być znanym wektorem o rozmiarze Single. Ten trener generuje następujące kolumny:

Nazwa kolumny wyjściowej Typ kolumny Opis
Score Single Nie ujemny, niezwiązany wynik, który został obliczony przez model wykrywania anomalii.
PredictedLabel Boolean Przewidywana etykieta na podstawie progu. Wynik wyższy niż wartość progowa mapuje na true wartość i wynik niższy niż wartość progowa mapuje na falsewartość . Domyślny próg to 0.5. Użyj <xref:AnomalyDetectionCatalog.ChangeModelThreshold> polecenia , aby zmienić wartość domyślną.

Cechy trenera

Zadanie uczenia maszynowego Wykrywanie anomalii
Czy normalizacja jest wymagana? Tak
Czy buforowanie jest wymagane? Nie
Wymagane narzędzie NuGet oprócz Microsoft.ML Brak
Eksportowanie do pliku ONNX Nie

Szczegóły algorytmu trenowania

Ten trener używa najlepszych wektorów eigenowych, aby przybliżyć podprzestrzeń zawierającą normalną klasę. Dla każdego nowego wystąpienia oblicza normę różnicy między nieprzetworzonym wektorem funkcji a prognozowaną funkcją w tej podprzestrzeni. Jeśli błąd jest zbliżony do 0, wystąpienie jest uznawane za normalne (nietypowe).

Dokładniej mówiąc, ten trener szkoli przybliżoną PCA przy użyciu metody losowej do obliczania dekompozycji wartości pojedynczej (SVD) macierzy, której wiersze są wektorami wejściowymi. Model wygenerowany przez ten trener zawiera trzy parametry:

  • Macierz projekcji $U$
  • Średni wektor w oryginalnej przestrzeni funkcji $m$
  • Średni wektor w przewidywanej przestrzeni funkcji $p$

W przypadku wektora funkcji wejściowej $x$, wynik anomalii jest obliczany przez porównanie normy $L_2$ oryginalnego wektora wejściowego oraz normę $L_2$ przewidywanego wektora: $\sqrt{\left(|x-m|_2^2 — | Ux-p|_2^2\right)|x-m|_2^2}$.

Metoda została opisana tutaj.

Należy pamiętać, że algorytm można przekształcić w jądro PCA, stosując ApproximatedKernelTransformer element do danych przed przekazaniem go do trenera.

Zapoznaj się z sekcją Zobacz również, aby uzyskać linki do przykładów użycia.

Pola

FeatureColumn

Kolumna funkcji, której oczekuje trener.

(Odziedziczone po TrainerEstimatorBase<TTransformer,TModel>)
LabelColumn

Kolumna etykiety, którą oczekuje trener. Może to być nullwartość , która wskazuje, że etykieta nie jest używana do trenowania.

(Odziedziczone po TrainerEstimatorBase<TTransformer,TModel>)
WeightColumn

Kolumna wagi, którą oczekuje trener. Może to być null, co wskazuje, że waga nie jest używana do trenowania.

(Odziedziczone po TrainerEstimatorBase<TTransformer,TModel>)

Właściwości

Info

Element IEstimator<TTransformer> do trenowania przybliżonego pcA przy użyciu algorytmu RANDOMIZED SVD.

Metody

Fit(IDataView)

Trenuje i zwraca wartość ITransformer.

(Odziedziczone po TrainerEstimatorBase<TTransformer,TModel>)
GetOutputSchema(SchemaShape)

Element IEstimator<TTransformer> do trenowania przybliżonego pcA przy użyciu algorytmu RANDOMIZED SVD.

(Odziedziczone po TrainerEstimatorBase<TTransformer,TModel>)

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.

Dotyczy

Zobacz też