Проблема состоит в том, что по мере обучения и развития машины программист постепенно перестает понимать, по каким именно чертам она отличает бананы от кошек. Глядя на необработанный программный код, очень трудно восстановить принципы работы алгоритма. Есть миллионы разных вопросов об изображении, которые алгоритм может задать, и понять, как и почему выбираются именно эти, а не другие вопросы, бывает непросто. Пытаясь понять, как работает алгоритм, группа из Google придумала один хитрый прием: перевернуть программу с ног на голову. Алгоритму дали случайное пиксельное изображение и предложили усилить или выделить те элементы, которые, по его мнению, привели бы к распознаванию идентифицируемых черт. Исследователи надеялись, что результат позволит понять, как работает алгоритм. Такой перевернутый алгоритм назвали DeepDream[59]
.Изображения, которые производит DeepDream, кажутся мне, может быть, самой важной формой ИИ-искусства из всех, которые я видел, занимаясь этой темой. Здесь речь не идет о попытках создать новую картину Рембрандта или состязаться с современными художниками на выставке Арт-Базель; эти изображения позволяют нам отчасти разобраться, как алгоритмы распознавания визуальных образов видят мир. Они, возможно, не обладают большой эстетической ценностью, но, на мой взгляд, они выражают главную задачу искусства – попытку увидеть мир чужими глазами и понять мировоззрение другого.
Алгоритм DeepDream работает по тому же принципу, что и сознание человека, который, глядя на изображение, внезапно видит на гренке человеческое лицо, а в облаках – формы животных, хотя на самом деле ничего такого там нет. Мозг человека в ходе эволюции стал чрезвычайно восприимчив к образам животных, поскольку это было необходимо для выживания. Но это значит, что иногда мы видим животных там, где их нет. Алгоритмы распознавания визуальных образов работают похоже. Они выискивают в изображении структуры и интерпретируют их. Находить такие структуры они научились в сжатом процессе эволюции, натренировавшись на тысячах изображений; их выживание зависит от правильной интерпретации таких структур. По сути дела, машинное обучение представляет собой форму цифровой эволюции. Что же видят алгоритмы в цифровом кустарнике?
Результаты, полученные в Google, были весьма поразительными. Буквально ниоткуда начали появляться морские звезды и муравьи. По-видимому, алгоритм обладал способностью не только распознавать изображения, но и генерировать их. Но эта работа была не просто забавной игрой. Она дала интереснейшую информацию о том, как обучался алгоритм. Например, на изображениях гантелей всегда присутствовали руки, держащие гантели. Очевидно, алгоритм узнал о гантелях из изображений тренирующихся людей. Поэтому он не понимал, что этот предмет – не часть человеческого тела и может существовать отдельно от рук.
Вместо того чтобы показывать алгоритму случайные наборы пикселей, можно было дать ему настоящие изображения и предложить выделить элементы, которые он в них находит, или сыграть в игру, в которую когда-то играли все мы, глядя на облака: что можно увидеть в их пухлых формах? Алгоритму удавалось выделить черты, которые казались похожими на собаку, на рыбу или, возможно, на каких-то химер. Роман, по которому был снят культовый фильм «Бегущий по лезвию», назывался «Снятся ли андроидам электроовцы?»[60]
. При помощи таких алгоритмов мы наконец можем ответить на этот вопрос! В одном из изображений, созданных алгоритмом, в небе действительно начали появляться овцы.В будущем принятие все большего и большего числа решений будет переходить из рук человека в руки алгоритмов, которые мы создаем. Беда в том, что появляющиеся алгоритмы машинного обучения вырабатывают деревья решений, которые человеку чрезвычайно трудно анализировать. В этом заключается одно из ограничений программирования нового типа. В конечном счете мы не знаем точно, почему алгоритм принимает именно такое, а не другое решение. Как мы можем быть уверены, что речь идет о чрезвычайно проницательной идее, а не об ошибке? Комментаторы игры в го не были уверены, к какой категории отнести 37-й ход AlphaGo во второй партии, пока, наконец, не увидели, что он обеспечил победу программы. Но все чаще такие алгоритмы не просто играют в игры.
Они принимают решения, касающиеся нашей жизни. Поэтому по мере наступления все более автоматизированного будущего любые средства, помогающие нам понять, как и почему алгоритмы приходят к своим решениям, будут чрезвычайно важны.