GamBinaryTrainer Klasse

Definition

Schulung IEstimator<TTransformer> eines binären Klassifikationsmodells mit generalisierten additiven Modellen (GAM).

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

Hinweise

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

Eingabe- und Ausgabespalten

Die Daten in der Spalte für die Eingabezeichnung müssen Boolean sein. Die Spaltendaten der Eingabefeatures müssen ein Vektor mit bekannter Größe sein Single.

Der Trainer gibt folgende Spalten aus:

Name der Ausgabespalte Spaltentyp Description
Score Single Die ungebundene Bewertung, die vom Modell berechnet wurde.
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 des Werts "true" als Beschriftung berechnet wird. Der Wahrscheinlichkeitswert liegt im Bereich [0, 1].

Trainermerkmale

Machine Learning-Aufgabe Binäre Klassifizierung
Ist normalisierung erforderlich? No
Ist zwischenspeichern erforderlich? No
Erforderliches NuGet zusätzlich zu Microsoft.ML Microsoft.ML.FastTree
Exportierbar in ONNX No

Details des Schulungsalgorithmus

Generalisierte additive Modelle oder GAMs modellieren die Daten als eine Reihe linear unabhängiger Features, die einem linearen Modell ähneln. Für jedes Feature lernt der GAM-Trainer eine nicht lineare Funktion, die als "Shape-Funktion" bezeichnet wird, die die Antwort als Funktion des Funktionswerts berechnet. (Im Gegensatz dazu passt ein lineares Modell zu einer linearen Antwort (z. B. eine Linie) zu jedem Feature.) Um eine Eingabe zu erzielen, werden die Ausgaben aller Shape-Funktionen addiert, und die Bewertung ist der Gesamtwert.

Dieser GAM-Trainer wird mit flachen Farbverlaufsverstärkungen (z. B. Baumstumpfen) implementiert, um nichtparametrische Formfunktionen zu erlernen und basiert auf der in Lou, Caruana und Gehrke beschriebenen Methode. "Verständliche Modelle für Klassifizierung und Regression." KDD'12, Peking, China. 2012. Nach dem Training wird ein Schnittpunkt hinzugefügt, um die durchschnittliche Vorhersage über den Trainingssatz darzustellen, und die Shape-Funktionen werden normalisiert, um die Abweichung von der durchschnittlichen Vorhersage darzustellen. Dies führt zu Modellen, die einfach interpretiert werden, indem sie den Schnittpunkt und die Shape-Funktionen untersuchen. Sehen Sie sich das folgende Beispiel an, um ein GAM-Modell zu trainieren und die Ergebnisse zu prüfen und zu interpretieren.

Im Abschnitt "Siehe auch" finden Sie Links zu Beispielen für die Verwendung.

Felder

Name Beschreibung
FeatureColumn

Die Featurespalte, die der Trainer erwartet.

(Geerbt von TrainerEstimatorBase<TTransformer,TModel>)
LabelColumn

Die Bezeichnungsspalte, die der Trainer erwartet. Dies 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. Dies kann sein null, was angibt, dass das Gewicht nicht für das Training verwendet wird.

(Geerbt von TrainerEstimatorBase<TTransformer,TModel>)

Eigenschaften

Name Beschreibung
Info

Schulung IEstimator<TTransformer> eines binären Klassifikationsmodells mit generalisierten additiven Modellen (GAM).

(Geerbt von GamTrainerBase<TOptions,TTransformer,TPredictor>)

Methoden

Name Beschreibung
Fit(IDataView, IDataView)

Trainiert eine GamBinaryTrainer Verwendung von Schulungs- und Validierungsdaten, gibt eine BinaryPredictionTransformer<TModel>.

Fit(IDataView)

Züge und Gibt einen ITransformer.

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

Schulung IEstimator<TTransformer> eines binären Klassifikationsmodells mit generalisierten additiven Modellen (GAM).

(Geerbt von TrainerEstimatorBase<TTransformer,TModel>)

Erweiterungsmethoden

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

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

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

Geben Sie bei einer Schätzung ein Wrapping-Objekt zurück, das eine Stellvertretung aufruft, sobald Fit(IDataView) sie aufgerufen wird. Es ist häufig wichtig, dass ein Schätzer Informationen zu dem, was passt, zurückgeben, weshalb die Fit(IDataView) Methode ein speziell typiertes Objekt und nicht nur ein allgemeines ITransformerObjekt zurückgibt. IEstimator<TTransformer> Gleichzeitig werden jedoch oft in Pipelines mit vielen Objekten gebildet, daher müssen wir möglicherweise eine Kette von Schätzern bauen, über EstimatorChain<TLastTransformer> die der Schätzer, für den wir den Transformator erhalten wollen, irgendwo in dieser Kette begraben wird. Für dieses Szenario können wir über diese Methode einen Delegat anfügen, der aufgerufen wird, sobald "Fit" aufgerufen wird.

Gilt für:

Weitere Informationen