Freigeben über


RandomizedPcaTrainer Klasse

Definition

Für IEstimator<TTransformer> die Schulung eines ungefähren PCA mit Randomized SVD-Algorithmus.

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)
Vererbung

Hinweise

Um diesen Trainer zu erstellen, verwenden Sie RandomizedPca oder RandomizedPca(Options).

Eingabe- und Ausgabespalten

Die Eingabefeatures-Spaltendaten müssen ein bekannter Vektor von Single. Der Trainer gibt folgende Spalten aus:

Name der Ausgabespalte Spaltentyp BESCHREIBUNG
Score Single Die nicht negative, ungebundene Bewertung, die vom Anomalieerkennungsmodell berechnet wurde.
PredictedLabel Boolean Die vorhergesagte Bezeichnung basierend auf dem Schwellenwert. Eine Bewertung höher als die Schwellenwertzuordnungen und eine Bewertung niedriger als der true Schwellenwert.false Der Standardschwellenwert ist 0.5. Verwenden Sie <xref:AnomalyDetectionCatalog.ChangeModelThreshold> zum Ändern des Standardwerts.

Trainereigenschaften

ML-Aufgabe Erkennung von Anomalien
Ist die Normalisierung erforderlich? Yes
Ist zwischenspeichern erforderlich? No
Erforderliche NuGet zusätzlich zu Microsoft.ML Keine
Exportierbar in ONNX No

Schulungsalgorithmusdetails

Dieser Trainer verwendet die oberen Eigenvectors, um den Teilraum mit der normalen Klasse zu ungefähren. Für jede neue Instanz berechnet sie den Normunterschied zwischen dem rohen Featurevektor und dem projizierten Feature auf diesem Unterbereich. Wenn der Fehler in der Nähe von 0 liegt, wird die Instanz als normal (nicht anomaly) betrachtet.

Genauer gesagt trainiert dieser Trainer eine ungefähre PCA mit einer zufälligen Methode zum Berechnen der Singularwert-Dekomposition (SVD) der Matrix, deren Zeilen die Eingabevektoren sind. Das von diesem Trainer generierte Modell enthält drei Parameter:

  • Eine Projektionsmatrix $U$
  • Der Mittelvektor im ursprünglichen Featurebereich $m$
  • Der mittlere Vektor im projizierten Featureraum $p$

Für einen Eingabefeaturevektor $x$wird die Anomaliebewertung berechnet, indem die $L_2$-Norm des ursprünglichen Eingabevektors und die $L_2$-Norm des projizierten Vektors verglichen wird: $\sqrt{\left(|x-m|_2^2 - | Ux-p|_2^2\right)|x-m|_2^2}$.

Die Methode wird hier beschrieben.

Beachten Sie, dass der Algorithmus in Kernel-PCA vorgenommen werden kann, indem ApproximatedKernelTransformer die Daten angewendet werden, bevor sie an den Trainer übergeben werden.

Überprüfen Sie den Abschnitt "Siehe auch", um Links zu Verwendungsbeispielen zu finden.

Felder

FeatureColumn

Die Featurespalte, die der Trainer erwartet.

(Geerbt von TrainerEstimatorBase<TTransformer,TModel>)
LabelColumn

Die Bezeichnungsspalte, die der Trainer erwartet. Kann sein null, was angibt, dass die Bezeichnung nicht für Schulungen verwendet wird.

(Geerbt von TrainerEstimatorBase<TTransformer,TModel>)
WeightColumn

Die Gewichtsspalte, die der Trainer erwartet. nullKann sein, was angibt, dass das Gewicht nicht für die Schulung verwendet wird.

(Geerbt von TrainerEstimatorBase<TTransformer,TModel>)

Eigenschaften

Info

Für IEstimator<TTransformer> die Schulung eines ungefähren PCA mit Randomized SVD-Algorithmus.

Methoden

Fit(IDataView)

Züge und zurückgeben eine ITransformer.

(Geerbt von TrainerEstimatorBase<TTransformer,TModel>)
GetOutputSchema(SchemaShape)

Für IEstimator<TTransformer> die Schulung eines ungefähren PCA mit Randomized SVD-Algorithmus.

(Geerbt von TrainerEstimatorBase<TTransformer,TModel>)

Erweiterungsmethoden

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

Fügen Sie einen "Zwischenspeicherpunkt" an die Stimatorkette an. Dadurch wird sichergestellt, dass die nachgelagerten Stimatoren gegen zwischengespeicherte Daten trainiert werden. Es ist hilfreich, einen Cache-Prüfpunkt zu haben, bevor Trainer, die mehrere Daten übergeben.

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

Geben Sie aufgrund einer Schätzung ein Umbruchobjekt zurück, das einen Stellvertretung aufruft, sobald Fit(IDataView) er aufgerufen wird. Es ist oft wichtig, dass eine Schätzung Informationen zu dem zurückgibt, was passt, weshalb die Fit(IDataView) Methode ein spezifisches typiertes Objekt zurückgibt, anstatt nur ein allgemeines ITransformer. Gleichzeitig IEstimator<TTransformer> werden jedoch oft Pipelines mit vielen Objekten gebildet, sodass wir möglicherweise eine Kette von EstimatorChain<TLastTransformer> Schätzern erstellen müssen, über die der Schätzer, für den wir den Transformator erhalten möchten, irgendwo in dieser Kette begraben wird. Für dieses Szenario können wir über diese Methode eine Stellvertretung anfügen, die einmal aufgerufen wird, wenn die Anpassung aufgerufen wird.

Gilt für:

Weitere Informationen