Блог им. AlexeyPetrushin

Практическая польза от Теории Экстремальных Значений? EVT

Недавно потребовалось установить экспоненту Парето хвоста распределения вероятностей. И чтобы посмотреть насколько хорошо методы EVT работают, я сделал простой пример.
Пример: 30 сэмплов StudentT(df=4), каждый размером 20000. Определить экспоненту хвоста используя методы: Хилла, GPD, LeastSquares, CDF LogLog PLot.
Результаты ужасны: точность всех методов плюс минус километр. Я не вижу ни малейшего смысла в EVT поскольку вручную по линейке установить наклон линии на ЛогЛог Графике CDF оказывается не хуже (мне кажется даже лучше) чем специализированные методы EVT.
На графике — y — найденная экспонента хвоста, каждая линия это отдельный сэмпл, цвет метод определения, х — гиперпараметр (число точек в хвосте распределения которые использовались в расчетах). Верный результат это горизонтальная линия y=4, вместо этого мы наблюдаем, в зависимости от метода — систематические ошибки, либо дикий хаос.

Практическая польза от Теории Экстремальных Значений? EVT
Даже, мне кажется с линейкой предпочтительней, график лог лог. Поскольку ты боль менее визуально и интуитивно понимаешь что делаешь. 

Практическая польза от Теории Экстремальных Значений? EVT

А когда ты ищешь на графике Хила «участок когда график стабилизировался» — ну и как его там найти (см картинку ниже, черные линии)? Выбирай любой кусок графика который нравится (отмечены желтым кружком), от экспоненты 3 до 4 — и на любом значении этого интервала график Хила выглядит «стабильный», выбирай любое значение которое нравится. И получается смысл тогда в этом методе Хила? Я и с линейкой на лог лог графике установлю что экспонента где то между 3 и 4, и при этом еще осмысленно будет видно что это значит, чем абстрактно выискывать некий стабильный участок на графике Хилла.

Практическая польза от Теории Экстремальных Значений? EVT
Ну а GPT (Peak over Treschold) — это MLE фиттинг хвоста, и это должен быть самый точный метод. А он дает наихудший результат из всех, полный хаос, определяя экспоненту хвоста от 2 до 8, причем совершенно нестабильный и дико прыгает, малейшее изменение гиперпараметров и вместо результата 3 получаешь 6 — это как вообще?

Практическая польза от Теории Экстремальных Значений? EVT
Наилучший резульат дал MLE фиттинг полного распределения StudentT (красные линии на первом графике). Но, это не в счет. Потому что здесь простой пример, где распределение симметрично, и мы точно знаем что это StudentT, это не будет также хорошо работать в реальности, если распределение перекошено например и имеет разные экспоненты левого и правого хвостов. Поэтому красные линии, они не считаются.
Вывод:

Я не понимаю какой смысл в EVT если она дает такие результаты? Получается лог лог график и линейка — проще, наглядне, надежней и даже точнее? Есть еще пара методов Pickands Estimator который вроде чуть лучше чем Hill но уже влом смотреть, едва ли там сильно лучше.
Код расчетов на Python и R quant.stackexchange.com/questions/83839/evt-how-to-estimate-tail-exponent-with-good-precision-hill-gpt-evt-leastsqu
296
10 комментариев
А с чего вывод, что они должны лучше результат давать, чем практичное 'ни вашим, ни нашим'?
Методы ж эти возникли для каких-то конкретных достаточно жёстких условий. Которые на рынке не соблюдаются.
Этак просто можно было б и будущее предсказывать.
avatar
svgr, мне казалось — если какие то расчеты делают — вместо того чтобы просто линейку приложить к графику, наверно потому что это как то лучше и точнее.

Вроде для рынков EVT как раз таки соблюдаются, и она именно для таких задач и создана. Мало данных, много неизвестного. Уровень наводнений для плотин, водостоков в горных регионах, там тоже редкие и большие события по которым почти нет данных и т.п.
avatar
Alex Craft, так надо конкретно убедиться, что для данного набора данных все методы из EVT можно применять. То есть произвести статистические расчёты.
avatar
svgr, насколько я понимаю сэмпл StudentT(df=4) удовлетворяет требованиям EVT GPD Peak Over Threshold.

а) Хвост парето да, б) достаточно большой параметр u трешхолд — да, симуляция перебирает разные значения, для этого параметра в) стационарность да г) независимость да д) достаточно данных — вроде да, я использовал сэмпл 20к и он дает несколько сотен значений в хвосте, вроде это считается достаточным.

Ошибка в использовании метода — я сделал 2мя способами, с нуля на питоне и используя R библиотеку, оба дают одно и тоже.


avatar
Alex Craft, чтобы в это погрузиться и отвечать по существу нужно немало времени потратить. Если Вы считаете, что всё сделали по методике, а результат неудовлетворительный, то нужно будет экспериментировать с изменениями и обдумывать метод ещё месяцев несколько. Просветление будет приходить по шагам.
Заранее могу сказать, что есть ошибки в понимании метода и его применении (выборе параметров, их значимости и т.п.). Другого ничего быть не может.
avatar
svgr, возможно. Но тогда получается это опасный метод. Где корректность/ошибки не очевидны даже в простом примере, где все точно известно.
avatar
Alex Craft, дело не в опасности, а в понимании как он построен. Вот питон — обёртка над много чем, им пользуются, часто не задумываясь. А нужно, если ты исследователь, знать до деталей что под капотом. Чтобы знать область применимости готового и в случае необходимости спуститься на уровень ниже в детализации, чтобы уметь менять и создать новый пакет под новую задачу. Когда имеющиеся неправильно работают.
avatar
svgr, хмм, я вроде понимаю. GPD это когда мы моделируем хвост отдельно.

Отрезаем тело распределения

y = x-u | x>u

И у нас получается новая случ переменная, которая имеет распределение парето GPD(location=0, scale, alpha)

И затем делаем фиттинг scale и alpha через MLE оптимизацию.

По идее это всего 2 параметра и должно хорошо и быстро оптимизироваться.

P.S. на всяк случай проверю — добавлю несколько начальных значений, может он минимум не может найти… но едва ли
avatar
Alex Craft, ну вот, надо параметрами добиться сначала, чтобы стало похоже на реальность (горизонтальную линию?), а потом посмотреть как эти параметры получаются. Возможно, что стандартной процедурой для метода они не получатся. О чём я выше написал. Надо будет как-то видоизменять стандартный метод, чтобы его оставить для дальнейшего использования.
avatar
svgr, нас интересует только alpha, он показан на оси y. В идеале, если индикатор стабильный, при изменении гиперпараметра u, альфа будет постоянным, и линия горизонтальной.
avatar

Читайте на SMART-LAB:
Фото
📈 Выручка Группы МГКЛ за 11 месяцев — 27 млрд рублей (x3,6 к АППГ)
К концу 2025 года подходим с рекордными прогнозными показателями: ✅ Прогноз по выручке — 27 млрд рублей, что в 3,6 раза выше, чем за...
Фото
IR-команда «Озон Фармацевтика» встретилась с аналитиком СберИнвестиций Софией Кирсановой
Мы поделились нашими планами и достижениями, а также ответили на вопросы. Поговорили о включении в индекс Мосбиржи, росте...
Фото
🎭 За кулисами ноября: итоги
В прошлом месяце вложения физлиц в ценные бумаги выросли на 36% . В облигации было инвестировано 115,6 млрд , в паи фондов — 31,1 млрд....

теги блога Alex Craft

....все тэги



UPDONW
Новый дизайн