sklearn.Ensemble.RandomForestRegressor¶
class sklearn.ensemble.
RandomForestRegressor
(n_estimators=100, *, criterion= ”mse”, max_depth=None, min_samples_split=2, min_samples_leaf=1, min_weight_fraction_leaf=0, 0, max_features=’auto’, max_leaf_nodes=none, min_impurity_decrease=0, 0, min_impurity_split=None, Bootstrap=True, oob_score=false, n_jobs=None, random_state=none, verboose=0, warm_start=False, ccp_alpha=0, 0, max_samples=None)¶
satunnainen metsänsäätäjä.
satunnaismetsä on meta-estimaattori, joka sopii tietueen eri osanäytteisiin usealle luokitellulle puustolle ja käyttää keskiarvoa ennustetarkkuuden parantamiseen ja ylisovituksen hallintaan.Osanäytteen kokoa kontrolloidaanmax_samples
– parametrilla, josbootstrap=True
(oletusarvo), muuten koko aineistoa käytetään jokaisen puun rakentamiseen.
Lue lisää käyttöohjeesta.
parametrit n_estimatorsint, default=100
metsän puiden lukumäärä.
muutettu versio 0.22: n_estimators
oletusarvo muuttui 10: stä 100: aan 0,22: ssa.
criterion{”mse”, ”mae”}, default=”mse”
funktio, jolla mitataan jaon laatua. Tuetut kriteerit ovat ” mse ”keskimääräiselle neliövirheelle, joka on yhtä suuri kuin variancereduction ominaisuusvalintakriteerinä, ja” mae ” keskiarvoabsoluuttiselle virheelle.
New in version 0.18: Mean Absolute Error (Mae) criteria.
max_depthint, default=None
puun suurin syvyys. Jos ei ole, niin solmut laajennetaan, kunnes kaikki lehdet ovat puhtaita tai kunnes kaikki lehdet sisältävät vähemmän kuin min_samples_split näytteitä.
min_samples_splitint tai float, default=2
sisäisen solmun jakamiseen tarvittava vähimmäismäärä näytteitä:
-
Jos int, niin pitäkää
min_samples_split
vähimmäislukuna.
Jos kelluu, niinmin_samples_split
on murto-osa jaceil(min_samples_split * n_samples)
ovat kunkin jaon vähimmäismäärä näytteitä.
muutettu versio 0.18: lisätty liukuarvot murtoluvuille.
min_samples_leafint tai float, default=1
näytteiden vähimmäismäärä, joka tarvitaan lehtisolmuun.Jakopiste missä tahansa syvyydessä otetaan huomioon vain, jos siitä jää vähintään min_samples_leaf
harjoitusnäytteet kussakin vasemmassa ja oikeassa haarassa. Tämä voi vaikuttaa mallin tasoittumiseen erityisesti regressiossa.
-
Jos int, niin pitäkää
min_samples_leaf
vähimmäislukuna.
Jos kelluu, niinmin_samples_leaf
on murto-osa jaceil(min_samples_leaf * n_samples)
ovat näytteen vähimmäismäärä kullekin solmulle.
muutettu versio 0.18: lisätty liukuarvot murtoluvuille.
min_weight_fraction_leaffloat, default=0,0
pienin painotettu osuus niiden painojen kokonaismäärästä, joiden on oltava lehtisolmussa. Näytteillä on sama paino, kun näytteitä_painoa ei toimiteta.
max_features{”auto”, ”sqrt”, ”log2″}, int tai float, default=”auto”
parhaita jakoja etsittäessä huomioon otettavien ominaisuuksien määrä:
-
Jos int, niin harkitse
max_features
ominaisuuksia jokaisessa jaossa. -
Jos ”auto”, niin
max_features=n_features
. -
Jos ”sqrt”, niin
max_features=sqrt(n_features)
. -
Jos ”log2”, niin
max_features=log2(n_features)
. -
Jos ei ole, niin
max_features=n_features
.
Jos kelluu, niinmax_features
on murtoluku jaround(max_features * n_features)
ominaisuudet huomioidaan jokaisessa.
Huomautus: jaon haku ei lopu ennen kuin solmunäytteiden vähintään yksi evalid-osio löytyy, vaikka se vaatisikin tarkastamaan tehokkaasti enemmän kuin max_features
ominaisuudet.
max_leaf_nodesint, default=None
Grow trees with max_leaf_nodes
in best-first fashion.Parhaat solmut määritellään epäpuhtauden suhteellisena vähenemisenä.Jos ei ole niin rajoittamaton määrä lehtiä solmuja.
min_impurity_decreasefloat, default=0.0
solmu jaetaan, jos tämä jako indusoi impuritygreaterin pienenemisen suuremmaksi tai yhtä suureksi kuin tämä arvo.
painotettu epäpuhtauden vähennysyhtälö on seuraava:
N_t / N * (impurity - N_t_R / N_t * right_impurity - N_t_L / N_t * left_impurity)
missä N
on näytteiden kokonaismäärä, N_t
on näytteiden lukumäärä nykyinen solmukohta, N_t_L
on näytteiden lukumäärä Theft child, ja N_t_R
on näytteiden lukumäärä oikealla lapsella.
N
N_t
N_t_R
ja N_t_L
kaikki viittaavat painotettuun summaan,jos sample_weight
on läpäisty.
uusi versio 0.19.
min_impurity_splitfloat, default=None
kynnysarvo puun kasvun varhaiselle pysähtymiselle. Solmu splitif sen epäpuhtaus on kynnyksen yläpuolella, muuten se on lehti.
Deprecated since version 0.19: min_impurity_split
has deprecated eduksimin_impurity_decrease
in 0.19. Oletusarvomin_impurity_split
on muuttunut 1e-7: stä 0: ksi 0.23: ssa ja se poistetaan 1.0: ssa (nimetään 0.25: ksi).Käytä sen sijaan min_impurity_decrease
.
bootstrapbool, default=True
käytetäänkö bootstrap-näytteitä puita rakennettaessa. Jos kyseessä on väärä tietokokonaisuus, jokaisen puun rakentamiseen käytetään koko tietokokonaisuutta.
oob_scorebool, default=False
käytetäänkö pussittamattomia näytteitä R^2: n arvioimiseksi näkymättömistä tiedoista.
n_jobsint, default=None
samanaikaisesti suoritettavien töiden määrä. 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 or None, default=None
kontrolloi sekä rakennuspuiden yhteydessä käytettyjen otosten satunnaisuutta (if bootstrap=True
) että otantaa otoksista, jotka on otettava huomioon etsittäessä parasta jakoa kussakin solmussa(if max_features < n_features
).Katso tarkemmat tiedot sanastosta.
verboseint, default=0
ohjaa verbositeettia sovittaessa ja ennustettaessa.
warm_startbool, default=False
kun asetuksena on True
, käytä edellisen kehotuksen ratkaisu uudelleen ja lisää estimaattoreita kokonaisuuteen, muuten vain sovita kokonainen metsä. Katso Sanasto.
ccp_alphanon-negative float, default=0.0
Complexity-parametria käytetään minimaaliseen Kustannuskompleksisuuden karsintaan. Valituksi tulee joukko, jonka suurin kustannuskompleksisuus on pienempi kuinccp_alpha
. Oletusarvoisesti karsintaa ei suoriteta. SeeMinimal kustannukset-monimutkaisuus karsiminen yksityiskohtia.
uusi versio 0.22.
max_samplesint tai float, default=None
Jos bootstrap on totta, Xto-junan kustakin perusestimaattorista otettavien näytteiden lukumäärä.
-
Jos ei ole (oletusarvo), piirretään
X.shape
näytteet. -
Jos kellutaan, vedetään
max_samples * X.shape
näytteet. Näin ollenmax_samples
pitäisi olla väli(0, 1)
.
Jos int, niin vedetäänmax_samples
näytteet.
uusi versio 0.22.
attribuutit base_estimator_DecisionTreeRegressor
the child estimator template used to create the collection of fittedsub-estimators.
estimators_list of DecisionTreeRegressor
the collection of fitted sub-estimators.
feature_importances_
ndarray of shape (n_features,)
epäpuhtauksiin perustuva ominaisuus importances.
n_features_int
ominaisuuksien lukumäärä, kun fit
suoritetaan.
n_outputs_int
lähtöjen lukumäärä, kun fit
suoritetaan.
oob_score_float
pisteet harjoitusaineistosta, jotka on saatu pussittomalla estimaatilla.Tämä ominaisuus on olemassa vain, jos oob_score
on tosi.
oob_prediction_ndarray of shape (n_samples,)
ennuste laskettuna out-of-bag-estimaatilla harjoitussarjassa.Tämä ominaisuus on olemassa vain, jos oob_score
on tosi.
Katso myös
DecisionTreeRegressor
ExtraTreesRegressor
toteaa
oletusarvot puiden kokoa ohjaaville parametreille(esim. max_depth
min_samples_leaf
jne.) johtavat täysikasvuisiin ja poimuttumattomiin puihin, jotka voivat joissakin tietoaineistoissa olla hyvinkin suuria. Muistinkulutuksen vähentämiseksi puiden monimutkaisuutta ja kokoa olisi valvottava asettamalla nämä parametriarvot.
ominaisuudet permantoituvat aina satunnaisesti jokaisessa jaossa. Näin ollen parhaiten löydetty jaottelu voi vaihdella, jopa samoilla koulutustietoilla,max_features=n_features
ja , jos kriteerin paraneminen on sama usealle parhaan jaon etsinnässä luetellulle jaolle. Deterministisen käyttäytymisen saamiseksi kestoaikana random_state
on oltava kiinteä.
oletusarvo max_features="auto"
käyttää n_features
eikä n_features / 3
. Jälkimmäinen oli alun perin ehdotettu, kun taas edellinen oli viime aikoina perusteltua empiirisesti vuonna .
1
-
Breiman, ”Satunnaismetsät”, Koneoppiminen, 45(1), 5-32, 2001.
2
P. Geurts, D. Ernst., ja L. Wehenkel, ”Extremely randomizedtrees”, Koneoppiminen, 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
(X)¶
sovelletaan metsän puita X: ään, paluulehtien indekseihin.
parametrit X{array-like, harva matriisi} muotoa (n_samples, n_features)
tulonäytteet. Sisäisesti sen dtype muuttuu muotoondtype=np.float32
. Jos annetaan harvamatriisi, se muuntuu harvaksi csr_matrix
.
palauttaa X_leavesndarray of shape (n_samples, n_estimators)
jokaiselle datapoint x in X Ja jokaiselle metsän puulle palauttaa indeksin,johon lehti x päätyy.
decision_path
(X)¶
Return the decision trail in the forest.
uusi versio 0.18.
parametrit X{array-like, harva matriisi} muotoa (n_samples, n_features)
tulonäytteet. Sisäisesti sen dtype muuttuu muotoondtype=np.float32
. Jos annetaan harvamatriisi, se muuntuu harvaksi csr_matrix
.
palauttaa indicatorsparse-matriisin muodon (n_samples, n_nodes)
Palauta solmuindikaattorimatriisi, jossa ei-nollaelementit ilmaisevat, että näytteet kulkevat solmujen läpi. Matriisi on CSRformat.
n_nodes_ptrndarray of shape (n_estimators + 1,)
sarakkeet indikaattorin:n_nodes_ptr]antaa indikaattorin arvo i-th estimaattori.
ominaisuusfeature_importances_
¶
epäpuhtauksiin perustuva ominaisuus importances.
Mitä korkeampi, sitä tärkeämpi ominaisuus.Ominaisuuden merkitys lasketaan kyseisen ominaisuuden tuoman kriteerin (normalisoituna) kokonaishäviönä. Sitä kutsutaan myös Gini-tärkeydeksi.
Varoitus: epäpuhtauksiin perustuvat ominaisuustuonnot voivat olla harhaanjohtavia korkeille kardinaaliominaisuuksille (monet yksilölliset arvot). sklearn.inspection.permutation_importance
vaihtoehtona.
Returns feature_ importances_ndarray of shape (n_features,)
arvot tämän array summa 1, paitsi jos kaikki puut ovat yksittäisiä nodetres koostuu vain juurisolmu, jolloin se on anarray nollia.
fit
(X, y, sample_weight=None)¶
Rakenna koulutussarjasta puumetsä (X, y).
parametrit X{array-like, harva matriisi} muodon (n_samples, n_features)
harjoitussyötteen näytteet. Sisäisesti sen dtype muunnetaan muotoon dtype=np.float32
. Jos annetaan harvamatriisi, se muuntuu harvaksi csc_matrix
.
yarray-muotoiset (n_samples,) tai (n_samples, n_outputs)
tavoitearvot (luokkanimikkeet luokittelussa, reaaliluvut repressiossa).
sample_weightarray-like of shape (n_samples,), default=None
Sample weightarray-like of shape. Jos niitä ei ole, näytteet painotetaan yhtä paljon. Splits that loisi lapsi solmut netto nolla tai negatiivinen paino areignored etsittäessä jako kussakin solmussa. Luokituksen tapauksessa jaottelut jätetään myös huomiotta, jos ne johtaisivat siihen, että jommassakummassa lapsisolmussa olisi yksi luokka, jolla on negatiivinen painoarvo.
palauttaa selfobjectget_params
(deep=True)¶
Hanki tälle estimaattorille parametrit.
parametrit deepbool, default=True
Jos True, palauttaa tämän estimaattorin parametrit ja contained subobjects, jotka ovat estimaattoreita.
palauttaa paramsdict
Parametrinimet, jotka on kartoitettu niiden arvoihin.
predict
(X)¶
ennusta regressiotavoite X: lle.
syöttönäytteen ennustettu regressiotavoite lasketaan metsän puiden ennustettuina regressiotavoitteina.
parametrit X{array-like, harva matriisi} muotoa (n_samples, n_features)
tulonäytteet. Sisäisesti sen dtype muuttuu muotoondtype=np.float32
. Jos annetaan harvamatriisi, se muuntuu harvaksi csr_matrix
.
palauttaa yndarray of shape (n_samples,) tai (n_samples, n_outputs)
ennustetut arvot.
score
(X, y, sample_weight=None)¶
Palauta determinaatiokerroin \(R^2\).
kerroin \(R^2\) määritellään \((1 – \frac{u}{v})\),missä \(u\) on neliöiden jäännössumma ((y_true - y_pred)** 2).sum()
ja \(v\) on neliöiden kokonaissumma ((y_true -y_true.mean()) ** 2).sum()
. Paras mahdollinen pistemäärä on 1,0 ja se voi olla negatiivinen (koska malli voi olla mielivaltaisesti huonompi). Akonstanttimalli,joka aina ennustaa y
odotusarvon, ottamatta huomioon syöttöominaisuuksia, saisi \(R^2\) pistearvon 0.0.
parametrit Xarray-muotoiset (n_samples, n_features)
testinäytteet. Joidenkin estimaattoreiden kohdalla kyseessä voi olla esikomputoitu matriisi tai sen sijaan Luettelo yleisistä kappaleista, joiden muoto on(n_samples, n_samples_fitted)
, missä n_samples_fitted
on estimaattorin sovituksessa käytettyjen näytteiden lukumäärä.
yarrayn kaltainen muoto (n_samples,) tai (n_samples, n_outputs)
todelliset arvot X
.
sample_weightarray-like of shape (n_samples,), default=None
Sample weightarray-like of shape.
palauttaa scorefloat
\(R^2\) of self.predict(X)
wrt. y
.
toteaa
\(r^2\) – pisteet, joita käytetään score
regressorilla, käyttäämultioutput='uniform_average'
versiosta 0.23 pitääkseen konsistentin r2_score
.Tämä vaikuttaa score
kaikkien multioutputregressorien menetelmään (paitsiMultiOutputRegressor
).
set_params
(**params)¶
Aseta tämän estimaattorin parametrit.
menetelmä toimii sekä yksinkertaisilla estimaattoreilla että sisäkkäisillä kohteilla(kuten Pipeline
). Viimeksi mainituilla on muotoa <component>__<parameter>
niin, että sisäkkäisen kohteen jokainen komponentti on mahdollista päivittää.
parametrit * * paramsdict
Estimaattoriparametrit.
palauttaa selfestimaattori-instanssin
estimaattori-instanssin.