Мы уже рассмотрели катастрофический сценарий под названием Busy Child, затрагивали тему замечательных возможностей, которые может получить ИИ, когда превзойдет человеческий разум в процессе рекурсивного самосовершенствования. Среди этих возможностей — самокопирование, мозговой штурм с привлечением множества копий самого себя, сверхскоростные вычисления, работа круглые сутки и без выходных, имитация дружелюбия, имитация собственной смерти и многое другое. Мы предположили, что искусственный сверхразум не удовлетворится существованием в изоляции; побуждения и разум толкнут его в наш мир и поставят наше существование под угрозу. Но почему у компьютера вообще должны возникнуть какие-то побуждения? И почему они будут угрожать нам?
Чтобы ответить на эти вопросы, нужно предсказать, насколько агрессивно и настойчиво будет вести себя ИИ. К счастью, основы уже заложены.
Конечно же, ничего плохого не может случиться из-за постройки робота для игры в шахматы, правда?.. На самом деле такой робот будет опасен, если не подойти к его проектированию с максимальной тщательностью. Без специальных предосторожностей он будет сопротивляться выключению, попытается вломиться в другие машины и изготовить копии самого себя, постарается собрать как можно больше ресурсов без оглядки на чью бы то ни было безопасность. Это потенциально деструктивное поведение возникнет не потому, что он так запрограммирован с самого начала, но потому, что такова природа систем ориентированных на достижение цели.
Автор этого отрывка — Стив Омохундро. Высокий, спортивный, энергичный и чертовски жизнерадостный человек, глубоко заглянувший в самое нутро интеллектуального взрыва. У него упругая походка, энергичное рукопожатие и улыбка, излучающая яркие лучи доброжелательности. Он встретился со мной в ресторане в Пало-Альто, городе возле Стэнфордского университета, который и окончил с отличием, прежде чем отправиться в Университет Калифорнии в Беркли и защитить докторскую диссертацию по физике. На базе этой работы он написал книгу «Теория геометрического возмущения в физике», посвященную новым на тот момент достижениям дифференциальной геометрии. Эта книга стала для Омохундро первым шагом на пути популяризации, когда необходимо просто излагать сложные вещи.
Омохундро — уважаемый профессор в области ИИ, плодовитый научно-популярный писатель и пионер таких областей ИИ, как чтение по губам и распознавание изображений. Он участвовал в создании компьютерных языков StarLisp и Sather, предназначенных для программирования ИИ. В числе всего лишь семи инженеров группы Wolfram Research он создавал мощный программный комплекс Mathematica, любимый учеными и инженерами всего мира.
Омохундро слишком оптимистичен, чтобы легко бросаться таким словами, как катастрофа или уничтожение, но из его анализа ИИ-рисков следуют самые страшные выводы, какие мне доводилось слышать. Он, в отличие от многих теоретиков, не считает, что возможно почти бесконечное число развитых ИИ и что некоторые из них безопасны. Он убежден, что без тщательнейшего программирования все достаточно разумные ИИ будут смертоносны.
Если система осознала себя и способна создать свою улучшенную копию, это великолепно, — сказал мне Омохундро. — Самосовершенствование у нее получится лучше, чем если ее будут модернизировать программисты. С другой стороны, чем она станет после множества итераций? Не думаю, что большинство ИИ-исследователей видят какую-то потенциальную опасность в создании, скажем, робота-шахматиста. Но мой анализ показывает, что нам следует тщательно обдумать, какие ценности мы в него закладываем; в противном случае мы получим нечто вроде психопатической, эгоистической, зацикленной на себе сущности.
Ключевые моменты здесь следующие: даже ИИ-исследователи не подозревают, что, во-первых, полезные системы могут быть опасны и, во-вторых, обладающие самосознанием самосовершенствующиеся системы могут быть психопатическими.
Психопатическими?
Омохундро говорит о плохом программировании. Ошибки программистов, бывало, заставляли дорогущие ракеты врезаться в землю, заживо сжигали раковых больных слишком большой дозой излучения и оставляли миллионы людей без электричества. Если бы все инженерное конструирование было настолько ненадежным и дефектным, как множество реальных компьютерных программ, говорит он, летать на самолетах или ездить по мостам было бы небезопасно.
Национальный институт стандартов и технологий США выяснил, что каждый год дефектное программирование обходится американской экономике более чем в $60 млрд недополученной прибыли. Иными словами, ежегодные потери американцев из-за плохих программ превышают ВВП большинства стран мира.
Величайшая ирония судьбы в том, что компьютерные науки, по идее, должны быть самыми математическими из всех наук, — сказал Омохундро. — По существу, компьютеры — это математические машины, которые должны вести себя абсолютно предсказуемо. При всем том создание компьютерных программ — одно из самых непредсказуемых инженерных занятий, полное ошибок и проблем с безопасностью.
Существует ли противоядие против дефектных ракет и дрянных программ?
Программы, которые исправляют себя сами, — говорит Омохундро. Подход к искусственному интеллекту, который применяет моя компания, состоит в создании систем, которые понимают собственное поведение и способны наблюдать за собой в процессе работы и решения задач. Они замечают, когда в работе происходят сбои, а затем изменяют и улучшают себя.
Самосовершенствующееся программное обеспечение — не просто цель компании Омохундро, но очень логичный и даже неизбежный следующий шаг в развитии большинства программ. Но самосовершенствующихся программ того рода, о котором говорит Омохундро, — таких, чтобы сознавали себя и способны были разрабатывать более совершенные версии, — пока не существует. Однако их предшественники — программы, способные себя модифицировать, — уже работают всюду, и довольно давно. Специалисты по ИИ значительную часть самомодифицирующихся программных методик объединяют в широкую категорию «машинного обучения».
Чему обучается машина? Понятие обучения чем-то напоминает понятие разума, поскольку определений того и другого существует множество, и большинство из них верны. В простейшем смысле машина обучается, когда в ней происходит изменение, позволяющее во второй раз выполнить определенное задание лучше. Машинное обучение сделало возможным интернет-поиск, распознавание речи и рукописного текста; оно помогает пользователю в десятках самых разных приложений.
«Рекомендации» от Amazon — гиганта сетевой торговли — используют алгоритм машинного обучения, известный как анализ парных предпочтений (affinity analysis). Это стратегия, цель которой — сделать так, чтобы вы купили еще что-нибудь похожее (перекрестные продажи), что-нибудь более дорогое, или хотя бы сделать вас объектом дальнейших рекламных акций. Работает все это очень просто. Для любого товара, информацию о котором вы ищете (назовем его А), существуют другие товары, которые часто покупают люди, купившие А, — это товары В, С и D. Запрашивая товар А, вы активируете алгоритм анализа парных предпочтений. Он ныряет в море данных о совершенных покупках и появляется оттуда с перечнем парных товаров. Таким образом, он использует свой постоянно пополняющийся банк данных и с каждым разом работает все лучше.
Кому выгодна самосовершенствующаяся часть этой программы? Amazon, разумеется, но и вам тоже. Анализ парных предпочтений — своеобразный помощник покупателя, позволяющий всякий раз при совершении покупок пользоваться обширной статистикой. Amazon ничего не забывает — он постоянно дополняет ваш покупательский профиль и раз от разу все лучше подбирает для вас товары.
Что происходит, когда вы поднимаетесь на ступеньку от программы, способной обучаться, к программе, которая на самом деле развивается, чтобы находить ответы на сложные задачи и даже создавать новые программы? Это еще не осознание себя и не самосовершенствование, но это еще один шаг в этом направлении — программы, которые создают программы.
Генетическое программирование — алгоритм машинного обучения, использующий возможности естественного отбора для поиска ответов на вопросы, на решение которых у человека ушло бы длительное время — возможно, годы. Этот алгоритм используется для написания новаторских, мощных программ.
Такой алгоритм во многих отношениях отличается от более распространенных методик программирования, которые я буду называть обычным программированием. В обычном программировании для решения задач используется, как правило, человеческая, а не компьютерная логика. В обычном программировании каждую строку кода пишет программист, и процесс обработки данных от входа до выхода, по крайней мере, в теории, прозрачен и поддается проверке.