Mijn vraag heeft te maken met de relatie tussen alfa en bèta en hun definities in statistieken.

alpha = type I foutpercentage = significantieniveau in overweging dat de NULL-hypothese correct is

Beta = type II foutpercentage

Als alpha wordt verlaagd (specificiteit neemt toe als alpha = 1- specificiteit ), bèta-toename (gevoeligheid / vermogen neemt af naarmate beta = 1 – gevoeligheid / vermogen)

Welke invloed heeft een wijziging in alfa op bèta? Is er een lineair verband of niet? Is de verhouding alfa / bèta altijd hetzelfde, met andere woorden, de verhouding specificiteit / gevoeligheid is altijd hetzelfde? Zo ja, dan betekent dit dat we door het gebruik van een bonferroni-correctie “gewoon overschakelen naar een lagere gevoeligheid en een hogere specificiteit, maar dat we de gevoeligheid / specificiteitsverhouding niet veranderen. Is dat juist?

Update (case-specifieke vraag):

Voor een bepaald experimenteel ontwerp draaien we 5 lineaire modellen op de data. We hebben een True Positive Rate (gevoeligheid / kracht) op 0,8 en een True Negative Rate (specificiteit) op 0,7. (Laten we ons eens voorstellen dat we weten wat positief zou moeten zijn en wat niet.). Als we nu het significantieniveau corrigeren met Bonferroni tot 0,05 / 5 = 0,01. Kunnen we de resulterende True Positive Rate (gevoeligheid / kracht) en True Negatief tarief (specificiteit)?

Hartelijk dank voor uw hulp.

Antwoord

$ \ alpha $ en $ \ beta $ zijn gerelateerd. Ik zal proberen het punt te illustreren met een diagnostische test. Stel dat u een diagnostische test heeft die het niveau van een bloedmarker meet. Het is bekend dat mensen met een bepaalde ziekte lagere niveaus van deze marker hebben in vergelijking met gezonde mensen. Het is meteen duidelijk dat u een afkappunt moet beslissen waarde, waaronder een persoon wordt geclassificeerd als ziek, terwijl mensen met waarden boven deze grens als gezond worden beschouwd. Het is echter zeer waarschijnlijk dat de verdeling van de bloedmarker aanzienlijk varieert, zelfs binnen ziek en gezonde mensen. Sommige gezonde personen kunnen een zeer lage bloedmarkerwaarde hebben, ook al zijn ze volkomen gezond. En sommige zieke mensen hebben een hoge bloedmarkeringswaarde, ook al hebben ze de ziekte.

Er zijn er vier mogelijkheden die kunnen voorkomen:

  1. een zieke persoon wordt correct als ziek geïdentificeerd (true positive = TP)
  2. een zieke wordt ten onrechte als gezond geclassificeerd (false negatief = FN)
  3. een gezond persoon wordt correct geïdentificeerd als gezond (echt negatief = TN)
  4. een gezond persoon wordt ten onrechte als ziek geclassificeerd (vals positief = FP)

Deze mogelijkheden kunnen worden geïllustreerd met een 2×2 tabel :

 Sick Healthy Test positive TP FP Test negative FN TN 

$ \ alpha $ geeft het percentage fout-positieve resultaten aan, dat is $ \ alpha = FP / (FP + TN) $. $ \ beta $ is het vals-negatieve tarief, dat is $ \ beta = FN / (TP + FN) $. Ik heb een eenvoudig R script geschreven om de situatie grafisch te illustreren.

alphabeta <- function(mean.sick=100, sd.sick=10, mean.healthy=130, sd.healthy=10, cutoff=120, n=10000, side="below", do.plot=TRUE) { popsick <- rnorm(n, mean=mean.sick, sd=sd.sick) pophealthy <- rnorm(n, mean=mean.healthy, sd=sd.healthy) if ( side == "below" ) { truepos <- length(popsick[popsick <= cutoff]) falsepos <- length(pophealthy[pophealthy <= cutoff]) trueneg <- length(pophealthy[pophealthy > cutoff]) falseneg <- length(popsick[popsick > cutoff]) } else if ( side == "above" ) { truepos <- length(popsick[popsick >= cutoff]) falsepos <- length(pophealthy[pophealthy >= cutoff]) trueneg <- length(pophealthy[pophealthy < cutoff]) falseneg <- length(popsick[popsick < cutoff]) } twotable <- matrix(c(truepos, falsepos, falseneg, trueneg), 2, 2, byrow=T) rownames(twotable) <- c("Test positive", "Test negative") colnames(twotable) <- c("Sick", "Healthy") spec <- twotable[2,2]/(twotable[2,2] + twotable[1,2]) alpha <- 1 - spec sens <- pow <- twotable[1,1]/(twotable[1,1] + twotable[2,1]) beta <- 1 - sens pos.pred <- twotable[1,1]/(twotable[1,1] + twotable[1,2]) neg.pred <- twotable[2,2]/(twotable[2,2] + twotable[2,1]) if ( do.plot == TRUE ) { dsick <- density(popsick) dhealthy <- density(pophealthy) par(mar=c(5.5, 4, 0.5, 0.5)) plot(range(c(dsick$x, dhealthy$x)), range(c(c(dsick$y, dhealthy$y))), type = "n", xlab="", ylab="", axes=FALSE) box() axis(1, at=mean(pophealthy), lab=substitute(mu[H[0]]~paste("=",m, sep=""), list(m=mean.healthy)), cex.axis=1.5,tck=0.02) axis(1, at=mean(popsick), lab=substitute(mu[H[1]]~paste("=",m, sep=""), list(m=mean.sick)), cex.axis=1.5, tck=0.02) axis(1, at=cutoff, lab=substitute(italic(paste("Cutoff=",coff, sep="")), list(coff=cutoff)), pos=-0.004, tick=FALSE, cex.axis=1.25) lines(dhealthy, col = "steelblue", lwd=2) if ( side == "below" ) { polygon(c(cutoff, dhealthy$x[dhealthy$x<=cutoff], cutoff), c(0, dhealthy$y[dhealthy$x<=cutoff],0), col = "grey65") } else if ( side == "above" ) { polygon(c(cutoff, dhealthy$x[dhealthy$x>=cutoff], cutoff), c(0, dhealthy$y[dhealthy$x>=cutoff],0), col = "grey65") } lines(dsick, col = "red", lwd=2) if ( side == "below" ) { polygon(c(cutoff,dsick$x[dsick$x>cutoff],cutoff),c(0,dsick$y[dsick$x>cutoff],0) , col="grey90") } else if ( side == "above" ) { polygon(c(cutoff,dsick$x[dsick$x<=cutoff],cutoff),c(0,dsick$y[dsick$x<=cutoff],0) , col="grey90") } legend("topleft", legend=(c(as.expression(substitute(alpha~paste("=", a), list(a=round(alpha,3)))), as.expression(substitute(beta~paste("=", b), list(b=round(beta,3)))))), fill=c("grey65", "grey90"), cex=1.2, bty="n") abline(v=mean(popsick), lty=3) abline(v=mean(pophealthy), lty=3) abline(v=cutoff, lty=1, lwd=1.5) abline(h=0) } #list(specificity=spec, sensitivity=sens, alpha=alpha, beta=beta, power=pow, positiv.predictive=pos.pred, negative.predictive=neg.pred) c(alpha, beta) } 

Laten we eens kijken naar een voorbeeld. We gaan ervan uit dat het gemiddelde niveau van de bloedmarker onder de zieke mensen 100 is met een standaarddeviatie van 10. Bij de gezonde mensen is het gemiddelde bloedniveau 140 met een standaarddeviatie van 15. De clinicus stelt de grenswaarde vast op 120.

alphabeta(mean.sick=100, sd.sick=10, mean.healthy=140, sd.healthy=15, cutoff=120, n=100000, do.plot=TRUE, side="below") Sick Healthy Test positive 9764 901 Test negative 236 9099 

Beta en alpha met een grenswaarde van 120

Je ziet dat de gearceerde gebieden staan in een relatie met elkaar. In dit geval $ \ alpha = 901 / (901+ 9099) \ circa 0,09 $ en $ \ beta = 236 / (236 + 9764) \ circa 0,024 $. Maar wat gebeurt er als de clinicus had de cutoff anders ingesteld? Laten we hem een beetje lager zetten, op 105 en kijken wat er gebeurt.

 Sick Healthy Test positive 6909 90 Test negative 3091 9910 

Cutoff 105

Onze $ \ alpha $ is nu erg laag omdat bijna geen gezonde mensen als ziek worden gediagnosticeerd. Maar onze $ \ beta $ is gestegen, omdat zieke mensen met een hoge bloedmarkeringswaarde nu ten onrechte als gezond worden geclassificeerd.

Laten we tot slot kijken hoe $ \ alpha $ en $ \ beta $ veranderen voor verschillende cutoffs:

cutoffs <- seq(0, 200, by=0.1) cutoff.grid <- expand.grid(cutoffs) plot.frame <- apply(cutoff.grid, MARGIN=1, FUN=alphabeta, mean.sick=100, sd.sick=10, mean.healthy=140, sd.healthy=15, n=100000, do.plot=FALSE, side="below") plot(plot.frame[1,]~cutoffs, type="l", las=1, xlab="Cutoff value", ylab="Alpha/Beta", lwd=2, cex.axis=1.5, cex.lab=1.2) lines(plot.frame[2,]~cutoffs, col="steelblue", lty=2, lwd=2) legend("topleft", legend=c(expression(alpha), expression(beta)), lwd=c(2,2),lty=c(1,2), col=c("black", "steelblue"), bty="n", cex=1.2) 

Plot van alfa en bèta met verschillende grenswaarden

U kan meteen zien dat de verhouding $ \ alpha $ en $ \ beta $ niet constant is. Wat ook erg belangrijk is, is de effectgrootte. In dit geval zou dit het verschil zijn in de gemiddelde bloedmarkerniveaus tussen zieke en gezonde mensen. Hoe groter het verschil, hoe gemakkelijker de twee groepen kunnen worden gescheiden door een cutoff:

Perfect cutoff

Hier hebben we een ” perfecte “test in de zin dat de cutoff van 150 de zieke onderscheidt van de gezonde.


Bonferroni-aanpassingen

Bonferroni-aanpassingen verminderen de $ \ alpha $ -fout, maar vergroten de type II-fout ($ \ beta $) .Dit betekent dat de fout bij het nemen van een vals-negatieve beslissing groter wordt, terwijl vals-positieven worden geminimaliseerd. Daarom wordt de Bonferroni-aanpassing vaak conservatief genoemd. In de bovenstaande grafieken ziet u hoe de $ \ beta $ toenam toen we de cutoff verlaagden van 120 naar 105: hij steeg van $ 0,02 $ naar $ 0,31 $. Tegelijkertijd $ \ alpha $ daalde van $ 0,09 $ naar $ 0,01 $.

Reacties

  • @COOLSerdash Wauw leuk antwoord! Bedankt. In jouw voorbeeld de keuze van de een significant niveau kan worden gedaan op bekende verdelingen. In de biologie kunt u bijvoorbeeld de verdeling van uw afhankelijke variabele niet weten als de behandeling effect heeft. Met andere woorden, door een significantieniveau te kiezen, kiest u het fout-positieve percentage, maar u hebt bijna geen idee hoe het percentage fout-negatief wordt ingesteld. Omdat u eigenlijk geen idee hebt hoe het percentage waar-positief en negatief wordt ingesteld. Is dat correct?
  • @ Remi.b Bedankt. Ik denk dat u gelijk hebt. Meestal je kiest gewoon $ \ alpha $ als significantieniveau of doet eerder een powerberekening (door aannames te doen over de effectgrootte, $ \ alpha $ a nd vermogen ($ 1- \ beta $). Maar je ‘ heeft gelijk: je kunt $ \ alpha $ beheren door ervoor te kiezen, maar $ \ beta $ is vaak onbekend. Dit artikel is een heel goed startpunt over $ p $ -waarden en wat $ \ alpha $ -niveaus echt betekenen.

Answer

Voor anderen in de toekomst:

In de schatting van de steekproefomvang wordt het Ztotaal berekend door de Z die overeenkomt met alpha op te tellen en Z komt overeen met vermogen (1-beta). Dus wiskundig gezien, als de steekproefomvang constant wordt gehouden, betekent het verhogen van Z voor alfa dat je de Z voor vermogen verlaagt met DEZELFDE hoeveelheid, bijv. Door Zalpha te verhogen van 0,05 naar 0,1, wordt Zpower met 0,05 verlaagd.

voor alfa is tweezijdig, terwijl de Z voor bèta eenzijdig is. Dus terwijl de Z-waarde met hetzelfde bedrag verandert, verandert de waarschijnlijkheid% waarmee deze Z-waarde overeenkomt niet met hetzelfde bedrag.

Voorbeeld:

5% alpha ( 95% betrouwbaarheid) met 80% vermogen (20% bèta) geeft dezelfde steekproefomvang als

20% alfa (80% vertrouwen) met 93,6% vermogen (6,4% bèta) in plaats van het 95% vermogen dat we zou hebben als de relatie 1: 1 was.

Answer

Er is geen algemene relatie tussen alpha en beta.

Het hangt allemaal af van uw test, neem het simpele voorbeeld:

(Wikipedia)

In informeel gebruik kan type I-fout worden gezien als “een onschuldig persoon veroordelen” en type II-fout “een schuldige vrij laten gaan”.

Een jury kan ernstig zijn: geen type II-fout, een type IA-jury kan “vriendelijk” zijn: geen type I maar een type II A-jury kan normaal zijn: sommige type I en sommige type II Een jury kan perfect zijn: geen fout

In de praktijk zijn er twee antagonistische effecten:

Wanneer de kwaliteit van de test omhoog gaat, t ype I en type II-fout nemen tot een bepaald punt af. Wanneer een jury verbetert, heeft hij de neiging om een beter oordeel te vellen over zowel onschuldige als schuldige mensen.

Na een bepaald punt duikt het onderliggende probleem op in de opbouw van de test. Type I of II zijn belangrijker voor degene die de test uitvoert. Met het juryvoorbeeld zijn type I-fouten belangrijker en daarom is het wetsproces gebouwd om type I te vermijden. Als er enige twijfel is, is de persoon vrij. Intuïtief leidde dit tot een toename van type II-fouten.

Betreffende Bonferroni:

(nogmaals Wikipedia)

Bonferroni-correctie controleert alleen de kans op valse positieven. De correctie gaat gewoonlijk ten koste van het vergroten van de kans op het produceren van vals-negatieven, en bijgevolg het verminderen van het statistische vermogen. Bij het testen van een groot aantal hypothesen kan dit resulteren in grote kritische waarden.

Opmerkingen

  • Bedankt voor uw antwoord, het is nuttig maar toch iets is mij niet duidelijk. Ik heb mijn bericht bijgewerkt door een nieuwe vraag toe te voegen.

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *