Проверка статистических гипотез для сравнения алгоритмов

advertisement
Проверка статистических гипотез для сравнения
алгоритмов классификации
Илья Козлов
14 октября 2014 г.
Илья Козлов
Проверка статистических гипотез для сравнения алгори
Что такое статистические критерии и зачем они нужны
Типичная ситуация
Мы придумали новые признаки (применил новый алгоритм) и
увеличил F -меру на 1, 5%.
Как можно объяснить увеличение качества работы?
Случайное совпадение (основная гипотеза). Реального
улучшения нет.
Есть реальное улучшение качества работы (альтернатива)
Как проверить какое предположение верно?
Идея: Постоянно везти не может. Если мы провели серию
испытаний и каждый раз наш классификатор показал лучший
результат, то, вероятно, верна альтернатива.
Илья Козлов
Проверка статистических гипотез для сравнения алгори
Сразу возникают вопросы
А серии из 10 экспериментов достаточно?
А если наш критерий сработал лучше в 9 случаях из 10?
А в 8 из 15?
А 10 орехов это куча?
Надо иметь строгое правило, которое позволят сказать
отвергаем ли мы основную гипотезу (и,соответственно
принимаем альтернативу) или нет.
Такое правило называют статистическим критерием.
Илья Козлов
Проверка статистических гипотез для сравнения алгори
Немного терминологии
Статистическая гипотеза
Определённое предположение о распределении вероятностей,
лежащем в основе наблюдаемой выборки данных.
Пример: Выборка получена из нормального распределения с
матожиданием 0 и дисперсией 1
Статистика
σ-измеримая функция от выборки.
Пример: Выборочное среднее (оценка матожидания)
M̂ =
n
X
(xi )/n
i=1
Илья Козлов
Проверка статистических гипотез для сравнения алгори
Гипотеза и альтернатива
Как правило статистическую гипотезу H0 рассматривают
вместе с альтернативой H1 . При этом гипотезу H0 пытаются
отвергнуть.
Пример
H0 : выборка получена из нормального распределения N(0, 1).
H1 : выборка получена из нормального распределения с
матожиданием больше 0: N(µ, 1) где µ > 0
Если верна альтернатива, то ожидаем событий, более
характерных для альтернативы чем для основной гипотезы, т.е.
таких что
P(A|основная гипотеза) P(A|альтернатива)
Илья Козлов
Проверка статистических гипотез для сравнения алгори
Пример
В данном случае A свидетельствует в пользу основной
гипотезы, C в пользу альтернативы, B ни о чём не
свидетельствует.
Илья Козлов
Проверка статистических гипотез для сравнения алгори
Статистический критерии
Статистический критерии
Строгое математическое правило, по которому принимается
или отвергается статистическая гипотеза.
Пример: Если выборочное среднее из предыдущего примера по
модулю больше 1 то отвергаем гипотезу.
Критическая область
Множество G такое что при попадании статистики в множество
M ∈ G происходит отвержение гипотезы H0 и принятие H1
Пример: G = [1, +∞)
Илья Козлов
Проверка статистических гипотез для сравнения алгори
Ошибки 1-го и 2-го рода
Соответственно возможны 4 ситуации:
принимается H0
Верна гипотеза H0
ок
Верна альтернатива H1 ошибка 2-го рода
принимается H1
ошибка 1-го рода
ок
Цена ошибок 1-го и 2-го рода различны и их сложно оценить.
Поэтому вместо привычных по машинному обучению штрафов
обычно фиксируют вероятность ошибки 1-го рода и
минимизируют вероятность ошибки 2-го рода.
Илья Козлов
Проверка статистических гипотез для сравнения алгори
Уровень значимости. p-value
Уровень значимости (significance level)
допустимая вероятность отвергнуть гипотезу H0 при условие
что она верна. (совершить ошибку 1-го рода)
Обозначают α
Часто в качестве уровня значимости выбирают α = 0.05
p-value (достигаемый уровень значимости)
минимальный уровень значимости (вероятность отвергнуть
верную гипотезу H0 ) при котором отвергается H0
Чем меньше p − value тем лучше.
Илья Козлов
Проверка статистических гипотез для сравнения алгори
Гипотеза однородности
Пусть есть две выборки X из функции распределения F и Y из
функции распределения G . Элементы в каждой выборке
независимы (т.е. xi и xj независимы, а вот xi и yi могут быть
зависимы).
Основная гипотеза
H0 выборки получены из одинакового распределения. F = G
(числа в обоих выборках примерно одинаковые)
Альтернативных гипотез может быть несколько:
Гипотеза неоднородности
H1 : выборки получены из разных распределений F 6= G (числа
в обоих выборках не одинаковые)
Гипотеза доминирования
H1 : выборки получены из разных распределений F ≥ G (числа
во второй выборке побольше)
Илья Козлов
Проверка статистических гипотез для сравнения алгори
Независимые и попарные наблюдения
Следует разделять случаи
Независимых наблюдений
Попарных наблюдений
Независимые наблюдения
Выборки X и Y независимы, т.е. xi и yi независимы (и любое
подмножество X ∪ Y независимо)
Пример: доктор Аванесов лечит простуду касторкой и плацебо.
X – время болезни для тех, кто лечился касторкой, Y – время
болезни для тех, кого лечили плацебо.
Попарные наблюдения
xi и yi зависимы, xi и yj при i 6= j независимы.
Пример: мы используем два различных классификатора A и B
на наборе датасетов, хотим проверить что B работает лучше.
Илья Козлов
Проверка статистических гипотез для сравнения алгори
Попарные наблюдения. Критерий знаковых рангов
Уилкоксона (Wilcoxon signed-rank test)
Пусть данные не только сравнимы, но и живут в группе (т.е. их
можно складывать/вычитать), и выборки i.i.d. то можно
использовать критерий Уилкоксона:
как работает
1
Считаем zi = xi − yi
2
упорядочиваем |zi | по возрастанию
P
считаем статистику
ri sign(zi ) где ri – ранг (порядковый
номер) i-го наблюдения (в упорядоченном ряду),
3
Илья Козлов
Проверка статистических гипотез для сравнения алгори
Критерий знаковых рангов Уилкоксона
Что ожидаем увидеть
1
Верна H0 — статистика лежит в районе нуля
2
Верна альтернатива неоднородности – статистика сильно
отличается от нуля по модулю, не важно в какую сторону.
3
Верна альтернатива доминирования X > Y – ожидаем что
статистика будет сильно больше нуля.
Илья Козлов
Проверка статистических гипотез для сравнения алгори
Критерий знаковых рангов Уилкоксона в R
> X = rnorm (100 , 0 , 1)
> Y = rnorm (100 , 1 , 1) + X
> wilcox . test (Y , X , paired = TRUE , alternative = " greater ")
W = 6871 , p - value = 2.434 e -06
Поддерживает несколько альтернатив
(X > Y , X 6= Y , X < Y ) Для этого надо поменять
alternative на "greater "two.sided "less"соответственно
Может работать точно (для этого надо указать
exact=TRUE)
Не забудьте paired=TRUE, иначе это будет уже другой
критерий.
Илья Козлов
Проверка статистических гипотез для сравнения алгори
Критерий знаковых рангов Уилкоксона. Полезные
ссылки
Критерий Уилкоксона в R:
http://stat.ethz.ch/R-manual/R-patched/library/
stats/html/wilcox.test.html
Описание алгоритма
machinelearning.ru/wiki/index.php?title=
Критерий_знаковых_рангов_Уилкоксона
Илья Козлов
Проверка статистических гипотез для сравнения алгори
Две независимые выборки
Теперь рассмотрим две независимые выборки X и Y (т.е.
такие, что x1 , . . . xn , y1 , . . . , ym независимые).
Пример
Пациентов первой группы лечили новым чудо лекарством, а
вторая группа принимает плацебо. Измерялось время до
выздоровления. Необходимо проверить эффективность
лекарства.
Применение в данном случае методов из предыдущей части не
желательно так как оно приводит к потере информации.
Илья Козлов
Проверка статистических гипотез для сравнения алгори
Критерий Уилкоксона-Манна-Уитни (Mann-Whitney U
test)
Тест Уилкоксона-Манна-Уитни применяется для независимых
выборок.
Как работает
Считаем статистику
U=
XX
i
I (xi > yj )
j
Если верна гипотеза H0 то P(yi > xj ) =
1
2
Если верна альтернатива неоднородности то ожидаем
попадание в правый или левый хвост.
Если верна альтернатива доминирования то ожидаем
попадание в правый хвост.
Илья Козлов
Проверка статистических гипотез для сравнения алгори
Критерий Уилкоксона-Манна-Уитни в R
> X = rnorm (100 , 0 , 1)
> Y = rnorm (100 , 0.1 , 1)
> wilcox . test (Y , X , paired = FALSE , alternative = " greater ")
W = 6871 , p - value = 2.434 e -06
Илья Козлов
Проверка статистических гипотез для сравнения алгори
Критерий Уилкоксона-Манна-Уитни. Ссылки.
Критерий Уилкоксона-Манна-Уитни в R:
http://stat.ethz.ch/R-manual/R-patched/library/
stats/html/wilcox.test.html
Описание алгоритма
machinelearning.ru/wiki/index.php?title=
Критерий_Уилкоксона-Манна-Уитни
Илья Козлов
Проверка статистических гипотез для сравнения алгори
Некоторые ошибки и заблуждения
p-value это не вероятность того, что верна основная гипотеза H0
p-value так же не является вероятностью того, что неверна
альтернатива H1 . Статистические критерии вообще не умеют
оценивать такие вероятности.
Большой p-value не означает что H0 верна.
На самом деле возможны различные объяснения большого
p-value:
Гипотеза H0 верна
Гипотеза H0 не верна, но размер выборки недостаточно
большой. Большее число экспериментов позволят
отвергнуть H0
Гипотеза H0 не верна, но мы применяем неправильный
критерий.
Илья Козлов
Проверка статистических гипотез для сравнения алгори
Некоторые ошибки и заблуждения
p-value это не вероятность того, что верна основная гипотеза H0
p-value так же не является вероятностью того, что неверна
альтернатива H1 . Статистические критерии вообще не умеют
оценивать такие вероятности.
Большой p-value не означает что H0 верна.
На самом деле возможны различные объяснения большого
p-value:
Гипотеза H0 верна
Гипотеза H0 не верна, но размер выборки недостаточно
большой. Большее число экспериментов позволят
отвергнуть H0
Гипотеза H0 не верна, но мы применяем неправильный
критерий.
Илья Козлов
Проверка статистических гипотез для сравнения алгори
Дополнение 1. Сравнение со случайным
классификатором
Часто мы хотим доказать, что наш классификатор работает
лучше чем случайный.
Гипотеза и альтернатива
H0 : Случайный классификатор
P(правильно классифицировали элемент i) =
H1 : Лучше чем случайный
P(правильно классифицировали элемент i) >
1
2
1
2
Соответственно если верна гипотеза H0 , то число правильно
классифицированных элементов распределено согласно
B(n, 0.5). Если верна альтернатива, то ожидаем попадания в
правый хвост B(n, 0.5)
Илья Козлов
Проверка статистических гипотез для сравнения алгори
Сравнение со случайным классификатором. Что
ожидаем увидеть
Верна H0 : Число правильно классифицированных элементов
≈ 0.5 ∗ n
Верна H1 : Число правильно классифицированных элементов
0.5 ∗ n0
Илья Козлов
Проверка статистических гипотез для сравнения алгори
Сравнение со случайным классификатором. p-value
Для того, чтобы посчитать p-value можно воспользоваться
нормальной аппроксимацией:
Число правильно классифицированных ∝ N(0.5 ∗ n, 0.25 ∗ n)
Далее можно привести к N(0, 1) и посмотреть в табличке или
воспользоваться R:
> pvalue = 1 - pnorm (k , 0.5 * n ,
(0.25 * n ) ^0.5)
Где k–число правильно классифицированных элементов,
n–общее число элементов.
Илья Козлов
Проверка статистических гипотез для сравнения алгори
Download