Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




На страницу 1, 2  След.
 Статистический тест для полунормального распределения
Аватара пользователя
Добрый день, извиняюсь за беспокойство. Возникла элементарная (надеюсь) задача из статистики, которую не пойму как решать.
У меня есть n измерений случайной величины распределённой по полунормальному распределению $\xi \sim \exp(-\xi^2/(2\sigma^2) , \ \xi \geq 0$. Стоит задача понять по среднему значений этих измерений $X = \frac{1}{n}\sum_{i=1}^{n} \xi_i$, что это случайная флуктуация, или реально различное измерение. Хотелось бы что-то наподобие z-теста делать, т.е. взять
$$
z= \frac{X - \mu}{\Sigma/\sqrt{n}} \leq z_\mathrm{crit}
$$
Где $\Sigma= \sigma \sqrt{1-2/\pi}$ -- дисперсия полунормального распределения, $\mu=\sigma \sqrt{2/\pi}$ -- среднее значение полунормального распределения, а $z_\mathrm{crit}$ -- некое критическое значение z для заданного уровня значимости гипотезы. Только не пойму как и где это сделать. Поиск в Сети и общение с чатиком как-то не привело к пониманию. Может человеческая мудрость поможет?

 Re: Статистический тест для полунормального распределения
madschumacher в сообщении #1734069 писал(а):
Только не пойму как и где это сделать.


А что вызвало проблему? Вы же все правильно про z-тест написали, особенно если выборка достаточная по объему. Просто рассчитайте значение по вашей формуле, сравните с критическим значением при заданном уровне значимости (вам 95% подойдет для задачи?) и отклоните или подтвердите нулевую гипотезу.

Или у вас выборка маленькая?

 Re: Статистический тест для полунормального распределения
madschumacher в сообщении #1734069 писал(а):
Стоит задача понять по среднему значений этих измерений $X = \frac{1}{n}\sum_{i=1}^{n} \xi_i$, что это случайная флуктуация, или реально различное измерение.

Трудно понять эту фразу. На человеческом языке: у вас есть выборка из полунормального распределения, у вас есть откуда-то теоретическое значение параметра этого распределения $\sigma$. Сосчитали среднее от выборки. Хотите проверить гипотезу, что среднее не значимо отличается от теоретического среднего $\mu$ ?

madschumacher в сообщении #1734069 писал(а):
Хотелось бы что-то наподобие z-теста делать, т.е. взять
$$
z= \frac{X - \mu}{\Sigma/\sqrt{n}} \leq z_\mathrm{crit}
$$

z получится сдвинутое полунормальное. Полунормальное распределение не симметрично, поэтому может быть двусторонняя гипотеза и неравенство тогда дожно быть двухсторонее, $z_\mathrm{2,crit} \leq z\leq z_\mathrm{2,crit}$. При выборе $z_\mathrm{1,crit}$, $z_\mathrm{2,crit}$ возможен некий произвол при заданном уровне значимости из-за несимметричности распределения. Или односторонняя, тогда неравенство может быть $z\leq z_\mathrm{crit}$ или $z\geq z_\mathrm{crit}$.
$ z_\mathrm{crit}$ берется из "стандартного" (т.е. $\Sigma=1$) и сдвинутого ($X - \mu$) полунормального распределения. Легко получить из erf.

 Re: Статистический тест для полунормального распределения
Аватара пользователя
Ghost_of_past в сообщении #1734072 писал(а):
А что вызвало проблему? Вы же все правильно про z-тест написали, особенно если выборка достаточная по объему. Просто рассчитайте значение по вашей формуле, сравните с критическим значением при заданном уровне значимости (вам 95% подойдет для задачи?) и отклоните или подтвердите нулевую гипотезу.

Первую проблему у меня вызвало, правильно ли я формулу для z-значения написал, а вторую, какой брать критерий. Для обычного нормального и 95%, я понимаю, что надо брать $z_\mathrm{crit}=2$, а вот для полунормального распределения -- уже не уверен.

dsge в сообщении #1734075 писал(а):
Сосчитали среднее от выборки. Хотите проверить гипотезу, что среднее не значимо отличается от теоретического среднего $\mu$ ?

Да. У меня есть среднее, у меня есть ожидаемая дисперсия, и хочу эту гипотезу проверить.
dsge в сообщении #1734075 писал(а):
Или односторонняя, тогда неравенство может быть $z\leq z_\mathrm{crit}$ или $z\geq z_\mathrm{crit}$.
$ z_\mathrm{crit}$ берется из "стандартного" (т.е. $\Sigma=1$) и сдвинутого ($X - \mu$) полунормального распределения. Легко получить из erf.

А какая там тогда формула получается? И можно ли где-то найти это расписанное для чайников, которые всю статистику в использовании в последний раз на втором курсе университета видели?

 Re: Статистический тест для полунормального распределения
Аватара пользователя
madschumacher в сообщении #1734081 писал(а):
можно ли где-то найти это расписанное для чайников

Распишу как чайник чайнику :mrgreen:
У нас есть какой-то набор измерений. Считаем для него статистику - это просто некоторая (числовая) функция от совокупности измеренных значений.
Далее выбираем нулевую гипотезу - предполагаем, что все наши измерения это случайная величина с известным распределением (параметры этого распределения могут быть и неизвестны). Вычисляем функцию распределения для используемой нами статистики.
Дальше задаёмся вопросом насколько необычно то значение статистики, которое получилось на наших измерениях.
Для этого вычисляем p-value - это сумма (интеграл) всех вероятностей, которые меньше либо равны вероятности измеренной нами статистики. Чаще всего "область интегрирования" неодносвязна. И нужны веские "внестатистические" основания для выбрасывания каких-то областей (1-tail статистики это разновидность жульничества :D ).
А дальше мы корректируем результат на множественное тестирование.

-- добавлено через 14 минут --

Какие статистики бывают и как их выбирать. Примерами статистик являются "выборочное среднее", "выборочная медиана", "выборочная дисперсия". Но может быть и более сложная функция, например, параметры нелинейной регрессии наших измерений (но это редкость - статистика должна (в идеале) удовлетворять определённым требованиям (корректность, несмещённость, состоятельность и т.д.)). Разные (корректные, т.е. отвечающие на интересующий вопрос) статистики могут давать разные выводы - некоторые более "консервативны", другие дают "больше намёков".

-- добавлено через 6 минут --

Дальше надо вычислить функцию распределения. Хорошо если получится аналитически. Если не получилось - монтекарлим :mrgreen: (т.е. эмулируем заданную случайную величину, строим выборку заданного размера, вычисляем статистику, набираем статистику).
Но для многих типичных случаев известны аналитические результаты.

-- добавлено через 7 минут --

Далее p-value. Это, по сути, вероятность получить случайно настолько же или более экстремальное значение статистики, чем получилось на наших измерениях. Важно отметить, что экстремальность оценивается именно по вероятностям значений статистики, а не по самим значениям. По крайней мере, в идеале.

-- добавлено через 10 минут --

Ну и множественное тестирование - мы можем пробовать разные статистики, разные случайные величины, разные параметры распределений этих случайных величин, несколько наборов измерений... - при ста попытках мы пять раз ожидаемо выйдем за две сигмы.
Во всех таких случаях надо "занижать" результат. Как именно? - зависит от конкретной ситуации (иногда может быть проще и правильнее привести все результаты).

-- добавлено через 10 минут --

В принципе, всё это есть в википедии, но придётся открыть с десяток страниц (причём, некоторые лучше на английском, некоторые на русском (другие языки не оценивал ввиду ущербности)).

 Re: Статистический тест для полунормального распределения
madschumacher в сообщении #1734081 писал(а):
Для обычного нормального и 95%, я понимаю, что надо брать $z_\mathrm{crit}=2$, а вот для полунормального распределения -- уже не уверен.

Еще раз, полунормальное несимметричное, 2 никакого отношения к нему не имеет.
Так, например, даже может быть проще (формулы для распределений можно найти в википедии)
$F_{Y}(y;\sigma )=\operatorname {erf} \left({\frac {y}{{\sqrt {2}}\sigma }}\right);
F_{Y}(\mu;\sigma )=\operatorname {erf} \left({\frac {\mu}{{\sqrt {2}}\sigma }}\right);$
$$F_{Y}(z_{2,crit};\sigma ) -F_{Y}(\mu;\sigma )  = 0.5\alpha.$$
$$F_{Y}(\mu;\sigma ) -F_{Y}(z_{1,crit};\sigma )  = 0.5\alpha.$$
($\alpha= 0.95$)
В некоторых пакетах, например в Матлабе, кумулятивное распределение определяется иначе, там уже учтен сдвиг, можно сразу воспользоваться соответствующей функцией.

 Re: Статистический тест для полунормального распределения
madschumacher
Тут такая штука. Прежде чем писать статистику для теста, надо понять, что тестируем. Это означает в точности - какая гипотеза основная, какая альтернативная (если есть).
И только потом можно будет о чем-то говорить.
Что именно у вас вызывает обеспокоенность, когда случается флуктуация? когда сигма становится больше чем надо?
Что известно вам заранее?
Вы пишете, что известно среднее, известна дисперсия - вы имеете в виду их оценки по выборке или истинные значения, по каким-то историческим/опытным данным? В любом случае, зачем их столько известно, у вас ровно один параметр у распределения.

В общем, если вы осознаете, что вас интересует, какую гипотезу вы проверяете - возможно, это не то, чо вы думаете, возможно, нужен непараметрический критерий, а не Z-тест, который в норме предназначен для проверки гипотезы о равенстве средних или гипотезы о равенстве матожидания, а тут вроде и не при делах, - то было бы неплохо, если бы вы это формализовали. Тогда и получится под это что-то придумать. Как вы определяете нехорошую выборку? (?- выборку ли) по какому признаку? что в ней не так?

 Re: Статистический тест для полунормального распределения
в сообщении #1734081 писал(а):
Хотите проверить гипотезу, что среднее не значимо отличается от теоретического среднего $\mu$ ?

madschumacher в сообщении #1734081 писал(а):
Да. У меня есть среднее, у меня есть ожидаемая дисперсия, и хочу эту гипотезу проверить.

Вижу.
Основная гипотеза для этого теста выглядит так: вы знаете "правильное матожидание" $\mu_0$, а "правильная" выборка - выборка с этим матожиданием.
То есть $H_0=\{\mathsf EX = \mu_0 \}$
И да, такие гипотезы обычно проверяют с помощью Z-теста. Можно и вам этим заняться. ЦПТ и все такое. Только односторонний критерий. Правосторонний.

Но можно рассуждать иначе. Ваше матожидание прямо пропорционально сигма, поэтому вы проверяете, фактически, гипотезу о равенстве сигма известной вам константе.
С другой стороны, оценка методом максимального правдоподобия параметра сигма (это не дисперсия!) полунормального распределения дает $\hat \sigma^2 = \frac 1n \sum x_i^2$.
Заметим, что если вы знаете матожидание (или дисперсию, не важно), то теоретическое значение параметра сигма (назову его здесь $\sigma_0^2$, вы тоже сможете посчитать.

Рассмотрим $\frac{n\hat \sigma^2}{\sigma_0^2} =  \sum \left(\frac{x_i}{\sigma_0^2}\right)^2$. Нетрудно показать, что она имеет распределение $\chi^2_n$. Для любого $n$.

Поэтому вместо гипотезы о матожидании, которое завязано на сигма, можно рассматривать гипотезу непосредственно о сигма, например:

$H_0=\{\sigma=\sigma_0\}$.
Если статистика $T= \sum \left(\frac{x_i}{\sigma_0^2}\right)^2$ окажется больше, чем квантиль нужного уровня значимости, мы отвергнем нашу гипотезу в пользу альтернативной
$H_1 = \{\sigma >\sigma_0\}$.

Такой финт ушами позволяет работать с малыми выборками, тест точный, не асимптотический. И по сути, это то же, что и сравнение МАЕ с матожиданием. ЦПТ тоже можно, безусловно. Но при достаточно большом числе испытаний, там уже асимптотика.

 Re: Статистический тест для полунормального распределения
madschumacher в сообщении #1734081 писал(а):
Первую проблему у меня вызвало, правильно ли я формулу для z-значения написал, а вторую, какой брать критерий. Для обычного нормального и 95%, я понимаю, что надо брать $z_\mathrm{crit}=2$, а вот для полунормального распределения -- уже не уверен.


Пока я вижу две основные проблемы в задаче: 1) непонятно, какой объем выборки, 2) непонятно, какая гипотеза рассматривается - стандартная нулевая или какая-то иная.

При достаточно большом объеме выборки распределение может приближаться к нормальному, поэтому вопрос объема выборки критически важен. При $n=50$ или больше и при стандартной нулевой гипотезе (= предположение, что это случайная флуктуация) асимптотически можно получить стандартное нормальное распределение, то есть здесь не нужно искать специальное критическое значение для полунормального распределения, потому что по идее полунормальность исходных измерений уже учтена в $\mu$ и $\Sigma$. Для маленького $n$ уже стоит отдельно разбираться с точным распределением среднего полунормальных величин.

Теперь про гипотезу. Если гипотеза стандартная ($H_0:E\xi = \mu$), то как вы правильно написали, нужен просто двусторонний тест. Если же проверяется только, стало ли среднее больше ожидаемого, то тест односторонний.

Плюс надо помнить, что все это работает при условии, что $\Sigma$ должна быть именно стандартным отклонением, а не дисперсией. Однако она корректна в таком виде, если $\sigma$ известно. Если $\sigma$ неизвестно и оценивается по той же выборке, ситуация немного сложнее, так как для большой выборки можно использовать асимптотический z-тест, подставив оценку $\hat{\sigma}$, но для маленькой выборки уже нельзя так делать: исходное распределение не нормальное, и тогда лучше рассматривать или численное распределение среднего, или применять подходящие непараметрические критерии, или бутстреп, или Монте-Карло (возможно есть еще какие-то альтернативы).

 Re: Статистический тест для полунормального распределения
Аватара пользователя
Спасибо большое за ответы!
Ghost_of_past в сообщении #1734098 писал(а):
1) непонятно, какой объем выборки

Она не фиксирована, но в целом $n \geq 30$, обычно больше.
Ghost_of_past в сообщении #1734098 писал(а):
2) непонятно, какая гипотеза рассматривается - стандартная нулевая или какая-то иная.

Если честно, не знаю. Гипотеза, что значение $\sum_i |\xi_i|$ -- это выброс в большую сторону (если оно меньше чем какое-то значение -- значит выброса нет).
Combat Zone в сообщении #1734089 писал(а):
Но можно рассуждать иначе. Ваше матожидание прямо пропорционально сигма, поэтому вы проверяете, фактически, гипотезу о равенстве сигма известной вам константе.

Ой, это мне даже нравится больше! Я тогда напишу, используя ещё и ответ Geen заодно, чтобы понять, правильно я понял или нет.
У меня есть $n$ величин $\xi_i \sim \mathcal{N}(0,1)$ (на самом деле они у меня должны быть обычными нормально-распределёнными, просто обычный z-тест давал что-то не очень, поэтому я хотел использовать абсолютные значения). Я считаю значение $T = \sum_{i=1}^{n} \xi_i^2$ и оно должно быть распределено как $\chi^2$ с числом степеней свободы $n$. Поэтому для проверки того, выброс это или нет, я беру квантиль распределения $\chi^2$ с числом степеней свободы $n-1$ для уровня значимости $1-\alpha$, $Q_{n-1,1-\alpha}$. Т.е. если, например, я беру $\alpha=0.05$ (я хочу с 95% вероятностью знать выброс это или нет), то при $n=30$ у меня будет значение $Q=42.557$ (отсюда)? И я сравниваю $T$ c $Q$ и если $T\geq Q$, то у меня выброс? Правильно?
И правильно я понимаю, что это просто критерий Пирсона получается?

 Re: Статистический тест для полунормального распределения
madschumacher в сообщении #1734159 писал(а):
Если честно, не знаю.


Ну, если гипотеза - это стандартная нулевая (связи нет, как вы написали "случайная флуктуация"), то тогда по идее стандартного двухстороннего z-теста должно хватать, но вы далее написали:

madschumacher в сообщении #1734159 писал(а):
У меня есть $n$ величин $\xi_i \sim \mathcal{N}(0,1)$ (на самом деле они у меня должны быть обычными нормально-распределёнными, просто обычный z-тест давал что-то не очень, поэтому я хотел использовать абсолютные значения). Я считаю значение $T = \sum_{i=1}^{n} \xi_i^2$ и оно должно быть распределено как $\chi^2$ с числом степеней свободы $n$. Поэтому для проверки того, выброс это или нет, я беру квантиль распределения $\chi^2$ с числом степеней свободы $n-1$ для уровня значимости $1-\alpha$, $Q_{n-1,1-\alpha}$. Т.е. если, например, я беру $\alpha=0.05$ (я хочу с 95% вероятностью знать выброс это или нет), то при $n=30$ у меня будет значение $Q=42.557$ (отсюда)? И я сравниваю $T$ c $Q$ и если $T\geq Q$, то у меня выброс? Правильно?


То есть по сути у вас тут две разные статистики. Если $T=\sum_{i=1}^n \xi_i^2,\qquad \xi_i\sim N(0,1)$, то действительно $T\sim\chi^2_n$ Поэтому для выборки объемом в 30 и 95% значимости будет $Q$ будет что-то около 43,77.

А вот если вы на самом деле будете проверять то, что $T=\sum_i|\xi_i|$, то $\chi^2$-критерий, насколько я понимаю, уже неприменим. Сейчас смотрю учебники и в этом случае при достаточно большом объеме выборки должно быть $z=\frac{T-n\sqrt{2/\pi}}{\sqrt{n(1-2/\pi)}}\approx N(0,1)$

Тогда для проверки аномально большого $T$ при 95% значимости берем односторонний z-критерий, и он будет 1,64-1,65, и отсюда уже танцуем и высчитываем примерный порог $T$.

 Re: Статистический тест для полунормального распределения
Аватара пользователя
Ghost_of_past, спасибо огромное!

 Re: Статистический тест для полунормального распределения
Аватара пользователя
madschumacher в сообщении #1734159 писал(а):
И я сравниваю $T$ c $Q$ и если $T\geq Q$, то у меня выброс?

А Вы что пытаетесь обосновать - наличие или отсутствие выброса?

 Re: Статистический тест для полунормального распределения
madschumacher в сообщении #1734159 писал(а):
И правильно я понимаю, что это просто критерий Пирсона получается?

Это не получается критерий Пирсона, критерий Пирсона непараметрический. Он не позволяет понять, искажаются ли ваши параметры в сравнении с желаемым. Его нулевая гипотеза (начинать всегда надо с нее!) - проверить, из желаемого ли распределения выборка или нет. То есть - выборка нормальна. Или выборка из показательного распределния. Или выборка из показательного распределения с заданным параметром. Их несть числа.
madschumacher в сообщении #1734159 писал(а):
У меня есть $n$ величин $\xi_i \sim \mathcal{N}(0,1)$ (на самом деле они у меня должны быть обычными нормально-распределёнными, просто обычный z-тест давал что-то не очень, поэтому я хотел использовать абсолютные значения).

Стоп. Вот давайте тут остановимся. Это начало постановки задачи, если тут накосячить, то дальше совсем плохо будет. Если у вас сами распределения нормальные, да еще центрированные, то сумма тоже нормальная и центрированная. Z-тест может давать что-то не очень только если вы от него совсем не то просите. Он тут даже точный должен быть. То есть не асимптотический.
Ну или все-таки они не нормальные.

Давайте поймем, какие они, почему вы решили, что они нормальные, и чего же вы на самом деле хотите. Иначе можно написать очень элегантное решение, но не той задачи.

----

Дополнительно:

Когда говорят и далее используют данные о том, что выборка из нормального распределения, нужно сперва в этом убедиться. Критериев нормальности много. Если этот этап проверки пройден, для именно нормального распределения есть тесты на выбросы довольно простые:
Тест Диксона и тест Граббса (на той же странице внизу ссылка).
Есть достаточно универсальный метод межквартильного размаха IQR, датасайентисты его очень любят. Он не зависит от распределения, но как всегда, все универсальное палка о двух концах. Тоже простой.

То, что не работает Z-тест в сочетании с нормальностью самого распределения, меня напрягает, это оксюморон некий, и на него накладывается информация о том, что вы знаете, что у вас есть выбросы. Представьте - есть нормальное распределение, а туда накидали, к примеру, распределение Коши (случайный мусор, выбросы). Этот микс теперь точно распределен нормально?

В общем, проверьте сперва, а точно ли распределение нормально. Если да - сходите к Гиббсу или Диксону, они простые. Если нет, попробуйте IQR.

 Re: Статистический тест для полунормального распределения
А теперь вернемся к вашей попытке с Z-тестом. Мне кажется, я понимаю, почему она не задалась и почему вас потянуло на полунормальные распределения, и почему там якобы лучше получалось.

Пусть у вас есть выборка, $X_1,\ldots X_n$ из нормального распределения $X\sim N(0,1)$.

Проблема была в том, что вы пытались установить наличие выбросов (если, конечно, верно сформулировали свое намерение) по среднему наблюдений. По среднему это сделать вообще нельзя. Оно сгладит весь разброс. Но Z-тест (=ЦПТ) работает именно со средним.

Вывод: не надо работать со средним, если хочешь понять, плохое ли твое текущее наблюдение, единичное, или хорошее. Надо работать именно с ним, с единичным. Как со статистикой.

И поскольку $X_i\sim X$, то показатель выброса - насколько оно маловероятно, за счет того, что улетело в туман, то есть далеко от матожидания.

В итоге мы смотрим на величину $Y=|X-0|=|X|$ - (вот оно, ваше полунормальное). Вероятность того, что икс сильно отклонится от матожидания должна быть мала. Но распределение нормальное, симметричное, поэтому $P\{|X|\ge t\}=\alpha$ при $t=u_{\alpha/2}$, где последняя величина - квантиль нормального распределения.
Квантили определяют по-разному в разных источниках, у меня альфа-квантиль - точка, в которой функция распределения равна $1-\alpha$. Обычно много не нужно. Скажем при $\alpha=0{,}05$ получится $t=1,96$. То есть взяв элементы выборки, которые удовлетворяют неравенству $|X_i|>1.96$, мы получим 5% крайних данных. Которые при желании можно начинать считать выбросами.

Если нужно совсем по минимуму отсеять, только 0.3% самых наглых, берите $\alpha=0.003$, для него $t=3$. И неравенство $|X_i|>3$

Все как захотите. Промежуточный вариант 1%, 0.01 и 2.58 соответственно.

И вот тут внимание. Дисперсия 1 бывает от слова никогда. Ее всегда приходится делать вручную. Это делается. И если дисперсия равна, чтобы не путаться, тут уже была одна сигма в квадрате, $DX=\theta^2$, то неравенства легко правятся.

Первое будет $ |X_i|>3\theta$, второе и третье аналогично.

---

При этом я помню, что
случай 1) вы знаете дисперсию,
случай 2) если нет, вы можете сделать сколь угодно много (30 хватит) наблюдений
случай 3) если нет, в любом случае, есть Стьюдент, все будет аналогично. Ну почти.

Мне кажется, вполне достаточно, напишите, если что-то поможет.

 [ Сообщений: 26 ]  На страницу 1, 2  След.


Соглашение о конфиденциальности | Общие правила

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group