Klassificeringsalgoritmer classification-algorithms
Detta dokument ger en översikt över olika klassificeringsalgoritmer, med fokus på deras konfiguration, nyckelparametrar och praktiska användning i avancerade statistiska modeller. Klassificeringsalgoritmer används för att tilldela kategorier till datapunkter baserat på indatafunktioner. Varje avsnitt innehåller parameterbeskrivningar och exempelkod som hjälper dig att implementera och optimera dessa algoritmer för uppgifter som beslutsträd, slumpmässig skog och inbyggd Bayes-klassificering.
Decision Tree Classifier decision-tree-classifier
Decision Tree Classifier är en övervakad inlärningsmetod som används för statistik, datautvinning och maskininlärning. I detta tillvägagångssätt används ett beslutsträd som en prediktiv modell för klassificeringsuppgifter, som bygger på slutsatser från en uppsättning observationer.
Parametrar
Tabellen nedan visar nyckelparametrar för konfigurering och optimering av prestanda för en Decision Tree Classifier.
MAX_BINS
CACHE_NODE_IDS
false
skickar algoritmen träd till exekverare för att matcha instanser med noder. Om true
cachelagras nod-ID:n för varje instans, vilket snabbar upp utbildningen av djupare träd.false
true
, false
CHECKPOINT_INTERVAL
10
betyder till exempel att cachen är kontrollpunkt var 10:e iteration.IMPURITY
entropy
, gini
MAX_DEPTH
0
betyder till exempel 1 lövnod och djup 1
betyder 1 intern nod och 2 lövnoder.MIN_INFO_GAIN
MIN_WEIGHT_FRACTION_PER_NODE
MIN_INSTANCES_PER_NODE
MAX_MEMORY_IN_MB
PREDICTION_COL
SEED
WEIGHT_COL
1.0
.ONE_VS_REST
false
true
, false
Exempel
Create MODEL modelname OPTIONS(
type = 'decision_tree_classifier'
) AS
select col1, col2, col3 from training-dataset
Factorization Machine Classifier factorization-machine-classifier
Factorization Machine Classifier är en klassificeringsalgoritm som stöder normal övertoningsnedbrytning och AdamW-lösaren. I klassificeringsmodellen för Factorization Machine används logistiska förluster som kan optimeras via övertoningsnedstaplar och ofta omfattar regulariseringsvillkor som L2 för att förhindra överpassning.
Parametrar
Tabellen nedan visar nyckelparametrar för konfigurering och optimering av prestanda för Factorization Machine Classifier.
TOL
1E-6
FACTOR_SIZE
FIT_INTERCEPT
true
true
, false
FIT_LINEAR
true
true
, false
INIT_STD
MAX_ITER
MINI_BATCH_FRACTION
(0, 1]
.REG_PARAM
SEED
SOLVER
gd
(övertoningsfall) och adamW
.gd
, adamW
STEP_SIZE
PROBABILITY_COL
PREDICTION_COL
RAW_PREDICTION_COL
ONE_VS_REST
true
, false
Exempel
CREATE MODEL modelname OPTIONS(
type = 'factorization_machines_classifier'
) AS
SELECT col1, col2, col3 FROM training-dataset
Gradient Boosted Tree Classifier gradient-boosted-tree-classifier
I Gradient Boosted Tree Classifier används en enda kombination av beslutsträd för att förbättra exaktheten i klassificeringsuppgifter, vilket kombinerar flera träd för att förbättra modellens prestanda.
Parametrar
Tabellen nedan visar nyckelparametrar för konfigurering och optimering av prestanda för Gradient Boosted Tree Classifier.
MAX_BINS
CACHE_NODE_IDS
false
skickar algoritmen träd till exekverare för att matcha instanser med noder. Om true
cachelagras nod-ID:n för varje instans, vilket snabbar upp utbildningen av djupare träd.false
true
, false
CHECKPOINT_INTERVAL
10
betyder till exempel att cachen är kontrollpunkt var 10:e iteration.MAX_DEPTH
0
betyder till exempel 1 lövnod och djup 1
betyder 1 intern nod och 2 lövnoder.MIN_INFO_GAIN
MIN_WEIGHT_FRACTION_PER_NODE
MIN_INSTANCES_PER_NODE
MAX_MEMORY_IN_MB
PREDICTION_COL
VALIDATION_INDICATOR_COL
false
anger utbildning och true
anger validering. Om inget värde anges är standardvärdet None
.RAW_PREDICTION_COL
LEAF_COL
FEATURE_SUBSET_STRATEGY
auto
(bestäms automatiskt utifrån aktiviteten), all
(använd alla funktioner), onethird
(använd en tredjedel av funktionerna), sqrt
(använd kvadratroten av antalet funktioner), log2
(använd bas-2-logaritmen av antalet funktioner) och n
(där n är antingen en del av funktionerna om de finns i intervallet (0, 1]
eller ett visst antal funktioner om i intervallet [1, total number of features]
).auto
, all
, onethird
, sqrt
, log2
, n
WEIGHT_COL
1.0
.LOSS_TYPE
logistic
(skiftlägesokänslig)STEP_SIZE
(0, 1]
, som används för att minska bidraget från varje uppskattare.MAX_ITER
SUBSAMPLING_RATE
(0, 1]
PROBABILITY_COL
ONE_VS_REST
false
true
, false
Exempel
Create MODEL modelname OPTIONS(
type = 'gradient_boosted_tree_classifier'
) AS
select col1, col2, col3 from training-dataset
Linear Support Vector Classifier (LinearSVC) linear-support-vector-classifier
Linear Support Vector Classifier (LinearSVC) konstruerar ett hyperplan för att klassificera data i ett högdimensionellt rum. Du kan använda den för att maximera marginalen mellan klasser för att minimera klassificeringsfel.
Parametrar
Tabellen nedan visar nyckelparametrar för konfigurering och optimering av prestanda för Linear Support Vector Classifier (LinearSVC).
MAX_ITER
AGGREGATION_DEPTH
FIT_INTERCEPT
true
true
, false
TOL
MAX_BLOCK_SIZE_IN_MB
0
väljs det optimala värdet automatiskt (vanligtvis ca 1 MB).REG_PARAM
STANDARDIZATION
true
true
, false
PREDICTION_COL
RAW_PREDICTION_COL
ONE_VS_REST
false
true
, false
Exempel
Create MODEL modelname OPTIONS(
type = 'linear_svc_classifier'
) AS
select col1, col2, col3 from training-dataset
Logistic Regression logistic-regression
Logistic Regression är en övervakad algoritm som används för binära klassificeringsuppgifter. Den modellerar sannolikheten för att en instans tillhör en klass med logistikfunktionen och tilldelar instansen till klassen med den högre sannolikheten. Detta gör det lämpligt för problem där målet är att dela upp data i en av två kategorier.
Parametrar
Tabellen nedan visar nyckelparametrar för konfigurering och optimering av prestanda för Logistic Regression.
MAX_ITER
REGPARAM
ELASTICNETPARAM
ElasticNet
styr balansen mellan straffen L1 (Lasso) och L2 (Ridge). Värdet 0 ger L2-straffet (Ridge, vilket minskar koefficienternas storlek), medan värdet 1 ger L1-straffet (Lasso, vilket uppmuntrar till glans genom att ställa in vissa koefficienter på noll).Exempel
Create MODEL modelname OPTIONS(
type = 'logistic_reg'
) AS
select col1, col2, col3 from training-dataset
Multilayer Perceptron Classifier multilayer-perceptron-classifier
Multilayer Perceptron Classifier (MLPC) är en klassificerare för artificiellt neuralt nätverk. Det består av flera helt anslutna lager med noder, där varje nod använder en viktad linjär kombination av indata, följt av en aktiveringsfunktion. MLPC används för komplexa klassificeringsuppgifter som kräver icke-linjära beslutsgränser.
Parametrar
MAX_ITER
BLOCK_SIZE
STEP_SIZE
gd
).TOL
1E-6
PREDICTION_COL
SEED
PROBABILITY_COL
RAW_PREDICTION_COL
ONE_VS_REST
false
true
, false
Exempel
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 är en enkel sannolikhetsklassificerare i flera klasser som baseras på Bayes' sats med starka (naiva) antaganden om oberoende mellan funktioner. Den utbildar effektivt genom att beräkna villkorliga sannolikheter i en enda omgång för att beräkna den villkorliga sannolikhetsfördelningen för varje egenskap som anges på varje etikett. För förutsägelser använder den Bayes teori för att beräkna den villkorliga sannolikhetsfördelningen för varje etikett utifrån en observation.
Parametrar
MODEL_TYPE
"multinomial"
, "complement"
, "bernoulli"
och "gaussian"
. Modelltypen är skiftlägeskänslig."multinomial"
, "complement"
, "bernoulli"
, "gaussian"
SMOOTHING
PROBABILITY_COL
WEIGHT_COL
1.0
.PREDICTION_COL
RAW_PREDICTION_COL
ONE_VS_REST
false
true
, false
Exempel
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 är en enastående inlärningsalgoritm som bygger flera beslutsträd under utbildning. Det minskar överpassningen genom att man beräknar medelvärdet och väljer den klass som valts av de flesta träd för klassificeringsuppgifter.
Parametrar
MAX_BINS
CACHE_NODE_IDS
false
skickar algoritmen träd till exekverare för att matcha instanser med noder. Om true
cachelagras nod-ID:n för varje instans, vilket snabbar upp utbildningsprocessen.false
true
, false
CHECKPOINT_INTERVAL
10
betyder till exempel att cachen är kontrollpunkt var 10:e iteration.IMPURITY
entropy
, gini
MAX_DEPTH
0
betyder till exempel 1 lövnod och djup 1
betyder 1 intern nod och 2 lövnoder.MIN_INFO_GAIN
MIN_WEIGHT_FRACTION_PER_NODE
MIN_INSTANCES_PER_NODE
MAX_MEMORY_IN_MB
PREDICTION_COL
WEIGHT_COL
1.0
.SEED
BOOTSTRAP
true
true
, false
NUM_TREES
1
används ingen startspärr. Om det är större än 1
används startspärr.SUBSAMPLING_RATE
LEAF_COL
PROBABILITY_COL
RAW_PREDICTION_COL
ONE_VS_REST
false
true
, false
Exempel
Create MODEL modelname OPTIONS(
type = 'random_forest_classifier'
) AS
select col1, col2, col3 from training-dataset
Nästa steg
När du har läst det här dokumentet vet du nu hur du konfigurerar och använder olika klassificeringsalgoritmer. Läs sedan dokumenten om regression och klustring om du vill veta mer om andra typer av avancerade statistiska modeller.