Як встановити дискретний розподіл для підрахунку даних?


17

У мене є наступна гістограма даних про підрахунок. І я хотів би пристосувати до нього дискретний розподіл. Я не впевнений, як мені це робити.введіть тут опис зображення

Чи слід спочатку накласти на гістограму дискретний розподіл, скажімо, негативний біноміальний розподіл, щоб я отримав параметри дискретного розподілу, а потім запустив тест Колмогорова – Смірнова для перевірки p-значень?

Я не впевнений, чи правильний цей метод чи ні.

Чи існує загальний метод вирішення подібної проблеми?

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

  Counts:     1    2    3    4    5    6    7    9   10 
 Frequency: 3875 2454  921  192   37   11    1    1    2 

ОНОВЛЕННЯ: Мені хотілося б запитати: я використовував функцію fitdistr в R, щоб отримати параметри для встановлення даних.

fitdistr(abc[abc != 0], "Poisson")
     lambda  
  1.68147852 
 (0.01497921)

Потім я будую функцію масової ймовірності розподілу Пуассона вгорі гістограми. введіть тут опис зображення

Однак, схоже, що розподіл Пуассона не зможе моделювати дані про підрахунок. Чи можна щось зробити?


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

3
Хоча таким чином використання тесту KS є хитрим методом (і в будь-якому випадку тест KS не для дискретних розподілів), можна було б оцінити параметри, мінімізуючи статистику KS для всіх можливих значень параметрів; але якщо ви йдете таким шляхом (оптимізуючи деяку корисність придатності), мінімальний чи-квадрат був би більш типовим підходом. Як вважає Нік Кокс, МЛ було б очевидною справою, майже безумовно, більш ефективною, легшою для отримання стандартних помилок і легше сприйняттям інших. (Є й інші можливості, як метод моментів, але головне - головне.)
Glen_b -Встановити Моніку

Я використовую R. Коли ви говорите про оцінку MLE, чи є які-небудь алгоритми, які ви порекомендуєте для роботи? І знайшовши ML, що мені робити далі?
користувач1769197

Я б почав тут ?MASS::fitdistr, оскільки він уже знаходиться у вашому R-розподілі (див. Остаточний приклад внизу; див. Rnegbin для отримання додаткової інформації про цю параметризацію негативного бінома). .... " І знайшовши ML, що мені робити далі? " - тоді у вас є оцінки параметрів та стандартні помилки. Крім того, чого ви хочете досягти? - Я не можу здогадатися.
Glen_b -Встановити Моніку

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

Відповіді:


17

Способи встановлення дискретних розподілів

Існує три основні методи *, що застосовуються для підгонки (оцінки параметрів) дискретних розподілів.

1) Максимальна ймовірність

Це знаходить значення параметрів, які дають найкращі шанси надати ваш зразок (враховуючи інші припущення, такі як незалежність, постійні параметри тощо)

2) Метод моментів

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

3) Мінімальний чи-квадрат

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

Перші два методи також використовуються для безперервного розподілу; третій зазвичай не використовується в такому випадку.

Вони аж ніяк не містять вичерпного списку, і цілком можливо було б оцінити параметри, мінімізуючи статистику KS, наприклад, - і навіть (якщо налаштувати на дискретність), щоб отримати з неї спільну область консонансу , якби ви так схильний. Оскільки ви працюєте в R, оцінку МЛ досить легко досягти для від'ємного двочлена. Якщо ваш зразок був x, він простий як library(MASS);fitdistr (x,"negative binomial"):

> library(MASS) 
> x <- rnegbin(100,7,3)
> fitdistr (x,"negative binomial")
     size         mu    
  3.6200839   6.3701156 
 (0.8033929) (0.4192836)

Це оцінки параметрів та їх (асимптотичні) стандартні помилки.

У разі розподілу Пуассона MLE та MoM обидва оцінюють параметр Пуассона на середньому рівні вибірки.

Якщо ви хочете побачити приклади, слід опублікувати деякі фактичні підрахунки. Зверніть увагу, що ваша гістограма зроблена з відрив, вибраних таким чином, що категорії 0 і 1 поєднуються, і ми не маємо підрахунку.

Наскільки я можу здогадатися, ваші дані приблизно такі:

    Count:  0&1   2   3   4   5   6  >6    
Frequency:  311 197  74  15   3   1   0

Але великі числа будуть невизначеними (це сильно залежить від того, наскільки точно представлені низькі показники підрахунками пікселів їхніх висот), і це може бути кілька кратних цих чисел, як, наприклад, вдвічі більше цих чисел стандартні помилки, тому важливо, чи вони стосуються цих значень або вдвічі більше)

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


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


+1, приємна інформація. Щойно з цікавості, чому ви, здається, часто використовуєте 1)замість нумерації розмітки, яку підтримує CV (тобто - що 1.призводить до відступу)?
gung - Відновіть Моніку

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

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

Я спробую себе стримати ;-).
gung - Відновіть Моніку

2

Під час редагування ви дали деякі дані та додали нове запитання:

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

   Counts:     1    2    3    4    5    6    7    9   10 
Frequency:  3875 2454  921  192   37   11    1    1    2 

Чи може хтось надати мені приклад того, як ви провели тут тест на добрість придатності?

Це призводить до подальших коментарів:

  1. Маючи нулі, але бажаючи їх ігнорувати, може мати сенс, але загалом статистичні та предметні люди хотіли б побачити вагому причину.

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

  3. Запитання про те, як зробити тест на чи-квадрат, підказує мені, що ви насправді не зрозуміли те, що я сказав дуже коротко, а @Glen_b сказав набагато детальніше (і, на мій погляд, дуже чітко). Розщеплення цього на два:

    • Не може бути тесту чи-квадрата без очікуваних частот і не може бути очікуваних частот без оцінок параметрів. Можливо, ви найбільше знайомі з тестовими процедурами чи-квадрата, в яких перевіряється незалежність рядків і стовпців у двосторонній таблиці. Хоча це тест-квадрат-тест, який найбільше зустрічався на вступних курсах, насправді серед тестів чи-квадрата взагалі дуже незвично, оскільки звичайне програмне забезпечення фактично робить для вас оцінку параметрів і тим самим отримує очікувані частоти. Крім того, у більшості складних проблем, таких як ваша, ви повинні спочатку отримати оцінки параметрів.

    • Тест чі-квадрата не є помилковим, але якщо ви оцінюєте параметри за максимальною вірогідністю, це не має значення, оскільки підходяща процедура дає вам оцінки та стандартні помилки та дозволяє проводити тести на їх шляху. @Glen_b дав приклад вже у своїй відповіді.

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

ОНОВЛЕННЯ: Додаткове запитання про тест-чи-квадрат тепер видалено. На даний момент я даю змогу №3 стояти вище, якщо хтось інший піде тим самим шляхом, коли хочеться випробувати тест-квадрат.


Я повинен ігнорувати нулі, тому що я намагаюся моделювати активні підрахунки. Підрахунки = 0 називають неактивними.
користувач1769197

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

Я намагався налаштувати гістограми, роблячи "plot (table (abc), type =" h ")". Але я не впевнений, як я можу змусити його показувати ймовірності
user1769197

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