Articles

sklearn.ensemble.Randomforestregulator¶

klasse sklearn.ensemble.RandomForestRegressor(n_estimators=100, *, kriterium=’mse’, max_depth=Ingen, min_samples_split=2, min_samples_leaf=1, min_weight_fraction_leaf=0.0, max_features=’auto’, max_leaf_nodes=ingen, Min_impurity_decrease=0.0, min_impurity_split=ingen, bootstrap=true, oob_score=false, n_jobs=ingen, random_state=ingen, verbose=0, warm_start=false, Ccp_alpha=0.0, max_samples=ingen)¶

en tilfeldig skogsregressor.en tilfeldig skog er en metaestimator som passer til en rekke klassifiseringbeslutningstrær på ulike delprøver av datasettet og bruker gjennomsnitt for å forbedre prediktiv nøyaktighet og kontroll over montering.Underprøvestørrelsen styres med parameterenmax_samples hvis bootstrap=True (standard), ellers brukes hele datasettet til å bygge hvert tre.

Les mer i Brukerhåndboken.

Parametere n_estimatorsint, default=100

antall trær i skogen.

Endret i versjon 0.22: Standardverdien for n_estimators endret fra 10 til 100in 0.22.

kriterium {«mse»,»mae»}, default= » mse «

funksjonen for å måle kvaliteten på en splitt. Støttede kriterierer » mse «for den gjennomsnittlige kvadrerte feilen, som er lik variancereduction som funksjonsvalgkriterium, og» mae » for meanabsolute-feilen.

Nytt i versjon 0.18: Gjennomsnittlig Absolutt feil (MAE) kriterium.

max_depthint, default=Ingen

maksimal dybde på treet. Hvis Ingen, blir noder utvidet tilalle bladene er rene eller til alle blader inneholder mindre thanmin_samples_split prøver.

min_samples_splitint eller float, default=2

minimum antall prøver som kreves for å dele en intern node:

  • Hvis int, så vurder min_samples_split som minimumsnummer.

  • hvis flyte, så min_samples_split er en brøkdel og ceil(min_samples_split * n_samples) er minimumantall prøver for hver splitt.

Endret i versjon 0.18: Lagt flyte verdier for fraksjoner.

min_samples_leafint eller float, default=1

minimum antall prøver som kreves for å være på en bladknute.Et delt punkt på noen dybde vil bare bli vurdert hvis det etterlater minst min_samples_leaf treningsprøver i hver av venstre og høyre grener. Dette kan føre til utjevning av modellen, spesielt i regresjon.

  • hvis int, vurder min_samples_leaf som minimumsnummer.

  • hvis flyte, såmin_samples_leafer en brøkdel og ceil(min_samples_leaf * n_samples) er minimumantall prøver for hver node.

Endret i versjon 0.18: Lagt flyte verdier for fraksjoner.

min_weight_fraction_leaffloat, standard=0.0

den minste vektet brøkdel av summen av vekter (av all input prøvene) som kreves for å være på et blad node. Prøver har lik vekt når sample_weight ikke er gitt.

max_features{«auto», «sqrt», «log2″}, int eller float, default=»auto»

antall funksjoner for å vurdere når vi leter etter den beste split:

  • Hvis int, deretter vurderemax_features funksjoner ved hver split.

  • hvis float, såmax_features er en brøkdel oground(max_features * n_features) funksjoner vurderes på hversplit.

  • Hvis «auto», så max_features=n_features.

  • Hvis «sqrt», så max_features=sqrt(n_features).

  • Hvis «log2», så max_features=log2(n_features).

  • Hvis Ingen, så max_features=n_features.

Merk: søket etter en splitt stopper ikke før minst onevalid partisjon av nodeprøver er funnet, selv om det krever toeffektivt inspisere mer ennmax_features funksjoner.

max_leaf_nodesint, default=None

Dyrk trær med max_leaf_nodes på beste måte.Beste noder er definert som relativ reduksjon i urenhet.Hvis Ingen så ubegrenset antall blad noder.

min_impurity_decreasefloat, default=0.0

en node vil bli delt hvis denne delen induserer en reduksjon av impuritygreater enn eller lik denne verdien.

den vektede urenhetsreduksjonsligningen er følgende:

N_t / N * (impurity - N_t_R / N_t * right_impurity - N_t_L / N_t * left_impurity)

hvorNer totalt antall prøver,N_ter antallprøver på gjeldende node,N_t_Ler antall prøver ivenstre barn, ogN_t_Rer antall prøver i riktig barn.

NN_tN_t_R og N_t_L alle refererer til vektet sum,hvis sample_weight er bestått.

Nytt i versjon 0.19.

min_impurity_splitfloat, default=Ingen

Terskel for tidlig stopp i trevekst. En knute vil splitte seghvis urenheten er over terskelen, ellers er det et blad.

Utdatert siden versjon 0.19:min_impurity_split har blitt utdatert til fordel for min_impurity_decrease i 0.19. Standardverdien avmin_impurity_split har endret seg fra 1e-7 til 0 i 0.23 og itwill bli fjernet i 1.0 (døpe på 0.25).Bruk min_impurity_decrease i stedet.

bootstrapbool, default=True

om bootstrap-prøver brukes når du bygger trær. Hvis False, brukes hele datasettet til å bygge hvert tre.

oob_scorebool, default=False

om å bruke out-of-bag prøver å estimatethe r^2 på usett data.

n_jobsint, default=Ingen

antall jobber som skal kjø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 or None, default=None

Kontrollerer både tilfeldigheten av bootstrapping av prøvene som brukes når du bygger trær (hvisbootstrap=True) og prøvetaking av thefeatures å vurdere når du ser etter den beste splitten på hver node (hvis max_features < n_features).Se Ordliste for detaljer.

verboseint, default=0

Kontrollerer detaljnivået når det tilpasses og forutsier.

warm_startbool, default = False

når satt til True, gjenbruk løsningen av det forrige anropet til fitand legg til flere estimatorer til ensemblet, ellers bare passe en hel ny skog. Se Ordlisten.

ccp_alphanon-negativ flyt, standard=0.0

Kompleksitetsparameter brukt For Minimal Kostnadskompleksitetsbeskjæring. Thesubtree med den største kostnadskompleksiteten som er mindre enn ccp_alpha vil bli valgt. Som standard utføres ingen beskjæring. SeeMinimal Kostnad-Kompleksitet Beskjæring for detaljer.

Nytt i versjon 0.22.hvis bootstrap Er Sant, antall prøver å trekke Fra Xto trene hver base estimator.

  • hvis ingen (standard), tegner duX.shape prøver.

  • hvis int, deretter tegne max_samples prøver.

  • hvis du flyter, tegner dumax_samples * X.shape prøver. Dermed skalmax_samples være i intervallet (0, 1).

Nytt i versjon 0.22.

Attributter base_estimator_DecisionTreeRegressor

underordnede estimatormalen som brukes til å opprette samlingen av fittedsub-estimatorer.

estimatorer_list Of DecisionTreeRegressor

samlingen av monterte underestimatorer .

feature_importances_ndarray av form (n_features,)

den urenhetsbaserte funksjonen importerer.

n_features_int

antall funksjoner når fit utføres.

n_outputs_int

antall utganger nårfit utføres.

Oob_score_float

Resultat av treningsdatasettet oppnådd ved hjelp av et estimat utenfor posen.Dette attributtet eksisterer bare når oob_score Er Sant.

Oob_prediction_ndarray av form (n_samples,)

Prediksjon beregnet med out-of-bag estimat på treningssettet.Dette attributtet eksisterer bare når oob_score Er Sant.

Se også

DecisionTreeRegressorExtraTreesRegressor

Merknader

standardverdiene for parametrene som styrer størrelsen på trærne(f.eks.max_depthmin_samples_leaf, etc.) føre til fullvoksne andunpruned trær som potensielt kan være svært store på enkelte datasett. Toreduce minneforbruk, kompleksiteten og størrelsen på trærne bør værekontrollert ved å sette disse parameterverdiene.

funksjonene er alltid tilfeldig permuted ved hver splitt. Derfor kan den best funnet splitten variere, selv med de samme treningsdataene,max_features=n_features ogbootstrap=False, hvis forbedringen av kriteriet er identisk for flere splittelser som er oppregnet undersøk av den beste splitten. For å oppnå en deterministisk oppførsel under montering, må random_state løses.

standardverdienmax_features="auto" brukern_featuresi stedet for n_features / 3. Sistnevnte ble opprinnelig foreslått i, mens den tidligere ble mer nylig begrunnet empirisk i.

1

  1. Breiman, «Tilfeldige Skoger», Maskinlæring, 45(1), 5-32, 2001.

2

P. Geurts, D. Ernst., Og L. Wehenkel, «Ekstremt randomizedtrees», 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(X)¶

Bruk trær I skogen Til X, returner bladindekser.

Parametere X{array-lignende, sparsom matrise} av form(n_samples, n_features)

inngangsprøver. Internt vil dtype bli konvertert til dtype=np.float32. Hvis en sparsom matrise er gitt, vil den blikonvertert til en sparsom csr_matrix.

Returnerer x_leavesndarray av form (n_samples, n_estimators)

for hvert datapunkt x I X og for hvert tre i skogen,returnerer indeksen til bladet x ender opp i.

decision_path(X)¶

Returner beslutningsstien i skogen.

Nytt i versjon 0.18.

Parametere X{array-lignende, sparsom matrise} av form(n_samples, n_features)

input prøvene. Internt vil dtype bli konvertert til dtype=np.float32. Hvis en sparsom matrise er gitt, vil den blikonvertert til en sparsom csr_matrix.

Returnerer indicatorsparse matrix of shape (n_samples, n_nodes)

Returner en node indikatormatrise der ikke-nullelementer indikererat prøvene går gjennom nodene. Matrisen er Av CSRformat.

n_nodes_ptrndarray av form (n_estimators + 1,)

kolonnene fra indikator:n_nodes_ptr]gir indikatorverdien for i-th estimatoren.

eiendom feature_importances_

den urenhetsbaserte funksjonen importerer.

jo høyere, desto viktigere er funksjonen.Betydningen av en funksjon beregnes som (normalisert)total reduksjon av kriteriet brakt av denne funksjonen. Det er også kjent Som Gini betydning.

Advarsel: urenhetsbaserte funksjoner kan være misvisende for høye kardinalitetsfunksjoner (mange unike verdier). Sesklearn.inspection.permutation_importance som et alternativ.

Returnerer feature_importances_ndarray av form (n_features,)

verdiene av denne matrisen summen til 1, med mindre alle trær er enkle nodetrees som består av bare rotnoden, i så fall vil det være anarray av nuller.

fit(X, y, sample_weight=Ingen)¶

Bygg en skog av trær fra treningssettet (X, y).

Parametere X{array-lignende, sparsom matrise} av form(n_samples, n_features)

treningsinngangsprøver. Internt vil dtype konverteres til dtype=np.float32. Hvis en sparsom matrise er gitt, vil den blikonvertert til en sparsom csc_matrix.

yarray-lignende av form (n_samples,) eller (n_samples, n_outputs)

målverdiene (klasse etiketter i klassifisering, reelle tall inregresjon).

sample_weightarray-lignende av form (n_samples,), standard=Ingen

Prøvevekter. Hvis Ingen, så prøvene er like vektet. Splitsthat ville skape barn noder med netto null eller negativ vekt erignored mens du søker etter en splitt i hver node. I tilfelle ofclassification, er deler også ignorert hvis de ville resultere i anysingle klasse bærer en negativ vekt i enten barn node.

Returnerer selfobject get_params(dyp=Sann)¶

Hent parametere for denne estimatoren.

Parametere deepbool, default=True

hvis Sann, vil returnere parametrene for denne estimatoren andcontained delobjekter som er estimatorer.

returnerer paramsdict

Parameternavn tilordnet til sine verdier.

predict(X)¶

Forutsi regresjonsmål For X.

det forutsagte regresjonsmålet for en inngangsprøve beregnes som de forutsagte regresjonsmålene for trærne i skogen.

Parametere X{array-lignende, sparsom matrise} av form(n_samples, n_features)

inngangsprøver. Internt vil dtype bli konvertert til dtype=np.float32. Hvis en sparsom matrise er gitt, vil den blikonvertert til en sparsom csr_matrix.Returnerer yndarray av form (n_samples,) eller (n_samples, n_outputs)

de forventede verdiene.

score(X, y, sample_weight=Ingen)¶

Returner bestemmelseskoeffisienten \(r^2\) avprediksjonen.

koeffisienten \(r^2\ ) er definert som \((1 – \frac{u} {v})\), hvor \(u\) er restsummen av kvadrater ((y_true - y_pred)** 2).sum() og \(v\) er den totale summen av kvadrater ((y_true -y_true.mean()) ** 2).sum(). Den beste mulige poengsummen er 1,0 og denkan være negativ (fordi modellen kan være vilkårlig verre). Aconstant modell som alltid forutsier forventet verdi avy,uten hensyn til inngangsfunksjonene, vil få en \(r^2\) score på0.0.

Parametere Xarray-lignende av form(n_samples, n_features)

Testprøver. For noen estimatorer kan dette være en precomputedkernel matrise eller en liste over generiske objekter i stedet med form(n_samples, n_samples_fitted), der n_samples_fitteder antall prøver som brukes i tilpasningen til estimatoren.

yarray-lignende av form (n_samples,) eller (n_samples, n_outputs)

Sanne verdier for X.

sample_weightarray-lignende av form (n_samples,), standard=Ingen

Prøvevekter.

Returnerer scorefloat

\(r^2\) av self.predict(X) wrt. y.

Merknader

\(r^2\) poengsummen som brukes når du ringerscore på en regressor bruker multioutput='uniform_average' fra versjon 0.23 for å beholde konsekvent med standardverdien av r2_score.Dette påvirkerscore – metoden for alle multioutputregressors (unntattMultiOutputRegressor).

set_params(**params)¶

Sett parametrene til denne estimatoren.

metoden fungerer på enkle estimatorer så vel som på nestede objekter(for eksempelPipeline). Sistnevnte harparametere av skjemaet <component>__<parameter> slik at det er mulig å oppdatere hver komponent i et nestet objekt.

Parametere * * paramsdict

Estimator parametere.

Returnerer selfestimator forekomst

Estimator forekomst .

Eksempler ved hjelp av sklearn.ensemble.Randomskogregressor¶