Пояснення статистичного моделювання


10

Я не статистик. Отже, будь ласка, потерпіть мої промахи, якщо такі є.

Чи поясніть, будь ласка, простим способом, як робиться моделювання? Я знаю, що він вибирає якийсь випадковий зразок із звичайного розподілу та використовує для моделювання. Але, не розумію чітко.


11
Моделюючи що ?! :-)
chl

Точно випиваючи, але іноді запитання відштовхують запитувача, і це один такий випадок.
Аміт

1
@phaedrus Це коментар до мого наміру? Якщо так, чи могли б ви пояснити, що ви зрозуміли з вищезазначеного питання?
chl

Відповіді:


27

У статистиці моделювання застосовується для оцінки ефективності методу, як правило, коли не вистачає теоретичного підґрунтя. За допомогою симуляцій статистик знає та контролює правду .

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

Симуляційні дослідження повинні бути розроблені з великою суворістю. Burton et al. (2006) дали дуже приємний огляд у своїй роботі « Розробка імітаційних досліджень у медичній статистиці ». Імітаційні дослідження, що проводяться у найрізноманітніших ситуаціях, можна знайти у посиланнях.

Простий наочний приклад Розглянемо лінійну модель

y=μ+βx+ϵ

де - двійковий коваріат ( або ), а . Використовуючи моделювання в R, перевіримо цеx = 0 x = 1 ϵ N ( 0 , σ 2 )xx=0x=1ϵN(0,σ2)

E(β^)=β.
> #------settings------
> n <- 100            #sample size                          
> mu <- 5             #this is unknown in practice                         
> beta <- 2.7         #this is unknown in practice
> sigma <- 0.15       #this is unknown in practice
> #--------------------
> 
> #------set the seed so that this example can be replicated------
> set.seed(937)
> #---------------------------------------------------------------
>
> #------generate 1000 data sets and store betaHat------
> betaHat <- numeric(1000)
> for(i in 1:1000)
+ {
+     #generate the binary covariate --> n Bernoulli trials
+   x <- sample(x=c(0, 1), size=n, replace=TRUE, prob=c(0.5, 0.5))
+     #generate the errors
+   epsilon <- rnorm(n=n, mean=0, sd=sigma)
+     #form the response variable      
+   y <- mu + beta * x + epsilon 
+     #the ith generated data set
+   data_i <- data.frame(y=y, x=x)
+     #fit the model
+   mod <- lm(y~x, data=data_i)
+     #store the estimate of beta
+   betaHat[i] <- as.numeric(coef(mod)[2])     
+ }    
> #-----------------------------------------------------
> 
> #------E(betaHat) = beta?------
> mean(betaHat)
[1] 2.698609
> #------------------------------

Примітка . Існує лист до редактора для статті, на яку згадується вище.


9

Перш за все, існує багато, багато різних видів моделювання в статистиці, а ще більше в навколишніх полях. Сказати "Моделювання" приблизно так само корисно, як і сказати "Модель" - тобто зовсім не так.

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

Мета цього має тенденцію до двох категорій:

Чи може мій метод впоратися з X? : По суті, ви моделюєте серію безлічі випадкових груп населення з відомою «правильною» відповіддю, щоб дізнатися, чи дає ваша нова методика відповідь правильної відповіді. Як основний приклад, скажімо, що ви розробили те, що, на вашу думку, є новим способом вимірювання кореляції між двома змінними, X і Y. Ви змоделюєте дві змінні, де значення Y залежить від значення X, а також якийсь випадковий шум. Наприклад, Y = 0,25x + шум. Потім ви створите сукупність з деякими випадковими значеннями X, деякими значеннями Y, які були 0,25x + випадкове число, ймовірно, багато-багато тисяч разів, а потім покажете, що в середньому ваша нова техніка випльовує число, яке правильно показано, що Y = 0,25x.

Що відбувається, якщо? Моделювання може бути виконано як аналіз чутливості для існуючого дослідження. Скажімо, наприклад, що я провів когортне дослідження, але я знаю, що вимірювання експозиції не дуже добре. Він неправильно класифікує 30% моїх предметів як викритих, коли їх не повинно бути, і 10% моїх предметів класифікує як неекспонованих, коли вони не повинні бути. Проблема в тому, що в мене немає кращого тесту, тому я не знаю, що це.

Я б взяв свою популяцію і дав би кожному підданому суб'єкту 30% шанс перейти на неекспонований, а кожному підданому - 10% шанс перейти на оголеного. Тоді я б створив тисячі нових популяцій, випадковим чином визначивши, які суб'єкти перемикаються, і повторно провів аналіз. Діапазон цих результатів дасть мені хорошу оцінку того, наскільки міг би змінитися результат мого дослідження, якби я міг правильно всіх класифікувати.

Звичайно, як завжди, більша складність, нюанс та корисність для моделювання, залежно від того, скільки ви хочете копати.


1. Отже, що ви пояснили у своїй відповіді моделюванням Монте-Карло? 2. Чи є інші види моделювання (крім Монте-Карло), які використовуються в статистиці?
vasili111

5

Моделювання також може використовуватися для перегляду реальних процесів у теоретичних умовах, коли ці процеси мають нелінійні входи. Наприклад, виробнича фірма може бути зацікавлена ​​в тому, чи є ефективне додавання додаткової виробничої лінії, телефонний центр може бути зацікавлений у тому, як маршрутизувати дзвінки навколо операторів, щоб зменшити ставки в черзі та тарифні ставки для абонентів. зацікавтеся, як найкраще реєструвати персонал та перевозити пацієнтів, або транспортний порт може бути зацікавлений у найефективнішому способі компонування його контейнерних операцій. Для моделювання цих процесів може використовуватися дискретна імітація подій, і можна налаштувати параметри, щоб відповісти на запитання "що робити".

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


Чи можете ви надати кілька прикладів?
vasili111

Я не впевнений, що ви маєте на увазі під деякими прикладами. Я наводив кілька прикладів у своєму першому абзаці.
Мішель

2

Моделювання відтворює випадковість, властиву статистичному зразку , використовуючи генератор псевдовипадкових випадків (наприклад, звичайний генератор на зразок rnorm) і використовує відтворюваність псевдовипадкової генерації для висновку про розподіл статистичної процедури застосовано до вихідного зразка.x1,,xn

Особливо важливий екземпляр статистичної методики на основі моделювання пов'язаний із завантажувальною стрічкою , введеною Ефроном (1979). З огляду на зразок , емпіричний cdf є сходиться (в ) наближення до істинного ВВР, . Отже, будь-яка величина залежно від , наприклад, очікування, або розподіл статистики , може бути апроксимована відповідною величиною вx1,,xn

F^n(x)=1ni=1nIxix
nFFEF[h(X)]ψ(X1,,Xn)F^n. Що можна оцінити лише за допомогою моделювання, за винятком особливих випадків. Наприклад, визначення зміщення як оцінювач можна зробити за допомогою завантажувальної програми: копіювати зразки розміром з та обчислити різницю Це дає змодельовану оцінку завантажувального завантаження.
σ^n2(x1,,xn)=1n+1i=1n(xix¯)2
σ2=varF(X)n x1,,xnF^n
β=σ^n2(x1,,xn)σ^n2(x1,,xn)

3
Я вважаю, що корисно розділити два основні поняття, що стоять за методом завантаження. Саму завантажувальну систему слід розглядати як спосіб модифікації оцінювача для створення іншого (сподіваємось, кращого) оцінювача. Він може бути обчислений теоретично точно і (іноді) у закритому вигляді. Моделювання не є властивою частиною завантажувальної програми! Однак у багатьох випадках моделювання є природним і простим способом наближення оцінки завантажувача. Дивіться вступ та розділ 1 у залі, розширенні Bootstrap та Edgeworth.
whuber

1
Щодо редагування: це насправді приємний приклад випадку, коли оцінка зміщення завантажувальної стрічки може бути обчислена точно у закритому вигляді:E[β | sample]=[2/(n+1)]σ^n2(x1,,xn).
whuber
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.