Klassifizierungsalgorithmen classification-algorithms
Dieses Dokument bietet einen Überblick über verschiedene Klassifizierungsalgorithmen, wobei der Schwerpunkt auf ihrer Konfiguration, den wichtigsten Parametern und der praktischen Verwendung in erweiterten statistischen Modellen liegt. Klassifizierungsalgorithmen werden verwendet, um Datenpunkten auf der Grundlage von Eingabefunktionen Kategorien zuzuweisen. Jeder Abschnitt enthält Parameterbeschreibungen und Beispiel-Code, der Ihnen bei der Implementierung und Optimierung dieser Algorithmen für Aufgaben wie Entscheidungsbäume, zufällige Gesamtstrukturen und native Bayes-Klassifizierung hilft.
Decision Tree Classifier decision-tree-classifier
Decision Tree Classifier ist ein überwachter Lernansatz, der in der Statistik, im Data Mining und im maschinellen Lernen verwendet wird. Bei diesem Ansatz wird ein Entscheidungsbaum als prädiktives Modell für Klassifizierungsaufgaben verwendet, das Schlussfolgerungen aus einer Reihe von Beobachtungen zieht.
Parameter
In der folgenden Tabelle sind die wichtigsten Parameter zur Konfiguration und Optimierung der Leistung eines Decision Tree Classifier aufgeführt.
MAX_BINSCACHE_NODE_IDSfalse, übergibt der Algorithmus Bäume an ausführende Benutzer, damit Instanzen mit Knoten abgeglichen werden. Wenn true, speichert der Algorithmus Knoten-IDs für jede Instanz zwischen, wodurch das Training tiefer stehender Baumstrukturen beschleunigt wird.falsetrue, falseCHECKPOINT_INTERVAL10 bedeutet beispielsweise, dass der Cache alle 10 Iterationen überprüft wird.IMPURITYentropy, giniMAX_DEPTH0 Tiefe 1 Blattknoten und Tiefe 1 bedeutet 1 interner Knoten und 2 Blattknoten.MIN_INFO_GAINMIN_WEIGHT_FRACTION_PER_NODEMIN_INSTANCES_PER_NODEMAX_MEMORY_IN_MBPREDICTION_COLSEEDWEIGHT_COL1.0 behandelt.ONE_VS_RESTfalsetrue, falseBeispiel
Create MODEL modelname OPTIONS(
type = 'decision_tree_classifier'
) AS
select col1, col2, col3 from training-dataset
Factorization Machine Classifier factorization-machine-classifier
Der Factorization Machine Classifier ist ein Klassifizierungsalgorithmus, der den normalen Gradientenabstieg und den AdamW-Solver unterstützt. Das Klassifizierungsmodell der Faktorisierungsmaschine nutzt logistische Verluste, die über die Gradientenabsenkung optimiert werden können und oft Regularisierungsbegriffe wie L2 enthalten, um eine Überanpassung zu verhindern.
Parameter
In der folgenden Tabelle sind die wichtigsten Parameter zur Konfiguration und Optimierung der Factorization Machine Classifier aufgeführt.
TOL1E-6FACTOR_SIZEFIT_INTERCEPTtruetrue, falseFIT_LINEARtruetrue, falseINIT_STDMAX_ITERMINI_BATCH_FRACTION(0, 1] liegen.REG_PARAMSEEDSOLVERgd (Verlaufsabstieg) und adamW.gd, adamWSTEP_SIZEPROBABILITY_COLPREDICTION_COLRAW_PREDICTION_COLONE_VS_RESTtrue, falseBeispiel
CREATE MODEL modelname OPTIONS(
type = 'factorization_machines_classifier'
) AS
SELECT col1, col2, col3 FROM training-dataset
Gradient Boosted Tree Classifier gradient-boosted-tree-classifier
Die Gradient Boosted Tree Classifier verwendet ein Ensemble von Entscheidungsbäumen, um die Genauigkeit von Klassifizierungsaufgaben zu verbessern, indem mehrere Bäume kombiniert werden, um die Modellleistung zu verbessern.
Parameter
In der folgenden Tabelle sind die wichtigsten Parameter zur Konfiguration und Optimierung der Gradient Boosted Tree Classifier aufgeführt.
MAX_BINSCACHE_NODE_IDSfalse, übergibt der Algorithmus Bäume an ausführende Benutzer, damit Instanzen mit Knoten abgeglichen werden. Wenn true, speichert der Algorithmus Knoten-IDs für jede Instanz zwischen, wodurch das Training tiefer stehender Baumstrukturen beschleunigt wird.falsetrue, falseCHECKPOINT_INTERVAL10 bedeutet beispielsweise, dass der Cache alle 10 Iterationen überprüft wird.MAX_DEPTH0 Tiefe 1 Blattknoten und Tiefe 1 bedeutet 1 interner Knoten und 2 Blattknoten.MIN_INFO_GAINMIN_WEIGHT_FRACTION_PER_NODEMIN_INSTANCES_PER_NODEMAX_MEMORY_IN_MBPREDICTION_COLVALIDATION_INDICATOR_COLfalse steht für Training und true für Validierung. Wenn kein Wert festgelegt ist, lautet der Standardwert None.RAW_PREDICTION_COLLEAF_COLFEATURE_SUBSET_STRATEGYauto (basierend auf der Aufgabe automatisch bestimmt), all (alle Funktionen verwenden), onethird (ein Drittel der Funktionen verwenden), sqrt (die Quadratwurzel der Anzahl der Funktionen verwenden), log2 (den Logarithmus zur Basis 2 der Anzahl der Funktionen verwenden) und n (wobei n entweder ein Bruchteil der Funktionen ist, wenn im Bereich (0, 1], oder eine bestimmte Anzahl von Funktionen ist, wenn im Bereich [1, total number of features]).auto, all, onethird, sqrt, log2, nWEIGHT_COL1.0 behandelt.LOSS_TYPElogistic (ignoriert Groß- und Kleinschreibung)STEP_SIZE(0, 1], die zum Verkleinern des Beitrags jeder Schätzung verwendet wird.MAX_ITERSUBSAMPLING_RATE(0, 1]PROBABILITY_COLONE_VS_RESTfalsetrue, falseBeispiel
Create MODEL modelname OPTIONS(
type = 'gradient_boosted_tree_classifier'
) AS
select col1, col2, col3 from training-dataset
Linear Support Vector Classifier (LineSVC) linear-support-vector-classifier
Die Linear Support Vector Classifier (LinearSVC) konstruiert eine Hyperebene zur Klassifizierung von Daten in einem hochdimensionalen Raum. Sie können damit den Abstand zwischen den Klassen maximieren, um Klassifizierungsfehler zu minimieren.
Parameter
In der folgenden Tabelle sind die wichtigsten Parameter zur Konfiguration und Optimierung der Linear Support Vector Classifier (LinearSVC) aufgeführt.
MAX_ITERAGGREGATION_DEPTHFIT_INTERCEPTtruetrue, falseTOLMAX_BLOCK_SIZE_IN_MB0 gesetzt ist, wird automatisch der optimale Wert ausgewählt (in der Regel um 1 MB).REG_PARAMSTANDARDIZATIONtruetrue, falsePREDICTION_COLRAW_PREDICTION_COLONE_VS_RESTfalsetrue, falseBeispiel
Create MODEL modelname OPTIONS(
type = 'linear_svc_classifier'
) AS
select col1, col2, col3 from training-dataset
Logistic Regression logistic-regression
Logistic Regression ist ein überwachter Algorithmus, der für binäre Klassifizierungsaufgaben verwendet wird. Es modelliert die Wahrscheinlichkeit, dass eine Instanz zu einer Klasse gehört, mithilfe der logistischen Funktion und weist die Instanz der Klasse mit der höheren Wahrscheinlichkeit zu. Dadurch eignet es sich für Probleme, bei denen das Ziel darin besteht, Daten in eine von zwei Kategorien zu unterteilen.
Parameter
In der folgenden Tabelle sind die wichtigsten Parameter zur Konfiguration und Optimierung der Leistung von Logistic Regression aufgeführt.
MAX_ITERREGPARAMELASTICNETPARAMElasticNet Mischparameter steuert das Gleichgewicht zwischen L1 (Lasso) und L2 (Ridge) Strafen. Bei einem Wert von 0 wird eine L2-Strafe angewendet (Ridge, wodurch die Größe der Koeffizienten verringert wird), während bei einem Wert von 1 eine L1-Strafe angewendet wird (Lasso, das die Sparsity fördert, indem einige Koeffizienten auf null gesetzt werden).Beispiel
Create MODEL modelname OPTIONS(
type = 'logistic_reg'
) AS
select col1, col2, col3 from training-dataset
Multilayer Perceptron Classifier multilayer-perceptron-classifier
Der Multilayer Perceptron Classifier (MLPC) ist ein vorwärtsgerichteter Klassifikator für neuronale Netze. Es besteht aus mehreren vollständig verbundenen Knotenschichten, wobei jeder Knoten eine gewichtete lineare Kombination von Eingängen anwendet, gefolgt von einer Aktivierungsfunktion. MLPC wird für komplexe Klassifizierungsaufgaben eingesetzt, die nichtlineare Entscheidungsgrenzen erfordern.
Parameter
MAX_ITERBLOCK_SIZESTEP_SIZEgd).TOL1E-6PREDICTION_COLSEEDPROBABILITY_COLRAW_PREDICTION_COLONE_VS_RESTfalsetrue, falseBeispiel
CREATE MODEL modelname OPTIONS(
type = 'multilayer_perceptron_classifier'
) AS
select col1, col2, col3 from training-dataset
Naive Bayes Classifier naive-bayes-classifier
Naive Bayes Classifier ist ein einfacher probabilistischer, mehrklassiger Klassifikator, der auf dem Satz von Bayes basiert und von starken (naiven) Annahmen bezüglich der Unabhängigkeit zwischen den Merkmalen ausgeht. Es trainiert effizient, indem es die bedingten Wahrscheinlichkeiten in einem einzigen Durchgang über die Trainingsdaten berechnet, um die bedingte Wahrscheinlichkeitsverteilung jeder Funktion für jede Kennzeichnung zu berechnen. Für Vorhersagen verwendet es den Satz von Bayes, um die bedingte Wahrscheinlichkeitsverteilung jeder einzelnen Markierung für eine Beobachtung zu berechnen.
Parameter
MODEL_TYPE"multinomial", "complement", "bernoulli" und "gaussian". Beim Modelltyp wird zwischen Groß- und Kleinschreibung unterschieden."multinomial", "complement", "bernoulli", "gaussian"SMOOTHINGPROBABILITY_COLWEIGHT_COL1.0 behandelt.PREDICTION_COLRAW_PREDICTION_COLONE_VS_RESTfalsetrue, falseBeispiel
CREATE MODEL modelname OPTIONS(
type = 'naive_bayes_classifier'
) AS
SELECT col1, col2, col3 FROM training-dataset
Random Forest Classifier random-forest-classifier
Random Forest Classifier ist ein Lernalgorithmus für ein Ensemble, der während des Trainings mehrere Entscheidungsbäume erstellt. Es verhindert Überanpassung, indem es Vorhersagen mittelt und die von der Mehrheit der Bäume für Klassifizierungsaufgaben gewählte Klasse auswählt.
Parameter
MAX_BINSCACHE_NODE_IDSfalse, übergibt der Algorithmus Bäume an ausführende Benutzer, damit Instanzen mit Knoten abgeglichen werden. Wenn true, speichert der Algorithmus Knoten-IDs für jede Instanz zwischen, wodurch das Training beschleunigt wird.falsetrue, falseCHECKPOINT_INTERVAL10 bedeutet beispielsweise, dass der Cache alle 10 Iterationen überprüft wird.IMPURITYentropy, giniMAX_DEPTH0 Tiefe 1 Blattknoten und Tiefe 1 bedeutet 1 interner Knoten und 2 Blattknoten.MIN_INFO_GAINMIN_WEIGHT_FRACTION_PER_NODEMIN_INSTANCES_PER_NODEMAX_MEMORY_IN_MBPREDICTION_COLWEIGHT_COL1.0 behandelt.SEEDBOOTSTRAPtruetrue, falseNUM_TREES1, wird kein Bootstrapping durchgeführt. Wenn größer als 1, wird Bootstrapping angewendet.SUBSAMPLING_RATELEAF_COLPROBABILITY_COLRAW_PREDICTION_COLONE_VS_RESTfalsetrue, falseBeispiel
Create MODEL modelname OPTIONS(
type = 'random_forest_classifier'
) AS
select col1, col2, col3 from training-dataset
Nächste Schritte
Nach dem Lesen dieses Dokuments wissen Sie jetzt, wie Sie verschiedene Klassifizierungsalgorithmen konfigurieren und verwenden können. Weitere Informationen zu anderen Typen erweiterter statistischer Modelle finden in den Dokumenten Regression und Clustering.