Если мы хотим создать компьютер с интеллектом человека, то почему бы не создать искусственный мозг? В конце концов, люди – это наша лучшая иллюстрация разумности, а нейробиология дает нам множество новых знаний о принципах хранения и обработки информации.
Человеческий мозг представляет собой сеть из 100 триллионов синапсов, соединяющихся 100 миллиардами нейронов, большинство из которых изменяют свое состояние от 10 до 100 раз в секунду. Подобная структура мозга позволяет нам справляться с такими задачами, как распознавание объектов на картинке.
С другой стороны, суперкомпьютер имеет порядка 100 триллионов байт памяти, а его транзисторы могут выполнять операции в 100 миллионов раз быстрее, чем мозг. Такая архитектура делает компьютер более подходящим для быстрой обработки четко определенных задач.
Однако некоторые задачи решаются эффективнее именно при «мозговой» обработке, даже с учетом сопутствующих недостатков. Например, неопределенным задачам (таким как распознавание лиц) не обязательно нужны высокоточные схемы распознавания по точному маршруту.
Некоторые исследователи изучают мозгоподобные аппаратные архитектуры для имитации маломощных потребностей мозга. Мозг выполняет все вычисления на примерно 20 Вт, что эквивалентно очень тусклой лампочке. Суперкомпьютеру на такие же вычисления требуется 200 000 Вт.
Другие группы ученых стремятся изучить способности мозга по обработке и хранению информации в одном месте. В настоящее время для этих целей создаются проекты по созданию новых «мозгоподобных» компьютерных схем: параллельных, а не последовательных, аналоговых, а не цифровых, медленных и энергосберегающих.
Интуитивное мышление
Люди упорно не способны соответствовать идеалу разумности. При принятии решений мы допускаем одни и те же ошибки, и на нас легко влияет информация, не относящаяся к делу. Если же мы поспешно принимаем какое-то решение без должного размышления, то считаем, что «доверяемся интуиции». Раньше нам казалось, что отсутствие таких «особенностей» человека делает компьютеры лучше, однако недавние исследования в области когнитивных наук говорят нам об обратном.
Для людей характерны два взаимодополняющих процесса принятия решений. Первый – медленный, осмотрительный, основанный на логике. И второй – быстрый, импульсивный, способный к сопоставлению текущей ситуации с предыдущим опытом, что позволяет нам быстрее прийти к каким-либо выводам. Второй тип как раз и является залогом столь эффективного человеческого интеллекта.
Несмотря на всю логичность и осмотрительность, у рационального процесса есть и другая сторона – принятие решений требует больших затрат времени и энергии. Допустим, встречная машина начинает перестраиваться в вашу полосу. Вместо того, чтобы пускаться в длительные рассуждения и вычисления оптимальной, но явно запоздалой стратегии, вы должны действовать незамедлительно: воспользоваться звуковым сигналом, нажать на тормоз или перестроиться. Такой «ускоренный» процесс подходит для некритических ситуаций. Если тратить слишком много сил на вычисление оптимальных решений для таких простых вещей, как выбор между темно-синей или темно-голубой рубашками, то очень скоро у вас не останется ни времени, ни сил для принятия важных решений.
Так должен ли ИИ включать в себя интуитивный компонент?
Многие системы ИИ состоят из двух частей. Первая моментально реагирует на ситуацию, а вторая проводит более детальные логические рассуждения. Некоторые роботы создавались с низкоуровневыми слоями, являющимися строго реактивными, и более высокоуровневыми слоями, подавляющими реактивные действия и превращающими их в целенаправленное поведение. Этот подход доказал свою полезность, например когда идущим роботам нужно было преодолеть неровную поверхность.
Была и другая попытка замотивировать ИИ к принятию более правильных решений путем наделения систем эмоциями. Например, если автономный робот несколько раз безрезультатно пытается выполнить одно и то же действие, то реакция «разочарования» должна эффективно побудить его к поиску других вариантов.
Создание машин, имитирующих эмоции, – непростая задача. Марвин Минский, один из создателей ИИ, считает, что эмоции возникают не как следствие одной лишь реакции мозга, а как взаимодействие, включающее в себя множество областей мозга и связующее мозг с телом. Эмоции побуждают нас выбирать те или иные решения. Поэтому идея эмоционально мотивировать части программы, вероятно, подготовит почву для создания человекоподобного интеллекта.
– Люди редко застревают в какой-то проблеме надолго, потому что мы знаем множество способов, как справиться с каждой ситуацией или задачей, – говорит Минский. – Каждый раз, когда ваш излюбленный метод терпит неудачу, вы ищите другой подход. Например, если вам скучно выполнять какую-то работу, то вы можете либо поискать кого-то, кто выполнит ее за вас, либо разозлиться на того, кто поручил вам эту задачу. Мы можем назвать такие реакции эмоциональными, однако они помогают нам справляться с появляющимися проблемами.
Кришна Палем, ученый из Университета Райса в Хьюстоне (штат Техас), является одним из немногих исследователей, которые создают энергосберегающие «мозгоподобные» компьютеры. Его устройства не удостоятся наград за точность – большинство приборов не смогут даже правильно сосчитать сумму элементов. Для них 2 + 2 может с легкостью оказаться 5. Но не позволяйте запутать себя погрешностью в вычислениях. Палем создает машины, которые смогут стать новым рассветом для компьютерных вычислений.
Неточность слабо ассоциируется с компьютерами. С тех пор, как в 1930-х годах Тьюринг установил основополагающие принципы компьютерных вычислений, машины стали приверженцами точности. Их создавали по принципу следования пошаговым инструкциям с точным и повторяемым воспроизведением последовательности. Они не должны были допускать ошибок.
Но, возможно, нам следует разрешить компьютерам ошибаться. Это может оказаться лучшим способом для раскрытия новой волны умных устройств и вывести из тупика высокопроизводительные вычисления. Так мы сможем выполнять сложное моделирование, выходящее за рамки возможностей современных суперкомпьютеров, – модели, которые лучше предсказывают изменение климата, помогают проектировать эффективные автомобили и самолеты, а также раскрывают тайны образования галактик. Такие модели смогут даже раскрыть самую главную загадку всего сущего. Для этого им нужно позволить нам смоделировать человеческий мозг.
До сих пор нам приходилось соглашаться на компромисс между производительностью и энергоэффективностью: компьютер может быть либо быстрым, либо маломощным, но не все сразу. Это означает не только потребность более мощных смартфонов в улучшенных батареях, но и то, что суперкомпьютеры сами станут источником энергии. Экзафлопс-машинам следующего поколения, способным выполнять 1018 операций в секунду, нужно будет потреблять до 100 МВт – это мощность небольшой электростанции. Итак, гонка компьютеров по достижению большего с меньшими затратами началась.
Один из способов – сократить время, которое компьютер тратит на выполнение кода. Чем меньше времени затрачено, тем меньше энергии потреблено. Программистам нужно найти способ получения желаемых результатов быстрее. Возьмем классическую задачу коммивояжера: найти кратчайший маршрут, проходящий через несколько городов. Известно, что решить данную задачу довольно трудно, учитывая тот факт, что количество маршрутов при увеличении количества городов возрастает в геометрической прогрессии. Палем утверждает, что зачастую программисты довольствуются маршрутом, который и наполовину не дотягивает до «лучшего», поскольку дальнейшее улучшение маршрута отнимает слишком много компьютерного времени. В последней версии этого метода предлагается с помощью машинного обучения получать приблизительный результат выполнения отдельных кусков кода. Тогда в процессе работы с программой этот результат будет использоваться каждый раз вместо фактического выполнения исходного фрагмента кода.
Но экономия энергии за счет урезания приложений совсем незначительна. Для настоящей экономии энергии потребуется изменить принципы работы оборудования. Компьютеры могут сэкономить огромное количество энергии, просто перестав эксплуатировать свои транзисторы на полную мощность. Однако в данном случае придется пожертвовать точностью. Команда Палема пытается создать компьютеры, которые смогут ошибаться в расчетах в допустимых пределах. Возьмите любой кажущийся вам хорошим алгоритм, и он решит ту же задачу иначе, поскольку обладает другой физической системой под капотом.
Стандартные компьютерные микросхемы используют кремниевые включения, которые называются «каналами». Они выступают в роли переключателя между включенным (1) и выключенным (0) состоянием. Переключение контролируется вентилем, который останавливает прохождение тока через канал до подачи напряжения. Затем вентиль открывается, как шлюз на дамбе, пропуская ток. Но эта технология комплементарных элементов «металл-оксид-полупроводник» (КМОП-структура) хорошо работает только в том случае, если имеет надежный пятивольтовый источник питания. Начните понижать напряжение, и канал потеряет стабильность – будет иногда переключаться, а иногда – нет.
В 2003 году Палем, перешедший в Технологический институт Джорджии в Атланте, понял, что грядут неприятности. Стало ясно, что способность электронной промышленности к удвоению количества транзисторов в микросхеме каждые 18–24 месяцев (тенденция к миниатюризации, известная как закон Мура) подходит к концу.
Миниатюризация приводила к ошибкам на уровне микросхем. Во многом это было связано с перегревом, радио- или перекрестными помехами между микросхемами с плотной компоновкой. Теперь на первый план вышла проблема потребления энергии. Что если бы можно было приспособить такую нестабильность системы для экономии энергии?
Ответ Палема заключался в попытке разработать вероятностную версию КМОП-структуры с намеренной нестабильностью. Команда Палема создала цифровые схемы, в которых старшие разряды, представляющие собой точные значения, получали пятивольтовое питание. Младшие разряды подпитывались от 1 вольта. Таким образом можно было исказить до половины битов, представляющих число.
Получалось, что разработанная Палемом версия сумматора – общей логической схемы, складывающей два числа, – не работала с обычной точностью. «Когда сумматор складывает два числа, он дает достаточно правильный, но не точный ответ, – говорит он. – Но с точки зрения использования энергии это – наиболее дешевое решение».
Переложите эту модель на миллиарды транзисторов, и вы получите существенную экономию энергии. Хитрость заключается в том, чтобы выбрать приложения, для которых не особо важны младшие разряды. Например, цвет пикселя представляется большим диапазоном чисел. В одном эксперименте Палем с коллегами создали цифровой видеодекодер, который при преобразовании пиксельных данных в экранные цвета неточно интерпретировал младшие разряды.
Они обнаружили, что зрители заметили лишь небольшое ухудшение качества изображения. «Человеческий глаз многое усредняет, – поясняет Палем. – Подумайте о том, как мы воспринимаем иллюзии. Мозг выполняет колоссальную работу по достраиванию изображения».
Воодушевленные этим успехом, исследователи из Университета Райса переключились на другую сферу применения, затрагивающую органы чувств, – слуховые аппараты. Первые тесты показали, что неточная цифровая обработка в слуховом аппарате может вдвое снизить энергопотребление, но приводит к снижению разборчивости лишь на 5 %. Результаты показывают, что эти методы подходят для снижения энергопотребления смартфонов и персональных компьютеров, поскольку они представляют собой аудиовизуальные устройства. Многие сферы применения ИИ (например, распознавание изображений и переводы) также выиграют от использования данных методов.
Облачный атлас: улучшение климатических прогнозов
Тим Палмер, специалист по физике климата из Оксфордского университета, видит большой потенциал в том, чтобы дать компьютерам немного поблажек. Он считает, что компьютеры, основанные на идеях Палема, могут стать решением неразрешимой проблемы нашего времени: как повысить точность климатических прогнозов на будущее столетие, не дожидаясь появления новых суперкомпьютеров. «Важнейший вопрос в изменении климата отводится роли облаков, – говорит Палмер, – именно с точки зрения того, будут ли они усиливать или ослаблять последствия глобального потепления. Вы не сможете по-настоящему ответить на этот вопрос, пока не смоделируете облачную систему». А в настоящее время никто не знает, как это сделать.
Современным суперкомпьютерам пока что не хватает мощности. А их преемники, появление которых ожидается в ближайшее десятилетие, будут чересчур энергозатратными. «Если верить нашим расчетам, то мощность, необходимая для подпитки такой машины, составит порядка 100 МВт», – продолжает Палмер. Это в 5–10 раз больше, чем потребляют современные суперкомпьютеры. А учитывая тот факт, что такие компьютеры не будут одним лишь воздухом, использование подобных машин может оказаться чрезмерно дорогостоящим. Суперкомпьютеры расходуют так много энергии, потому что рассчитаны на вычисления с 64-битными числами. В принципе, это должно давать большую точность. Но климатические модели включают в себя миллионы переменных, моделирующих факторы сложного взаимодействия: ветер, конвекция, температура, давление воздуха, температура океана и соленость. В результате, по словам Палмера, получается слишком много данных, что приводит к потере мощности. По его мнению, необходимо, чтобы переменные отображались в строках данных с разной длиной, в зависимости от важности этих значений в модели.
Плюсы такой системы могут быть колоссальными. Современные климатические модели занимаются изучением атмосферы Земли, разбивая ее на районы площадью в 100 км в ширину и 1 км в высоту. Палмер полагает, что при неточных вычислениях Земная поверхность будет разделяться на кубы протяженностью в 1 км – этого размера вполне достаточно для моделирования отдельных облаков.
– Выполнение 20 неточных вычислений может оказаться информативнее 10 точных, – говорит Палмер. Это объясняется тем, что в 100-километровых масштабах моделирование является приближенным отражением реальности. Вычисления могут быть точными, а сама модель – нет. Пренебрежение точностью для получения более детальной модели в итоге даст большую достоверность.
– Куда важнее получить неточный ответ на точное уравнение, чем точный ответ на неточное уравнение, – продолжает Палмер. – Точным уравнением я действительно смогу описать физику облаков.
Конечно же, вы не можете просто взять и отказаться от точности во всем. Задача состоит в том, чтобы выбрать, какими именно частями вычислений можно пожертвовать в большей степени.
Исследователи подходят к решению проблемы по-разному. В основном они пытаются определить пороги точности в коде. В этом случае программисты могли бы сами указывать, когда и где допустимы ошибки. Затем программа выполняла бы неточные вычисления только в «безопасных» частях системы.
Ряд исследователей полагает, что неточное моделирование в конечном счете поможет нам понять мозг. Например, такие суперкомпьютеры, как Blue Gene от IBM, используются для моделирования неврологических функций в The Human Brain Project («Проект человеческий мозг»). Как мы уже видели, существует огромная разница в потреблении энергии мозгом и суперкомпьютером: суперкомпьютеру нужны мегаватты, а человеческий мозг может работать от энергии лампочки. Чем это можно объяснить?
Тим Палмер с коллегами из Сассекского университета в Брайтоне, Великобритания, пытается узнать, смогут ли случайные электрические колебания вызвать вероятностные сигналы в мозге. По теории Палмера именно это и позволяет мозгу выполнять так много задач со столь малым потреблением энергии.
И действительно, мозг служит отличным примером неточных вычислений для предельного снижения энергопотребления. Пока что ясно лишь одно: чтобы усовершенствовать компьютеры, необходимо их ухудшить. И если приближенные вычисления выглядят весьма сомнительной перспективой для создания будущего вычислений, то стоит вспомнить о том, что компьютеры всегда имели дело с абстракциями. Поэтому в некотором роде все вычисления являются приближенными. Просто одни компьютеры более приблизительные, чем другие.