Проверка на последовательную зависимость с помощью ортогональных многочленов Мейкснера

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

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

  • Чрезвычайная доходность на финансовых рынках.
  • Отказы машин, серверов,…
  • Индикаторы превышения стоимости под риском в моделях риска финансового рынка.

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

Контур

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

Прочитав этот пост в блоге, вы узнаете:

  1. Как можно статистически сформулировать проблему измерения последовательной зависимости.
  2. Как получить полиномы Мейкснера из геометрического распределения.
  3. Как рассчитать показатель зависимости Мейкснера для последовательности времен ожидания для количественной оценки силы зависимости.
  4. Как протестировать методы оценки зависимостей с помощью простых экспериментов Монте-Карло с использованием цепей Маркова с известной структурой зависимостей.

Статистическая постановка задачи.

Дана последовательность случайных величин X = (X [0], X [1],…, X [n]), принимающих значения в наборе {0, 1} и вероятность p∈ (0,1), я хотел бы исследовать последовательные зависимости между элементами X. Это исследование должно быть основано на выборке x, взятой из X, то есть конечной последовательности нулей и единиц (x [0], x [1] ,. .., x [n]). Это очень сложная и глубокая проблема, и в этом сообщении в блоге я собираюсь сосредоточиться на сборе доказательств, подтверждающих или опровергающих следующие две основные гипотезы:

  1. Случайные переменные X [i] имеют распределение Ber (p) (распределение Бернулли с вероятностью успеха p).
  2. Случайные величины X [i] независимы.

Если мы предположим, что элементы x являются независимыми выборками из фиксированной случайной величины Бернулли X [0], то мы можем оценить вероятность p путем вычисления среднего значения x [0], x [1],…, x [n]. Это потому, что ожидание X [0] равно 𝔼 X [0] = p.

Чтобы задать соответствующий контекст для задачи обнаружения последовательной зависимости, позвольте мне заметить, что случайные двоичные последовательности x часто связаны с дискретными наблюдениями за системой с двумя состояниями. Мы говорим, что «событие» произошло в момент i, если x [0] = 1.

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

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

Чтобы строго исследовать вопрос о последовательной зависимости в последовательности X на основе наблюдения x, мы можем посмотреть на распределение времени ожидания между событиями. Например, последовательность

[0, 1, 1, 0, 0, 1, 0, 0]

дает следующую последовательность времени ожидания

[1, 3].

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

Чтобы формально определить последовательность времени ожидания y = (y [1] ,…, y [m] ) на основе x , рассмотрим последовательность индексов I = (i [1] , i [2] ,…), такую, что для каждого i∈ I имеем x [i] = 1. Мы устанавливаем

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

Геометрическое распределение

Функция масс вероятности (PMF) геометрического распределения с параметром p определяется выражением

PMF геометрического распределения с параметром p = 0,1 выглядит следующим образом.

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

Семейство ортогональных многочленов тесно связано с каждым распределением вероятностей μ на . Для любого такого распределения мы можем определить скалярное произведение между (интегрируемыми с квадратом) функциями с действительными значениями f и g как

где Y - случайная величина с распределением μ. Для геометрического распределения указанное выше скалярное произведение принимает вид

Мы говорим, что функции f и g ортогональны (относительно μ) тогда и только тогда, когда ⟨f, g⟩ = 0.

Наконец, последовательность многочленов (q [i]) с i≥ 0 называется ортогональной, если и только если, ⟨q [k], q [ i]⟩ = 0 для всех k ≠ i, и каждый q [i] имеет степень i. Как следствие, 𝔼 q [i] (Y) = 0 для i ›0. Это инструмент, который я собираюсь использовать, чтобы проверить, соответствует ли данное Y геометрическому распределению.

Семейство ортогональных многочленов M = (M [i] (y)), соответствующих геометрическому распределению, является частным случаем семейства Мейкснера, полученным из отрицательного биномиального распределения ( обобщение геометрического распределения). Члены семейства Мейкснер удовлетворяют следующему удобному рекурсивному соотношению:

с M [1] (y) = 1 и M [-1] (y) = 0. Это отношение используется для вычисления последовательности M. Также обратите внимание, что M [k] зависит от значения параметра p.

В сопутствующем исходном коде Python функция meixner_poly_eval используется для оценки полиномов Мейкснера до заданной степени по заданному набору точек. Я использовал эту функцию, чтобы построить графики этих многочленов до степени 55.

Как упоминалось выше, для каждого многочлена M [k] (y) от M уравнение

выполняется тогда и только тогда, когда Y∈ Geom (p) и k ›0.

Это отношение можно использовать для проверки, принадлежит ли данный образец времени ожидания геометрическому распределению с параметром p. Мы собираемся оценить ожидания 𝔼 M [k] (Y) и использовать эти оценки в качестве баллов: значения, близкие к нулю, можно интерпретировать как свидетельство, говорящее о геометрическом распределении с параметром p . Если значения далеки от нуля, это признак того, что нам нужно пересмотреть наши предположения и, возможно, отказаться от i.i.d. гипотеза об исходной последовательности событий. Обратите внимание, что значительные отклонения от нуля также могут возникать, если события независимы, но истинная вероятность p ’ значительно отличается от предполагаемой p. Это легко проверить, как описано ранее.

Оценка зависимости Мейкснера

Чтобы получить единое число (балл), которое количественно определяет степень последовательной зависимости в изложенном выше смысле, мы определим показатель зависимости Мейкснера (MDS) как среднее значение оценок ожидания для первые k многочлены Мейкснера, вычисленные на выборке времени ожидания y = (y [1], .., y [m]):

Идея использования ортогональных полиномов для проверки предположений о структуре зависимости в двоичных последовательностях уходит корнями в метод вывода моментов и была развита в финансовой литературе для тестирования моделей Value-at-Risk на исторических данных. В этом сообщении в блоге я адаптирую подход, изложенный в Candelon et al. См. Раздел «Ссылки» ниже.

Исследование Монте-Карло

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

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

  1. Сгенерируйте двоичную последовательность, используя модель с известной структурой последовательной зависимости.
  2. Оцените ожидания 𝔼 M [k] (X) для k = 1,…, 10.
  3. Повторите шаги 1 и 2 для большого количества независимых испытаний и визуализируйте агрегированные результаты.

Начнем с простого случая моделирования i.i.d. последовательность случайных величин Бернулли с вероятностью успеха p [0]. Это можно использовать как проверку работоспособности и для проверки правильности нашей реализации процедуры.

Для следующего эксперимента мы устанавливаем p [0] = 0,05 и моделируем 5000 образцов из X = (X [1], .., X [1000]).

Для модели с простой формой серийной зависимости выбираем вероятности 0 ‹p [1]‹ p [0] ‹p [2]‹ 1 и задаем распределения случайных величин в последовательности X = (X [0], X [1], X [2],…) следующим образом. Пусть X [0] будет Бернулли с вероятностью успеха p [0]. Распределения X [i] для i ›0 зависят от X [i-1]:

Чтобы сравнить эту модель с i.i.d. Модель Бернулли с вероятностью успеха
p [0], нам нужно установить p [1] и p [2] такие что безусловные
распределения X [i] являются Ber (p [0]).

Другими словами, для данного 0 ‹p [1]‹ p [0] ‹1 мы ищем p [2] ∈ (0, 1) , такая что случайная двоичная последовательность, определенная выше, удовлетворяет P (X [i] = 1) = p [0].
Эта двоичная последовательность может быть представлена ​​как простая цепь Маркова с состоянием пробел {0, 1}, матрица вероятности перехода P, заданная как

и начальное распределение λ = (1-p [0], p [0]). Предельное распределение X [i] определяется как

Этот основной результат можно найти в любой книге о цепях Маркова (см. Раздел Ссылки ниже). Задача поиска p [2] такого, что P (X [i] = 1) как можно ближе к p [0], возможно, может быть легко решена с помощью стандартного алгоритма оптимизации, такого как BFGS.

Например, описанная выше процедура быстро дает p [2] = 0,62 для p [1] = 0,02 и p [0] = 0,05.

Результаты исследования Монте-Карло

Давайте протестируем алгоритм оценки зависимостей для следующих значений p [1] и p [2]. Оценка MC полиномов Мейкснера приводит к следующим оценкам зависимости Мейкснера:

+------+------+-------+
|  p1  |  p2  |  MDS  |
+------+------+-------+
| 0.5, |  0.5 | 0.083 |
|  0.4 | 0.24 | 0.194 |
|  0.3 | 0.43 | 0.382 |
|  0.2 | 0.62 | 0.583 |
+------+------+-------+

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

Как видим, гистограммы немного сдвинуты влево.

Все результаты и графики, представленные в этом сообщении блога, были созданы с использованием следующего скрипта Python: meixner.py

Заключительное слово

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

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

Value-At-Risk (Var) - это квантиль распределения убытков для цены финансового актива за фиксированный временной горизонт. Например, инвестор, имеющий длинную позицию по золоту, может быть заинтересован в 95% VaR на однодневном временном горизонте для цены на золото в долларах США. Для хорошо откалиброванной модели VaR экстремальные потери в 5% рабочих дней, наблюдаемые в течение инвестиционного периода, будут превышать оценку VaR 95%. События превышения VaR должны не только происходить с ожидаемой частотой, но и быть независимыми друг от друга. Правильная калибровка модели рыночного риска, которая сводит зависимость событий превышения к низкому уровню, обычно намного сложнее, чем простая калибровка частоты превышения. Но это особенно важно во времена финансовых затруднений, потому что недооценка риска неизбежно ведет к недостаточному хеджированию и, возможно, к более серьезным убыткам.

Большое спасибо Саре Хатри за чтение черновиков этого сообщения в блоге и за внесение бесчисленных идей по улучшению и исправлений.

использованная литература