У data scientist-ов сотни распределений вероятности на любой вкус. С чего начать?


Data science, чем бы она там не была – та ещё штука. От какого-нибудь гуру на ваших сходках или хакатонах можно услышать:«Data scientist разбирается в статистике лучше, чем любой программист». Прикладные математики так мстят за то, что статистика уже не так на слуху, как в золотые 20е. У них даже по этому поводу есть своя несмешная диаграмма Венна. И вот, значит, внезапно вы, программист, оказываетесь совершенно не у дел в беседе о доверительных интервалах, вместо того, чтобы привычно ворчать на аналитиков, которые никогда не слышали о проекте Apache Bikeshed, чтобы распределённо форматировать комментарии. Для такой ситуации, чтобы быть в струе и снова стать душой компании – вам нужен экспресс-курс по статистике. Может, не достаточно глубокий, чтобы вы всё понимали, но вполне достаточный, чтобы так могло показаться на первый взгляд.

Вероятностные распределения – это основа статистики, так же как структуры данных – основа computer science. Если хотите говорить языком data scientist-а – надо начинать с их изучения. В принципе можно, если повезёт, делать простые анализы, используя R или scikit-learn вообще без понимания распределений, так же как можно написать программу на Java без понимания хэшфункций. Но рано или поздно это закончится слезами, ошибками, ложными результатами или — гораздо хуже – охами и выпученными глазами от старших статистиков.

Существуют сотни различных распределений, некоторые из которых на слух звучат как чудовища средневековых легенд, типа Muth или Lomax. Тем не менее, на практике более-менее часто используются около 15. Каковы они, и какие умные фразы о них требуется запомнить?

Итак, что такое распределение вероятности?


Всё время что-то происходит: кидаются кубики, идёт дождь, подъезжают автобусы. После того, как это что-то произошло, можно быть уверенным в некотором исходе: кубики выпали на 3 и 4, выпало 2.5 см дождя, автобус подъехал через 3 минуты. Но до этого момента мы можем говорить только о том, насколько каждый исход возможен. Распределения вероятности описывают то, как мы видим вероятность каждого исхода, что, зачастую, гораздо интереснее, чем знать только один, наиболее возможный, исход. Распределения бывают разных форм, но строго одного размера: сумма всех вероятностей в распределении — всегда 1.

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

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

image

Каждое распределение иллюстрируется примером её функции плотности распределения (ФПР). Эта статья только о тех распределениях, у которых исходы – одиночные числа. Поэтому, горизонтальная ось каждого графика – набор возможных чисел-исходов. Вертикальная – вероятность каждого исхода. Некоторые распределения дискретны — у них исходы должны быть целыми числами, типа 0 или 5. Таковые обозначаются редкими линиями, по одной на каждый исход, с высотой, соответствующей вероятности данного исхода. Некоторые – непрерывны, у них исходы могут принять любое численное значение, типа -1.32 или 0.005. Эти показаны плотными кривыми с областями под секциями кривой, которые дают вероятности. Сумма высот линий и областей под кривыми — всегда 1.

Распечатайте, отрежьте по пунктирной линии и носите с собой в кошельке. Это — ваш путеводитель в стране распределений и их родственников.

Бернулли и равномерное


Вы уже встретились с распределением Бернулли выше, с двумя исходами – орлом или решкой. Представьте его теперь как распределение над 0 и 1, 0 – орёл, 1 – решка. Как уже понятно, оба исхода равновероятны, и это отражено на диаграмме. ФПР Бернулли содержит две линии одинаковой высоты, представляющие 2 равновероятных исхода: 0 и 1 соответственно.

Распределение Бернулли может представлять и неравновероятные исходы, типа броска неправильной монетки. Тогда вероятность орла будет не 0.5, а какая-то другая величина p, а вероятность решки – 1-p. Как и многие другие распределения, это на самом деле целое семейство распределений, задаваемых определёнными параметрами, как p выше. Когда будете думать «Бернулли» – думайте про «бросок (возможно, неправильной) монетки».

Отсюда весьма небольшой шаг до того, чтобы представить распределение поверх нескольких равновероятных исходов: равномерное распределение, характеризуемое плоской ФПР. Представьте правильный игральный кубик. Его исходы 1-6 равновероятны. Его можно задать для любого количества исходов n, и даже в виде непрерывного распределения.

Думайте о равномерном распределении как о «правильном игральном кубике».

Биномиальное и гипергеометрическое


Биномиальное распределение можно представить как сумму исходов тех вещей, которые следуют распределению Бернулли.

Киньте честную монету два раза – сколько раз будет орёл? Это число, подчиняющееся биномиальному распределению. Его параметры – n, число испытаний, и p – вероятность «успеха» (в нашем случае – орла или 1). Каждый бросок – распределённый по Бернулли исход, или испытание. Используйте биномиальное распределение, когда считаете количество успехов в вещах типа броска монеты, где каждый бросок не зависит от других и имеет одинаковую вероятность успеха.

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

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

Когда где-то говорят о вытаскивании шаров из урн без возврата, практически всегда безопасно ввернуть «да, гипергеометрическое распределение», потому что в жизни я ещё не встречал никого, кто реально наполнял бы урны шарами и потом вытаскивал их и возвращал, или наоборот. У меня даже знакомых нет с урнами. Ещё чаще это распределение должно всплывать при выборе значимого подмножества некоторой генеральной совокупности в качестве выборки.

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

Практический пример — нам нужно выбрать от компании в 100 человек представителей для поездки на E3. Известно, что в ней 10 человек уже ездили в прошлом году (но никто не признаётся). Сколько минимум нужно взять, чтобы в группе с большой вероятностью оказался хотя бы один опытный товарищ? В данном случае генеральная совокупность — 100, выборка — 10, требования к выборке — хотя бы один, уже ездивший на E3.

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

Пуассон


Что насчёт количества заказчиков, звонящих по горячей линии в техподдержку каждую минуту? Это исход, чьё распределение на первый взгляд биномиальное, если считать каждую секунду как испытание Бернулли, в течение которой заказчик либо не позвонит (0), либо позвонит (1). Но электроснабжающие организации прекрасно знают: когда выключают электричество – за секунду могут позвонить двое или даже больше сотни людей. Представить это как 60000 миллисекундных испытаний тоже не поможет – испытаний больше, вероятность звонка в миллисекунду меньше, даже если не учитывать двух и более одновременно, но, технически – это всё ещё не испытание Бернулли. Тем не менее, срабатывает логическое рассуждение с переходом к бесконечности. Пусть n стремится к бесконечности, а p – к 0, и так, чтобы np было постоянным. Это как делить на всё более малые доли времени со всё менее малой вероятностью звонка. В пределе мы получим распределение Пуассона.

Так же, как и биномиальное, распределение Пуассона – это распределение количества: количества раз того, как что-то произойдёт. Оно параметризуется не вероятностью p и количеством испытаний n, но средней интенсивностью ?, что, в аналогии с биномиальным, просто постоянное значение np. Распределение Пуассона – то, о чём надо вспоминать, когда идёт речь о подсчёте событий за определённое время при постоянной заданной интенсивности.

Когда есть что-то, типа прихода пакетов на роутер или появления покупателей в магазине или что-то, ожидающее в очереди – думайте «Пуассон».

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

Геометрическое и отрицательное биномиальное


Из простых испытаний Бернулли появляется другое распределение. Сколько раз монетка выпадет решкой, прежде, чем выпасть орлом? Число решек подчиняется геометрическому распределению. Как и распределение Бернулли, оно параметризуется вероятностью успешного исхода, p. Оно не параметризуется числом n, количеством бросков-испытаний, потому что число неудачных испытаний как раз и есть исход.

Если биномиальное распределение это «сколько успехов», то геометрическое это «Сколько неудач до успеха?».

Отрицательное биномиальное распределение – простое обобщение предыдущего. Это количество неудач до того, как будет r, а не 1, успехов. Поэтому оно дополнительно параметризуется этим r. Иногда его описывают как число успехов до r неудач. Но, как говорит мой лайф-коуч: «Ты сам решаешь, что есть успех, а что — неудача», так что это тоже самое, если при этом не забыть, что вероятность p тоже должна правильной вероятностью успеха или неудачи соответственно.

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

Экспоненциальное и Вейбула


Снова о звонках в техподдержку: сколько пройдёт до следующего звонка? Распределение этого времени ожидания как будто бы геометрическое, потому что каждая секунда, пока никто не звонит – это как неуспех, до секунды, пока, наконец, звонок не произойдёт. Количество неудач –это как количество секунд, пока никто не звонил, и это практически время до следующего звонка, но «практически» нам недостаточно. Суть в том, что это время будет суммой целых секунд, и, таким образом, не получится посчитать ожидание внутри этой секунды до непосредственно звонка.

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

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

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

Думайте «Вейбул» когда разговор заходит о наработке-на-отказ.

Нормальное, логнормальное, Стьюдента и хи-квадрат


Нормальное, или гауссово, распределение, наверное, одно из важнейших. Его колоколообразная форма узнаётся сразу. Как и e, это особенно любопытная сущность, которая проявляется везде, даже из внешне самых простых источников. Возьмите набор значений, подчиняющихся одному распределению – любому! – и сложите их. Распределение их суммы подчиняется (приблизительно) нормальному распределению. Чем больше вещей суммируется – тем ближе их сумма соответствует нормальному распределению (подвох: распределение слагаемых должно быть предсказуемым, быть независимым, оно стремится только к нормальному). То, что это так, несмотря на исходное распределение – это потрясающе.

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

Ну сойдёт, наверное, для вечеринок, как он написал.

Это называется «центральная предельная теорема», и надо знать, что это, почему так названо и что означает, иначе моментально засмеют.

В её разрезе, нормальное связано со всеми распределениями. Хотя, в основном, его связывают с распределениями всяких сумм. Сумма испытаний Бернулли следует биномиальному распределению и, с увеличением количества испытаний, это биномиальное распределение становится всё ближе в нормальному распределению. Аналогично и его двоюродный брат – гипергеометрическое распределение. Распределение Пуассона – предельная форма биномиального – так же приближается к нормальному с увеличением параметра интенсивности.

Исходы, которые подчиняются логнормальному распределению, дают значения, логарифм которых нормально распределён. Или по-другому: экспонента нормально распределённого значения логнормально распределена. Если суммы – нормально распределены, то запомните так же, что произведения распределены логнормально.

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

Если толстохвостый анекдот недостаточно раскачал вашего соседа – переходите в довольно забавной байке про пиво. Больше 100 лет назад Гиннесс использовал статистику, чтобы улучшить свой стаут. Тогда Вильям Сили Госсет и изобрёл полностью новую статистическую теорию для улучшенного выращивания ячменя. Госсет убедил босса, что другие пивовары не поймут, как использовать его идеи, и получил разрешение на публикацию, но под псевдонимом «Стьюдент». Самое известное достижение Госсета – как раз это самое t-распределение, которое, можно сказать, названо в честь него.

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

Гамма и бета


В этом месте, если вы уже заговорили о чём-то хи-квадратном, разговор начинается всерьёз. Вы уже, возможно, говорите с настоящими статистиками, и, наверное, стоит уже откланиваться, поскольку могут всплыть вещи типа гамма-распределения. Это обобщение и экспоненциального, и хи-квадрат распределения. Как и экспоненциальное распределение, оно используется для сложных моделей времен ожидания. Например, гамма-распределение появляется, когда моделируется время до следующих n событий. Оно появляется в машинном обучении как «сопряжённое априорное распределение» к парочке других распределений.

Не вступайте в разговор об этих сопряжённых распределениях, но если всё-таки придётся, не забудьте сказать о бета-распределении, потому что оно сопряжённое априорное к большинству упомянутых здесь распределений. Data-scientist-ы уверены, что оно именно для этого и сделано. Упомяните об этом ненароком и идите к двери.

Начало мудрости


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

Шон Овен – директор Data Science в Cloudera, Лондон. До Клаудеры он основал Myrrix Ltd. (сейчас проект Oryx) для коммерционализации широкомасштабных рекомендательных систем в реальном времени на Hadoop. Он так же контрибьютор Apache Spark и соавтор O’Reilly Media’s Advanced Analytics with Spark
Поделиться с друзьями
-->

Комментарии (25)


  1. ls18
    18.06.2017 12:03
    +3

    Отличная статья. Как раз сейчас в университете проходили теорвер. Спасибо.


  1. BosonBeard
    18.06.2017 15:15
    +1

    Земной поклон! Как раз в очередной раз пытаюсь освоить статистику и анализ данных, очень в тему.


  1. Ryppka
    18.06.2017 16:41

    Спасибо за хороший перевод интересной статьи. Вопрос для обсуждения: мне кажется, что по русски нельзя сказать «количество раз», правильно будет «число раз». А Вам?


    1. kayan
      18.06.2017 21:48

      Да почему нельзя… В контексте там как: «количественное распределение» — почему? — потому что «количества раз». «Числа раз того, как что-то произойдёт» — ещё хуже.


      1. Alexeyslav
        19.06.2017 08:35

        Не проще тогда записать «количество событий»?


        1. kayan
          19.06.2017 09:00

          «Количество событий того, как что-то произойдёт»? :) Надо в контексте фразу смотреть, причём не в предложении, а в абзаце целиком. Это же, всё-таки, перевод, а не изложение своими словами мыслей автора.


      1. Ryppka
        20.06.2017 09:03
        +1

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


        1. kayan
          20.06.2017 12:33

          Мысль понял. Поправил на менее толкосбивающее «распределение количества». От количеств по контексту всё равно не получается уехать.


    1. funca
      18.06.2017 22:09

      а мне можно


  1. burzzo
    18.06.2017 17:18

    Как меня учил один проф. по выпуклой оптимизации, С.Бойд — «Не относитесь к этому слишком серьёзно» Можете забить на эти распределения и построить своё эмпирическое по имеющимся данным и всё равно придётсся сделать гипотезу про хвосты плотности распределения. p.s. Диаграмма с тем что data science — включает всё на свете — клоунада да и только.


  1. GeMir
    18.06.2017 17:33

    «Эта статья только о тех распределениях, у которых исходы – одиночные числа.» — я что-то пропустил или вы сейчас и нормальное, и все остальные непрерывные распределения, упоминаемые в статье, окрестили дискретными?


    1. GeMir
      18.06.2017 17:46

      Ок, вопрос снят, смутило слово «одиночные».

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


      1. lostpassword
        18.06.2017 19:00

        Он является только избранным data scientists.


      1. kayan
        18.06.2017 21:51

        Да, не многомерные имеется в виду (автор для новичков не стал умное слово говорить). Про пунктир единственное моё объяснение — Шон так шутит.


  1. Labunsky
    18.06.2017 18:39

    del


  1. Sorokinv
    18.06.2017 21:51

    Супердетализированная карта распределений вероятности потрясает :)


  1. Oskal174
    18.06.2017 21:52
    +1

    Автор, где ты был пару лет назад, когда мне нужно было это сдавать :) Спасибо!


  1. glincow
    18.06.2017 21:52
    +3

    Более подробная версия карты из статьи (пояснено, что скрывается за стрелочками):image


    1. SanekZhitnik
      19.06.2017 18:24
      +2

      Вот еще одна визуализация. По каждому распределению есть краткая информация в pdf.
      image


      1. kayan
        19.06.2017 18:25

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


  1. lxsmkv
    18.06.2017 21:57
    -1

    data scientist'y такая шпаргалка не (должна быть) нужна. Они дышат этими распределениями.


    1. funca
      18.06.2017 22:13
      +8

      стоя за компанию, когда математики их курят.


  1. BD9
    19.06.2017 08:47
    -3

    Не «функция плотности распределения (ФПР)», а «плотность функции распределения (ПФР)». Первично понятие «функция распределения».
    Про «хвосты распределения» в русскоязычной среде говорят, что они «тяжелее», а не «толще».

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

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


    1. kayan
      19.06.2017 08:51
      +3

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


    1. DarkGenius
      20.06.2017 11:49
      +1

      Тогда "теория вероятностЕЙ", если уж на то пошло.