sklearn.ensemble.RandomForestRegressor krit
klasse sklearn.ensemble.
RandomForestRegressor
(n_estimators=100, *, criterion=’mse’, maks_dybde=ingen, min_samples_split=2, min_samples_leaf=1, min_vægt_fraction_leaf=0.0, maks_features=’Auto’, maks_leaf_nodes=ingen, min_impurity_decrease=0.0, min_impurity_split=ingen, Bootstrap=true, oob_score=false, n_jobs=none, random_state=None, verbose=0, varm_start=false, ccp_alpha=0.0, maks_samples=None)
en tilfældig skovregressor.
en tilfældig skov er en meta estimator, der passer til en række klassificeringsbeslutningstræer på forskellige underprøver af datasættet og bruger gennemsnit for at forbedre den forudsigelige nøjagtighed og kontrol overmontering.Underprøvestørrelsen styres med parameterenmax_samples
hvisbootstrap=True
(standard), ellers bruges hele datasættet til at byggehvert træ.
Læs mere i brugervejledningen.
parametre n_estimatorsint, Standard=100
antallet af træer i skoven.
ændret i version 0.22: Standardværdien af n_estimators
ændret fra 10 til 100i 0.22.
kriterium {“mse”,”mae”}, default= ” mse “
funktionen til at måle kvaliteten af en split. Understøttede kriterierer “mse “for den gennemsnitlige kvadrerede fejl, som er lig med variancereduction som funktionsvalgskriterium, og” mae ” for den gennemsnitlige absolutte fejl.
nyt i version 0.18: Mean Absolute Error (MAE) kriterium.
maks_dybde, standard=Ingen
træets maksimale dybde. Hvis ingen, så noder udvides indtilalle blade er rene eller indtil alle blade indeholder mindre endmin_samples_split prøver.
min_samples_splitint eller float, default=2
det mindste antal prøver, der kræves for at opdele en intern node:
-
Hvis int, skal du overveje
min_samples_split
som det mindste antal. -
Hvis float, så
min_samples_split
er en brøkdel, ogceil(min_samples_split * n_samples)
er minimumAntallet af prøver for hver split.
ændret i version 0.18: tilføjet float værdier for fraktioner.
min_samples_leafint eller float, standard=1
det mindste antal prøver, der kræves for at være ved en bladknude.Et splitpunkt på en hvilken som helst dybde vil kun blive overvejet, hvis det efterlader mindst min_samples_leaf
træningsprøver i hver af de venstre og højre grene. Dette kan have den virkning at udjævne modellen, især i regression.
-
Hvis int, overvej derefter
min_samples_leaf
som det mindste antal. -
Hvis float, så
min_samples_leaf
er en brøkdel, ogceil(min_samples_leaf * n_samples)
er minimumetantal prøver for hver node.
ændret i version 0.18: tilføjet float værdier for fraktioner.
min_vægt_fraction_leaffloat, standard=0,0
den mindste vægtede brøkdel af summen af vægte (af alle inputprøverne), der kræves for at være ved en bladknude. Prøver har samme vægt, når prøve_vægt ikke er angivet.
antal funktioner, der skal overvejes, når man leder efter den bedste split:
-
Hvis int, så overvej
max_features
funktioner ved hver split. -
Hvis float, så
max_features
er en brøkdel oground(max_features * n_features)
funktioner overvejes ved hversplit. -
Hvis “auto”, så
max_features=n_features
. -
Hvis “KVRT”, så
max_features=sqrt(n_features)
. -
Hvis “log2”, så
max_features=log2(n_features)
. -
Hvis ingen, så
max_features=n_features
.
Bemærk: søgningen efter en split stopper ikke, før mindst enevalid partition af knudeprøverne er fundet, selvom det kræver ateffektivt inspicere mere end max_features
funktioner.
maks_leaf_nodesint, standard=ingen
dyrk træer medmax_leaf_nodes
på bedste måde.Bedste noder defineres som relativ reduktion i urenhed.Hvis ingen så ubegrænset antal blade noder.
min_impurity_decreasefloat, default=0.0
en node vil blive delt, hvis denne opdeling inducerer et fald i urenhedenstørre end eller lig med denne værdi.
den vægtede urenhedsreduktionsligning er følgende:
N_t / N * (impurity - N_t_R / N_t * right_impurity - N_t_L / N_t * left_impurity)
hvor N
er det samlede antal prøver, N_t
er antallet af prøver ved den aktuelle node, N_t_L
er antallet af prøver ivenstre barn, og N_t_R
er antallet af prøver i det rigtige barn.
N
N_t
N_t_R
og N_t_L
alle henviser til den vægtede sum,hvis sample_weight
er bestået.
nyt i version 0.19.
min_impurity_splitfloat, standard=ingen
tærskel for tidlig standsning i trævækst. En knude vil splithvis dens urenhed er over tærsklen, ellers er det et blad.
forældet siden version 0.19:min_impurity_split
er blevet forældet til fordel formin_impurity_decrease
i 0.19. Standardværdien afmin_impurity_split
er ændret fra 1e-7 til 0 i 0.23, og denvil blive fjernet i 1.0 (omdøbning af 0.25).Brug min_impurity_decrease
i stedet.
bootstrapbool, default=True
om bootstrap prøver bruges, når man bygger træer. Hvis falsk, hele datasættet bruges til at bygge hvert træ.
oob_scorebool, default=False
om der skal bruges prøver uden for posen til at estimere R^2 på usete data.
n_jobsint, default=None
antallet af job, der skal køres parallelt. fit
predict
decision_path
and apply
are all parallelized over thetrees. None
means 1 unless in a joblib.parallel_backend
context. -1
means using all processors. See Glossary for more details.
random_stateint, RandomState instance eller None, default=None
styrer både tilfældigheden af bootstrapping af de anvendte prøver, når man bygger træer (hvisbootstrap=True
) og prøveudtagningen af de funktioner, der skal overvejes, når man leder efter den bedste opdeling ved hver node(hvismax_features < n_features
).Se ordliste for detaljer.
verboseint, default=0
styrer verbositet, når montering og forudsigelse.
varm_startbool, default=False
når den er indstillet til True
, genbrug løsningen fra det forrige opkald til at passeog Tilføj flere estimatorer til ensemblet, ellers skal du bare passe en helhedny skov. Se ordlisten.
ccp_alphanon-negativ float, standard=0.0
Kompleksitetsparameter, der bruges til beskæring af minimal Omkostningskompleksitet. Thesubtree med den største omkostningskompleksitet, der er mindre endccp_alpha
vil blive valgt. Som standard udføres ingen beskæring. SeeMinimal Cost-kompleksitet beskæring for detaljer.
nyt i version 0.22.
maks_amplesint eller float, standard = Ingen
Hvis bootstrap er sandt, antallet af prøver, der skal trækkes fra for at træne hver basestimator.
-
Hvis ingen (standard), træk derefter
X.shape
prøver. -
Hvis int, træk derefter
max_samples
prøver. -
Hvis float, træk derefter
max_samples * X.shape
prøver. Såledesmax_samples
skal være i intervallet(0, 1)
.
nyt i version 0.22.
attributter base_estimator_ decisiontreeregressor
børnestimatorskabelonen, der bruges til at oprette samlingen af fittedsub-estimatorer.
estimators_list of DecisionTreeRegressor
indsamlingen af monterede understimatorer.
feature_importances_
ndarray of shape (n_features,)
de urenhedsbaserede funktionsimportanser.
n_features_int
antallet af funktioner, nårfit
udføres.
n_outputs_int
antallet af udgange, når fit
udføres.
Oob_score_float
Score for træningsdatasættet opnået ved hjælp af et estimat uden for posen.Denne attribut eksisterer kun, når oob_score
er sandt.
Oob_prediction_ndarray of shape (n_samples,)
forudsigelse beregnet med out-of-bag estimat på træningssættet.Denne attribut eksisterer kun, når oob_score
er sandt.
Se også
DecisionTreeRegressor
ExtraTreesRegressor
noter
standardværdierne for parametrene, der styrer træernes størrelse(f.eks.max_depth
min_samples_leaf
osv.) føre til fuldvoksne og ubeskårne træer, som potentielt kan være meget store på nogle datasæt. For at reducere hukommelsesforbruget bør træernes kompleksitet og størrelse kontrolleres ved at indstille disse parameterværdier.
funktionerne er altid tilfældigt permuteret ved hver split. Derfor kan den bedst fundne split variere, selv med de samme træningsdata,max_features=n_features
og bootstrap=False
, hvis forbedringenaf kriteriet er identisk for flere splittelser opregnet undersøgning af den bedste split. For at opnå en deterministisk adfærd under montering skal random_state
rettes.
standardværdienmax_features="auto"
brugern_features
snarere endn_features / 3
. Sidstnævnte blev oprindeligt foreslået i, der henviser til, at førstnævnte for nylig var berettiget empirisk i .
1
-
Breiman, “tilfældige skove”, maskinindlæring, 45(1), 5-32, 2001.
2
P. Geurts, D. Ernst.”ekstremt randomiserettræer”, maskinlæring, 63(1), 3-42, 2006.
Examples
>>> from sklearn.ensemble import RandomForestRegressor>>> from sklearn.datasets import make_regression>>> X, y = make_regression(n_features=4, n_informative=2,... random_state=0, shuffle=False)>>> regr = RandomForestRegressor(max_depth=2, random_state=0)>>> regr.fit(X, y)RandomForestRegressor(...)>>> print(regr.predict(]))
Methods
|
Apply trees in the forest to X, return leaf indices. |
|
Return the decision path in the forest. |
|
Build a forest of trees from the training set (X, y). |
|
Get parameters for this estimator. |
|
Predict regression target for X. |
|
Return the coefficient of determination \(R^2\) of the prediction. |
|
Set the parameters of this estimator. |
apply
parametre{array-lignende, sparsom matrice} af form (n_samples, n_features)
inputprøverne. Internt konverteres dens dtype tildtype=np.float32
. Hvis der leveres en sparsom matrice, vil den blive konverteret til en sparsom csr_matrix
.
returnerer indekset for bladet,der ender i, for hvert datapunkt og for hvert træ i skoven. decision_path
(h) ret
returner beslutningsstien i skoven.
nyt i version 0.18.
parametre{array-lignende, sparsom matrice} af form (n_samples, n_features)
inputprøverne. Internt konverteres dens dtype tildtype=np.float32
. Hvis der leveres en sparsom matrice, vil den blive konverteret til en sparsom csr_matrix
.
returnerer indikatorerparse matrice of shape (n_samples, n_nodes)
returner en nodeindikatormatrice, hvor ikke-nulelementer indikererat prøverne går gennem noderne. Matricen er af CSRformat.
n_nodes_ptrndarray of shape (n_estimators + 1,)
kolonnerne fra indikator:n_nodes_ptr]giver indikatorværdien for den i-TH estimator.
property feature_importances_
Lira
de urenhedsbaserede feature importances.
jo højere, jo vigtigere er funktionen.Betydningen af en funktion beregnes som den (normaliserede)samlede reduktion af kriteriet bragt af denne funktion. Det er også kendt som Gini betydning.
advarsel: urenhedsbaserede funktionsimportanser kan være vildledende forhøj kardinalitetsfunktioner (mange unikke værdier). Sesklearn.inspection.permutation_importance
som et alternativ.
returnerer feature_importances_ndarray of shape (n_features,)
værdierne for dette array sum Til 1, medmindre alle træer er enkeltknudetræer, der kun består af rodnoden, i hvilket tilfælde Det vil være anarray af nuller.
fit
(H, y, sample_vægt=ingen). parametre{array-lignende, sparsom matrice} af form (n_samples, n_features)
træning input prøver. Internt vil dens dtype blive konverterettil dtype=np.float32
. Hvis der leveres en sparsom matrice, vil den blive konverteret til en sparsom csc_matrix
.
yarray-lignende af form (n_samples,) eller (n_samples, n_outputs)
målværdierne (klasse etiketter i klassificering, reelle tal inregression).
sample_vejearray-lignende af form (n_samples,), standard=ingen
Prøvevægte. Hvis ingen, så er prøverne ligeligt vægtet. Splitsthat ville skabe barn noder med netto nul eller negativ vægt erignoreret, mens du søger efter en splittelse i hver node. I tilfælde af klassificering ignoreres splittelser også, hvis de ville resultere i, at en enkelt klasse bærer en negativ vægt i begge barneknuder.
returnerer selfobjectget_params
(deep=True) liter
få parametre til denne estimator.
parametre Deepbool, default=True
Hvis True, returnerer parametrene for denne estimator ogindeholdt underobjekter, der er estimatorer.
returnerer paramsdict
parameternavne kortlagt til deres værdier.
predict
det forudsagte regressionsmål for en inputprøve beregnes som de forventede regressionsmål for træerne i skoven.
parametre{array-lignende, sparsom matrice} af form (n_samples, n_features)
inputprøverne. Internt konverteres dens dtype tildtype=np.float32
. Hvis der leveres en sparsom matrice, vil den blive konverteret til en sparsom csr_matrix
.
returnerer yndarray af form (n_samples,) eller (n_samples, n_outputs)
de forudsagte værdier.
score
(H, y, sample_vægt=ingen).
koefficienten \(R^2\) er defineret som \((1 – \frac{u}{v})\),hvor \(u\) er den resterende sum af kvadrater((y_true - y_pred)** 2).sum()
og \(v\) er den samlede sum af kvadrater((y_true -y_true.mean()) ** 2).sum()
. Den bedst mulige score er 1,0 og denkan være negativ (fordi modellen kan være vilkårligt værre). Aconstant model, der altid forudsiger den forventede værdi af y
,uden hensyntagen til inputfunktionerne, ville få en \(R^2\) score på0.0.(N_samples, n_features)
testprøver. For nogle estimatorer kan dette være en precomputedkernel matrice eller en liste over generiske objekter i stedet med form(n_samples, n_samples_fitted)
, hvor n_samples_fitted
er antallet af prøver, der anvendes i beslaget til estimatoren.
yarray-lignende af form (n_samples,) eller (n_samples, n_outputs)
sande værdier for X
.
sample_vejearray-lignende af form (n_samples,), standard=ingen
Prøvevægte.
returnerer scorefloat
\(R^2\) af self.predict(X)
VT. y
.
noter
den \(R^2\) score, der bruges ved opkaldscore
på en regressor brugermultioutput='uniform_average'
fra version 0.23 for at holde konsistentmed standardværdi afr2_score
.Dette påvirker score
metoden for alle multioutputregressorer (undtagenMultiOutputRegressor
).
set_params
(**params) liter
Indstil parametrene for denne estimator.
metoden fungerer på enkle estimatorer såvel som på indlejrede objekter(såsomPipeline
). Sidstnævnte harparametre af formularen <component>__<parameter>
så det er muligt at opdatere hver komponent i et indlejret objekt.
parametre * * paramsdict
Estimator parametre.
returnerer selfestimator instans
Estimator instans.