Cook’s Distance¶

API Reference¶

Vizualizálja az egyes példányok befolyását és hatását egy regressziós modellre.

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

Bases: yellowbrick.base.Visualizer

A Cook-távolság annak mérőszáma, hogy egy példány mennyire befolyásoló tényező a regresszió kiszámítása szempontjából, pl. ha az adott példányt eltávolítjuk, akkor az alapul szolgáló modell becsült együtthatói jelentősen megváltoznának-e? Emiatt a Cook-távolságot általában a kiugró értékek kimutatására használják a standard OLS-regresszióban. Valójában egy általános ökölszabály az, hogy D(i) > 4/n egy jó küszöbérték a nagyon befolyásos pontok mint kiugró pontok meghatározásához, és ez a vizualizáló képes jelenteni az adatok azon százalékát, amely e küszöbérték felett van.

A Cook-távolság ezen implementációja Ordinary Least Squares regressziót feltételez, és ezért egy sklearn.linear_model.LinearRegression-et ágyaz be a motorháztető alá.A távolságot a vetítési mátrix nem fehérített leverage-ével számítják ki, amelyet a fit()-ban számítanak ki. Ennek a vizualizátornak az eredményei ezért hasonlóak, de nem olyan fejlettek, mint egy hasonló, statsmodeleket használó számítás. A befolyás kiszámítása más regressziós modellek esetén leave one out validációt igényel, és költséges lehet a számítása.

See also

A regresszióban a kiugró értékek detektálásáról, valamint a tőkeáttétel és a befolyás kiszámításáról lásd: linear regression in python, outliers/leveragedetect by Huiming Song.

Parameters axmatplotlib Axes, default:

Az ábrát ábrázoló tengelyek. None átadása esetén az aktuális tengelyek lesznek használva (vagy generálva, ha szükséges).

draw_thresholdbool, default: True

Húzzon egy vízszintes vonalat D(i) == 4/n-nél, hogy könnyen azonosítani lehessen a legbefolyásosabbpontokat a végső regresszióban. Ez egy legendát is rajzol, amely megadja a küszöbérték feletti adatpontok százalékos arányát.

linefmtstr, default: ‘C0-‘

A stem plot függőleges vonalainak tulajdonságait meghatározó karakterlánc, általában ez egy szín vagy egy szín és egy vonalstílus. Az alapértelmezett egyszerűen egy egyszínű vonal a színciklus első színével.

markerfmtstr, default: ‘,’

A stem plot fejeiben lévő markerek tulajdonságait meghatározó karakterlánc. Az alapértelmezett “pixel”, pl. alapvetően nincs markerfej a szárplot tetején.

kwargsdict

Az alaposztálynak átadott kulcsszavas argumentumok, amelyek befolyásolhatják a végső megjelenítést (pl. méret vagy cím paraméterek).

Jegyzetek

A Cook-távolság nagyon hasonlít a DFFITS-hez, egy másik diagnosztikához, amelynek célja, hogy megmutassa, milyen befolyásos egy pont egy statisztikai regresszióban. Bár a Cook’s és a DFFITS számított értékei különböznek, fogalmilag azonosak, és létezik egy zárt formájú képlet az egyik értéknek a másikra való átváltására. Emiatt úgy döntöttünk, hogy a DFFITS helyett vagy mellett a Cook-távolságot implementáljuk.

Attribútumok distance_array, 1D

A Cook-távolság értéke minden egyes X-ben megadott példányhoz, pl. egy 1D tömb, amelynek alakja (X.shape,).

p_values_array, 1D

A Cook-távolság eloszlás F-tesztjéhez tartozó p-értékek. Egy 1Darray, amelynek alakja megegyezik distance_.

influence_threshold_float

Egy ökölszabály szerinti befolyásolási küszöbérték a kiugró értékek meghatározására a regressziósmodellben, It=4/n.

outlier_percentage_float

Azoknak az eseteknek a százalékos aránya, amelyek Cook-távolsága nagyobb, mint az influncethreshold, a százalék 0,0 <= p <= 100,0.

draw()¶

Elkészít egy szárdiagramot, ahol minden szár a példány Cook-távolsága az x tengelyen megadottindexen. Opcionálisan rajzol egy küszöbvonalat.

finalize()¶

Előkészíti a vizualizációt bemutatásra és jelentéskészítésre.

fit(X, y)¶

Kiszámítja X leverage-ét, és az asklearn.linear_model.LinearRegression reziduumaiból kiszámítja X minden egyes megfigyelésének Cook’s Distance-ét, azok p-értékeit és a megadott megfigyelések száma által meghatározott kiugró értékek számát.

Paraméterek Xarray-like, 2D

Az exogén tervezési mátrix, pl. a képzési adatok.

yarray-like, 1D

Az endogén válaszváltozó, pl. céladatok.

Returns selfCooksDistance

Fit visszaadja a megjelenítő példányt.

yellowbrick.regressor.influence.cooks_distance(X, y, ax=None, draw_threshold=True, linefmt=’C0-‘, markerfmt=’,’, show=True, **kwargs)¶

A Cook’s Distance egy mérték arra, hogy egy példány milyen hatással van egy regresszió kiszámítására, pl. ha a példányt eltávolítjuk, akkor az alapmodell becsült együtthatói jelentősen megváltoznak-e? Emiatt a Cook-távolságot általában a kiugró értékek kimutatására használják a standard OLS-regresszióban. Valójában egy általános ökölszabály az, hogy D(i) > 4/n egy jó küszöbérték a nagyon befolyásos pontok mint kiugró pontok meghatározásához, és ez a vizualizáló képes jelenteni az adatok azon százalékát, amely e küszöbérték felett van.

A Cook-távolság ezen implementációja Ordinary Least Squares regressziót feltételez, és ezért egy sklearn.linear_model.LinearRegression-t ágyaz be a motorháztető alá.A távolságot a vetítési mátrix nem fehérített tőkeáttételén keresztül számítják ki, amelyet a fit()-ban számolnak ki. Ennek a vizualizátornak az eredményei ezért hasonlóak, de nem olyan fejlettek, mint egy hasonló, statsmodeleket használó számítás. A befolyás kiszámítása más regressziós modellekhez leave one out validációt igényel, és költséges lehet a számítása.

See also

A regresszióban a kiugró értékek észleléséről, valamint a kiegyenlítő hatás és a befolyás kiszámításáról lásd: linear regression in python, outliers/leveragedetect by Huiming Song.

Paraméterek Xarray-like, 2D

Az exogén tervezési mátrix, pl. képzési adatok.

yarray-like, 1D

Az endogén válaszváltozó, pl. céladatok.

axmatplotlib Tengelyek, alapértelmezett:

A tengelyek, amelyeken az ábrát ábrázolni kell. None átadása esetén az aktuális tengelyek lesznek használva (vagy szükség esetén generálva).

draw_thresholdbool, default: True

Húzzon egy vízszintes vonalat D(i) == 4/n-nél, hogy könnyen azonosítani lehessen a legbefolyásosabbpontokat a végső regresszióban. Ez egy legendát is rajzol, amely megadja a küszöbérték feletti adatpontok százalékos arányát.

linefmtstr, default: ‘C0-‘

A stem plot függőleges vonalainak tulajdonságait meghatározó karakterlánc, általában ez egy szín vagy egy szín és egy vonalstílus. Az alapértelmezett egyszerűen egy egyszínű vonal a színciklus első színével.

markerfmt: str, default: ‘,’

A stem plot fejeiben lévő markerek tulajdonságait meghatározó karakterlánc. Az alapértelmezett “pixel”, pl. alapvetően nincs markerfej a szár plot tetején.

show: bool, default: True

Ha True, akkor meghívja a show()-t, ami viszont meghívja a plt.show()-t, azonban ebből a szignatúrából nem hívható meg a plt.savefig, sem aclear_figure. Ha False, egyszerűen meghívja a finalize()

kwargsdict

Az alaposztálynak átadott kulcsszó-argumentumok, amelyek befolyásolhatják a végső megjelenítést (pl. méret vagy cím paraméterek).

.

Vélemény, hozzászólás?

Az e-mail-címet nem tesszük közzé.