LinearSvmTrainer 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.
Das IEstimator<TTransformer> Ziel mithilfe eines linearen binären Klassifizierungsmodells, das mit Linear SVM trainiert wurde, vorherzusagen.
public sealed class LinearSvmTrainer : Microsoft.ML.Trainers.OnlineLinearTrainer<Microsoft.ML.Data.BinaryPredictionTransformer<Microsoft.ML.Trainers.LinearBinaryModelParameters>,Microsoft.ML.Trainers.LinearBinaryModelParameters>
type LinearSvmTrainer = class
inherit OnlineLinearTrainer<BinaryPredictionTransformer<LinearBinaryModelParameters>, LinearBinaryModelParameters>
Public NotInheritable Class LinearSvmTrainer
Inherits OnlineLinearTrainer(Of BinaryPredictionTransformer(Of LinearBinaryModelParameters), LinearBinaryModelParameters)
- Vererbung
Hinweise
Um diesen Trainer zu erstellen, verwenden Sie LinearSvm oder LinearSvm(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. |
Trainermerkmale
| Machine Learning-Aufgabe | Binäre Klassifizierung |
| Ist normalisierung erforderlich? | Yes |
| Ist zwischenspeichern erforderlich? | No |
| Erforderliches NuGet zusätzlich zu Microsoft.ML | Nichts |
| Exportierbar in ONNX | Yes |
Details des Schulungsalgorithmus
Linear SVM implementiert einen Algorithmus, der einen Hyperplan im Featurebereich für die binäre Klassifizierung findet, indem ein SVM-Problem gelöst wird. Mit Featurewerten $f_0, f_1,..., f_{D-1}$, wird beispielsweise die Vorhersage angegeben, indem bestimmt wird, auf welche Seite des Hyperplans der Punkt fällt. Das entspricht dem Vorzeichen der gewichteten Summe der Feautures, d. h. $\sum_{i = 0}^{D-1} \left(w_i * f_i \right) + b$, wobei $w_0, w_1,..., w_{D-1}$ die vom Algorithmus berechneten Gewichtungen sind, und $b$ ist der vom Algorithmus berechnete Bias.
Linear SVM implementiert die PEGASOS-Methode, die zwischen stochastischen Farbverlaufsabstiegsschritten und Projektionsschritten wechselt, die in diesem Papier von Shalev-Shwartz, Singer und Srebro eingeführt wurden.
Im Abschnitt "Siehe auch" finden Sie Links zu Verwendungsbeispielen.
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 |
| WeightColumn |
Die Gewichtsspalte, die der Trainer erwartet. Dies kann sein |
Eigenschaften
| Name | Beschreibung |
|---|---|
| Info |
Das IEstimator<TTransformer> Ziel mithilfe eines linearen binären Klassifizierungsmodells, das mit Linear SVM trainiert wurde, vorherzusagen. (Geerbt von OnlineLinearTrainer<TTransformer,TModel>) |
Methoden
| Name | Beschreibung |
|---|---|
| Fit(IDataView, LinearModelParameters) |
Setzt die Schulung einer OnlineLinearTrainer<TTransformer,TModel> bereits trainierten |
| Fit(IDataView) |
Züge und Gibt einen ITransformer. (Geerbt von TrainerEstimatorBase<TTransformer,TModel>) |
| GetOutputSchema(SchemaShape) |
Das IEstimator<TTransformer> Ziel mithilfe eines linearen binären Klassifizierungsmodells, das mit Linear SVM trainiert wurde, vorherzusagen. (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. |