Защитник обвиняемого Алан Дершовиц99 приводил доводы, что даже если бы голословные утверждения о домашнем насилии оказались правдой, они не относятся к делу и, следовательно, недопустимы. Позднее он написал: «Нам необходимо было доказать, что среди тех, кто избивает своих партнеров, лишь ничтожно малое число, менее 1 из 2500, совершают убийство».
В действительности же обе стороны просили суд рассмотреть вероятность того, что Симпсон убил бывшую жену, принимая во внимание тот факт, что при жизни он ее избивал. Однако специалист в области статистики И. Гуд отметил, что для этого не существует верного доказательства, на которое можно было бы сослаться.
Вопрос на самом деле в следующем: какова вероятность того, что муж убил свою бывшую жену, если до убийства он ее бил и она была кем-то убита? Условная вероятность в таком случае очень далека от схемы 1 на 2500.
Чтобы разобраться почему, представим себе выборку из 100 тысяч избитых женщин. Ссылаясь на предоставленные Дершовицем цифры — 1 из 2500, допустим, что примерно сорок из этих женщин были убиты мужьями в этом году (поскольку 100 000 разделить на 2500 равно 40). Можно также предположить, что еще трое из них убиты кем-либо другим100 (эта оценка основана на статистике ФБР, касающейся количества женщин, убитых в 1992 году). Итак, из этих 43 жертв 40 были убиты теми, кто их избивал. Другими словами, в 93% случаев убийцей являлось лицо, избивавшее женщину.
Не путайте это число с вероятностью того, что это сделал Симпсон. Она зависит от множества других обстоятельств, от разных «за» и «против». Например, от заявления защиты о том, что полиция выдвинула Симпсону ложные обвинения, а также от заявления обвинения, что убийца и Симпсон носили одинаковую обувь, перчатки и имели почти одинаковый код ДНК.
Какова вероятность того, что что-нибудь из перечисленного изменит ваше мнение о вынесенном приговоре? Ноль.
24. Распутывание всемирной паутины
В те далекие времена, когда Google еще не существовало, поиск в сети был безнадежным занятием101. Сайты, предлагаемые старыми поисковыми машинами, часто не соответствовали запросу, а те, которые содержали нужную информацию, были либо глубоко запрятаны в списке результатов, либо вообще отсутствовали.
Алгоритмы на основе анализа ссылок решили проблему, проникнув в суть парадокса, подобного коанам дзен: в результате поиска в интернете должны были отображаться лучшие страницы. А что же, кузнечик102, делает страницу лучшей? Когда на нее ссылаются другие не менее хорошие страницы.
Звучит подобно рассуждениям про замкнутый круг.103 Так и есть. Именно поэтому все настолько сложно. Ухватившись за эту идею и превратив ее в преимущество, алгоритм анализа ссылок дает решение поиска в сети в стиле джиу-джитсу.
Этот подход построен на идеях, взятых из линейной алгебры104, изучения векторов и матриц. Если вы хотите выявить закономерности в огромном скоплении данных или выполнить гигантские вычисления с миллионами переменных, линейная алгебра предоставит для этого все необходимые инструменты105. С ее помощью был построен фундамент для алгоритма PageRank106, положенного в основу Google. Она также помогает ученым классифицировать человеческие лица107, провести анализ голосования в Верховном суде108, а также выиграть приз Netflix109 (вручаемый команде, сумевшей улучшить более чем на 10% систему Netflix, на основе которой составляются рекомендации для просмотра лучших фильмов).
Чтобы изучить линейную алгебру в действии, рассмотрим, как работает алгоритм PageRank. А чтобы выявить его сущность без лишней суеты, представим игрушечную паутину, состоящую всего из трех страниц, связанных между собой следующим образом:
Стрелки указывают, что страница X содержит ссылку на страницу Y, однако Y не отвечает ей взаимностью. Наоборот, Y ссылается на Z. Тем временем X и Z ссылаются друг на друга, сцепившись между собой цифровыми лапками.
Какие страницы самые важные в этой маленькой паутине? Вы можете подумать, что это невозможно определить из-за недостатка информации об их содержимом. Но такой способ мышления устарел. Беспокойство по поводу контента вылилось в неудобный способ ранжирования страниц. Компьютеры мало понимают в смысловом наполнении, а люди не справляются с тысячами новых страниц, которые каждый день появляются в сети.
Подход, придуманный Ларри Пейджем и Сергеем Брином, аспирантами университета и основателями Google, состоял в том, чтобы позволить страницам самим ранжироваться в определенном порядке, голосуя ссылками. В приведенном выше примере страницы X и Y ссылаются на Z, благодаря чему Z становится единственной страницей с двумя входящими ссылками. Следовательно, она и будет самой популярной страницей в данной среде. Однако если ссылки поступают со страниц сомнительного качества, они станут работать против себя. Популярность сама по себе ничего не значит. Главное — иметь ссылки с хороших страниц.
И здесь мы снова оказывается в замкнутом круге. Страница считается хорошей, если на нее ссылаются хорошие страницы, но кто изначально решает, какие из них хорошие?
Это решает сеть. Вот как все происходит. (Далее я буду пропускать некоторые подробности, изложенные в примечании 110.)
Алгоритм Google назначает для каждой страницы дробное число от 0 до 1. Это численное значение называется PageRank и измеряет «важность» страницы по отношению к другим, высчитывая относительное количество времени, которое гипотетический пользователь потратит на ее посещение. Хотя пользователь может выбирать более чем из одной исходящей ссылки, он выбирает ее случайно с равной вероятностью. При таком подходе страницы считаются более авторитетными, если они чаще посещаются.
А поскольку индексы PageRank определяются как пропорции, их сумма по всей сети должна составлять 1. Этот закон сохранения предполагает другой, возможно, более осязаемый способ визуализации PageRank. Представьте его как жидкое вещество, текущее по сети, количество которого уменьшается на плохих страницах и увеличивается на хороших. С помощью алгоритма мы пытаемся определить, как эта жидкость распределяется по интернету на протяжении длительного времени.
Ответ получим в результате многократно повторяющегося следующего процесса. Алгоритм начинается с некоего предположения, затем обновляет все значения PageRank, распределяя жидкость в равных частях по исходящим ссылкам, после этого она проходит несколько кругов, пока не установится определенное состояние, при котором страницы получат причитающуюся им долю.
Изначально алгоритм задает равные доли, что позволяет каждой странице получить одинаковое количество PageRank. В нашем примере три страницы, и каждая из них начинает движение по алгоритму со счетом 1/3.
Начальные значения PageRank
Затем счет обновляется, отображая реальное значение каждой страницы. Правило состоит в том, что каждая страница берет свой PageRank с последнего круга и равномерно распределяет его по всем страницам, на которые ссылается. Следовательно, обновленное значение страницы X после прохождения первого круга по-прежнему равно 1/3, поскольку именно столько PageRank она получает от Z, единственной страницы, которая на нее ссылается. При этом счет страницы Y уменьшается до 1/6, так как она получает только половину PageRank от X после предыдущего круга. Вторая половина переходит к странице Z, что делает ее победителем на данном этапе, поскольку она добавляет себе еще 1/6 от страницы X, а также 1/3 от Y, и всего получается 1/2. Таким образом, после первого круга мы имеем следующие значения PageRank:
Значения PageRank после одного обновления
В последующих кругах правило обновления остается прежним. Если обозначить через x, y, z текущий счет страниц X, Y и Z, то в результате обновления получим такой счет:
х' = z
y' = ½ x
z' = ½ x + y,
где штрихи говорят о том, что произошло обновление. Подобные многократно повторяющиеся вычисления удобно выполнять в электронной таблице (или вручную, если сеть маленькая, как в нашем случае).
После десяти повторений обнаружим, что от обновления к обновлению цифры практически не меняются. К этому моменту доля X составит 40,6% от всего PageRank, доля Y — 19,8%, а Z — 39,6%. Эти значения подозрительно близки к числам 40, 20 и 40%, что говорит о том, что алгоритм должен к ним сходиться.
Так и есть. Эти предельные значения алгоритм Google и определяет для сети как PageRank.
Предельные значения PageRank
Вывод для данной маленькой сети такой: страницы X и Z одинаково важны, несмотря на то что у Z в два раза больше входящих ссылок. Это и понятно: страница X равна Z по значимости, поскольку она получает от нее полное одобрение, однако взамен дает ей лишь половину своего одобрения. Вторая половина отправляется Y. Это также объясняет, почему Y достается только половина от долей X и Z.