March 4

Про байесовскую вероятность

«Парадокс Венеролога» против трейдера

25.03.2019 © Vytas Ramanchauskas, www.SpyTlt.com

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

Этот парадокс приведен в замечательной книжке физика Леонарда Млодинова «(Не)Совершенная случайность. Как случай управляет нашей жизнью» (очень рекомендую к прочтению! остальные книги Млодинова тоже рекомендую, но они уже имеют мало отношения к Теме инвестиций. Кстати, свои знаменитые научно-популярные книги Стивен Хоккинг писал в соавторстве именно с Млодиновым).

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

Речь пойдет о болезни, в оригинале крайне неприятной, но мне хочется пример повеселее, поэтому давайте представим что есть просто Болезнь, которая на некотором своем этапе никак себя явно не проявляет. Попутно заметим, что если недуг вообще никак и никогда себя не проявляет, то это уже и не болезнь вовсе, а страшилка для лохов. Поэтому только на некотором этапе. И вот некий человек, прочитав какой-то ужастик про эту Болезнь решает экспромтом, не имея никаких к тому оснований, сдать анализ, «провериться на всякий случай». Он сдает анализ и, о ужас, он положительный, Болезнь обнаружена. Жертва интересуется, а какова точность теста и узнает, что, скажем, 95%. Вопрос, какова вероятность того, что он на самом деле болен?

Сначала кажется, что это вопрос-анекдот из серии, а не Байес ли автор формулы Байеса? Кстати, подсказка, именно байесовский подход дает правильный ответ на этот вопрос и да, священник Томас Байес (забавно как в русскоязычной литературе его иногда величают министром, но minister в его случае другое значение имеет) выдвинул гениальную и совершенно неоцененную современниками идею, причем допустил серьезные ошибки (все-таки не математик); то, что мы называем формулой Байеса — это труды Лапласа, который нашел, оценил и переделал как надо.

Сначала заметим, что слово «точность» весьма неточное, всякий кто имел дело с задачами классификации и машинным обучением знает, что не так-то просто вывести критерий «точности». Ведь есть как ложноположительные ошибки (человек не болен, но ему говорят болен), так и ложноотрицательные (он на самом деле болен, но болезнь не распознается) и все становится достаточно сложно и запутано, поскольку в разных ситуациях разные приоритеты, иногда критичны ложноотрицательные ошибки иногда наоборот. Но давайте без сложностей. Давайте предположим, что ложноотрицательных ошибок тест не дает вообще (с ними бы наши парадоксальные выводы стали бы еще более парадоксальными), то есть все предельно просто: если человек болен, ему говорят что он болен. Если человек НЕ болен, в 95% это подтверждается. А в 5% случаев, увы, случается ошибка.

Так значит ли что наш герой имеет всего 5% шансов избежать алчного доброго эскулапа? и что у него 95% шансов, что таки да, подцепил где-то заразу эту. Отметим, к слову, что точность 95% — это еще очень хорошая для медицины точность.

Правильный ответ парадоксален. Надо, как ни странно, сначала уточнить, а насколько вообще эта Болезнь распространена? Какой процент населения ею болеет? Допустим, ею болеет в среднем один человек из тысячи. Тогда ответ будет совсем внезапный, шанс что этот человек с положительным анализом действительно болен всего около 2%! То есть почти наверняка он НЕ болен.

Как же такое может быть? Понять парадокс довольно просто на таком примере: допустим, вы отловили случайным образом 1000 человек. Среди них оказался один больной. Вы всех их протестировали этим тестом. 5% ошибки привели к тому, что из 1000 примерно 50 человек получат «черную метку». Единственный реальный больной будет там же среди них. Итак, если человек находится в группе из 50 человек, где только один по-настоящему болен, все наодятся в одинаковом положении, какова вероятность что болен именно он? вот-вот, 2%.

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

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

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

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

Дело в том, что типичный «тест на беременность» никакую беременность не «меряет». Он определяет есть ли в моче (или крови, что точнее) ХГЧ — Хорионический Гонадотропин Человека — гормон, который начинает интенсивно вырабатываться при беременности.

Вот только ХГЧ может продуцироваться не только при беременности, но и при разных очень нехороших болезнях, которые возможны как у женщин, так и у мужчин. То есть помимо первого варианта интерпретации ситуации — тест соврал — возможен еще один вариант: тест не соврал в том смысле, что он правильно определил наличие ХГЧ, а вот дальнейшая интерпретация была неверной. И на самом деле причина в том, что мужчина болен.

Кстати, ситуация, когда у явления Б есть основная (но не единственная) причина А очень часто приводит к ошибочным суждениям «Раз Б, значит А». Чаще всего так оно и есть, но случаи-исключения могут доставить немало неожиданных проблем.

Априорные вероятности в трейдинге

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

Какова вероятность того, что все это не мираж, что все это на самом деле? Удивительно, но существенная часть трейдеров вообще умудряется не задумываться над этим вопросом. Они просто не в курсе термина "Нулевая гипотеза " и как вообще должны проводиться статистические тесты. Выбрал критерии, подобрал параметры, получилось хорошо — и в бой!

Но речь не о них, с ними и так все ясно ;). Знающие статистику в курсе, что найденная закономерность должна пройти проверку (валидацию) на данных, которые были недоступны на этапе обучения. И что за основу принимается нулевая гипотеза: все произошло случайно, никакой закономерности нет. Если статистический тест на заданном уровне значимости опровергает нулевую гипотезу, то… Обычно делается вывод, что система работает, хотя ключевым вопросом является, а сколько раз проводилась валидация? При достаточно большом количестве попыток всё равно случится ошибка, когда несуществующая закономерность будет принята за реальную. И, к слову, никакая кросс-валидация здесь не поможет, важно соотношение количества попыток и вероятность ложной валидации.

Однако, все еще намного хуже. Помимо правильного тестирования и валидации, надо еще и учитывать априорную вероятность того, что закономерность вообще существует! В самом деле, допустим, что гипотеза эффективного рынка верна; рынок полностью эффективен. Тогда никаких закономерностей на нем нет и быть не может, трейдинг невозможен в принципе. Надо учитывать априорную вероятность того, что успешная торговая система той нише, где производится поиск, вообще существует. Учитывать точность прибора по поиску черной кошки в темной комнате, конечно, надо, но изначально надо б знать, а есть ли там эта кошка вообще.

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

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

Априорная вероятность успеха найти закономерность в ценах на нефть исходя из информации о Меркурии если не нулевая, то очень близкая к нулю. А к чему приводит низкая априорная вероятность мы уже видели на примере с Болезнью (кстати, если б она была бы еще менее распространенной, скажем один случай на 10 тысяч, то результат был бы еще драматичнее).

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

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

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

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

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

У этой темы есть огромное, важное и грустное продолжение, но оно уже совсем выходит за пределы тематики трейдинга и инвестиций, поэтому я лишь обозначу его. В последнее время все чаще и громче говорят о кризисе воспроизводимости в науке, особенно в медицине и биологии (про гуманитарные «науки» речь вообще не идет). Говоря прямо, попытки воспроизвести описанные в научных работах и опубликованные в уважаемых рецензируемых журналах результаты все чаще и чаще проваливаются (а самих статей все больше и больше). И если горе-трейдер расплачивается за ошибки (как правило) своими деньгами, то в случае такой вот науки хочется посочувствовать налогоплательщикам.

Собственно, это все та же подгонка, версия не для трейдеров, а для науки. Если хочется открыть нечто этакое и делается много попыток, а p-value принимается на уровне аж 0.05 (сравните с физикой и ее правилом пяти сигм), то вопрос усердия (не особо-то и большого), чтобы преуспеть в этом вопросе. В общем, Резерфорд был прав, существуют только две настоящие науки: физика и коллекционирование марок.

Что еще почитать

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

О кризисе воспроизводимости в науке, статья в журнале Nature

Ну и наконец прекраснейшая книга о логике науки и байесовском подходе, абсолютно применима к трейдингу и очень рекомендуется: E. T. Jaynes «Probability Theory: The Logic of Science»