Ми реалізували декілька типів тестування статистичної гіпотези, одним з яких є тест моделей, придатний для квадратних чи - квадратний тест чи чисел зразків у бункерах, визначений із оберненого CDF заданого розподілу ймовірностей. Так, наприклад, для тестування генерації зразка розподілу Коші я запускаю щось подібне
with(Statistics):
infolevel[Statistics] := 1:
distribution := CauchyDistribution(2, 3):
sample := Sample(distribution, 10^6):
ChiSquareSuitableModelTest(sample, distribution, 'bins' = 100, 'level' = 0.001);
α
Для розподілів з кінцевими моментами я обчислюю, з одного боку, декілька зразкових моментів, а з іншого - символічно обчислюю відповідні моменти розподілу та їх стандартну помилку. Так, наприклад, для бета-розподілу:
with(Statistics):
distribution := BetaDistribution(2, 3):
distributionMoments := Moment~(distribution, [seq(1 .. 10)]);
standardErrors := StandardError[10^6]~(Moment, distribution, [seq(1..10)]);
evalf(distributionMoments /~ standardErrors);
106
with(Statistics):
sample := Sample(BetaDistribution(2, 3), 10^6):
sampleMoments := map2(Moment, sample, [seq(1 .. 10)]);
distributionMoments := [2/5, 1/5, 4/35, 1/14, 1/21, 1/30, 4/165, 1/55, 2/143, 1/91];
standardErrors :=
[1/5000, 1/70000*154^(1/2), 1/210000*894^(1/2), 1/770000*7755^(1/2),
1/54600*26^(1/2), 1/210000*266^(1/2), 7/5610000*2771^(1/2),
1/1567500*7809^(1/2), 3/5005000*6685^(1/2), 1/9209200*157366^(1/2)];
deviations := abs~(sampleMoments - distributionMoments) /~ standardErrors;
Цифри в distributionMoments
і standardErrors
приходять від першого запуску вище. Тепер, якщо генерація вибірки правильна, кількість відхилень повинна бути порівняно невеликою. Я припускаю, що вони приблизно нормально розподіляються (що насправді насправді не буває, але це досить близько - пригадайте, що це масштабовані версії зразкових моментів, а не самі зразки), і тому я можу, наприклад, позначити випадок, коли відхилення більше 4 - відповідає моменту вибірки, який відхиляється більш ніж у чотири рази від стандартної помилки від моменту розподілу. Це навряд чи станеться випадковим чином, якщо генерування вибірки є хорошим. З іншого боку, якщо перші 10 зразкових моментів відповідають моменту розподілу в межах менше ніж піввідсотка, ми маємо досить гарне наближення розподілу.