负二项式GLM与计数数据的对数转换:I型错误率增加


18

你们中有些人可能已经读过这篇不错的论文:

O'Hara RB,Kotze DJ(2010)不要对计数数据进行对数转换。《生态与进化方法》 1:18–122。克利克

在我的研究领域(生态毒理学)中,我们正在处理重复性较差的实验,并且GLM并未得到广泛使用。因此,我进行了类似于O'Hara&Kotze(2010)的模拟,但是模拟了生态毒理学数据。

功率模拟

我模拟了一个有一个对照组()和5个治疗组()的阶乘设计的数据。处理1中的丰度与对照()相同,处理2-5中的丰度是对照中的丰度的一半()。对于模拟,我改变了样本大小(3、6、9、12)和对照组的丰度(2、4、8,...,1024)。从具有固定色散参数()的负二项式分布中提取丰度。使用负二项式GLM和高斯GLM +对数转换的数据生成并分析了100个数据集。μ 1 - 5 μ 1 = μ Ç μ 2 - 5 = 0.5 μ C ^ θ = 3.91μcμ15μ1个=μCμ2-5=0.5μCθ=3.91

结果符合预期:GLM具有更大的功效,尤其是在采样的动物不多的情况下。 在此处输入图片说明 代码在这里。

类型I错误

接下来,我看了一眼错误。如上所述进行模拟,但是所有组具有相同的丰度()。μC=μ1个-5

但是,结果却不如预期: 在此处输入图片说明 与LM +变换相比,负二项式GLM显示出更大的I型误差。正如预期的那样,差异随着样本量的增加而消失。 代码在这里。

题:

与lm +转换相比,为什么I型错误会增加?

如果我们的数据差(样本量小,丰度低(许多零)),那么我们应该使用lm + transformation吗?此类实验通常使用小样本量(每次处理2-4个样本),因此不易增加。

虽然,否定。斌 可以证明GLM适用于此数据,lm +转换可以防止我们发生类型1错误。


1
这不是您要回答的主要问题的答案,而是读者需要注意的一点:除非您使两个过程的实际I型错误等效,否则比较功效是没有意义的。我总是可以通过解除I类错误来提高较低者的功率(在这种情况下为取原木并适合正常者)。另一方面,如果指定特定情况(样本大小,数量),则可以获得I类错误率(例如,通过仿真),因此可以算出要达到所需I类错误率的标称速率,因此它们的力量可比。
Glen_b-恢复莫妮卡2014年

您的绘图中的y轴值是否是100个数据集中的平均值?
shadowtalker 2014年

我要澄清一下我的意见:在统计数据本质上是离散的情况下,您不能完全控制I型错误率,但通常可以使I型错误率非常接近。在无法使它们足够接近以进行比较的情况下,使它们具有可比性的唯一方法是使用随机测试。
Glen_b-恢复莫妮卡2014年

@ssdecontrol:不,这只是数据集的比例(在100个数据集中),其中p <α
EDi

1
有两个问题:(i)逼近是渐近的,但不是无限的,所以逼近只是一个逼近-这是否存在离散性将是一个问题,并将导致显着性水平除了标称值(但如果是连续的,则可以调整);(ii)存在离散性的问题,如果您确实对其进行了调整,则会阻止您获得确切的显着性水平。ñ
Glen_b-恢复莫妮卡2014年

Answers:


17

这是一个非常有趣的问题。我检查了您的代码,没有立即发现明显的错字。

θθdrop1

大多数线性模型检验不需要您在原假设下重新计算模型。这是因为您可以单独使用替代假设下的参数估计和估计协方差来计算几何斜率(得分测试)和近似宽度(Wald测试)。

由于负二项式不是线性的,因此我认为您需要拟合一个空模型。

编辑:

我编辑了代码并得到以下信息: 在此处输入图片说明

此处编辑的代码为:https : //github.com/aomidpanah/simulations/blob/master/negativeBinomialML.r


但是我认为这drop1() 确实在内部重新拟合了零模型……
Ben Bolker 2014年

4
glm.nbθdrop1logLikgetS3method('logLik', 'negbin'

想再次+1,但我不能。真好
Ben Bolker 2014年

谢谢!我只是看着两者的代码drop1()lrtest()。您是对的,drop1.glm使用glm.fit会产生错误的偏差。没意识到我们不能drop1()glm.nb()
EDi

那么在负二项式模型中典型的得分和Wald检验是无效的吗?
shadowtalker 2014年

8

O'Hara和Kotze的论文(《生态学与进化的方法》 1:18-122)并不是一个很好的讨论起点。我最严重的担心是摘要中第4点的主张:

我们发现,除之外,这些转换的效果都很差。。..拟泊松模型和负二项式模型... [显示]偏差很小。

λθλ

λ

以下R代码说明了这一点:

x <- rnbinom(10000, 0.5, mu=2)  
## NB: Above, this 'mu' was our lambda. Confusing, is'nt it?
log(mean(x+1))
[1] 1.09631
log(2+1)  ## Check that this is about right
[1] 1.098612

mean(log(x+1))
[1] 0.7317908

或尝试

log(mean(x+.5))
[1] 0.9135269
mean(log(x+.5))
[1] 0.3270837

参数估计的规模非常重要!

λ

请注意,标准诊断在log(x + c)的范围内效果更好。c的选择可能没有太大关系;通常0.5或1.0才有意义。这也是研究Box-Cox转换或Box-Cox的Yeo-Johnson变体的更好的起点。[Yeo,I.和Johnson,R.(2000)]。进一步参见R的汽车包装中的powerTransform()帮助页面。R的gamlss包使得可以拟合负二项式类型I(常见变体)或II,或其他建模离散度和均值的其他分布,且幂变换链接为0(=对数,即,对数链接)或更大。拟合可能并不总是收敛。

示例:死亡人数与基本伤害 数据是针对到达美国大陆的命名大西洋飓风的。最新版本的R的DAAG软件包提供了数据(名称为hurricNamed)。数据的帮助页面包含详细信息。

稳健的对数线性与负二项式拟合

该图将使用鲁棒线性模型拟合获得的拟合线与通过将对数链接的负二项式拟合转换为用于图上y轴的log(count + 1)标度获得的曲线进行比较。(请注意,必须使用类似于log(count + c)的比例,正值为c,以在同一张图中显示点和负二项式拟合的拟合“线”。)请注意,存在较大的偏差对数刻度上的负二项式拟合很明显。如果人们假设计数的负二项式分布,则稳健的线性模型拟合在此比例上的偏差要小得多。在经典法线理论假设下,线性模型拟合将是无偏的。当我第一次创建上面的图表时,我发现偏差令人惊讶!曲线会更好地拟合数据,但差异在通常的统计变异性标准范围内。健壮的线性模型拟合对于量表低端的计数效果不佳。

注意---使用RNA-Seq数据的研究:比较两种样式的模型对于分析来自基因表达实验的计数数据非常重要。以下论文将使用log(count + 1)的健壮线性模型与负二项式拟合(如在Bioconductor包edgeR中)进行了比较。在最初考虑的RNA-Seq应用中,大多数计数都足够大,以至于适当加权的对数线性模型拟合效果非常好。

Law,CW,Chen,Y,Shi,W,Smyth,GK(2014)。Voom:精确的权重可为RNA-seq读数计数解锁线性模型分析工具。Genome Biology 15,R29。http://genomebiology.com/2014/15/2/R29

NB还有最近的论文:

Schurch NJ,Schofield P,GierlińskiM,Cole C,Sherstnev A,Singh V,Wrobel N,Gharbi K,Simpson GG,Owen-Hughes T,Blaxter M,Barton GJ(2016)。RNA-seq实验需要多少个生物复制品,您应该使用哪种差异表达工具?RNA http://www.rnajournal.org/cgi/doi/10.1261/rna.053959.115

有趣的是,使用线性模型拟合LIMMA包(如磨边机,从WEHI组)站起来,非常好(中流露出的偏见没有证据的意义上),相对于许多重复的结果,因为重复的号码是减少。

上图的R代码:

library(latticeExtra, quietly=TRUE)
hurricNamed <- DAAG::hurricNamed
ytxt <- c(0, 1, 3, 10, 30, 100, 300, 1000)
xtxt <- c(1,10, 100, 1000, 10000, 100000, 1000000 )
funy <- function(y)log(y+1)
gph <- xyplot(funy(deaths) ~ log(BaseDam2014), groups= mf, data=hurricNamed,
   scales=list(y=list(at=funy(ytxt), labels=paste(ytxt)),
           x=list(at=log(xtxt), labels=paste(xtxt))),
   xlab = "Base Damage (millions of 2014 US$); log transformed scale",
   ylab="Deaths; log transformed; offset=1",
   auto.key=list(columns=2),
   par.settings=simpleTheme(col=c("red","blue"), pch=16))
gph2 <- gph + layer(panel.text(x[c(13,84)], y[c(13,84)],
           labels=hurricNamed[c(13,84), "Name"], pos=3,
           col="gray30", cex=0.8),
        panel.text(x[c(13,84)], y[c(13,84)],
           labels=hurricNamed[c(13,84), "Year"], pos=1, 
           col="gray30", cex=0.8))
ab <- coef(MASS::rlm(funy(deaths) ~ log(BaseDam2014), data=hurricNamed))

gph3 <- gph2+layer(panel.abline(ab[1], b=ab[2], col="gray30", alpha=0.4))
## 100 points that are evenly spread on a log(BaseDam2014) scale
x <- with(hurricNamed, pretty(log(BaseDam2014),100))
df <- data.frame(BaseDam2014=exp(x[x>0])) 
hurr.nb <- MASS::glm.nb(deaths~log(BaseDam2014), data=hurricNamed[-c(13,84),])
df[,'hatnb'] <- funy(predict(hurr.nb, newdata=df, type='response'))
gph3 + latticeExtra::layer(data=df,
       panel.lines(log(BaseDam2014), hatnb, lwd=2, lty=2, 
           alpha=0.5, col="gray30"))    

2
感谢您的评论Maindonald先生。在过去的两年中,还有更多的论文(更多地关注假设检验,然后是偏见):Ives 2015,Warton等人2016,Szöcs2015。–
EDi

即使这一点有问题,也许这是一个很好的讨论起点?(我会更笼统地说,这是一个原因,不要过多地关注偏见,而应考虑类似RMSE...。 Warton纸...]
Ben Bolker

1
Warton等人(2016)指出,数据属性应成为选择的依据,这一点至关重要。分位数-分位数图是比较拟合细节的好方法。特别地,对于某些应用,在一个或另一个或两个极端处的配合可能很重要。零膨胀或障碍模型可以有效地完善零计数。从最高端看,正在讨论的任何模型都可能受到严重损害。值得赞赏的是,沃顿等人举了一个例子。我希望看到各种生态数据集之间的比较。
John Maindonald '16

但是在生态数据集中,下部的物种(=稀有物种)不是很有趣吗?应该不太难编译一些生态数据集并进行比较...
EDi

实际上,对于飓风死亡数据而言,负二项式模型似乎是损害类别的低端,不能令人满意。R的gamlss软件包具有易于将拟合分布的百分位数与数据的百分位数进行比较的功能:
John Maindonald

6

原始帖子反映了Tony Ives的论文:Ives(2015)。显然,重要性测试为参数估计提供了不同的结果。

John Maindonald解释了为什么估算有偏见,但是他对背景的无知令人讨厌-他批评我们证明了我们都同意的方法存在缺陷。许多生态学家盲目地进行对数变换,而我们试图指出这样做的问题。

这里有一个更细微的讨论:沃顿(2016)

Ives,AR(2015),要测试回归系数的显着性,请继续进行对数转换计数数据。方法,Ecol Evol,6:828-835。doi:10.1111 / 2041-210X.12386

Warton,DI,Lyons,M.,Stoklosa,J. and Ives,AR(2016),为计数数据选择LM或GLM测试时要考虑的三点。方法Ecol Evol。doi:10.1111 / 2041-210X.12552


欢迎来到简历。尽管有帮助,但此响应主要是“仅链接”类型的答案。链接确实会更改和取消链接。如果您要详细说明每个关键点,则对简历会有所帮助。
麦克·亨特

感谢您的回复。我认为沃顿等人的论文。讨论当前的讨论情况。
EDi

谢谢与欢迎!我已完全自由地添加了引用。
Scortchi-恢复莫妮卡

1
请概述新参考文献中提出的要点,并在有意义的地方将它们与原始问题联系起来。这是一个有价值的贡献,但是目前比对问题的答案更接近于对另一个答案的评论(例如,它应提供链接的上下文)。再加上一些上下文相关的句子将大大有助于该职位。
Glen_b-恢复莫妮卡

3
具体来说,我的评论针对O'Hara和Kotze论文中的第4点:“我们发现,除了……准泊松模型和负二项式模型……显示的偏差很小之外,变换的执行效果很差。” 对于高度正偏分布,模拟是对y尺度(计数)的预期平均值与log(y + c)尺度的预期平均值之间的比较的评论,仅此而已。负二项式参数lambda在y的尺度上是无偏的,而对数正态平均值在log(y + c)的尺度上是无偏的(在该尺度下为正态)。
约翰·Maindonald '16
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.