![]() |
![]() ![]() ![]() ![]() ![]() |
![]() |
Noncentral Chi-Squared DistributionBoost , Math Toolkit 2.5.0 , Distributions
|
Microsoft Visual C++ версия 12.0 |
GNU C++ версия 5.1.0 |
GNU C++ версия 5.1.0 |
Солнечный компилятор версии 0x5130 |
|
---|---|---|---|---|
Non Central Chi Squared, средние параметры |
Макс = 48,9ε (Средний = 10ε) |
Макс = 0.99ε (Средний = 0,0529ε) |
Макс = 46.5ε (Средний = 10.3ε) |
Макс = 115ε (Средний = 13.9ε) |
Non Central Chi Squared, большие параметры |
Макс = 9,79e+003ε (Средний = 723ε) |
Макс = 1,07ε (Средний = 0,102ε) |
Макс = 3.07e+03ε (Средний = 336ε) |
Макс = 6.17e+03ε (Средний = 677ε) |
Table 5.7. Error rates for non central chi squared CDF complement
Microsoft Visual C++ версия 12.0 |
GNU C++ версия 5.1.0 |
GNU C++ версия 5.1.0 |
Солнечный компилятор версии 0x5130 |
|
---|---|---|---|---|
Non Central Chi Squared, средние параметры |
Макс = 98.6ε (Средний = 15.8ε) |
Макс = 0.96ε (Средний = 0,0635ε) |
Макс = 107ε (Средний = 17.1ε) |
Макс = 171ε (Средний = 22.8ε) |
Non Central Chi Squared, большие параметры |
Макс = 5,43e+003ε (Средний = 705ε) |
Max = 2.11ε (Mean = 0.278ε) |
Макс = 5.02e+03ε (Средний = 630ε) |
Макс = 5.1e+03ε (Средний = 577ε) |
Показатели ошибок для функций квантиле в целом схожи. Особо следует упомянуть функцию<mode
>: для этой функции нет закрытой формы, поэтому она оценивается численно путем нахождения максим PDF: в принципе это не может производить точность, большую, чем квадратный корень эпсилона машины.
Для проверки этой реализации используются два набора тестовых данных: во-первых, мы можем сравнить их с опубликованными данными, например, с Таблицей 6 «Самопроверяющихся вычислений вероятностей для отдельных центральных и нецентральных одномерных вероятностных функций», Morgan C. Wang and William J. Kennedy, Journal of the American Statistical Association, Vol. 89, No. 427. (Sep., 1994), pp. 878-887. Во-вторых, у нас есть таблицы тестовых данных, вычисленные с помощью этой реализации и с использованием интервальной арифметики - эти данные должны быть точными по крайней мере до 50 десятичных цифр - и используются для наших тестов на точность.
ЦДФ и его дополнение оцениваются следующим образом:
Во-первых, мы определяем, какое из двух значений (CDF или его дополнение), вероятно, будет меньшим: для этого мы можем использовать отношение, обусловленное теммой (см. «Асимптотические и численные аспекты нецентрального распределения хи-квадратов», N. M. Temme, Computers Math). Применимо. Том 25, No 5, 55-63, 1993), что:
F(ν,λ;ν+λ; ≈ 0,5
Вычислите CDF, когда случайная переменная меньше ν +λ и ее дополнение, когда случайная переменная больше ν +λ. При необходимости вычисленный результат вычитают из 1 для получения желаемого результата (CDF или его дополнения).
Для малых значений параметра нецентральности CDF вычисляется методом Ding (см. "Algorithm AS 275: Computing the Non-Central #2 Distribution Function", Cherng G. Ding, Applied Statistics, Vol. 41, No. 2. (1992), pp. 478-482). Используется следующее представление серии:
который требует только одного вызоваgamma_p_derivativeс последующими терминами, вычисляемыми рекурсией, как показано выше.
Для больших значений параметра нецентральности метод Дина может принимать необоснованное количество терминов до достижения конвергенции. Кроме того, самый большой термин не является первым термином, поэтому в крайних случаях первый термин может быть нулевым, что приводит к нулевому результату, даже если истинное значение может быть ненулевым.
Поэтому, когда параметр нецентральности больше 200, используется метод, обусловленный Кришнамурти (см. «Вычисление дискретных смесей непрерывных распределений: нецентральный полукруглый, нецентральный t и распределение квадрата многократного корреляционного коэффициента выборки», Денис Бентон и К. Кришнамурти, Computational Statistics & Data Analysis, 43, (2003), 249-267).
Этот метод использует хорошо известную сумму:
где Pa(x) — неполная гамма-функция.
Метод начинается с 955-го термина, где функция взвешивания Пуассона достигает своего максимального значения, хотя это не обязательно самый большой общий термин. Последующие термины рассчитываются через нормальные отношения повторения для неполной гамма-функции, и итерация продолжается как вперед, так и назад, пока не будет достигнута достаточная точность. Следует отметить, что рецидив в направлении вперед Pa(x) является численно неустойчивым. Однако, поскольку мы всегда начинаемпослесамого большого термина в серии, числовая нестабильность вводится медленнее, чем серия сходится.
Вычисление комплемента CDF использует расширение метода Кришнамурти, учитывая, что:
Мы можем снова начать с λ термин и продолжить в обоих направлениях оттуда, пока не будет достигнута требуемая точность. На этот раз это обратная рекурсия на неполную гамма-функцию Qa(x), которая нестабильна. Однако, пока мы начинаем хорошодосамого большого срока, это не является проблемой на практике.
PDF вычисляется непосредственно с использованием отношения:
Гдеf(x; v)является PDF центральногоChi Squared DistributionиIv(x)является модифицированной функцией Бесселя, см.cyl_bessel_i. Для малых значений параметра нецентральности используется отношение в терминахcyl_bessel_i. Однако этот метод не подходит для больших значений параметра нецентральности, поэтому в этом случае бесконечная сумма оценивается методом Бентона и Кришнамурти и обычными отношениями повторения для последовательных терминов.
Функции квантиля вычисляются числовой инверсией CDF. Улучшенный стартовый запрос от Томаса ЛууБыстрые и точные параллельные вычисления функций квантиля для генерации случайных чисел, докторская диссертация, 2016.
Для режима нецентрального ци-квадратного распределения не существуетзакрытой формы: она вычисляется численно путем нахождения максимума PDF. Аналогично, медиана вычисляется численно через квантиль.
Остальные функции, не являющиеся членами, используют следующие формулы:
Некоторые аналитические свойства нецентральных распределений (особенно унимодальность и монотонность их режимов) исследуются и суммируются:
Andrea van Aubel & Wolfgang Gawronski, Applied Mathematics and Computation, 141 (2003) 3-12.
Статья Noncentral Chi-Squared Distribution раздела Math Toolkit 2.5.0 Distributions может быть полезна для разработчиков на c++ и boost.
Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.
:: Главная :: Distributions ::
реклама |