Articles

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 overvejemin_samples_split som det mindste antal.

  • Hvis float, så min_samples_spliter 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 dereftermin_samples_leaf som det mindste antal.

  • Hvis float, såmin_samples_leafer 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_featureser 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 Ner det samlede antal prøver, N_ter antallet af prøver ved den aktuelle node, N_t_Ler antallet af prøver ivenstre barn, og N_t_R er antallet af prøver i det rigtige barn.

NN_tN_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. fitpredictdecision_path and apply are all parallelized over thetrees. None means 1 unless in a joblib.parallel_backendcontext. -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 derefterX.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å

DecisionTreeRegressorExtraTreesRegressor

noter

standardværdierne for parametrene, der styrer træernes størrelse(f.eks.max_depthmin_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_featuressnarere endn_features / 3. Sidstnævnte blev oprindeligt foreslået i, der henviser til, at førstnævnte for nylig var berettiget empirisk i .

1

  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(X)

Apply trees in the forest to X, return leaf indices.

decision_path(X)

Return the decision path in the forest.

fit(X, y)

Build a forest of trees from the training set (X, y).

get_params()

Get parameters for this estimator.

predict(X)

Predict regression target for X.

score(X, y)

Return the coefficient of determination \(R^2\) of the prediction.

set_params(**params)

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_fitteder 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.

eksempler ved hjælp af sklearn.ensemble.RandomForestRegressor Kristian