NaiveBayesMulticlassTrainer Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
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
-
TrainerEstimatorBase<MulticlassPredictionTransformer<NaiveBayesMulticlassModelParameters>,NaiveBayesMulticlassModelParameters>NaiveBayesMulticlassTrainer
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 false
behandelt.
Ü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 |
WeightColumn |
Die Gewichtungsspalte, die der Trainer erwartet. Kann sein |
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. |