Пороговая вероятность ошибки

Вероятности ошибок

Под ошибкой первого рода понимается
ложная тревога. Вероятность ошибки
первого рода вычисляется как:

— для непрерывной случайной величины

;

— для дискретной случайной величины

.

Под ошибкой второго рода понимается
пропуск цели. Вероятность ошибки второго
рода вычисляется как:

— для непрерывной случайной величины

;

— для дискретной случайной величины

.

Вероятность

– носит название вероятности правильного
обнаружения.

Как правило, наблюдения распределены
по нормальному закону:

На рисунке ниже показаны ошибки первого
и второго рода для случая нормального
распределения наблюдений.

Обычно, в задачах обнаружения пропуск
цели штрафуется дороже, чем ложная
тревога. Для значений функции потерь,
приведенных в таблице,

,

.

Таблица 1

С(x,d)

d=d1

d=d0

x=x1

c11

c10

x=x0

c01

c00

Рабочая характеристика решающего правила

На рисунке ниже показаны характеристики

,

и

семейства решающих правил

.
Характеристика показывает зависимость
вероятности правильного обнаружения
объекта и вероятности ложной тревоги.
Для приведенных характеристик справедливо
следующее соотношение:

.
В качестве примера характеристики
решающего правила можно рассмотрим
отношение сигнал/шум. Тогда, в случае
нормального распределения наблюдений
и при условии, что

,


.

– функция мощности решающего правила.
Под мощностью решающего правила при
заданном значении

понимают вероятность принятия правильного
решения при заданном состоянии среды.

Байесово решающее правило

Условные риски от принятия решающего
правила

равны (здесь и далее используются
значения функции потерь из таблицы 1):


;


.

Средний риск принятия решающего правила

равен:


.

Апостериорный риск принятия решающего
правила

равен:


;


.

Байесовское решающее правило

:


.

Рассмотрим случай, когда

,
тогда

.

Выполним ряд преобразований:


;


.

С учетом того, что

,
получаем:


.

Тогда

,

где

– отношение правдоподобия;

– пороговое значение.

При равных вероятностях

обычно

и тогда

.

Пример. Пусть задана функция
правдоподобия

,
вероятности нахождения пространства
в различных состояниях одинаковые

,
пороговое значение

.
На рисунке ниже показана функция
правдоподобия и граница разбиения
множества наблюдений

.

Отношение правдоподобия показано на
рис. ниже

Если наблюдения имеют нормальное
распределение, т.е.


;


,
тогда отношение правдоподобия имеет
вид:


.

Для удобства используется логарифм
отношения правдоподобия:


.

Тогда байесовское решающее правило
имеет вид:


.

Максимум
апостериорной вероятности

Функция потерь

,
где

.
Тогда

,

и пороговое значение

.

Условный риск равен:


;


.

Средний риск равен:


.

Минимизируем вероятность принятия
неправильного решения

Максимум
правдоподобия

При

пороговое значение

.

Средний риск равен:

.

Решающее правило
Неймана-Пирсона

Решающее правило Неймана-Пирсона
представляет собой семейство решающих
правил и является пороговым:

,

где

определяется из условия:


,

где α – заданная вероятность ложной
тревоги.

Решающее правило Неймана-Пирсона принято
характеризовать с использованием
функции мощности решающего правила

.

Лемма Неймана-Пирсона

Решающее правило Неймана-Пирсона для
любого значения вероятности ложной
тревоги и для любого решающего правила
обладает наиболее мощным среди всех
решающих правил:



,

или


,

.

Следствие: Решающее правило
Неймана-Пирсона является допустимым
при простой функции потерь:

— допустимое решающее правило.

Доказательство:


;

и если


,
то


.

Доказательство (леммы):

Пусть


пространство наблюдений,

– область пространства наблюдений, при
попадании наблюдения в которую решающее
правило Неймана-Пирсона принимает
значение

,

– область пространства наблюдений, при
попадании наблюдения в которую
произвольное решающее правило принимает
значение

.

Введем ряд обозначений (см. рисунок
ниже):


;


;


.

=

=


При переходе (1) использовалось соотношение:

,

.
При переходе (2) учитывалось, что

,
т.к.

— порог для

,
а

=Ø.

Замечание. При

выполняется строгое равенство

.

Структура решающих
правил

Все решающие правила можно рассматривать
как правила Неймана-Пирсона

при фиксированном с помощью порога
значении

,
а это значит, что и МАВ и МП и байесовские
решающие правила дают допустимую
решающую функцию. В тоже время все
критерии можно рассматривать как
байесовские при постой функции потерь.
В таблице ниже приведены решающие
правила и соответствующие им пороги.

Решающее правило

Порог

Байесово решающее правило

МАВ (максимум апостериорной вероятности)

МП (максимум правдоподобия)

1

Н-П (решающее правило Неймана-Пирсона)

Определяется з условия

Рассмотрим задачу обнаружения самолета
радиолокационными средствами. На рисунке
ниже показаны функции правдоподобия
для состояний среды

и

при наличии наблюдений

.
При отражении сигнала от самолета сигнал
хорошо локализован и имеет меньшую
дисперсию, при отражении от облаков
сигнал плохо локализован.


На рисунках ниже показано множество
решающих правил

и решающие правила для МП, байесова
решающего правила и решающего правила
Неймана-Пирсона.

Решающее правило МП есть точка касания
границы множества

и прямой, проведенной под углом 135° к
оси абсцисс.

Байесово решающее правило есть точка
касания границы множества

и прямой, проходящей через точку

.


Решающее правило Неймана-Пирсона
определяется соответствующими значениями

и

.


d0

Множество точек

обладает свойством поворотной симметрии
относительно прямой

,

,
т.е. симметрией относительно вращения
на 180°. Симметричность области

следует из возможности для любого
разбиения

,

построить разбиение

,

,
тогда


;


.

Асимметрия области относительно
биссектрисы объясняется различием
функций правдоподобия

и

.

Последовательные
решения

До сих пор рассматривалась задача
принятия решения на основе анализа всех
имеющихся измерений (наблюдений). Однако,
если вектор наблюдения

можно рассматривать как последовательность
векторов

,
каждый из которых получен в момент
времени

имеет смысл рассматривать задачу
принятия решения как совокупность двух
задач:

а) принятие решения об остановке
наблюдений;

б) принятия решения по имеющимся к
моменту остановки наблюдения измерениям.

Рассмотрим простую двухальтернативную
задач. Пусть покупателю нужно принять
решение о закупке партии товара, например,
лампочек на основе закупки и исследования
пробной партии. Множество состояний
партии лампочек

,
где

— партия лампочек не является бракованной,

— партия лампочек бракованная. Множество
решений

,
где

— решение о закупке партии лампочек,

— решение об отказе о закупке партии
лампочек. Множество измерений на момент
времени

будем обозначать

,

.
Пусть измерения являются независимыми:

.
Требуется определить момент

,
после которого наблюдения дальше не
производятся и по совокупности измерений

принять решение

или

.

Рассмотрим разбиение пространства

,
где

— область продолжения наблюдений,

— область принятия решения

,

— область принятия решения

.
При этом

Ø,

.

В качестве критерия оптимальности будем
использовать среднее количество
измерений

,
необходимое для принятия решения при
заданных вероятностях ошибок I
и II рода.

Для принятия решения будем использовать
отношение правдоподобия

,

или его логарифм

,

.

Математик А. Вальд (1947 г.) показал, что
при заданных ошибках первого рода

и второго рода

наименьшим временем анализа обладает
процедура вида:


,

где

и

— некоторые пороговые значения.

На рисунке ниже показаны пороги

и

на пря мой

.

Покажем, что для порогов

и

справедливы следующие соотношения:


,

.

Действительно,

,
где при переходе (1) учтено, что

,

.

Аналогично:


,
где при переходе (1) учтено, что,

,

.

На рисунке ниже показаны пороги

и

на пря мой

с учетом полученных соотношений.

Замечание. Для того чтобы обеспечить
выполнение неравенства

достаточно, что бы

,

.
Действительно,

,
тогда

.
Из получено неравенства следует, что

и

.

Точные значения порогов вычислить
трудно, поэтому полагают, что:

,

.
Тогда решения становятся более осторожными
и увеличивается среднее время до принятия
решения, т.е. в рассматриваемом примере
увеличивается количество лампочек,
которые нужно проверить до принятия
решения.

При изменении пороговых значений
вероятности ошибок I и II
рода также изменятся:

,

.
Для новых значений вероятностей
выполняются следующие соотношения:

,
откуда

.

Сложив неравенства, получаем:


;


,

откуда

.

Примечание. На практике обычно
работают с логарифмом отношения
правдоподобия

.
Тогда


;


;


.

При работе с логарифмом отношения
правдоподобия для нормального закона
не требуется вычислять экспоненту.

На рисунке ниже показаны пороги

и

на пря мой

.

Утверждение. Количество наблюдений

до остановки наблюдений конечно, т.е.
процедура последовательного анализа
является конечной:

,
как при принятии решения

,
так и при принятии решения

.

Лемма. Пусть

– последовательность независимых
одинаково распределенных случайных
величин с математическим ожиданием

случайных величин. Тогда для всякой
последовательной процедуры со свойством

имеет место равенство:


.

Оценка количества
наблюдений

Пусть множество состояний природы

,
множество решений

.
Рассмотрим две гипотезы:

,

.

При состоянии природы

получаем

,
где

,
где

— номер последнего наблюдения, где

,

.

При состоянии природы

получаем

,
где

,
где

— номер последнего наблюдения, где

.

.

В среднем для принятия решения

необходимо выполнить

измерений, для принятия решения

необходимо в среднем

измерений.

На рисунке ниже показаны функции
апостериорной вероятности для состояний
среды

и

при наличии наблюдения

.

Значения

,

.

Если

,
тогда

.
Если

,
тогда

,
и принимается решение

.

В общем виде для принятия некоторого
решения

необходимо в среднем выполнить

измерений:


,


.

Найдем числитель этого выражения. Для
этого будем считать, что в момент
остановки

или

.

Тогда вероятности событий равны:

Откуда


,
тогда


,

.

Усеченные процедуры

Последовательная процедура имеет
минимальное среднее время анализа,
однако некоторая реализация процедуры
может оказаться непомерно длинной.
Поэтому, обычно, заранее выбирают число

,
являющееся максимальным номером
наблюдения, исходя из заданной вероятности

.
Если решение не принято последовательной
процедурой, то оно принимается, например,
по методу Неймана-Пирсона. При этом
ухудшается качество решения, т.е.

оказывается больше.

Пусть провели серию из

наблюдений. В результате был получен
вектор наблюдений

.
После

наблюдений ресурс наблюдений оказался
исчерпан. Применим классическую схему:
вычислим отношение правдоподобия

,
решение

,
где ∆ – пороговое значение.

Усеченная пороговая процедура дает
решения хуже по сравнению с классической
процедурой, поскольку при принятии
решения используется аномальная
последовательность наблюдений.

Наблюдение в форме
прогноза

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]

  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #

Ошибки первого и второго рода

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

Ошибка первого
рода состоит в том, что будет отвергнута
правильная гипотеза.

Ошибка второго
рода состоит в том, что будет принята
неправильная гипотеза.

Подчеркнём, что
последствия этих ошибок могут оказаться
весьма различными. Например, если
отвергнуто правильное решение «продолжать
строительство жилого дома», то эта
ошибка первого рода повлечёт материальный
ущерб: если же принято неправильное
решение «продолжать строительство»,
несмотря на опасность обвала стройки,
то эта ошибка второго рода может повлечь
гибель людей. Можно привести примеры,
когда ошибка первого рода влечёт более
тяжёлые последствия, чем ошибка второго
рода.

Замечание 1.
Правильное решение может быть принято
также в двух случаях:

  1. гипотеза принимается,
    причём и в действительности она
    правильная;

  2. гипотеза отвергается,
    причём и в действительности она неверна.

Замечание 2.
Вероятность совершить ошибку первого
рода принято обозначать через
;
её называют уровнем значимости. Наиболее
часто уровень значимости принимают
равным 0,05 или 0,01. Если, например, принят
уровень значимости, равный 0,05, то это
означает, что в пяти случаях из ста
имеется риск допустить ошибку первого
рода (отвергнуть правильную гипотезу).

Статистический
критерий проверки нулевой гипотезы.
Наблюдаемое значение критерия

Для проверки
нулевой гипотезы используют специально
подобранную случайную величину, точное
или приближённое распределение которой
известно. Обозначим эту величину в целях
общности через
.

Статистическим
критерием

(или просто критерием) называют случайную
величину
,
которая служит для проверки нулевой
гипотезы.

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

Эта величина
случайная, потому что в различных опытах
дисперсии принимают различные, наперёд
неизвестные значения, и распределена
по закону Фишера – Снедекора.

Для проверки
гипотезы по данным выборок вычисляют
частные значения входящих в критерий
величин и таким образом получают частное
(наблюдаемое) значение критерия.

Наблюдаемым
значением
называют значение критерия, вычисленное
по выборкам. Например, если по двум
выборкам найдены исправленные выборочные
дисперсиии,
то наблюдаемое значение критерия.

Критическая
область. Область принятия гипотезы.
Критические точки

После выбора
определённого критерия множество всех
его возможных значений разбивают на
два непересекающихся подмножества:
одно из них содержит значения критерия,
при которых нулевая гипотеза отвергается,
а другая – при которых она принимается.

Критической
областью называют совокупность значений
критерия, при которых нулевую гипотезу
отвергают.

Областью принятия
гипотезы (областью допустимых значений)
называют совокупность значений критерия,
при которых гипотезу принимают.

Основной принцип
проверки статистических гипотез можно
сформулировать так: если наблюдаемое
значение критерия принадлежит критической
области – гипотезу отвергают, если
наблюдаемое значение критерия принадлежит
области принятия гипотезы – гипотезу
принимают.

Поскольку критерий
— одномерная случайная величина, все её
возможные значения принадлежат некоторому
интервалу. Поэтому критическая область
и область принятия гипотезы также
являются интервалами и, следовательно,
существуют точки, которые их разделяют.

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

Различают
одностороннюю (правостороннюю или
левостороннюю) и двустороннюю критические
области.

Правосторонней
называют критическую область, определяемую
неравенством
>,
где— положительное число.

Левосторонней
называют критическую область, определяемую
неравенством
<,
где— отрицательное число.

Односторонней
называют правостороннюю или левостороннюю
критическую область.

Двусторонней
называют критическую область, определяемую
неравенствами
где.

В частности, если
критические точки симметричны относительно
нуля, двусторонняя критическая область
определяется неравенствами ( в
предположении, что
>0):

,
или равносильным неравенством
.

Отыскание
правосторонней критической области

Как найти критическую
область? Обоснованный ответ на этот
вопрос требует привлечения довольно
сложной теории. Ограничимся её элементами.
Для определённости начнём с нахождения
правосторонней критической области,
которая определяется неравенством
>,
где>0.
Видим, что для отыскания правосторонней
критической области достаточно найти
критическую точку. Следовательно,
возникает новый вопрос: как её найти?

Для её нахождения
задаются достаточной малой вероятностью
– уровнем значимости
.
Затем ищут критическую точку,
исходя из требования, чтобы при условии
справедливости нулевой гипотезы
вероятность того, критерийпримет значение, большее,
была равна принятому уровню значимости:
Р(>)=.

Для каждого критерия
имеются соответствующие таблицы, по
которым и находят критическую точку,
удовлетворяющую этому требованию.

Замечание 1.
Когда
критическая точка уже найдена, вычисляют
по данным выборок наблюдаемое значение
критерия и, если окажется, что
>,
то нулевую гипотезу отвергают; если же<,
то нет оснований, чтобы отвергнуть
нулевую гипотезу.

Пояснение. Почему
правосторонняя критическая область
была определена, исходя из требования,
чтобы при справедливости нулевой
гипотезы выполнялось соотношение

Р(>)=?
(*)

Поскольку вероятность
события
>мала (— малая вероятность), такое событие при
справедливости нулевой гипотезы, в силу
принципа практической невозможности
маловероятных событий, в единичном
испытании не должно наступить. Если всё
же оно произошло, т.е. наблюдаемое
значение критерия оказалось больше,
то это можно объяснить тем, что нулевая
гипотеза ложна и, следовательно, должна
быть отвергнута. Таким образом, требование
(*) определяет такие значения критерия,
при которых нулевая гипотеза отвергается,
а они и составляют правостороннюю
критическую область.

Замечание 2.
Наблюдаемое значение критерия может
оказаться большим
не потому, что нулевая гипотеза ложна,
а по другим причинам (малый объём выборки,
недостатки методики эксперимента и
др.). В этом случае, отвергнув правильную
нулевую гипотезу, совершают ошибку
первого рода. Вероятность этой ошибки
равна уровню значимости.
Итак, пользуясь требованием (*), мы с
вероятностьюрискуем совершить ошибку первого рода.

Замечание 3. Пусть
нулевая гипотеза принята; ошибочно
думать, что тем самым она доказана.
Действительно, известно, что один пример,
подтверждающий справедливость некоторого
общего утверждения, ещё не доказывает
его. Поэтому более правильно говорить,
«данные наблюдений согласуются с нулевой
гипотезой и, следовательно, не дают
оснований её отвергнуть».

На практике для
большей уверенности принятия гипотезы
её проверяют другими способами или
повторяют эксперимент, увеличив объём
выборки.

Отвергают гипотезу
более категорично, чем принимают.
Действительно, известно, что достаточно
привести один пример, противоречащий
некоторому общему утверждению, чтобы
это утверждение отвергнуть. Если
оказалось, что наблюдаемое значение
критерия принадлежит критической
области, то этот факт и служит примером,
противоречащим нулевой гипотезе, что
позволяет её отклонить.

Отыскание
левосторонней и двусторонней критических
областей***

Отыскание
левосторонней и двусторонней критических
областей сводится (так же, как и для
правосторонней) к нахождению соответствующих
критических точек. Левосторонняя
критическая область определяется
неравенством
<(<0).
Критическую точку находят, исходя из
требования, чтобы при справедливости
нулевой гипотезы вероятность того, что
критерий примет значение, меньшее,
была равна принятому уровню значимости:
Р(<)=.

Двусторонняя
критическая область определяется
неравенствами
Критические
точки находят, исходя из требования,
чтобы при справедливости нулевой
гипотезы сумма вероятностей того, что
критерий примет значение, меньшееили большее,
была равна принятому уровню значимости:

.
(*)

Ясно, что критические
точки могут быть выбраны бесчисленным
множеством способов. Если же распределение
критерия симметрично относительно нуля
и имеются основания (например, для
увеличения мощности) выбрать симметричные
относительно нуля точки (-
(>0),
то

Учитывая (*), получим
.

Это соотношение
и служит для отыскания критических
точек двусторонней критической области.
Критические точки находят по соответствующим
таблицам.

Дополнительные
сведения о выборе критической области.
Мощность критерия

Мы строили
критическую область, исходя из требования,
чтобы вероятность попадания в неё
критерия была равна
при условии, что нулевая гипотеза
справедлива. Оказывается целесообразным
ввести в рассмотрение вероятность
попадания критерия в критическую область
при условии, что нулевая гипотеза неверна
и, следовательно, справедлива конкурирующая.

Мощностью критерия
называют вероятность попадания критерия
в критическую область при условии, что
справедлива конкурирующая гипотеза.
Другими словами, мощность критерия есть
вероятность того, что нулевая гипотеза
будет отвергнута, если верна конкурирующая
гипотеза.

Пусть для проверки
гипотезы принят определённый уровень
значимости и выборка имеет фиксированный
объём. Остаётся произвол в выборе
критической области. Покажем, что её
целесообразно построить так, чтобы
мощность критерия была максимальной.
Предварительно убедимся, что если
вероятность ошибки второго рода (принять
неправильную гипотезу) равна
,
то мощность равна 1-.
Действительно, если— вероятность ошибки второго рода, т.е.
события «принята нулевая гипотеза,
причём справедливо конкурирующая», то
мощность критерия равна 1 —.

Пусть мощность 1

возрастает; следовательно, уменьшается
вероятностьсовершить ошибку второго рода. Таким
образом, чем мощность больше, тем
вероятность ошибки второго рода меньше.

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

Замечание 1.
Поскольку вероятность события «ошибка
второго рода допущена» равна
,
то вероятность противоположного события
«ошибка второго рода не допущена» равна
1 —,
т.е. мощности критерия. Отсюда следует,
что мощность критерия есть вероятность
того, что не будет допущена ошибка
второго рода.

Замечание 2. Ясно,
что чем меньше вероятности ошибок
первого и второго рода, тем критическая
область «лучше». Однако при заданном
объёме выборки уменьшить одновременно
иневозможно; если уменьшить,
тобудет возрастать. Например, если принять=0,
то будут приниматься все гипотезы, в
том числе и неправильные, т.е. возрастает
вероятностьошибки второго рода.

Как же выбрать
наиболее целесообразно? Ответ на этот
вопрос зависит от «тяжести последствий»
ошибок для каждой конкретной задачи.
Например, если ошибка первого рода
повлечёт большие потери, а второго рода
– малые, то следует принять возможно
меньшее.

Если
уже выбрано, то, пользуясь теоремой Ю.
Неймана и Э.Пирсона, можно построить
критическую область, для которойбудет минимальным и, следовательно,
мощность критерия максимальной.

Замечание 3.
Единственный способ одновременного
уменьшения вероятностей ошибок первого
и второго рода состоит в увеличении
объёма выборок.

Проверка корректности А/Б тестов

Время на прочтение
8 мин

Количество просмотров 8.3K

Хабр, привет! Сегодня поговорим о том, что такое корректность статистических критериев в контексте А/Б тестирования. Узнаем, как проверить, является критерий корректным или нет. Разберём пример, в котором тест Стьюдента не работает.

Меня зовут Коля, я работаю аналитиком данных в X5 Tech. Мы с Сашей продолжаем писать серию статей по А/Б тестированию, это наша третья статья. Первые две можно посмотреть тут:

  • Стратификация. Как разбиение выборки повышает чувствительность A/Б теста

  • Бутстреп и А/Б тестирование

Корректный статистический критерий

В А/Б тестировании при проверке гипотез с помощью статистических критериев можно совершить одну из двух ошибок:

  • ошибку первого рода – отклонить нулевую гипотезу, когда на самом деле она верна. То есть сказать, что эффект есть, хотя на самом деле его нет;

  • ошибку второго рода – не отклонить нулевую гипотезу, когда на самом деле она неверна. То есть сказать, что эффекта нет, хотя на самом деле он есть.

Совсем не ошибаться нельзя. Чтобы получить на 100% достоверные результаты, нужно бесконечно много данных. На практике получить столько данных затруднительно. Если совсем не ошибаться нельзя, то хотелось бы ошибаться не слишком часто и контролировать вероятности ошибок.

В статистике ошибка первого рода считается более важной. Поэтому обычно фиксируют допустимую вероятность ошибки первого рода, а затем пытаются минимизировать вероятность ошибки второго рода.

Предположим, мы решили, что допустимые вероятности ошибок первого и второго рода равны 0.1 и 0.2 соответственно. Будем называть статистический критерий корректным, если его вероятности ошибок первого и второго рода равны допустимым вероятностям ошибок первого и второго рода соответственно.

Как сделать критерий, в котором вероятности ошибок будут равны допустимым вероятностям ошибок?

Вероятность ошибки первого рода по определению равна уровню значимости критерия. Если уровень значимости положить равным допустимой вероятности ошибки первого рода, то вероятность ошибки первого рода должна стать равной допустимой вероятности ошибки первого рода.

Вероятность ошибки второго рода можно подогнать под желаемое значение, меняя размер групп или снижая дисперсию в данных. Чем больше размер групп и чем ниже дисперсия, тем меньше вероятность ошибки второго рода. Для некоторых гипотез есть готовые формулы оценки размера групп, при которых достигаются заданные вероятности ошибок.

Например, формула оценки необходимого размера групп для гипотезы о равенстве средних:

n > frac{left[ Phi^{-1} left( 1-alpha / 2 right) + Phi^{-1} left( 1-beta right) right]^2 (sigma_A^2 + sigma_B^2)}{varepsilon^2}

где alpha и beta – допустимые вероятности ошибок первого и второго рода, varepsilon – ожидаемый эффект (на сколько изменится среднее), sigma_A и sigma_B – стандартные отклонения случайных величин в контрольной и экспериментальной группах.

Проверка корректности

Допустим, мы работаем в онлайн-магазине с доставкой. Хотим исследовать, как новый алгоритм ранжирования товаров на сайте влияет на среднюю выручку с покупателя за неделю. Продолжительность эксперимента – одна неделя. Ожидаемый эффект равен +100 рублей. Допустимая вероятность ошибки первого рода равна 0.1, второго рода – 0.2.

Оценим необходимый размер групп по формуле:

import numpy as np
from scipy import stats

alpha = 0.1                     # допустимая вероятность ошибки I рода
beta = 0.2                      # допустимая вероятность ошибки II рода
mu_control = 2500               # средняя выручка с пользователя в контрольной группе
effect = 100                    # ожидаемый размер эффекта
mu_pilot = mu_control + effect  # средняя выручка с пользователя в экспериментальной группе
std = 800                       # стандартное отклонение

# исторические данные выручки для 10000 клиентов
values = np.random.normal(mu_control, std, 10000)

def estimate_sample_size(effect, std, alpha, beta):
    """Оценка необходимого размер групп."""
    t_alpha = stats.norm.ppf(1 - alpha / 2, loc=0, scale=1)
    t_beta = stats.norm.ppf(1 - beta, loc=0, scale=1)
    var = 2 * std ** 2
    sample_size = int((t_alpha + t_beta) ** 2 * var / (effect ** 2))
    return sample_size

estimated_std = np.std(values)
sample_size = estimate_sample_size(effect, estimated_std, alpha, beta)
print(f'оценка необходимого размера групп = {sample_size}')
оценка необходимого размера групп = 784

Чтобы проверить корректность, нужно знать природу случайных величин, с которыми мы работаем. В этом нам помогут исторические данные. Представьте, что мы перенеслись в прошлое на несколько недель назад и запустили эксперимент с таким же дизайном, как мы планировали запустить его сейчас. Дизайн – это совокупность параметров эксперимента, таких как: целевая метрика, допустимые вероятности ошибок первого и второго рода, размеры групп и продолжительность эксперимента, техники снижения дисперсии и т.д.

Так как это было в прошлом, мы знаем, какие покупки совершили пользователи, можем вычислить метрики и оценить значимость отличий. Кроме того, мы знаем, что эффекта на самом деле не было, так как в то время эксперимент на самом деле не запускался. Если значимые отличия были найдены, то мы совершили ошибку первого рода. Иначе получили правильный результат.

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

После этого можно посчитать долю экспериментов, в которых была совершена ошибка. Это будет точечная оценка вероятности ошибки первого рода.

Оценку вероятности ошибки второго рода можно получить аналогичным способом. Единственное отличие состоит в том, что каждый раз нужно искусственно добавлять ожидаемый эффект в данные экспериментальной группы. В этих экспериментах эффект на самом деле есть, так как мы сами его добавили. Если значимых отличий не будет найдено – это ошибка второго рода. Проведя 1000 экспериментов и посчитав долю ошибок второго рода, получим точечную оценку вероятности ошибки второго рода.

Посмотрим, как оценить вероятности ошибок в коде. С помощью численных синтетических А/А и А/Б экспериментов оценим вероятности ошибок и построим доверительные интервалы:

def run_synthetic_experiments(values, sample_size, effect=0, n_iter=10000):
    """Проводим синтетические эксперименты, возвращаем список p-value."""
    pvalues = []
    for _ in range(n_iter):
        a, b = np.random.choice(values, size=(2, sample_size,), replace=False)
        b += effect
        pvalue = stats.ttest_ind(a, b).pvalue
        pvalues.append(pvalue)
    return np.array(pvalues)

def print_estimated_errors(pvalues_aa, pvalues_ab, alpha):
    """Оценивает вероятности ошибок."""
    estimated_first_type_error = np.mean(pvalues_aa < alpha)
    estimated_second_type_error = np.mean(pvalues_ab >= alpha)
    ci_first = estimate_ci_bernoulli(estimated_first_type_error, len(pvalues_aa))
    ci_second = estimate_ci_bernoulli(estimated_second_type_error, len(pvalues_ab))
    print(f'оценка вероятности ошибки I рода = {estimated_first_type_error:0.4f}')
    print(f'  доверительный интервал = [{ci_first[0]:0.4f}, {ci_first[1]:0.4f}]')
    print(f'оценка вероятности ошибки II рода = {estimated_second_type_error:0.4f}')
    print(f'  доверительный интервал = [{ci_second[0]:0.4f}, {ci_second[1]:0.4f}]')

def estimate_ci_bernoulli(p, n, alpha=0.05):
    """Доверительный интервал для Бернуллиевской случайной величины."""
    t = stats.norm.ppf(1 - alpha / 2, loc=0, scale=1)
    std_n = np.sqrt(p * (1 - p) / n)
    return p - t * std_n, p + t * std_n

pvalues_aa = run_synthetic_experiments(values, sample_size, effect=0)
pvalues_ab = run_synthetic_experiments(values, sample_size, effect=effect)
print_estimated_errors(pvalues_aa, pvalues_ab, alpha)
оценка вероятности ошибки I рода = 0.0991
  доверительный интервал = [0.0932, 0.1050]
оценка вероятности ошибки II рода = 0.1978
  доверительный интервал = [0.1900, 0.2056]

Оценки вероятностей ошибок примерно равны 0.1 и 0.2, как и должно быть. Всё верно, тест Стьюдента на этих данных работает корректно.

Распределение p-value

Выше рассмотрели случай, когда тест контролирует вероятность ошибки первого рода при фиксированном уровне значимости. Если решим изменить уровень значимости с 0.1 на 0.01, будет ли тест контролировать вероятность ошибки первого рода? Было бы хорошо, если тест контролировал вероятность ошибки первого рода при любом заданном уровне значимости. Формально это можно записать так:

Для любого alpha in [0, 1] выполняется mathbb{P}(pvalue < alpha | H_0) = alpha.

Заметим, что в левой части равенства записано выражение для функции распределения p-value. Из равенства следует, что функция распределения p-value в точке X равна X для любого X от 0 до 1. Эта функция распределения является функцией распределения равномерного распределения от 0 до 1. Мы только что показали, что статистический критерий контролирует вероятность ошибки первого рода на заданном уровне для любого уровня значимости тогда и только тогда, когда при верности нулевой гипотезы p-value распределено равномерно от 0 до 1.

При верности нулевой гипотезы p-value должно быть распределено равномерно. А как должно быть распределено p-value при верности альтернативной гипотезы? Из условия для вероятности ошибки второго рода mathbb{P}(pvalue geq alpha | H_1) = beta следует, что mathbb{P}(pvalue < alpha | H_1) = 1 - beta.

Получается, график функции распределения p-value при верности альтернативной гипотезы должен проходить через точку [alpha, 1 - beta], где alpha и beta – допустимые вероятности ошибок конкретного эксперимента.

Проверим, как распределено p-value в численном эксперименте. Построим эмпирические функции распределения p-value:

import matplotlib.pyplot as plt

def plot_pvalue_distribution(pvalues_aa, pvalues_ab, alpha, beta):
    """Рисует графики распределения p-value."""
    estimated_first_type_error = np.mean(pvalues_aa < alpha)
    estimated_second_type_error = np.mean(pvalues_ab >= alpha)
    y_one = estimated_first_type_error
    y_two = 1 - estimated_second_type_error
    X = np.linspace(0, 1, 1000)
    Y_aa = [np.mean(pvalues_aa < x) for x in X]
    Y_ab = [np.mean(pvalues_ab < x) for x in X]

    plt.plot(X, Y_aa, label='A/A')
    plt.plot(X, Y_ab, label='A/B')
    plt.plot([alpha, alpha], [0, 1], '--k', alpha=0.8)
    plt.plot([0, alpha], [y_one, y_one], '--k', alpha=0.8)
    plt.plot([0, alpha], [y_two, y_two], '--k', alpha=0.8)
    plt.plot([0, 1], [0, 1], '--k', alpha=0.8)

    plt.title('Оценка распределения p-value', size=16)
    plt.xlabel('p-value', size=12)
    plt.legend(fontsize=12)
    plt.grid()
    plt.show()

plot_pvalue_distribution(pvalues_aa, pvalues_ab, alpha, beta)

P-value для синтетических А/А тестах действительно оказалось распределено равномерно от 0 до 1, а для синтетических А/Б тестов проходит через точку [alpha, 1 - beta].

Кроме оценок распределений на графике дополнительно построены четыре пунктирные линии:

  • диагональная из точки [0, 0] в точку [1, 1] – это функция распределения равномерного распределения на отрезке от 0 до 1, по ней можно визуально оценивать равномерность распределения p-value;

  • вертикальная линия с x=alpha – пороговое значение p-value, по которому определяем отвергать нулевую гипотезу или нет. Проекция на ось ординат точки пересечения вертикальной линии с функцией распределения p-value для А/А тестов – это вероятность ошибки первого рода. Проекция точки пересечения вертикальной линии с функцией распределения p-value для А/Б тестов – это мощность теста (мощность = 1 — beta). 

  • две горизонтальные линии – проекции на ось ординат точки пересечения вертикальной линии с функцией распределения p-value для А/А и А/Б тестов.

График с оценками распределения p-value для синтетических А/А и А/Б тестов позволяет проверить корректность теста для любого значения уровня значимости.

Некорректный критерий

Выше рассмотрели пример, когда тест Стьюдента оказался корректным критерием для случайных данных из нормального распределения. Может быть, все критерии всегда работаю корректно, и нет смысла каждый раз проверять вероятности ошибок?

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

def run_synthetic_experiments_two(values, sample_size, effect=0, n_iter=10000):
    """Проводим синтетические эксперименты на двух неделях."""
    pvalues = []
    for _ in range(n_iter):
        a, b = np.random.choice(values, size=(2, sample_size,), replace=False)
        b += effect
        # дублируем данные
        a = np.hstack((a, a,))
        b = np.hstack((b, b,))
        pvalue = stats.ttest_ind(a, b).pvalue
        pvalues.append(pvalue)
    return np.array(pvalues)

pvalues_aa = run_synthetic_experiments_two(values, sample_size)
pvalues_ab = run_synthetic_experiments_two(values, sample_size, effect=effect)
print_estimated_errors(pvalues_aa, pvalues_ab, alpha)
plot_pvalue_distribution(pvalues_aa, pvalues_ab, alpha, beta)
оценка вероятности ошибки I рода = 0.2451
  доверительный интервал = [0.2367, 0.2535]
оценка вероятности ошибки II рода = 0.0894
  доверительный интервал = [0.0838, 0.0950]

Получили оценку вероятности ошибки первого рода около 0.25, что сильно больше уровня значимости 0.1. На графике видно, что распределение p-value для синтетических А/А тестов не равномерно, оно отклоняется от диагонали. В этом примере тест Стьюдента работает некорректно, так как данные зависимые (стоимости покупок одного человека зависимы). Если бы мы сразу не догадались про зависимость данных, то оценка вероятностей ошибок помогла бы нам понять, что такой тест некорректен.

Итоги

Мы обсудили, что такое корректность статистического теста, посмотрели, как оценить вероятности ошибок на исторических данных и привели пример некорректной работы критерия.

Таким образом:

  • корректный критерий – это критерий, у которого вероятности ошибок первого и второго рода равны допустимым вероятностям ошибок первого и второго рода соответственно;

  • чтобы критерий контролировал вероятность ошибки первого рода для любого уровня значимости, необходимо и достаточно, чтобы p-value при верности нулевой гипотезы было распределено равномерно от 0 до 1.

5.6. Вероятность ошибки р

Если следовать подразделению статистики на описательную и аналитическую, то задача аналитической статистики — предоставить методы, с помощью которых можно было бы объективно выяснить,
например, является ли наблюдаемая разница в средних значениях или взаимосвязь (корреляция) выборок случайной или нет.

Например, если сравниваются два средних значения выборок, то можно сформулировать две предварительных гипотезы:

  • Гипотеза 0 (нулевая): Наблюдаемые различия между средними значениями выборок находятся в пределах случайных отклонений.

  • Гипотеза 1 (альтернативная): Наблюдаемые различия между средними значениями нельзя объяснить случайными отклонениями.

В аналитической статистике разработаны методы вычисления так называемых тестовых (контрольных) величин, которые рассчитываются по определенным формулам на основе данных,
содержащихся в выборках или полученных из них характеристик. Эти тестовые величины соответствуют определенным теоретическим распределениям
(t-pacnpeлелению, F-распределению, распределению X2 и т.д.), которые позволяют вычислить так называемую вероятность ошибки. Это вероятность равна проценту ошибки,
которую можно допустить отвергнув нулевую гипотезу и приняв альтернативную.

Вероятность определяется в математике, как величина, находящаяся в диапазоне от 0 до 1. В практической статистике она также часто выражаются в процентах. Обычно вероятность обозначаются буквой р:

0 < р < 1

Вероятности ошибки, при которой допустимо отвергнуть нулевую гипотезу и принять альтернативную гипотезу, зависит от каждого конкретного случая.
В значительной степени эта вероятность определяется характером исследуемой ситуации. Чем больше требуемая вероятность, с которой надо избежать ошибочного решения,
тем более узкими выбираются границы вероятности ошибки, при которой отвергается нулевая гипотеза, так называемый доверительный интервал вероятности.
Обычно в исследованиях используют 5% вероятность ошибки.

Существует общепринятая терминология, которая относится к доверительным интервалам вероятности:

  • Высказывания, имеющие вероятность ошибки р <= 0,05 — называются значимыми.
  • Высказывания с вероятностью ошибки р <= 0,01 — очень значимыми,
  • А высказывания с вероятностью ошибки р <= 0,001 — максимально значимыми.

В литературе такие ситуации иногда обозначают одной, двумя или тремя звездочками.

Вероятность ошибки Значимость Обозначение
р > 0.05 Не значимая ns
р <= 0.05 Значимая *
р <= 0.01 Очень значимая **
р <= 0.001 Максимально значимая ***

В SPSS вероятность ошибки р имеет различные обозначения; звездочки для указания степени значимости применяются лишь в немногих случаях. Обычно в SPSS значение р обозначается Sig. (Significant).

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

Но с помощью компьютера и такой мощной программы, как SPSS, очень легко можно провести множество тестов за очень короткое время. К примеру, если в таблицу сопряженности свести 50 переменных
с другими 20 переменными и выполнить тест X2, то получится 1000 результатов проверки значимости или 1000 значений р. Некритический подбор значимых величин может
дать бессмысленный результат, так как уже при граничном уровне значимости р = 0,05 в пяти процентах наблюдений, то есть в 50 возможных наблюдениях, можно ожидать значимые результаты.

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

Вероятности ошибок

Под ошибкой первого рода понимается
ложная тревога. Вероятность ошибки
первого рода вычисляется как:

— для непрерывной случайной величины

;

— для дискретной случайной величины

.

Под ошибкой второго рода понимается
пропуск цели. Вероятность ошибки второго
рода вычисляется как:

— для непрерывной случайной величины

;

— для дискретной случайной величины

.

Вероятность

– носит название вероятности правильного
обнаружения.

Как правило, наблюдения распределены
по нормальному закону:

На рисунке ниже показаны ошибки первого
и второго рода для случая нормального
распределения наблюдений.

Обычно, в задачах обнаружения пропуск
цели штрафуется дороже, чем ложная
тревога. Для значений функции потерь,
приведенных в таблице,

,

.

Таблица 1

С(x,d)

d=d1

d=d0

x=x1

c11

c10

x=x0

c01

c00

Рабочая характеристика решающего правила

На рисунке ниже показаны характеристики

,

и

семейства решающих правил

.
Характеристика показывает зависимость
вероятности правильного обнаружения
объекта и вероятности ложной тревоги.
Для приведенных характеристик справедливо
следующее соотношение:

.
В качестве примера характеристики
решающего правила можно рассмотрим
отношение сигнал/шум. Тогда, в случае
нормального распределения наблюдений
и при условии, что

,


.

– функция мощности решающего правила.
Под мощностью решающего правила при
заданном значении

понимают вероятность принятия правильного
решения при заданном состоянии среды.

Байесово решающее правило

Условные риски от принятия решающего
правила

равны (здесь и далее используются
значения функции потерь из таблицы 1):


;


.

Средний риск принятия решающего правила

равен:


.

Апостериорный риск принятия решающего
правила

равен:


;


.

Байесовское решающее правило

:


.

Рассмотрим случай, когда

,
тогда

.

Выполним ряд преобразований:


;


.

С учетом того, что

,
получаем:


.

Тогда

,

где

– отношение правдоподобия;

– пороговое значение.

При равных вероятностях

обычно

и тогда

.

Пример. Пусть задана функция
правдоподобия

,
вероятности нахождения пространства
в различных состояниях одинаковые

,
пороговое значение

.
На рисунке ниже показана функция
правдоподобия и граница разбиения
множества наблюдений

.

Отношение правдоподобия показано на
рис. ниже

Если наблюдения имеют нормальное
распределение, т.е.


;


,
тогда отношение правдоподобия имеет
вид:


.

Для удобства используется логарифм
отношения правдоподобия:


.

Тогда байесовское решающее правило
имеет вид:


.

Максимум
апостериорной вероятности

Функция потерь

,
где

.
Тогда

,

и пороговое значение

.

Условный риск равен:


;


.

Средний риск равен:


.

Минимизируем вероятность принятия
неправильного решения

Максимум
правдоподобия

При

пороговое значение

.

Средний риск равен:

.

Решающее правило
Неймана-Пирсона

Решающее правило Неймана-Пирсона
представляет собой семейство решающих
правил и является пороговым:

,

где

определяется из условия:


,

где α – заданная вероятность ложной
тревоги.

Решающее правило Неймана-Пирсона принято
характеризовать с использованием
функции мощности решающего правила

.

Лемма Неймана-Пирсона

Решающее правило Неймана-Пирсона для
любого значения вероятности ложной
тревоги и для любого решающего правила
обладает наиболее мощным среди всех
решающих правил:



,

или


,

.

Следствие: Решающее правило
Неймана-Пирсона является допустимым
при простой функции потерь:

— допустимое решающее правило.

Доказательство:


;

и если


,
то


.

Доказательство (леммы):

Пусть


пространство наблюдений,

– область пространства наблюдений, при
попадании наблюдения в которую решающее
правило Неймана-Пирсона принимает
значение

,

– область пространства наблюдений, при
попадании наблюдения в которую
произвольное решающее правило принимает
значение

.

Введем ряд обозначений (см. рисунок
ниже):


;


;


.

=

=


При переходе (1) использовалось соотношение:

,

.
При переходе (2) учитывалось, что

,
т.к.

— порог для

,
а

=Ø.

Замечание. При

выполняется строгое равенство

.

Структура решающих
правил

Все решающие правила можно рассматривать
как правила Неймана-Пирсона

при фиксированном с помощью порога
значении

,
а это значит, что и МАВ и МП и байесовские
решающие правила дают допустимую
решающую функцию. В тоже время все
критерии можно рассматривать как
байесовские при постой функции потерь.
В таблице ниже приведены решающие
правила и соответствующие им пороги.

Решающее правило

Порог

Байесово решающее правило

МАВ (максимум апостериорной вероятности)

МП (максимум правдоподобия)

1

Н-П (решающее правило Неймана-Пирсона)

Определяется з условия

Рассмотрим задачу обнаружения самолета
радиолокационными средствами. На рисунке
ниже показаны функции правдоподобия
для состояний среды

и

при наличии наблюдений

.
При отражении сигнала от самолета сигнал
хорошо локализован и имеет меньшую
дисперсию, при отражении от облаков
сигнал плохо локализован.


На рисунках ниже показано множество
решающих правил

и решающие правила для МП, байесова
решающего правила и решающего правила
Неймана-Пирсона.

Решающее правило МП есть точка касания
границы множества

и прямой, проведенной под углом 135° к
оси абсцисс.

Байесово решающее правило есть точка
касания границы множества

и прямой, проходящей через точку

.


Решающее правило Неймана-Пирсона
определяется соответствующими значениями

и

.


d0

Множество точек

обладает свойством поворотной симметрии
относительно прямой

,

,
т.е. симметрией относительно вращения
на 180°. Симметричность области

следует из возможности для любого
разбиения

,

построить разбиение

,

,
тогда


;


.

Асимметрия области относительно
биссектрисы объясняется различием
функций правдоподобия

и

.

Последовательные
решения

До сих пор рассматривалась задача
принятия решения на основе анализа всех
имеющихся измерений (наблюдений). Однако,
если вектор наблюдения

можно рассматривать как последовательность
векторов

,
каждый из которых получен в момент
времени

имеет смысл рассматривать задачу
принятия решения как совокупность двух
задач:

а) принятие решения об остановке
наблюдений;

б) принятия решения по имеющимся к
моменту остановки наблюдения измерениям.

Рассмотрим простую двухальтернативную
задач. Пусть покупателю нужно принять
решение о закупке партии товара, например,
лампочек на основе закупки и исследования
пробной партии. Множество состояний
партии лампочек

,
где

— партия лампочек не является бракованной,

— партия лампочек бракованная. Множество
решений

,
где

— решение о закупке партии лампочек,

— решение об отказе о закупке партии
лампочек. Множество измерений на момент
времени

будем обозначать

,

.
Пусть измерения являются независимыми:

.
Требуется определить момент

,
после которого наблюдения дальше не
производятся и по совокупности измерений

принять решение

или

.

Рассмотрим разбиение пространства

,
где

— область продолжения наблюдений,

— область принятия решения

,

— область принятия решения

.
При этом

Ø,

.

В качестве критерия оптимальности будем
использовать среднее количество
измерений

,
необходимое для принятия решения при
заданных вероятностях ошибок I
и II рода.

Для принятия решения будем использовать
отношение правдоподобия

,

или его логарифм

,

.

Математик А. Вальд (1947 г.) показал, что
при заданных ошибках первого рода

и второго рода

наименьшим временем анализа обладает
процедура вида:


,

где

и

— некоторые пороговые значения.

На рисунке ниже показаны пороги

и

на пря мой

.

Покажем, что для порогов

и

справедливы следующие соотношения:


,

.

Действительно,

,
где при переходе (1) учтено, что

,

.

Аналогично:


,
где при переходе (1) учтено, что,

,

.

На рисунке ниже показаны пороги

и

на пря мой

с учетом полученных соотношений.

Замечание. Для того чтобы обеспечить
выполнение неравенства

достаточно, что бы

,

.
Действительно,

,
тогда

.
Из получено неравенства следует, что

и

.

Точные значения порогов вычислить
трудно, поэтому полагают, что:

,

.
Тогда решения становятся более осторожными
и увеличивается среднее время до принятия
решения, т.е. в рассматриваемом примере
увеличивается количество лампочек,
которые нужно проверить до принятия
решения.

При изменении пороговых значений
вероятности ошибок I и II
рода также изменятся:

,

.
Для новых значений вероятностей
выполняются следующие соотношения:

,
откуда

.

Сложив неравенства, получаем:


;


,

откуда

.

Примечание. На практике обычно
работают с логарифмом отношения
правдоподобия

.
Тогда


;


;


.

При работе с логарифмом отношения
правдоподобия для нормального закона
не требуется вычислять экспоненту.

На рисунке ниже показаны пороги

и

на пря мой

.

Утверждение. Количество наблюдений

до остановки наблюдений конечно, т.е.
процедура последовательного анализа
является конечной:

,
как при принятии решения

,
так и при принятии решения

.

Лемма. Пусть

– последовательность независимых
одинаково распределенных случайных
величин с математическим ожиданием

случайных величин. Тогда для всякой
последовательной процедуры со свойством

имеет место равенство:


.

Оценка количества
наблюдений

Пусть множество состояний природы

,
множество решений

.
Рассмотрим две гипотезы:

,

.

При состоянии природы

получаем

,
где

,
где

— номер последнего наблюдения, где

,

.

При состоянии природы

получаем

,
где

,
где

— номер последнего наблюдения, где

.

.

В среднем для принятия решения

необходимо выполнить

измерений, для принятия решения

необходимо в среднем

измерений.

На рисунке ниже показаны функции
апостериорной вероятности для состояний
среды

и

при наличии наблюдения

.

Значения

,

.

Если

,
тогда

.
Если

,
тогда

,
и принимается решение

.

В общем виде для принятия некоторого
решения

необходимо в среднем выполнить

измерений:


,


.

Найдем числитель этого выражения. Для
этого будем считать, что в момент
остановки

или

.

Тогда вероятности событий равны:

Откуда


,
тогда


,

.

Усеченные процедуры

Последовательная процедура имеет
минимальное среднее время анализа,
однако некоторая реализация процедуры
может оказаться непомерно длинной.
Поэтому, обычно, заранее выбирают число

,
являющееся максимальным номером
наблюдения, исходя из заданной вероятности

.
Если решение не принято последовательной
процедурой, то оно принимается, например,
по методу Неймана-Пирсона. При этом
ухудшается качество решения, т.е.

оказывается больше.

Пусть провели серию из

наблюдений. В результате был получен
вектор наблюдений

.
После

наблюдений ресурс наблюдений оказался
исчерпан. Применим классическую схему:
вычислим отношение правдоподобия

,
решение

,
где ∆ – пороговое значение.

Усеченная пороговая процедура дает
решения хуже по сравнению с классической
процедурой, поскольку при принятии
решения используется аномальная
последовательность наблюдений.

Наблюдение в форме
прогноза

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]

  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #



5.3. Ошибки первого и второго рода

Ошибка первого рода состоит в том, что гипотеза  будет отвергнута, хотя на самом деле она правильная. Вероятность

допустить такую ошибку называют уровнем значимости и обозначают буквой  («альфа»).  

Ошибка второго рода состоит в том, что гипотеза  будет принята, но на самом деле она неправильная. Вероятность

совершить эту ошибку обозначают буквой  («бета»). Значение  называют мощностью критерия – это вероятность отвержения неправильной

гипотезы.

В практических задачах, как правило, задают уровень значимости, наиболее часто выбирают значения .

И тут возникает мысль, что чем меньше «альфа», тем вроде бы лучше. Но это только вроде: при уменьшении

вероятности

отвергнуть правильную гипотезу растёт вероятность  — принять неверную гипотезу (при прочих равных условиях).

Поэтому перед исследователем стоит задача грамотно подобрать соотношение вероятностей  и , при этом учитывается тяжесть последствий, которые

повлекут за собой та и другая ошибки.

Понятие ошибок 1-го и 2-го рода используется не только в статистике, и для лучшего понимания я приведу пару

нестатистических примеров.

Петя зарегистрировался в почтовике. По умолчанию,  – он считается добропорядочным пользователем. Так считает антиспам

фильтр. И вот Петя отправляет письмо. В большинстве случаев всё произойдёт, как должно произойти – нормальное письмо дойдёт до

адресата (правильное принятие нулевой гипотезы), а спамное – попадёт в спам (правильное отвержение). Однако фильтр может

совершить ошибку двух типов:

1) с вероятностью  ошибочно отклонить нулевую гипотезу (счесть нормальное письмо

за спам и Петю за спаммера) или
2) с вероятностью  ошибочно принять нулевую гипотезу (хотя Петя редиска).

Какая ошибка более «тяжелая»? Петино письмо может быть ОЧЕНЬ важным для адресата, и поэтому при настройке фильтра

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

«подозрительные» письма, в том числе особо талантливых спаммеров. …Такое и почитать даже можно, ведь сделано с любовью :)

Существует примеры, где наоборот – более тяжкие последствия влечёт ошибка 2-го рода, и вероятность  следует увеличить (в пользу уменьшения

вероятности ). Не хотел я

приводить подобные примеры, и даже отшутился на сайте, но по какой-то мистике через пару месяцев сам столкнулся с непростой

дилеммой. Видимо, таки, надо рассказать:

У человека появилась серьёзная болячка. В медицинской практике её принято лечить (основное «нулевое» решение). Лечение

достаточно эффективно, однако не гарантирует результата и более того опасно (иногда приводит к серьёзному пожизненному

увечью). С другой стороны, если не лечить, то возможны осложнения и долговременные функциональные нарушения.

Вопрос: что делать? И ответ не так-то прост – в разных ситуациях разные люди могут принять разные

решения (упаси вас).

Если болезнь не особо «мешает жить», то более тяжёлые последствия повлечёт ошибка 2-го рода – когда человек соглашается

на лечение, но получает фатальный результат (принимает, как оказалось, неверное «нулевое» решение). Если же…, нет, пожалуй,

достаточно, возвращаемся к теме:

5.4. Процесс проверки статистической гипотезы

5.2. Нулевая и альтернативная гипотезы

| Оглавление |

Проверка корректности А/Б тестов

Время на прочтение
8 мин

Количество просмотров 10K

Хабр, привет! Сегодня поговорим о том, что такое корректность статистических критериев в контексте А/Б тестирования. Узнаем, как проверить, является критерий корректным или нет. Разберём пример, в котором тест Стьюдента не работает.

Меня зовут Коля, я работаю аналитиком данных в X5 Tech. Мы с Сашей продолжаем писать серию статей по А/Б тестированию, это наша третья статья. Первые две можно посмотреть тут:

  • Стратификация. Как разбиение выборки повышает чувствительность A/Б теста

  • Бутстреп и А/Б тестирование

Корректный статистический критерий

В А/Б тестировании при проверке гипотез с помощью статистических критериев можно совершить одну из двух ошибок:

  • ошибку первого рода – отклонить нулевую гипотезу, когда на самом деле она верна. То есть сказать, что эффект есть, хотя на самом деле его нет;

  • ошибку второго рода – не отклонить нулевую гипотезу, когда на самом деле она неверна. То есть сказать, что эффекта нет, хотя на самом деле он есть.

Совсем не ошибаться нельзя. Чтобы получить на 100% достоверные результаты, нужно бесконечно много данных. На практике получить столько данных затруднительно. Если совсем не ошибаться нельзя, то хотелось бы ошибаться не слишком часто и контролировать вероятности ошибок.

В статистике ошибка первого рода считается более важной. Поэтому обычно фиксируют допустимую вероятность ошибки первого рода, а затем пытаются минимизировать вероятность ошибки второго рода.

Предположим, мы решили, что допустимые вероятности ошибок первого и второго рода равны 0.1 и 0.2 соответственно. Будем называть статистический критерий корректным, если его вероятности ошибок первого и второго рода равны допустимым вероятностям ошибок первого и второго рода соответственно.

Как сделать критерий, в котором вероятности ошибок будут равны допустимым вероятностям ошибок?

Вероятность ошибки первого рода по определению равна уровню значимости критерия. Если уровень значимости положить равным допустимой вероятности ошибки первого рода, то вероятность ошибки первого рода должна стать равной допустимой вероятности ошибки первого рода.

Вероятность ошибки второго рода можно подогнать под желаемое значение, меняя размер групп или снижая дисперсию в данных. Чем больше размер групп и чем ниже дисперсия, тем меньше вероятность ошибки второго рода. Для некоторых гипотез есть готовые формулы оценки размера групп, при которых достигаются заданные вероятности ошибок.

Например, формула оценки необходимого размера групп для гипотезы о равенстве средних:

n > \frac{\left[ \Phi^{-1} \left( 1-\alpha / 2 \right) + \Phi^{-1} \left( 1-\beta \right) \right]^2 (\sigma_A^2 + \sigma_B^2)}{\varepsilon^2}

где \alpha и \beta – допустимые вероятности ошибок первого и второго рода, \varepsilon – ожидаемый эффект (на сколько изменится среднее), \sigma_A и \sigma_B – стандартные отклонения случайных величин в контрольной и экспериментальной группах.

Проверка корректности

Допустим, мы работаем в онлайн-магазине с доставкой. Хотим исследовать, как новый алгоритм ранжирования товаров на сайте влияет на среднюю выручку с покупателя за неделю. Продолжительность эксперимента – одна неделя. Ожидаемый эффект равен +100 рублей. Допустимая вероятность ошибки первого рода равна 0.1, второго рода – 0.2.

Оценим необходимый размер групп по формуле:

import numpy as np
from scipy import stats

alpha = 0.1                     # допустимая вероятность ошибки I рода
beta = 0.2                      # допустимая вероятность ошибки II рода
mu_control = 2500               # средняя выручка с пользователя в контрольной группе
effect = 100                    # ожидаемый размер эффекта
mu_pilot = mu_control + effect  # средняя выручка с пользователя в экспериментальной группе
std = 800                       # стандартное отклонение

# исторические данные выручки для 10000 клиентов
values = np.random.normal(mu_control, std, 10000)

def estimate_sample_size(effect, std, alpha, beta):
    """Оценка необходимого размер групп."""
    t_alpha = stats.norm.ppf(1 - alpha / 2, loc=0, scale=1)
    t_beta = stats.norm.ppf(1 - beta, loc=0, scale=1)
    var = 2 * std ** 2
    sample_size = int((t_alpha + t_beta) ** 2 * var / (effect ** 2))
    return sample_size

estimated_std = np.std(values)
sample_size = estimate_sample_size(effect, estimated_std, alpha, beta)
print(f'оценка необходимого размера групп = {sample_size}')
оценка необходимого размера групп = 784

Чтобы проверить корректность, нужно знать природу случайных величин, с которыми мы работаем. В этом нам помогут исторические данные. Представьте, что мы перенеслись в прошлое на несколько недель назад и запустили эксперимент с таким же дизайном, как мы планировали запустить его сейчас. Дизайн – это совокупность параметров эксперимента, таких как: целевая метрика, допустимые вероятности ошибок первого и второго рода, размеры групп и продолжительность эксперимента, техники снижения дисперсии и т.д.

Так как это было в прошлом, мы знаем, какие покупки совершили пользователи, можем вычислить метрики и оценить значимость отличий. Кроме того, мы знаем, что эффекта на самом деле не было, так как в то время эксперимент на самом деле не запускался. Если значимые отличия были найдены, то мы совершили ошибку первого рода. Иначе получили правильный результат.

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

После этого можно посчитать долю экспериментов, в которых была совершена ошибка. Это будет точечная оценка вероятности ошибки первого рода.

Оценку вероятности ошибки второго рода можно получить аналогичным способом. Единственное отличие состоит в том, что каждый раз нужно искусственно добавлять ожидаемый эффект в данные экспериментальной группы. В этих экспериментах эффект на самом деле есть, так как мы сами его добавили. Если значимых отличий не будет найдено – это ошибка второго рода. Проведя 1000 экспериментов и посчитав долю ошибок второго рода, получим точечную оценку вероятности ошибки второго рода.

Посмотрим, как оценить вероятности ошибок в коде. С помощью численных синтетических А/А и А/Б экспериментов оценим вероятности ошибок и построим доверительные интервалы:

def run_synthetic_experiments(values, sample_size, effect=0, n_iter=10000):
    """Проводим синтетические эксперименты, возвращаем список p-value."""
    pvalues = []
    for _ in range(n_iter):
        a, b = np.random.choice(values, size=(2, sample_size,), replace=False)
        b += effect
        pvalue = stats.ttest_ind(a, b).pvalue
        pvalues.append(pvalue)
    return np.array(pvalues)

def print_estimated_errors(pvalues_aa, pvalues_ab, alpha):
    """Оценивает вероятности ошибок."""
    estimated_first_type_error = np.mean(pvalues_aa < alpha)
    estimated_second_type_error = np.mean(pvalues_ab >= alpha)
    ci_first = estimate_ci_bernoulli(estimated_first_type_error, len(pvalues_aa))
    ci_second = estimate_ci_bernoulli(estimated_second_type_error, len(pvalues_ab))
    print(f'оценка вероятности ошибки I рода = {estimated_first_type_error:0.4f}')
    print(f'  доверительный интервал = [{ci_first[0]:0.4f}, {ci_first[1]:0.4f}]')
    print(f'оценка вероятности ошибки II рода = {estimated_second_type_error:0.4f}')
    print(f'  доверительный интервал = [{ci_second[0]:0.4f}, {ci_second[1]:0.4f}]')

def estimate_ci_bernoulli(p, n, alpha=0.05):
    """Доверительный интервал для Бернуллиевской случайной величины."""
    t = stats.norm.ppf(1 - alpha / 2, loc=0, scale=1)
    std_n = np.sqrt(p * (1 - p) / n)
    return p - t * std_n, p + t * std_n

pvalues_aa = run_synthetic_experiments(values, sample_size, effect=0)
pvalues_ab = run_synthetic_experiments(values, sample_size, effect=effect)
print_estimated_errors(pvalues_aa, pvalues_ab, alpha)
оценка вероятности ошибки I рода = 0.0991
  доверительный интервал = [0.0932, 0.1050]
оценка вероятности ошибки II рода = 0.1978
  доверительный интервал = [0.1900, 0.2056]

Оценки вероятностей ошибок примерно равны 0.1 и 0.2, как и должно быть. Всё верно, тест Стьюдента на этих данных работает корректно.

Распределение p-value

Выше рассмотрели случай, когда тест контролирует вероятность ошибки первого рода при фиксированном уровне значимости. Если решим изменить уровень значимости с 0.1 на 0.01, будет ли тест контролировать вероятность ошибки первого рода? Было бы хорошо, если тест контролировал вероятность ошибки первого рода при любом заданном уровне значимости. Формально это можно записать так:

Для любого \alpha \in [0, 1] выполняется \mathbb{P}(pvalue < \alpha | H_0) = \alpha.

Заметим, что в левой части равенства записано выражение для функции распределения p-value. Из равенства следует, что функция распределения p-value в точке X равна X для любого X от 0 до 1. Эта функция распределения является функцией распределения равномерного распределения от 0 до 1. Мы только что показали, что статистический критерий контролирует вероятность ошибки первого рода на заданном уровне для любого уровня значимости тогда и только тогда, когда при верности нулевой гипотезы p-value распределено равномерно от 0 до 1.

При верности нулевой гипотезы p-value должно быть распределено равномерно. А как должно быть распределено p-value при верности альтернативной гипотезы? Из условия для вероятности ошибки второго рода \mathbb{P}(pvalue \geq \alpha | H_1) = \beta следует, что \mathbb{P}(pvalue < \alpha | H_1) = 1 - \beta.

Получается, график функции распределения p-value при верности альтернативной гипотезы должен проходить через точку [\alpha, 1 - \beta], где \alpha и \beta – допустимые вероятности ошибок конкретного эксперимента.

Проверим, как распределено p-value в численном эксперименте. Построим эмпирические функции распределения p-value:

import matplotlib.pyplot as plt

def plot_pvalue_distribution(pvalues_aa, pvalues_ab, alpha, beta):
    """Рисует графики распределения p-value."""
    estimated_first_type_error = np.mean(pvalues_aa < alpha)
    estimated_second_type_error = np.mean(pvalues_ab >= alpha)
    y_one = estimated_first_type_error
    y_two = 1 - estimated_second_type_error
    X = np.linspace(0, 1, 1000)
    Y_aa = [np.mean(pvalues_aa < x) for x in X]
    Y_ab = [np.mean(pvalues_ab < x) for x in X]

    plt.plot(X, Y_aa, label='A/A')
    plt.plot(X, Y_ab, label='A/B')
    plt.plot([alpha, alpha], [0, 1], '--k', alpha=0.8)
    plt.plot([0, alpha], [y_one, y_one], '--k', alpha=0.8)
    plt.plot([0, alpha], [y_two, y_two], '--k', alpha=0.8)
    plt.plot([0, 1], [0, 1], '--k', alpha=0.8)

    plt.title('Оценка распределения p-value', size=16)
    plt.xlabel('p-value', size=12)
    plt.legend(fontsize=12)
    plt.grid()
    plt.show()

plot_pvalue_distribution(pvalues_aa, pvalues_ab, alpha, beta)

P-value для синтетических А/А тестах действительно оказалось распределено равномерно от 0 до 1, а для синтетических А/Б тестов проходит через точку [\alpha, 1 - \beta].

Кроме оценок распределений на графике дополнительно построены четыре пунктирные линии:

  • диагональная из точки [0, 0] в точку [1, 1] – это функция распределения равномерного распределения на отрезке от 0 до 1, по ней можно визуально оценивать равномерность распределения p-value;

  • вертикальная линия с x=\alpha – пороговое значение p-value, по которому определяем отвергать нулевую гипотезу или нет. Проекция на ось ординат точки пересечения вертикальной линии с функцией распределения p-value для А/А тестов – это вероятность ошибки первого рода. Проекция точки пересечения вертикальной линии с функцией распределения p-value для А/Б тестов – это мощность теста (мощность = 1 — \beta). 

  • две горизонтальные линии – проекции на ось ординат точки пересечения вертикальной линии с функцией распределения p-value для А/А и А/Б тестов.

График с оценками распределения p-value для синтетических А/А и А/Б тестов позволяет проверить корректность теста для любого значения уровня значимости.

Некорректный критерий

Выше рассмотрели пример, когда тест Стьюдента оказался корректным критерием для случайных данных из нормального распределения. Может быть, все критерии всегда работаю корректно, и нет смысла каждый раз проверять вероятности ошибок?

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

def run_synthetic_experiments_two(values, sample_size, effect=0, n_iter=10000):
    """Проводим синтетические эксперименты на двух неделях."""
    pvalues = []
    for _ in range(n_iter):
        a, b = np.random.choice(values, size=(2, sample_size,), replace=False)
        b += effect
        # дублируем данные
        a = np.hstack((a, a,))
        b = np.hstack((b, b,))
        pvalue = stats.ttest_ind(a, b).pvalue
        pvalues.append(pvalue)
    return np.array(pvalues)

pvalues_aa = run_synthetic_experiments_two(values, sample_size)
pvalues_ab = run_synthetic_experiments_two(values, sample_size, effect=effect)
print_estimated_errors(pvalues_aa, pvalues_ab, alpha)
plot_pvalue_distribution(pvalues_aa, pvalues_ab, alpha, beta)
оценка вероятности ошибки I рода = 0.2451
  доверительный интервал = [0.2367, 0.2535]
оценка вероятности ошибки II рода = 0.0894
  доверительный интервал = [0.0838, 0.0950]

Получили оценку вероятности ошибки первого рода около 0.25, что сильно больше уровня значимости 0.1. На графике видно, что распределение p-value для синтетических А/А тестов не равномерно, оно отклоняется от диагонали. В этом примере тест Стьюдента работает некорректно, так как данные зависимые (стоимости покупок одного человека зависимы). Если бы мы сразу не догадались про зависимость данных, то оценка вероятностей ошибок помогла бы нам понять, что такой тест некорректен.

Итоги

Мы обсудили, что такое корректность статистического теста, посмотрели, как оценить вероятности ошибок на исторических данных и привели пример некорректной работы критерия.

Таким образом:

  • корректный критерий – это критерий, у которого вероятности ошибок первого и второго рода равны допустимым вероятностям ошибок первого и второго рода соответственно;

  • чтобы критерий контролировал вероятность ошибки первого рода для любого уровня значимости, необходимо и достаточно, чтобы p-value при верности нулевой гипотезы было распределено равномерно от 0 до 1.

Уровень
значимости — это вероятность того, что
мы сочли различия существенными, а они
на самом деле случайны.

Когда
мы указываем, что различия достоверны
на 5%-ом уровне значимости, или при р<0,05,
то мы имеем виду, что вероятность того,
что они все-таки недостоверны, составляет
0,05.

Когда
мы указываем, что различия достоверны
на 1%-ом уровне значимости, или при р<0,01,
то мы имеем в виду, что вероятность того,
что они все-таки недостоверны, составляет
0,01.

Если
перевести все это на более формализованный
язык, то уровень значимости — это
вероятность отклонения нулевой гипотезы,
в то время как она верна.

Ошибка,
состоящая в том, что мы отклонили нулевую
гипотезу, в то время как она верна,
называется ошибкой 1 рода.

Вероятность
такой ошибки обычно обозначается как
а. В сущности, мы должны были бы указывать
в скобках не р<0,05 или р<0,01, а а<0,05
или <Х<0,01. В некоторых руководствах
так и делается (Рунион Р., 1982; Захаров
В.П., 1985 и др.).

Если
вероятность ошибки — это а, то вероятность
правильного решения: 1—а. Чем меньше а,
тем больше вероятность правильного
решения.

Исторически
сложилось так, что в психологии принято
считать низшим уровнем статистической
значимости 5%-ый уровень (р<0,05): достаточным
— 1%-ый уровень (р^О.01) и высшим 0,1% -ый
уровень (р<0,001), поэтому в таблицах
критических значений обычно приводятся
значения критериев, соответствующих
уровням статистической значимости
р<0,05 и р<0,01, иногда — р<0,001. Для
некоторых критериев в таблицах указан
точный уровень значимости их разных
эмпирических значений. Например, для
ф*=1,56 р=0,06.

До
тех пор, однако, пока уровень статистической
значимости не достигнет р=0,05, мы еще не
имеем права отклонить нулевую гипотезу.

Правило
отклонения HQ и принятия Hi

Если
эмпирическое значение критерия равняется
критическому значению, соответствующему
р^0,05 или превышает его, то HQ отклоняется,
но мы еще не можем определенно принять
W.

Если
эмпирическое значение критерия равняется
критическому значению, соответствующему
р<0,01 или превышает его, то HQ отклоняется
и принимается Н^.

Исключения:
критерий
знаков G, критерий Т Вилкоксона и критерий
U Манна-Уитни. Для них устанавливаются
обратные соотношения. Для облегчения
процесса принятия решения можно всякий
раз вычерчивать «ось значимости».

Критические
значения критерия обозначены как Qo,O5 и
Qo,O1> эмпирическое значение критерия
как QaMn. Оно заключено в эллипс.

Вправо
от критического значения Qo.oi простирается
«зона значимости» — сюда попадают
эмпирические значения, превышающие
Qooi и, следовательно, безусловно значимые.

Влево
от критического значения Qo,O5 простирается
«зона незначимое™», — сюда попадают
эмпирические значения Q, которые ниже
Qo,O5′ и≫
следовательно, безусловно незначимы.
Мы видим, что Qo,o5=6; Qo.oi=9; Q9Mn=8.

Эмпирическое
значение критерия попадает в область
между Qo,O5 и Qo.oi- Это зона «неопределенности»:
мы уже можем отклонить гипотезу о
недостоверности различий (HQ), НО еще не
можем принять гипотезы об их достоверности
(Hf).

Практически,
однако, исследователь может считать
достоверными уже те различия, которые
не попадают в зону незначимости, заявив,
что они достоверны при р<0,05, или указав
точный уровень значимости полученного
эмпирического значения критерия,
например: р=0,02. С помощью таблиц Приложения
1 это можно сделать по отношению к
критериям Н Крускала-Уоллиса, у}г
Фридмана,
L Пейджа, ф* Фишера, X
Колмогорова.

Уровень
статистической значимости или критические
значения критериев определяются
по-разному при проверке направленных
и ненаправленных статистических гипотез.
При направленной статистической гипотезе
используется односторонний критерий,
при ненаправленной гипотезе — двусторонний
критерий. Двусторонний критерий более
строг, поскольку он проверяет различия
в обе стороны, и поэтому то эмпирическое
значение критерия, которое ранее
соответствовало уровню значимости
р<0,05, теперь соответствует лишь уровню
р<0,10.

Билет 9 Параметрические
и непараметрические методы. Мощность
критериев

  1. Параметрические и непараметрические
    методы

Методы обучения, т.е. нахождения достаточно
хорошей распознающей функ-

ции f 2 F, традиционно подразделяются на
параметрические и непарамет-

рические в соответствии с тем, просто
или сложно устроено пространство F.

Параметрические — это те методы, в
которых F = fF(w; ¢)jw 2 Wg для неко-

торого достаточно удобного (например,
евклидова) пространства параметров

W и некоторой функции F: W £ X ! Y, а
непараметрические — это мето-

ды, в которых, якобы, пространство F не
зафиксировано заранее, а зависит

от обучающего набора T. На самом деле
разница между параметрическими и

непараметрическими методами — только
в употребляемых словах.

Полезный пример параметрических методов
— методы обучения линейных

распознавателей, которых даже для
простейшей линейной регрессии (X = Rd,

Y
= R,
W
= R
£ Rd,
F(w;
x)
= w0
+Pdj=1
wjxj) довольно много. Подробнее

эти методы рассматриваются в разделе
2.

[А.Б. Мерков]

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

  1. Мощность критериев

Мощность критерия — это его способность
выявлять различия, если они есть. Иными

словами, это его способность отклонить
нулевую гипотезу об отсутствии различий,
если

она неверна.

Ошибка, состоящая в том, что мы приняли
нулевую гипотезу, в то время как

она неверна, называется ошибкой II рода.

Вероятность такой ошибки обозначается
как β. Мощность критерия — это его

способность не допустить ошибку II рода,
поэтому:

Мощность=1—β

Мощность критерия определяется
эмпирическим путем. Одни и те же задачи
могут

быть решены с помощью разных критериев,
при этом обнаруживается, что некоторые

критерии позволяют выявить различия
там, где другие оказываются неспособными
это

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

зачем же тогда использовать менее
мощные критерии? Дело в том, что
основанием для

выбора критерия может быть не только
мощность, но и другие его характеристики,
а

именно:

а) простота;

б) более широкий диапазон использования
(например, по отношению к данным,

определенным по номинативной шкале,
или по отношению к большим n);

в) применимость по отношению к неравным
по объему выборкам;

г) большая информативность результатов.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]

  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #

Проверка статистических гипотез

  1. Понятие о статистической гипотезе
  2. Уровень значимости при проверке гипотезы
  3. Критическая область
  4. Простая гипотеза и критерии согласия
  5. Критерий согласия (X^2) Пирсона
  6. Примеры

п.1. Понятие о статистической гипотезе

Статистическая гипотеза – это предположение о виде распределения и свойствах случайной величины в наблюдаемой выборке данных.

Прежде всего, мы формулируем «рабочую» гипотезу. Желательно это делать не на основе полученных данных, а исходя из природы и свойств исследуемого явления.
Затем формулируется нулевая гипотеза (H_0), отвергающая нашу рабочую гипотезу.
Наша рабочая гипотеза при этом называется альтернативной гипотезой (H_1).
Получаем, что (H_0=overline{H_1}), т.е. нулевая и альтернативная гипотеза вместе составляют полную группу несовместных событий.

Основной принцип проверки гипотезы – доказательство «от противного», т.е. опровергнуть гипотезу (H_0) и тем самым доказать гипотезу (H_1).

В результате проверки гипотезы возможны 4 исхода:

Верная гипотеза
(H_0) (H_1)
Принятая гипотеза (H_0) True Negative
(H_0) принята верно
False Negative
(H_0) принята неверно
Ошибка 2-го рода
(H_1) False Positive
(H_0) отвергнута неверно
(H_1) принята неверно
Ошибка 1-го рода
True Positive
(H_0) отвергнута верно
(H_1) принята верно

Ошибка 1-го рода – «ложная тревога».
Ошибка 2-го рода – «пропуск события».

Например:
К врачу обращается человек с некоторой жалобой.
Гипотеза (H_1) — человек болен, гипотеза (H_0) — человек здоров.
True Negative – здорового человека признают здоровым
True Positive – больного человека признают больным
False Positive – здорового человека признают больным – «ложная тревога»
False Negative – больного человека признают здоровым – «пропуск события»

Уровень значимости при проверке гипотезы

Статистический тест (статистический критерий) – это строгое математическое правило, по которому гипотеза принимается или отвергается.
В статистике разработано множество критериев: критерии согласия, критерии нормальности, критерии сдвига, критерии выбросов и т.д.

Уровень значимости – это пороговая (критическая) вероятность ошибки 1-го рода, т.е. непринятия гипотезы (H_0), когда она верна («ложная тревога»).
Требуемый уровень значимости α задает критическое значение для статистического теста.

Например:
Уровень значимости α=0,05 означает, что допускается не более чем 5%-ая вероятность ошибки.

В результате статистического теста на конкретных данных получают эмпирический уровень значимости p. Чем меньше значение p, тем сильнее аргументы против гипотезы (H_0).

Обобщив практический опыт, можно сформулировать следующие рекомендации для оценки p и выбора критического значения α:

Уровень
значимости (p)
Решение о гипотезе (H_0) Вывод для гипотезы (H_1)
(pgt 0,1) (H_0) не может быть отклонена Статистически достоверные доказательства не обнаружены
(0,5lt pleq 0,1) Истинность (H_0) сомнительна, неопределенность Доказательства обнаружены на уровне статистической тенденции
(0,01lt pleq 0,05) Отклонение (H_0), значимость Обнаружены статистически достоверные (значимые) доказательства
(pleq 0,01) Отклонение (H_0), высокая значимость Доказательства обнаружены на высоком уровне значимости

Здесь под «доказательствами» мы понимаем результаты наблюдений, свидетельствующие в пользу гипотезы (H_1).

Традиционно уровень значимости α=0,05 выбирается для небольших выборок, в которых велика вероятность ошибки 2-го рода. Для выборок с (ngeq 100) критический уровень снижают до α=0,01.

п.3. Критическая область

Критическая область – область выборочного пространства, при попадании в которую нулевая гипотеза отклоняется.
Требуемый уровень значимости α, который задается исследователем, определяет границу попадания в критическую область при верной нулевой гипотезе.

Различают 3 вида критических областей

Критическая область на чертежах заштрихована.
(K_{кр}=chi_{f(alpha)}) определяют границы критической области в зависимости от α.
Если эмпирическое значение критерия попадает в критическую область, гипотезу (H_0) отклоняют.
Пусть (K*) — эмпирическое значение критерия. Тогда:
(|K|gt K_{кр}) – гипотеза (H_0) отклоняется
(|K|leq K_{кр}) – гипотеза (H_0) не отклоняется

п.4. Простая гипотеза и критерии согласия

Пусть (x=left{x_1,x_2,…,x_nright}) – случайная выборка n объектов из множества (X), соответствующая неизвестной функции распределения (F(t)).
Простая гипотеза состоит в предположении, что неизвестная функция (F(t)) является совершенно конкретным вероятностным распределением на множестве (X).

Например:
Простая гипотеза и критерии согласия
Глядя на полученные данные эксперимента (синие точки), можно выдвинуть следующую простую гипотезу:
(H_0): данные являются выборкой из равномерного распределения на отрезке [-1;1]

Критерий согласия проверяет, согласуется ли заданная выборка с заданным распределением или с другой выборкой.

К критериям согласия относятся:

  • Критерий Колмогорова-Смирнова;
  • Критерий (X^2) Пирсона;
  • Критерий (omega^2) Смирнова-Крамера-фон Мизеса

п.5. Критерий согласия (X^2) Пирсона

Пусть (left{t_1,t_2,…,t_nright}) — независимые случайные величины, подчиняющиеся стандартному нормальному распределению N(0;1) (см. §63 данного справочника)
Тогда сумма квадратов этих величин: $$ x=t_1^2+t_2^2+⋯+t_n^2 $$ является случайной величиной, которая имеет распределение (X^2) с n степенями свободы.
График плотности распределения (X^2) при разных n имеет вид: Критерий согласия X^2 Пирсона
С увеличением n распределение (X^2) стремится к нормальному (согласно центральной предельной теореме – см. §64 данного справочника).

Если мы:
1) выдвигаем простую гипотезу (H_0) о том, что полученные данные являются выборкой из некоторого закона распределения (f(x));
2) выбираем в качестве теста проверки гипотезы (H_0) критерий Пирсона, —
тогда определение критической области будет основано на распределении (X^2).

Заметим, что выдвижение основной гипотезы в качестве (H_0) при проведении этого теста исторически сложилось.
В этом случае критическая область правосторонняя.
Критерий согласия X^2 Пирсона
Мы задаем уровень значимости α и находим критическое значение
(X_{кр}^2=X^2(alpha,k-r-1)), где k — число вариант в исследуемом ряду, r – число параметров предполагаемого распределения.
Для этого есть специальные таблицы.
Или используем функцию ХИ2ОБР(α,k-r-1) в MS Excel (она сразу считает нужный нам правый хвост). Например, при r=0 (для равномерного распределения):
Критерий согласия X^2 Пирсона
Пусть нам дан вариационный ряд с экспериментальными частотами (f_i, i=overline{1,k}).
Пусть наша гипотеза (H_0) –данные являются выборкой из закона распределения с известной плотностью распределения (p(x)).
Тогда соответствующие «теоретические частоты» (m_i=Ap(x_i)), где (x_i) – значения вариант данного ряда, A – коэффициент, который в общем случае зависит от ряда (дискретный или непрерывный).
Находим значение статистического теста: $$ X_e^2=sum_{j=1}^kfrac{(f_i-m_i)^2}{m_i} $$ Если эмпирическое значение (X_e^2) окажется в критической области, гипотеза (H_0) отвергается.
(X_e^2geq X_{кр}^2) — закон распределения не подходит (гипотеза (H_0) не принимается)
(X_e^2lt X_{кр}^2) — закон распределения подходит (гипотеза (H_0) принимается)

Например:
В эксперименте 60 раз подбрасывают игральный кубик и получают следующие результаты:

Очки, (x_i) 1 2 3 4 5 6
Частота, (f_i) 8 12 13 7 12 8

Не является ли кубик фальшивым?

Если кубик не фальшивый, то справедлива гипотеза (H_0) — частота выпадений очков подчиняется равномерному распределению: $$ p_i=frac16, i=overline{1,6} $$ При N=60 экспериментах каждая сторона теоретически должна выпасть: $$ m_i=p_icdot N=frac16cdot 60=10 $$ по 10 раз.
Строим расчетную таблицу:

(x_i) 1 2 3 4 5 6
(f_i) 8 12 13 7 12 8 60
(m_i) 10 10 10 10 10 10 60
(f_i-m_i) -2 2 3 -3 2 -2
(frac{(f_i-m_i)^2}{m_i}) 0,4 0,4 0,9 0,9 0,4 0,4 3,4

Значение теста: $$ X_e^2=3,4 $$ Для уровня значимости α=0,05, k=6 и r=0 находим критическое значение:
Критерий согласия X^2 Пирсона $$ X_{кр}^2approx 11,1 $$ Получается, что: $$ X_e^2lt X_{кр}^2 $$ На уровне значимости α=0,05 принимается гипотеза (H_0) про равномерное распределение.
Значит, с вероятностью 95% кубик не фальшивый.

п.6. Примеры

Пример 1. В эксперименте 72 раза подбрасывают игральный кубик и получают следующие результаты:

Очки, (x_i) 1 2 3 4 5 6
Частота, (f_i) 8 12 13 7 10 22

Не является ли кубик фальшивым?

Если кубик не фальшивый, то справедлива гипотеза (H_0) — частота выпадений очков подчиняется равномерному распределению: $$ p_i=frac16, i=overline{1,6} $$ При N=72 экспериментах каждая сторона теоретически должна выпасть: $$ m_i=p_icdot N=frac16cdot 72=12 $$ по 12 раз.
Строим расчетную таблицу:

(x_i) 1 2 3 4 5 6
(f_i) 8 12 13 7 10 22 72
(m_i) 12 12 12 12 12 12 72
(f_i-m_i) -4 0 1 -5 -2 10
(frac{(f_i-m_i)^2}{m_i}) 1,333 0,000 0,083 2,083 0,333 8,333 12,167

Значение теста: $$ X_e^2=12,167 $$ Для уровня значимости α=0,05, k=6 и r=0 находим критическое значение:
Пример 1 $$ X_{кр}^2approx 11,1 $$ Получается, что: $$ X_e^2gt X_{кр}^2 $$ На уровне значимости α=0,05 гипотеза (H_0) про равномерное распределение не принимается.
Значит, с вероятностью 95% кубик фальшивый.

Пример 2. Во время Второй мировой войны Лондон подвергался частым бомбардировкам. Чтобы улучшить организацию обороны, город разделили на 576 прямоугольных участков, 24 ряда по 24 прямоугольника.
В течение некоторого времени были получены следующие данные по количеству попаданий на участки:

Число попаданий, (x_i) 0 1 2 3 4 5 6 7
Количество участков, (f_i) 229 211 93 35 7 0 0 1

Проверялась гипотеза (H_0) — стрельба случайна.

Если стрельба случайна, то попадание на участок должно иметь распределение, подчиняющееся «закону редких событий» — закону Пуассона с плотностью вероятности: $$ p(k)=frac{lambda^k}{k!}e^{-lambda} $$ где (k) — число попаданий. Чтобы получить значение (lambda), нужно посчитать математическое ожидание данного распределения.
Составим расчетную таблицу:

(x_i) 0 1 2 3 4 5 6 7
(f_i) 229 211 93 35 7 0 0 1 576
(x_if_i) 0 211 186 105 28 0 0 7 537

$$ lambdaapprox M(x)=frac{sum x_if_i}{N}=frac{537}{576}approx 0,932 $$ Тогда теоретические частоты будут равны: $$ m_i=Ncdot p(k) $$ Получаем:

(x_i) 0 1 2 3 4 5 6 7
(f_i) 229 211 93 35 7 0 0 1 576
(p_i) 0,39365 0,36700 0,17107 0,05316 0,01239 0,00231 0,00036 0,00005 0,99999
(m_i) 226,7 211,4 98,5 30,6 7,1 1,3 0,2 0,0 576,0
(f_i-m_i) 2,3 -0,4 -5,5 4,4 -0,1 -1,3 -0,2 1,0
(frac{(f_i-m_i)^2}{m_i}) (результат) 0,02 0,00 0,31 0,63 0,00 1,33 0,21 34,34 36,84

Значение теста: (X_e^2=36,84)
Поскольку в ходе исследования мы нашли оценку для λ через подсчет выборочной средней, нужно уменьшить число степеней свободы на r=1, и критическое значение статистики искать для (X_{кр}^2=X^2(alpha,k-2)).
Для уровня значимости α=0,05 и k=8, r=1 находим:
Пример 2
(X_{кр}^2approx 12,59)
Получается, что: (X_e^2gt X_{кр}^2)
Гипотеза (H_0) не принимается.
Стрельба не случайна.

Пример 3. В предыдущем примере объединили события x={4;5;6;7} с редким числом попаданий:

Число попаданий, (x_i) 0 1 2 3 4-7
Количество участков, (f_i) 229 211 93 35 8

Проверялась гипотеза (H_0) — стрельба случайна.

Для последней объединенной варианты находим среднюю взвешенную: $$ x_5=frac{4cdot 7+5cdot 0+6cdot 0+7cdot 1}{7+1}=4,375 $$ Найдем оценку λ.

(x_i) 0 1 2 3 4,375
(f_i) 229 211 93 35 8 576
(x_if_i) 0 211 186 105 35 537

$$ lambdaapprox M(x)=frac{sum x_if_i}{N}=frac{537}{576}approx 0,932 $$ Оценка не изменилась, что указывает на правильное определение средней для (x_5).
Строим расчетную таблицу для подсчета статистики:

(x_i) 0 1 2 3 4,375
(f_i) 229 211 93 35 8 576
(p_i) 0,3937 0,3670 0,1711 0,0532 0,0121 0,9970
(m_i) 226,7 211,4 98,5 30,6 7,0 574,2
(f_i-m_i) 2,3 -0,4 -5,5 4,4 1,0
(frac{(f_i-m_i)^2}{m_i}) 0,02 0,00 0,31 0,63 0,16 1,12

Значение теста: (X_e^2=1,12)
Критическое значение статистики ищем в виде (X_{кр}^2=X^2(alpha,k-2)), где α=0,05 и k=5, r=1
Пример 3
(X_{кр}^2approx 7,81)
Получается, что: (X_e^2lt X_{кр}^2)
Гипотеза (H_0) принимается.
Стрельба случайна.

И какой же ответ верный? Полученный в Примере 2 или в Примере 3?
Если посмотреть в расчетную таблицу для статистики (X_e^2) в Примере 2, основной вклад внесло слагаемое для (x_i=7). Оно равно 34,34 и поэтому сумма (X_e^2=36,84) в итоге велика. А в расчетной таблице Примера 3 такого выброса нет. Для объединенной варианты (x_i=4,375) слагаемое статистики равно 0,16 и сумма (X_e^2=1,12) в итоге мала.

Правильный ответ – в Примере 3.
Стрельба случайна.

Внимание!Критерий согласия (X^2) чувствителен к низкочастотным (редким) событиям и может ошибаться на таких выборках. Поэтому низкочастотные события нужно либо отбрасывать, либо объединять с другими событиями. Эта процедура называется коррекцией Йетса.

В Учи.ру мы стараемся даже небольшие улучшения выкатывать A/B-тестом, только за этот учебный год их было больше 250. A/B-тест — мощнейший инструмент тестирования изменений, без которого сложно представить нормальное развитие интернет-продукта. В то же время, несмотря на кажущуюся простоту, при проведении A/B-теста можно допустить серьёзные ошибки как на этапе дизайна эксперимента, так и при подведении итогов. В этой статье я расскажу о некоторых технических моментах проведения теста: как мы определяем срок тестирования, подводим итоги и как избегаем ошибочных результатов при досрочном завершении тестов и при тестировании сразу нескольких гипотез.

Типичная схема A/B-тестирования у нас (да и у многих) выглядит так:

  1. Разрабатываем фичу, но перед раскаткой на всю аудиторию хотим убедиться, что она улучшает целевую метрику, например, вовлечённость.
  2. Определяем срок, на который запускается тест.
  3. Случайно разбиваем пользователей на две группы.
  4. Одной группе показываем версию продукта с фичей (экспериментальная группа), другой — старую (контрольная).
  5. В процессе мониторим метрику, чтобы вовремя прекратить особо неудачный тест.
  6. По истечении срока теста сравниваем метрику в экспериментальной и контрольной группах.
  7. Если метрика в экспериментальной группе статистически значимо лучше, чем в контрольной, раскатываем протестированную фичу на всех. Если же статистической значимости нет, завершаем тест с отрицательным результатом.

Всё выглядит логично и просто, дьявол, как всегда, в деталях.

Статистическая значимость, критерии и ошибки

В любом A/B-тесте присутствует элемент случайности: метрики групп зависят не только от их функционала, но и от того, какие пользователи в них попали и как они себя ведут. Чтобы достоверно сделать выводы о превосходстве какой-то группы, нужно набрать достаточно наблюдений в тесте, но даже тогда вы не застрахованы от ошибок. Их различают два типа:

  • Ошибка первого рода происходит, если мы фиксируем разницу между группами, хотя на самом деле её нет. В тексте также будет встречаться эквивалентный термин — ложноположительный результат. Статья посвящена именно таким ошибкам.
  • Ошибка второго рода происходит, если мы фиксируем отсутствие разницы, хотя на самом деле она есть.

При большом количестве экспериментов важно, чтобы вероятность ошибки первого рода была мала. Её можно контролировать с помощью статистических методов. Например, мы хотим, чтобы в каждом эксперименте вероятность ошибки первого рода не превышала 5% (это просто удобное значение, для собственных нужд можно брать другое). Тогда мы будем принимать эксперименты на уровне значимости 0.05:

  1. Есть A/B-тест с контрольной группой A и экспериментальной — B. Цель — проверить, что группа B отличается от группы A по какой-то метрике.
  2. Формулируем нулевую статистическую гипотезу: группы A и B не отличаются, а наблюдаемые различия объясняются шумом. По умолчанию всегда считаем, что разницы нет, пока не доказано обратное.
  3. Проверяем гипотезу строгим математическим правилом — статистическим критерием, например, критерием Стьюдента.
  4. В результате получаем величину p-value. Она лежит в диапазоне от 0 до 1 и означает вероятность увидеть текущую или более экстремальную разницу между группами при условии верности нулевой гипотезы, то есть при отсутствии разницы между группами.
  5. Значение p-value сравнивается с уровнем значимости 0.05. Если оно больше, принимаем нулевую гипотезу о том, что различий нет, иначе считаем, что между группами есть статистически значимая разница.

Проверить гипотезу можно параметрическим или непараметрическим критерием. Параметрические опираются на параметры выборочного распределения случайной величины и обладают большей мощностью (реже допускают ошибки второго рода), но предъявляют требования к распределению исследуемой случайной величины.

Самый распространенный параметрический тест — критерий Стьюдента. Для двух независимых выборок (случай A/B-теста) его иногда называют критерием Уэлча. Этот критерий работает корректно, если исследуемые величины распределены нормально. Может показаться, что на реальных данных это требование почти никогда не удовлетворяется, однако на самом деле тест требует нормального распределения выборочных средних, а не самих выборок. На практике это означает, что критерий можно применять, если у вас в тесте достаточно много наблюдений (десятки-сотни) и в распределениях нет совсем уж длинных хвостов. При этом характер распределения исходных наблюдений неважен. Читатель самостоятельно может убедиться, что критерий Стьюдента работает корректно даже на выборках, сгенерированных из распределений Бернулли или экспоненциального.

Из непараметрических критериев популярен критерий Манна — Уитни. Его стоит применять, если ваши выборки очень малого размера или есть большие выбросы (метод сравнивает медианы, поэтому устойчив к выбросам). Также для корректной работы критерия в выборках должно быть мало совпадающих значений. На практике нам ни разу не приходилось применять непараметрические критерии, в своих тестах всегда пользуемся критерием Стьюдента.

Проблема множественного тестирования гипотез

Самая очевидная и простая проблема: если в тесте кроме контрольной группы есть несколько экспериментальных, то подведение итогов с уровнем значимости 0.05 приведёт к кратному росту доли ошибок первого рода. Так происходит, потому что при каждом применении статистического критерия вероятность ошибки первого рода будет 5%. При количестве групп $ngroups$ и уровне значимости $alpha$ вероятность, что какая-то экспериментальная группа выиграет случайно, составляет:

$P(any false positive) = 1 − (1 − alpha) ^ {ngroups}$

Например, для трёх экспериментальных групп получим 14.3% вместо ожидаемых 5%. Решается проблема поправкой Бонферрони на множественную проверку гипотез: нужно просто поделить уровень значимости на количество сравнений (то есть групп) и работать с ним. Для примера выше уровень значимости с учётом поправки составит 0.05/3 = 0.0167 и вероятность хотя бы одной ошибки первого рода составит приемлемые 4.9%.

Метод Холма — Бонферрони

Искушенный читатель знает и о методе Холма — Бонферрони, который всегда обладает большей мощностью, чем поправка Бонферрони, то есть реже совершает ошибки второго рода. В этом методе мы сортируем $ngroups$ гипотез по возрастанию значений p-value и начинаем их сравнивать по порядку с требуемым уровнем значимости, который увеличивается в зависимости от номера шага $step_number$ по формуле:

$alpha_{step} = frac {alpha} {ngroups − step_number + 1} $

P-value первой гипотезы сравнивается с уровнем статистический значимости $alpha/ngroups$. Если гипотеза принимается, то переходим ко второй и сравниваем её p-value с уровнем статистической значимости $alpha/(ngroups − 1)$, и так далее. Как только какая-то гипотеза отвергается, процесс останавливается и все оставшиеся гипотезы так же отвергаются. Самое жёсткое требование (и такое же, как в поправке Бонферрони) накладывается на гипотезу с наименьшим p-value, а большая мощность достигается за счёт менее жёстких условий для последующих гипотез. Цель A/B-теста — выбрать одного единственного победителя, поэтому методы Бонферрони и Холма — Бонферрони абсолютно идентичны в этом приложении.

Строго говоря, сравнения групп по разным метрикам или срезам аудитории тоже подвержены проблеме множественного тестирования. Формально учесть все проверки довольно сложно, потому что их количество сложно спрогнозировать заранее и подчас они не являются независимыми (особенно если речь идёт про разные метрики, а не срезы). Универсального рецепта нет, полагайтесь на здравый смысл и помните, что если проверить достаточно много срезов по разным метрикам, то в любом тесте можно увидеть якобы статистически значимый результат. А значит, надо с осторожностью относиться, например, к значимому приросту ретеншена пятого дня новых мобильных пользователей из крупных городов.

Проблема подглядывания

Частный случай множественного тестирования гипотез — проблема подглядывания (peeking problem). Смысл в том, что значение p-value по ходу теста может случайно опускаться ниже принятого уровня значимости. Если внимательно следить за экспериментом, то можно поймать такой момент и ошибочно сделать вывод о статистической значимости.

Предположим, что мы отошли от описанной в начале поста схемы проведения тестов и решили подводить итоги на уровне значимости 5% каждый день (или просто больше одного раза за время теста). Под подведением итогов я понимаю признание теста положительным, если p-value ниже 0.05, и его продолжение в противном случае. При такой стратегии доля ложноположительных результатов будет пропорциональна количеству проверок и уже за первый месяц достигнет 28%. Такая огромная разница кажется контринтуитивной, поэтому обратимся к методике A/A-тестов, незаменимой для разработки схем A/B-тестирования.

Идея A/A-теста проста: симулировать на исторических данных много A/B-тестов со случайным разбиением на группы. Разницы между группами заведомо нет, поэтому можно точно оценить долю ошибок первого рода в своей схеме A/B-тестирования. На гифке ниже показано, как изменяются значения p-value по дням для четырёх таких тестов. Равный 0.05 уровень значимости обозначен пунктирной линией. Когда p-value опускается ниже, мы окрашиваем график теста в красный. Если бы в этом время подводились итоги теста, он был бы признан успешным.

Рассчитаем аналогично 10 тысяч A/A-тестов продолжительностью в один месяц и сравним доли ложноположительных результатов в схеме с подведением итогов в конце срока и каждый день. Для наглядности приведём графики блуждания p-value по дням для первых 100 симуляций. Каждая линия — p-value одного теста, красным выделены траектории тестов, в итоге ошибочно признанных удачными (чем меньше, тем лучше), пунктирная линия — требуемое значение p-value для признания теста успешным.

На графике можно насчитать 7 ложноположительных тестов, а всего среди 10 тысяч их было 502, или 5%. Хочется отметить, что p-value многих тестов по ходу наблюдений опускались ниже 0.05, но к концу наблюдений выходили за пределы уровня значимости. Теперь оценим схему тестирования с подведением итогов каждый день:

Красных линий настолько много, что уже ничего не понятно. Перерисуем, обрывая линии тестов, как только их p-value достигнут критического значения:

Всего будет 2813 ложноположительных тестов из 10 тысяч, или 28%. Понятно, что такая схема нежизнеспособна.

Хоть проблема подглядывания — это частный случай множественного тестирования, применять стандартные поправки (Бонферрони и другие) здесь не стоит, потому что они окажутся излишне консервативными. На графике ниже — доля ложноположительных результатов в зависимости от количества тестируемых групп (красная линия) и количества подглядываний (зелёная линия).

Хотя на бесконечности и в подглядываниях мы вплотную приблизимся к 1, доля ошибок растёт гораздо медленнее. Это объясняется тем, что сравнения в этом случае независимыми уже не являются.

Байесовский подход и проблема подглядывания

Можно встретить мнение, что Байесовский подход к анализу A/B-тестов избавляет от проблемы подглядывания. Это не так, хотя и его можно настроить соответствующим образом. Отличную статью с дополнительными материалами можно почитать здесь.

Методы досрочного завершения теста

Есть варианты тестирования, позволяющие досрочно принять тест. Расскажу о двух из них: с постоянным уровнем значимости (поправка Pocock’a) и зависимым от номера подглядывания (поправка O’Brien-Fleming’a). Строго говоря, для обеих поправок нужно заранее знать максимальный срок теста и количество проверок между запуском и окончанием теста. Причём проверки должны происходить примерно через равные промежутки времени (или через равные количества наблюдений).

Pocock

Метод заключается в том, что мы подводим итоги тестов каждый день, но при сниженном (более строгом) уровне значимости. Например, если мы знаем, что сделаем не больше 30 проверок, то уровень значимости надо выставить равным 0.006 (подбирается в зависимости от количества подглядываний методом Монте-Карло, то есть эмпирически). На нашей симуляции получим 4% ложноположительных исходов — видимо, порог можно было увеличить.

Несмотря на кажущуюся наивность, некоторые крупные компании пользуются именно этим способом. Он очень прост и надёжен, если вы принимаете решения по чувствительным метрикам и на большом трафике. Например, в «Авито» по умолчанию уровень значимости принят за 0.005.

O’Brien-Fleming

В этом методе уровень значимости изменяется в зависимости от номера проверки. Надо заранее определить количество шагов (или подглядываний) в тесте и рассчитать уровень значимости для каждого из них. Чем раньше мы пытаемся завершить тест, тем более жёсткий критерий будет применён. Пороговые значения статистики Стьюдента $Z_{step}$ (в том числе значение на последнем шаге $Z_{last_step}$), соответствующие нужному уровню значимости, зависят от номера проверки $step_number$ (принимает значения от 1 до общего количества проверок $total_steps$ включительно) и рассчитываются по эмпирически полученной формуле:

$Z_{last_step} = 2.2471 + frac {0.3373} {total_steps} − frac {0.6331} {sqrt {total_steps}} \ Z_{step} = Z_{last_step}  {sqrt { frac {total_steps} {step_number}}}$

Код для воспроизведения коэффициентов

from sklearn.linear_model import LinearRegression
from sklearn.metrics import explained_variance_score
import matplotlib.pyplot as plt

# datapoints from https://www.aarondefazio.com/tangentially/?p=83
total_steps = [
    2, 3, 4, 5, 6, 8, 10, 15, 20, 25, 30, 50, 60
]
last_z = [
    1.969, 1.993, 2.014, 2.031, 2.045, 2.066, 2.081, 
    2.107, 2.123, 2.134, 2.143, 2.164, 2.17
]
features = [
    [1/t, 1/t**0.5] for t in total_steps
]
lr = LinearRegression()
lr.fit(features, last_z)
print(lr.coef_)  # [ 0.33729346, -0.63307934]
print(lr.intercept_)  # 2.247105015502784
print(explained_variance_score(lr.predict(features), last_z))  # 0.999894

total_steps_extended = np.arange(2, 80)
features_extended = [ [1/t, 1/t**0.5] for t in total_steps_extended ]
plt.plot(total_steps_extended, lr.predict(features_extended))
plt.scatter(total_steps, last_z, s=30, color='black')
plt.show()

Соответствующие уровни значимости вычисляются через перцентиль $perc$ стандартного распределения, соответствующий значению статистики Стьюдента $Z$:

perc = scipy.stats.norm.cdf(Z)
pval_thresholds = (1 − perc) * 2

На тех же симуляциях это выглядит так:

Ложноположительных результатов получилось 501 из 10 тысяч, или ожидаемые 5%. Обратите внимание, что уровень значимости не достигает значения в 5% даже в конце, так как эти 5% должны «размазаться» по всем проверкам. В компании мы пользуемся именно этой поправкой, если запускаем тест с возможностью ранней остановки. Прочитать про эти же и другие поправки можно по ссылке.

Метод Optimizely

Метод Optimizely хорош тем, что позволяет вообще не фиксировать дату окончания теста, а требуемый уровень значимости рассчитывается на каждый момент времени как функция от количества наблюдений в тесте. Интуитивно лично мне их метод нравится меньше, так как в нём жёсткость критерия увеличивается по ходу теста. То есть она минимальна в первые дни, когда случайный шум оказывает наибольшее влияние на метрики. В методе O’Brien-Fleming’a ситуация противоположная.

Калькулятор A/B-тестов

Специфика нашего продукта такова, что распределение любой метрики очень сильно меняется в зависимости от аудитории теста (например, номера класса) и времени года. Поэтому не получится принять за дату окончания теста правила в духе «тест закончится, когда в каждой группе наберётся 1 млн пользователей» или «тест закончится, когда количество решённых заданий достигнет 100 млн». То есть получится, но на практике для этого надо будет учесть слишком много факторов:

  • какие классы попадают в тест;
  • тест раздаётся на учителей или учеников;
  • время учебного года;
  • тест на всех пользователей или только на новых.

Тем не менее, в наших схемах A/B-тестирования всегда нужно заранее фиксировать дату окончания. Для прогноза продолжительности теста мы разработали внутреннее приложение — калькулятор A/B-тестов. Основываясь на активности пользователей из выбранного сегмента за прошлый год, приложение рассчитывает срок, на который надо запустить тест, чтобы значимо зафиксировать аплифт в X% по выбранной метрике. Также автоматически учитывается поправка на множественную проверку и рассчитываются пороговые уровни значимости для досрочной остановки теста.

Все метрики у нас рассчитываются на уровне объектов теста. Если метрика — количество решённых задач, то в тесте на уровне учителей это будет сумма решённых задач его учениками. Так как мы пользуемся критерием Стьюдента, можно заранее рассчитать нужные калькулятору агрегаты по всем возможным срезам. Для каждого дня со старта теста нужно знать количество людей в тесте $users_cnt$, среднее значение метрики $metric_mean$ и её дисперсию $metric_std$. Зафиксировав доли контрольной группы $control_group_share$, экспериментальной группы $exp_group_share$ и ожидаемый прирост от теста $uplift_expected$ в процентах, можно рассчитать ожидаемые значения статистики Стьюдента $ttest_stat_value$ и соответствующее p-value на каждый день теста:

$ttest_stat_precursor = frac{metric_mean sqrt {users_cnt}}{metric_std} \ ttest_stat_value = frac {ttest_stat_precursor} {sqrt{ frac{1} {control_group_share} + frac {1} {exp_group_share}}} * uplift_expected / 100$

Далее легко получить значения p-value на каждый день:

pvalue = (1 − scipy.stats.norm.cdf(ttest_stat_value)) * 2

Зная p-value и уровень значимости с учетом всех поправок на каждый день теста, для любой продолжительности теста можно рассчитать минимальный аплифт, который можно задетектировать (в англоязычной литературе — MDE, minimal detectable effect). После этого легко решить обратную задачу — определить количество дней, необходимое для выявления ожидаемого аплифта.

Заключение

В качестве заключения хочу напомнить основные посылы статьи:

  • Если вы сравниваете средние значения метрики в группах, скорее всего, вам подойдёт критерий Стьюдента. Исключение — экстремально малые размеры выборки (десятки наблюдений) или аномальные распределения метрики (на практике я таких не встречал).
  • Если в тесте несколько групп, пользуйтесь поправками на множественное тестирование гипотез. Подойдёт простейшая поправка Бонферрони.
  • Сравнения по дополнительным метрикам или срезам групп тоже подвержены проблеме множественного тестирования.
  • Выбирайте дату завершения теста заранее. Вместо даты также можно зафиксировать количество наблюдений в группе.
  • Не подводите итоги теста раньше этой даты. Это можно делать, только если вы заранее решили пользоваться методами, подразумевающими досрочное завершение, например, методом O’Brien-Fleming.
  • Когда вносите изменения в схему A/B-тестирования, всегда проверяйте её жизнеспособность A/A-тестами.

Несмотря на всё вышенаписанное, бизнес и здравый смысл не должны страдать в угоду математической строгости. Иногда можно выкатить на всех функционал, не показавший значимого прироста в тесте, какие-то изменения неизбежно происходят вообще без тестирования. Но если вы проводите сотни тестов в год, их аккуратный анализ особенно важен. Иначе есть риск, что количество ложноположительных тестов будет сравнимо с реально полезными.

Занырнем глубже в механику классического A/B тестирования, познакомимся с понятием “статистическая значимость” и разберемся, что может угрожать достоверности результатов ваших тестов.

Автор английской версии: Идан Михаэли, директор по Data Science в Hippo Insurance

(Если вы здесь впервые, то лучше начните сначала)

A/B тестирование — это одна из самых популярных техник оптимизации веб-страниц. Техника позволяет маркетологам, владельцам сайтов принимать более взвешенные и обоснованные решения относительно целесообразности внедрения их творческих идей. Другими словами, когда кто-то предлагает что-то на сайте поменять, мы можем оценить эти изменения не интуитивно и не с высоты чьего-то опыта, а объективно, отталкиваясь от конкретных целей: как ближних (например, CTR кнопки), так и долгосрочных (например, конверсия в покупатели). В то же время, тесты страхуют нас от серьезных ошибок, которые могут подорвать вовлеченность.

Давайте же занырнем глубже в механику классического A/B тестирования, познакомимся с понятием статистическая значимость (statistical significance) и разберемся, что может угрожать достоверности результатов ваших тестов. В конце статьи я приведу пару альтернатив классическому A/B тестированию от Dynamic Yield.

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

Важно помнить, что когда мы выбираем одну из версий, то фактически масштабируем показатели, полученные в результате тестирования, на всю аудиторию потенциальных пользователей, а это — серьезный прыжок веры. Поэтому тестирование должно быть достоверным; иначе есть риск принять неверное решение, которое в долгосрочной перспективе негативно скажется на показателях сайта. Процесс достижения нужной достоверности мы называем тестированием гипотезы (hypothesis testing), а саму искомую достоверность — статистической значимостью (statistical significance).

Тестирование гипотезы начинается с того, что мы формулируем нулевую гипотезу (Null hypothesis) — некое утверждение, которое закрепляет статус кво, например “оригинальная страница (база) дает тот же CTR, что и вариация с новым дизайном”. Далее мы смотрим, можно ли отклонить это утверждение как крайне маловероятное.

Как мы это делаем?

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

Ошибки первого рода. На деле же, этой разницы может не быть, а различия в результатах, на которые мы опираемся — это воля случая. Такой тип ошибок называется ошибки первого рода (type I error) или ложноположительные результаты (false positive).

Ошибки второго рода. Второй тип ошибок наблюдается, когда мы не наблюдаем значительной разницы между вариациями страницы, в то время как разница на самом деле есть, а ее отсутствие в тестировании — это случайность. Такие ошибки называют ошибками второго рода (type II error) или ложноотрицательными результатами (false negative).

Как избежать ошибок первого и второго рода?

Краткий ответ такой: устанавливайте правильный размер выборки. Чтобы определить нужный размер выборки, необходимо задать несколько параметров для нашего теста. Чтобы избежать ложноположительных результатов, нужно установить уровень достоверности (confidence level) или, другими словами, статистическую значимость. Это должно быть небольшое положительное число. Как правило, уровень значимости принимают равным 0,05: это означает, что на действующей модели лишь в 5% случаев есть вероятность выявить ложную разницу между двумя вариациями (то есть пятипроцентная вероятность ошибки). Про эту общепринятую константу обычно говорят “достоверность более 95%”.

Большинство специалистов по проведению тестирований (как и большинство инструментов, доступных на сегодняшний день) довольствуются этим первым параметром. Но, если мы хотим также застраховаться от ложноотрицательных результатов (false negative), нужно определить еще два параметра.

  • Первый — это минимальная разница в результатах, которую мы хотим отслеживать (при условии, что разница была выявлена). Второй — это вероятность выявить эту разницу (при условии, что она существует).
  • Второй параметр называют статистической мощностью (statistical power) и часто по умолчанию принимают его за 80%. Далее нужный размер выборки рассчитывается на основании этих трёх значений (можно воспользоваться онлайн-калькулятором).

Хотя этот процесс может показаться достаточно сложным, а рассчитанный таким образом размер выборки часто кажется слишком большим, стандартный подход к тестированию диктует именно такую процедуру — иначе о достоверности говорить не приходится. Горькая правда в том, что даже при условии чёткого следования вышеописанному алгоритму, вы всё равно можете получить некорректные результаты. Давайте разберемся почему.

Я провел все вычисления; теперь можно полностью доверять результатам?

Хотя метод проверки гипотез выглядит многообещающе, на практике он совершенно не застрахован от ошибок, потому что при тестировании мы опираемся на определенные скрытые предположения, которые часто не имеют места в реальных жизненных сценариях.

Первое предположение обычно не вызывает сомнений: мы предполагаем, что “образцы” нашей выборки — то есть посетители сайта, которым мы показываем вариации страницы — никак не связаны друг с другом, и их поступки не созависимы. Обычно это предположение достоверно, если конечно мы не показываем наши вариации одному и тому же посетителю по несколько раз, считая каждый раз как отдельный показ.

Второе предположение состоит в том, что элементы каждой выборки распределены одинаково (identically distributed). Проще говоря, это означает, что вероятность конверсии равна для всех посетителей. Конечно, это не так. Вероятность конверсии зависит от времени, местоположения, предпочтений посетителя, источников трафика и многих других факторов. К примеру, если во время проведения эксперимента, на сайте крутится какая-то рекламная кампания, мы можем наблюдать прилив трафика с Facebook. Это может привести к резким изменениям в CTR (click-through rates) — ведь люди, привлеченные рекламой, отличаются от ваших обычных посетителей. Такие колебания влияют не только на A/B тесты, но и на более продвинутые техники оптимизации, которые мы применяем в Dynamic Yield.

Третье предположение заключается в том, что измеряемые нами показатели (например, CTR или конверсия) имеют нормальное распределение. Возможно для вас это звучит как абстрактный математический термин, но правда в том, что все “магические” формулы расчета уровня достоверности основаны на этом предположении, которое, кстати, очень шаткое и соблюдается далеко не всегда. В целом можно выделить такую зависимость: чем больше размер выборки и чем больше мы наблюдаем конверсий, тем сильнее соблюдается это предположение — согласно центральной предельной теореме.

Окей, понятно, что математика не застрахована от ошибок, но на какие подводные камни стоит обратить внимание?

Таких подводных камней два.

Во-первых, платформы для проведения A/B тестов часто предлагают наблюдать за результатами тестирования в реальном времени. С одной стороны, это дает чувство контроля над ситуацией и позволяет специалисту следить за прозрачностью тестирования. Однако, наблюдая за показателями “в прямом эфире”, мы рискуем приступить к активным действиям раньше времени, отталкиваясь от сырых данных. Кто-то останавливает тестирование, получив первые результаты — даже если нужный размер выборки еще не достигнут, кто-то тормозит, как только достигнута статистическая значимость; оба сценария — прямой путь к ошибкам. Это вызывает статистическую погрешность (statistical bias) в сторону выявления разницы, которой на самом деле нет; более того, эту погрешность мы не можем заранее рассчитать и скорректировать (например, установив более высокий уровень значимости). Больше на тему: Как не надо анализировать A/B тесты. Проблема подглядывания →

Второй подводный камень — это завышенные ожидания от вариации-победителя после проведения тестирования. В результате проявления статистического эффекта известного как регрессия к среднему (regression toward the mean), долговременные результаты вариации-победителя могут быть не такими высокими, как в процессе тестирования. Проще говоря, есть вероятность, что вариация-победитель на самом деле была не объективно лучшей, а просто более “везучей”. Это везение со временем заканчивается и сглаживается, в результате чего возникает ощущение, что результаты падают.

Есть ли альтернативы A/B тестированию?

Конечно. Есть множество разных кейсов оптимизации страниц, и A/B тестирование подходит лишь в ряде случаев. Допустим, мы хотим провести тест на странице, которая давно работает и по показателям которой у нас уже собрана определенная история. Изменение, которое мы хотим внести, будет внедрено на страницу надолго и для всей совокупности посетителей сайта. Конечно, в этом случае нужно глубоко и точно измерить все результаты и принять обоснованное решение относительно данного изменения. Однако, на практике часто встречаются другие кейсы.

К примеру, нам нужно узнать, какой из трёх заголовков статей сработает лучше. При этом сайт, на котором будет размещена статья, относительно новый, а сама статья будет висеть на главной странице лишь несколько часов. Это означает, что нам нужно быстро выявить самый эффективный заголовок и применить это знание в рамках нескольких часов. В этом нам поможет метод “многорукого бандита”.

Если кратко, многорукий бандит постоянно делит трафик между вариациями в зависимости от результатов и уровня достоверности, зафиксированных на каждом этапе пути. При таком подходе мы немного теряем в плане уверенности, что вариация-побелитель действительно лучшая вариация, но получаем более быструю конвергенцию. Это первый уровень оптимизации, который мы предлагаем в Dynamic Yield.

Более глубокий уровень оптимизации делает ставку на полную персонализацию. Это можно делать вручную или автоматически. Суть в том, что мы показываем определенным пользователям определенные вариации. Рассмотрим пример персонализации вручную. Допустим мы хотим на День Королевы показывать всем посетителям из Нидерландов оранжевый фон страницы. Очень часто такие ручные изменения приносят свои результаты. Минус в том, что они плохо масштабируются. Допустим, у нас на сайте действует рекламная акция для посетителей с Facebook. Что делать, если с Facebook приходит голландец? По мере появления новых групп посетителей, количество вариаций будет расти, а правила оптимизации — усложняться. Кроме того, здесь в игру вступает метод научного тыка — вроде бы эксперименты должны принести какие-то результаты, но никто не знает какие.

Поэтому в подобных случаях может лучше сработать подход автоматической персонализации. Допустим, у нас кулинарный сайт, на котором есть секция с рекомендованными рецептами. С помощью механизма персонализации мы можем настроить сайт так, чтобы рекомендовать каждому посетителю персональный рецепт, на основании истории его взаимодействия со страницами, разделами и тегами на сайте.

Заключение

A/B тесты — эффективный инструмент, но если проводить их неправильно, можно прийти к ложным выводам. Достижение нужного уровня статистической значимости — это обязательное условие для получения надежных результатов тестирования. Чтобы этого добиться, нужно правильно установить ряд параметров, а также определить необходимый размер выборки и придерживаться его в процессе тестирования.

Классическая ошибка, которая ведет к потере достоверности — это сбор результатов до момента достижения нужного размера выборки. Если вас интересуют быстрые способ оптимизации, присмотритесь к методам из второй части статьи: многорукий бандит и персонализация на базе машинного обучения.

Материал из MachineLearning.

Перейти к: навигация, поиск

Содержание

  • 1 Стандартная методика проверки статистических гипотез
  • 2 Вычисление пи-величины
  • 3 Вычисление ROC-кривой
  • 4 Литература
  • 5 См. также
  • 6 Ссылки

Уровень значимости статистического теста — допустимая для данной задачи вероятность ошибки первого рода (ложноположительного решения, false positive), то есть вероятность отклонить нулевую гипотезу, когда на самом деле она верна.

Другая интерпретация:
уровень значимости — это такое (достаточно малое) значение вероятности события, при котором событие уже можно считать неслучайным.

Уровень значимости обычно обозначают греческой буквой alpha (альфа).

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

В стандартной методике проверки статистических гипотез уровень значимости фиксируется заранее, до того, как становится известной выборка
x^m=(x_1,ldots,x_m).

Чрезмерное уменьшение уровня значимости (вероятности ошибки первого рода) alpha может привести к увеличению вероятности ошибки второго рода, то есть вероятности принять нулевую гипотезу, когда на самом деле она не верна (это называется ложноотрицательным решением, false negative).
Вероятность ошибки второго рода beta связана с мощностью критерия gamma простым соотношением  gamma = 1-beta.
Выбор уровня значимости требует компромисса между значимостью и мощностью или
(что то же самое, но другими словами)
между вероятностями ошибок первого и второго рода.

Обычно рекомендуется выбирать уровень значимости из априорных соображений.
Однако на практике не вполне ясно, какими именно соображениями надо руководствоваться,
и выбор часто сводится к назначению одного из популярных вариантов
alpha=0.005,; 0.01,; 0.05,; 0.1.
В докомпьютерную эпоху эта стандартизация позволяла сократить объём справочных статистических таблиц.
Теперь нет никаких специальных причин для выбора именно этих значений.

Существует две альтернативные методики, не требующие априорного назначения alpha.

Вычисление пи-величины

Достигаемый уровень значимости или пи-величина (p-value) — это наименьшая величина уровня значимости,
при которой нулевая гипотеза отвергается для данного значения статистики критерия T.

p(T) = min { alpha:: TinOmega_alpha },

где
Omega_alpha — критическая область критерия.

Другая интерпретация:
достигаемый уровень значимости или пи-величина p(T) — это вероятность, с которой (при условии истинности нулевой гипотезы) могла бы реализоваться наблюдаемая выборка, или любая другая выборка с ещё менее вероятным значением статистики T.

Случайная величина p(T(x^m)) имеет равномерное распределение.
Фактически, функция p(T) приводит значение статистики критерия T к шкале вероятности.
Маловероятным значениям (хвостам распределения) статистики T соотвествуют значения p(T), близкие к нулю или к единице.

Вычислив значение p(T(x^m)) на заданной выборке x^m,
статистик имеет возможность решить,
является ли это значение достаточно малым, чтобы отвергнуть нулевую гипотезу.
Данная методика является более гибкой, чем стандартная.
В частности, она допускает «нестандартное решение» — продолжить наблюдения, увеличивая объём выборки, если оценка вероятности ошибки первого рода попадает в зону неуверенности, скажем, в отрезок [0.01,,0.1].

Вычисление ROC-кривой

ROC-кривая (receiver operating characteristic) — это зависимость мощности (1-beta) от уровня значимости alpha.

Методика предполагает, что статистик укажет подходящую точку на ROC-кривой, которая соответствует компромиссу между вероятностями ошибок I и II рода.

Литература

  1. Кобзарь А. И. Прикладная математическая статистика. Справочник для инженеров и научных работников. — М.: Физматлит, 2006.
  2. Цейтлин Н. А. Из опыта аналитического статистика. — М.: Солар, 2006. — 905 с.
  3. Алимов Ю. И. Альтернатива методу математической статистики. — М.: Знание, 1980.

См. также

  • Проверка статистических гипотез — о стандартной методике проверки статистических гипотез.
  • Достигаемый уровень значимости, синонимы: пи-величина, p-Value.

Ссылки

  • P-value — статья в англоязычной Википедии.
  • ROC curve — статья в англоязычной Википедии.

Понравилась статья? Поделить с друзьями:

Интересное по теме:

  • Порог ошибок эхо запросов lcp
  • Порезанная кольраби морфологическая ошибка
  • Порвать левую кроссовку где ошибка
  • Поработаем над ошибками
  • Пора подвести результаты встречи где ошибка

  • Добавить комментарий

    ;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: