Кроме того, искусственный интеллект замечательно проявляет себя в стратегических играх наподобие шахмат – в них мы в точности знаем, как описать все возможные ходы, ноне способны вывести формулу, которая подскажет, какой следующий ход будет наилучшим. В шахматах из-за количества вариантов ходов и сложности игрового процесса даже гроссмейстер не в состоянии сформулировать жесткие правила для предсказания того, какой ход окажется лучшим в той или иной ситуации. А самообучающийся алгоритм может сам с собой сыграть миллионы тренировочных партий – больше, чем сыграет за всю жизнь самый умный и упорный гроссмейстер, – чтобы выработать правила, которые будут приводить его к победе. И поскольку ИИ обучается без явных инструкций, иногда он находит очень необычные и оригинальные стратегии. Иной раз чрезмерно оригинальные.
Если вы не скажете ИИ, какие ходы допустимы, он может отыскать странные лазейки и злоупотребить ими, лишив игру смысла. Например, в 1997 году группа программистов создавала алгоритмы, которые удаленно играли в крестики-нолики друг против друга на бесконечно большом поле. Один из программистов, вместо того чтобы разработать основанную на правилах стратегию, позволил ИИ самостоятельно формировать подход к игре. Внезапно этот ИИ стал побеждать во всех матчах. Его стратегия заключалась в том, чтобы делать ход где-то очень-очень далеко.
Размер нового игрового поля оказывался настолько большим, что компьютер оппонента, пытаясь его у себя воспроизвести, исчерпывал ресурсы оперативной памяти и падал с ошибкой, так что ему засчитывалось техническое поражение[8]. У большинства программистов, работающих с ИИ, есть в запасе похожие истории – о том, как алгоритмы удивляли их тем, что находили неожиданные решения. Иногда такие решения гениальны, а иногда создают проблемы.
Самое основное, в чем нуждается ИИ, это конкретная цель и набор данных для обучения. Получив их, он начинает гонку, и неважно, какова цель: принять решение о выдаче кредита, как это делает специалист-человек, предсказать, приобретут ли покупатели определенный носок, добиться максимального счета в видеоигре или же заставить робота преодолеть наибольшее расстояние. В каждом случае ИИ методом проб и ошибок изобретает правила, которые позволят ему добиться цели.
Бывает, что правила, прекрасно помогающие ИИ находить решение, оказываются основаны на неверных предположениях. Например, некоторые из самых причудливых экспериментов я проделывала с продуктом компании Microsoft для распознавания образов, который подбирал теги и описание для загружаемого изображения. Как правило, этот алгоритм правильно распознает предметы: узнает облака, поезда метро или даже ребенка, выполняющего ловкие трюки на скейтборде. Но однажды мое внимание привлекло нечто странное в результатах его работы: ИИ ставил тег «овцы» картинкам, где определенно не было никаких овец. Я изучила проблему и выяснила, что алгоритм видел овец на сочно-зеленых полях вне зависимости от того, были они там на самом деле или нет. Почему же столь специфическая ошибка всплывала вновь и вновь? Возможно, во время обучения этому ИИ в основном показывали овец, находящихся на таких вот полях, и он не понял, что заголовок «овцы» относится к животным, а не к полям. Другими словами, искусственный интеллект смотрел не туда. И, конечно же, когда я показывала ему овец, которые не паслись на пышных пастбищах, он чаще всего ошибался. Овец в автомобилях он обычно помечал как собак или кошек. Овцы в жилых помещениях у него также становились собаками или кошками, то же самое происходило с ягнятами, которых кто-нибудь держал на руках. А овцы на привязи распознавались как собаки. Такие же проблемы у ИИ были с козами: если он видел козу, залезшую на дерево (они так иногда делают), то считал, что это жираф (другой похожий алгоритм называл коз птицами).