Ophobningsloven, som præsenteret i de to foregående afsnit,
giver en simpel approksimation til beregning af standard error
på en transformeret måling. Approksimationen bygger på, at
funktionen, der indgår i beregningen, næsten er lineær i et
område, der dækker det meste af variationsområdet for input
til funktionen. I dette afsnit vil jeg beskrive en simuleringsmetode,
der kan bruges, når vi ikke stoler på approksimationen. Jeg starter med et simpelt eksempel for at illustrere ideerne.
Udgangspunktet er en måling af parameteren og en
tilhørende standard error . I forbindelse med
ophobningsloven forestiller vi os, at vi approksimativt har, at
er normalfordelt med middelværdi og en varians hvor
er et skøn over
Vores primære interesse er ikke
parameteren men derimod parameteren
For denne parameter har vi skønnet
og da har vi fra ophobningsloven,
at
Lad os som et konkret numerisk eksempel sige, at og
så får vi og
fra ophobningsloven, at
For at undersøge om denne værdi rammer rigtigt, ville det være optimalt
at simulere et stort antal (nSim)
observationer
fra en -fordeling og beregne spredningen (RMSE) på
de kvadrerede værdier det vil sige
med Denne optimale tilgang kan vi
ikke gennemføre, da og er ukendte. Vi gør i stedet det, at
i simulationsprocessen erstatter vi med og
med Vi simulerer således observationer
fra en
-fordeling og
beregner
med Hvis antallet af simulationer er stort,
får man en simuleret standard error omkring , som er 4 procent
over værdien 6.0 fra ophobningsloven. Lad os fortsætte med et andet simpelt eksempel, hvor parameteren
vi er interesseret i er , og hvor både parameter
og måling altid er positive. Lad os betragte samme
numeriske eksempel som ovenfor med og
Da
giver ophobningsloven
Simulerer vi nu igen nye målinger
som ovenfor, og beregner simuleret spredning som
med får vi tal, der varierer kraftigt
ved gentagelse af simuleringseksperimentet.
Den følgende tabel viser dette i den øverste del,
hvor der for hver værdi af nSim er lavet fire
gentagelser af simuleringseksperimentet.
Grunden til den kraftige variation er, at der blandt de nSim simulerede
værdier af vil være nogle få, der kommer tæt på nul,
hvorved vi får meget store værdier af (enten store positive
eller store negative). I simuleringen bliver vi nødt til at sikre
os, at vi ikke får værdier, der kommer for tæt på nul (alle værdier
skal være positive og holde sig borte fra nul). Her vil jeg
implementere dette krav ved kun at betragte situationer, hvor
, og i simuleringen tager
jeg kun værdier med, for hvilke
Alle de simulerede
værdier vil således være over Med dette
valg vil der cirka være procent af de oprindelige
simulerede værdier fra en -fordeling,
der frasorteres. Den nederste del i ovenstående tabel
viser resultatet, når der simuleres som just beskrevet. Vi kan se, at
vi får et stabilt resultat med en standard error på omkring 0.20.
Dette er noget over (relativt set) værdien 0.11 fra ophobningsloven,
og simuleringen giver her et vigtig korrektiv til resultatet fra
ophobningsloven. Den store forskel skyldes, at standard error for
er forholdsvis stor. Hvis vi ændrer denne fra 1.0 til 0.1,
giver ophobningloven og
simuleringseksperimentet giver også denne værdi.
5.5.1 Simuleret konfidensinterval
I de to eksempler ovenfor blev simuleringerne brugt til at
forbedre skønnet over standard error for det transformerede skøn
i tilfælde, hvor ophobningsloven ikke er præcis.
I tilfælde hvor ophobningsloven ikke er præcis, vil det
approksimative 95%-konfidensinterval
fra Resultat 5.1.1
ofte heller ikke
være præcist. Heldigvis kan vi bruge simuleringerne til også at
forbedre konfidensintervallet. For at forstå dette lad os først bemærke, at
konfidensintervallet ovenfor fremkommer ved at tage de værdier
af , for hvilke
Grunden til dette er, at fordelingen af
approksimativt er en
standard normalfordeling.
Forbedringen består i at erstatte og med værdier fundet ved
simuleringen, således
at der cirka er sandsynlighed 2.5 procent for at få værdier
udenfor til hver sin side. Til proceduren skal vi for hver simuleret
værdi , beregne standard error
via ophobninsloven, hvor vi bruger
I det første
eksempel ovenfor med giver dette
og i det andet eksempel med får vi
For hver simuleret værdi kan vi nu konstruere en standardiseret
-værdi på formen
Ideen er nu, at fordelingen af disse -værdier forhåbentligt ligner
fordelingen af Vi finder
derfor 2.5% og 97.5% fraktilerne, og ,
blandt -værdierne, og laver et nyt konfidensinterval bestående af de
værdier af for hvilke
Gennemføres proceduren i eksemplet med , og
får vi og og
det forbedrede konfidensinterval bliver
Dette skal sammenlignes med det oprindelige konfidensinterval
og med konfidensintervallet, hvor vi bruger den simulerede værdi for
standard error,
Resultat 5.5.1.
(Simuleret konfidensinterval)
Lad og være
2.5% og 97.5% fraktilerne blandt
det vil sige, at
2.5% af værdierne ligger under og 2.5% af værdierne
ligger over . Så er
et forbedret approksimativt 95%-konfidensinterval.
Ovenstående procedure til at forbedre henholdsvis standard error og
konfidensinterval for en transformeret måling kan også gennemføres
i et generelt setup, hvor er en funktion af
underliggende parametere, .
Jeg vil kun beskrive proceduren i situationen, hvor målingerne
er uafhængige, således at nye målinger
kan simuleres uafhængigt af hinanden som beskrevet ovenfor for en enkelt
måling. Følgende Resultat beskriver simulationsmetoden trin for trin.
Resultat 5.5.2.
(Algoritme til simulationsbaseret ophobninglov)
Til rådighed er målte værdier og
deres standard errors , , samt en
parameterfunktion Det antages at de
målinger er uafhængige.
Beregn og standard error
via ophobningsloven (hertil skal bruges
de partielt afledede af , ,
udregnet i ).
For simuleres nye "målte"
værdier Den 'te værdi
simuleres fra en
-fordeling, eller fra denne fordeling
begrænset til værdier større end
hvis den 'te måling
kun kan være positiv og der divideres med denne i funktionen
Udregn, for , de målte transformerede
værdier og
deres tilhørende standard error via
ophobningsloven (hertil indgår de partielt afledede af
udregnet i , og standard errors
).
Udregn simuleret standard error
Udregn standardiserede -værdier,
Find 2.5% og 97.5% fraktilerne, og , blandt
Konstruer det simulerede approksimative
95%-konfidensinterval for som
5.5.2 Implementering af simuleret konfidensinterval
Koden nedenfor kan bruges generelt til at lave et simulationsbaseret
konfidensinterval når de indgående variable er uafhængige. Man skal
to steder indsætte eksempelspecifikke dele. I den første
del angiver man først hvilke variable, der skal begrænses nedadtil,
i form af en liste med 1 og 0, hvor 1 betyder, at variablen skal begrænses.
Dernæst angiver man de målte værdier og deres standard errors. Formlen for
den transformerede værdi skal så angives, og de afledede af denne
med hensyn til de indgående variable, udregnet i de målte ærdier,
skal angives. I den anden eksempelspecifikke del skal igen angives
formlen for den transformerede værdi, nu udregnet for de simulerede
værdier. Den generelle kode eksemplificeres med Ohms lov
fra afsnit 5.2, Dette svarer
i det generelle setup til , målinger,
og . Vi betragter situationen med målte
værdier som i følgende tabel.
Prøv at bruge den ovenstående generelle kode på det simple eksempel
ovenfor med , og
Da vi i dividerer med
, ønsker vi at simulere denne således, at den holder sig positiv.
Vi tager derfor poslist=[1]. De målte værdier indskrives
i vektoren mu som [3],
og de tilhørende standard errors indskrives i vektoren
stds som [1.0].
Den transformerede værdi er
hatTheta=1/mu,
og den afledede er
dthetaDmu=np.array([-1/mu**2]). I den anden eksempelspecifikke del af koden bliver de
transformerede værdier
tildeTheta=1/muSim[:,0], og de afledede
beregnes som
dtildeDmu=np.array([-1/mu[:,0]**2]).