Cookin etäisyys¶

API-viite¶

Visualisoi yksittäisten instanssien vaikutusta ja vipuvaikutusta regressiomalliin.

classyellowbrick.regressor.influence.CooksDistance(ax=None, draw_threshold=True, linefmt=’C0-’, markerfmt=’,’, **kwargs)¶

Bases: yellowbrick.base.Visualizer

Cook’s Distance on mittari, jolla mitataan, kuinka vaikutusvaltainen instanssi on regression laskennassa, esim. jos instanssi poistetaan, muuttuisivatko taustalla olevan mallin estimoidut kertoimet merkittävästi? Tämän vuoksi Cookin etäisyyttä käytetään yleensä tavanomaisen OLS-regression poikkeamien havaitsemiseen. Itse asiassa yleinen nyrkkisääntö on, että D(i) > 4/n on hyvä kynnysarvo, jonka avulla voidaan määritellä erittäin vaikutusvaltaiset pisteet poikkeaviksi, ja tämä visualisointiohjelma voi raportoida prosenttiosuuden datasta, joka on tämän kynnysarvon yläpuolella.

Tämä Cookin etäisyyden toteutus olettaa tavallisen pienimmän neliösumman (Ordinary Least Squares) regression, ja sen vuoksi se sulauttaa sklearn.linear_model.LinearRegression:n konepellin alle.Etäisyys lasketaan projisointimatriisin valkaisemattomasta vipuvaikutteesta, joka on laskettu fit():n sisällä. Tämän visualisoijan tulokset ovat siis samankaltaisia, mutta eivät yhtä kehittyneitä kuin vastaavanlainen laskenta, jossa käytetään statsmalleja. Vaikutuksen laskeminen muille regressiomalleille vaatii leave one out -validoinnin ja voi ollakallis laskea.

Katso myös

Pidemmän keskustelun outlierien havaitsemisesta regressiossa ja computingleverage- ja influence-arvojen laskennasta löydät kohdasta lineaarinen regressio pythonissa, outliers/leveragedetect, jonka on kirjoittanut Huiming Song.

Parametrit axmatplotlib Akselit, oletusarvo: None

Akselit, joille kuva piirretään. Jos None annetaan, käytetään nykyisiä akseleita (tai generoidaan tarvittaessa).

draw_thresholdbool, default: True

Piirrä vaakasuora viiva kohdassa D(i) == 4/n, jotta lopullisen regression vaikutusvaltaisimmatpisteet voidaan helposti tunnistaa. Tämä piirtää myös legendan, joka määritteleeprosenttiosuuden datapisteistä, jotka ovat kynnysarvon yläpuolella.

linefmtstr, default: ’C0-’

Jono merkkijono, joka määrittelee kantakuvion pystysuorien viivojen ominaisuudet, yleensä tämä on väri tai väri ja viivatyyli. Oletusarvo on yksinkertaisesti yhtenäinen viiva värisyklin ensimmäisellä värillä.

markerfmtstr, default: ’,’

Jono, joka määrittelee kantakuvion kärjissä olevien merkkien ominaisuudet. Oletusarvo on ”pixel”, esim. periaatteessa ei ole markkeripäätä kantakuvion yläreunassa.

kwargsdict

Sana-argumentit, jotka välitetään perusluokalle ja jotka voivat vaikuttaa lopulliseenvisualisointiin (esim. koko- tai otsikkoparametrit).

Huomautuksia

Cook’s Distance on hyvin samankaltainen kuin DFFITS, joka on eräs toinen diagnostinen mittari, jonka tarkoituksena on näyttää, kuinka vaikutusvaltainen piste on tilastollisessa regressiossa. Vaikka Cookin ja DFFITSin laskennalliset arvot ovat erilaisia, ne ovat käsitteellisesti identtisiä, ja on olemassa jopa suljettu kaava, jolla yksi arvo muunnetaan toiseksi. Tämän vuoksi olemme päättäneet toteuttaa Cookin etäisyyden DFFITS:n sijaan tai sen lisäksi.

Attribuutit distance_array, 1D

Cookin etäisyyden arvo kullekin kohdassa X määritetylle instanssille, esim. 1D-matriisi, jonka muoto on (X.shape,).

p_values_array, 1D

Cookin etäisyysjakauman F-testiin liittyvät p-arvot. 1Darray, jonka muoto vastaa distance_.

influence_threshold_float

Nyrkkisäännön mukainen vaikutuskynnys, jolla määritetään regressiomallissa esiintyvät poikkeavuudet, määritelty It=4/n.

outlier_percentage_float

Prosenttiosuus instansseista, joiden Cookin etäisyys on suurempi kuin influncethreshold, prosenttiosuus on 0.0 <= p <= 100.0.

draw()¶

Piirretään kantakuvio, jossa jokainen varsi on instanssin Cookin etäisyys x-akselilla määritellyssäindeksissä. Vaihtoehtoisesti piirtää kynnysviivan.

finalize()¶

Valmistaa visualisoinnin esittämistä ja raportointia varten.

fit(X, y)¶

Lasketaan X:n vipuvaikutus ja käytetään asklearn.linear_model.LinearRegression:n residuaaleja laskemaan jokaisen X:ssä olevan havainnon Cook’s Distance, niiden p-arvot ja annettujen havaintojen lukumäärän määrittelemien outlierien määrä.

Parametrit Xarray-tyyppinen, 2D

Eksogeeninen suunnittelumatriisi, esim. harjoitusaineisto.

yarray-like, 1D

Edogeeninen vastemuuttuja, esim. kohdedata.

Returns selfCooksDistance

Fit palauttaa visualisointi-instanssin.

yellowbrick.regressor.influence.cooks_distance(X, y, ax=None, draw_threshold=True, linefmt=’C0-’, markerfmt=’,’, show=True, **kwargs)¶yellowbrick.regressor.influence.cooks_distanceCook’s Distance on mittari, jolla mitataan, kuinka vaikutusvaltainen instanssi on regression laskennassa, esim. jos instanssi poistetaan, muuttuisivatko taustalla olevan mallin estimoidut kertoimet olennaisesti? Tämän vuoksi Cookin etäisyyttä käytetään yleensä tavanomaisen OLS-regression poikkeamien havaitsemiseen. Itse asiassa yleinen nyrkkisääntö on, että D(i) > 4/n on hyvä kynnysarvo, jonka avulla voidaan määritellä erittäin vaikutusvaltaiset pisteet poikkeaviksi, ja tämä visualisointiohjelma voi raportoida prosenttiosuuden datasta, joka on tämän kynnysarvon yläpuolella.

Tämä Cookin etäisyyden toteutus olettaa tavallisen pienimmän neliösumman (Ordinary Least Squares) regression, ja sen vuoksi se sulauttaa sklearn.linear_model.LinearRegression:n konepellin alle.Etäisyys lasketaan projisointimatriisin valkaisemattomalla vipuvaikutteella, joka on laskettu fit():n sisällä. Tämän visualisoijan tulokset ovat siis samankaltaisia, mutta eivät yhtä kehittyneitä kuin vastaavanlainen laskenta, jossa käytetään statsmalleja. Vaikutuksen laskeminen muille regressiomalleille vaatii leave one out -validoinnin ja voi ollakallis laskea.

Katso myös

Pidemmän keskustelun outlierien havaitsemisesta regressiossa sekä vipuvaikutuksen ja vaikutuksen laskemisesta löydät osoitteesta: Lineaarinen regressio pythonissa, outliers/leveragedetect kirjoittaja Huiming Song.

Parametrit Xarray-like, 2D

Exogeeninen suunnittelumatriisi, esim. harjoitusaineisto.

yarray-like, 1D

Edogeeninen vastemuuttuja, esim. kohdedata.

axmatplotlib Akselit, oletus: None

Akselit, joille kuvio piirretään. Jos None annetaan, käytetään nykyisiä akseleita (tai generoidaan tarvittaessa).

draw_thresholdbool, default: True

Piirrä vaakasuora viiva kohdassa D(i) == 4/n, jotta lopullisen regression vaikutusvaltaisimmatpisteet voidaan helposti tunnistaa. Tämä piirtää myös legendan, joka määritteleeprosenttiosuuden datapisteistä, jotka ovat kynnysarvon yläpuolella.

linefmtstr, default: ’C0-’

Jono merkkijono, joka määrittelee kantakuvion pystysuorien viivojen ominaisuudet, yleensä tämä on väri tai väri ja viivatyyli. Oletusarvo on yksinkertaisesti yhtenäinen viiva värisyklin ensimmäisellä värillä.

markerfmt: str, oletusarvo: ’,’

Merkkijono, joka määrittelee kantakuvion päissä olevien merkkien ominaisuudet. Oletusarvo on ”pixel”, esim. periaatteessa ei ole markkeripäätä kantakuvion yläosassa.

show: bool, default: True

Jos True, kutsuu show(), joka puolestaan kutsuu plt.show() ei kuitenkaan voi kutsua plt.savefig tästä allekirjoituksesta, eikäclear_figure. Jos False, kutsuu yksinkertaisesti finalize()

kwargsdict

Sana-argumentit, jotka välitetään perusluokalle ja jotka voivat vaikuttaa lopulliseenvisualisointiin (esim. koko- tai otsikkoparametrit).

Vastaa

Sähköpostiosoitettasi ei julkaista.