FastTreeBinaryTrainer 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.
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:
- Wikipedia: Farbverlaufsverhebung (Farbverlaufsbaum-Erhöhung).
- Greedy Function Approximation: A Gradient Boosting Machine
Ü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 |
WeightColumn |
Die Gewichtsspalte, die der Trainer erwartet.
|
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, IDataView) |
Ruft eine FastTreeBinaryTrainer Verwendung von Schulungs- und Validierungsdaten ab, gibt einen BinaryPredictionTransformer<TModel>Wert zurück. |
Fit(IDataView) |
Züge und zurückgeben eine ITransformer. (Geerbt von TrainerEstimatorBase<TTransformer,TModel>) |
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. |