Freigeben über


NaiveBayesMulticlassTrainer Klasse

Definition

Die IEstimator<TTransformer> schulung eines multiklassigen Naive Bayes-Modells, das binäre Featurewerte unterstützt.

public sealed class NaiveBayesMulticlassTrainer : Microsoft.ML.Trainers.TrainerEstimatorBase<Microsoft.ML.Data.MulticlassPredictionTransformer<Microsoft.ML.Trainers.NaiveBayesMulticlassModelParameters>,Microsoft.ML.Trainers.NaiveBayesMulticlassModelParameters>
type NaiveBayesMulticlassTrainer = class
    inherit TrainerEstimatorBase<MulticlassPredictionTransformer<NaiveBayesMulticlassModelParameters>, NaiveBayesMulticlassModelParameters>
Public NotInheritable Class NaiveBayesMulticlassTrainer
Inherits TrainerEstimatorBase(Of MulticlassPredictionTransformer(Of NaiveBayesMulticlassModelParameters), NaiveBayesMulticlassModelParameters)
Vererbung

Hinweise

Um diesen Trainer zu erstellen, verwenden Sie NaiveBayes.

Eingabe- und Ausgabespalten

Die Spaltendaten der Eingabebeschriftung müssen schlüsseltyp sein, und die Featurespalte muss ein bekannter Vektor sein Single.

Der Trainer gibt folgende Spalten aus:

Name der Ausgabespalte Spaltentyp Beschreibung
Score Vektor von Single Die Bewertungen aller Klassen. Ein höherer Wert bedeutet eine höhere Wahrscheinlichkeit, in die zugehörige Klasse zu fallen. Wenn das i-te Element den größten Wert hat, wäre der vorhergesagte Bezeichnungsindex i. Beachten Sie, dass „i“ ein nullbasierter Index ist.
PredictedLabel Typ key Der Index der vorhergesagten Bezeichnung. Wenn sein Wert i ist, wäre die eigentliche Bezeichnung die i-te Kategorie des Typs der Schlüssel-Wert-Eingabebezeichnung.

Trainereigenschaften

ML-Aufgabe Multiklassenklassifizierung
Ist normalisierung erforderlich? Yes
Ist zwischenspeichern erforderlich? No
Erforderliches NuGet zusätzlich zu Microsoft.ML Keine
Exportierbar in ONNX Yes

Details des Schulungsalgorithmus

Naive Bayes ist ein probabilistischer Klassifizierer, der für Probleme mit mehreren Klassen verwendet werden kann. Mithilfe des Bayes-Theorem kann die bedingte Wahrscheinlichkeit für ein Beispiel, das zu einer Klasse gehört, basierend auf der Stichprobenanzahl für jede Featurekombinationsgruppen berechnet werden. Naive Bayes Classifier ist jedoch nur möglich, wenn die Anzahl der Features und die Werte, die jedes Feature übernehmen kann, relativ klein ist. Es geht davon aus, dass die Präsenz von Merkmalen in einer Klasse unabhängig ist, obwohl sie möglicherweise voneinander abhängig sind. Dieser mehrklassige Trainer akzeptiert "binäre" Featurewerte vom Typ Float: Featurewerte, die größer als null sind, werden behandelt als true und Featurewerte, die kleiner oder gleich 0 sind, werden als falsebehandelt.

Ü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 Beschriftungsspalte, die der Trainer erwartet. Kann sein null, was angibt, dass bezeichnung nicht für Schulungen verwendet wird.

(Geerbt von TrainerEstimatorBase<TTransformer,TModel>)
WeightColumn

Die Gewichtungsspalte, die der Trainer erwartet. Kann sein null, was angibt, dass Gewicht nicht für die Schulung verwendet wird.

(Geerbt von TrainerEstimatorBase<TTransformer,TModel>)

Eigenschaften

Info

Hilfsinformationen über den Trainer in Bezug auf seine Fähigkeiten und Anforderungen.

Methoden

Fit(IDataView)

Züge und gibt einen ITransformer.

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

Die IEstimator<TTransformer> schulung eines multiklassigen Naive Bayes-Modells, das binäre Featurewerte unterstützt.

(Geerbt von TrainerEstimatorBase<TTransformer,TModel>)

Erweiterungsmethoden

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

Fügen Sie einen "Zwischenspeicherungsprüfpunkt" an die Schätzkette an. Dadurch wird sichergestellt, dass die nachgelagerten Schätzer anhand zwischengespeicherter Daten trainiert werden. Es ist hilfreich, einen Cache-Prüfpunkt vor Trainern zu haben, die mehrere Datendurchläufe übernehmen.

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

Wenn sie eine Schätzung erhalten, geben Sie ein Umbruchobjekt zurück, das einen Delegaten aufruft, sobald Fit(IDataView) er aufgerufen wird. Es ist häufig wichtig, dass ein Schätzer Informationen darüber zurückgibt, was passt, weshalb die Fit(IDataView) Methode ein speziell typiertes Objekt zurückgibt, anstatt nur ein allgemeines ITransformerObjekt zurückzugeben. IEstimator<TTransformer> Gleichzeitig werden jedoch häufig Pipelines mit vielen Objekten gebildet, daher müssen wir möglicherweise eine Kette von Schätzern erstellen, über EstimatorChain<TLastTransformer> 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 aufgerufen wird, sobald sie aufgerufen wird.

Gilt für:

Weitere Informationen