Beregning af atomtæthed

Kernel Density Estimation ( KDE ) er en ikke -  parametrisk metode til at estimere [ tætheden af ​​en tilfældig variabel . Kernedensitetsestimering er et dataudjævningsproblem, hvor en population udledes fra endelige datastikprøver . På nogle områder, såsom signalbehandling og matematisk økonomi , kaldes metoden også for Parzen-Rosenblatt-vinduemetoden . Det menes, at Emmanuel Parzen og Murray Rosenblatt uafhængigt af hinanden skabte metoden i dens nuværende form [1] [2] .

Definition

Lad være en en-dimensionel prøve af uafhængige identisk fordelte mængder udtrukket fra en fordeling med en ukendt tæthed ƒ . Vores opgave er at estimere formen af ​​funktionen ƒ . Dens kernetæthedsestimator er

hvor K er kernen , dvs. en ikke-negativ funktion, og h > 0 er en udjævningsparameter kaldet båndbredden . Kernen med indeks h kaldes den vægtede kerne og er defineret som . Intuitivt forsøger man at vælge h så lille som dataene tillader, men der er altid et valg mellem estimatorens bias og dens varians. Valg af båndbredde diskuteres mere detaljeret nedenfor.

Der er en række af de mest almindeligt anvendte kernefunktioner : homogen, trekantet, bi-vægtet, tre-vægtet, Epanechnikov, normal og andre. Epanechnikov-kernen er optimal i betydningen middelkvadratfejlen [3] , selvom effektivitetstabet for de før nævnte kerner er lille [4] . På grund af praktiske matematiske egenskaber bruges der ofte en normal kerne, hvis middelværdi er , hvor er standard normaldensitetsfunktionen.

Konstruktionen af ​​et kernedensitetsestimat finder en fortolkning i områder uden for tæthedsestimatet [5] . For eksempel, i termodynamik , er dette ækvivalent med mængden af ​​varme, der produceres, når varmeoperatørens kerner (de grundlæggende løsninger af varmeligningen ) er placeret ved hvert datapunkt x i . Lignende metoder bruges til at konstruere diskrete Laplace-operatører ved cloud-punkter til manifold-baseret læring .

Estimater af kernedensitet er tæt forbundet med histogrammer , men kan udstyres med egenskaber såsom glathed eller kontinuitet ved at vælge en passende kerne. For at se dette, lad os sammenligne konstruktionen af ​​histogrammet og kernedensitetsestimatet på disse 6 punkter:

en 2 3 fire 5 6
-2.1 -1.3 -0,4 1.9 5.1 6.2

For et histogram er den vandrette akse opdelt i underintervaller, der dækker dataområdet. I dette tilfælde har vi 6 søjler, hver med længde 2. Når datapunktet falder inde i søjlen, placerer vi et 1/12 højde rektangel. Hvis mere end et punkt falder ind i segmentet, placerer vi rektanglerne oven på hinanden.

For kernedensitetsestimatet placerer vi en normal kerne med en varians på 2,25 (vist med røde stiplede linjer) for hvert x i datapunkt . Kernerne summeres for at give et estimat af kernedensitet (solid blå kurve). Jævnheden af ​​kernedensitetsestimatet er tydelig sammenlignet med diskretheden af ​​histogrammet, da kernedensitetsestimaterne konvergerer hurtigere til den sande underliggende tæthed for kontinuerlige tilfældige variable [6] .

Valg af båndbredde

Kernebåndbredden er en fri parameter , der har stor indflydelse på estimeringsresultatet. For at vise denne effekt vil vi tage en pseudo-tilfældig prøve fra den sædvanlige normalfordeling (vist som blå søjler på strimmeldiagrammet på den vandrette akse). Den grå kurve repræsenterer den sande tæthed (normal tæthed med middelværdi 0 og varians 1). Til sammenligning er den røde kurve ikke glat nok , fordi den indeholder for mange tilfældige spidser, der opstår ved brug af en båndbredde h = 0,05, hvilket er for lille. Den grønne kurve er overudjævnet , fordi den anvendte båndbredde h = 2 skjuler strukturen væsentligt. Den sorte kurve med en båndbredde på h = 0,337 anses for at være optimalt udjævnet, da dens tæthedsestimat er tæt på den sande tæthed.

Det mest almindeligt anvendte optimalitetskriterium for at vælge denne parameter er den forventede tabsfunktion L 2 , også kaldet Mean Integrated Squared Error [ ] : 

Under svage antagelser om funktionerne ƒ og K ( ƒ er generelt en ukendt reel tæthedsfunktion) [1] [2] , MISE ( h )=AMISE( h ) + o(1/(nh) + h 4 ) , hvor o er "o" lille . AMISE står for "Asymptotisk MISE" (asymptotisk MISE), som består af to ledende medlemmer

hvor for funktionen g , , og ƒ'' er den anden afledede af ƒ . For at finde værdien h AMISE , hvor minimum AMISE er nået, er det nødvendigt at differentiere det tidligere udtryk for AMISE med hensyn til h og få en løsning fra følgende algebraiske ligning [7] :

eller

Formlerne til beregning af AMISE og h AMISE kan ikke bruges direkte, fordi de involverer en ukendt tæthedsfunktion ƒ eller dens anden afledede ƒ'' , så der er udviklet et stort antal automatiske databaserede metoder til valg af båndbredde. Mange anmeldelser har sammenlignet ydeevnen af ​​disse metoder [8] [9] [10] [11] [12] [13] [14] med den generelle konsensus om, at pluggbare samplingsfunktioner [5] [15] og krydsvalideringsfunktioner [ 16] [ 17] [18] er mest nyttige over en bred vifte af datasæt.

Substitution af enhver båndbredde h , der har den samme asymptotiske orden n −1/5 som h AMISE i AMISE, giver , hvor O  — "O" er stor . Det kan vises, at der under svage antagelser ikke kan være en ikke-parametrisk estimator, der konvergerer hurtigere end kerneestimatoren [19] . Bemærk, at hastigheden n −4/5 er mindre end den typiske konvergenshastighed for n − 1 parametriske metoder.

Hvis båndbredden ikke er fast og kan ændres afhængigt af placeringen af ​​enten størrelsen af ​​estimatet ( ballonestimator ) eller størrelsen af ​​prøven (punktvis estimator), opnås en kraftfuld metode, kaldet den adaptive kernel density estimeringsmetode .

Valget af båndbredde til et kernedensitetsestimat med en langsomt aftagende "hale" er en relativt vanskelig opgave [20] .

Tommelfingerregel for valg af båndbredde

Hvis grundlæggende Gauss-funktioner bruges til at tilnærme univariate data, og den estimerede underliggende tæthed er Gaussisk, er det optimale valg for h (dvs. båndbredden, der minimerer den gennemsnitlige akkumulerede kvadratfejl ) [21]

hvor er standardafvigelsen for prøven. Tilnærmelsen kaldes normalfordelingstilnærmelsen , Gauss-fordeling eller Silvermans (1986) tommelfingerregel . Selvom denne tommelfingerregel er beregningsmæssigt let at anvende, bør den bruges med forsigtighed, da den giver meget unøjagtige estimater, når tætheden ikke er tæt på det normale. Overvej for eksempel det bimodale gaussiske blandingsestimat:

fra en prøve med 200 point. Figuren nederst til højre viser den sande tæthed og to kernedensitetsestimater - den ene bruger en tommelfingerregel for båndvalg, og den anden bruger båndvalg baseret på løsning af ligning [5] [15] . Estimat baseret på tommelfingerreglen er for udjævnet. Matlab-scriptet bruger kde.m som eksempel og er givet nedenfor.

% Data randn ( ' frø' , 1 ) data =[ randn ( 100 , 1 ) - 10 ; randn ( 100 , 1 ) + 10 ]; % Blanding af to normalfordelinger %Rigtigt phi =@( x ) exp ( - .5 * x .^ 2 ) / sqrt ( 2 * pi ); % normal tæthed tpdf =@( x ) phi ( x + 10 ) / 2 + phi ( x - 10 ) / 2 ; % ægte tæthed % kerne h = std ( data ) * ( 4 / 3 / numel ( data ) ) ^ ( 1/5 ) ; % Båndbredde efter Silvermans tommelfingerregel kerne =@( x ) middel ( phi (( x - data ) / h ) / h ); % Nuklear densitet kpdf =@( x ) arrayfun ( kerne , x ); % element for element applikation %grund figur ( 2 ), clf , hold fast x = linspace ( -25 , + 25 , 1000 ) ; % linjetæthed plot ( x , tpdf ( x )) % Plot af ægte tæthed plot ( x , kpdf ( x )) % Kernedensitetsplot med tommelfingerregel kde ( data ) % Kerneldensitetsplot med løsning til ligningen for båndberegning

Forholdet til den karakteristiske funktion af tæthedsestimatoren

Givet en prøve , er det naturligt at vurdere den karakteristiske funktion som

Ved at kende den karakteristiske funktion kan man finde den tilsvarende sandsynlighedstæthed gennem Fourier-transformationsformlerne . Der er én vanskelighed ved at anvende denne inversionsformel, som er, at den fører til et divergerende integral, da estimatet er upålideligt for store t . For at undgå dette problem multipliceres estimatoren med dæmpningsfunktionen , som er 1 ved origo, og falder derefter til 0 ved uendelig. "Båndbreddeparameteren" h styrer, hvor meget vi forsøger at begrænse variationen af ​​funktionen . Især når h er lille, vil den være omtrent lig med én for stor t , hvilket betyder, at den forbliver praktisk talt uændret i den vigtigste region af t .

Den mest almindelige måde at vælge en funktion på er enten en homogen funktion , hvilket reelt betyder at afkorte integrationsintervallet i inversionsformlen til [−1/ h , 1/ h ] eller en Gauss-funktion . Når funktionen er valgt, kan inversionsformlen anvendes, og tæthedsestimatoren er

hvor K er Fourier-transformationen af ​​dæmpningsfunktionen . Så er kernedensitetsestimatoren den samme som den karakteristiske funktion af tæthedsestimatoren.

Statistiske implementeringer

En ufuldstændig liste over software, der implementerer kernetæthedsestimatorer:

  • I Analytica version 4.4 bruges udjævningsindstillingen sandsynlighedstæthedsfunktionen af ​​KDE, og for udtryk er indstillingen tilgængelig som en indbygget funktion.Pdf
  • I C / C++ sprog er FIGTree et bibliotek, der kan bruges til at beregne et kernedensitetsestimat ved hjælp af normale kerner. MATLAB interface tilgængelig.
  • I C++ er libagf et bibliotek til adaptiv kernedensitetsestimering .
  • I CrimeStat implementeres kernedensitetsestimering med fem forskellige kernefunktioner - normal, ensartet, fjerde orden, negativ eksponentiel og trekantet. Enkelt- og dobbeltkernedensitetsestimeringsprocedurer er tilgængelige. Kerneldensitetsestimering bruges også i Head Bang-interpolationsproceduren, til estimering af 2D Journey-to-crime-tæthedsfunktionen og til estimering af 3D Bayesian Journey-to-crime-estimatoren.
  • I ELKI frameworket , kan kernedensitetsfunktioner findes i pakkende.lmu.ifi.dbs.elki.math.statistics.kernelfunctions
  • I ESRI -produkter findes kernedensitetskortlægning i Spatial Analyst-værktøjssættet og bruger en 4. ordens (uvægtet) kerne.
  • Til Excel -programmet har Royal Society of Chemistry skabt en tilføjelse til udførelse af nuklear densitetsvurdering baseret på Analytical Methods Committee Technical Brief 4 .
  • I gnuplot implementeres et kernedensitetsestimat med muligheden smooth kdensity, datafilen kan indeholde vægten og båndbredden for hvert punkt, eller båndbredden kan indstilles automatisk [22] i henhold til "Silverman tommelfingerreglen" (se ovenfor).
  • I Haskell er kernedensitet implementeret i statistikpakken .
  • I IGOR Pro implementeres estimering af kernedensitet som en operation StatsKDE(tilføjet i Igor Pro version 7.00). Båndbredde kan specificeres eller estimeres af Silverman, Scott eller Bowmann og Azzalini gennemsnit. Kerneltyper: Epanechnikov, bi-vægtet, tri-vægtet, trekantet, gaussisk og rektangulær.
  • I Java-sproget giver Weka -pakken blandt andet weka.estimators.KernelEstimator .
  • I JavaScript visualiseringspakken D3.js KDE-pakken i pakken science.stats.
  • JMP -pakken kan bruge "Distributionsplatformen" til at generere et 1D-kernedensitetsestimat, og "Fit Y by X-platformen" kan bruges til at generere et 2D-kernedensitetsestimat.
  • Julia -sproget er estimering af kernedensitet implementeret i KernelDensity.jl-pakken .
  • I MATLAB implementeres estimering af kernedensitet gennem en funktion ksdensity(Statistics Toolbox). I 2018-udgivelsen af ​​MATLAB kan både båndbredden og kerneudjævneren specificeres , herunder andre muligheder, såsom at angive kernedensitetsgrænser. Alternativt er en gratis pakke til MATLAB, der implementerer automatisk båndbreddevalg [5] tilgængelig fra siden "MATLAB Central File Exchange" for
  • I Mathematica -systemet er den numeriske evaluering af kernefordelingen implementeret som funktionen SmoothKernelDistribution her , og den symbolske evaluering implementeres ved hjælp af funktionen KernelMixtureDistribution her , og begge implementeringer vælger båndbredden fra de præsenterede data.
  • Til Minitab - pakken oprettede Royal Society of Chemistry en makro til at foretage estimering af nukleartæthed baseret på deres analytiske metodekomite Technical Brief 4 .
  • I NAG biblioteket implementeres kernedensitetsestimering ved en procedure g10ba(tilgængelig i Fortran [24] og C [25] ).
  • I Nuklei- biblioteket fokuserer kernedensitetsmetoder i C++ på meloner fra den særlige euklidiske gruppe .
  • I Octave -systemet er estimering af kernedensitet implementeret som en funktion kernel_density(matematisk økonomipakke).
  • I Origin 2D-pakken kan et kernedensitetsplot plottes ved hjælp af pakkens brugergrænseflade, og koderne for de to funktioner Ksdensity for 1D og Ks2density for 2D kan tages i LabTalk , Python eller C.
  • I Perl kan implementeringen findes i Statistics-KernelEstimati-modulet
  • I PHP kan implementeringen findes i MathPHP-biblioteket
  • Der er mange implementeringer i Python : pyqt_fit.kde-modulet i PyQt-Fit-pakken , SciPy ( scipy.stats.gaussian_kdeog scipy.signal.parzen), Statsmodels ( KDEUnivariateog KDEMultivariate) og Scikit-learn ( KernelDensity) (se sammenligning [26] ). KDEpy understøtter vægtede data, og FFT-implementeringen er en størrelsesorden hurtigere end andre implementeringer.
  • I R-sproget implementeres dette gennem densityi basisdistributionen, gennem i KernSmooth-biblioteket , gennem bkdei AdaptGauss-biblioteket (til estimering af tætheden af ​​Pareto-fordelingen), gennem i ks-biblioteket , gennem og i evmix-biblioteket , i np-biblioteket (numeriske og kategoriske data), i biblioteket sm . For en funktionsimplementering , der ikke kræver nogen pakke eller bibliotek for at blive installeret, se kde.R . btb-biblioteket , designet til byanalyse, implementerer et kernedensitetsestimat via .ParetoDensityEstimationkdedkdendbckdennpudenssm.densitykde.Rkernel_smoothing
  • I SAS-systemet (program) , kan en procedure proc kdetil estimering af endimensionelle og todimensionelle nukleare tætheder anvendes.
  • I Stata -pakken er dette implementeret som kdensity[27] , f.eks histogram x, kdensity. Alternativt er Statas gratis KDENS-modul tilgængeligt her , som giver dig mulighed for at evaluere 1D- eller 2D-densitetsfunktioner.
  • I Apache Spark kan du bruge en klasse KernelDensity()(se den officielle dokumentation )

Se også

  • Kerne (statistik)
  • Nuclear Smoother
  • nuklear regression
  • Densitetsvurdering (med præsentation af andre eksempler)
  • Gennemsnitlig skiftprocedure
  • Multivariat kernedensitetsestimering
  • Adaptiv kernedensitetsvurdering

Noter

  1. 1 2 Rosenblatt, 1956 , s. 832.
  2. 1 2 Parzen, 1962 , s. 1065.
  3. Epanechnikov, 1969 , s. 153-158.
  4. Wand, Jones, 1995 .
  5. 1 2 3 4 Botev, Grotowski, Kroese, 2010 , s. 2916-2957.
  6. Scott, 1979 , s. 605-610.
  7. V. A. Epanechnikov, "Ikke-parametrisk estimering af multidimensionel sandsynlighedstæthed", Teor. Veroyatnost. og dens anvendelse, 14:1 (1969), 156-161; Teori Sandsynligvis. Appl. 14:1 (1969), 153-158 . www.mathnet.ru _ Hentet: 31. januar 2022.
  8. Park, Marron, 1990 , s. 66-72.
  9. Park, Turlach, 1992 , s. 251-270.
  10. Cao, Cuevas, Manteiga, 1994 , s. 153-176.
  11. Jones, Marron, Sheather, 1996 , s. 401-407.
  12. Sheather, 1992 , s. 225-250, 271-281.
  13. Agarwal, Aluru, 2010 , s. 575-597.
  14. Xu, Yan, Xu, 2015 , s. 28-37.
  15. 1 2 Sheather, Jones, 1991 , s. 683-690.
  16. Rudemo, 1982 , s. 65-78.
  17. Bowman 1984 , s. 353-360.
  18. Hall, Marron, Park, 1992 , s. 1-20.
  19. Wahba, 1975 , s. 15-29.
  20. Buch-Larsen, 2005 , s. 503-518.
  21. Silverman, 1986 , s. 48.
  22. Janert, 2009 , s. afsnit 13.2.2.
  23. Horová, Koláček, Zelinka, 2012 .
  24. ↑ Rutinedokument for Numerical Algorithms Group NAG Library: nagf_smooth_kerndens_gauss (g10baf) . NAG Library Manual, Mark 23 . Hentet: 16. februar 2012.
  25. ↑ Rutinedokument for Numerical Algorithms Group NAG Library: nag_kernel_density_estim (g10bac) (downlink) . NAG Library Manual, Mark 9 . Dato for adgang: 16. februar 2012. Arkiveret fra originalen 24. november 2011. 
  26. Vanderplas, Jake Kernel Density Estimation in Python (1. december 2013). Hentet: 12. marts 2014.
  27. https://www.stata.com/manuals13/rkdensity.pdf

Litteratur

  • Rosenblatt M. Bemærkninger om nogle ikke-parametriske skøn over en tæthedsfunktion // The Annals of Mathematical Statistics. - 1956. - T. 27 , no. 3 . - doi : 10.1214/aoms/1177728190 .
  • Parzen E. Om estimering af en sandsynlighedstæthedsfunktion og tilstand // The Annals of Mathematical Statistics . - 1962. - T. 33 , no. 3 . - doi : 10.1214/aoms/1177704472 . — .
  • Epanechnikov VA Ikke-parametrisk estimering af en multivariat sandsynlighedstæthed // Theory of Probability and its Applications. - 1969. - T. 14 . - doi : 10.1137/1114019 .
  • Wand MP, Jones MC Kernel Smoothing. — London: Chapman & Hall/CRC, 1995. — ISBN 0-412-55270-1 .
  • Botev ZI, Grotowski JF, Kroese DP Kernel density estimering via diffusion // Annals of Statistics . - 2010. - T. 38 , no. 5 . - doi : 10.1214/10-AOS799 . - arXiv : 1011.2602 .
  • Scott D. Om optimale og databaserede histogrammer // Biometrika. - 1979. - T. 66 , no. 3 . - doi : 10.1093/biomet/66.3.605 .
  • Park BU, Marron JS Sammenligning af datadrevne båndbreddevælgere // Journal of the American Statistical Association . - 1990. - T. 85 , no. 409 . - doi : 10.1080/01621459.1990.10475307 . — .
  • Park BU, Turlach BA Praktisk udførelse af flere datadrevne båndbreddevælgere (med diskussion)  // Computational Statistics. - 1992. - T. 7 . — S. 251–270 .
  • Cao R., Cuevas A., Manteiga WG En komparativ undersøgelse af flere udjævningsmetoder i tæthedsestimering // Computational Statistics and Data Analysis. - 1994. - T. 17 , no. 2 . - doi : 10.1016/0167-9473(92)00066-Z .
  • Jones MC, Marron JS, Sheather SJ En kort undersøgelse af båndbreddevalg til tæthedsestimering // Journal of the American Statistical Association. - 1996. - T. 91 , no. 433 . - doi : 10.2307/2291420 . — .
  • Sheather SJ Ydeevnen af ​​seks populære båndbreddeudvælgelsesmetoder på nogle rigtige datasæt (med diskussion) // Computational Statistics. - 1992. - T. 7 .
  • Agarwal N., Aluru NR En datadrevet stokastisk samlokaliseringstilgang til kvantificering af usikkerhed i MEMS  // International Journal for Numerical Methods in Engineering. - 2010. - T. 83 , no. 5 .
  • Xu X., Yan Z., Xu S. Estimering af vindhastighedssandsynlighedsfordeling ved diffusionsbaseret kernedensitetsmetode  // Electric Power Systems Research. - 2015. - T. 121 . — S. 28–37 .
  • Sheather SJ, Jones MC En pålidelig databaseret båndbreddeudvælgelsesmetode til estimering af kernedensitet // Journal of the Royal Statistical Society, Series B. - 1991. - V. 53 , no. 3 . — .
  • Rudemo M. Empirisk valg af histogrammer og kernedensitetsestimatorer // Scandinavian Journal of Statistics. - 1982. - T. 9 , no. 2 . — .
  • Bowman AW En alternativ metode til krydsvalidering til udjævning af tæthedsestimater // Biometrika. - 1984. - T. 71 , no. 2 . - doi : 10.1093/biomet/71.2.353 .
  • Hall P., Marron JS, Park BU Udjævnet krydsvalidering  // Sandsynlighedsteori og relaterede felter. - 1992. - T. 92 . — S. 1–20 . - doi : 10.1007/BF01205233 .
  • Wahba G. Optimale konvergensegenskaber af variable knude-, kerne- og ortogonale seriemetoder til tæthedsestimering  // Annals of Statistics . - 1975. - T. 3 , no. 1 . - doi : 10.1214/aos/1176342997 .
  • TINE Buch-Larsen. Kernedensitetsestimering for tunghalede fordelinger ved hjælp af Champernowne-transformationen // Statistik. - 2005. - T. 39 , no. 6 . - doi : 10.1080/02331880500439782 .
  • Silverman BW Tæthedsestimation til statistik og dataanalyse. — London: Chapman & Hall/CRC, 1986. — ISBN 0-412-24620-1 .
  • Philip K Janet. afsnit 13.2.2 Estimater af kernedensitet // Gnuplot i aktion: forståelse af data med grafer. - Connecticut, USA: Manning Publications, 2009. - ISBN 978-1-933988-39-9 .
  • Horová I., Koláček J., Zelinka J. Kernel Smoothing i MATLAB: Theory and Practice of Kernel Smoothing. - Singapore: World Scientific Publishing, 2012. - ISBN 978-981-4405-48-5 .

Links