FastTreeBinaryTrainer Klasse

Definition

Für die Schulung eines Binären Klassifizierungsmodells IEstimator<TTransformer> für die Entscheidungsstruktur mithilfe von FastTree.

public sealed class FastTreeBinaryTrainer : Microsoft.ML.Trainers.FastTree.BoostingFastTreeTrainerBase<Microsoft.ML.Trainers.FastTree.FastTreeBinaryTrainer.Options,Microsoft.ML.Data.BinaryPredictionTransformer<Microsoft.ML.Calibrators.CalibratedModelParametersBase<Microsoft.ML.Trainers.FastTree.FastTreeBinaryModelParameters,Microsoft.ML.Calibrators.PlattCalibrator>>,Microsoft.ML.Calibrators.CalibratedModelParametersBase<Microsoft.ML.Trainers.FastTree.FastTreeBinaryModelParameters,Microsoft.ML.Calibrators.PlattCalibrator>>
type FastTreeBinaryTrainer = class
    inherit BoostingFastTreeTrainerBase<FastTreeBinaryTrainer.Options, BinaryPredictionTransformer<CalibratedModelParametersBase<FastTreeBinaryModelParameters, PlattCalibrator>>, CalibratedModelParametersBase<FastTreeBinaryModelParameters, PlattCalibrator>>
Public NotInheritable Class FastTreeBinaryTrainer
Inherits BoostingFastTreeTrainerBase(Of FastTreeBinaryTrainer.Options, BinaryPredictionTransformer(Of CalibratedModelParametersBase(Of FastTreeBinaryModelParameters, PlattCalibrator)), CalibratedModelParametersBase(Of FastTreeBinaryModelParameters, PlattCalibrator))
Vererbung

Hinweise

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

Eingabe- und Ausgabespalten

Die Daten in der Spalte für die Eingabezeichnung müssen Boolean sein. Die Eingabefeatures-Spaltendaten müssen ein bekannter Vektor von Single.

Der Trainer gibt folgende Spalten aus:

Name der Ausgabespalte Spaltentyp BESCHREIBUNG
Score Single Die von dem Modell berechnete ungebundene Bewertung.
PredictedLabel Boolean Der vorhergesagte Bezeichnung, basierend auf dem Abzeichnen der Bewertung. Eine negative Bewertung wird false und eine positive Bewertung wird true zugeordnet.
Probability Single Die Wahrscheinlichkeit, die durch die Kalibrierung der Bewertung des True-Werts als Bezeichnung berechnet wird. Der Wahrscheinlichkeitswert befindet sich im Bereich [0, 1].

Trainereigenschaften

ML-Aufgabe Binäre Klassifizierung
Ist die Normalisierung erforderlich? Nein
Ist zwischenspeichern erforderlich? Nein
Erforderliche NuGet zusätzlich zu Microsoft.ML Microsoft.ML.FastTree
Exportierbar in ONNX Ja

Schulungsalgorithmusdetails

FastTree ist eine effiziente Implementierung des MART-Farbverlaufs-Hebungsalgorithmus. Gradient Boosting ist ein Machine Learning-Verfahren für Regressionsprobleme. Dabei wird jeder Regressionsbaum schrittweise aufgebaut, wobei eine vordefinierte Verlustfunktion verwendet wird, um den Fehler für jeden Schritt zu messen und ihn im nächsten Schritt zu korrigieren. Daher ist dieses Vorhersagemodell tatsächlich ein Ensemble schwächerer Vorhersagemodelle. Bei Regressionsproblemen dient Verstärkung dazu, eine Reihe solcher Bäume schrittweise zu erstellen. Anschließend wird der optimale Baum mithilfe einer beliebig differenzierbaren Verlustfunktion ausgewählt.

MART lernt ein Ensemble von Regressionsbäumen, d. h. einen Entscheidungsbaum mit skalaren Werten in seinen Blättern. Ein Entscheidungs- (bzw. Regressionsbaum) ist ein binäres baumartiges Flussdiagramm, bei dem an jedem inneren Knoten auf Grundlage eines der Featurewerte aus der Eingabe entschieden wird, mit welchem der beiden untergeordneten Knoten es weitergeht. Bei jedem Blattknoten wird ein Wert zurückgegeben. In den Innenknoten basiert die Entscheidung auf dem Test x <= v, wobei x der Wert des Features im Eingabebeispiel ist und v eine der möglichen Werte dieses Features ist. Die Funktionen, die mit einer Regressionsstruktur erstellt werden können, sind alle stückweise Konstantenfunktionen.

Ein Ensemble von Bäumen wird erstellt, indem bei jedem Schritt ein Regressionsbaum berechnet wird, der eine Annäherung des Gradienten der Verlustfunktion erzeugt. Anschließend wird er zusammen mit Koeffizienten, die den Verlust des neuen Baums minimieren, dem vorherigen Baum hinzugefügt. Die von MART für eine bestimmte Instanz erzeugte Ausgabe des Ensembles ist die Summe der Ausgaben aller Bäume.

  • Bei einem binären Klassifizierungsproblem wird die Ausgabe mithilfe einer Art Kalibrierung in Wahrscheinlichkeit konvertiert.
  • Bei einem Regressionsproblem entspricht die Ausgabe dem vorhergesagten Wert der Funktion.
  • Bei einem Rangfolgeproblem sind die Instanzen nach dem Ausgabewert des Ensembles geordnet.

Weitere Informationen finden Sie unter:

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

Felder

FeatureColumn

Die Featurespalte, die der Trainer erwartet.

(Geerbt von TrainerEstimatorBase<TTransformer,TModel>)
GroupIdColumn

Die optionale GroupID-Spalte, die die Bewertungstrainer erwarten.

(Geerbt von TrainerEstimatorBaseWithGroupId<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 die Schulung eines Binären Klassifizierungsmodells IEstimator<TTransformer> für die Entscheidungsstruktur mithilfe von FastTree.

(Geerbt von FastTreeTrainerBase<TOptions,TTransformer,TModel>)

Methoden

Fit(IDataView)

Züge und zurückgeben eine ITransformer.

(Geerbt von TrainerEstimatorBase<TTransformer,TModel>)
Fit(IDataView, IDataView)

Ruft eine FastTreeBinaryTrainer Verwendung von Schulungs- und Validierungsdaten ab, gibt einen BinaryPredictionTransformer<TModel>Wert zurück.

GetOutputSchema(SchemaShape)

Für die Schulung eines Binären Klassifizierungsmodells IEstimator<TTransformer> für die Entscheidungsstruktur mithilfe von FastTree.

(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