Лучше я пока не буду пытаться перепрыгнуть википедию, а просто расскажу какие-нибудь анекдоты.
1. Например, о самом важном бытовом заблуждении, касающемся этих двух дисциплин.
Предположим, по какой-то причине вы решили сдать анализ крови на ужасное и редкое заболевание, которое мы для краткости назовем УРЗ (на всякий случай: ни я, ни мои родственники, тьфу-тьфу, ничем таким не болеем, два подряд упоминания в последней паре постов - случайное совпадение). Анализ на УРЗ обладает такими свойствами: если вы им и правда больны, то анализ покажет, что вы УРЗ-положительны. Если же вы здоровы, то анализ в 99 случаях из 100 покажет, что вы УРЗ-отрицательны, и в 1 случае из 100 - что вы УРЗ-положительны.
Долго ли коротко, но вот чёрная птица приносит известие: анализ показал, что вы УРЗ-положительны.
Вопрос: нужно ли писать завещание, впадать в депрессию и думать о женщинах (вариант: мужчинах), которых вы никогда не поцелуете?
Стоит ли благородно уйти из жизни, пока вы ещё ею полны, чтобы не обременять родных?
Вы, наверное, уже догадались, что с этим стоит повременить (иначе с фига ли я это вообще писал), и хотите послушать, в чём подвох.
Да просто вы, скорее всего, не больны. И уж точно не с вероятностью 99%. Да, такая цифра была в условиях, и я от неё не отказываюсь, но это не та цифра.
Вот самый простой способ понять, почему. Представьте, что вместе с вами тест прошли 10 миллионов жителей вашего города (вы единственный и уникальный, но всё же представьте). Из них, допустим, 20 тысяч больны УРЗ (насчет цифры сверился с Яндексом). Какие результаты получили жители вашего города?
- 20 тысяч больных получили результат УРЗ-плюс.
- 10 миллионов * 99% = 9 миллионов 900 тысяч здоровых получили результат УРЗ-минус.
- 10 миллионов * 1% = 100 тысяч здоровых получили результат УРЗ-плюс.
Смотрите, как интересно получается. Из 120 тысяч человек, получивших результат "плюс", только 20 тысяч на самом деле больны. Так что вероятность того, что вы больны (при условии, что вы типичный житель своего города, и получили Чорную Метку), составляет около 16%. На самом деле реальная цифра ещё ниже, так как априорная вероятность для разных людей разная, а вы, скорее всего, не инъекционный наркоман и не подрабатываете проституцией. Но это уже детали. 16% - это тоже много, это чертовски неприятно, но всё же далекооо не 99%.
Хотя такое рассуждение должно быть знакомо любому, кто осилил соответствующий университетский (а то и матшкольный) курс, а по-хорошему вообще любому человеку, в рабочие обязанности которого входит подумать (входит подумать? не очень это по-русски получилось), так вот, рассуждение это тем не менее чудовищно неинтуитивно, противоречит всем нашим эмоциям, и на практике к нему прибегают крайне редко.
Просто представьте себе себя в подобной ситуации. Никто, я повторяю, никто, включая профессоров кафедры матстатистики с тридцатилетним стажем, не сможет избежать чёрных мыслей. Априори-шмаприори. Тест положительный, всё, абстрактное мышление выносит напрочь, наползает мутный морок, логика #давайдосвидания, интересно уже только #естьличтотопотусторону.
2. А вот не очень связанная с предыдущим пассажем закуска для программистов и им сочувствующих, считающих, что "в жизни" теорвер тривиален, т.к. всегда же есть, в конце концов, и численные методы. Почитайте этот код на питоне, а то и запустите. Что вычисляет функция M? Какой ряд печатает функция PrintM? Почему в комментариях так много слов fuck?
import random
def M(x, N):
ret = 0
for i in range(0, N):
ret += x()
return ret/N
def PrintM(x):
print M(x, 10)
print M(x, 100)
print M(x, 1000)
print M(x, 10000)
print M(x, 100000)
print M(x, 1000000)
r = random.Random()
PrintM(r.random) # ok, it's closer and closer to 0.5
def an_innocently_looking_function():
return 1/r.random()
PrintM(an_innocently_looking_function) # da fuck?...
PrintM(an_innocently_looking_function) # fuck.
PrintM(an_innocently_looking_function) # oh fuck fuck fuck!
И на такое распределение на самом деле можно напороться в дикой природе, хоть и редко. Я ничуть не шучу,
Comments