Темная наука
Сегодня никаких компьютеров, но кое-что интересное и важное – математика. (И, веселого празднования Дня Канады всем канадцам!)
"Car Talk" – это популярная еженедельная радиопередача по Национальному Открытому радио, которая идет уже несколько десятков лет и в которой братья из Бостона Том и Рэй острят по поводу проблем автомобилей и человеческих взаимоотношений. Одной из главных особенностей этих программ является рубрика «головоломка». Вот головоломка из передачи, которая выходила в эфир пару недель назад, в полном виде:
Тим и Джетро счастливо работают на заправочной станции в небольшом городке. И поскольку Farmer's Almanac[1] предсказал, что это будет самая холодная зима со времен ледникового периода, они были безумно рады тому, что могут находиться внутри помещения, пока клиенты заправляют свои автомобили самостоятельно.
Это была настолько современная заправочная станция, что в ней были камеры для каждой заправочной колонки и монитор, который показывал заднюю часть любого автомобиля, подъезжающего к колонке.
Когда же тоска от такой работы окончательно их одолела, Тим и Джетро начали играть в маленькую игру. Игра заключалась в попытке угадать, какой клиент подъедет к колонке с такой стороны, чтобы дверца топливного бака находилась с противоположной стороны от колонки.
Теперь они не могли видеть автомобили, подъезжающие к заправочной станции, поскольку видеокамеры предназначены для наблюдения только задней частью подъезжающих автомобилей. Так что у них не было возможности посмотреть боковую сторону автомобиля, чтобы увидеть расположения крышки топливного бака. Они могли видеть автомобиль только после того, как он подъехал к колонке для заправки.
Они делали ставки перед тем, как водитель глушил двигатель и выходил из машины и до того, как он хлопал себя по лбу из-за того, что подъехал с неправильной стороны.
Джетро был прав в 99 процентах случаев. Тим был прав в 50 процентах случаев, поскольку он просто гадал.
Что знал Джетро такого, что позволяло ему понять, когда водитель подъезжал к заправочной колонке с неправильной стороны?
Когда я услышал этот вопрос, ответ на него для меня был очевидным. Представляете мое удивление, когда ответ, который был для меня очевидным, оказался не тем ответом, который дал Рэй в прошлую субботу! Ответ Рэя заключался в том, что практически во всех автомобилях выхлопная труба находится с противоположной стороны от дверцы топливного бака. Джетро знал, что если у подъехавшего автомобиля выхлопная труба располагалась с той же стороны, что и заправочная колонка, значит, водитель подъехал с неправильной стороны. Джетро был точен в 99% случаев, поскольку практически все автомобили, которые вы встретите на наших улицах, отвечают этому шаблону; только лишь у небольшого количества автомобилей выхлопная труба располагается по середине, выхлопных трубы две, дверца топливного бака располагается по середине, располагается с той же стороны, что и выхлопная труба или имеет другую подобную аномалию.
Я не собираюсь заходить сегодня так далеко, как это иногда делает Томми и кричать ФАЛЬШИИИИИВКА! Я верю, что это на 99% надежный эвристический способ определения стороны расположения дверцы топливного бака и даже если Джетро его знал, то он мог спокойно победить Тима. (Замечу, что мы не пытаемся рассуждать о том, на основании чего делал предположения Тим, но можем предположить, что его догадки основывались на некотором процессе сродни подбрасыванию монетки). Очевидно, что когда Джетро и Тим играли в эту игру, то где-то в половине случаев получалась ничья (поскольку Тим случайно угадывал правильно), но в другой половине случаев в основном выигрывал Джетро. И я с этим не спорю.
Однако существует чрезвычайно важный аспект анализа, который в данном случае проигнорирован. Мы знаем по опыту, что процент водителей, которые подъезжают с неправильной стороны колонки, достаточно мал. Те редкие случаи, когда я подъезжал с неправильной стороны колонки, были связаны с тем, что это был арендованный или чужой автомобиль (а во многих автомобилях нет стрелки на панели приборов, которая показывает, с какой стороны располагается дверца топливного бака). Основное большинство водителей подъезжают с правильной стороны колонки. Этот дополнительный факт, пропущенный в исходной формулировке задачи, но разумно предполагаемый, существенно изменяет анализ.
Давайте назовем автомобиль, подъехавший с неправильной стороны колонки «положительным» (по причинам, который будут понятны позднее) и автомобиль, подъехавший с правильной стороны колонки «отрицательным». Джетро и Тим делают предположения о том, является подъехавший автомобиль положительным или отрицательным. Давайте назовем автомобиль, положение дверцы топливного бака которого может четко предсказать Джетро «нормальным» автомобилем, а которого не может – «не нормальным».
Давайте предположим, что процент «положительных» водителей составляет 1%. Обратите внимание, что этот процент такой же, как и вероятность того, что эвристическое предсказание Джетро окажется неверным. Я сделал такое предположение намеренно, но на самом деле имеет значение только то, что оба эти значения являются маленькими. Позднее мы выясним, что произойдет при изменении этого значения. Но сейчас, давайте просто предположим, что процент тупоголовых водителей примерно равен вероятности ошибки Джетро.
Но при наличии этих разумных предположений, Джетро вообще больше не нужна никакая эта хитрая эвристика! Предположим мы заменим Джетро на Боба, который всегда ставит на отрицательное независимо от положения выхлопной трубы. Эта стратегия будет работать в 99% случаев, поскольку в 99% случаев водители подъезжают с правильной стороны!
При наличии этого разумного предположения, решение для меня было сразу же совершенно очевидным: всегда ставить на отрицательное. Вы сможете одержать победу над стратегией Тима, основанной на «подбрасывании монеты» путем простого наблюдения, что отрицательные значения значительно превосходят положительные; поэтому разумно всегда ставить на отрицательное.
Предположим Боб и Тим сыграют в эту игру миллион раз (в Бостоне долгие зимы) и Боб будет использовать стратегию «всегда ставить на отрицательное», что, как мы знаем, будет работать в 99% случаев исключительно основываясь на распределении между положительными и отрицательными результатами. В среднем будет 990000 отрицательных и 10000 положительных результатов. Боб будет предсказывать отрицательный результат всегда, а Тим – в 50%. Итак, для этих 990000 случаев Боб выиграет 495000 раз, столько же раз будет ничья и не проиграет ни разу. Боб никогда не будет предсказывать положительный результат, а Тим будет предсказывать этот результат в 50% случаев. Так что для 10000 случаев Боб никогда не выиграет, в 5000 случаях будет ничья, и в 5000 случаях он проиграет. Из миллиона игр, Боб выиграет 495000 раз, ничья будет 500000 раз и проиграет 5000 раз. Как мы и ожидали, Боб будет выигрывать в 99% игр, в которых не произошла ничья.
Теперь давайте предположим, что Джетро и Тим играют в эту игру миллион раз и Джетро использует свою хитрую стратегию, основанную на положении выхлопной трубы, которая оказывается точной в 99% случаев, но не на основе положительных или отрицательных результатов, а на основе определения правильных автомобилей. Анализ будет аналогичным: существует 990000 нормальных и 10000 необычных автомобилей. Джетро будет предсказывать нормальные автомобили в 100% случаев, и необычные автомобили в 0% случаев, и т.д. и т.п. и выиграет 495000 раз, ничья будет 500000 раз и проиграет 5000 раз, точно так же, как и Боб.
Это раскрывает мою точку зрения о том, что Джетро совершенно не нужна его хитрая тактика, чтобы победить Тима. И Боб, и Джетро выиграют у Тима в среднем одинаковое число раз, не зависимо от применяемой стратегии. Но мы можем рассмотреть стратегию Джетро глубже.
Из одного миллиона попыток, в 99% случаев будут нормальные автомобили. 99% из них будут отрицательными, т.е. средние цифры будут такими:
980100 нормальных отрицательных – Джетро предсказывает, что будет отрицательное, правильно
9900 нормальных положительных – Джетро предсказывает, что будут положительное, правильно
9900 необычных отрицательных – Джетро предсказывает, что будет положительное, неправильно
100 необычных положительных – Джетро предсказывает, что будут отрицательные, неправильно
Бог ты мой! Джетро предсказывает положительный результат в 19800 случаях и ошибается 50%, даже со своей 99% эвристической точностью! Рассматривая только эти случаи, когда Джетро говорит о положительном результате, он угадывает не чаще, чем Тим, со своим алгоритмом на основе подбрасывания монеты.
А теперь давайте представим, что мы имеем дело не с мужиками, которые пытаются определить тупоголовых водителей, а имеем дело с тремя врачами, каждый из которых пытается определить не болен ли пациент болезнью Таппета. Предположим, что 99% жителей обладает иммунитетом к этой болезни: они не больны. У доктора Джетро есть тест болезни Таппета, который точен в 99% случаев. (Люди, для которых этот тест работает, являются «нормальными», т.е. 99% людей – нормальные). Доктор Боб вообще не заморачивается с анализами, он просто каждый раз говорит «вы здоровы». Доктор Тим – бросает монетку.
Предположим, вы прошли всех трех докторов и каждый из них сказал «вы не больны». Помните, что доктора Боб и Джетро оба точны в 99% случаев, но доктор Тим точен только в 50% случаев. Вы точно ничего не узнали у доктора Боба, который даже не взглянул на вас; тот факт, что его диагноз точен в 99% случаев ничего не дает вам. И вы абсолютно точно ничего не узнали у доктора Тима; он подбросил монетку прямо перед вашим носом. Но из 980200 пациентов доктора Джетро, которым он сказал «не больны», он оказался прав в 980100 случаях, а в 100 случаях – ошибся. Когда доктор Джетро говорит о том, что пациент здоров, то его диагноз точен в 99.99% случаев.
С другой стороны, вероятность того, что доктора Боб или Тим ошиблись с отрицательным диагнозом, в обоих случаях составляет 1 шанс из 100. Вероятность того, что доктор Джетро ошибся в отрицательном диагнозе составляет 1 из 10000, т.е. в сто раз менее вероятно. Доктор Джеттро использует преимущество маленькой вероятности положительного диагноза и точность тестов, в то время как другие врачи этого не делают. Отрицательный диагноз доктора Джетро намного, намного надежнее, чем диагноз двух других врачей.
А что если результат положительный? (Очевидно, что доктор Боб никогда не поставит такого диагноза, так что его в этом случае мы можем игнорировать). Так чьему мнению стоит доверять: мнению доктора Джетро или доктора Тима? Если доктор Тим сказал, что диагноз подтвердился, тогда вероятность того, что он ошибается составляет 99 шансов из 100. Если же доктор Джетро сказал о том, что диагноз подтвердился, то вероятность того, что он ошибся составляет 50 шансов из 100. Мнение доктора Джетро все еще более надежно, но это для большинства людей совершенно неинтуитивно, что тест, точный в 99% случаев обладает 50% вероятностью ошибки при отрицательном результат теста.
И, конечно же, чем более редкой является болезнь, тем больше вероятность того, что отрицательный диагноз является корректным; у большинства людей нет этой болезни, а значит, отрицательный результат становится более вероятным. Но обратная сторона заключается в том, что чем менее распространенной является болезнь, тем выше вероятность того, что положительный диагноз будет ошибочным: из-за ошибки во время тестирования.
Представьте, что только один водитель из тысячи будет подъезжать с неправильной стороны заправочной колонки. В этом случае на 99% точный эвристический алгоритм Джетро станет хуже стратегии Боба «всегда ставь на отрицательное», поскольку у алгоритма Джетро появится слишком много «ложных срабатываний».
Это является серьезной проблемой в медицине! Худшим ошибочным результатом является ложное отрицание, когда тест говорит, что ты здоров, когда ты на самом деле болен. Вот почему стратегия доктора Боба совершенно недопустима; все его неправильные результаты являются ложными отрицаниями. Однако математика нам показала, что при наличии достаточно точных тестов у доктора Джетро, для маловероятных случаев, ложные отрицательные результаты будут достаточно редкими.
Но и ложные положительные результаты приводят к ненужному, потенциально вредному и дорогому лечению, не говоря уже о лишнем беспокойстве. Математика в этой ситуации говорит о том, что вероятность ложного положительного результата невероятно высока, когда вероятность ошибки и вероятность заболевания являются соизмеримыми величинами. Тесты редких заболеваний должны быть невероятно точными для снижения вероятности ложного положительного результата. Вероятность ошибки должна быть на порядок ниже вероятности возникновения заболевания.
Этот тип вероятностного анализа основывается на теореме Байеса и обладает множеством невероятных следствий, гораздо более серьезных по сравнению с рассмотренными здесь примерами. Эти следствия применяются в законодательстве, алгоритмах определения нежелательной почты, они применяются повсюду.
Если у Тома и Рэя будут комментарии по поводу критики их загадки, я с удовольствием их выслушаю.
[1] Farmer's Almanac - это ежегодное периодическое издание, которое публикуется с 1818 года и знаменито оно , помимо всего прочего публикацией прогноза погоды на длительный период времени. Подробнее см. https://en.wikipedia.org/wiki/Farmers%27\_Almanac - Примеч. перев.