RandomizedPcaTrainer 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.
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
-
RandomizedPcaTrainer
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 false wartość . 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ć |
WeightColumn |
Kolumna wagi, którą oczekuje trener. Może to być |
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. |