WM-критерий
Материал из MachineLearning.
WM-критерий — непараметрический ранговый критерий для проверки принадлежности двух независимых выборок к общей генеральной совокупности с одинаковыми характеристиками рассеяния. В отличие от критерия Зигеля-Тьюки не требует предположения о равенстве средних в выборках.
Коротко, идея метода следующая. По двум выборкам подсчитываются модули разностей значений наблюдений, взятых наугад без возвращения. К получившимся выборкам модулей разностей применяется U-критерий Манна-Уитни о сдвиге.
Содержание |
Примеры задач
Менеджер по кейтерингу хочет проверить, одинакова ли дисперсия количества соуса в упаковке при расфасовке с помощью двух диспенсеров. Каждым из диспенсеров он наполнил 10 упаковок. Возможно, диспенсеры откалиброваны по-разному (нет требования равенства медиан).
- H0 : дисперсия количества соуса в упаковке не отличается для двух диспенсеров.
- H1 : дисперсия количества соуса в упаковке для двух диспенсеров отличается.
Описание критерия
Пусть имеются две простые независимые выборки:
- .
Параметр местоположения неизвестен, предположения о симметрии распределения не делается.
Нулевая гипотеза:
- H0: (Выборки имеют одинаковый разбросс)
Против альтернатив:
- H1:
Подсчет статистики критерия: Генерируем вспомогательные выборки
Алгоритм порождения выборки : из берутся наугад без возвращения пары наблюдений , в выборку добавляется , процесс продолжается до тех пор, пока в не останется наблюдений, либо останется одно наблюдение. Выборка порождается аналогично.
В предположении H0, статистика U-критерия Мана-Уитни имеет табличное распределение.
Критерий может быть расширен на случай k выборок за счет использования критерия Краскела-Уоллиса (обобщение U-критерия).
Реализация
- Реализация WM-критерия для Matlab
- Пример реализации на языке R:
wm.test <- function(x, y, alternative= c("two.sided", "less", "greater")) { x1 <- sample(x, 2*floor(length(x)/2)) y1 <- sample(y, 2*floor(length(y)/2)) x_diff <- abs(x1[1:(length(x1)/2)] - x1[(length(x1)/2+1):length(x1)]) y_diff <- abs(y1[1:(length(y1)/2)] - y1[(length(y1)/2+1):length(y1)]) return(wilcox.test(x_diff, y_diff, alternative)) }
Литература
- Clifford Blair, R., & Thompson, G. L. (1992). A distribution-free rank-like test for scale with unequal population locations. Communications in Statistics — Simulation and Computation, 21(2), 353-371.
- Ramsey, P. H., & Ramsey, P. P. (2007). Testing variability in the two-sample case. Communications in Statistics — Simulation and Computation, 36(2), 233-248.