Верховный алгоритм - Педро Домингос
Шрифт:
Интервал:
Закладка:
Лебедь кусает робота
«Как бы ни был умен алгоритм, всегда есть то, что он не может узнать». Это утверждение в разных формулировках — самое частое возражение против машинного обучения за пределами науки об искусственном интеллекте и когнитивистики. Нассим Талеб30 изо всех сил напирал на него в своей книге The Black Swan: The Impact of the Highly Improbable31. Некоторые события просто непредсказуемы: если человек видел только белых лебедей, он будет считать, что вероятность когда-нибудь встретить черного равна нулю. Финансовый крах 2008 года оказался как раз таким «черным лебедем».
Действительно, некоторые вещи можно предсказать, а некоторые нельзя, и отличать одно от другого — первейшая задача алгоритма машинного обучения. Однако цель Верховного алгоритма — узнать все, что можно узнать, и этих знаний намного больше, чем может себе представить Талеб и не только он. Спад жилищного рынка совсем не был черным лебедем: его многократно предсказывали. Большинство банковских моделей не смогли его предвидеть исключительно из-за их довольно очевидных ограничений, а не в силу ограниченности машинного обучения как такового. Обучающиеся алгоритмы вполне способны точно предсказать редкие, никогда до этого не происходившие события: можно даже сказать, что в этом весь их смысл. Какова вероятность существования черного лебедя, если его никогда не видели? А как насчет доли известных науке видов, которые, как оказалось, имеют черных представителей? Это очень грубый пример — в этой книге мы увидим гораздо более глубокие.
Еще одно схожее и часто повторяемое возражение: «Данные не могут заменить человеческой интуиции». На самом деле это человеческая интуиция не может заменить данных. К интуиции мы прибегаем, когда не знаем фактов, а поскольку фактов часто не хватает, интуицией люди очень дорожат. Но если перед вами доказательства, разве вы станете их отрицать? Статистический анализ побеждает искателей талантов в бейсболе (это замечательно описано в книге Майкла Льюиса MoneyBall32), он превосходит знатоков в дегустации вин, и каждый день мы видим все новые примеры его способностей. Вследствие наплыва данных граница между доказательствами и интуицией очень быстро смещается, и, как при любой революции, въевшиеся привычки надо преодолеть. Если я эксперт по теме X в компании Y, мне, конечно не понравится, когда меня обойдет какой-то парень с данными. Есть профессиональная поговорка: «Слушай своих клиентов, а не HiPPO33». HiPPO — это «мнение самого высокооплачиваемого человека». Если вы хотите быть авторитетом и завтра, пользуйтесь данными, а не боритесь с ними.
«Ладно, — скажет кто-то. — Машинное обучение может находить статистические закономерности в данных, но оно никогда не откроет ничего серьезного, например законов Ньютона». Возможно, пока не откроет, но ручаюсь, в будущем все изменится. Если не брать истории про падающие яблоки, глубокие научные истины найти совсем не легко. Наука в своем развитии проходит через три этапа, которые можно назвать фазами Браге, Кеплера и Ньютона. В фазе Браге мы собираем много данных, как Тихо Браге, который ночь за ночью, год за годом кропотливо записывал положение планет. В фазе Кеплера мы подбираем к данным эмпирические законы: Кеплер это делал с движением планет. В фазе Ньютона мы открываем глубокие истины. Наука в значительной степени состоит из работы, подобной труду Браге и Кеплера, а ньютоновские проблески — редкость. Сегодня большие данные делают работу миллиардов Браге, а машинное обучение трудится, как миллионы Кеплеров. Если — будем надеяться — человечество еще ждут великие озарения, их с равной вероятностью могут породить и обучающиеся алгоритмы, и еще более занятые ученые будущего, и совместные усилия ученых и алгоритмов. (Конечно, Нобелевскую премию получат ученые, независимо от того, предложили они ключевые идеи или просто нажали на кнопку. У алгоритмов машинного обучения нет никаких амбиций.) В этой книге мы увидим, на что могут быть похожи эти алгоритмы, и порассуждаем о том, что они могут открыть — например, лекарство от рака.
Верховный алгоритм — лиса или еж?
Нам надо рассмотреть еще одно потенциальное возражение против Верховного алгоритма. Наверное, самое серьезное. Его выдвигают не инженеры знаний и не рассерженные эксперты, а сами практики машинного обучения. На секунду поставив себя на их место, я мог бы сказать: «Послушайте, Верховный алгоритм совершенно не похож на мою повседневную работу! Я перепробовал сотни алгоритмов для каждой проблемы, и для разных задач лучше подходят разные алгоритмы. Разве может один заменить все это многообразие?»
На это я отвечу: вы правы. Но разве не лучше вместо сотен вариантов многих алгоритмов пробовать сотни вариантов одного-единственного? Если выяснить, что в каждом алгоритме важно, а что нет, найти у важных элементов общее и посмотреть, как они дополняют друг друга, можно сложить из них Верховный алгоритм. Именно этим мы и займемся на страницах этой книги или хотя бы попытаемся как можно ближе к этому подойти. Наверное, у вас, дорогой читатель, по мере чтения тоже возникнут какие-то идеи на этот счет.
Насколько сложен будет Верховный алгоритм? Тысячи строк кода? Миллионы? Мы пока не знаем, но в машинном обучении бывало, что простые алгоритмы чудесным образом побеждали очень замысловатые. В известном эпизоде книги The Sciences of the Artificial34 пионер искусственного интеллекта и нобелевский лауреат Герберт Саймон просит представить себе муравья, который упорно бежит по пляжу к себе домой. Путь муравьишки сложен не потому, что сложен он сам, а потому что вокруг полно маленьких дюн, на которые надо взбираться, и гальки, которую приходится обегать. Попытки смоделировать муравья, запрограммировав все возможные пути, будут обречены на провал. Аналогично самое сложное в машинном обучении — это данные. Все, что должен сделать Верховный алгоритм, — усвоить их, поэтому не надо удивляться, если сам он окажется несложным. Человеческая рука проста: четыре пальца вместе плюс отведенный в сторону большой. И несмотря на это, рука может делать и использовать бесконечное разнообразие инструментов. Верховный алгоритм по отношению к алгоритмам — то же, что рука по отношению к карандашам, мечам, отверткам и вилкам.
Как заметил Исайя Берлин35, некоторые мыслители подобны лисам и знают много разного, а некоторые — ежам, которые знают что-то одно, но важное. То же самое с обучающимися алгоритмами. Я надеюсь, что Верховный алгоритм окажется ежом, но, даже если это лиса, ее все равно надо поскорее поймать. Самая большая проблема сегодняшних обучающихся алгоритмов не в том, что их много, а в том, что они, хоть и полезны, не делают всего, что мы от них хотим. И прежде чем начать открывать глубокие истины при помощи машинного обучения, надо как следует разобраться в самом машинном обучении.
Что на кону?
Предположим, человеку поставили диагноз «рак» и традиционные методы лечения — хирургия, химио- и лучевая терапия — не принесли желаемого эффекта. Дальнейший ход лечения станет для него вопросом жизни и смерти. Первый шаг — это секвенировать геном опухоли. Есть компании, например Foundation Medicine в Кембридже, которые этим занимаются: отправьте им образец опухоли, и они пришлют вам список мутаций в ее геноме, достоверно связанных с раком. Без этого не обойтись, потому что каждая раковая опухоль индивидуальна и нет лекарства, которое поможет во всех случаях. Распространяясь по организму человека, рак мутирует, и вследствие естественного отбора, скорее всего, будут выживать и размножаться клетки, наиболее стойкие к назначенным лекарствам. Возможно, нужный препарат помогает только пяти процентам пациентов, или необходимо сочетание лекарств, которое пока вообще не применяли. Может быть, придется разработать совершенно новое лекарство конкретно для данного случая или комплекс препаратов, чтобы подавить способность опухоли к адаптации. С другой стороны, у лекарств могут иметься побочные эффекты, смертельно опасные для данного пациента, но безвредные для большинства других людей. Ни один врач не может уследить за всей информацией, необходимой для выработки оптимальной терапии с учетом истории болезни и генома опухоли. Это идеальная работа для машинного обучения, и тем не менее на сегодняшний день обучающиеся алгоритмы не могут с ней справиться. У каждого из них есть какие-то из необходимых способностей, но не хватает других. У Верховного алгоритма будет все. Если применить его к большому объему данных о пациентах и лекарствах, а также информации, почерпнутой из литературы по биологии и медицине, мы сможем победить рак.
Универсальный алгоритм машинного обучения остро необходим во многих других областях и ситуациях — от невероятно важных до самых обыденных. Представьте себе, например, идеальную рекомендующую систему, которая посоветует именно те книги, фильмы и гаджеты, которые вы сами бы выбрали, будь у вас время проверить все варианты. Алгоритм Amazon очень далек от идеала. Отчасти дело в том, что у него просто недостаточно данных: в целом он знает только, какие предметы вы раньше покупали на этом сайте. Но если разойтись и предоставить ему полный доступ к потоку сознания человека начиная с рождения, он не будет знать, что с этим делать. Как преобразовать в связную картину мириады решений, калейдоскоп жизни? Как понять, кто этот человек и чего он хочет? Это выходит далеко за пределы кругозора сегодняшних обучающихся алгоритмов, но, если дать все эти данные Верховному алгоритму, он поймет вас примерно так же, как лучший друг.