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


10

Я маю бінарну логістичну регресійну модель з DV (хвороба: так / ні) та 5 предикторів (демографічні показники [вік, стать, куріння тютюну (так / ні)]], медичний індекс (порядковий) та одне випадкове лікування [так / ні " ]). Я також моделював усі умови двосторонньої взаємодії. Основні змінні зосереджені і немає ознак мультиколінеарності (всі ВІФ <2,5).

У мене є кілька питань:

  1. Чи вигідніше завантажувальне обладнання порівняно з моєю єдиною моделлю? якщо так,

  2. яку завантажену модель слід вибрати? Я просто хотів побачити, чи дотримуються алгоритми завантажувальної програми випадкові методи створення нових зразків, чи вони мають жорсткі алгоритми. Тому я повторно збирався 1000 разів у кожній спробі (тому у мене є кілька завантажених моделей, кожна з 1000 випробувань). Однак кожен раз коефіцієнти завантаженої моделі відрізняються (хоча кількість випробувань постійно 1000). Тож мені цікаво, кого я повинен обрати для свого звіту? Деякі зміни є незначними і не впливають на значення моїх коефіцієнтів, але деякі роблять деякі мої коефіцієнти незначними (лише ті, у яких значення Р, близькі до 0,05 в оригінальній моделі, наприклад, змінюються на 0,06).

  3. Чи варто вибрати більшу кількість, наприклад, 10 000? Як я можу визначити цю межу?

  4. Знову я повинен в першу чергу завантажуватися? Якщо його результати щоразу змінюються, чи можу я покластися на його результати?

  5. Чи є на увазі якісь інші ідеї, які можуть допомогти мені у моєму випадку?

Велике спасибі

Відповіді:


21

Запуск завантаження - це метод перекомпонування, який дозволяє оцінити розподіл вибірки коефіцієнтів регресії і, таким чином, обчислити стандартні помилки / довірчі інтервали ваших коефіцієнтів регресії. Ця публікація має приємне пояснення. Для обговорення того, скільки реплікацій вам потрібно, перегляньте цю публікацію.

  1. Непараметрична завантажувальна програма повторно проводить вибірки і випадковим чином малює ваші спостереження із заміною (тобто одні спостереження проводяться лише один раз, інші кілька разів, а інші взагалі ніколи), потім обчислюють логістичну регресію і зберігають коефіцієнти. Це повторюєтьсяnразів. Таким чином, ви отримаєте 10 000 різних коефіцієнтів регресії. Ці коефіцієнти 10 000 можуть бути використані для обчислення їх достовірності. Оскільки використовується генератор псевдовипадкових чисел, ви можете просто встановити насіння на довільне число, щоб забезпечити кожен раз такі самі результати (див. Приклад нижче). Щоб дійсно мати стабільні оцінки, я б запропонував більше 1000 реплікацій, можливо, 10 000. Ви можете запустити завантажувальний механізм кілька разів і побачити, чи змінюються оцінки сильно, чи будете ви робити 1000 чи 10 000 реплікацій. Простий англійською мовою: ви повинні робити реплікації до досягнення конвергенції. Якщо ваші оцінки завантаження відрізняються між вашими оцінками та спостережуваною єдиною моделлю, це може означати, що спостережувана модель не відображає належним чином структуру вашої вибірки.bootR, наприклад, викладає "упередженість", яка є різницею між коефіцієнтами регресії вашої єдиної моделі та середнім значенням зразків завантажувальної програми.
  2. Виконуючи завантажувальну програму, вас цікавить не один зразок завантаження, а розподіл статистики (наприклад, коефіцієнти регресії) на, скажімо, 10'000 зразків завантажувальної програми.
  3. Я б сказав, що 10'000 краще, ніж 1000. З сучасними комп’ютерами це не повинно створювати проблем. У наведеному нижче прикладі, щоб взяти 10 000 зразків, моєму ПК знадобилося близько 45 секунд. Це залежить від розміру вашої вибірки. Чим більший розмір вашої вибірки, тим більшою має бути кількість повторень, щоб забезпечити врахування кожного спостереження.
  4. Що ви маєте на увазі "результати змінюються щоразу"? Нагадаємо, що на кожному етапі завантаження спостереження знову додаються із заміною. Тому, швидше за все, ви отримаєте дещо інші коефіцієнти регресії, оскільки ваші спостереження відрізняються. Але, як я вже говорив: вас не дуже цікавить результат однієї вибірки завантаження. Коли кількість реплікацій достатньо висока, завантажувальний пристрій повинен отримувати дуже схожі довірчі інтервали та точні оцінки кожного разу.

Ось приклад у R:

library(boot)

mydata <- read.csv("http://www.ats.ucla.edu/stat/data/binary.csv")

head(mydata)

mydata$rank <- factor(mydata$rank)

my.mod <- glm(admit ~ gre + gpa + rank, data = mydata, family = "binomial")

summary(my.mod)

Coefficients:
             Estimate Std. Error z value Pr(>|z|)    
(Intercept) -3.989979   1.139951  -3.500 0.000465 ***
gre          0.002264   0.001094   2.070 0.038465 *  
gpa          0.804038   0.331819   2.423 0.015388 *  
rank2       -0.675443   0.316490  -2.134 0.032829 *  
rank3       -1.340204   0.345306  -3.881 0.000104 ***
rank4       -1.551464   0.417832  -3.713 0.000205 ***
---
Signif. codes:  0***0.001**0.01*0.05 ‘.’ 0.1 ‘ ’ 1

# Set up the non-parametric bootstrap

logit.bootstrap <- function(data, indices) {

  d <- data[indices, ]
  fit <- glm(admit ~ gre + gpa + rank, data = d, family = "binomial")

  return(coef(fit))
}

set.seed(12345) # seed for the RNG to ensure that you get exactly the same results as here

logit.boot <- boot(data=mydata, statistic=logit.bootstrap, R=10000) # 10'000 samples

logit.boot

Bootstrap Statistics :
        original        bias    std. error
t1* -3.989979073 -7.217244e-02 1.165573039
t2*  0.002264426  4.054579e-05 0.001146039
t3*  0.804037549  1.440693e-02 0.354361032
t4* -0.675442928 -8.845389e-03 0.329099277
t5* -1.340203916 -1.977054e-02 0.359502576
t6* -1.551463677 -4.720579e-02 0.444998099

# Calculate confidence intervals (Bias corrected ="bca") for each coefficient

boot.ci(logit.boot, type="bca", index=1) # intercept
95%   (-6.292, -1.738 )  
boot.ci(logit.boot, type="bca", index=2) # gre
95%   ( 0.0000,  0.0045 ) 
boot.ci(logit.boot, type="bca", index=3) # gpa
95%   ( 0.1017,  1.4932 )
boot.ci(logit.boot, type="bca", index=4) # rank2
95%   (-1.3170, -0.0369 )
boot.ci(logit.boot, type="bca", index=5) # rank3
95%   (-2.040, -0.629 )
boot.ci(logit.boot, type="bca", index=6) # rank4
95%   (-2.425, -0.698 )

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

З довірчих інтервалів зазвичай перевагу коригують зміщення ("bca"). Це дає довірчі інтервали за початковою шкалою. Для довірчих інтервалів для коефіцієнтів шансів просто експонуйте довірчі межі.


ДЯКУЮ за ідеальну відповідь! :) Дозвольте відповісти таким чином: 1. Я трохи був знайомий з його поняттям (що він намагається обчислити середнє значення для 1000 різних коефіцієнтів у 1000 різних (перекомпонованих) моделях). Дякуємо, що уточнили, що "упередженість" річ і що подібні зміни трапляються, і ми повинні збільшити кількість спроб. :) 2.При "завантаженій моделі" я не мав на увазі одну єдину модель, що перекомпонована. Однак я мав на увазі середнє значення цих 1000 ітерацій. Насправді я завантажував свою модель 10 разів, кожна - 1000 ітерацій. Тож у мене під рукою є 10 завантажених моделей.
Вік

Кожен з них показує "різний" результат. Але я б спробував три-чотири завантажені моделі з 10 000 перекомпонентів, щоб побачити, чи кількість ітерацій становить 10 000, різні моделі завантаження (кожна з 10000) схожі чи я повинен збільшити ці 100000 ще більше?
Вік

@Vic Дякуємо за ваш коментар. Я б не робив 10 завантажувальних машин кожен з 1000 ітерацій, але лише один із, скажімо, 10 000 або навіть більше ітерацій (50 000?). Це має дати стабільні оцінки та довірчі інтервали.
COOLSerdash

3. Впевнений, що це не проблема. Мені просто хотілося знати, на якій основі слід вибрати це число? Я думаю, що в основі може лежати те, що якщо я запускаю два завантажувальні програми по 1000 спроб кожну і бачу, що вони відрізняються, це означає, що мені потрібно більше випробувань на перекомпонування (наприклад, 5000 або 10000).
Вік

4. "Що ви маєте на увазі" результати змінюються щоразу? Коли ваша кількість реплікацій є достатньо високою, завантажувальний пристрій повинен отримувати дуже схожі інтервали довіри та оцінку точок кожного разу ".
Вік
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.