Негативно-біноміальний GLM проти перетворення журналу для даних підрахунку: підвищений показник помилок типу I


18

Хтось із вас, можливо, прочитав цей приємний документ:

O'Hara RB, Kotze DJ (2010) Не записуйте дані про кількість перетворень. Методи екології та еволюції 1: 118–122. клацати .

У моїй галузі досліджень (екотоксикологія) ми маємо справу з погано повторюваними експериментами, і ГЛМ не використовуються широко. Тому я зробив аналогічне моделювання, як O'Hara & Kotze (2010), але наслідував екотоксикологічні дані.

Моделювання потужності :

Я імітував дані факторної конструкції з однією контрольною групою ( ) та 5 групами лікування ( ). Залишок у лікуванні 1 була ідентичною контролі ( ), достаток у лікуванні 2-5 становив половину кількості в контролі ( ). Для моделювання я варіював розмір вибірки (3,6,9,12) та чисельність у контрольній групі (2, 4, 8, ..., 1024). Сукупність отримана з негативних біноміальних розподілів з фіксованим параметром дисперсії ( ). Було створено та проаналізовано 100 наборів даних за допомогою негативного біноміального GLM та гауссових даних, перетворених GLM +.μcμ15μ1=μcμ25=0.5μcθ=3.91

Результати, як очікували: ГЛМ має більшу потужність, особливо коли відбирали не багато тварин. введіть тут опис зображення Код тут.

Помилка I типу :

Далі я переглянув помилку типу 1. Моделювання проводили як вище, проте всі групи мали однакове чисельність ( μc=μ15 ).

Однак результати не такі, як очікувалося: введіть тут опис зображення негативний біноміальний GLM виявив більшу помилку типу I порівняно з трансформацією LM +. Як очікувалося, різниця зникала зі збільшенням обсягу вибірки. Код тут.

Питання:

Чому виникає збільшена помилка типу I порівняно з перетворенням lm +?

Якщо ми маємо погані дані (невеликий розмір вибірки, низький достаток (багато нулів)), чи слід тоді використовувати lm + перетворення? Невеликі розміри зразків (2-4 на обробку) характерні для таких експериментів і їх не можна легко збільшити.

Хоча, нег. бункер GLM може бути виправданий як такий, що відповідає цим даним, перетворення lm + може перешкодити нам помилок типу 1.


1
Не відповідь на ваше головне запитання, але щось, що слід відзначити читачам: якщо ви не зробите фактичну помилку типу I еквівалентною для двох процедур, порівняння потужності не має сенсу; Я завжди можу підвищити потужність для нижньої (у цьому випадку беруть журнали та відповідають нормальній), скасовуючи помилку типу I. З іншого боку, якщо ви вкажете конкретну ситуацію (розмір вибірки, достаток), ви можете отримати рівень помилки I типу (наприклад, за допомогою моделювання), і таким чином опрацювати, яку номінальну швидкість випробувати для досягнення бажаного показника помилок типу I , тому їх потужність стає порівнянною.
Glen_b -Встановити Моніку

Чи середнє значення осі у ваших графіках у 100 наборах даних?
shadowtalker

Я повинен уточнити свій коментар: у випадку, коли статистика за своєю суттю дискретна, ви не маєте ідеального контролю рівня помилок типу I, але, як правило, ви можете зробити досить низькими показники помилок типу I. У ситуаціях, коли ви не можете їх зблизити, щоб порівняти, єдиний спосіб зробити їх порівнянними - це рандомізовані тести.
Glen_b -Встановіть Моніку

α

1
н

Відповіді:


17

Це надзвичайно цікава проблема. Я переглянув ваш код і не можу знайти очевидних друкарських помилок.

θθdrop1

Більшість тестів для лінійних моделей не вимагає від вас перерахування моделі під нульовою гіпотезою. Це пояснюється тим, що ви можете обчислити геометричний нахил (тестовий бал) та наблизити ширину (тест Вальда), використовуючи лише параметри оцінки та розрахункової коваріації лише за альтернативної гіпотези.

Оскільки негативний двочлен не є лінійним, я думаю, вам знадобиться підходити до нульової моделі.

Редагувати:

Я відредагував код і отримав наступне: введіть тут опис зображення

Тут відредагований код: https://github.com/aomidpanah/simulations/blob/master/negativeBinomialML.r


Але я думаю, що drop1() це все -таки підганяє нульову модель ...
Бен Болкер

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

хотів би ще раз поставити +1, але я не можу. Приємно.
Бен Болкер

Спасибі! Я просто подивився код обох drop1()і lrtest(). Ви маєте рацію, drop1.glmвикористовує, glm.fitщо дає неправильне відхилення. Чи не знав , що ми не можемо використовувати drop1()з glm.nb()!
EDi

Тож типовий бал та тести Вальда є недійсними в негативній біноміальній моделі?
shadowtalker

8

Документ О'Хара та Коце (Методи екології та еволюції 1: 118–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

Шкала, за якою оцінюються параметри, має велике значення!

λ

Зауважте, що стандартна діагностика працює краще за шкалою журналу (x + c). Вибір c може не мати великого значення; часто 0,5 або 1,0 мають сенс. Також є кращою відправною точкою для дослідження трансформацій Box-Cox або варіанту Yeo-Johnson Box-Cox. [Єо, І. та Джонсон, Р. (2000)]. Далі див. Сторінку довідки щодо powerTransform () в автомобільному пакеті R. Пакет R Gamlss дає можливість встановити негативні біноміальні типи I (загальна різноманітність) або II, або інші розподіли, що моделюють дисперсію, а також середнє значення, за допомогою ланок перетворення потужності 0 (= log, тобто посилання на журнал) або більше . Підходи можуть не завжди сходитися.

Приклад: Дані про смерть проти базових ушкоджень призначені для ураганів Атлантичного океану, які дійшли до материка США. Дані доступні (ім'я hurricNamed ) з недавнього випуску пакету DAAG для R. На сторінці довідки щодо даних є деталі.

Міцний логлінний та негативний біноміальний примір

Графік порівнює пристосовану лінію, отриману з використанням міцної лінійної моделі пристосування, з кривою, отриманою шляхом перетворення від'ємного біноміального пристосування з посиланням на журнал на шкалу журналу (кількість + 1), що використовується для осі у на графіку. (Зверніть увагу, що ви повинні використовувати щось схоже на шкалу журналу (count + c), з позитивною c, щоб показати точки і приталену "лінію" від негативної біноміальної підгонки на тому ж графіку.) Зауважте, велике зміщення, яке є очевидно для негативного біноміального прилягання в масштабі журналу. Надійна лінійна модель набагато менш упереджена в цьому масштабі, якщо припускати негативний біноміальний розподіл для підрахунків. Лінійна модель придатна була б неупередженою при класичних припущеннях нормальної теорії. Я виявив ухил дивовижним, коли вперше створив те, що по суті був вищевказаним графіком! Крива краще відповідатиме даним, але різниця знаходиться в межах звичайних стандартів статистичної мінливості. Надійна лінійна модель відповідає поганій роботі для підрахунку в нижньому кінці шкали.

Примітка --- Дослідження з даними РНК-Seq: Порівняння двох стилів моделі було цікавим для аналізу даних підрахунку експериментів з експресією генів. У наступному документі порівнюється використання надійної лінійної моделі, що працює з журналом (count + 1), із використанням негативних біноміальних припадків (як у краю пакета Bioconductor ). Більшість підрахунків у застосуванні RNA-Seq, яке в першу чергу мається на увазі, є досить великими, що належним чином зважена логічна лінійна модель дуже добре працює.

Закон, CW, Chen, Y, Shi, W, Smyth, GK (2014). Voom: точні ваги розблокують інструменти аналізу лінійних моделей для підрахунку зчитування РНК-послідовності. Геологія Біологія 15, R29. http://genomebiology.com/2014/15/2/R29

NB також нещодавній документ:

Schurch NJ, Schofield P, Gierliński M, Cole C, Sherstnev A, Singh V, Wrobel N, Gharbi K, Simpson GG, Owen-Hughes T, Blaxter M, Barton GJ (2016). Скільки біологічних повторів потрібно в експерименті з послідовності РНК та який інструмент диференціальної експресії слід використовувати? РНК http://www.rnajournal.org/cgi/doi/10.1261/rna.053959.115

Цікаво, що лінійна модель підходить з використанням пакету limma (наприклад, edgeR , з групи 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
Дякуємо за Ваш коментар, пане Маіндональд. За останні два роки було також ще кілька робіт (приділяючи більше уваги тестуванню гіпотез, потім упередженості): Ives 2015, Warton et al 2016, Szöcs 2015.
EDi

можливо, це хороша відправна точка для обговорення, навіть якщо саме ця точка є проблематичною? (Я б більше заперечував, що це причина не надто зосереджуватися на упередженості, а скоріше розглядати щось на зразок RMSE ... [відмова від відповідальності, я останнім часом не читав цих робіт, і я читав лише конспект папір
Уортона

1
Вартон та ін (2016) стверджують, що властивості даних мають стати підставою для вибору, є вирішальним. Квантильно-квантильні сюжети - хороший спосіб порівняти деталі пристосувань. Зокрема, придатність до тієї чи іншої або обох крайнощів може бути важливою для деяких застосувань. Моделі з надутими чи перешкодами можуть бути ефективним доповненням для правильного підрахунку нуля. У верхній крайній частині будь-яка з обговорюваних моделей може бути серйозно порушена. Вартон та інші, похвально, мають один приклад. Мені хотілося б порівняти широкий спектр екологічних наборів даних.
Джон Маіндональд

Але хіба в екологічних наборах даних цікаві не види нижньої частини (= рідкісні види)? Не повинно бути занадто важким для складання деяких екологічних наборів даних та порівняння ...
EDi

Власне, саме для низьких показників категорії пошкоджень негативна біноміальна модель видається, за даними про смерть урагану, як мінімум задовільною. У пакеті gamlss R є функція, яка дозволяє легко порівнювати центили встановленого дистрибутива з центилами даних:
Джон Маіндональд,

6

Оригінальна публікація відображає папір Тоні Івеса: Ives (2015) . Зрозуміло, що тестування значимості дає різні результати для оцінки параметрів.

Джон Маіндональд пояснює, чому оцінки є необ'єктивними, але його незнання щодо тла дратує - він критикує нас за те, що він показав, що метод, за яким ми всі погоджуємось, є недосконалим. Багато екологів роблять наосліп трансформацію журналу, і ми намагалися вказати на проблеми з цим.

Тут є більш нюансована дискусія: Warton (2016)

Ives, AR (2015). Для перевірки значущості коефіцієнтів регресії продовжуйте дані лічильників та перетворення. Методи Екол Евол, 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


Ласкаво просимо в CV. Хоча корисна, ця відповідь здебільшого відповідає "лише посилання". Посилання змінюються та скасовуються. Більш корисно було б резюме, якби ви детальніше зупинилися на ключових моментах у кожному з них.
Майк Хантер

Дякуємо за відповідь. Я думаю, що стаття Warton et al. монети поточного стану обговорення.
EDi

Дякуємо та вітаємо! Я сміливо додав посилання в повному обсязі.
Scortchi

1
Будь ласка, викладіть основні моменти, які висловлюються в нових посиланнях, і де це має сенс, також відновіть їх до початкового питання. Це цінний внесок, але в даний час ближче до коментаря до іншої відповіді, ніж до відповіді на питання (який, наприклад, повинен містити контекст для посилань ). Кілька додаткових пропозицій контексту допомогли б публікації суттєво.
Glen_b -Встановіть Моніку

3
Зокрема, мої коментарі стосуються пункту 4 статті "О'Хара та Коце": "Ми виявили, що трансформації пройшли погано, за винятком ... Квазі-Пуассона та негативні біноміальні моделі ... [показали] невелику зміщення". Моделювання - це коментар щодо порівняння між очікуваною середньою шкалою y (відліків), порівняно з очікуваною середньою шкалою log (y + c), для сильно позитивного косого розподілу, не більше того. Від'ємний біноміальний параметр лямбда є неупередженим за шкалою y, тоді як середньо-нормальне середнє значення є неупередженим (при нормальності за цією шкалою) за шкалою log (y + c).
Джон Маіндональд
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.