Regressionsalgoritmer regression-algorithms
Detta dokument ger en översikt över olika regressionsalgoritmer, med fokus på deras konfiguration, nyckelparametrar och praktiska användning i avancerade statistiska modeller. Regressionsalgoritmer används för att modellera förhållandet mellan beroende och oberoende variabler, och förutsäga kontinuerliga utfall baserat på observerade data. Varje avsnitt innehåller parameterbeskrivningar och exempelkod som hjälper dig att implementera och optimera dessa algoritmer för uppgifter som linjära, slumpmässiga skogar och överlevnadsregression.
Decision Tree-regression decision-tree-regression
Decision Tree-inlärning är en övervakad inlärningsmetod som används i statistik, datautvinning och maskininlärning. I detta tillvägagångssätt används ett klassificerings- eller regressionsbeslutsträd som en prediktiv modell för att dra slutsatser om en uppsättning observationer.
Parametrar
Tabellen nedan visar nyckelparametrar för konfiguration och optimering av prestanda för beslutsträdsmodeller.
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 kan snabba upp träningen av djupare träd. Användare kan konfigurera hur ofta cachen ska kontrolleras eller inaktivera den genom att ställa in CHECKPOINT_INTERVAL
.true
eller false
CHECKPOINT_INTERVAL
10
kontrolleras cachen var 10:e iteration. Detta gäller endast om CACHE_NODE_IDS
är inställt på true
och kontrollpunktskatalogen är konfigurerad i org.apache.spark.SparkContext
.IMPURITY
entropy
och gini
.gini
entropy
, gini
MAX_DEPTH
0
betyder till exempel 1 lövnod, medan ett djup på 1
betyder 1 intern nod och 2 lövnoder. Djupet måste ligga inom intervallet [0, 30]
.MIN_INFO_GAIN
MIN_WEIGHT_FRACTION_PER_NODE
MIN_INSTANCES_PER_NODE
MAX_MEMORY_IN_MB
PREDICTION_COL
SEED
WEIGHT_COL
1.0
.Exempel
CREATE MODEL modelname OPTIONS(
type = 'decision_tree_regression'
) AS
SELECT col1, col2, col3 FROM training-dataset
Factorization Machines-regression factorization-machines-regression
Factorization Machines är en algoritm för regressionsinlärning som stöder normal övertoningsnedbrytning och AdamW-lösaren. Algoritmen baseras på papperet från S. Rendle (2010), Factorization Machines.
Parametrar
Tabellen nedan visar nyckelparametrar för konfigurering och optimering av prestandan för regressionen Factorization Machines.
TOL
1E-6
FACTOR_SIZE
FIT_INTERCEPT
true
true
, false
FIT_LINEAR
true
true
, false
INIT_STD
MAX_ITER
MINI_BATCH_FRACTION
(0, 1]
.(0, 1]
REG_PARAM
SEED
SOLVER
gd
(övertoningsdescent), adamW
STEP_SIZE
PREDICTION_COL
Exempel
CREATE MODEL modelname OPTIONS(
type = 'factorization_machines_regression'
) AS
SELECT col1, col2, col3 FROM training-dataset
Generalized Linear-regression generalized-linear-regression
Till skillnad från linjär regression, som förutsätter att resultatet följer en normal (Gaussisk) fördelning, tillåter Generalized Linear modeller (GLM) att resultatet följer olika typer av distributioner, som Poisson eller binomial, beroende på datatypen.
Parametrar
Tabellen nedan visar nyckelparametrar för konfigurering och optimering av prestandan för regressionen Generalized Linear.
MAX_ITER
irls
används).REG_PARAM
TOL
1E-6
AGGREGATION_DEPTH
treeAggregate
.FAMILY
gaussian
, binomial
, poisson
, gamma
och tweedie
.gaussian
, binomial
, poisson
, gamma
, tweedie
FIT_INTERCEPT
true
true
, false
LINK
identity
, log
, inverse
, logit
, probit
, cloglog
och sqrt
.identity
, log
, inverse
, logit
, probit
, cloglog
, sqrt
LINK_POWER
1 - variancePower
, vilket justeras mot R statmod
-paketet. Specifika länkkrafter på 0, 1, -1 och 0,5 motsvarar länkarna Log, Identity, Inverse och Sqrt.SOLVER
irls
(iterativt omviktade minst fyrkanter).irls
VARIANCE_POWER
[1, inf)
. Varianseffekterna 0, 1 och 2 motsvarar familjerna Gaussian, Poisson och Gamma.[1, inf)
LINK_PREDICTION_COL
OFFSET_COL
WEIGHT_COL
1.0
. I Binomialfamiljen motsvarar vikter antalet försök och vikter som inte är heltal avrundas vid AIC-beräkning.Exempel
CREATE MODEL modelname OPTIONS(
type = 'generalized_linear_reg'
) AS
SELECT col1, col2, col3 FROM training-dataset
Gradient Boosted Tree-regression gradient-boosted-tree-regression
Övertoningsdrivna träd (GBT) är en effektiv metod för klassificering och regression som kombinerar förutsägelser från flera beslutsträd för att förbättra prediktiv precision och modellprestanda.
Parametrar
Tabellen nedan visar nyckelparametrar för konfigurering och optimering av prestandan för regressionen Gradient Boosted Tree.
MAX_BINS
CACHE_NODE_IDS
false
skickar algoritmen träd till exekverare för att matcha instanser med noder. Om det är true
cachelagrar algoritmen nod-ID:n för varje instans. Cachelagring kan påskynda utbildningen av djupare träd.false
true
, false
CHECKPOINT_INTERVAL
10
betyder till exempel att cachen är kontrollerad var 10:e iteration.MAX_DEPTH
0
betyder till exempel 1 lövnod och djup 1
betyder 1 intern nod med 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
för utbildning och true
för validering.LEAF_COL
FEATURE_SUBSET_STRATEGY
auto
, all
, onethird
, sqrt
, log2
eller ett bråk mellan 0 och 1.0SEED
WEIGHT_COL
1.0
.LOSS_TYPE
squared
(L2) och absolute
(L1). Obs! Värdena är skiftlägeskänsliga.STEP_SIZE
(0, 1]
, som används för att minska bidraget från varje uppskattare.(0, 1]
MAX_ITER
SUBSAMPLING_RATE
(0, 1]
.(0, 1]
Exempel
CREATE MODEL modelname OPTIONS(
type = 'gradient_boosted_tree_regression'
) AS
SELECT col1, col2, col3 FROM training-dataset
Isotonic-regression isotonic-regression
Isotonic Regression är en algoritm som används för att iterativt justera avstånd samtidigt som den relativa ordningen för skillnader i data bevaras.
Parametrar
Tabellen nedan visar nyckelparametrar för konfigurering och optimering av prestanda för Isotonic Regression.
ISOTONIC
true
eller antitonisk (minskas) när false
.true
true
, false
WEIGHT_COL
1.0
.PREDICTION_COL
FEATURE_INDEX
featuresCol
är en vektorkolumn. Om det inte anges är standardvärdet 0
. Annars har det ingen effekt.Exempel
CREATE MODEL modelname OPTIONS(
type = 'isotonic_regression'
) AS
SELECT col1, col2, col3 FROM training-dataset
Linear-regression linear-regression
Linear Regression är en maskininlärningsalgoritm som övervakas och som passar en linjär ekvation till data för att modellera relationen mellan en beroende variabel och oberoende funktioner.
Parametrar
Tabellen nedan visar nyckelparametrar för konfigurering och optimering av prestanda för Linear Regression.
MAX_ITER
REGPARAM
ELASTICNETPARAM
Exempel
CREATE MODEL modelname OPTIONS(
type = 'linear_reg'
) AS
SELECT col1, col2, col3 FROM training-dataset
Random Forest Regression random-forest-regression
Random Forest Regression är en ensemble-algoritm som bygger flera beslutsträd under träningen och returnerar den genomsnittliga prognosen för dessa träd för regressionsuppgifter, vilket bidrar till att förhindra överpassning.
Parametrar
Tabellen nedan visar nyckelparametrar för konfigurering och optimering av prestanda för Random Forest Regression.
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 kontrollerad 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
BOOTSTRAP
true
, false
NUM_TREES
1
används ingen startspärr. Om det är större än 1
används startspärr.SUBSAMPLING_RATE
(0, 1]
.LEAF_COL
PREDICTION_COL
SEED
WEIGHT_COL
1.0
.Exempel
CREATE MODEL modelname OPTIONS(
type = 'random_forest_regression'
) AS
SELECT col1, col2, col3 FROM training-dataset
Survival Regression survival-regression
Survival Regression används för att passa en parametrisk överlevnadsregressionsmodell, som kallas Accelerated Failure Time (AFT)-modellen, baserat på Weibull distribution. Den kan stapla instanser i block för bättre prestanda.
Parametrar
Tabellen nedan visar nyckelparametrar för konfigurering och optimering av prestanda för Survival Regression.
MAX_ITER
TOL
1E-6
AGGREGATION_DEPTH
treeAggregate
. Om funktionsdimensionerna eller antalet partitioner är stora kan den här parametern anges till ett större värde.FIT_INTERCEPT
true
, false
PREDICTION_COL
CENSOR_COL
1
anger att händelsen har inträffat (utan censur), medan 0
betyder att händelsen har censur.MAX_BLOCK_SIZE_IN_MB
0
tillåter automatisk justering.Exempel
CREATE MODEL modelname OPTIONS(
type = 'survival_regression'
) 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 regressionsalgoritmer. Läs sedan dokumenten om klassificering och klustring om du vill veta mer om andra typer av avancerade statistiska modeller.